From ab31a7705e6a94237d45556a574148d19fad5ff7 Mon Sep 17 00:00:00 2001
From: Sylvester Joosten <sjoosten@anl.gov>
Date: Tue, 9 Mar 2021 09:43:50 -0600
Subject: [PATCH] Update CI setup based on new upstream container

---
 .containers/Dockerfile.in                     |  22 +
 .containers/Makefile                          |  64 +++
 .containers/config.env                        |  17 +
 {containers => .containers}/docker/Makefile   |   0
 .containers/hcana.def.in                      |  14 +
 .../singularity/Singularity.broadwell         |   0
 .containers/version.sh                        |   3 +
 .gitlab-ci.yml                                | 167 ++++---
 .gitlabci/build.sh                            |   0
 .gitlabci/configure.sh                        |  26 +
 .gitlabci/setup.sh                            |  34 --
 .gitlabci/sregistry-gitlab.png                | Bin 38298 -> 0 bytes
 .gitlabci/sregistry-gitlab.xcf                | Bin 100932 -> 0 bytes
 VERSION                                       |   1 +
 bin/compile                                   |  35 --
 containers/docker/Dockerfile                  |  53 ---
 containers/docker/Dockerfile.broadwell        |  58 ---
 containers/docker/README.md                   |  18 -
 containers/docker/config.env                  |  23 -
 containers/docker/deploy.env                  |   5 -
 containers/docker/usage.sh                    |  26 -
 containers/docker/version.sh                  |   3 -
 containers/singularity/Singularity            | 125 -----
 setup.fish                                    |  37 --
 tests/README.md                               |  13 -
 tests/elastic_coin_replay.cxx                 | 296 ------------
 tests/elastic_test.cxx                        | 446 ------------------
 tests/elastic_test.sh                         |  26 -
 tests/elastic_test2.sh                        |  30 --
 tests/my_root_script.cxx                      |  20 -
 tests/replay_elastic_data.sh                  |  38 --
 31 files changed, 245 insertions(+), 1355 deletions(-)
 create mode 100644 .containers/Dockerfile.in
 create mode 100644 .containers/Makefile
 create mode 100644 .containers/config.env
 rename {containers => .containers}/docker/Makefile (100%)
 create mode 100644 .containers/hcana.def.in
 rename {containers => .containers}/singularity/Singularity.broadwell (100%)
 create mode 100644 .containers/version.sh
 mode change 100644 => 100755 .gitlabci/build.sh
 create mode 100755 .gitlabci/configure.sh
 delete mode 100644 .gitlabci/setup.sh
 delete mode 100644 .gitlabci/sregistry-gitlab.png
 delete mode 100644 .gitlabci/sregistry-gitlab.xcf
 create mode 100644 VERSION
 delete mode 100755 bin/compile
 delete mode 100644 containers/docker/Dockerfile
 delete mode 100644 containers/docker/Dockerfile.broadwell
 delete mode 100644 containers/docker/README.md
 delete mode 100644 containers/docker/config.env
 delete mode 100644 containers/docker/deploy.env
 delete mode 100644 containers/docker/usage.sh
 delete mode 100644 containers/docker/version.sh
 delete mode 100644 containers/singularity/Singularity
 delete mode 100644 setup.fish
 delete mode 100644 tests/README.md
 delete mode 100644 tests/elastic_coin_replay.cxx
 delete mode 100644 tests/elastic_test.cxx
 delete mode 100644 tests/elastic_test.sh
 delete mode 100644 tests/elastic_test2.sh
 delete mode 100644 tests/my_root_script.cxx
 delete mode 100644 tests/replay_elastic_data.sh

diff --git a/.containers/Dockerfile.in b/.containers/Dockerfile.in
new file mode 100644
index 0000000..06567d3
--- /dev/null
+++ b/.containers/Dockerfile.in
@@ -0,0 +1,22 @@
+FROM eicweb.phy.anl.gov:4567/containers/image_recipes/root_spack:@CONTAINER_TAG@
+
+LABEL maintainer "Sylvester Joosten <sjoosten@anl.gov>"
+
+RUN  cd /tmp \
+  && git clone https://eicweb.phy.anl.gov/jlab/hallc/analyzer_software/hallac_evio.git \
+  && mkdir hallac_evio/build && cd hallac_evio/build  \
+  && cmake ../.  && make -j20 && make install \
+  && cd /tmp && rm -rf hallac_evio \
+  && git clone https://eicweb.phy.anl.gov/jlab/hallc/analyzer_software/analyzer.git \
+  && mkdir analyzer/build && cd analyzer/build   && git pull && git checkout v1.8.3 \
+  && cmake ../.  && make -j20 VERBOSE=1 && make install \
+  && cd /tmp  && rm -rf analyzer
+
+## 2 layers so we can isolate hcana from the rest of the stack
+
+RUN cd /tmp \
+  && git clone https://eicweb.phy.anl.gov/jlab/hallc/analyzer_software/hcana.git \
+  && mkdir hcana/build && cd hcana/build  \
+  && git pull \
+  && cmake ../.  && make -j20 VERBOSE=1 && make install \
+  && cd /tmp && rm -rf hcana 
diff --git a/.containers/Makefile b/.containers/Makefile
new file mode 100644
index 0000000..d5e8233
--- /dev/null
+++ b/.containers/Makefile
@@ -0,0 +1,64 @@
+# import config.
+# You can change the default config with `make cnf="config_special.env" build`
+cnf ?= config.env
+include $(cnf)
+# exports variables in config.env as environment variables
+export $(shell sed 's/=.*//' $(cnf))
+
+SHELL = bash
+
+# grep the version from the mix file
+VERSION=$(shell bash version.sh)
+TAG_VERSION=$(VERSION)
+LONG_TAG=$(VERSION)-$(PUBLISH_TAG)
+
+# help will output the help for each task
+# thanks to https://marmelab.com/blog/2016/02/29/auto-documented-makefile.html
+.PHONY: help
+
+help: ## This help.
+	@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
+
+.DEFAULT_GOAL := help
+
+# ==========================================================================
+#
+build: ## build the image
+	docker build -t $(APP_NAME):$(LONG_TAG) .
+
+build-nc: ## Build the container without caching (from scratch)
+	docker build --no-cache -t $(APP_NAME):$(LONG_TAG) .
+
+# ==========================================================================
+#
+login: ## Auto login to AWS-ECR unsing aws-cli
+	@docker login -u ${CI_REGISTRY_USER} -p ${CI_REGISTRY_PASSWORD} ${CI_REGISTRY}
+	echo "Login COMPLETE"
+
+# ==========================================================================
+#
+
+publish: login ## Publish a tagged container to ECR
+	@echo 'publish $(PUBLISH_TAG) to $(REG_NAME)/$(GL_REG_GROUP)/$(APP_NAME)'
+	docker tag $(APP_NAME):$(LONG_TAG) $(REG_NAME)/$(GL_REG_GROUP)/$(APP_NAME):$(PUBLISH_TAG)
+	docker push $(REG_NAME)/$(GL_REG_GROUP)/$(APP_NAME):$(PUBLISH_TAG)
+	docker rmi  $(REG_NAME)/$(GL_REG_GROUP)/$(APP_NAME):$(PUBLISH_TAG)
+
+publish-version: login ## Publish the `{version}` taged container to ECR
+	@echo 'publish $(VERSION) to $(REG_NAME)/$(GL_REG_GROUP)/$(APP_NAME):$(VERSION)'
+	docker tag $(APP_NAME):$(LONG_TAG) $(REG_NAME)/$(GL_REG_GROUP)/$(APP_NAME):$(VERSION)
+	docker push $(REG_NAME)/$(GL_REG_GROUP)/$(APP_NAME):$(VERSION)
+	docker rmi  $(REG_NAME)/$(GL_REG_GROUP)/$(APP_NAME):$(VERSION)
+
+# ==========================================================================
+# remove container from registry
+unpublish: login
+	@echo 'removing $(PUBLISH_TAG)'
+	curl --request DELETE --header "PRIVATE-TOKEN: $(CI_JOB_TOKEN)" "$(REG_API_URL)/$(PUBLISH_TAG)"
+
+# ==========================================================================
+# cleanup docker registry on system used by runner
+cleanup:
+	@echo 'removing $(REG_NAME):$(LONG_TAG)'
+	docker rmi $(REG_NAME):$(LONG_TAG)
+
diff --git a/.containers/config.env b/.containers/config.env
new file mode 100644
index 0000000..79a52b2
--- /dev/null
+++ b/.containers/config.env
@@ -0,0 +1,17 @@
+# Port to run the container 
+
+APP_NAME     = hcana
+REPO_NAME    = hcana
+
+REG_HOST  ?= eicweb.phy.anl.gov
+REG_NAME  ?= eicweb.phy.anl.gov:4567
+REG_PORT  ?= 4567
+REG_URL   ?= https://$(REG_HOST)
+
+GL_GROUP     = jlab/hallc/analyzer_software
+GL_REG_GROUP = jlab/hallc/analyzer_software/hcana
+GL_REG_NAME  = $(REG_NAME)
+
+PUBLISH_TAG = $(HCANA_TAG)
+
+REG_API_URL = $(REG_URL)/api/v4/projects/$(CI_PROJECT_ID)/registry/repositories/49/tags
diff --git a/containers/docker/Makefile b/.containers/docker/Makefile
similarity index 100%
rename from containers/docker/Makefile
rename to .containers/docker/Makefile
diff --git a/.containers/hcana.def.in b/.containers/hcana.def.in
new file mode 100644
index 0000000..12ab7e6
--- /dev/null
+++ b/.containers/hcana.def.in
@@ -0,0 +1,14 @@
+Bootstrap: docker
+From: eicweb.phy.anl.gov:4567/jlab/hallc/analyzer_software/hcana:@HCANA_TAG@
+
+%help
+  singularity container for hcana development
+
+%labels
+  Maintainer "Whitney Armstrong, Sylvester Joosten"
+  Version v1-dev
+
+%post -c /bin/bash
+  echo "  -------------------------------------------------"
+  echo "  ===> Image setup complete"
+  echo "  -------------------------------------------------"
diff --git a/containers/singularity/Singularity.broadwell b/.containers/singularity/Singularity.broadwell
similarity index 100%
rename from containers/singularity/Singularity.broadwell
rename to .containers/singularity/Singularity.broadwell
diff --git a/.containers/version.sh b/.containers/version.sh
new file mode 100644
index 0000000..93ef8dc
--- /dev/null
+++ b/.containers/version.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+cat ../VERSION
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0aaf4ed..e2978a1 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,84 +1,113 @@
-image: eicweb.phy.anl.gov:4567/containers/image_recipes/root_base:latest
+variables:
+  CONTAINER_TAG: "1.4.0"
+
+default: 
+  image: eicweb.phy.anl.gov:4567/containers/image_recipes/ubuntu_dind:latest
+  tags:
+    - silicon
 
 stages:
