diff --git a/environment.yml b/environment.yml
index 8cfc3cc131afffdc0d054a0d8cf466ad2397fa34..61b70880c65b7921096970aa2c37c5f088d807c3 100644
--- a/environment.yml
+++ b/environment.yml
@@ -1,65 +1,67 @@
-name: osgeo-env-v1
+name: osgeo-env
 channels:
   - conda-forge
   - defaults
 dependencies:
   - _libgcc_mutex=0.1=conda_forge
-  - _openmp_mutex=4.5=2_gnu
+  - _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
   - attrs=23.1.0=pyh71513ae_1
-  - aws-c-auth=0.6.28=hccec9ca_5
-  - aws-c-cal=0.5.27=hf85dbcb_0
-  - aws-c-common=0.8.20=hd590300_0
-  - aws-c-compression=0.2.17=h4b87b72_0
-  - aws-c-event-stream=0.3.0=hc5de78f_6
-  - aws-c-http=0.7.8=h412fb1b_4
-  - aws-c-io=0.13.26=h0d05201_0
-  - aws-c-mqtt=0.8.13=ha5d9b87_2
-  - aws-c-s3=0.3.4=h95e21fb_5
-  - aws-c-sdkutils=0.1.10=h4b87b72_0
-  - aws-checksums=0.1.16=h4b87b72_0
-  - aws-crt-cpp=0.20.2=h5289e1f_9
-  - aws-sdk-cpp=1.10.57=h8101662_14
-  - awscli=1.29.30=py311h38be061_0
+  - 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
-  - bokeh=3.1.1=pyhd8ed1ab_0
-  - boost-cpp=1.78.0=h6582d0a_3
+  - boltons=23.0.0=pyhd8ed1ab_0
+  - boost-cpp=1.78.0=h5adbc97_2
   - branca=0.6.0=pyhd8ed1ab_0
   - brotli=1.0.9=h166bdaf_8
   - brotli-bin=1.0.9=h166bdaf_8
-  - brotlipy=0.7.0=py311hd4cff14_1005
-  - bzip2=1.0.8=h7f98852_4
+  - brotlipy=0.7.0=py310h7f8727e_1002
+  - bzip2=1.0.8=h7b6447c_0
   - c-ares=1.19.1=hd590300_0
   - ca-certificates=2023.7.22=hbcca054_0
   - cached-property=1.5.2=hd8ed1ab_1
   - cached_property=1.5.2=pyha770c72_1
-  - cairo=1.16.0=hbbf8b49_1016
+  - cairo=1.16.0=ha61ee94_1014
   - certifi=2023.7.22=pyhd8ed1ab_0
-  - cffi=1.15.1=py311h409f033_3
+  - cffi=1.15.1=py310h5eee18b_3
   - cfitsio=4.2.0=hd9d235c_0
-  - charset-normalizer=3.1.0=pyhd8ed1ab_0
+  - charset-normalizer=2.0.4=pyhd3eb1b0_0
   - click=8.1.3=unix_pyhd8ed1ab_2
   - click-plugins=1.1.1=py_0
   - cligj=0.7.2=pyhd8ed1ab_1
-  - cloudpickle=2.2.1=pyhd8ed1ab_0
-  - colorama=0.4.4=pyh9f0ad1d_0
+  - colorama=0.4.6=pyhd8ed1ab_0
   - comm=0.1.3=pyhd8ed1ab_0
-  - contourpy=1.1.0=py311h9547e67_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
   - cycler=0.11.0=pyhd8ed1ab_0
-  - cytoolz=0.12.0=py311hd4cff14_1
-  - dask=2023.6.0=pyhd8ed1ab_0
-  - dask-core=2023.6.0=pyhd8ed1ab_0
-  - debugpy=1.6.7=py311hcafe171_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
-  - distributed=2023.6.0=pyhd8ed1ab_0
-  - docutils=0.15.2=py311h38be061_6
+  - 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
-  - fiona=1.9.4=py311hbac4ec9_0
+  - 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
   - folium=0.14.0=pyhd8ed1ab_0
   - font-ttf-dejavu-sans-mono=2.37=hab24e00_0
   - font-ttf-inconsolata=3.000=h77eed37_0
