diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 41461bb43b0034d5d4c7c45af9e0cbdc51c6cbe8..ee0d9cdade8da1c2b4fba8c4eeeb450ca91a63dd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -41,10 +41,11 @@ workflow:
       - IMAGE_NAME: nexus-webtop
         DIR: docker/nexus
       - IMAGE_NAME: mpes-jupyter-fhi
-        DIR: docker/mpes/fhi-local
-        DOCKERFILE: Dockerfile.jupyter
+        DIR: docker/mpes
+        DOCKERFILE: Dockerfile.fhi.jupyter
       - IMAGE_NAME: mpes-webtop-fhi
-        DIR: docker/mpes/fhi-local
+        DIR: docker/mpes
+        DOCKERFILE: Dockerfile.fhi
 
 stages:
   - build
diff --git a/docker/mpes/02-exec-igor b/docker/mpes/02-exec-igor
new file mode 100644
index 0000000000000000000000000000000000000000..91c751db80cb6f3279f2adcf8638f1550073a526
--- /dev/null
+++ b/docker/mpes/02-exec-igor
@@ -0,0 +1,4 @@
+#!/usr/bin/with-contentenv bash
+
+# Add the command to run an app on startup
+echo "wine /config/.wine/drive_c/Program\ Files/WaveMetrics/Igor\ Pro\ 8\ Folder/IgorBinaries_x64/Igor64.exe" > /config/.config/openbox/autostart
\ No newline at end of file
diff --git a/docker/mpes/fhi-local/30-config b/docker/mpes/30-config
similarity index 100%
rename from docker/mpes/fhi-local/30-config
rename to docker/mpes/30-config
diff --git a/docker/mpes/Dockerfile b/docker/mpes/Dockerfile
index b0722888a12f56f7d0fa525eff7f2ac3c8514bd5..42a9940dc066c41af15d2f2881579713514a08b4 100644
--- a/docker/mpes/Dockerfile
+++ b/docker/mpes/Dockerfile
@@ -1,14 +1,17 @@
 FROM gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/webtop:v0.0.1
 
-COPY requirements.webtop.txt ./
+COPY requirements.webtop.in ./
+COPY requirements.jupyter.in ./
 RUN apt-get update -y \
