diff --git a/build-env.sh b/build-env.sh
index 8bf50b4a3730eb4e9885f1d68b50e6ca68260f8a..b41f2ff571b0d5e28ceb20a8a54e6ce2422a6983 100644
--- a/build-env.sh
+++ b/build-env.sh
@@ -4,4 +4,10 @@
 basedir=$( cd "$(dirname "$0")" ; pwd -P)
 conda env list
 echo installing environment...
-conda env create -f ${basedir}/environment.yml
\ No newline at end of file
+conda env create -f ${basedir}/environment.yml
+
+# Install the maap.py environment
+conda activate osgeo-env
+git clone --single-branch --branch v3.0.1 https://github.com/MAAP-Project/maap-py.git ${basedir}
+cd ${basedir}/maap-py
+pip install -e .
diff --git a/environment.yml b/environment.yml
index 61b70880c65b7921096970aa2c37c5f088d807c3..f5e45eb0ac8299421d007a2c11c09f04d62725f9 100644
--- a/environment.yml
+++ b/environment.yml
@@ -4,64 +4,30 @@ channels:
   - defaults
 dependencies:
   - _libgcc_mutex=0.1=conda_forge
-  - _openmp_mutex=4.5=2_kmp_llvm
-  - affine=2.4.0=pyhd8ed1ab_0
-  - aiofiles=22.1.0=pyhd8ed1ab_0
-  - aiosqlite=0.19.0=pyhd8ed1ab_0
-  - alsa-lib=1.2.8=h166bdaf_0
-  - anyio=3.7.0=pyhd8ed1ab_1
-  - argon2-cffi=21.3.0=pyhd8ed1ab_0
-  - argon2-cffi-bindings=21.2.0=py310h5764c6d_3
-  - asttokens=2.2.1=pyhd8ed1ab_0
-  - attr=2.5.1=h166bdaf_1
+  - _openmp_mutex=4.5=2_gnu
   - attrs=23.1.0=pyh71513ae_1
-  - babel=2.12.1=pyhd8ed1ab_1
-  - backcall=0.2.0=pyh9f0ad1d_0
-  - backports=1.0=pyhd8ed1ab_3
-  - backports.functools_lru_cache=1.6.4=pyhd8ed1ab_0
-  - beautifulsoup4=4.12.2=pyha770c72_0
-  - bleach=6.0.0=pyhd8ed1ab_0
-  - blosc=1.21.4=h0f2a231_0
-  - boltons=23.0.0=pyhd8ed1ab_0
-  - boost-cpp=1.78.0=h5adbc97_2
+  - blosc=1.21.5=h0f2a231_0
+  - boost-cpp=1.78.0=h2c5509c_4
   - branca=0.6.0=pyhd8ed1ab_0
-  - brotli=1.0.9=h166bdaf_8
-  - brotli-bin=1.0.9=h166bdaf_8
-  - brotlipy=0.7.0=py310h7f8727e_1002
+  - brotli=1.1.0=hd590300_0
+  - brotli-bin=1.1.0=hd590300_0
+  - brotli-python=1.1.0=py311hb755f60_0
   - bzip2=1.0.8=h7b6447c_0
   - c-ares=1.19.1=hd590300_0
-  - ca-certificates=2023.7.22=hbcca054_0
+  - ca-certificates=2023.08.22=h06a4308_0
   - cached-property=1.5.2=hd8ed1ab_1
   - cached_property=1.5.2=pyha770c72_1
-  - cairo=1.16.0=ha61ee94_1014
+  - cairo=1.16.0=h0c91306_1017
   - certifi=2023.7.22=pyhd8ed1ab_0
-  - cffi=1.15.1=py310h5eee18b_3
-  - cfitsio=4.2.0=hd9d235c_0
-  - charset-normalizer=2.0.4=pyhd3eb1b0_0
-  - click=8.1.3=unix_pyhd8ed1ab_2
+  - cfitsio=4.3.0=hbdc6101_0
+  - charset-normalizer=3.2.0=pyhd8ed1ab_0
+  - click=8.1.7=unix_pyh707e725_0
   - click-plugins=1.1.1=py_0
   - cligj=0.7.2=pyhd8ed1ab_1