@@ -68,187 +70,282 @@ dependencies:
   - fontconfig=2.14.2=h14ed4e7_0
   - fonts-conda-ecosystem=1=0
   - fonts-conda-forge=1=0
-  - fonttools=4.40.0=py311h459d7ec_0
+  - fonttools=4.39.4=py310h2372a71_0
   - freetype=2.12.1=hca18f0e_1
   - freexl=1.0.6=h166bdaf_1
-  - fsspec=2023.6.0=pyh1a96a4e_0
-  - gdal=3.7.0=py311h281082f_2
+  - gdal=3.6.1=py310hc1b7723_1
   - geopandas=0.13.2=pyhd8ed1ab_1
   - geopandas-base=0.13.2=pyha770c72_1
-  - geos=3.11.2=hcb278e6_0
-  - geotiff=1.7.1=h22adcc9_9
+  - geos=3.11.1=h27087fc_0
+  - geotiff=1.7.1=ha76d385_4
   - gettext=0.21.1=h27087fc_0
-  - gflags=2.2.2=he1b5a44_1004
   - giflib=5.2.1=h0b41bf4_3
-  - glog=0.6.0=h6f12383_0
-  - h5py=3.9.0=nompi_py311h26d1283_100
-  - hdf4=4.2.15=h501b40f_6
-  - hdf5=1.14.0=nompi_hb72d44e_103
-  - icu=72.1=hcb278e6_0
-  - idna=3.4=pyhd8ed1ab_0
-  - importlib-metadata=6.7.0=pyha770c72_0
-  - importlib_metadata=6.7.0=hd8ed1ab_0
+  - 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
   - jinja2=3.1.2=pyhd8ed1ab_1
-  - jmespath=1.0.1=pyhd8ed1ab_0
-  - joblib=1.2.0=pyhd8ed1ab_0
+  - 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.1=py311h38be061_0
-  - kealib=1.5.1=h3845be2_3
+  - 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
   - keyutils=1.6.1=h166bdaf_0
-  - kiwisolver=1.4.4=py311h4dd048b_1
+  - kiwisolver=1.4.4=py310hbf28c38_1
   - krb5=1.20.1=h81ceb04_0
-  - lcms2=2.15=haa2dc70_1
-  - ld_impl_linux-64=2.40=h41732ed_0
+  - lame=3.100=h166bdaf_1003
+  - lcms2=2.14=h6ed2654_0
+  - ld_impl_linux-64=2.38=h1181459_1
   - lerc=4.0.0=h27087fc_0
-  - libabseil=20230125.2=cxx17_h59595ed_2
   - libaec=1.0.6=hcb278e6_1
-  - libarchive=3.6.2=h039dbb9_1
-  - libarrow=12.0.0=hc00ebf5_8_cpu
+  - 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
-  - libcrc32c=1.1.2=h9c3ff4c_0
+  - 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
-  - libdeflate=1.18=h0b41bf4_0
+  - libdap4=3.20.6=hd7c4107_2
+  - libdb=6.2.32=h9c3ff4c_0
+  - libdeflate=1.14=h166bdaf_0
   - libedit=3.1.20191231=he28a2e2_2
   - libev=4.33=h516909a_1
-  - libevent=2.1.12=hf998b51_1
+  - libevent=2.1.10=h28343ad_4
   - libexpat=2.5.0=hcb278e6_1
-  - libffi=3.4.2=h7f98852_5
+  - libffi=3.4.2=h6a678d5_6
+  - libflac=1.4.2=h27087fc_0
   - libgcc-ng=13.1.0=he5830b7_0
-  - libgdal=3.7.0=h5418a03_2
+  - 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
-  - libgomp=13.1.0=he5830b7_0
-  - libgoogle-cloud=2.11.0=hac9eb74_1
-  - libgrpc=1.54.2=hb20ce57_2
+  - libgpg-error=1.46=h620e276_0
   - libiconv=1.17=h166bdaf_0