-    && apt-get install -y git pip qt5-default python3-pyqt5 pyqt5-dev-tools 
-RUN apt-get install -y cargo unzip
-RUN pip install -r requirements.webtop.txt 
+    && apt-get install -y git pip qt5-default python3-pyqt5 pyqt5-dev-tools cargo unzip \
+    && apt-get clean && rm -rf /var/lib/apt/lists/*
+RUN pip install -r requirements.jupyter.in
+RUN pip install -r requirements.webtop.in 
 RUN jupyter nbextension enable --py widgetsnbextension \
     && jupyter serverextension enable jupyterlab_h5web \
     && jupyter lab build 
-RUN rm requirements.webtop.txt
+RUN rm requirements.webtop.in
+RUN rm requirements.jupyter.in
 
 COPY 02-exec-cmd /config/custom-cont-init.d/02-exec-cmd
 WORKDIR /config
diff --git a/docker/mpes/Dockerfile.fhi b/docker/mpes/Dockerfile.fhi
new file mode 100644
index 0000000000000000000000000000000000000000..b658cd08af8938755de96d940155af4c792eb1fd
--- /dev/null
+++ b/docker/mpes/Dockerfile.fhi
@@ -0,0 +1,25 @@
+FROM gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/webtop:v0.0.1
+
+COPY requirements.webtop.in ./
+COPY requirements.jupyter.in ./
+RUN apt-get update -y \
+    && apt-get install -y git pip qt5-default python3-pyqt5 pyqt5-dev-tools cargo unzip \
+    && apt-get clean && rm -rf /var/lib/apt/lists/*
+RUN pip install -r requirements.jupyter.in
+RUN pip install -r requirements.webtop.in 
+RUN jupyter nbextension enable --py widgetsnbextension \
+    && jupyter serverextension enable jupyterlab_h5web \
+    && jupyter lab build 
+RUN rm requirements.webtop.in
+RUN rm requirements.jupyter.in
+
+COPY 02-exec-cmd /config/custom-cont-init.d/02-exec-cmd
+WORKDIR /config
+
+ENV PGID=5050
+COPY 30-config /etc/cont-init.d/30-config
+RUN ln -s /config/pcshare /mnt/pcshare
+RUN mkdir /scratch
+RUN ln -s /config/localDataStore /scratch/localDataStore
+RUN mkdir /etc/sed
+RUN ln -s /mnt/pcshare/sed/config.yaml /etc/sed/config.yaml
diff --git a/docker/mpes/Dockerfile.fhi.jupyter b/docker/mpes/Dockerfile.fhi.jupyter
new file mode 100644
index 0000000000000000000000000000000000000000..7084a058fdb86b360eb171523af14365eadacfa7
--- /dev/null
+++ b/docker/mpes/Dockerfile.fhi.jupyter
@@ -0,0 +1,27 @@
+FROM jupyter/scipy-notebook:2023-04-10
+
+ENV HOME=/home/jovyan
+WORKDIR $HOME
+
+COPY --chown=${NB_UID}:${NB_GID} requirements.jupyter.txt ./
+RUN pip install --no-cache-dir -r requirements.jupyter.txt \
+    && jupyter lab build \
+    && jupyter nbextension enable --py widgetsnbextension \
+    && jupyter serverextension enable jupyterlab_h5web \
+    && fix-permissions "${CONDA_DIR}" \
+    && fix-permissions "/home/${NB_USER}"
+RUN rm requirements.jupyter.txt
+
+USER root
+RUN apt-get update --yes && \
+    apt-get install --yes --no-install-recommends \
+    unzip curl && \
+    apt-get clean && rm -rf /var/lib/apt/lists/*
+RUN groupadd -r metis -g 5050 && usermod -aG metis $NB_USER
+RUN usermod -g metis $NB_USER
+RUN ln -s ${HOME}/pcshare /mnt/pcshare
+RUN mkdir /scratch
+RUN ln -s ${HOME}/localDataStore /scratch/localDataStore
+RUN mkdir /etc/sed
+RUN ln -s /mnt/pcshare/sed/config.yaml /etc/sed/config.yaml
+USER $NB_UID
diff --git a/docker/mpes/Dockerfile.igor b/docker/mpes/Dockerfile.igor
new file mode 100644
index 0000000000000000000000000000000000000000..067a6e322f1866e17482465582e6d0bc52487a9a
--- /dev/null
+++ b/docker/mpes/Dockerfile.igor
@@ -0,0 +1,15 @@
+FROM gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/webtop:v0.0.1
+
+RUN apt-get update -y && apt-get install -y wget
+RUN dpkg --add-architecture i386 && \
+    mkdir -pm755 /etc/apt/keyrings && \
+    wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key && \
+    wget -nc -P /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/$(lsb_release -sc)/winehq-$(lsb_release -sc).sources && \
+    apt-get update -y && \
+    apt-get install -y --install-recommends winehq-staging
+RUN apt-get install -y git pip qt5-default python3-pyqt5 pyqt5-dev-tools cargo unzip \
+    && apt-get clean && rm -rf /var/lib/apt/lists/*
+
+COPY 02-exec-igor /config/custom-cont-init.d/02-exec-cmd
+COPY wine /config/.wine
+WORKDIR /config
diff --git a/docker/mpes/Dockerfile.jupyter b/docker/mpes/Dockerfile.jupyter
index 151e2661243cb199edf135f06996d795faa88f0e..c6b09244fc9c378af669608eef9a700c5fe3507a 100644
--- a/docker/mpes/Dockerfile.jupyter
+++ b/docker/mpes/Dockerfile.jupyter
@@ -3,11 +3,13 @@ FROM jupyter/scipy-notebook:2023-04-10
 ENV HOME=/home/jovyan
 WORKDIR $HOME
 
-COPY requirements.jupyter.txt ./
-RUN pip install -r requirements.jupyter.txt \
+COPY --chown=${NB_UID}:${NB_GID} requirements.jupyter.txt ./
+RUN pip install --no-cache-dir -r requirements.jupyter.txt \
     && jupyter lab build \
     && jupyter nbextension enable --py widgetsnbextension \
-    && jupyter serverextension enable jupyterlab_h5web
+    && jupyter serverextension enable jupyterlab_h5web \
+    && fix-permissions "${CONDA_DIR}" \
+    && fix-permissions "/home/${NB_USER}"
 RUN rm requirements.jupyter.txt
 
 USER root
diff --git a/docker/mpes/fhi-local/Dockerfile b/docker/mpes/fhi-local/Dockerfile
deleted file mode 100644
index 484a0a89bdc1d10ddfd3d68886f38c8757095828..0000000000000000000000000000000000000000
--- a/docker/mpes/fhi-local/Dockerfile
+++ /dev/null
@@ -1,5 +0,0 @@
-FROM gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/mpes-webtop:v0.0.1
-
-ENV PGID=5050
-COPY 30-config /etc/cont-init.d/30-config
-WORKDIR /config
diff --git a/docker/mpes/fhi-local/Dockerfile.jupyter b/docker/mpes/fhi-local/Dockerfile.jupyter
deleted file mode 100644
index 9fd332111ab4e86c9ef572a67317f25bb51ec604..0000000000000000000000000000000000000000
--- a/docker/mpes/fhi-local/Dockerfile.jupyter
+++ /dev/null
@@ -1,6 +0,0 @@
-FROM gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/mpes-jupyter:v0.0.1
-
-USER root
-RUN groupadd -r metis -g 5050 && usermod -aG metis $NB_USER
-RUN usermod -g metis $NB_USER
-USER $NB_UID
diff --git a/docker/mpes/generate_requirements.sh b/docker/mpes/generate_requirements.sh
index 8292decdf51f5d1d076313e4cb1a94c344578598..7e4cb735463fd87a3c490373bd9a6d2494913841 100755
--- a/docker/mpes/generate_requirements.sh
+++ b/docker/mpes/generate_requirements.sh
@@ -1,8 +1,8 @@
 #!/bin/bash
 docker run --rm --env HOME=/home/jovyan --mount type=bind,source="$(pwd)",target=/home/jovyan \
             --platform linux/amd64 --entrypoint bash jupyter/scipy-notebook:2023-04-10 -c \
-            "pip install pip-tools; pip-compile --resolver=backtracking --upgrade --output-file requirements.jupyter.txt requirements.jupyter.in"
+            "pip install pip-tools; pip-compile --verbose --resolver=backtracking --upgrade --output-file requirements.jupyter.txt requirements.jupyter.in"
 
-docker run --rm --env HOME=/config --mount type=bind,source="$(pwd)",target=/config \
+docker run --rm --env HOME=/config --mount type=bind,source="$(pwd)",target=/config/requirements \
             --platform linux/amd64 --entrypoint bash gitlab-registry.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/webtop:v0.0.1 -c \
-            "pip install pip-tools; pip-compile --output-file=requirements.webtop.txt --resolver=backtracking requirements.jupyter.txt requirements.webtop.in"
\ No newline at end of file
+            "apt-get update; apt-get install -y pip git; pip install pip-tools; cd requirements; pip-compile --verbose --output-file=requirements.webtop.txt --resolver=backtracking requirements.jupyter.in requirements.webtop.in"
\ No newline at end of file
diff --git a/docker/mpes/requirements.jupyter.in b/docker/mpes/requirements.jupyter.in
index cb9b252615d3645324acf336676f940e2066abe2..de8a85e682285a77479b54ecf461a23be54160f2 100644
--- a/docker/mpes/requirements.jupyter.in
+++ b/docker/mpes/requirements.jupyter.in
@@ -1,11 +1,12 @@
 nodejs
-pynxtools>=0.0.2
+pynxtools>0.0.3
 ipywidgets<8.0.0,>=7.0.1
 h5glance>=0.8
 h5grove>=1.1.0
-jupyterlab>=3.2.9
+jupyterlab<4.0.0,>=3.2.9
 jupyterlab_h5web[full]>=6.0.0
 punx>=0.2.5
 mpes>=1.1.4
 silx>=1.1.2
-numpy<1.24
\ No newline at end of file
+numpy<1.24
+git+https://github.com/OpenCOMPES/sed.git@mpes-merged
\ No newline at end of file
diff --git a/docker/mpes/requirements.jupyter.txt b/docker/mpes/requirements.jupyter.txt
index 4bf3f89baf04ff79a60af98fe2f91f26b3ae3a73..0a5d4fd5711b75adc3a3daed58a9f186af937bb1 100644
--- a/docker/mpes/requirements.jupyter.txt
+++ b/docker/mpes/requirements.jupyter.txt
@@ -4,6 +4,10 @@
 #
 #    pip-compile --output-file=requirements.jupyter.txt requirements.jupyter.in
 #
+aiofiles==22.1.0
+    # via ypy-websocket
+aiosqlite==0.19.0
+    # via ypy-websocket
 alabaster==0.7.13
     # via sphinx
 anyio==3.7.1
@@ -54,6 +58,7 @@ bokeh==2.4.3
     # via
     #   dask
     #   mpes
+    #   sed
 cattrs==23.1.2
     # via requests-cache
 certifi==2023.7.22
@@ -72,20 +77,22 @@ cloudpickle==2.2.1
     #   dask
     #   distributed
 comm==0.1.3
-    # via ipykernel
+    # via
+    #   ipykernel
+    #   ipywidgets
 commonmark==0.9.1
     # via recommonmark
 contourpy==1.1.0
     # via matplotlib
 coverage==7.2.7
     # via mpes
-cramjam==2.6.2
+cramjam==2.7.0
     # via fastparquet
 cycler==0.11.0
     # via matplotlib
 cython==3.0.0
     # via tables
-dask[array,complete,dataframe,diagnostics,distributed]==2023.7.1
+dask[array,complete]==2022.12.1
     # via
     #   distributed
     #   hyperspy
@@ -93,6 +100,7 @@ dask[array,complete,dataframe,diagnostics,distributed]==2023.7.1
     #   mpes
     #   orix
     #   pyxem
+    #   sed
 debugpy==1.6.7
     # via ipykernel
 decorator==5.1.1
@@ -114,7 +122,7 @@ diffsims==0.5.2
     #   pyxem
 dill==0.3.7
     # via hyperspy
-distributed==2023.7.1
+distributed==2022.12.1
     # via dask
 docutils==0.18.1
     # via
@@ -137,13 +145,17 @@ fabio==2023.6.0
     #   pyfai
     #   silx
 fastdtw==0.3.4
-    # via mpes
+    # via
+    #   mpes
+    #   sed
 fasteners==0.18
     # via zarr
 fastjsonschema==2.18.0
     # via nbformat
-fastparquet==2023.7.0
-    # via mpes
+fastparquet==0.8.3
+    # via
+    #   mpes
+    #   sed
 flatdict==4.0.1
     # via pynxtools
 fonttools==4.41.1
@@ -184,6 +196,7 @@ h5py==3.9.0
     #   punx
     #   pyfai
     #   pynxtools
+    #   sed
     #   silx
 hdf5plugin==4.1.3
     # via jupyterlab-h5web
@@ -215,36 +228,39 @@ imageio==2.27.0
 imagesize==1.4.1
     # via sphinx
 importlib-metadata==6.8.0
-    # via
-    #   dask
-    #   hyperspy
+    # via hyperspy
 ipykernel==6.25.0
     # via
     #   ipyparallel
-    #   ipywidgets
     #   nbclassic
     #   notebook
+ipympl==0.9.3
+    # via sed
 ipyparallel==8.6.1
     # via hyperspy
 ipython==8.14.0
     # via
     #   hyperspy
     #   ipykernel
+    #   ipympl
     #   ipyparallel
     #   ipywidgets
     #   jupyterlab
 ipython-genutils==0.2.0
     # via
+    #   ipympl
     #   ipywidgets
     #   nbclassic
     #   notebook
-ipywidgets==7.7.5
+ipywidgets==7.8.0
     # via
     #   -r requirements.jupyter.in
+    #   ipympl
     #   pyxem
+    #   sed
 isoduration==20.11.0
     # via jsonschema
-jedi==0.18.2
+jedi==0.19.0
     # via ipython
 jinja2==3.1.2
     # via
@@ -260,7 +276,9 @@ jinja2==3.1.2
     #   notebook
     #   sphinx
 joblib==1.3.1
-    # via scikit-learn
+    # via
+    #   scikit-learn
+    #   sed
 json5==0.9.14
     # via jupyterlab-server
 jsonpointer==2.4
@@ -291,30 +309,37 @@ jupyter-core==5.3.1
     #   nbconvert
     #   nbformat
     #   notebook
-jupyter-events==0.6.3
-    # via jupyter-server
+jupyter-events==0.7.0
+    # via
+    #   jupyter-server
+    #   jupyter-server-fileid
 jupyter-server==2.7.0
     # via
+    #   jupyter-server-fileid
     #   jupyterlab
     #   jupyterlab-h5web
     #   jupyterlab-server
     #   nbclassic
     #   notebook-shim
+jupyter-server-fileid==0.9.0
+    # via jupyter-server-ydoc
 jupyter-server-terminals==0.4.4
     # via jupyter-server
-jupyterlab==3.5.3
+jupyter-server-ydoc==0.8.0
+    # via jupyterlab
+jupyter-ydoc==0.2.5
     # via
-    #   -r requirements.jupyter.in
-    #   pynxtools
+    #   jupyter-server-ydoc
+    #   jupyterlab
+jupyterlab==3.6.5
+    # via -r requirements.jupyter.in
 jupyterlab-h5web[full]==10.0.0
-    # via
-    #   -r requirements.jupyter.in
-    #   pynxtools
+    # via -r requirements.jupyter.in
 jupyterlab-pygments==0.2.2
     # via nbconvert
 jupyterlab-server==2.24.0
     # via jupyterlab
-jupyterlab-widgets==1.1.4
+jupyterlab-widgets==1.1.5
     # via ipywidgets
 kikuchipy==0.8.7
     # via pynxtools
@@ -324,12 +349,13 @@ lark==1.1.7
     # via pynxtools
 lazy-loader==0.3
     # via scikit-image
-llvmlite==0.40.1
+llvmlite==0.38.1
     # via numba
 lmfit==1.2.2
     # via
     #   mpes
     #   pyxem
+    #   sed
 locket==1.0.0
     # via
     #   distributed
@@ -338,8 +364,6 @@ lxml==4.9.3
     # via
     #   punx
     #   pyresttable
-lz4==4.3.2
-    # via dask
 markupsafe==2.1.3
     # via
     #   jinja2
@@ -349,6 +373,7 @@ matplotlib==3.7.2
     #   ase
     #   diffsims
     #   hyperspy
+    #   ipympl
     #   kikuchipy
     #   matplotlib-scalebar
     #   mpes
@@ -356,6 +381,7 @@ matplotlib==3.7.2
     #   pyfai
     #   pyxem
     #   radioactivedecay
+    #   sed
     #   symmetrize
 matplotlib-inline==0.1.6
     # via
@@ -377,6 +403,7 @@ natsort==8.4.0
     # via
     #   hyperspy
     #   mpes
+    #   sed
 nbclassic==1.0.0
     # via
     #   jupyterlab
@@ -388,14 +415,14 @@ nbconvert==7.7.3
     #   jupyter-server
     #   nbclassic
     #   notebook
-nbformat==5.9.1
+nbformat==5.9.2
     # via
     #   jupyter-server
     #   nbclassic
     #   nbclient
     #   nbconvert
     #   notebook
-nest-asyncio==1.5.6
+nest-asyncio==1.5.7
     # via
     #   ipykernel
     #   jupyter-client
@@ -431,7 +458,7 @@ notebook==6.5.5
     #   widgetsnbextension
 notebook-shim==0.2.3
     # via nbclassic
-numba==0.57.1
+numba==0.55.2
     # via
     #   diffsims
     #   hyperspy
@@ -439,6 +466,7 @@ numba==0.57.1
     #   mpes
     #   orix
     #   pyxem
+    #   sed
     #   sparse
 numcodecs==0.11.0
     # via zarr
@@ -447,7 +475,7 @@ numexpr==2.8.4
     #   hyperspy
     #   pyfai
     #   tables
-numpy==1.23.5
+numpy==1.21.6
     # via
     #   -r requirements.jupyter.in
     #   ase
@@ -465,6 +493,7 @@ numpy==1.23.5
     #   hyperspy
     #   ifes-apt-tc-data-modeling
     #   imageio
+    #   ipympl
     #   kikuchipy
     #   lmfit
     #   matplotlib
@@ -482,7 +511,6 @@ numpy==1.23.5
     #   pandas
     #   photutils
     #   punx
-    #   pyarrow
     #   pyerfa
     #   pyfai
     #   pynxtools
@@ -493,6 +521,7 @@ numpy==1.23.5
     #   scikit-image
     #   scikit-learn
     #   scipy
+    #   sed
     #   silx
     #   sparse
     #   symmetrize
@@ -535,14 +564,14 @@ packaging==23.1
     #   scikit-image
     #   sphinx
     #   tables
-    #   xarray
-pandas==2.0.3
+pandas==1.5.3
     # via
     #   dask
     #   fastparquet
     #   ifes-apt-tc-data-modeling
     #   mpes
     #   pynxtools
+    #   sed
     #   xarray
 pandocfilters==1.5.0
     # via nbconvert
@@ -562,12 +591,13 @@ pillow==10.0.0
     # via
     #   bokeh
     #   imageio
+    #   ipympl
     #   matplotlib
     #   nionswift
     #   scikit-image
 pint==0.22
     # via hyperspy
-platformdirs==3.9.1
+platformdirs==3.10.0
     # via
     #   jupyter-core
     #   pooch
@@ -592,6 +622,7 @@ psutil==5.9.5
     #   ipykernel
     #   ipyparallel
     #   pyxem
+    #   sed
 ptyprocess==0.7.0
     # via
     #   pexpect
@@ -602,8 +633,6 @@ pure-eval==0.2.2
     # via stack-data
 py-cpuinfo==9.0.0
     # via tables
-pyarrow==12.0.1
-    # via dask
 pycifrw==4.4.5
     # via diffpy-structure
 pycparser==2.21
@@ -617,8 +646,10 @@ pygments==2.15.1
     #   ipython
     #   nbconvert
     #   sphinx
-pynxtools==0.0.3
-    # via -r requirements.jupyter.in
+pynxtools==0.0.4
+    # via
+    #   -r requirements.jupyter.in
+    #   sed
 pyparsing==3.0.9
     # via matplotlib
 pyresttable==2020.0.8
@@ -654,6 +685,7 @@ pyyaml==6.0.1
     #   jupyter-events
     #   kikuchipy
     #   pynxtools
+    #   sed
 pyzmq==24.0.1
     # via
     #   ipykernel
@@ -670,6 +702,7 @@ referencing==0.30.0
     # via
     #   jsonschema
     #   jsonschema-specifications
+    #   jupyter-events
 requests==2.31.0
     # via
     #   hyperspy
@@ -722,8 +755,11 @@ scipy==1.8.1
     #   radioactivedecay
     #   scikit-image
     #   scikit-learn
+    #   sed
     #   sparse
     #   symmetrize
+sed @ git+https://github.com/OpenCOMPES/sed.git@mpes-merged
+    # via -r requirements.jupyter.in
 send2trash==1.8.2
     # via
     #   jupyter-server
@@ -780,7 +816,9 @@ sphinxcontrib-serializinghtml==1.1.5
 stack-data==0.6.2
     # via ipython
 symmetrize==0.5.5
-    # via mpes
+    # via
+    #   mpes
+    #   sed
 sympy==1.12
     # via
     #   hyperspy
@@ -799,11 +837,13 @@ threadpoolctl==3.2.0
     # via
     #   mpes
     #   scikit-learn
-tifffile==2023.7.18
+    #   sed
+tifffile==2022.10.10
     # via
     #   h5grove
     #   hyperspy
     #   scikit-image
+    #   sed
 tinycss2==1.2.1
     # via nbconvert
 tomli==2.0.1
@@ -834,10 +874,12 @@ tqdm==4.65.0
     #   kikuchipy
     #   mpes
     #   orix
+    #   sed
 traitlets==5.9.0
     # via
     #   comm
     #   ipykernel
+    #   ipympl
     #   ipyparallel
     #   ipython
     #   ipywidgets
@@ -863,9 +905,7 @@ typing-extensions==4.7.1
     #   cattrs
     #   pint
 tzdata==2023.3
-    # via
-    #   pandas
-    #   pytz-deprecation-shim
+    # via pytz-deprecation-shim
 tzlocal==4.3
     # via
     #   nionswift
@@ -893,12 +933,19 @@ webencodings==0.5.1
     #   tinycss2
 websocket-client==1.6.1
     # via jupyter-server
-widgetsnbextension==3.6.4
+widgetsnbextension==3.6.5
     # via ipywidgets
-xarray==2023.7.0
+xarray==0.20.2
     # via
     #   mpes
     #   pynxtools
+    #   sed
+y-py==0.6.0
+    # via
+    #   jupyter-ydoc
+    #   ypy-websocket
+ypy-websocket==0.8.4
+    # via jupyter-server-ydoc
 zarr==2.16.0
     # via hyperspy
 zict==3.0.0
diff --git a/docker/mpes/requirements.webtop.in b/docker/mpes/requirements.webtop.in
index 8ce582e35540fcfdf31fcc73066007d1292bf9f4..b90a20e1cfb8a5fdbfa3e5b67b4088f3a11ce2a0 100644
--- a/docker/mpes/requirements.webtop.in
+++ b/docker/mpes/requirements.webtop.in
@@ -1,6 +1,4 @@
 git+https://github.com/FAIRmat-Experimental/arpes.git
-jupyterlab>=3.2.9
 h5py>=3.5.0
 nexpy>=0.14.1
-silx[full]>=1.0.0
-numpy<1.24
\ No newline at end of file
+silx[full]>=1.0.0
\ No newline at end of file
diff --git a/docker/mpes/requirements.webtop.txt b/docker/mpes/requirements.webtop.txt
deleted file mode 100644
index 7923ca9583c37d520f980ebdd663534aaa68955c..0000000000000000000000000000000000000000
--- a/docker/mpes/requirements.webtop.txt
+++ /dev/null
@@ -1,957 +0,0 @@
-#
-# This file is autogenerated by pip-compile with Python 3.8
-# by the following command:
-#
-#    pip-compile --output-file=requirements.webtop.txt --resolver=backtracking requirements.jupyter.in requirements.webtop.in
-#
-alabaster==0.7.13
-    # via sphinx
-ansi2html==1.8.0
-    # via nexpy
-anyio==3.6.2
-    # via jupyter-server
-argon2-cffi==21.3.0
-    # via
-    #   jupyter-server
-    #   nbclassic
-    #   notebook
-argon2-cffi-bindings==21.2.0
-    # via argon2-cffi
-arpes @ git+https://github.com/FAIRmat-Experimental/arpes.git
-    # via -r requirements.webtop.in
-asciitree==0.3.3
-    # via zarr
-ase==3.19.0
-    # via
-    #   arpes
-    #   ifes-apt-tc-data-modeling
-    #   pynxtools
-asteval==0.9.29
-    # via lmfit
-astropy==5.2.2
-    # via
-    #   arpes
-    #   mpes
-    #   photutils
-    #   symmetrize
-asttokens==2.2.1
-    # via stack-data
-attrs==23.1.0
-    # via
-    #   cattrs
-    #   jsonschema
-    #   requests-cache
-babel==2.12.1
-    # via
-    #   jupyterlab-server
-    #   sphinx
-backcall==0.2.0
-    # via ipython
-beautifulsoup4==4.12.2
-    # via nbconvert
-bleach==6.0.0
-    # via nbconvert
-blosc2==2.0.0
-    # via tables
-bokeh==2.4.3
-    # via
-    #   arpes
-    #   dask
-    #   mpes
-cattrs==22.2.0
-    # via requests-cache
-certifi==2023.5.7
-    # via requests
-cffi==1.15.1
-    # via argon2-cffi-bindings
-cftime==1.6.2
-    # via netcdf4
-charset-normalizer==3.1.0
-    # via requests
-click==8.1.3
-    # via
-    #   dask
-    #   distributed
-    #   pynxtools
-cloudpickle==2.2.1
-    # via
-    #   dask
-    #   distributed
-colorama==0.4.6
-    # via arpes
-colorcet==3.0.1
-    # via arpes
-comm==0.1.3
-    # via ipykernel
-commonmark==0.9.1
-    # via recommonmark
-contourpy==1.0.7
-    # via matplotlib
-coverage==7.2.5
-    # via mpes
-cramjam==2.6.2
-    # via fastparquet
-cycler==0.11.0
-    # via matplotlib
-cython==0.29.34
-    # via tables
-dask[array,complete,dataframe,diagnostics,distributed]==2023.4.1
-    # via
-    #   distributed
-    #   hyperspy
-    #   kikuchipy
-    #   mpes
-    #   orix
-    #   pyxem
-debugpy==1.6.7
-    # via ipykernel
-decorator==5.1.1
-    # via
-    #   ipyparallel
-    #   ipython
-deepdish==0.3.7
-    # via mpes
-defusedxml==0.7.1
-    # via nbconvert
-diffpy-structure==3.1.0
-    # via
-    #   diffsims
-    #   kikuchipy
-    #   orix
-diffsims==0.5.1
-    # via
-    #   kikuchipy
-    #   pyxem
-dill==0.3.6
-    # via
-    #   arpes
-    #   hyperspy
-distributed==2023.4.1
-    # via dask
-docutils==0.18.1
-    # via
-    #   recommonmark
-    #   sphinx
-    #   sphinx-rtd-theme
-entrypoints==0.4
-    # via
-    #   ipyparallel
-    #   numcodecs
-exceptiongroup==1.1.1
-    # via cattrs
-executing==1.2.0
-    # via stack-data
-fabio==2023.4.1
-    # via
-    #   pyfai
-    #   silx
-fastdtw==0.3.4
-    # via mpes
-fasteners==0.18
-    # via zarr
-fastjsonschema==2.16.3
-    # via nbformat
-fastparquet==2023.4.0
-    # via mpes
-flatdict==4.0.1
-    # via pynxtools
-fonttools==4.39.4
-    # via matplotlib
-fsspec==2023.5.0
-    # via
-    #   dask
-    #   fastparquet
-    #   hyperspy
-funcy==2.0
-    # via mpes
-future==0.18.3
-    # via uncertainties
-gitdb==4.0.10
-    # via gitpython
-gitpython==3.1.31
-    # via pynxtools
-h5glance==0.8.1
-    # via -r requirements.jupyter.in
-h5grove==1.3.0
-    # via
-    #   -r requirements.jupyter.in
-    #   jupyterlab-h5web
-h5py==3.8.0
-    # via
-    #   -r requirements.webtop.in
-    #   arpes
-    #   h5glance
-    #   h5grove
-    #   hdf5plugin
-    #   hyperspy
-    #   ifes-apt-tc-data-modeling
-    #   jupyterlab-h5web
-    #   kikuchipy
-    #   mpes
-    #   nexpy
-    #   nexusformat
-    #   orix
-    #   punx
-    #   pyfai
-    #   pynxtools
-    #   silx
-hdf5plugin==4.1.1
-    # via
-    #   jupyterlab-h5web
-    #   nexusformat
-    #   silx
-htmlgen==2.0.0
-    # via h5glance
-hyperspy==1.7.5
-    # via
-    #   kikuchipy
-    #   pynxtools
-    #   pyxem
-idna==3.4
-    # via
-    #   anyio
-    #   requests
-ifes-apt-tc-data-modeling==0.0.8
-    # via pynxtools
-igor==0.3
-    # via mpes
-imageio==2.27.0
-    # via
-    #   arpes
-    #   hyperspy
-    #   kikuchipy
-    #   mpes
-    #   scikit-image
-imagesize==1.4.1
-    # via sphinx
-importlib-metadata==6.6.0
-    # via
-    #   dask
-    #   hyperspy
-    #   jupyter-client
-    #   jupyterlab-server
-    #   nbconvert
-    #   nexpy
-    #   numba
-    #   sphinx
-importlib-resources==5.12.0
-    # via
-    #   jsonschema
-    #   matplotlib
-    #   radioactivedecay
-ipykernel==6.23.0
-    # via
-    #   ipyparallel
-    #   ipywidgets
-    #   nbclassic
-    #   nexpy
-    #   notebook
-    #   qtconsole
-ipyparallel==8.6.1
-    # via hyperspy
-ipython==8.12.2
-    # via
-    #   hyperspy
-    #   ipykernel
-    #   ipyparallel
-    #   ipywidgets
-    #   jupyterlab
-    #   nexpy
-ipython-genutils==0.2.0
-    # via
-    #   ipywidgets
-    #   nbclassic
-    #   notebook
-    #   qtconsole
-ipywidgets==7.7.5
-    # via
-    #   -r requirements.jupyter.in
-    #   arpes
-    #   pyxem
-jedi==0.18.2
-    # via ipython
-jinja2==3.1.2
-    # via
-    #   bokeh
-    #   dask
-    #   distributed
-    #   hyperspy
-    #   jupyter-server
-    #   jupyterlab
-    #   jupyterlab-server
-    #   nbclassic
-    #   nbconvert
-    #   notebook
-    #   sphinx
-joblib==1.2.0
-    # via scikit-learn
-json5==0.9.11
-    # via jupyterlab-server
-jsonschema==4.17.3
-    # via
-    #   jupyterlab-server
-    #   nbformat
-jupyter-client==8.2.0
-    # via
-    #   ipykernel
-    #   ipyparallel
-    #   jupyter-server
-    #   nbclassic
-    #   nbclient
-    #   notebook
-    #   qtconsole
-jupyter-core==5.3.0
-    # via
-    #   ipykernel
-    #   jupyter-client
-    #   jupyter-server
-    #   jupyterlab
-    #   nbclassic
-    #   nbclient
-    #   nbconvert
-    #   nbformat
-    #   notebook
-    #   qtconsole
-jupyter-server==1.24.0
-    # via
-    #   jupyterlab
-    #   jupyterlab-h5web
-    #   jupyterlab-server
-    #   nbclassic
-    #   notebook-shim
-jupyterlab==3.5.3
-    # via
-    #   -r requirements.jupyter.in
-    #   -r requirements.webtop.in
-    #   ifes-apt-tc-data-modeling
-    #   pynxtools
-jupyterlab-h5web[full]==7.1.1
-    # via
-    #   -r requirements.jupyter.in
-    #   ifes-apt-tc-data-modeling
-    #   pynxtools
-jupyterlab-pygments==0.2.2
-    # via nbconvert
-jupyterlab-server==2.22.1
-    # via jupyterlab
-jupyterlab-widgets==1.1.4
-    # via ipywidgets
-kikuchipy==0.8.4
-    # via pynxtools
-kiwisolver==1.4.4
-    # via matplotlib
-lark==1.1.5
-    # via pynxtools
-lazy-loader==0.2
-    # via scikit-image
-llvmlite==0.40.0
-    # via numba
-lmfit==1.2.1
-    # via
-    #   arpes
-    #   mpes
-    #   nexpy
-    #   pyxem
-locket==1.0.0
-    # via
-    #   distributed
-    #   partd
-lxml==4.9.2
-    # via
-    #   punx
-    #   pyresttable
-lz4==4.3.2
-    # via dask
-mako==1.2.4
-    # via silx
-markupsafe==2.1.2
-    # via
-    #   jinja2
-    #   mako
-    #   nbconvert
-matplotlib==3.7.1
-    # via
-    #   arpes
-    #   ase
-    #   diffsims
-    #   hyperspy
-    #   kikuchipy
-    #   matplotlib-scalebar
-    #   mpes
-    #   mplcursors
-    #   nexpy
-    #   orix
-    #   pyfai
-    #   pyxem
-    #   radioactivedecay
-    #   silx
-    #   symmetrize
-matplotlib-inline==0.1.6
-    # via
-    #   ipykernel
-    #   ipython
-matplotlib-scalebar==0.8.1
-    # via orix
-mistune==2.0.5
-    # via nbconvert
-mpes==1.1.4
-    # via -r requirements.jupyter.in
-mplcursors==0.5.2
-    # via nexpy
-mpmath==1.3.0
-    # via sympy
-msgpack==1.0.5
-    # via
-    #   blosc2
-    #   distributed
-natsort==8.3.1
-    # via
-    #   hyperspy
-    #   mpes
-nbclassic==1.0.0
-    # via
-    #   jupyterlab
-    #   notebook
-nbclient==0.7.4
-    # via nbconvert
-nbconvert==7.4.0
-    # via
-    #   jupyter-server
-    #   nbclassic
-    #   notebook
-nbformat==5.8.0
-    # via
-    #   jupyter-server
-    #   nbclassic
-    #   nbclient
-    #   nbconvert
-    #   notebook
-nest-asyncio==1.5.6
-    # via
-    #   ipykernel
-    #   nbclassic
-    #   notebook
-netcdf4==1.6.3
-    # via arpes
-networkx==3.1
-    # via
-    #   radioactivedecay
-    #   scikit-image
-nexpy==1.0.3
-    # via -r requirements.webtop.in
-nexusformat==1.0.1
-    # via nexpy
-nodejs==0.1.1
-    # via -r requirements.jupyter.in
-nose==1.3.7
-    # via mpes
-notebook==6.5.4
-    # via
-    #   jupyterlab
-    #   widgetsnbextension
-notebook-shim==0.2.3
-    # via nbclassic
-numba==0.57.0
-    # via
-    #   arpes
-    #   diffsims
-    #   hyperspy
-    #   kikuchipy
-    #   mpes
-    #   orix
-    #   pyxem
-    #   sparse
-numcodecs==0.11.0
-    # via zarr
-numexpr==2.8.4
-    # via
-    #   hyperspy
-    #   pyfai
-    #   tables
-numpy==1.23.5
-    # via
-    #   -r requirements.webtop.in
-    #   arpes
-    #   ase
-    #   astropy
-    #   bokeh
-    #   cftime
-    #   contourpy
-    #   dask
-    #   deepdish
-    #   diffsims
-    #   fabio
-    #   fastdtw
-    #   fastparquet
-    #   h5grove
-    #   h5py
-    #   hyperspy
-    #   ifes-apt-tc-data-modeling
-    #   imageio
-    #   kikuchipy
-    #   lmfit
-    #   matplotlib
-    #   mpes
-    #   netcdf4
-    #   nexpy
-    #   nexusformat
-    #   numba
-    #   numcodecs
-    #   numexpr
-    #   numpy-quaternion
-    #   opencv-python
-    #   orix
-    #   pandas
-    #   photutils
-    #   punx
-    #   pyarrow
-    #   pyerfa
-    #   pyfai
-    #   pynxtools
-    #   pyopencl
-    #   pyqtgraph
-    #   pyresttable
-    #   pywavelets
-    #   pyxem
-    #   radioactivedecay
-    #   scikit-image
-    #   scikit-learn
-    #   scipy
-    #   silx
-    #   sparse
-    #   symmetrize
-    #   tables
-    #   tifffile
-    #   xarray
-    #   zarr
-numpy-quaternion==2022.4.3
-    # via orix
-opencv-python==4.7.0.72
-    # via
-    #   mpes
-    #   symmetrize
-optional-django==0.1.0
-    # via nodejs
-orix==0.11.1
-    # via
-    #   diffsims
-    #   kikuchipy
-    #   pyxem
-orjson==3.8.12
-    # via h5grove
-packaging==23.1
-    # via
-    #   arpes
-    #   astropy
-    #   bokeh
-    #   dask
-    #   distributed
-    #   fastparquet
-    #   hyperspy
-    #   ipykernel
-    #   jupyter-server
-    #   jupyterlab
-    #   jupyterlab-server
-    #   matplotlib
-    #   nbconvert
-    #   pooch
-    #   qtconsole
-    #   qtpy
-    #   scikit-image
-    #   sphinx
-    #   tables
-    #   xarray
-pandas==2.0.1
-    # via
-    #   arpes
-    #   dask
-    #   fastparquet
-    #   ifes-apt-tc-data-modeling
-    #   mpes
-    #   pynxtools
-    #   xarray
-pandocfilters==1.5.0
-    # via nbconvert
-param==1.13.0
-    # via pyct
-parso==0.8.3
-    # via jedi
-partd==1.4.0
-    # via dask
-pexpect==4.8.0
-    # via ipython
-photutils==1.7.0
-    # via
-    #   mpes
-    #   symmetrize
-pickleshare==0.7.5
-    # via ipython
-pillow==9.5.0
-    # via
-    #   bokeh
-    #   imageio
-    #   matplotlib
-    #   nexpy
-    #   scikit-image
-    #   silx
-pint==0.21
-    # via
-    #   arpes
-    #   hyperspy
-pkgutil-resolve-name==1.3.10
-    # via jsonschema
-platformdirs==3.5.0
-    # via
-    #   jupyter-core
-    #   pooch
-    #   pyopencl
-    #   pytools
-    #   requests-cache
-pooch==1.7.0
-    # via
-    #   kikuchipy
-    #   orix
-prettytable==3.7.0
-    # via hyperspy
-prometheus-client==0.16.0
-    # via
-    #   jupyter-server
-    #   nbclassic
-    #   notebook
-prompt-toolkit==3.0.38
-    # via ipython
-psutil==5.9.5
-    # via
-    #   diffsims
-    #   distributed
-    #   ipykernel
-    #   ipyparallel
-    #   pyxem
-ptyprocess==0.7.0
-    # via
-    #   pexpect
-    #   terminado
-punx==0.3.0
-    # via -r requirements.jupyter.in
-pure-eval==0.2.2
-    # via stack-data
-py-cpuinfo==9.0.0
-    # via tables
-pyarrow==12.0.0
-    # via dask
-pycifrw==4.4.5
-    # via diffpy-structure
-pycparser==2.21
-    # via cffi
-pyct==0.5.0
-    # via colorcet
-pyerfa==2.0.0.3
-    # via astropy
-pyfai==2023.3.0
-    # via pyxem
-pygments==2.15.1
-    # via
-    #   ipython
-    #   nbconvert
-    #   qtconsole
-    #   sphinx
-pylatexenc==2.10
-    # via nexpy
-pynxtools==0.0.2
-    # via -r requirements.jupyter.in
-pyopencl==2023.1
-    # via silx
-pyopengl==3.1.6
-    # via silx
-pyparsing==3.0.9
-    # via matplotlib
-pyqt5==5.15.0
-    # via
-    #   arpes
-    #   silx
-pyqt5-sip==12.12.1
-    # via pyqt5
-pyqtgraph==0.12.4
-    # via arpes
-pyresttable==2020.0.8
-    # via punx
-pyrsistent==0.19.3
-    # via jsonschema
-python-dateutil==2.8.2
-    # via
-    #   hyperspy
-    #   ipyparallel
-    #   jupyter-client
-    #   matplotlib
-    #   pandas
-    #   silx
-pytools==2022.1.14
-    # via pyopencl
-pytz==2023.3
-    # via
-    #   babel
-    #   pandas
-    #   pynxtools
-pywavelets==1.4.1
-    # via scikit-image
-pyxem==0.15.0
-    # via pynxtools
-pyyaml==6.0
-    # via
-    #   astropy
-    #   bokeh
-    #   dask
-    #   distributed
-    #   hyperspy
-    #   kikuchipy
-    #   pynxtools
-pyzmq==25.0.2
-    # via
-    #   ipykernel
-    #   ipyparallel
-    #   jupyter-client
-    #   jupyter-server
-    #   nbclassic
-    #   notebook
-    #   qtconsole
-qtconsole==5.4.3
-    # via
-    #   nexpy
-    #   silx
-qtpy==2.3.1
-    # via
-    #   nexpy
-    #   qtconsole
-radioactivedecay==0.4.17
-    # via ifes-apt-tc-data-modeling
-recommonmark==0.7.1
-    # via symmetrize
-requests==2.30.0
-    # via
-    #   hyperspy
-    #   jupyterlab-server
-    #   pooch
-    #   punx
-    #   pynxtools
-    #   requests-cache
-    #   sphinx
-requests-cache==1.0.1
-    # via pynxtools
-rx==3.2.0
-    # via arpes
-scikit-image==0.20.0
-    # via
-    #   hyperspy
-    #   kikuchipy
-    #   mpes
-    #   pyxem
-    #   symmetrize
-scikit-learn==1.2.2
-    # via
-    #   arpes
-    #   kikuchipy
-    #   pyxem
-scipy==1.8.1
-    # via
-    #   arpes
-    #   ase
-    #   deepdish
-    #   diffsims
-    #   hyperspy
-    #   kikuchipy
-    #   lmfit
-    #   mpes
-    #   nexpy
-    #   nexusformat
-    #   orix
-    #   pyfai
-    #   pynxtools
-    #   pyxem
-    #   radioactivedecay
-    #   scikit-image
-    #   scikit-learn
-    #   silx
-    #   sparse
-    #   symmetrize
-send2trash==1.8.2
-    # via
-    #   jupyter-server
-    #   nbclassic
-    #   notebook
-silx[full]==1.1.2
-    # via
-    #   -r requirements.jupyter.in
-    #   -r requirements.webtop.in
-    #   mpes
-    #   pyfai
-six==1.16.0
-    # via
-    #   asttokens
-    #   bleach
-    #   diffpy-structure
-    #   python-dateutil
-    #   url-normalize
-smmap==5.0.0
-    # via gitdb
-sniffio==1.3.0
-    # via anyio
-snowballstemmer==2.2.0
-    # via sphinx
-sortedcontainers==2.4.0
-    # via distributed
-soupsieve==2.4.1
-    # via beautifulsoup4
-sparse==0.14.0
-    # via hyperspy
-sphinx==6.2.1
-    # via
-    #   mpes
-    #   recommonmark
-    #   sphinx-rtd-theme
-    #   sphinxcontrib-jquery
-    #   symmetrize
-sphinx-rtd-theme==1.2.0
-    # via symmetrize
-sphinxcontrib-applehelp==1.0.4
-    # via sphinx
-sphinxcontrib-devhelp==1.0.2
-    # via sphinx
-sphinxcontrib-htmlhelp==2.0.1
-    # via sphinx
-sphinxcontrib-jquery==4.1
-    # via sphinx-rtd-theme
-sphinxcontrib-jsmath==1.0.1
-    # via sphinx
-sphinxcontrib-qthelp==1.0.3
-    # via sphinx
-sphinxcontrib-serializinghtml==1.1.5
-    # via sphinx
-stack-data==0.6.2
-    # via ipython
-symmetrize==0.5.5
-    # via mpes
-sympy==1.11.1
-    # via
-    #   hyperspy
-    #   radioactivedecay
-tables==3.8.0
-    # via deepdish
-tblib==1.7.0
-    # via distributed
-terminado==0.17.1
-    # via
-    #   jupyter-server
-    #   nbclassic
-    #   notebook
-threadpoolctl==3.1.0
-    # via
-    #   mpes
-    #   scikit-learn
-tifffile==2023.4.12
-    # via
-    #   h5grove
-    #   hyperspy
-    #   scikit-image
-tinycss2==1.2.1
-    # via nbconvert
-titlecase==2.4
-    # via arpes
-tomli==2.0.1
-    # via jupyterlab
-toolz==0.12.0
-    # via
-    #   dask
-    #   distributed
-    #   hyperspy
-    #   partd
-tornado==6.3.1
-    # via
-    #   bokeh
-    #   distributed
-    #   ipykernel
-    #   ipyparallel
-    #   jupyter-client
-    #   jupyter-server
-    #   jupyterlab
-    #   nbclassic
-    #   notebook
-    #   terminado
-tqdm==4.65.0
-    # via
-    #   arpes
-    #   diffsims
-    #   hyperspy
-    #   ipyparallel
-    #   kikuchipy
-    #   mpes
-    #   orix
-traitlets==5.9.0
-    # via
-    #   comm
-    #   ipykernel
-    #   ipyparallel
-    #   ipython
-    #   ipywidgets
-    #   jupyter-client
-    #   jupyter-core
-    #   jupyter-server
-    #   matplotlib-inline
-    #   nbclassic
-    #   nbclient
-    #   nbconvert
-    #   nbformat
-    #   notebook
-    #   qtconsole
-traits==6.4.1
-    # via hyperspy
-transforms3d==0.4.1
-    # via
-    #   diffsims
-    #   pyxem
-typing-extensions==4.5.0
-    # via
-    #   bokeh
-    #   ipython
-    #   pytools
-tzdata==2023.3
-    # via pandas
-uncertainties==3.1.7
-    # via lmfit
-url-normalize==1.4.3
-    # via requests-cache
-urllib3==2.0.2
-    # via
-    #   distributed
-    #   requests
-    #   requests-cache
-wcwidth==0.2.6
-    # via
-    #   prettytable
-    #   prompt-toolkit
-webencodings==0.5.1
-    # via
-    #   bleach
-    #   tinycss2
-websocket-client==1.5.1
-    # via jupyter-server
-widgetsnbextension==3.6.4
-    # via ipywidgets
-xarray==2023.1.0
-    # via
-    #   arpes
-    #   mpes
-    #   pynxtools
-zarr==2.14.2
-    # via hyperspy
-zict==3.0.0
-    # via distributed
-zipfile37==0.1.3
-    # via pynxtools
-zipp==3.15.0
-    # via
-    #   importlib-metadata
-    #   importlib-resources
-
-# The following packages are considered to be unsafe in a requirements file:
-# pip
-# setuptools