-  - colorama=0.4.6=pyhd8ed1ab_0
-  - comm=0.1.3=pyhd8ed1ab_0
-  - conda-content-trust=0.1.3=py310h06a4308_0
-  - conda-package-handling=1.9.0=py310h5eee18b_1
-  - cryptography=38.0.1=py310h9ce1e76_0
-  - curl=8.1.2=h409715c_0
+  - contourpy=1.1.0=py311h9547e67_0
   - cycler=0.11.0=pyhd8ed1ab_0
-  - cython=0.29.28=py310hd8f1fbe_2
-  - dbus=1.13.6=h5008d03_3
-  - debugpy=1.6.7=py310heca2aa9_0
-  - decorator=5.1.1=pyhd8ed1ab_0
-  - defusedxml=0.7.1=pyhd8ed1ab_0
-  - deprecation=2.1.0=pyh9f0ad1d_0
-  - entrypoints=0.4=pyhd8ed1ab_0
-  - exceptiongroup=1.1.1=pyhd8ed1ab_0
-  - executing=1.2.0=pyhd8ed1ab_0
   - expat=2.5.0=hcb278e6_1
-  - fftw=3.3.10=nompi_hc118613_107
-  - fiona=1.8.22=py310ha325b7b_5
-  - flit-core=3.9.0=pyhd8ed1ab_0
-  - fmt=9.1.0=h924138e_0
+  - fiona=1.9.4=py311hbac4ec9_0
   - folium=0.14.0=pyhd8ed1ab_0
   - font-ttf-dejavu-sans-mono=2.37=hab24e00_0
   - font-ttf-inconsolata=3.000=h77eed37_0
@@ -70,326 +36,149 @@ dependencies:
   - fontconfig=2.14.2=h14ed4e7_0
   - fonts-conda-ecosystem=1=0
   - fonts-conda-forge=1=0
-  - fonttools=4.39.4=py310h2372a71_0
+  - fonttools=4.42.1=py311h459d7ec_0
   - freetype=2.12.1=hca18f0e_1
   - freexl=1.0.6=h166bdaf_1
-  - gdal=3.6.1=py310hc1b7723_1
+  - gdal=3.7.1=py311h815a124_9
   - geopandas=0.13.2=pyhd8ed1ab_1
   - geopandas-base=0.13.2=pyha770c72_1
-  - geos=3.11.1=h27087fc_0
-  - geotiff=1.7.1=ha76d385_4
+  - geos=3.12.0=h59595ed_0
+  - geotiff=1.7.1=h22adcc9_11
   - gettext=0.21.1=h27087fc_0
   - giflib=5.2.1=h0b41bf4_3
-  - gitdb=4.0.10=pyhd8ed1ab_0
-  - gitpython=3.1.26=pyhd8ed1ab_0
-  - glib=2.76.3=hfc55251_0
-  - glib-tools=2.76.3=hfc55251_0
-  - gmp=6.2.1=h58526e2_0
-  - graphite2=1.3.13=h58526e2_1001
-  - gst-plugins-base=1.22.0=h4243ec0_2
-  - gstreamer=1.22.0=h25f0c4b_2
-  - gstreamer-orc=0.4.34=hd590300_0
-  - h5py=3.8.0=nompi_py310h0311031_100
-  - harfbuzz=6.0.0=h8e241bc_0
-  - hdf4=4.2.15=h9772cbc_5
-  - hdf5=1.12.2=nompi_h4df4325_101
-  - icu=70.1=h27087fc_0
-  - idna=3.4=py310h06a4308_0
-  - importlib-metadata=6.6.0=pyha770c72_0
-  - importlib_metadata=6.6.0=hd8ed1ab_0
-  - importlib_resources=5.12.0=pyhd8ed1ab_0
-  - ipykernel=6.23.1=pyh210e3f2_0
-  - ipyleaflet=0.17.2=pyhd8ed1ab_0
-  - ipython=8.14.0=pyh41d4057_0
-  - ipython_genutils=0.2.0=py_1
-  - ipywidgets=7.7.5=pyhd8ed1ab_0
-  - jack=1.9.22=h11f4161_0
-  - jedi=0.18.2=pyhd8ed1ab_0
+  - h5py=3.9.0=nompi_py311h3839ddf_102
+  - hdf4=4.2.15=h501b40f_6
+  - hdf5=1.14.2=nompi_h4f84152_100
+  - icu=73.2=h59595ed_0
+  - idna=3.4=pyhd8ed1ab_0
+  - importlib-metadata=6.8.0=pyha770c72_0
   - jinja2=3.1.2=pyhd8ed1ab_1
   - joblib=1.3.2=pyhd8ed1ab_0