+  - config
   - build
-  - build_docker
-  - build_sing_img
-  - data_replays
-  - data_tests
+  - push
+  - deploy
+  - cleanup
 
-hcana_build:
-  stage: build
-  tags: 
-    - sodium
-  script:
-    -  ls -lrth /usr/local/bin
-    - bash bin/compile
-
-hcana_docker:
-  stage: build_docker  
-  only:
-     - tags
-  tags: 
-     - eic0 docker
-  script:
-     - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
-     - cd containers/docker && make release
+workflow:
+  rules:
+     - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
+     - if: '$CI_COMMIT_BRANCH == "master"'
+     - if: '$CI_COMMIT_TAG'
 
-hcana_singularity:
-  tags: 
-     - singularity
-  stage: build_sing_img
-  when: manual
-  dependencies:
-     - hcana_docker
+env:
+  stage: config 
   script:
-     - /bin/bash .gitlabci/setup.sh
-     - mkdir -p build
-     - pwd
-     - cp containers/singularity/Singularity Singularity.hcana
-     - cp Singularity.hcana build/.
-     - /bin/bash .gitlabci/build.sh Singularity.hcana
-     - cp Singularity.hcana.simg build/.
+    - export HCANA_TAG="latest"
+    - |
+      if [ "x${CI_PIPELINE_SOURCE}" == "xmerge_request_event" ]; then
+        export HCANA_TAG="testing-mr-${CI_MERGE_REQUEST_IID}"
+      fi
+    - echo "CI HCANA_TAG for this pipeline set to ${HCANA_TAG}"
+    - echo "HCANA_TAG=$HCANA_TAG" >> hcana.env
   artifacts:
-      paths:
-        - build/Singularity.hcana
-        - build/Singularity.hcana.simg
+    reports:
+      dotenv: hcana.env
 
-elastic_replay:
-  when: manual
-  tags: 
-     - eic0 docker
-  stage: data_replays
-  dependencies: 
-     - hcana_singularity
+docker:
+  stage: build
+  needs:
+    - env
   script:
-     - bash tests/replay_elastic_data.sh
-  artifacts:
-     paths: 
-       - ROOTfiles/*
-       - build/Singularity.hcana
-       - build/Singularity.hcana.simg
-
+    - echo $HCANA_TAG
+    - ./.gitlabci/configure.sh .containers/Dockerfile.in
+    - cd .containers
+    - make build-nc
 
-elastic_test1:
-  when: manual
-  tags: 
-     - eic0 docker
-  stage: data_tests
-  dependencies: 
-     - elastic_replay
+## for now only publish the stable versions to the registry.
+## if we change this down the line for some CI-time testing
+## make sure to also enable the cleanup job
+publish:
+  stage: push
+  rules:
+    - if: '$CI_COMMIT_BRANCH == "master"'
+      when: manual
+    - if: '$CI_COMMIT_TAG'
+      when: manual
+  needs:
+    - env
+    - docker
   script:
-     - bash tests/elastic_test.sh
+    - cd .containers
+    - |
+      if [ "x$CI_COMMIT_TAG" != "x" ]; then
+        make publish publish-version
+      else
+        make publish
+      fi
+  retry:
+    max: 2
+    when:
+      - runner_system_failure
+      - stuck_or_timeout_failure
 
-elastic_test2:
-  when: manual
-  tags: 
-     - eic0 docker
-  stage: data_tests
-  dependencies: 
-     - elastic_replay
+.singularity:
+  stage: deploy
+  needs: 
+    - env
+    - publish
   script:
-     - bash tests/elastic_test2.sh
+    - ./.gitlabci/configure.sh .containers/hcana.def.in
+    - mkdir -p build
+    - mv .containers/hcana.def build
+    - singularity build build/hcana.sif build/hcana.def
+  retry:
+    max: 2
+    when:
+      - runner_system_failure
+      - stuck_or_timeout_failure
 
+singularity:latest:
+  extends: .singularity
+  rules:
+    - if: '$CI_COMMIT_BRANCH == "master"'
+      when: manual
+    - if: '$CI_COMMIT_TAG'
+      when: manual
+  artifacts:
+    expire_in: 90 days
+    paths:
+      - build/hcana.sif
+      - build/hcana.def
 
+purge_image:
+  stage: cleanup
+  needs:
+    - env
+    - publish
+  rules:
+    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
+      when: never
+  script:
+    - cd .containers
+    - make cleanup || true
+    - make unpublish || true
diff --git a/.gitlabci/build.sh b/.gitlabci/build.sh
old mode 100644
new mode 100755
diff --git a/.gitlabci/configure.sh b/.gitlabci/configure.sh
new file mode 100755
index 0000000..c59d8a4
--- /dev/null
+++ b/.gitlabci/configure.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+## Configure a CI file based on a template file (first and only
+## argument to this script).
+
+## Known variables that will be substituted:
+## @CONTAINER_TAG@          - docker tag for the ROOT container
+## @HCANA_TAG@         - output tag for the hcana version
+## @HCANA_BRANCH@      - hcana git branch for build
+
+TEMPLATE_FILE=$1
+OUTPUT_FILE=${TEMPLATE_FILE%.*}
+HCANA_BRANCH="master"
+
+if [ -n "${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME}" ] ; then
+    HCANA_BRANCH=$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME
+fi
+
+echo "Configuring CI file: ${TEMPLATE_FILE}"
+echo "Output will be written to: ${OUTPUT_FILE}"
+
+sed "s/@CONTAINER_TAG@/$CONTAINER_TAG/g" $TEMPLATE_FILE | \
+    sed "s/@HCANA_TAG@/$HCANA_TAG/g" | \
+    sed "s/@HCANA_BRANCH@/$HCANA_BRANCH/g" > ${OUTPUT_FILE}
+
+echo "Done"
diff --git a/.gitlabci/setup.sh b/.gitlabci/setup.sh
deleted file mode 100644
index 5c9bbe5..0000000
--- a/.gitlabci/setup.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-
-apt-get update && apt-get install -y wget git \
-                                          build-essential \
-                                          squashfs-tools \
-                                          libtool \
-                                          autotools-dev \
-                                          libarchive-dev \
-                                          automake \
-                                          autoconf \
-                                          uuid-dev \
-                                          python3   \
-                                          libssl-dev
-
-
-sed -i -e 's/^Defaults\tsecure_path.*$//' /etc/sudoers
-
-# Check Python
-echo "Python Version:"
-which python
-python --version
-pip install sregistry[all]
-sregistry version
-
-echo "sregistry Version:"
-
-# Install Singularity
-
-cd /tmp && \
-    git clone -b vault/release-2.5 https://www.github.com/sylabs/singularity.git
-    cd singularity && \
-    ./autogen.sh && \
-    ./configure --prefix=/usr/local && \
-    make -j8 && make install
diff --git a/.gitlabci/sregistry-gitlab.png b/.gitlabci/sregistry-gitlab.png
deleted file mode 100644
index a14e917a20fb32011329af6bc6abd04012acd0d6..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 38298
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

diff --git a/.gitlabci/sregistry-gitlab.xcf b/.gitlabci/sregistry-gitlab.xcf
deleted file mode 100644
index f2742162bfc602f92d3d9c5cd573f29e334e042d..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 100932
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
B=kx#o

diff --git a/VERSION b/VERSION
new file mode 100644
index 0000000..88c5fb8
--- /dev/null
+++ b/VERSION
@@ -0,0 +1 @@
+1.4.0
diff --git a/bin/compile b/bin/compile
deleted file mode 100755
index ea6387a..0000000
--- a/bin/compile
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/bash
-#set -o nounset
-set -o errexit
-startdir=$(pwd)
-export PYTHONPATH=/usr/local/lib:$PYTHONPATH  
-export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH  
-export PATH=/usr/local/bin:$PATH  
-source /usr/local/bin/thisroot.sh 
-cd /tmp 
-git clone https://github.com/fmtlib/fmt.git && cd fmt 
-git checkout 6.2.1 && mkdir /tmp/build && cd /tmp/build 
-cmake -DBUILD_SHARED_LIBS=TRUE ../fmt 
-make -j20 install 
-cd /tmp && rm -r /tmp/build && rm -r /tmp/fmt 
-cd /tmp  
-git clone https://eicweb.phy.anl.gov/jlab/hallc/analyzer_software/hallac_evio.git 
-mkdir hallac_evio/build && cd hallac_evio/build  
-cmake ../.  && make -j20 && make install 
-cd /tmp && rm -rf hallac_evio 
-cd /tmp  
-export PYTHONPATH=/usr/local/lib:$PYTHONPATH  
-export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH  
-export PATH=/usr/local/bin:$PATH  
-git clone --depth 1 https://eicweb.phy.anl.gov/jlab/hallc/analyzer_software/analyzer.git 
-mkdir analyzer/build && cd analyzer/build   
-cmake ../.  && make -j20 VERBOSE=1 && make install 
-cd /tmp  && rm -rf analyzer 
-export PYTHONPATH=/usr/local/lib:$PYTHONPATH  
-export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH  
-export PATH=/usr/local/bin:$PATH  
-source /usr/local/bin/thisroot.sh 
-cd $startdir
-mkdir build && cd build  
-cmake ../.  && make -j20 VERBOSE=1 && make install  
-
diff --git a/containers/docker/Dockerfile b/containers/docker/Dockerfile
deleted file mode 100644
index f3a412a..0000000
--- a/containers/docker/Dockerfile
+++ /dev/null
@@ -1,53 +0,0 @@
-FROM eicweb.phy.anl.gov:4567/containers/image_recipes/root_base:latest                                                                                                                                       
-
-LABEL maintainer "Whitney Armstrong <warmstrong@anl.gov>"
-#
-
-RUN   ls -lrth /usr/local/lib/lib*.so \
-  && export PYTHONPATH=/usr/local/lib:$PYTHONPATH  \
-  && export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH  \
-  && export PATH=/usr/local/bin:$PATH  \
-  && source /usr/local/bin/thisroot.sh \
-  && cd /tmp \
-  && git clone https://github.com/fmtlib/fmt.git && cd fmt \
-  && git checkout 6.2.1 && mkdir /tmp/build && cd /tmp/build \
-  && cmake -DBUILD_SHARED_LIBS=TRUE ../fmt \
-  &&  make -j20 install \
-  && cd /tmp && rm -r /tmp/build && rm -r /tmp/fmt \
-  && cd /tmp  \
-  && git clone https://eicweb.phy.anl.gov/jlab/hallc/analyzer_software/hallac_evio.git \
-  && mkdir hallac_evio/build && cd hallac_evio/build  \
-  && cmake ../.  && make -j20 && make install \
-  && cd /tmp && rm -rf hallac_evio \
-  && cd /tmp  \
-  && export PYTHONPATH=/usr/local/lib:$PYTHONPATH  \
-  && export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH  \
-  && export PATH=/usr/local/bin:$PATH  \
-  && git clone https://eicweb.phy.anl.gov/jlab/hallc/analyzer_software/analyzer.git \
-  && mkdir analyzer/build && cd analyzer/build   && git pull && git checkout v1.8.2 \
-  && cmake ../.  && make -j20 VERBOSE=1 && make install \
-  && cd /tmp  && rm -rf analyzer \
-  && export PYTHONPATH=/usr/local/lib:$PYTHONPATH  \
-  && export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH  \
-  && export PATH=/usr/local/bin:$PATH  \
-  && source /usr/local/bin/thisroot.sh \
-  && git clone https://eicweb.phy.anl.gov/jlab/hallc/analyzer_software/hcana.git \
-  && mkdir hcana/build && cd hcana/build  \
-  && git pull \
-  && cmake ../.  && make -j20 VERBOSE=1 && make install \ 
-  && cd /tmp && rm -rf hcana 
-
-
-#-DCMAKE_CXX_FLAGS=" -march=haswell -O3 -mfma -malign-data=cacheline -finline-functions "
-#&& wget -O- https://root.cern.ch/download/root_v6.14.06.source.tar.gz | tar -zxvf - \
-#&& mv root-6.14.06 root_master \
-#RUN which c++ && ls -lrth /usr/bin/c++ && cd /tmp/builds/root_build && make -j38 VERBOSE=1 && make install \
-#      && cd /tmp && rm -rf /tmp/root_master && rm -rf /tmp/builds/root_build 
-
-#RUN useradd -ms /bin/bash -d /opt/user user
-#USER user
-#WORKDIR /opt/bubble_user
-
-##CMD ["-c" ]
-#ENTRYPOINT ["/bin/bash"]
-
diff --git a/containers/docker/Dockerfile.broadwell b/containers/docker/Dockerfile.broadwell
deleted file mode 100644
index 9185d45..0000000
--- a/containers/docker/Dockerfile.broadwell
+++ /dev/null
@@ -1,58 +0,0 @@
-# ROOT base
-#
-# A container for the latest root
-#
-FROM  whit/image_recipes/ubuntu_base:latest
-LABEL maintainer "Whitney Armstrong <warmstrong@anl.gov>"
-#
-
-RUN cd /tmp \
-      && wget http://bitbucket.org/eigen/eigen/get/3.3.4.tar.bz2 \
-      && tar -xvf 3.3.4.tar.bz2 \
-      && cd eigen-* \
-      && mkdir build && cd build \
-      && cmake ../. -DCMAKE_CXX_FLAGS=" -march=haswell -O3 -mfma -malign-data=cacheline -finline-functions " \
-      && make -j10 > /tmp/eigen_build.log && make install
-
-RUN cd /tmp \
-      && git clone --depth=1 https://gitlab.cern.ch/CLHEP/CLHEP.git \
-      && mkdir -p builds/clhep_build \
-      && cd  builds/clhep_build \
-      && cmake /tmp/CLHEP/.  -DCMAKE_CXX_FLAGS=" -march=haswell -O3 -mfma -malign-data=cacheline -finline-functions "\
-      && make -j38 install > /tmp/clhep_build.log \
-      && cd /tmp && rm -rf /tmp/CLHEP && rm -rf /tmp/builds/clhep_build
-
-RUN cd /tmp \
-&& git clone https://github.com/VcDevel/Vc.git \
-&& cd  Vc \
-&& git submodule update --init \
-&& mkdir build && cd build \
-&& cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_TESTING=OFF -DTARGET_ARCHITECTURE=broadwell ../.  \
-&& make -j30 > /tmp/vc_build.log  \
-&& make install
-
-# Build root from the repo master
-RUN cd /tmp \
-      && pwd \
-      && git clone --depth=1 https://github.com/root-project/root.git root_master \
-      && cd /tmp && mkdir -p builds/root_build \
-      && cd builds/root_build \
-      && cmake ../../root_master/. -Droot7:BOOL=ON -Dcxx17:BOOL=ON -Dfortran:BOOL=ON \
-             -Dgdml:BOOL=ON -Dmathmore:BOOL=ON -Dminuit2:BOOL=ON  -Dbuiltin_vdt:BOOL=ON -Dbuiltin_veccore:BOOL=ON \
-             -Dvc:BOOL=ON -Dbuiltin_vecgeom:BOOL=ON  -Dunuran:BOOL=ON  \
-      && cd /tmp/builds/root_build && make -j38 > /tmp/root_build.log && make install \
-      && cd /tmp && rm -rf /tmp/root_master && rm -rf /tmp/builds/root_build 
-             
-#-DCMAKE_CXX_FLAGS=" -march=haswell -O3 -mfma -malign-data=cacheline -finline-functions "
-#&& wget -O- https://root.cern.ch/download/root_v6.14.06.source.tar.gz | tar -zxvf - \
-#&& mv root-6.14.06 root_master \
-#RUN which c++ && ls -lrth /usr/bin/c++ && cd /tmp/builds/root_build && make -j38 VERBOSE=1 && make install \
-#      && cd /tmp && rm -rf /tmp/root_master && rm -rf /tmp/builds/root_build 
-
-#RUN useradd -ms /bin/bash -d /opt/user user
-#USER user
-#WORKDIR /opt/bubble_user
-
-##CMD ["-c" ]
-#ENTRYPOINT ["/bin/bash"]
-
diff --git a/containers/docker/README.md b/containers/docker/README.md
deleted file mode 100644
index d633796..0000000
--- a/containers/docker/README.md
+++ /dev/null
@@ -1,18 +0,0 @@
-Hall A/C Software
-=================
-
-
-Images for running containers for all aspects of the SANE experimental 
-analysis.
-
-The starting point is a pre-built image for the ROOT libraries. (ubuntu + ROOT)
-
-Main software libraries:
-
- - `evio`: Built from https://github.com/whit2333/hallac_evio
- - `analyzer`: Hall A analyzer (podd)from https://github.com/whit2333/analyzer
- - `hcana`: Hall C analyzer from  https://github.com/whit2333/hcana
-
-These are all built using the super build project `cool_halls` (https://github.com/whit2333/cool_halls)
-
-
diff --git a/containers/docker/config.env b/containers/docker/config.env
deleted file mode 100644
index 6319518..0000000
--- a/containers/docker/config.env
+++ /dev/null
@@ -1,23 +0,0 @@
-# Port to run the container 
-PORT=4000
-
-REG_TOKEN ?= ${CI_IMAGE_BUILD_PAT}
-REG_USER  ?= whit
-REG_NAME  ?= eicweb.phy.anl.gov:4567
-REG_HOST  ?= eicweb.phy.anl.gov:4567
-
-# name of alternate build: 
-# Dockerfile.$(ALT_NAME) --> $(APP_NAME)_${ALT_NAME}
-ALT_NAME ?= broadwell
-
-APP_NAME     = hcana
-REPO_NAME    = hcana
-DH_ORG       = hallac
-GL_GROUP     = jlab/hallc/analyzer_software
-GL_REG_GROUP = jlab/hallc/analyzer_software
-GL_REG_NAME  = hcana
-REPO         = hcana
-TAG_VERSION  = latest
-
-
-
diff --git a/containers/docker/deploy.env b/containers/docker/deploy.env
deleted file mode 100644
index 909aa72..0000000
--- a/containers/docker/deploy.env
+++ /dev/null
@@ -1,5 +0,0 @@
-# You have to define the values in {}
-#DOCKER_REPO={account-nr}.dkr.ecr.{region}.amazonaws.com
-## optional aws-cli options
-#AWS_CLI_PROFILE={aws-cli-profile}
-#AWS_CLI_REGION={aws-cli-region}
diff --git a/containers/docker/usage.sh b/containers/docker/usage.sh
deleted file mode 100644
index 0b72b47..0000000
--- a/containers/docker/usage.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-# INSTALL
-# - copy the files deploy.env, config.env, version.sh and Makefile to your repo
-# - replace the vars in deploy.env
-# - define the version script
-
-# Build the container
-make build
-
-# Build and publish the container
-make release
-
-# Publish a container to AWS-ECR.
-# This includes the login to the repo
-make publish
-
-# Run the container
-make run
-
-# Build an run the container
-make up
-
-# Stop the running container
-make stop
-
-# Build the container with differnt config and deploy file
-make cnf=another_config.env dpl=another_deploy.env build
\ No newline at end of file
diff --git a/containers/docker/version.sh b/containers/docker/version.sh
deleted file mode 100644
index 504899f..0000000
--- a/containers/docker/version.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-echo "0.1"
diff --git a/containers/singularity/Singularity b/containers/singularity/Singularity
deleted file mode 100644
index e57ff64..0000000
--- a/containers/singularity/Singularity
+++ /dev/null
@@ -1,125 +0,0 @@
-Bootstrap: docker
-From: eicweb.phy.anl.gov:4567/jlab/hallc/analyzer_software/hcana:latest
-
-%help
-  Hall A/C container.
-  Tools:
-     - evio        : EVIO DAQ data format  
-     - analyzer    : Hall A analyzer (podd) 
-     - hcana       : Hall C analyzer (hcana)
-     - root        : root version used for the analyzer
-     - rootls, rootbrowse, root_config
-
-%labels
-  Maintainer "Whitney Armstrong, Sylvester Joosten"
-  Version v1.0
-
-%setup -c /bin/bash
-  export SINGULARITY_SHELL=/bin/bash
-
-%environment -c /bin/bash
-  export PYTHONPATH=/usr/local/lib:${PYTHONPATH}
-  export PATH=/usr/local/bin:${PATH}
-  export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
-  export ROOT_INCLUDE_PATH=/usr/local/include:/usr/local/include/podd:/usr/local/include/hcana
-
-%post -c /bin/bash
-  echo "Hello from post"
-  echo "Install additional software here"
-  source /usr/local/bin/thisroot.sh
-  ## libformat and nlohmann json used heavily in new generation replay scripts
-  ## libformat
-  #cd /tmp && git clone https://github.com/fmtlib/fmt.git && cd fmt && \
-  #  git checkout 5.3.0 && mkdir /tmp/build && cd /tmp/build && \
-  #  cmake -DBUILD_SHARED_LIBS=TRUE ../fmt &&
-  #  make -j4 install && cd /tmp && rm -r /tmp/build && rm -r /tmp/fmt
-  ### json
-
-# =======================
-# global
-# =======================
-
-%runscript
-  echo "Launching a shell in the Hall A/C singularity container
-  exec bash
-
-
-# =======================
-# root
-# =======================
-%apprun root
-  root "$@"
-
-%appenv root
-  export PYTHONPATH=/usr/local/lib:${PYTHONPATH}
-  export PATH=/usr/local/bin:${PATH}
-  export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
-  export ROOT_INCLUDE_PATH=/usr/local/include/podd:/usr/local/include/hcana
-
-# =======================
-# analyzer
-# =======================
-%apprun analyzer
-  analyzer "$@"
-
-%appenv analyzer
-  export PYTHONPATH=/usr/local/lib:${PYTHONPATH}
-  export PATH=/usr/local/bin:${PATH}
-  export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
-  export ROOT_INCLUDE_PATH=/usr/local/include/podd:/usr/local/include/hcana
-
-# =======================
-# hcana
-# =======================
-%apphelp hcana
-  Run the Hall-C analyzer with same root-style arguments.
-
-%apprun hcana
-  source /usr/local/bin/thisroot.sh
-  hcana "$@"
-
-%appenv hcana
-  export DB_DIR=DBASE
-  export PYTHONPATH=/usr/local/lib:${PYTHONPATH}
-  export PATH=/usr/local/bin:${PATH}
-  export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
-  export ROOTSYS=/usr/local
-  export ROOT_INCLUDE_PATH=/usr/local/include
-  export ROOT_INCLUDE_PATH=/usr/local/include:/usr/local/include/podd:/usr/local/include/hcana
-
-# =======================
-# root-config
-# =======================
-%apprun root_config
-  root-config "$@"
-
-%appenv root_config
-  export PYTHONPATH=/usr/local/lib:${PYTHONPATH}
-  export PATH=/usr/local/bin:${PATH}
-  export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
-  export ROOT_INCLUDE_PATH=/usr/local/include/podd:/usr/local/include/hcana
-
-
-# =======================
-# rootbrowse
-# =======================
-%apprun rootbrowse
-  rootbrowse "$@"
-
-%appenv rootbrowse
-  export PYTHONPATH=/usr/local/lib:${PYTHONPATH}
-  export PATH=/usr/local/bin:${PATH}
-  export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
-  export ROOT_INCLUDE_PATH=/usr/local/include/podd:/usr/local/include/hcana
-
-# =======================
-# rootls
-# =======================
-%apprun rootls
-  rootls "$@"
-
-%appenv rootls
-  export PYTHONPATH=/usr/local/lib:${PYTHONPATH}
-  export PATH=/usr/local/bin:${PATH}
-  export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
-  export ROOT_INCLUDE_PATH=/usr/local/include/podd:/usr/local/include/hcana
diff --git a/setup.fish b/setup.fish
deleted file mode 100644
index 0ad82c6..0000000
--- a/setup.fish
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/fish
-
-function update_path -d "Remove argv[2]argv[3] from argv[1] if argv[2], and prepend argv[4]"
-   # Assert that we got enough arguments
-   if test (count $argv) -ne 4
-      echo "update_path: needs 4 arguments but have " (count $argv)
-      return 1
-   end
-
-   set var $argv[1]
-
-   set newpath $argv[4]
-   for el in $$var
-      if test "$argv[2]" = ""; or not test "$el" = "$argv[2]$argv[3]"
-         set newpath $newpath $el
-      end
-   end
-
-   set -xg $var $newpath
-end
-
-
-if set -q HCANALYZER
-  set old_hcanalyzer $HCANALYZER
-end
-
-if set -q ANALYZER
-  set old_analyzer $ANALYZER
-end
-set -x HCANALYZER (realpath (dirname (status -f)))
-set -x ANALYZER $HCANALYZER/podd
-
-update_path LD_LIBRARY_PATH "$old_hcanalyzer" "" $HCANALYZER
-update_path LD_LIBRARY_PATH "$old_analyzer" "$HCANALYZER" $ANALYZER
-update_path DYLD_LIBRARY_PATH "$old_hcanalyzer" "" $HCANALYZER
-update_path DYLD_LIBRARY_PATH "$old_analyzer" "$HCANALYZER" $ANALYZER
-
diff --git a/tests/README.md b/tests/README.md
deleted file mode 100644
index 6a0afb3..0000000
--- a/tests/README.md
+++ /dev/null
@@ -1,13 +0,0 @@
-Hcana tests
-===========
-
-## Current tests:
-
-- ep elastic tests
-
-## Tests to add:
-
-- Start time check
-- Focal plane times test
-- "Tracking efficiency" test
-- Invariant mass check (jpsi)
diff --git a/tests/elastic_coin_replay.cxx b/tests/elastic_coin_replay.cxx
deleted file mode 100644
index 7011fa8..0000000
--- a/tests/elastic_coin_replay.cxx
+++ /dev/null
@@ -1,296 +0,0 @@
-#include <fmt/core.h>
-#include <fmt/ostream.h>
-#include <vector>
-
-#include "TString.h"
-
-R__LOAD_LIBRARY(libHallC.so)
-#include "hcana/HallC_Data.h"
-#include "DecData.h"
-//R__LOAD_LIBRARY(libScandalizer.so)
-//#include "monitor/DetectorDisplay.h"
-//#include "monitor/DisplayPlots.h"
-//#include "monitor/MonitoringDisplay.h"
-//#include "scandalizer/PostProcessors.h"
-//#include "scandalizer/ScriptHelpers.h"
-//
-//#include "THaPostProcess.h"
-//#include "monitor/ExperimentMonitor.h"
-//#include "scandalizer/PostProcessors.h"
-#include "THcAnalyzer.h"
-#include "THaCut.h"
-#include "THcGlobals.h"
-#include "THcHallCSpectrometer.h"
-#include "THcDetectorMap.h"
-#include "THcCherenkov.h"
-#include "THcDC.h"
-#include "THcHodoscope.h"
-#include "THcParmList.h"
-#include "THaGoldenTrack.h"
-#include "THcHodoEff.h"
-#include "THcScalerEvtHandler.h"
-#include "THcShower.h"
-#include "THcReactionPoint.h"
-#include "THcExtTarCor.h"
-#include "THcRasteredBeam.h"
-#include "THcRun.h"
-#include "THcCoinTime.h"
-#include "THcConfigEvtHandler.h"
-#include "THcTrigDet.h"
-#include "THcTrigApp.h"
-#include "THcSecondaryKine.h"
-#include "THcAerogel.h"
-#include "THcPrimaryKine.h"
-#include "THaReactionPoint.h"
-
-
-
-void elastic_coin_replay(Int_t RunNumber = 0, Int_t MaxEvent = -1) {
-  using namespace std;
-
-  // Get RunNumber and MaxEvent if not provided.
-  if( RunNumber<=0 ) {
-    std::exit(-1);
-  }
-
-  // Create file name patterns.
-  const char* RunFileNamePattern = "coin_all_%05d.dat";
-  vector<TString> pathList;
-  pathList.push_back(".");
-  pathList.push_back("./raw");
-  pathList.push_back("./raw/../raw.copiedtotape");
-  pathList.push_back("./cache");
-
-  //const char* RunFileNamePattern = "raw/coin_all_%05d.dat";
-  const char* ROOTFileNamePattern = "ROOTfiles/coin_replay_production_%d_%d.root";
-  
-  // Load global parameters
-  gHcParms->Define("gen_run_number", "Run Number", RunNumber);
-  gHcParms->AddString("g_ctp_database_filename", "DBASE/COIN/standard.database");
-  gHcParms->Load(gHcParms->GetString("g_ctp_database_filename"), RunNumber);
-  gHcParms->Load(gHcParms->GetString("g_ctp_parm_filename"));
-  gHcParms->Load(gHcParms->GetString("g_ctp_kinematics_filename"), RunNumber);
-  // Load params for COIN trigger configuration
-  gHcParms->Load("PARAM/TRIG/tcoin.param");
-  // Load fadc debug parameters
-  gHcParms->Load("PARAM/HMS/GEN/h_fadc_debug.param");
-  gHcParms->Load("PARAM/SHMS/GEN/p_fadc_debug.param");
-
-  // const char* CurrentFileNamePattern = "low_curr_bcm/bcmcurrent_%d.param";
-  // gHcParms->Load(Form(CurrentFileNamePattern, RunNumber));
-
-  // Load the Hall C detector map
-  gHcDetectorMap = new THcDetectorMap();
-  gHcDetectorMap->Load("MAPS/COIN/DETEC/coin.map");
-
-     // Dec data
-   gHaApps->Add(new Podd::DecData("D","Decoder raw data"));
-  //=:=:=:=
-  // SHMS 
-  //=:=:=:=
-
-  // Set up the equipment to be analyzed.
-  THcHallCSpectrometer* SHMS = new THcHallCSpectrometer("P", "SHMS");
-  SHMS->SetEvtType(1);
-  SHMS->AddEvtType(4);
-  SHMS->AddEvtType(5);
-  SHMS->AddEvtType(6);
-  SHMS->AddEvtType(7);
-  gHaApps->Add(SHMS);
-  // Add Noble Gas Cherenkov to SHMS apparatus
-  THcCherenkov* pngcer = new THcCherenkov("ngcer", "Noble Gas Cherenkov");
-  SHMS->AddDetector(pngcer);
-  // Add drift chambers to SHMS apparatus
-  THcDC* pdc = new THcDC("dc", "Drift Chambers");
-  SHMS->AddDetector(pdc);
-  // Add hodoscope to SHMS apparatus
-  THcHodoscope* phod = new THcHodoscope("hod", "Hodoscope");
-  SHMS->AddDetector(phod);
-  // Add Heavy Gas Cherenkov to SHMS apparatus
-  THcCherenkov* phgcer = new THcCherenkov("hgcer", "Heavy Gas Cherenkov");
-  SHMS->AddDetector(phgcer);
-  // Add Aerogel Cherenkov to SHMS apparatus
-  THcAerogel* paero = new THcAerogel("aero", "Aerogel");
-  SHMS->AddDetector(paero);
-  // Add calorimeter to SHMS apparatus
-  THcShower* pcal = new THcShower("cal", "Calorimeter");
-  SHMS->AddDetector(pcal);
-
-  // THcBCMCurrent* hbc = new THcBCMCurrent("H.bcm", "BCM current check");
-  // gHaPhysics->Add(hbc);
-
-  // Add rastered beam apparatus
-  THaApparatus* pbeam = new THcRasteredBeam("P.rb", "Rastered Beamline");
-  gHaApps->Add(pbeam);
-  // Add physics modules
-  // Calculate reaction point
-  THcReactionPoint* prp = new THcReactionPoint("P.react", "SHMS reaction point", "P", "P.rb");
-  gHaPhysics->Add(prp);
-  // Calculate extended target corrections
-  THcExtTarCor* pext = new THcExtTarCor("P.extcor", "HMS extended target corrections", "P", "P.react");
-  gHaPhysics->Add(pext);
-  // Calculate golden track quantites
-  THaGoldenTrack* pgtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
-  gHaPhysics->Add(pgtr);
-  // Calculate the hodoscope efficiencies
-  THcHodoEff* peff = new THcHodoEff("phodeff", "SHMS hodo efficiency", "P.hod");
-  gHaPhysics->Add(peff);   
-
-  // Add event handler for scaler events
-  THcScalerEvtHandler* pscaler = new THcScalerEvtHandler("P", "Hall C scaler event type 1");
-  pscaler->AddEvtType(1);
-  pscaler->AddEvtType(4);
-  pscaler->AddEvtType(5);
-  pscaler->AddEvtType(6);
-  pscaler->AddEvtType(7);
-  pscaler->AddEvtType(129);
-  pscaler->SetDelayedType(129);
-  pscaler->SetUseFirstEvent(kTRUE);
-  gHaEvtHandlers->Add(pscaler);
-
-  //=:=:=
-  // HMS 
-  //=:=:=
-
-  // Set up the equipment to be analyzed.
-  THcHallCSpectrometer* HMS = new THcHallCSpectrometer("H", "HMS");
-  HMS->SetEvtType(2);
-  HMS->AddEvtType(4);
-  HMS->AddEvtType(5);
-  HMS->AddEvtType(6);
-  HMS->AddEvtType(7);
-  gHaApps->Add(HMS);
-  // Add drift chambers to HMS apparatus
-  THcDC* hdc = new THcDC("dc", "Drift Chambers");
-  HMS->AddDetector(hdc);
-  // Add hodoscope to HMS apparatus
-  THcHodoscope* hhod = new THcHodoscope("hod", "Hodoscope");
-  HMS->AddDetector(hhod);
-  // Add Cherenkov to HMS apparatus
-  THcCherenkov* hcer = new THcCherenkov("cer", "Heavy Gas Cherenkov");
-  HMS->AddDetector(hcer);
-  // Add Aerogel Cherenkov to HMS apparatus
-  // THcAerogel* haero = new THcAerogel("aero", "Aerogel");
-  // HMS->AddDetector(haero);
-  // Add calorimeter to HMS apparatus
-  THcShower* hcal = new THcShower("cal", "Calorimeter");
-  HMS->AddDetector(hcal);
-
-  // Add rastered beam apparatus
-  THaApparatus* hbeam = new THcRasteredBeam("H.rb", "Rastered Beamline");
-  gHaApps->Add(hbeam);  
-  // Add physics modules
-  // Calculate reaction point
-  THcReactionPoint* hrp = new THcReactionPoint("H.react", "HMS reaction point", "H", "H.rb");
-  gHaPhysics->Add(hrp);
-  // Calculate extended target corrections
-  THcExtTarCor* hext = new THcExtTarCor("H.extcor", "HMS extended target corrections", "H", "H.react");
-  gHaPhysics->Add(hext);
-  // Calculate golden track quantities
-  THaGoldenTrack* hgtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
-  gHaPhysics->Add(hgtr);
-  // Calculate the hodoscope efficiencies
-  THcHodoEff* heff = new THcHodoEff("hhodeff", "HMS hodo efficiency", "H.hod");
-  gHaPhysics->Add(heff);
-
-  // Add event handler for scaler events
-  THcScalerEvtHandler *hscaler = new THcScalerEvtHandler("H", "Hall C scaler event type 4");  
-  hscaler->AddEvtType(2);
-  hscaler->AddEvtType(4);
-  hscaler->AddEvtType(5);
-  hscaler->AddEvtType(6);
-  hscaler->AddEvtType(7);
-  hscaler->AddEvtType(129);
-  hscaler->SetDelayedType(129);
-  hscaler->SetUseFirstEvent(kTRUE);
-  gHaEvtHandlers->Add(hscaler);
-
-  //=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
-  // Kinematics Modules
-  //=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
-
-  // Add Physics Module to calculate primary (scattered electrons) beam kinematics
-  THcPrimaryKine* hkin_primary = new THcPrimaryKine("H.kin.primary", "HMS Single Arm Kinematics", "H", "H.rb");
-  gHaPhysics->Add(hkin_primary);
-  // Add Physics Module to calculate secondary (scattered hadrons) beam kinematics
-  THcSecondaryKine* pkin_secondary = new THcSecondaryKine("P.kin.secondary", "SHMS Single Arm Kinematics", "P", "H.kin.primary");
-  gHaPhysics->Add(pkin_secondary);
-  
-  //=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
-  // Global Objects & Event Handlers
-  //=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
-
-  // Add trigger apparatus
-  THaApparatus* TRG = new THcTrigApp("T", "TRG");
-  gHaApps->Add(TRG);
-  // Add trigger detector to trigger apparatus
-  THcTrigDet* coin = new THcTrigDet("coin", "Coincidence Trigger Information");
-  // Suppress missing reference time warnings for these event types
-  coin->SetEvtType(1);
-  coin->AddEvtType(2);
-  TRG->AddDetector(coin); 
-
-  
-  //Add coin physics module THcCoinTime::THcCoinTime (const char *name, const char* description, const char* hadArmName, 
-  // const char* elecArmName, const char* coinname) :
-  THcCoinTime* coinTime = new THcCoinTime("CTime", "Coincidende Time Determination", "P", "H", "T.coin");
-  gHaPhysics->Add(coinTime);
-
-  // Add event handler for prestart event 125.
-  THcConfigEvtHandler* ev125 = new THcConfigEvtHandler("HC", "Config Event type 125");
-  gHaEvtHandlers->Add(ev125);
-  // Add event handler for EPICS events
-  THaEpicsEvtHandler* hcepics = new THaEpicsEvtHandler("epics", "HC EPICS event type 180");
-  gHaEvtHandlers->Add(hcepics);
- 
-  // Set up the analyzer - we use the standard one,
-  // but this could be an experiment-specific one as well.
-  // The Analyzer controls the reading of the data, executes
-  // tests/cuts, loops over Acpparatus's and PhysicsModules,
-  // and executes the output routines.
-  THcAnalyzer* analyzer = new THcAnalyzer;
-
-  // A simple event class to be output to the resulting tree.
-  // Creating your own descendant of THaEvent is one way of
-  // defining and controlling the output.
-  THaEvent* event = new THaEvent;
-
-  // Define the run(s) that we want to analyze.
-  // We just set up one, but this could be many.
-  THcRun* run = new THcRun( pathList, Form(RunFileNamePattern, RunNumber) );
-
-  // Set to read in Hall C run database parameters
-  run->SetRunParamClass("THcRunParameters");
-  
-  // Eventually need to learn to skip over, or properly analyze the pedestal events
-  run->SetEventRange(1, MaxEvent); // Physics Event number, does not include scaler or control events.
-  run->SetNscan(1);
-  run->SetDataRequired(0x7);
-  run->Print();
-
-  // Define the analysis parameters
-  TString ROOTFileName = Form(ROOTFileNamePattern, RunNumber, MaxEvent);
-  analyzer->SetCountMode(2);  // 0 = counter is # of physics triggers
-                              // 1 = counter is # of all decode reads
-                              // 2 = counter is event number
-
-  analyzer->SetEvent(event);
-  // Set EPICS event type
-  analyzer->SetEpicsEvtType(180);
-  // Define crate map
-  analyzer->SetCrateMapFileName("MAPS/db_cratemap.dat");
-  // Define output ROOT file
-  analyzer->SetOutFile(ROOTFileName.Data());
-  // Define DEF-file+
-  analyzer->SetOdefFile("DEF-files/COIN/PRODUCTION/coin_production_hElec_pProt.def");
-  // Define cuts file
-  analyzer->SetCutFile("DEF-files/COIN/PRODUCTION/CUTS/coin_production_cuts.def");  // optional
-  // File to record accounting information for cuts
-  analyzer->SetSummaryFile(Form("REPORT_OUTPUT/COIN/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));  // optional
-  // Start the actual analysis.
-  analyzer->Process(run);
-  // Create report file from template
-  analyzer->PrintReport("TEMPLATES/COIN/PRODUCTION/coin_production.template",
-  			Form("REPORT_OUTPUT/COIN/PRODUCTION/replay_coin_production_%d_%d.report", RunNumber, MaxEvent));  // optional
-
-}
diff --git a/tests/elastic_test.cxx b/tests/elastic_test.cxx
deleted file mode 100644
index 4c9ad79..0000000
--- a/tests/elastic_test.cxx
+++ /dev/null
@@ -1,446 +0,0 @@
-#include "nlohmann/json.hpp"
-#include <cmath>
-#include <iostream>
-
-#include "ROOT/RDataFrame.hxx"
-#include "ROOT/RVec.hxx"
-
-#include "Math/Vector3D.h"
-#include "Math/Vector4D.h"
-#include "Math/VectorUtil.h"
-#include "TCanvas.h"
-#include "TLatex.h"
-#include "TStyle.h"
-#include "TSystem.h"
-R__LOAD_LIBRARY(libMathMore.so)
-R__LOAD_LIBRARY(libGenVector.so)
-
-R__LOAD_LIBRARY(libfmt.so)
-#include "fmt/core.h"
-
-#include "THStack.h"
-
-#ifdef __cpp_lib_filesystem
-#include <filesystem>
-namespace fs = std::filesystem;
-#else
-#include <experimental/filesystem>
-namespace fs = std::experimental::filesystem;
-#endif
-
-using RDFNode = decltype(ROOT::RDataFrame{0}.Filter(""));
-using Histo1DProxy =
-    decltype(ROOT::RDataFrame{0}.Histo1D(ROOT::RDF::TH1DModel{"", "", 128u, 0., 0.}, ""));
-
-struct RDFInfo {
-  RDFNode&          df;
-  const std::string title;
-  RDFInfo(RDFNode& df, std::string_view title) : df{df}, title{title} {}
-};
-
-constexpr const double M_P     = .938272;
-constexpr const double M_P2    = M_P * M_P;
-constexpr const double M_pion  = 0.139;
-constexpr const double M_pion2 = M_pion * M_pion;
-constexpr const double M_e     = .000511;
-
-// =================================================================================
-// Cuts
-// =================================================================================
-std::string goodTrackSHMS = "P.gtr.dp > -10 && P.gtr.dp < 22";
-std::string goodTrackHMS  = "H.gtr.dp > -8 && H.gtr.dp < 8";
-
-std::string piCutSHMS = "P.cal.etottracknorm<1.0";
-//std::string piCutSHMS = "P.aero.npeSum > 1.0 && P.cal.eprtracknorm < 0.2 && P.cal.etottracknorm<1.0";
-
-std::string eCutHMS = "H.cal.etottracknorm > 0.50 && H.cal.etottracknorm < 2. && "
-                      "H.cer.npeSum > 1.";
-
-std::string epiCut = "P.aero.npeSum > 1.0 && P.cal.eprtracknorm < 0.2 && "
-                     "H.cer.npeSum > 1.0 && H.cal.etottracknorm > 0.6 && "
-                     "H.cal.etottracknorm < 2.0 && P.cal.etottracknorm<1.0";
-
-using Pvec3D = ROOT::Math::XYZVector;
-using Pvec4D = ROOT::Math::PxPyPzMVector;
-
-// =================================================================================
-// reconstruction
-// =================================================================================
-auto p_pion = [](double px, double py, double pz) {
-  return Pvec4D{px * 0.996, py * 0.996, pz * 0.996, M_e};
-};
-auto p_electron = [](double px, double py, double pz) {
-  return Pvec4D{px * 0.994, py * 0.994, pz * 0.994, M_e};
-};
-auto t = [](const double Egamma, Pvec4D& jpsi) {
-  Pvec4D beam{0, 0, Egamma, 0};
-  return (beam - jpsi).M2();
-};
-
-bool root_file_exists(std::string rootfile) {
-  bool found_good_file = false;
-  if (!gSystem->AccessPathName(rootfile.c_str())) {
-    TFile file(rootfile.c_str());
-    if (file.IsZombie()) {
-      std::cout << rootfile << " is a zombie.\n";
-      std::cout
-          << " Did your replay finish?  Check that the it is done before running this script.\n";
-      return false;
-      // return;
-    } else {
-      std::cout << " using : " << rootfile << "\n";
-      return true;
-    }
-  }
-  return false;
-}
-
-void elastic_test(int RunNumber = 6012, int nevents = 50000, int prompt = 0, int update = 0,
-                        int default_count_goal = 10000, int redo_timing = 0) {
-
-  // ===============================================================================================
-  // Initialization
-  // ===============================================================================================
-  using nlohmann::json;
-  json j;
-  {
-    std::ifstream json_input_file("db2/run_list_coin.json");
-    try {
-      json_input_file >> j;
-    } catch (json::parse_error) {
-      std::cerr << "error: json file, db2/run_list.json, is incomplete or has broken syntax.\n";
-      std::quick_exit(-127);
-    }
-  }
-
-  auto runnum_str = std::to_string(RunNumber);
-  if (j.find(runnum_str) == j.end()) {
-    std::cout << "Run " << RunNumber << " not found in db2/run_list_coin.json\n";
-    std::cout << "Check that run number and replay exists. \n";
-    std::cout << "If problem persists please contact Sylvester (217-848-0565)\n";
-  }
-  double P0_shms_setting = j[runnum_str]["spectrometers"]["shms_momentum"].get<double>();
-  double P0_shms         = std::abs(P0_shms_setting);
-
-  bool found_good_file = false;
-
-  std::string rootfile =
-      fmt::format("full_online/coin_replay_production_{}_{}.root", RunNumber, nevents);
-  found_good_file = root_file_exists(rootfile.c_str());
-  if (!found_good_file) {
-    rootfile =
-        fmt::format("ROOTfiles_volatile/coin_replay_production_{}_{}.root", RunNumber, nevents);
-    found_good_file = root_file_exists(rootfile.c_str());
-  }
-  if (!found_good_file) {
-    rootfile = fmt::format("ROOTfiles_csv/coin_replay_production_{}_{}.root", RunNumber, nevents);
-    found_good_file = root_file_exists(rootfile.c_str());
-  }
-  if (!found_good_file) {
-    rootfile = fmt::format("ROOTfiles/coin_replay_production_{}_{}.root", RunNumber, nevents);
-    found_good_file = root_file_exists(rootfile.c_str());
-  }
-  if (!found_good_file) {
-    std::cout << " Error: suitable root file not found\n";
-    return;
-  }
-
-  // ===============================================================================================
-  // Dataframe
-  // ===============================================================================================
-
-  ROOT::EnableImplicitMT(24);
-
-  //---------------------------------------------------------------------------
-  // Detector tree
-  ROOT::RDataFrame d("T", rootfile);
-
-  //// SHMS Scaler tree
-  //ROOT::RDataFrame d_sh("TSP", rootfile);
-  //// int N_scaler_events = *(d_sh.Count());
-
-  auto d_coin = d.Filter("fEvtHdr.fEvtType == 4");
-
-  // Good track cuts
-  auto dHMSGoodTrack  = d_coin.Filter(goodTrackHMS);
-  auto dSHMSGoodTrack = d_coin.Filter(goodTrackSHMS);
-  auto dCOINGoodTrack = dHMSGoodTrack.Filter(goodTrackSHMS)
-                            .Define("p_electron", p_electron, {"H.gtr.px", "H.gtr.py", "H.gtr.pz"})
-                            .Define("p_pion", p_pion, {"P.gtr.px", "P.gtr.py", "P.gtr.pz"});
-  // PID cuts
-  auto dHMSEl  = dHMSGoodTrack.Filter(eCutHMS);
-  auto dSHMSEl = dSHMSGoodTrack.Filter(piCutSHMS);
-  auto dCOINEl = dCOINGoodTrack.Filter(eCutHMS + " && " + piCutSHMS);
-                     //.Filter(
-                     //    [=](double npe, double dp) {
-                     //      double p_track = P0_shms * (100.0 + dp) / 100.0;
-                     //      // no cerenkov cut needed when momentum is below 2.8 GeV/c
-                     //      if (p_track < 2.8) {
-                     //        return true;
-                     //      }
-                     //      return npe > 1.0;
-                     //    },
-                     //    {"P.hgcer.npeSum", "P.gtr.dp"});
-
-  // Timing cuts
-  // Find the timing peak
-  // Find the coin peak
-  double coin_peak_center = 0;
-  if (redo_timing) {
-    auto h_coin_time =
-        dCOINEl.Histo1D({"coin_time", "coin_time", 8000, 0, 1000}, "CTime.ePositronCoinTime_ROC2");
-    h_coin_time->DrawClone();
-    int coin_peak_bin = h_coin_time->GetMaximumBin();
-    coin_peak_center  = h_coin_time->GetBinCenter(coin_peak_bin);
-    std::cout << "COINCIDENCE time peak found at: " << coin_peak_center << std::endl;
-  } else {
-    //coin_peak_center = 43.0; // run 7240-7241
-    coin_peak_center = 23.0; // run 6012
-    std::cout << "COINCIDENCE time peak: using pre-calculated value at: " << coin_peak_center
-              << std::endl;
-    ;
-  }
-  // timing cut lambdas
-  // TODO: evaluate timing cut and offset for random background
-  auto timing_cut = [=](double coin_time) { return std::abs(coin_time - coin_peak_center) < 2.; };
-  // anti-timing set to 5x width of regular
-  auto anti_timing_cut = [=](double coin_time) {
-    return std::abs(coin_time - coin_peak_center - 28.) < 10.;
-  };
-
-  // timing counts
-  auto dHMSElInTime  = dHMSEl.Filter(timing_cut, {"CTime.ePositronCoinTime_ROC2"});
-  auto dHMSElRandom  = dHMSEl.Filter(anti_timing_cut, {"CTime.ePositronCoinTime_ROC2"});
-  auto dSHMSElInTime = dSHMSEl.Filter(timing_cut, {"CTime.ePositronCoinTime_ROC2"});
-  auto dSHMSElRandom = dSHMSEl.Filter(anti_timing_cut, {"CTime.ePositronCoinTime_ROC2"});
-
-  auto dCOINElInTime = dCOINEl.Filter(timing_cut, {"CTime.ePiCoinTime_ROC2"});
-  auto dCOINElRandom = dCOINEl.Filter(anti_timing_cut, {"CTime.ePiCoinTime_ROC2"});
-
-  // Output root file
-  //auto out_file =
-  //    new TFile(fmt::format("monitoring/{}/good_csv_counter.root", RunNumber).c_str(), "UPDATE");
-  //out_file->cd();
-
-  // =========================================================================================
-  // Histograms
-  // =========================================================================================
-  // 2D correlations
-  auto hTheta2DNoCuts = d_coin.Histo2D(
-      {"theta2D", "No cuts;#theta_{SHMS};#theta_{HMS};#counts", 50, -.1, .1, 50, -.1, .1},
-      "P.gtr.th", "H.gtr.th");
-  auto hTheta2DTracking = dCOINGoodTrack.Histo2D(
-      {"theta2D", "Cuts: tracking;#theta_{SHMS};#theta_{HMS};#counts", 50, -.1, .1, 50, -.1, .1},
-      "P.gtr.th", "H.gtr.th");
-  auto hTheta2DPID =
-      dCOINEl.Histo2D({"theta2D", "Cuts: tracking+PID;#theta_{SHMS};#theta_{HMS};#counts", 50, -.1,
-                       .1, 50, -.1, .1},
-                      "P.gtr.th", "H.gtr.th");
-  auto hTheta2DTiming =
-      dCOINElInTime.Histo2D({"theta2D", "Cuts: tracking+PID;#theta_{SHMS};#theta_{HMS};#counts", 50,
-                             -.1, .1, 50, -.1, .1},
-                            "P.gtr.th", "H.gtr.th");
-  // timing
-  auto hCoinTimeNoCuts =
-      d_coin.Histo1D({"coin_time.NoCuts", "No Cuts;coin_time;counts", 8000, 0, 1000},
-                     "CTime.ePositronCoinTime_ROC2");
-  auto hCoinTimeTracking = dCOINGoodTrack.Histo1D(
-      {"coin_time.Tracking", "Cuts: Tracking;coin_time;counts", 8000, 0, 1000},
-      "CTime.ePositronCoinTime_ROC2");
-  auto hCoinTimePID =
-      dCOINEl.Histo1D({"coin_time.PID", "Cuts: Tracking+PID;coin_time;counts", 8000, 0, 1000},
-                      "CTime.ePositronCoinTime_ROC2");
-  auto hCoinTimeTiming = dCOINElInTime.Histo1D(
-      {"coin_time.Timing", "Cuts: Tracking+PID+Timing;coin_time;counts", 8000, 0, 1000},
-      "CTime.ePositronCoinTime_ROC2");
-
-  auto hRandCoinTimePID = dCOINElRandom.Histo1D(
-      {"rand_coin_time.PID", "Cuts: Tracking+PID;coin_time;counts", 8000, 0, 1000},
-      "CTime.ePositronCoinTime_ROC2");
-
-  // P.gtr.dp
-  auto hPdpNoCuts =
-      d_coin.Histo1D({"P.gtr.dp.NoCuts", "No Cuts;#deltap [%];counts", 200, -30, 40}, "P.gtr.dp");
-  auto hPdpTracking = dSHMSGoodTrack.Histo1D(
-      {"P.gtr.dp.Tracking", "Cuts: Tracking;#deltap [%];counts", 200, -30, 40}, "P.gtr.dp");
-  auto hPdpPID = dSHMSEl.Histo1D(
-      {"P.gtr.dp.PID", "Cuts: Tracking+PID;#deltap [%];counts", 200, -30, 40}, "P.gtr.dp");
-  auto hPdpTiming = dSHMSElInTime.Histo1D(
-      {"P.gtr.dp.Timing", "Cuts: Tracking+PID+Timing;#deltap [%];counts", 200, -30, 40},
-      "P.gtr.dp");
-  // P.gtr.th
-  auto hPthNoCuts = d_coin.Histo1D(
-      {"P.gtr.th.NoCuts", "No Cuts;#theta_{SHMS};counts", 200, -0.1, 0.1}, "P.gtr.th");
-  auto hPthTracking = dSHMSGoodTrack.Histo1D(
-      {"P.gtr.th.Tracking", "Cuts: Tracking;#theta_{SHMS};counts", 200, -0.1, 0.1}, "P.gtr.th");
-  auto hPthPID = dSHMSEl.Histo1D(
-      {"P.gtr.th.PID", "Cuts: Tracking+PID;#theta_{SHMS};counts", 200, -0.1, 0.1}, "P.gtr.th");
-  auto hPthTiming = dSHMSElInTime.Histo1D(
-      {"P.gtr.th.Timing", "Cuts: Tracking+PID+Timing;#theta_{SHMS};counts", 200, -0.1, 0.1},
-      "P.gtr.th");
-  // P.gtr.ph
-  auto hPphNoCuts =
-      d_coin.Histo1D({"P.gtr.ph.NoCuts", "No Cuts;#phi_{SHMS};counts", 200, -0.1, 0.1}, "P.gtr.ph");
-  auto hPphTracking = dSHMSGoodTrack.Histo1D(
-      {"P.gtr.ph.Tracking", "Cuts: Tracking;#phi_{SHMS};counts", 200, -0.1, 0.1}, "P.gtr.ph");
-  auto hPphPID = dSHMSEl.Histo1D(
-      {"P.gtr.ph.PID", "Cuts: Tracking+PID;#phi_{SHMS};counts", 200, -0.1, 0.1}, "P.gtr.ph");
-  auto hPphTiming = dSHMSElInTime.Histo1D(
-      {"P.gtr.ph.Timing", "Cuts: Tracking+PID+Timing;#phi_{SHMS};counts", 200, -0.1, 0.1},
-      "P.gtr.ph");
-  // P.gtr.y
-  auto hPyNoCuts =
-      d_coin.Histo1D({"P.gtr.y.NoCuts", "No Cuts;ytar;counts", 200, -10., 10.}, "P.gtr.y");
-  auto hPyTracking = dSHMSGoodTrack.Histo1D(
-      {"P.gtr.y.Tracking", "Cuts: Tracking;ytar;counts", 200, -10., 10.}, "P.gtr.y");
-  auto hPyPID =
-      dSHMSEl.Histo1D({"P.gtr.y.PID", "Cuts: Tracking+PID;ytar;counts", 200, -10., 10.}, "P.gtr.y");
-  auto hPyTiming = dSHMSElInTime.Histo1D(
-      {"P.gtr.y.Timing", "Cuts: Tracking+PID+Timing;ytar;counts", 200, -10., 10.}, "P.gtr.y");
-  // P.cal.etottracknorm
-  auto hPcalEPNoCuts =
-      d_coin.Histo1D({"P.cal.etottracknorm.NoCuts", "No Cuts;SHMS E/P;counts", 200, -.5, 1.5},
-                     "P.cal.etottracknorm");
-  auto hPcalEPTracking = dSHMSGoodTrack.Histo1D(
-      {"P.cal.etottracknorm.Tracking", "Cuts: Tracking;SHMS E/P;counts", 200, -.5, 1.5},
-      "P.cal.etottracknorm");
-  auto hPcalEPPID = dSHMSEl.Histo1D(
-      {"P.cal.etottracknorm.PID", "Cuts: Tracking+PID;SHMS E/P;counts", 200, -.5, 1.5},
-      "P.cal.etottracknorm");
-  auto hPcalEPAll = dCOINElInTime.Histo1D(
-      {"P.cal.etottracknorm.All", "Cuts: Tracking+PID+Coincidence;SHMS E/P;counts", 200, -.5, 1.5},
-      "P.cal.etottracknorm");
-  // P.ngcer.npeSum
-  auto hPcerNpheNoCuts = d_coin.Histo1D(
-      {"P.ngcer.npeSum.NoCuts", "No Cuts;SHMS NGC #phe;counts", 200, -5, 76}, "P.ngcer.npeSum");
-  auto hPcerNpheTracking = dSHMSGoodTrack.Histo1D(
-      {"P.ngcer.npeSum.Tracking", "Cuts: Tracking;SHMS NGC #phe;counts", 200, -5, 76},
-      "P.ngcer.npeSum");
-  auto hPcerNphePID = dSHMSEl.Histo1D(
-      {"P.ngcer.npeSum.PID", "Cuts: Tracking+PID;SHMS NGC #phe;counts", 200, -5, 76},
-      "P.ngcer.npeSum");
-  auto hPcerNpheAll = dCOINElInTime.Histo1D(
-      {"P.ngcer.npeSum.All", "Cuts: Tracking+PID+Coincidence;SHMS NGC #phe;counts", 200, -5, 76},
-      "P.ngcer.npeSum");
-  // P.hgcer.npeSum
-  auto hPhgcerNpheNoCuts = d_coin.Histo1D(
-      {"P.hgcer.npeSum.NoCuts", "No Cuts;SHMS HGC #phe;counts", 200, -5, 76}, "P.hgcer.npeSum");
-  auto hPhgcerNpheTracking = dSHMSGoodTrack.Histo1D(
-      {"P.hgcer.npeSum.Tracking", "Cuts: Tracking;SHMS HGC #phe;counts", 200, -5, 76},
-      "P.hgcer.npeSum");
-  auto hPhgcerNphePID = dSHMSEl.Histo1D(
-      {"P.hgcer.npeSum.PID", "Cuts: Tracking+PID;SHMS HGC #phe;counts", 200, -5, 76},
-      "P.hgcer.npeSum");
-  auto hPhgcerNpheAll = dCOINElInTime.Histo1D(
-      {"P.hgcer.npeSum.All", "Cuts: Tracking+PID+Coincidence;SHMS HGC #phe;counts", 200, -5, 76},
-      "P.hgcer.npeSum");
-  // H.cal.etottracknorm
-  auto hHcalEPNoCuts =
-      d_coin.Histo1D({"H.cal.etottracknorm.NoCuts", "No Cuts;HMS E/P;counts", 200, -.5, 1.5},
-                     "H.cal.etottracknorm");
-  auto hHcalEPTracking = dHMSGoodTrack.Histo1D(
-      {"H.cal.etottracknorm.Tracking", "Cuts: Tracking;HMS E/P;counts", 200, -.5, 1.5},
-      "H.cal.etottracknorm");
-  auto hHcalEPPID = dHMSEl.Histo1D(
-      {"H.cal.etottracknorm.PID", "Cuts: Tracking+PID;HMS E/P;counts", 200, -.5, 1.5},
-      "H.cal.etottracknorm");
-  auto hHcalEPAll = dCOINElInTime.Histo1D(
-      {"H.cal.etottracknorm.All", "Cuts: Tracking+PID+Coincidence;HMS E/P;counts", 200, -.5, 1.5},
-      "H.cal.etottracknorm");
-  // H.cer.npeSum
-  auto hHcerNpheNoCuts = d_coin.Histo1D(
-      {"H.cer.npeSum.NoCuts", "No Cuts;HMS Cer #phe;counts", 200, -1, 15}, "H.cer.npeSum");
-  auto hHcerNpheTracking = dHMSGoodTrack.Histo1D(
-      {"H.cer.npeSum.Tracking", "Cuts: Tracking;HMS Cer #phe;counts", 200, -1, 15}, "H.cer.npeSum");
-  auto hHcerNphePID = dHMSEl.Histo1D(
-      {"H.cer.npeSum.PID", "Cuts: Tracking+PID+Coincidence;HMS Cer #phe;counts", 200, -1, 15},
-      "H.cer.npeSum");
-  auto hHcerNpheAll = dCOINElInTime.Histo1D(
-      {"H.cer.npeSum.PID", "Cuts: Tracking+PID+Coincidence;HMS Cer #phe;counts", 200, -1, 15},
-      "H.cer.npeSum");
-  // H.gtr.dp
-  auto hHdpNoCuts =
-      d_coin.Histo1D({"H.gtr.dp.NoCuts", "No Cuts;#deltap [%];counts", 200, -30, 40}, "H.gtr.dp");
-  auto hHdpTracking = dHMSGoodTrack.Histo1D(
-      {"H.gtr.dp.Tracking", "Cuts: Tracking;#deltap [%];counts", 200, -30, 40}, "H.gtr.dp");
-  auto hHdpPID = dHMSEl.Histo1D(
-      {"H.gtr.dp.PID", "Cuts: Tracking+PID;#deltap [%];counts", 200, -30, 40}, "H.gtr.dp");
-  auto hHdpTiming = dHMSElInTime.Histo1D(
-      {"H.gtr.dp.Timing", "Cuts: Tracking+PID+Timing;#deltap [%];counts", 200, -30, 40},
-      "H.gtr.dp");
-  // H.gtr.th
-  auto hHthNoCuts = d_coin.Histo1D(
-      {"H.gtr.th.NoCuts", "No Cuts;#theta_{HMS};counts", 200, -0.1, 0.1}, "H.gtr.th");
-  auto hHthTracking = dHMSGoodTrack.Histo1D(
-      {"H.gtr.th.Tracking", "Cuts: Tracking;#theta_{HMS};counts", 200, -0.1, 0.1}, "H.gtr.th");
-  auto hHthPID = dHMSEl.Histo1D(
-      {"H.gtr.th.PID", "Cuts: Tracking+PID;#theta_{HMS};counts", 200, -0.1, 0.1}, "H.gtr.th");
-  auto hHthTiming = dHMSElInTime.Histo1D(
-      {"H.gtr.th.Timing", "Cuts: Tracking+PID+Timing;#theta_{HMS};counts", 200, -0.1, 0.1},
-      "H.gtr.th");
-  // H.gtr.ph
-  auto hHphNoCuts =
-      d_coin.Histo1D({"H.gtr.ph.NoCuts", "No Cuts;#phi_{HMS};counts", 200, -0.1, 0.1}, "H.gtr.ph");
-  auto hHphTracking = dHMSGoodTrack.Histo1D(
-      {"H.gtr.ph.Tracking", "Cuts: Tracking;#phi_{HMS};counts", 200, -0.1, 0.1}, "H.gtr.ph");
-  auto hHphPID = dHMSEl.Histo1D(
-      {"H.gtr.ph.PID", "Cuts: Tracking+PID;#phi_{HMS};counts", 200, -0.1, 0.1}, "H.gtr.ph");
-  auto hHphTiming = dHMSElInTime.Histo1D(
-      {"H.gtr.ph.Timing", "Cuts: Tracking+PID+Timing;#phi_{HMS};counts", 200, -0.1, 0.1},
-      "H.gtr.ph");
-  // H.gtr.y
-  auto hHyNoCuts =
-      d_coin.Histo1D({"H.gtr.y.NoCuts", "No Cuts;ytar;counts", 200, -10., 10.}, "H.gtr.y");
-  auto hHyTracking = dHMSGoodTrack.Histo1D(
-      {"H.gtr.y.Tracking", "Cuts: Tracking;ytar;counts", 200, -10., 10.}, "H.gtr.y");
-  auto hHyPID =
-      dHMSEl.Histo1D({"H.gtr.y.PID", "Cuts: Tracking+PID;ytar;counts", 200, -10., 10.}, "H.gtr.y");
-  auto hHyTiming = dHMSElInTime.Histo1D(
-      {"H.gtr.y.Timing", "Cuts: Tracking+PID+Timing;ytar;counts", 200, -10., 10.}, "H.gtr.y");
-
-  // scalers
-  //auto total_charge        = d_sh.Max("P.BCM4B.scalerChargeCut");
-  //auto shms_el_real_scaler = d_sh.Max("P.pEL_REAL.scaler");
-  //auto hms_el_real_scaler  = d_sh.Max("P.hEL_REAL.scaler");
-  //auto time_1MHz           = d_sh.Max("P.1MHz.scalerTime");
-  //auto time_1MHz_cut       = d_sh.Max("P.1MHz.scalerTimeCut");
-
-  auto yield_all = d.Count();
-  // 5 timing cut widths worth of random backgrounds
-  auto yield_coin          = d_coin.Count();
-  auto yield_HMSGoodTrack  = dHMSGoodTrack.Count();
-  auto yield_SHMSGoodTrack = dSHMSGoodTrack.Count();
-  auto yield_COINGoodTrack = dCOINGoodTrack.Count();
-  auto yield_HMSEl         = dHMSEl.Count();
-  auto yield_SHMSEl        = dSHMSEl.Count();
-  auto yield_COINEl        = dCOINEl.Count();
-  auto yield_HMSElInTime   = dHMSElInTime.Count();
-  auto yield_HMSElRandom   = dHMSElRandom.Count();
-  auto yield_SHMSElInTime  = dSHMSElInTime.Count();
-  auto yield_SHMSElRandom  = dSHMSElRandom.Count();
-  auto yield_COINElInTime  = dCOINElInTime.Count();
-  auto yield_COINElRandom  = dCOINElRandom.Count();
-  auto yield_coin_raw      = dCOINElInTime.Count();
-  auto yield_coin_random   = dCOINElRandom.Count();
-
-
-  // -------------------------------------
-  // End lazy eval
-  // -------------------------------------
-  auto n_coin_good  = *yield_coin_raw - *yield_coin_random / 5.;
-  auto n_HMSElGood  = *yield_HMSElInTime - *yield_HMSElRandom / 5;
-  auto n_SHMSElGood = *yield_SHMSElInTime - *yield_SHMSElRandom / 5;
-  auto n_COINElGood = *yield_COINElInTime - *yield_COINElRandom / 5;
-
-  hPdpNoCuts->DrawCopy();
-  //std::cout << "  coin COUNTS : " << *(d_coin.Count()) << "\n";
-  //std::cout << " yield_HMSEl : " << *(yield_HMSEl) << "\n";
-  std::cout << " yield_COINEl : " << *(yield_COINEl) << "\n";
-  //std::cout << "  ALL COUNTS : " << *yield_all << "\n";
-  //std::cout << " GOOD COUNTS : " << n_COINElGood << "\n";
-  //
-  if( 4 != (*(yield_COINEl)) ){
-    std::exit(-1);
-  }
-  std::exit(0);
-}
diff --git a/tests/elastic_test.sh b/tests/elastic_test.sh
deleted file mode 100644
index 5d137e5..0000000
--- a/tests/elastic_test.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/bash
-
-#echo "This is the elastic testing..."
-#echo " "
-#echo "There are currently 0 tests to run!"
-#which hcana
-#
-#ls -lrth
-#ls -lrth build
-#
-#git clone git@eicweb.phy.anl.gov:jlab/hallc/exp/CSV/hallc_replay_csv.git
-#git clone git@eicweb.phy.anl.gov:jlab/hallc/exp/CSV/online_csv.git
-#cd online_csv 
-#ln -s ../hallc_reaply_csv/PARAM
-## and the reset
-#
-#mkdir raw 
-#pushd raw
-#  wget coin.dat
-#popd
-
-
-singularity help build/Singularity.hcana.simg
-
-
-singularity exec build/Singularity.hcana.simg hcana tests/elastic_test.cxx
diff --git a/tests/elastic_test2.sh b/tests/elastic_test2.sh
deleted file mode 100644
index 36da205..0000000
--- a/tests/elastic_test2.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-echo "This is the elastic testing..."
-echo " "
-echo "There are currently 0 tests to run!"
-which hcana
-
-ls -lrth
-ls -lrth build
-
-git clone git@eicweb.phy.anl.gov:jlab/hallc/exp/CSV/hallc_replay_csv.git
-git clone git@eicweb.phy.anl.gov:jlab/hallc/exp/CSV/online_csv.git
-
-cd online_csv 
-ln -s ../hallc_reaply_csv/PARAM
-# and the reset
-
-mkdir raw 
-pushd raw
-  wget coin.dat
-popd
-
-
-singularity help build/Singularity.hcana.simg
-
-singularity exec build/Singularity.hcana.simg which hcana
-
-singularity exec build/Singularity.hcana.simg hcana tests/my_root_script.cxx
-
-echo " WOOOO"
diff --git a/tests/my_root_script.cxx b/tests/my_root_script.cxx
deleted file mode 100644
index 0d36862..0000000
--- a/tests/my_root_script.cxx
+++ /dev/null
@@ -1,20 +0,0 @@
-void my_root_script() {
-
-
-
-  std::cout << "Hello from my_root_script.cxx!\n";
-
-  std::cout << "This should be run with singularity\n";
-  double pi = 3.14;
-
-  auto pi_equals_3 = (3 == pi);
-  std::cout <<  " pi_equals_3 = " << pi_equals_3 << "\n";
-
-  if( pi_equals_3) {
-    std::cout << "what the hell?\n";
-    std::exit( 0 );
-  }
-  /* else */
-  
-  std::exit( -1 );
-}
diff --git a/tests/replay_elastic_data.sh b/tests/replay_elastic_data.sh
deleted file mode 100644
index 48b147f..0000000
--- a/tests/replay_elastic_data.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/bash
-
-echo "This is the elastic testing..."
-echo " "
-echo "There are currently 0 tests to run!"
-which hcana
-
-ls -lrth
-ls -lrth build
-mkdir -p ROOTfiles
-git clone https://eicweb.phy.anl.gov/whit/ci_test_data.git 
-git clone https://eicweb.phy.anl.gov/jlab/hallc/exp/CSV/hallc_replay_csv.git
-git clone https://eicweb.phy.anl.gov/jlab/hallc/exp/CSV/online_csv.git
-
-cd online_csv 
-mkdir -p logs
-ln -s ../hallc_replay_csv/PARAM
-ln -s ../hallc_replay_csv/DBASE
-ln -s ../hallc_replay_csv/CALIBRATION
-ln -s ../hallc_replay_csv/DEF-files
-ln -s ../hallc_replay_csv/MAPS
-ln -s ../hallc_replay_csv/SCRIPTS
-ln -s ../hallc_replay_csv/DATFILES
-ln -s ../ci_test_data/raw
-ln -s ../ROOTfiles
-# and the reset
-
-ls -lrth
-ls -lrth raw/
-ls -lrth ROOTfiles/
-pwd
-# run replay script
-df -h
-
-singularity exec ../build/Singularity.hcana.simg hcana -b -q "../tests/elastic_coin_replay.cxx+(6012,50000)"
-
-echo "hcana calls... the coin replay script and outputs blah.root"
-
-- 
GitLab