-  - libjpeg-turbo=2.1.5.1=h0b41bf4_0
   - libkml=1.3.0=h37653c0_1015
   - liblapack=3.9.0=17_linux64_openblas
-  - libnetcdf=4.9.2=nompi_h0f3d0bb_105
+  - 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
   - libnghttp2=1.52.0=h61bc06f_0
   - libnsl=2.0.0=h7f98852_0
-  - libnuma=2.0.16=h0b41bf4_1
+  - libogg=1.3.4=h7f98852_1
   - libopenblas=0.3.23=pthreads_h80387f5_0
+  - libopus=1.3.1=h7f98852_1
   - libpng=1.6.39=h753d276_0
-  - libpq=15.3=hbcd7760_1
-  - libprotobuf=3.21.12=h3eb15da_0
-  - librttopo=1.1.0=h0d5128d_13
+  - 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
   - libspatialindex=1.9.3=h9c3ff4c_4
-  - libspatialite=5.0.1=hca56755_27
+  - libspatialite=5.0.1=h7c8129e_22
   - libsqlite=3.42.0=h2797004_0
   - libssh2=1.11.0=h0841786_0
   - libstdcxx-ng=13.1.0=hfd8a6a1_0
-  - libthrift=0.18.1=h8fd135c_2
-  - libtiff=4.5.1=h8b53f26_0
-  - libutf8proc=2.8.0=h166bdaf_0
+  - libsystemd0=253=h8c4010b_1
+  - libtiff=4.4.0=h82bc61c_5
+  - libtool=2.4.7=h27087fc_0
+  - libudev1=253=h0b41bf4_0
   - 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.15=h0b41bf4_0
-  - libxml2=2.11.4=h0d562d8_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=hd590300_5
-  - locket=1.0.0=pyhd8ed1ab_0
-  - lz4=4.3.2=py311h9f220a4_0
-  - lz4-c=1.9.4=hcb278e6_0
+  - 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
   - lzo=2.10=h516909a_1000
   - mapclassify=2.5.0=pyhd8ed1ab_1
-  - markupsafe=2.1.3=py311h459d7ec_0
-  - matplotlib-base=3.7.1=py311h8597a09_0
+  - markupsafe=2.1.3=py310h2372a71_0
+  - matplotlib-base=3.5.1=py310h23f4a51_0
   - matplotlib-inline=0.1.6=pyhd8ed1ab_0
-  - msgpack-python=1.0.5=py311ha3edf6b_0
-  - munch=3.0.0=pyhd8ed1ab_0
+  - mistune=2.0.5=pyhd8ed1ab_0
+  - mpg123=1.31.3=hcb278e6_0
+  - munch=4.0.0=pyhd8ed1ab_0
   - munkres=1.1.4=pyh9f0ad1d_0
-  - ncurses=6.4=hcb278e6_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
   - 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
-  - numpy=1.25.0=py311h64a7726_0
-  - openjpeg=2.5.0=hfec8fc6_2
+  - numba=0.55.1=py310ha5257ce_1
+  - openjpeg=2.5.0=h7d73246_1
   - openssl=3.1.2=hd590300_0
-  - orc=1.8.4=h2f23424_0
+  - overrides=7.3.1=pyhd8ed1ab_0
   - packaging=23.1=pyhd8ed1ab_0
-  - pandas=2.0.2=py311h320fe9a_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
-  - partd=1.4.0=pyhd8ed1ab_0
+  - pcre=8.45=h9c3ff4c_0
   - pcre2=10.40=hc3806b6_0
   - pexpect=4.8.0=pyh1a96a4e_2
   - pickleshare=0.7.5=py_1003
-  - pillow=9.5.0=py311h0b84326_1
-  - pip=23.1.2=pyhd8ed1ab_0
+  - pip=22.3.1=py310h06a4308_0
   - pixman=0.40.0=h36c2ea0_0