-  - jpeg=9e=h0b41bf4_3
-  - json-c=0.16=hc379101_0
-  - json5=0.9.5=pyh9f0ad1d_0
-  - jsonpatch=1.32=pyhd8ed1ab_0
-  - jsonpointer=2.0=py_0
-  - jsonschema=4.17.3=pyhd8ed1ab_0
-  - jupyter-packaging=0.12.3=pyha770c72_1
-  - jupyter-server-mathjax=0.2.6=pyh5bfe37b_1
-  - jupyter_client=8.2.0=pyhd8ed1ab_0
-  - jupyter_core=5.3.0=py310hff52083_0
-  - jupyter_events=0.6.3=pyhd8ed1ab_0
-  - jupyter_server_fileid=0.9.0=pyhd8ed1ab_0
-  - jupyter_server_terminals=0.4.4=pyhd8ed1ab_1
-  - jupyter_server_ydoc=0.6.1=pyhd8ed1ab_0
-  - jupyter_ydoc=0.2.4=pyhd8ed1ab_0
-  - jupyterlab=3.6.1=pyhd8ed1ab_0
-  - jupyterlab-git=0.34.2=pyhd8ed1ab_0
-  - jupyterlab_pygments=0.2.2=pyhd8ed1ab_0
-  - jupyterlab_server=2.23.0=pyhd8ed1ab_0
-  - jupyterlab_widgets=1.0.2=pyhd8ed1ab_0
-  - kealib=1.5.0=ha7026e8_0
+  - json-c=0.17=h7ab15ed_0
+  - kealib=1.5.1=hcd42e92_5
   - keyutils=1.6.1=h166bdaf_0
-  - kiwisolver=1.4.4=py310hbf28c38_1
-  - krb5=1.20.1=h81ceb04_0
-  - lame=3.100=h166bdaf_1003
-  - lcms2=2.14=h6ed2654_0
+  - kiwisolver=1.4.5=py311h9547e67_0
+  - krb5=1.21.2=h659d440_0
+  - lcms2=2.15=haa2dc70_1
   - ld_impl_linux-64=2.38=h1181459_1
   - lerc=4.0.0=h27087fc_0
+  - libabseil=20230802.0=cxx17_h59595ed_3
   - libaec=1.0.6=hcb278e6_1
-  - libarchive=3.6.2=h3d51595_0
-  - libblas=3.9.0=17_linux64_openblas
-  - libbrotlicommon=1.0.9=h166bdaf_8
-  - libbrotlidec=1.0.9=h166bdaf_8
-  - libbrotlienc=1.0.9=h166bdaf_8
-  - libcap=2.67=he9d0100_0
-  - libcblas=3.9.0=17_linux64_openblas
-  - libclang=15.0.7=default_h7634d5b_2
-  - libclang13=15.0.7=default_h9986a30_2
-  - libcups=2.3.3=h36d4200_3
-  - libcurl=8.1.2=h409715c_0
-  - libdap4=3.20.6=hd7c4107_2
-  - libdb=6.2.32=h9c3ff4c_0
-  - libdeflate=1.14=h166bdaf_0
+  - libarchive=3.6.2=h039dbb9_1
+  - libblas=3.9.0=18_linux64_openblas
+  - libbrotlicommon=1.1.0=hd590300_0
+  - libbrotlidec=1.1.0=hd590300_0
+  - libbrotlienc=1.1.0=hd590300_0
+  - libcblas=3.9.0=18_linux64_openblas
+  - libcrc32c=1.1.2=h9c3ff4c_0
+  - libcurl=8.2.1=hca28451_0
+  - libdeflate=1.18=h0b41bf4_0
   - libedit=3.1.20191231=he28a2e2_2
   - libev=4.33=h516909a_1
-  - libevent=2.1.10=h28343ad_4
   - libexpat=2.5.0=hcb278e6_1