-  - platformdirs=3.6.0=pyhd8ed1ab_0
-  - pooch=1.7.0=pyha770c72_3
-  - poppler=23.05.0=hd18248d_1
+  - 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
   - poppler-data=0.4.12=hd8ed1ab_0
-  - postgresql=15.3=hd458b1d_1
-  - proj=9.2.1=ha643af7_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=py311h2582759_0
+  - psutil=5.9.5=py310h1fa729e_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
-  - pyarrow=12.0.0=py311h39c9aba_8_cpu
-  - pyasn1=0.4.8=py_0
-  - pycparser=2.21=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.1.0=pyhd8ed1ab_0
-  - pyproj=3.6.0=py311ha169711_1
-  - pysocks=1.7.1=pyha2e5f31_6
-  - python=3.11.4=hab00c5b_0_cpython
+  - 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
   - 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.11=3_cp311
+  - python_abi=3.10=3_cp310
   - pytz=2023.3=pyhd8ed1ab_0
-  - pyyaml=6.0=py311hd4cff14_5
-  - pyzmq=25.1.0=py311h75c88c4_0
-  - rdma-core=28.9=h59595ed_1
-  - re2=2023.03.02=h8c504da_0
-  - readline=8.2=h8228510_1
-  - requests=2.31.0=pyhd8ed1ab_0
-  - rsa=4.7.2=pyh44b312d_0
-  - rtree=1.0.1=py311h3bb2b0f_1
-  - s2n=1.3.45=h06160fa_0
-  - scikit-learn=1.2.2=py311hc009520_2
-  - scipy=1.10.1=py311h64a7726_3
-  - setuptools=67.7.2=pyhd8ed1ab_0
-  - shapely=2.0.1=py311h54d622a_1
-  - six=1.16.0=pyh6c4a22f_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
+  - 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
   - snappy=1.1.10=h9fff704_0
-  - sortedcontainers=2.4.0=pyhd8ed1ab_0
-  - sqlite=3.42.0=h2c6b66d_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
-  - tblib=1.7.0=pyhd8ed1ab_0
-  - threadpoolctl=3.1.0=pyh8a188c0_0
+  - tenacity=8.2.2=pyhd8ed1ab_0
+  - terminado=0.17.1=pyh41d4057_0
+  - threadpoolctl=3.2.0=pyha21a80b_0
   - tiledb=2.13.2=hd532e3d_0
-  - tk=8.6.12=h27826a3_0
-  - toolz=0.12.0=pyhd8ed1ab_0
-  - tornado=6.3.2=py311h459d7ec_0
+  - tinycss2=1.2.1=pyhd8ed1ab_0
+  - 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
   - tzcode=2023c=h0b41bf4_0
-  - tzdata=2023c=h71feb2d_0
-  - ucx=1.14.1=hf587318_2
+  - tzdata=2022g=h04d1e81_0
+  - unicodedata2=15.0.0=py310h5764c6d_0
+  - urllib3=1.26.13=py310h06a4308_0
   - wcwidth=0.2.6=pyhd8ed1ab_0
-  - wheel=0.40.0=pyhd8ed1ab_0
-  - xerces-c=3.2.4=h8d71039_2
+  - 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
   - 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.6=h8ee46fc_0
+  - xorg-libx11=1.8.4=h0b41bf4_0
   - xorg-libxau=1.0.11=hd590300_0
   - xorg-libxdmcp=1.1.3=h7f98852_0
   - xorg-libxext=1.3.4=h0b41bf4_2
@@ -257,10 +354,42 @@ dependencies:
   - xorg-xextproto=7.3.0=h0b41bf4_1003
   - xorg-xproto=7.0.31=h7f98852_1007
   - xyzservices=2023.5.0=pyhd8ed1ab_1
-  - xz=5.2.6=h166bdaf_0
+  - 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
-  - zict=3.0.0=pyhd8ed1ab_0
   - zipp=3.15.0=pyhd8ed1ab_0
-  - zlib=1.2.13=hd590300_5
-  - zstd=1.5.2=h3eb15da_6
\ No newline at end of file
+  - 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
+prefix: /opt/conda/envs/osgeo-env
diff --git a/notebooks/run-gedi-biomass.ipynb b/notebooks/run-gedi-biomass.ipynb
index 25f0f211063046b0d253398a6b3a835843633680..662b2dbd71c5703bf411d469f4c4f0cc038a6463 100644
--- a/notebooks/run-gedi-biomass.ipynb
+++ b/notebooks/run-gedi-biomass.ipynb
@@ -5,17 +5,7 @@
    "execution_count": 1,
    "id": "25172537-794b-4135-bb28-63c0fcefbb68",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Unable to load config file from source maap.cfg \n",
-      "Unable to load config file from source ./maap.cfg \n",
-      "Unable to load config file from source /projects/maap.cfg \n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "import os\n",
     "import re\n",
@@ -24,6 +14,14 @@
     "maap = MAAP(maap_host='api.maap-project.org')"
    ]
   },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "f176e75b-5104-478b-ade6-a84006e966b0",
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  },
   {
    "cell_type": "code",
    "execution_count": 2,
@@ -64,11 +62,11 @@
     "    \n",
     "    print(l1b_fp)\n",
     "    print(l2a_fp)\n",
-    "    job = maap.submitJob(identifier=\"single file test run\",\n",
+    "    job = maap.submitJob(identifier=\"single_file_test_run\",\n",
     "                   algo_id=\"arojas_biomass_gedi_conus\",\n",
     "                   version=\"master\",\n",
     "                   username=\"arojearthdata\",\n",
-    "                   queue=\"null\",\n",
+    "                   queue=\"maap-dps-worker-8gb\",\n",
     "                   L1B_URL=l1b_fp,\n",
     "                   L2A_URL=l2a_fp)\n",
     "    jobs_list.append(job)\n",
@@ -89,7 +87,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "[{'job_id': '8c3396a7-500b-4b55-ad25-ca8c0fcfe1da', 'status': 'Accepted', 'machine_type': None, 'architecture': None, 'machine_memory_size': None, 'directory_size': None, 'operating_system': None, 'job_start_time': None, 'job_end_time': None, 'job_duration_seconds': None, 'cpu_usage': None, 'cache_usage': None, 'mem_usage': None, 'max_mem_usage': None, 'swap_usage': None, 'read_io_stats': None, 'write_io_stats': None, 'sync_io_stats': None, 'async_io_stats': None, 'total_io_stats': None, 'error_details': None, 'response_code': 200, 'outputs': []}]\n"
+      "[{'job_id': '6910d9a3-4135-484c-b855-e0a498fe6077', 'status': 'Running', 'machine_type': None, 'architecture': None, 'machine_memory_size': None, 'directory_size': None, 'operating_system': None, 'job_start_time': None, 'job_end_time': None, 'job_duration_seconds': None, 'cpu_usage': None, 'cache_usage': None, 'mem_usage': None, 'max_mem_usage': None, 'swap_usage': None, 'read_io_stats': None, 'write_io_stats': None, 'sync_io_stats': None, 'async_io_stats': None, 'total_io_stats': None, 'error_details': None, 'response_code': 200, 'outputs': []}]\n"
      ]
     }
    ],
@@ -99,7 +97,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 15,
+   "execution_count": 5,
    "id": "7fe1c6f4-37c5-4fe7-b9ff-51e17b7a5cf0",
    "metadata": {},
    "outputs": [
@@ -107,8 +105,8 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "Accepted\n",
-      "8c3396a7-500b-4b55-ad25-ca8c0fcfe1da\n"
+      "Running\n",
+      "6910d9a3-4135-484c-b855-e0a498fe6077\n"
      ]
     }
    ],