-  - libffi=3.4.2=h6a678d5_6
-  - libflac=1.4.2=h27087fc_0
-  - libgcc-ng=13.1.0=he5830b7_0
-  - libgcrypt=1.10.1=h166bdaf_0
-  - libgdal=3.6.1=hf2b5f72_1
-  - libgfortran-ng=13.1.0=h69a702a_0
-  - libgfortran5=13.1.0=h15d22d2_0
-  - libglib=2.76.3=hebfc3b9_0
-  - libgpg-error=1.46=h620e276_0
+  - libffi=3.4.4=h6a678d5_0
+  - libgcc-ng=13.2.0=h807b86a_0
+  - libgdal=3.7.1=h880a63b_9
+  - libgfortran-ng=13.2.0=h69a702a_0
+  - libgfortran5=13.2.0=ha4646dd_0
+  - libglib=2.78.0=hebfc3b9_0
+  - libgomp=13.2.0=h807b86a_0
+  - libgoogle-cloud=2.12.0=h8d7e28b_2
+  - libgrpc=1.57.0=ha4d0f93_1
   - libiconv=1.17=h166bdaf_0
+  - libjpeg-turbo=2.1.5.1=hd590300_1
   - libkml=1.3.0=h37653c0_1015
-  - liblapack=3.9.0=17_linux64_openblas
-  - libllvm11=11.1.0=he0ac6c6_5
-  - libllvm13=13.0.1=hf817b99_2
-  - libllvm15=15.0.7=hadd5161_1
-  - libmamba=1.4.2=hcea66bb_0
-  - libmambapy=1.4.2=py310h1428755_0
-  - libnetcdf=4.8.1=nompi_h261ec11_106
+  - liblapack=3.9.0=18_linux64_openblas
+  - libnetcdf=4.9.2=nompi_h80fb2b6_112
   - libnghttp2=1.52.0=h61bc06f_0
   - libnsl=2.0.0=h7f98852_0
-  - libogg=1.3.4=h7f98852_1
-  - libopenblas=0.3.23=pthreads_h80387f5_0
-  - libopus=1.3.1=h7f98852_1
+  - libopenblas=0.3.24=pthreads_h413a1c8_0
   - libpng=1.6.39=h753d276_0
-  - libpq=15.2=hb675445_0
-  - librttopo=1.1.0=ha49c73b_12
-  - libsndfile=1.2.0=hb75c966_0
-  - libsodium=1.0.18=h36c2ea0_1
-  - libsolv=0.7.24=h3eb15da_0
+  - libpq=15.4=hfc447b1_0
+  - libprotobuf=4.23.4=hf27288f_6
+  - librttopo=1.1.0=hb58d41b_14
   - libspatialindex=1.9.3=h9c3ff4c_4
-  - libspatialite=5.0.1=h7c8129e_22
-  - libsqlite=3.42.0=h2797004_0
+  - libspatialite=5.0.1=h15f6e67_28
+  - libsqlite=3.43.0=h2797004_0
   - libssh2=1.11.0=h0841786_0
-  - libstdcxx-ng=13.1.0=hfd8a6a1_0
-  - libsystemd0=253=h8c4010b_1
-  - libtiff=4.4.0=h82bc61c_5
-  - libtool=2.4.7=h27087fc_0
-  - libudev1=253=h0b41bf4_0
+  - libstdcxx-ng=13.2.0=h7e041cc_0
+  - libtiff=4.5.1=h8b53f26_1
   - libuuid=2.38.1=h0b41bf4_0
-  - libuv=1.43.0=h7f98852_0
-  - libvorbis=1.3.7=h9c3ff4c_0
-  - libwebp-base=1.3.0=h0b41bf4_0
-  - libxcb=1.13=h7f98852_1004
-  - libxkbcommon=1.0.3=he3ba5ed_0
-  - libxml2=2.10.3=hca2bb57_4
-  - libzip=1.9.2=hc929e4a_1
-  - libzlib=1.2.13=h166bdaf_4
-  - llvm-openmp=16.0.5=h4dfa4b3_0
-  - llvmlite=0.38.1=py310h58363a5_0
-  - lz4-c=1.9.3=h9c3ff4c_1
+  - libwebp-base=1.3.1=hd590300_0
+  - libxcb=1.15=h0b41bf4_0
+  - libxml2=2.11.5=h232c23b_1
+  - libzip=1.10.1=h2629f0a_3
+  - libzlib=1.2.13=hd590300_5
+  - lz4-c=1.9.4=hcb278e6_0
   - lzo=2.10=h516909a_1000
   - mapclassify=2.5.0=pyhd8ed1ab_1
-  - markupsafe=2.1.3=py310h2372a71_0
-  - matplotlib-base=3.5.1=py310h23f4a51_0
-  - matplotlib-inline=0.1.6=pyhd8ed1ab_0
-  - mistune=2.0.5=pyhd8ed1ab_0
-  - mpg123=1.31.3=hcb278e6_0
+  - markupsafe=2.1.3=py311h459d7ec_0
+  - matplotlib-base=3.7.2=py311h54ef318_0
   - munch=4.0.0=pyhd8ed1ab_0
   - munkres=1.1.4=pyh9f0ad1d_0