@@ -122,21 +120,38 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": 6,
+   "id": "2018077f-9640-4e70-bd01-a9d939b3626a",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Failed\n",
+      "6910d9a3-4135-484c-b855-e0a498fe6077\n"
+     ]
+    }
+   ],
+   "source": [
+    "# View job status\n",
+    "for job in jobs_list:\n",
+    "    print(job.retrieve_status())\n",
+    "    print(job.id)\n",
+    "    break"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
    "id": "873e9ea7-d6cb-4bb9-b082-5bffb4026615",
    "metadata": {},
    "outputs": [
     {
-     "ename": "RuntimeError",
-     "evalue": "response is not 200 or 201. code: 500. details: b'<ows:ExceptionReport xmlns:wps=\"http://www.opengis.net/wps/2.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:schemaLocation=\"http://schemas.opengis.net/wps/2.0/wps.xsd\" xmlns:ows=\"http://www.opengis.net/ows/2.0\"><ows:Exception exceptionCode=\"FailedGetResult\" locator=\"GetResult\"><ows:ExceptionText>Failed to get job result of job with id: 8c3396a7-500b-4b55-ad25-ca8c0fcfe1da. Aborting retrieving information of job because status is job-queued. If you don\\'t see expected results, please contact administrator of DPS</ows:ExceptionText></ows:Exception></ows:ExceptionReport>'",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
-      "\u001b[0;31mRuntimeError\u001b[0m                              Traceback (most recent call last)",
-      "Cell \u001b[0;32mIn[12], line 3\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;66;03m# Retrieve results\u001b[39;00m\n\u001b[1;32m      2\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m job \u001b[38;5;129;01min\u001b[39;00m jobs_list:\n\u001b[0;32m----> 3\u001b[0m     \u001b[38;5;28mprint\u001b[39m(\u001b[43mjob\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mretrieve_result\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m)\n\u001b[1;32m      4\u001b[0m     \u001b[38;5;28;01mbreak\u001b[39;00m\n",
-      "File \u001b[0;32m/maap-py/maap/dps/dps_job.py:98\u001b[0m, in \u001b[0;36mDPSJob.retrieve_result\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m     92\u001b[0m logger\u001b[38;5;241m.\u001b[39mdebug(headers)\n\u001b[1;32m     93\u001b[0m response \u001b[38;5;241m=\u001b[39m requests\u001b[38;5;241m.\u001b[39mget(\n\u001b[1;32m     94\u001b[0m     url\u001b[38;5;241m=\u001b[39murl,\n\u001b[1;32m     95\u001b[0m     verify\u001b[38;5;241m=\u001b[39m\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m__not_self_signed,\n\u001b[1;32m     96\u001b[0m     headers\u001b[38;5;241m=\u001b[39mheaders\n\u001b[1;32m     97\u001b[0m )\n\u001b[0;32m---> 98\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mset_job_results_result(\u001b[43mRequestsUtils\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcheck_response\u001b[49m\u001b[43m(\u001b[49m\u001b[43mresponse\u001b[49m\u001b[43m)\u001b[49m)\n\u001b[1;32m     99\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39moutputs\n",
-      "File \u001b[0;32m/maap-py/maap/utils/requests_utils.py:25\u001b[0m, in \u001b[0;36mRequestsUtils.check_response\u001b[0;34m(dps_response)\u001b[0m\n\u001b[1;32m     22\u001b[0m \u001b[38;5;129m@staticmethod\u001b[39m\n\u001b[1;32m     23\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mcheck_response\u001b[39m(dps_response):\n\u001b[1;32m     24\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m dps_response\u001b[38;5;241m.\u001b[39mstatus_code \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;129;01min\u001b[39;00m [\u001b[38;5;241m200\u001b[39m, \u001b[38;5;241m201\u001b[39m]:\n\u001b[0;32m---> 25\u001b[0m         \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mRuntimeError\u001b[39;00m(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mresponse is not 200 or 201. code: \u001b[39m\u001b[38;5;132;01m{}\u001b[39;00m\u001b[38;5;124m. details: \u001b[39m\u001b[38;5;132;01m{}\u001b[39;00m\u001b[38;5;124m'\u001b[39m\u001b[38;5;241m.\u001b[39mformat(dps_response\u001b[38;5;241m.\u001b[39mstatus_code,\n\u001b[1;32m     26\u001b[0m                                                                                       dps_response\u001b[38;5;241m.\u001b[39mcontent))\n\u001b[1;32m     27\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m dps_response\u001b[38;5;241m.\u001b[39mcontent\u001b[38;5;241m.\u001b[39mdecode(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mUTF-8\u001b[39m\u001b[38;5;124m'\u001b[39m)\n",
-      "\u001b[0;31mRuntimeError\u001b[0m: response is not 200 or 201. code: 500. details: b'<ows:ExceptionReport xmlns:wps=\"http://www.opengis.net/wps/2.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:schemaLocation=\"http://schemas.opengis.net/wps/2.0/wps.xsd\" xmlns:ows=\"http://www.opengis.net/ows/2.0\"><ows:Exception exceptionCode=\"FailedGetResult\" locator=\"GetResult\"><ows:ExceptionText>Failed to get job result of job with id: 8c3396a7-500b-4b55-ad25-ca8c0fcfe1da. Aborting retrieving information of job because status is job-queued. If you don\\'t see expected results, please contact administrator of DPS</ows:ExceptionText></ows:Exception></ows:ExceptionReport>'"
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "['http://maap-ops-workspace.s3-website-us-west-2.amazonaws.com/dataset/triaged_job/arojas_biomass_gedi_conus/master/2023/09/09/6910d9a3-4135-484c-b855-e0a498fe6077', 's3://s3-us-west-2.amazonaws.com:80/maap-ops-workspace/dataset/triaged_job/arojas_biomass_gedi_conus/master/2023/09/09/6910d9a3-4135-484c-b855-e0a498fe6077', 'https://s3.console.aws.amazon.com/s3/buckets/maap-ops-workspace/dataset/triaged_job/arojas_biomass_gedi_conus/master/2023/09/09/6910d9a3-4135-484c-b855-e0a498fe6077/?region=us-east-1&tab=overview', '+ export HOME=/root\\n+ HOME=/root\\n+ exec /docker-stats-on-exit-shim _docker_stats.json /app/dps_wrapper.sh /app/biomass-gedi-conus/run.sh \\'https://e4ftl01.cr.usgs.gov//GEDI_L1_L2/GEDI/GEDI01_B.002/2021.05.31/GEDI01_B_2021151223415_O13976_02_T00676_02_005_02_V002.h5\\n\\' https://e4ftl01.cr.usgs.gov//GEDI_L1_L2/GEDI/GEDI02_A.002/2021.05.31/GEDI02_A_2021151223415_O13976_02_T00676_02_003_02_V002.h5\\n+ /app/biomass-gedi-conus/run.sh \\'https://e4ftl01.cr.usgs.gov//GEDI_L1_L2/GEDI/GEDI01_B.002/2021.05.31/GEDI01_B_2021151223415_O13976_02_T00676_02_005_02_V002.h5\\n\\' https://e4ftl01.cr.usgs.gov//GEDI_L1_L2/GEDI/GEDI02_A.002/2021.05.31/GEDI02_A_2021151223415_O13976_02_T00676_02_003_02_V002.h5\\nTraceback (most recent call last):\\n  File \"/app/biomass-gedi-conus/main.py\", line 22, in <module>\\n    from download_gedi import download_gedi\\n  File \"/app/biomass-gedi-conus/download_gedi.py\", line 3, in <module>\\n    from maap.maap import MAAP\\nModuleNotFoundError: No module named \\'maap\\'\\n+ cp _stderr.txt _alt_traceback.txt\\n']\n"
      ]
     }
    ],
@@ -182,9 +197,9 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3 (ipykernel)",
+   "display_name": "osgeo-env-v1",
    "language": "python",
-   "name": "python3"
+   "name": "osgeo-env-v1"
   },
   "language_info": {
    "codemirror_mode": {
@@ -196,7 +211,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.10.8"
+   "version": "3.11.4"
   }
  },
  "nbformat": 4,