-  - mysql-common=8.0.32=hf1915f5_2
-  - mysql-libs=8.0.32=hca2cd23_2
-  - nbclassic=1.0.0=pyhb4ecaf3_1
-  - nbclient=0.8.0=pyhd8ed1ab_0
-  - nbconvert=7.5.0=pyhd8ed1ab_0
-  - nbconvert-core=7.5.0=pyhd8ed1ab_0
-  - nbconvert-pandoc=7.5.0=pyhd8ed1ab_0
-  - nbdime=3.2.1=pyhd8ed1ab_0
-  - nbformat=5.9.0=pyhd8ed1ab_0
-  - ncurses=6.3=h5eee18b_3
-  - nest-asyncio=1.5.6=pyhd8ed1ab_0
+  - ncurses=6.4=h6a678d5_0
   - networkx=3.1=pyhd8ed1ab_0
-  - nodejs=16.14.2=h8839609_1
-  - notebook=6.5.4=pyha770c72_0
-  - notebook-shim=0.2.3=pyhd8ed1ab_0
   - nspr=4.35=h27087fc_0
-  - nss=3.89=he45b914_0
-  - numba=0.55.1=py310ha5257ce_1
-  - openjpeg=2.5.0=h7d73246_1
+  - nss=3.92=h1d7d5a4_0
+  - numpy=1.25.2=py311h64a7726_0
+  - openjpeg=2.5.0=hfec8fc6_2
   - openssl=3.1.2=hd590300_0
-  - overrides=7.3.1=pyhd8ed1ab_0
   - packaging=23.1=pyhd8ed1ab_0
-  - pandas=2.0.3=py310h7cbd5c2_1
-  - pandoc=3.1.3=h32600fe_0
-  - pandocfilters=1.5.0=pyhd8ed1ab_0
-  - parso=0.8.3=pyhd8ed1ab_0
-  - pcre=8.45=h9c3ff4c_0
+  - pandas=2.1.0=py311h320fe9a_0
   - pcre2=10.40=hc3806b6_0
-  - pexpect=4.8.0=pyh1a96a4e_2
-  - pickleshare=0.7.5=py_1003
-  - pip=22.3.1=py310h06a4308_0
+  - pillow=10.0.0=py311h0b84326_0
+  - pip=23.2.1=py311h06a4308_0
   - pixman=0.40.0=h36c2ea0_0
-  - pkgutil-resolve-name=1.3.10=pyhd8ed1ab_0
-  - platformdirs=3.5.3=pyhd8ed1ab_0
-  - plotly=5.5.0=pyhd8ed1ab_0
-  - pluggy=1.0.0=py310h06a4308_1
-  - poppler=22.12.0=h92391eb_0
+  - platformdirs=3.10.0=pyhd8ed1ab_0
+  - pooch=1.7.0=pyha770c72_3
+  - poppler=23.08.0=hd18248d_0
   - poppler-data=0.4.12=hd8ed1ab_0
-  - postgresql=15.2=h3248436_0
-  - proj=9.1.0=h93bde94_0
-  - prometheus_client=0.17.0=pyhd8ed1ab_0
-  - prompt-toolkit=3.0.38=pyha770c72_0
-  - prompt_toolkit=3.0.38=hd8ed1ab_0
-  - psutil=5.9.5=py310h1fa729e_0
+  - postgresql=15.4=h8972f4a_0
+  - proj=9.2.1=ha643af7_0
   - pthread-stubs=0.4=h36c2ea0_1001
-  - ptyprocess=0.7.0=pyhd3deb0d_0
-  - pulseaudio=16.1=hcb278e6_3
-  - pulseaudio-client=16.1=h5195f5e_3
-  - pulseaudio-daemon=16.1=ha8d29e2_3
-  - pure_eval=0.2.2=pyhd8ed1ab_0
-  - pybind11-abi=4=hd8ed1ab_3
-  - pycosat=0.6.4=py310h5eee18b_0
-  - pycparser=2.21=pyhd3eb1b0_0
-  - pygeos=0.14=py310h8b84c32_0
-  - pygments=2.15.1=pyhd8ed1ab_0
-  - pyopenssl=23.2.0=pyhd8ed1ab_1
   - pyparsing=3.0.9=pyhd8ed1ab_0
-  - pyproj=3.4.1=py310hfc24d34_0
-  - pyqt=5.15.4=py310hd8f1fbe_0
-  - pyqt5-sip=12.9.0=py310hd8f1fbe_0
-  - pyrsistent=0.19.3=py310h1fa729e_0
-  - pysocks=1.7.1=py310h06a4308_0
-  - python=3.10.8=h4a9ceb5_0_cpython
+  - pyproj=3.6.0=py311ha169711_1
+  - pysocks=1.7.1=pyha2e5f31_6
+  - python=3.11.5=hab00c5b_0_cpython
   - python-dateutil=2.8.2=pyhd8ed1ab_0
-  - python-fastjsonschema=2.17.1=pyhd8ed1ab_0
-  - python-json-logger=2.0.7=pyhd8ed1ab_0
   - python-tzdata=2023.3=pyhd8ed1ab_0
-  - python_abi=3.10=3_cp310
-  - pytz=2023.3=pyhd8ed1ab_0
-  - pyyaml=6.0=py310h5764c6d_5
-  - pyzmq=25.1.0=py310h5bbb5d0_0
-  - qt-main=5.15.8=h5d23da1_6
-  - rasterio=1.3.4=py310hfc14bbd_0
+  - python_abi=3.11=2_cp311
+  - pytz=2023.3.post1=pyhd8ed1ab_0
+  - re2=2023.03.02=h8c504da_0
   - readline=8.2=h5eee18b_0
-  - reproc=14.2.4=h0b41bf4_0
-  - reproc-cpp=14.2.4=hcb278e6_0
-  - requests=2.28.1=py310h06a4308_0
-  - rfc3339-validator=0.1.4=pyhd8ed1ab_0
-  - rfc3986-validator=0.1.1=pyh9f0ad1d_0
-  - rtree=1.0.1=py310hbdcdc62_2
-  - ruamel.yaml=0.17.21=py310h5eee18b_0
-  - ruamel.yaml.clib=0.2.6=py310h5eee18b_1
-  - scikit-learn=1.3.0=py310hf7d194e_0
-  - scipy=1.8.0=py310hea5193d_1
-  - send2trash=1.8.2=pyh41d4057_0
-  - setuptools=65.5.0=py310h06a4308_0
-  - shapely=2.0.1=py310h8b84c32_0
-  - sip=6.5.1=py310h122e73d_2
-  - six=1.16.0=pyhd3eb1b0_1
-  - smmap=3.0.5=pyh44b312d_0
+  - requests=2.31.0=pyhd8ed1ab_0
+  - rtree=1.0.1=py311h3bb2b0f_2
+  - scikit-learn=1.3.0=py311hc009520_0
+  - scipy=1.11.2=py311h64a7726_0
+  - setuptools=68.0.0=py311h06a4308_0
+  - shapely=2.0.1=py311he06c224_2
+  - six=1.16.0=pyh6c4a22f_0
   - snappy=1.1.10=h9fff704_0
-  - sniffio=1.3.0=pyhd8ed1ab_0
-  - snuggs=1.4.7=py_0
-  - soupsieve=2.3.2.post1=pyhd8ed1ab_0
-  - sqlite=3.40.0=h5082296_0
-  - stack_data=0.6.2=pyhd8ed1ab_0
-  - tenacity=8.2.2=pyhd8ed1ab_0
-  - terminado=0.17.1=pyh41d4057_0
+  - sqlite=3.41.2=h5eee18b_0
   - threadpoolctl=3.2.0=pyha21a80b_0
-  - tiledb=2.13.2=hd532e3d_0
-  - tinycss2=1.2.1=pyhd8ed1ab_0
+  - tiledb=2.16.3=h8c794c1_3
   - tk=8.6.12=h1ccaba5_0
-  - toml=0.10.2=pyhd8ed1ab_0
-  - tomli=2.0.1=pyhd8ed1ab_0
-  - tomlkit=0.11.8=pyha770c72_0
-  - toolz=0.12.0=py310h06a4308_0
-  - tornado=6.3.2=py310h2372a71_0
-  - tqdm=4.64.1=py310h06a4308_0
-  - traitlets=5.9.0=pyhd8ed1ab_0
-  - traittypes=0.2.1=pyh9f0ad1d_2
-  - typing-extensions=4.6.3=hd8ed1ab_0
-  - typing_extensions=4.6.3=pyha770c72_0
-  - typing_utils=0.1.0=pyhd8ed1ab_0
+  - typing-extensions=4.7.1=hd8ed1ab_0
+  - typing_extensions=4.7.1=pyha770c72_0
   - tzcode=2023c=h0b41bf4_0
-  - tzdata=2022g=h04d1e81_0
-  - unicodedata2=15.0.0=py310h5764c6d_0
-  - urllib3=1.26.13=py310h06a4308_0
-  - wcwidth=0.2.6=pyhd8ed1ab_0
-  - webencodings=0.5.1=py_1
-  - websocket-client=1.5.3=pyhd8ed1ab_0
-  - wheel=0.37.1=pyhd3eb1b0_0
-  - widgetsnbextension=3.6.4=pyhd8ed1ab_0
-  - xcb-util=0.4.0=h516909a_0
-  - xcb-util-image=0.4.0=h166bdaf_0
-  - xcb-util-keysyms=0.4.0=h516909a_0
-  - xcb-util-renderutil=0.3.9=h166bdaf_0
-  - xcb-util-wm=0.4.1=h516909a_0
-  - xerces-c=3.2.4=h55805fa_1
-  - xmltodict=0.13.0=pyhd8ed1ab_0
+  - tzdata=2023c=h04d1e81_0
+  - urllib3=2.0.4=pyhd8ed1ab_0
+  - wheel=0.38.4=py311h06a4308_0
+  - xerces-c=3.2.4=hac6953d_3
   - xorg-kbproto=1.0.7=h7f98852_1002
   - xorg-libice=1.1.1=hd590300_0
   - xorg-libsm=1.2.4=h7391055_0
-  - xorg-libx11=1.8.4=h0b41bf4_0
+  - xorg-libx11=1.8.6=h8ee46fc_0
   - xorg-libxau=1.0.11=hd590300_0
   - xorg-libxdmcp=1.1.3=h7f98852_0
   - xorg-libxext=1.3.4=h0b41bf4_2
-  - xorg-libxrender=0.9.10=h7f98852_1003
+  - xorg-libxrender=0.9.11=hd590300_0
   - xorg-renderproto=0.11.1=h7f98852_1002
   - xorg-xextproto=7.3.0=h0b41bf4_1003
   - xorg-xproto=7.0.31=h7f98852_1007
-  - xyzservices=2023.5.0=pyhd8ed1ab_1
-  - xz=5.2.8=h5eee18b_0
-  - y-py=0.5.9=py310h4426083_0
-  - yaml=0.2.5=h7f98852_2
-  - yaml-cpp=0.7.0=h27087fc_2
-  - ypy-websocket=0.8.2=pyhd8ed1ab_0
-  - zeromq=4.3.4=h9c3ff4c_1
-  - zipp=3.15.0=pyhd8ed1ab_0
-  - zlib=1.2.13=h166bdaf_4
-  - zstd=1.5.2=h3eb15da_6
-  - pip:
-      - arrow==1.2.3
-      - backoff==2.2.1
-      - boto3==1.26.149
-      - botocore==1.29.149
-      - chroma-py==0.1.0.dev1
-      - colour==0.1.5
-      - configparser==5.3.0
-      - contourpy==1.0.7
-      - fqdn==1.5.1
-      - geojson==3.0.1
-      - iniconfig==2.0.0
-      - isoduration==20.11.0
-      - jmespath==1.0.1
-      - jupyter-server==2.5.0
-      - maap-jupyter-server-extension==1.1.0
-      - mapboxgl==0.10.2
-      - matplotlib==3.7.1
-      - moto==4.1.11
-      - mypy-boto3-s3==1.26.127
-      - numpy==1.24.3
-      - pillow==9.5.0
-      - pytest==7.3.1
-      - responses==0.23.1
-      - s3transfer==0.6.1
-      - types-pyyaml==6.0.12.10
-      - uri-template==1.2.0
-      - webcolors==1.13
-      - werkzeug==2.3.5
+  - xyzservices=2023.7.0=pyhd8ed1ab_0
+  - xz=5.4.2=h5eee18b_0
+  - zipp=3.16.2=pyhd8ed1ab_0
+  - zlib=1.2.13=hd590300_5
+  - zstd=1.5.5=hfc55251_0
 prefix: /opt/conda/envs/osgeo-env