diff --git a/.gitignore b/.gitignore
index db15b0f05190a0ca1d081312d48ecc78fe04e189..265ee89b612e580cbf2e6147b6bcba69becd5020 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,16 +1,50 @@
 # ignore patterns
 
 # Auto generated files
+cppcheck_report.txt
 HallCDict.cxx
+HallCDict.C
 HallCDict.h
 HallCDict.o
+NormAnaDict.C
+NormAnaDict.h
+THaScalDict.C
+THaScalDict.h
+THaDecDict.C
+THaDecDict.h
+haDict.h
+haDict.C
 hcana
 
+# scons stuff
+config.log
+*.pyc
+.sconsign.dblite
+.sconf_temp/
+
+#eclipse stuff
+.cproject
+.project
+.settings
+.pydevproject
+
 # Patterns
 *.[oad]
 *~
 *.so
-\#.*\#
+*.so.*
+*.os
+\#*\#
+
+# THtml generated documentation directory
+docs/htmldoc
+
+# Examples directory
+examples/*.root
+examples/*.log.*
+# This is auto generated by hodtest.C
+examples/db_cratemap.dat
+examples/report.out
 
 # Working directory
 work
diff --git a/.gitmodules b/.gitmodules
index 45d5f321fb5c4458bf9cd8111c4d7e45cd4564c1..5cce0a9c3cbf4d2ee8c5b22efb750dc5d7d40ec4 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,4 @@
 [submodule "podd"]
 	path = podd
-	url = https://hallcweb.jlab.org/git/podd.git
+	url = git://github.com/JeffersonLab/analyzer.git
+	branch = Release-150
diff --git a/Makefile b/Makefile
index f1f95c27ba2cb91e35847629effcfc7c67625121..056ecb8a81ec4b010b726ca16cb9a9f1455ddc28 100644
--- a/Makefile
+++ b/Makefile
@@ -7,13 +7,27 @@
 # List only the implementation files (*.cxx). For every implementation file
 # there must be a corresponding header file (*.h).
 
-
 SRC  =  src/THcInterface.cxx src/THcParmList.cxx src/THcAnalyzer.cxx \
-	src/THcHodoscopeHit.cxx src/THcRawHit.cxx \
-	src/THcDCHit.cxx \
-	src/THcHitList.cxx src/THcDetectorMap.cxx src/THcHodoscope.cxx \
-	src/THcHallCSpectrometer.cxx src/THcDriftChamber.cxx \
-	src/THcScintillatorPlane.cxx
+	src/THcHallCSpectrometer.cxx \
+	src/THcDetectorMap.cxx \
+	src/THcRawHit.cxx src/THcHitList.cxx \
+	src/THcSignalHit.cxx \
+	src/THcHodoscope.cxx src/THcScintillatorPlane.cxx \
+	src/THcRawHodoHit.cxx \
+	src/THcDC.cxx src/THcDriftChamberPlane.cxx \
+	src/THcDriftChamber.cxx \
+	src/THcRawDCHit.cxx src/THcDCHit.cxx \
+	src/THcDCWire.cxx \
+	src/THcDCLookupTTDConv.cxx src/THcDCTimeToDistConv.cxx \
+	src/THcSpacePoint.cxx src/THcDCTrack.cxx \
+	src/THcShower.cxx src/THcShowerPlane.cxx \
+	src/THcRawShowerHit.cxx \
+	src/THcAerogel.cxx src/THcAerogelHit.cxx \
+	src/THcCherenkov.cxx src/THcCherenkovHit.cxx \
+	src/THcFormula.cxx\
+	src/THcRaster.cxx\
+	src/THcRasteredBeam.cxx\
+	src/THcRasterRawHit.cxx
 
 # Name of your package. 
 # The shared library that will be built will get the name lib$(PACKAGE).so
@@ -50,6 +64,16 @@ endif
 
 INCDIRS  = $(wildcard $(addprefix $(ANALYZER)/, include src hana_decode hana_scaler)), $(shell pwd)/src
 
+#------------------------------------------------------------------------------
+# Check that root version is new enough (>= 5.32) by requiring
+# root-config --svn-revision to be >= 43166
+
+GOODROOTVERSION := $(shell expr `root-config --svn-revision` \>= 43166)
+
+ifneq ($(GOODROOTVERSION),1)
+  $(error ROOT version 5.32 or later required)
+endif
+
 #------------------------------------------------------------------------------
 # Do not change anything  below here unless you know what you are doing
 
@@ -60,6 +84,7 @@ endif
 ROOTCFLAGS   := $(shell root-config --cflags)
 ROOTLIBS     := $(shell root-config --libs)
 ROOTGLIBS    := $(shell root-config --glibs)
+ROOTBIN      := $(shell root-config --bindir)
 
 INCLUDES      = $(ROOTCFLAGS) $(addprefix -I, $(INCDIRS) )
 #INCLUDES      = $(ROOTCFLAGS) $(addprefix -I, $(INCDIRS) ) -I$(shell pwd)
@@ -104,7 +129,7 @@ ifeq ($(CXX),)
 $(error $(ARCH) invalid architecture)
 endif
 
-CXXFLAGS     += $(INCLUDES)
+CXXFLAGS     += $(INCLUDES) -DHALLC_MODS
 LIBS         += $(ROOTLIBS) $(SYSLIBS)
 GLIBS        += $(ROOTGLIBS) $(SYSLIBS)
 
@@ -114,6 +139,13 @@ ifdef WITH_DEBUG
 CXXFLAGS     += -DWITH_DEBUG
 endif
 
+CCDBLIBS = 
+CCDBFLAGS = 
+ifdef CCDB_HOME
+CCDBLIBS     += -L$(CCDB_HOME)/lib -lccdb
+CCDBFLAGS  += -I$(CCDB_HOME)/include -DWITH_CCDB
+endif
+
 ifdef PROFILE
 CXXFLAGS     += -pg
 LDFLAGS      += -pg
@@ -146,7 +178,8 @@ HALLALIBS    := -L$(LIBDIR) -lHallA -ldc -lscaler
 src/THcInterface.d:  $(HDR_COMPILEDATA)
 
 hcana:		src/main.o $(LIBDC) $(LIBSCALER) $(LIBHALLA) $(USERLIB)
-		$(LD) $(LDFLAGS) $< $(HALLALIBS) -L. -lHallC $(GLIBS) -o $@
+		$(LD) $(LDFLAGS) $< $(HALLALIBS) -L. -lHallC $(CCDBLIBS) \
+		$(GLIBS) -o $@
 
 $(USERLIB):	$(HDR) $(OBJS)
 		$(LD) $(LDFLAGS) $(SOFLAGS) -o $@ $(OBJS)
@@ -154,11 +187,11 @@ $(USERLIB):	$(HDR) $(OBJS)
 
 $(HDR_COMPILEDATA) $(LIBHALLA) $(LIBDC) $(LIBSCALER): $(ANALYZER)/Makefile
 		@echo "Building Podd"		
-		@cd $(ANALYZER) ; make
+		@cd $(ANALYZER) ; export PODD_EXTRA_DEFINES=-DHALLC_MODS ; make
 
 $(USERDICT).cxx: $(RCHDR) $(HDR) $(LINKDEF)
 	@echo "Generating dictionary $(USERDICT)..."
-	$(ROOTSYS)/bin/rootcint -f $@ -c $(INCLUDES) $^
+	$(ROOTBIN)/rootcint -f $@ -c $(INCLUDES) $(CCDBFLAGS) $^
 
 install:	all
 	cp -p $(USERLIB) $(HOME)/cue/SRC/ana
@@ -167,7 +200,9 @@ clean:
 		rm -f src/*.o *~ $(USERLIB) $(USERDICT).*
 
 realclean:	clean
-		rm -f *.d
+		rm -f *.d NormAnaDict.* THaDecDict.* THaScallDict.* bin/hcana
+		rm -f src/*.os
+		rm -f bin
 
 srcdist:
 		rm -f $(DISTFILE)
@@ -184,7 +219,7 @@ srcdist:
 .SUFFIXES: .c .cc .cpp .cxx .C .o .d
 
 %.o:	%.cxx
-	$(CXX) $(CXXFLAGS) -o $@ -c $<
+	$(CXX) $(CXXFLAGS) $(CCDBFLAGS) -o $@ -c $<
 
 # FIXME: this only works with gcc
 %.d:	%.cxx
diff --git a/README.md b/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..b39b8844eb26fd03efb35e09f4488980095fcebe
--- /dev/null
+++ b/README.md
@@ -0,0 +1,59 @@
+hcana - Hall C ROOT/C++ analyzer
+============================================
+
+hcana is an under-development tool to analyze data from the HMS, SHMS and
+SOS spectrometers in
+[Hall C](http://www.jlab.org/Hall-C/) at [JLab](http://www.jlab.org/).
+It is being developed to replace
+the historical Hall C analyzer, ENGINE, which was written in Fortran.
+hcana will be the package used to analyze Hall C date in the 12 GeV era.
+hcana is being written in C++, using the CERN ROOT framework.  hcana is
+an extension to the Hall A analyzer, PODD.
+
+NOTE: In the process of retrieving the hcana source code, a copy of
+the Hall A PODD package will be downloaded.  The version of PODD included
+has been slightly modified for use with hcana.  For an official version
+of PODD, see the [ROOT/C++ Analyzer for Hall A](http://hallaweb.jlab.org/podd/) page.
+
+Downloading
+-----------
+
+Instructions for downloading hcana can be found in the
+[Hall C Wiki](https://hallcweb.jlab.org/wiki/index.php/ROOT_Analyzer/Git).
+
+Compiling
+---------
+hcana may be compiled with either make or scons.  Switching between these
+two build systems make require some cleanup of dependency files, binary files
+and other autogenerated files.
+
+Before compiling, type
+`source setup.sh` or `source setup.csh`
+depending on whether your shell is bash or csh.
+
+### Compiling with make
+    make
+
+### Compiling with scons
+    scons
+
+### Additional SCons features 
+To do the equivalent of "make clean", do
+`scons -c`
+To compile with debug capabilities, do
+`scons debug=1`
+To compile the standalone codes the are part of podd, do
+`scons standalone=1`
+To run cppcheck (if installed) on the Hall C src diretory, do
+`scons cppcheck=1`
+
+Running
+-------
+Basic instructions on how to run hcana are in the
+[Hall C Wiki](https://hallcweb.jlab.org/wiki/index.php/ROOT_Analyzer/Running).
+
+Contributing
+------------
+To participate in hcana code development, contact Mark Jones or Stephen Wood.
+
+
diff --git a/README_Eclipse_Linux.md b/README_Eclipse_Linux.md
new file mode 100644
index 0000000000000000000000000000000000000000..62c264a14a81ca2f1a1616f8eaca134b637f7ee9
--- /dev/null
+++ b/README_Eclipse_Linux.md
@@ -0,0 +1,279 @@
+Installation of Eclipse (Kepler) on Linux (Centos6.4/RHEL), with plugins for SCons, Git, GitHub, and Python
+===========================================================================================================
+
+Install Eclipse
+---------------
+
+There exists an Eclipse plugin for SCons, called SConsolidator.  As of January, 2014, this
+plugin works only with the Kepler version of Eclipse.  
+
+Most of this information can be found at:
+
+[Installing Eclipse on Fedora/Centos6.4/RHEL](http://www.if-not-true-then-false.com/2010/linux-install-eclipse-on-fedora-centos-red-hat-rhel/).
+
+To download and install this version of Eclipse, go to:
+
+[Eclipse Kepler SR1 Downloads](http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/keplersr1)
+
+and download the Linux 64-bit version.  The file should be called:
+
+eclipse-cpp-kepler-SR1-linux-gtk-x86_64.tar.gz
+
+Before you install this version of eclipse, you may have to uninstall the (older) version that
+ships with Centos6.4/RHEL (The rpms may have been installed depending on what choices you made
+during the system installation process).  If 'which eclipse' tells you that it has been installed,
+then uninstall the older version with the following series of commands:
+
+	$ yum erase eclipse
+	$ yum erase eclipse-cdt
+	$ yum erase eclipse-rcp
+	$ yum erase eclipse-swt
+	$ yum erase jetty-eclipse
+	$ yum erase icu4j-eclipse
+
+This worked for me.  You can check to see if all eclipse-related rpms have been uninstalled
+with 
+
+	$ rpm -qa | grep -i eclipse
+
+If there are other rpms reported, you can uninstall them with commands similar to those above.
+
+We are going to install eclipse under /opt (of course, you can install it anywhere
+you like - modify the commands below as necessary).  The procedure below will 
+require superuser privileges.
+
+	$ cd
+	$ sudo tar -xvzf ~/Downloads/eclipse-cpp-kepler-SR1-linux-gtk-x86_64.tar.gz -C /opt
+	$ chmod -R +r /opt/eclipse
+
+Now, we want to add a script to /usr/bin to launch eclipse.
+
+	$ sudo touch /usr/bin/eclipse
+	$ sudo chmod 755 /usr/bin/eclipse
+
+With your favorite editor, create the /usr/bin/eclipse file with the following content:
+
+	#!/bin/sh
+	export ECLIPSE_HOME="/opt/eclipse"
+ 
+	$ECLIPSE_HOME/eclipse $*
+
+You may also want to create the Gnome desktop launcher for eclipse.  Create the file
+
+/usr/share/applications/eclipse.desktop
+
+with the following content:
+
+	[Desktop Entry]
+	Encoding=UTF-8
+	Name=Eclipse
+	Comment=Eclipse SDK 4.3.1
+	Exec=eclipse
+	Icon=/opt/eclipse/icon.xpm
+	Terminal=false
+	Type=Application
+	Categories=GNOME;Application;Development;
+	StartupNotify=true
+
+Start up Eclipse from the command line with:
+
+	$ eclipse
+
+When you start up Eclipse, you will get a window asking you to choose a workspace.  The
+default is usually /Users/****/Documents/workspace.  This is fine, but you might want to
+choose someplace else.  Make sure to click the "Use this as the default ..." radio button
+so that you will not get asked this every time.
+
+When Eclipse finally starts up, you can click on the "X" on the welcome page, and it
+should take you to the Project Explorer page.  This is the main view that you will
+probably end up using most of the time.
+
+Install the SConsolidator Plugin
+--------------------------------
+
+In order for Eclipse to work with SCons, one has to install a plugin called SConsolidator.
+To do this, do the following:
+
+a) Go to Help->Install New Software
+
+b) In the Install window that comes up, in the "Work with" field, enter:
+
+http://www.sconsolidator.com/update
+
+and click on "Add..."
+
+c) Specify the name as "SConsolidator"
+
+d) Check the Eclipse Plug-In for SCons radio button, then hit Next> and follow the
+installation through.
+
+e) After the installation, Eclipse will need to be restarted, which it should do
+automatically.
+
+When Eclipse restarts, it will ask you about setting the path to SCons.  Set this up now.
+Check to see where SCons is installed by doing "which scons" from a terminal window.
+For me, it is in /usr/local/bin/scons, and so I entered that for the path to the SCons
+executable.  
+
+To change the SCons build options (at any time), you can go to Eclipse->Preferences, and
+then expand the SCons tag, to reveal options for Build Settings, Performance vs. Accuracy,
+and Warnings.  In particular, if you want to build the standalone executables, you can add
+'standalone=1' to the SCons Options in Build Settings.
+
+Install PyDev for Python Support
+--------------------------------
+
+PyDev includes a nice Python editor with appropriate syntax highlighting, as well as
+providing the "mouse-over" documentation features of Eclipse for those things that
+are written in Python - namely SCons.
+
+As of this writing, Eclipse Kepler does not play so nicely with PyDev-3.X, and so we
+will install PyDev-2.X instead.  The reason may be related to issues with Java 1.6 vs. 1.7,
+in fact.
+
+a) Go to Help->Install New Software
+
+b) In the Install window that comes up, in the "Work with" field, enter:
+
+http://pydev.org/updates
+
+and click on "Add..."
+
+c) Specify the name as "PyDev" and hit return
+
+d) IMPORTANT:  Uncheck the radio button to show versions other than the latest version
+in the bottom portion of this window.
+
+e) Look for the PyDev for Eclipse Version 2.8.2, and check this radio button.
+
+d) Proceed with the installation.
+
+e) IMPORTANT:  At some point it may ask you to allow a certain security certificate - you
+actually have to check the radio button in the top part of the window and THEN accept the
+certificate.
+
+f) After the installation, Eclipse will need to be restarted, which it should do
+automatically.
+
+Restart Eclipse; you should now have access to PyDev. You should see it by going to 
+Eclipse->About Eclipse->Installation Details->Installed Software
+
+Setting up Git within Eclipse
+-----------------------------
+
+Much of this comes from [this article](http://www.vogella.com/tutorials/EclipseGit/article.html).
+
+a)  Basic Configuration
+
+Select Window → Preferences → Team → Git
+
+Under the field for Cloning Repositories, choose a location (locally) for storing respositories that
+you will eventually clone to create.
+
+Select Window → Preferences → Team → Git → Configuration
+
+Choose the User Settings Tab:
+
+If you have already been using git on your system, you should see that the user and email fields 
+are already filled out.  If they are now, you can fill them out now.  The 'location' field should
+be ($HOME)/.gitconfig, where ($HOME) is your normal home directory
+
+b)  Git Staging View
+
+Select Window → Show View → Other... → Git → Git Staging
+
+You should now see a Git Staging tab in the Console area of the main Eclipse window.  Basically, this
+window will give you all information that would be reported by 'git status' at the command line.
+
+c) Activate the Git Toolbar
+
+Select Window → Customize perspective... and check the command groups Git and Git Navigation Actions
+in the Command Groups Availability tab.  You should now see "Git" as one of the main pulldown menus
+of the Eclipse toolbar.
+ 
+Opening hcana as a New Project from Exisiting Source within Eclipse
+------------------------------------------------------------------
+
+This section assumes that you have already cloned hcana (from the command line) somewhere on your system.
+
+a) Choose File->New->Other
+
+b) In the pop-up window, choose 'New SCons project from existing source', and click 'Next'
+
+c) Choose a project name (hcana or hcana-1.6 are good choices), specify the existing code location, and
+then add any SCons Options (for example, debug=1 standalone=1 will compile the code in debug
+mode, and compile the standalone codes as well.
+
+d) Click 'Finish'
+
+You should now see the project within the Project Explorer window on the RHS of the Eclipse window.
+You can double-click on any file, and it should open in the editor window.  You can edit and save
+changes in the usual way.  Clicking on the "Hammer" icon on the Eclipse toolbar should execute
+scons, with the output of the build process shown in the console view at the bottom of the Eclipse
+window.
+
+Also, you should see the current git branch that you are working on displayed next to the 
+top-level hcana folder that is displayed in the Project Explorer window.
+
+If you right-click on the hcana folder in the Project Explorer window, and then choose "Team", you
+should see the various git commands available.  From here, you can switch to another branch,
+checkout a new branch, do commits and pushes, and/or fetch and merge from upstream.  If you have
+configured Eclipse to show the Git Toolbar, you can also choose a number of oft-used git commands
+from the Git pulldown menu.
+
+Also, you can commit and push from the Git Staging window!!!  And, you show the commit history
+by right-clicking on the top level hcana folder, and choosing Team -> Show in History
+You should see now a tab in the Console area called History, with a table of commits for the repository.
+
+Cloning hcana from within Eclipse
+--------------------------------
+
+This section details how to clone your forked copy of hcana directly from within Eclipse (without
+having done so at the command line already).
+
+a) Select File → Import → Git → Project from Git.
+
+b) Select Clone URI in the next dialog.
+
+c) Enter the URI of your repository on github, for example:
+
+git@github.com:brash99/hcana.git
+
+d) Click on ‘Next’ to get the Branch Selection dialog
+
+e) The default is to clone all branches.  You may want to select only certain ones.  Do so, 
+if you please, and click on ‘Next’
+
+f) Choose the local destination for your cloned repository.  Note that Eclipse will
+warn you if there is already an existing repository clone there (which can happen as the 
+default is to choose your top-level directory plus the first part of the repository name, 
+i.e. hcana, and so this may already be used).
+
+g) Choose the initial branch that you want to work with.
+
+h) Click on ‘Next’ to get the Projects dialog.
+
+i) Click the ‘Use New Project wizard’ radio button, and then click on ‘Finish’
+
+j)  The final dialog will allow you to choose ‘New SCons project from existing source’, at 
+which point you can then continue from step b) in Section 5 above!! 
+
+k) The final step is to add the appropriate Jefferson Lab reposistory as an upstream remote.
+
+(i) Open the Git Repositories view (Select Window → Show View → Other... → Git → Git Repositories)
+
+(ii) From the Git Repositories tab in the Console area, expand the repository that you are trying
+to set up (hcana in this case), and then expand Remotes.  You should see that origin is present.
+
+(iii) Right-click on Remotes, and choose 'Create Remote'.  Specify the Remote Name as 'upstream'. Select
+'Configure Push', and Click OK.
+
+(iv) Click on "Change" next to the field where one specifies the URI ... in the new dialog, specify
+the remote URI as git@github.com:JeffersonLab/hcana.git.  Click on 'Save'.  You should now see that the
+remote called upstream has been added.
+
+(v)  The final step is to configure the upstream fetch so that it pulls from the develop branch.  Expand
+the upstream directory under Remotes.  You will see a fetch and a push specification for the upstream
+repository.  The fetch specification is indicated by a left green arrow.  Right-click on this, and 
+choose Configure Fetch.  From the next dialog, choose Add.  In the next dialog, for the Source, specify
+the develop branch, then click Save and Finish.
diff --git a/README_Eclipse_MacOSX.md b/README_Eclipse_MacOSX.md
new file mode 100644
index 0000000000000000000000000000000000000000..93ab9af0ba1f5425b9c23204b276b0cd0bc9f0fe
--- /dev/null
+++ b/README_Eclipse_MacOSX.md
@@ -0,0 +1,236 @@
+Installation of Eclipse (Kepler) on MacOSX, with plugins for SCons, Git, GitHub, and Python
+===========================================================================================
+
+Install Eclipse
+---------------
+
+There exists an Eclipse plugin for SCons, called SConsolidator.  As of
+January, 2014, this plugin works only with the Kepler version of
+Eclipse.  To download and install this version of Eclipse, go to:
+
+[Eclipse Kepler SR1 Downloads](http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/keplersr1)
+
+and download the MacOSX (Cocoa 64) version.  The file should be called:
+
+eclipse-cpp-kepler-SR1-macosx-cocoa-x86_64.tar.gz
+
+Unpack this somewhere in your own user space.  I chose to install it
+directly underneath my home directory, but of course you can install
+it where you like.
+
+	$ cd
+	$ sudo tar -xvzf ~/Downloads/eclipse-cpp-kepler-SR1-macosx-cocoa-x86_64.tar.gz
+
+Start up Eclipse from the command line with:
+
+	$ ~/eclipse/eclipse
+
+You might also find it useful to add the Eclipse app to your dock,
+permanently, to make it easier to start up in the future.
+
+When you start up Eclipse, you will get a window asking you to choose
+a workspace.  The default is usually /Users/****/Documents/workspace.
+This is fine, but you might want to choose someplace else.  Make sure
+to click the 'Use this as the default ...' radio button so that you
+will not get asked this every time.
+
+When Eclipse finally starts up, you can click on the "X" on the
+welcome page, and it should take you to the Project Explorer page.
+This is the main view that you will probably end up using most of the
+time.
+
+Install the SConsolidator Plugin
+--------------------------------
+
+In order for Eclipse to work with SCons, one has to install a plugin
+called SConsolidator.  To do this, do the following:
+
+a) Go to Help->Install New Software
+
+b) In the Install window that comes up, in the "Work with" field, enter:
+
+http://www.sconsolidator.com/update
+
+and click on "Add..."
+
+c) Specify the name as "SConsolidator"
+
+d) Check the Eclipse Plug-In for SCons radio button, then hit Next>
+and follow the installation through.
+
+e) After the installation, Eclipse will need to be restarted, which it
+should do automatically.
+
+When Eclipse restarts, it will ask you about setting the path to
+SCons.  Set this up now.  Check to see where SCons is installed by
+doing "which scons" from a terminal window.  For me, it is in
+/usr/local/bin/scons, and so I entered that for the path to the SCons
+executable.
+
+To change the SCons build options (at any time), you can go to
+Eclipse->Preferences, and then expand the SCons tag, to reveal options
+for Build Settings, Performance vs. Accuracy, and Warnings.  In
+particular, if you want to build the standalone executables, you can
+add 'standalone=1' to the SCons Options in Build Settings.
+
+Install PyDev for Python Support
+--------------------------------
+
+PyDev includes a nice Python editor with appropriate syntax
+highlighting, as well as providing the "mouse-over" documentation
+features of Eclipse for those things that are written in Python -
+namely SCons.
+
+As of this writing, Eclipse Kepler does not play so nicely with
+PyDev-3.X, and so we will install PyDev-2.X instead.  The reason may
+be related to issues with Java 1.6 vs. 1.7, in fact.
+
+a) Go to Help->Install New Software
+
+b) In the Install window that comes up, in the "Work with" field, enter:
+
+http://pydev.org/updates
+
+and click on "Add..."
+
+c) Specify the name as "PyDev" and hit return
+
+d) IMPORTANT: Uncheck the radio button to show versions other than the
+latest version in the bottom portion of this window.
+
+e) Look for the PyDev for Eclipse Version 2.8.2, and check this radio button.
+
+d) Proceed with the installation.
+
+e) IMPORTANT: At some point it may ask you to allow a certain security
+certificate - you actually have to check the radio button in the top
+part of the window and THEN accept the certificate.
+
+f) After the installation, Eclipse will need to be restarted, which it
+should do automatically.
+
+Restart Eclipse; you should now have access to PyDev. You should see
+it by going to Eclipse->About Eclipse->Installation Details->Installed
+Software
+
+Setting up Git within Eclipse
+-----------------------------
+
+Much of this comes from [this article](http://www.vogella.com/tutorials/EclipseGit/article.html).
+
+a)  Basic Configuration
+
+Select Window → Preferences → Team → Git
+
+Under the field for Cloning Repositories, choose a location (locally) for storing respositories that
+you will eventually clone to create.
+
+Select Window → Preferences → Team → Git → Configuration
+
+Choose the User Settings Tab:
+
+If you have already been using git on your system, you should see that the user and email fields 
+are already filled out.  If they are now, you can fill them out now.  The 'location' field should
+be ($HOME)/.gitconfig, where ($HOME) is your normal home directory
+
+b)  Git Staging View
+
+Select Window → Show View → Other... → Git → Git Staging
+
+You should now see a Git Staging tab in the Console area of the main Eclipse window.  Basically, this
+window will give you all information that would be reported by 'git status' at the command line.
+
+c) Activate the Git Toolbar
+
+Select Window → Customize perspective... and check the command groups Git and Git Navigation Actions
+in the Command Groups Availability tab.  You should now see "Git" as one of the main pulldown menus
+of the Eclipse toolbar.
+ 
+Opening hcana as a New Project from Exisiting Source within Eclipse
+------------------------------------------------------------------
+
+This section assumes that you have already cloned hcana (from the command line) somewhere on your system.
+
+a) Choose File->New->Other
+
+b) In the pop-up window, choose 'New SCons project from existing source', and click 'Next'
+
+c) Choose a project name (hcana or hcana-1.6 are good choices), specify the existing code location, and
+then add any SCons Options (for example, debug=1 standalone=1 will compile the code in debug
+mode, and compile the standalone codes as well.
+
+d) Click 'Finish'
+
+You should now see the project within the Project Explorer window on the RHS of the Eclipse window.
+You can double-click on any file, and it should open in the editor window.  You can edit and save
+changes in the usual way.  Clicking on the "Hammer" icon on the Eclipse toolbar should execute
+scons, with the output of the build process shown in the console view at the bottom of the Eclipse
+window.
+
+Also, you should see the current git branch that you are working on displayed next to the 
+top-level hcana folder that is displayed in the Project Explorer window.
+
+If you right-click on the hcana folder in the Project Explorer window, and then choose "Team", you
+should see the various git commands available.  From here, you can switch to another branch,
+checkout a new branch, do commits and pushes, and/or fetch and merge from upstream.  If you have
+configured Eclipse to show the Git Toolbar, you can also choose a number of oft-used git commands
+from the Git pulldown menu.
+
+Also, you can commit and push from the Git Staging window!!!  And, you show the commit history
+by right-clicking on the top level hcana folder, and choosing Team -> Show in History
+You should see now a tab in the Console area called History, with a table of commits for the repository.
+
+Cloning hcana from within Eclipse
+--------------------------------
+
+This section details how to clone your forked copy of hcana directly from within Eclipse (without
+having done so at the command line already).
+
+a) Select File → Import → Git → Project from Git.
+
+b) Select Clone URI in the next dialog.
+
+c) Enter the URI of your repository on github, for example:
+
+git@github.com:brash99/hcana.git
+
+d) Click on ‘Next’ to get the Branch Selection dialog
+
+e) The default is to clone all branches.  You may want to select only certain ones.  Do so, 
+if you please, and click on ‘Next’
+
+f) Choose the local destination for your cloned repository.  Note that Eclipse will
+warn you if there is already an existing repository clone there (which can happen as the 
+default is to choose your top-level directory plus the first part of the repository name, 
+i.e. hcana, and so this may already be used).
+
+g) Choose the initial branch that you want to work with.
+
+h) IMPORTANT!!!!  Click the radio button to Clone Submodules!!!!
+
+i) Click on ‘Next’ to get the Projects dialog.
+
+j) Click the ‘Use New Project wizard’ radio button, and then click on ‘Finish’
+
+k)  The final dialog will allow you to choose ‘New SCons project from existing source’, at 
+which point you can then continue from step b) in Section 5 above!! 
+
+l) The final step is to add the appropriate Jefferson Lab reposistory as an upstream remote.
+
+(i) Open the Git Repositories view (Select Window → Show View → Other... → Git → Git Repositories)
+
+(ii) From the Git Repositories tab in the Console area, expand the repository that you are trying
+to set up (hcana in this case), and then expand Remotes.  You should see that origin is present.
+
+(iii) Right-click on Remotes, and choose 'Create Remote'.  Specify the Remote Name as 'upstream'. Select
+'Configure Push', and Click OK.
+
+(iv) Click on "Change" next to the field where one specifies the URI ... in the new dialog, specify
+the remote URI as git@github.com:JeffersonLab/hcana.git.  Click on 'Save'.  You should now see that the
+remote called upstream has been added.
+
+(v)  The final step is to configure the upstream fetch so that it pulls from the develop branch.  Expand
+the upstream directory under Remotes.  You will see a fetch and a push specification for the upstream
+repository.  The fetch specification is indicated by a left green arrow.  Right-click on this, and 
+choose Configure Fetch.  From the next dialog, choose Add.  In the next dialog, for the Source, specify
+the develop branch, then click Save and Finish.
diff --git a/SConscript.py b/SConscript.py
new file mode 100644
index 0000000000000000000000000000000000000000..c94403f73cc3e27e558c339440e87490a6e615d6
--- /dev/null
+++ b/SConscript.py
@@ -0,0 +1,33 @@
+###### Hall C Software Main SConscript File #####
+###### Author:	Edward Brash (brash@jlab.org) June 2013
+
+import os
+import re
+import SCons.Util
+Import ('pbaseenv')
+
+######## ROOT Dictionaries #########
+
+roothcdict = pbaseenv.subst('$HC_DIR')+'/HallCDict.C'
+roothcobj = pbaseenv.subst('$HC_SRC')+'/HallCDict.so'
+hcheaders = Split("""
+	src/THcInterface.h src/THcParmList.h src/THcAnalyzer.h src/THcHallCSpectrometer.h 
+	src/THcDetectorMap.h src/THcRawHit.h src/THcHitList.h src/THcSignalHit.h src/THcHodoscope.h 
+	src/THcScintillatorPlane.h src/THcRawHodoHit.h src/THcDC.h src/THcDriftChamberPlane.h 
+	src/THcDriftChamber.h src/THcRawDCHit.h src/THcDCHit.h src/THcDCWire.h src/THcSpacePoint.h 
+	src/THcDCLookupTTDConv.h src/THcDCTimeToDistConv.h src/THcShower.h src/THcShowerPlane.h 
+	src/THcRawShowerHit.h src/THcAerogel.h src/THcAerogelHit.h src/THcCherenkov.h src/THcCherenkovHit.h
+        src/THcGlobals.h src/THcDCTrack.h src/THcFormula.h
+        src/THcRaster.h src/THcRasteredBeam.h src/THcRasterRawHit.h
+	src/HallC_LinkDef.h
+	""")
+pbaseenv.RootCint(roothcdict,hcheaders)
+pbaseenv.SharedObject(target = roothcobj, source = roothcdict)
+
+#######  Start of main SConscript ###########
+
+print ('LIBS = %s\n' % pbaseenv.subst('$LIBS'))
+
+analyzer = pbaseenv.Program(target = 'hcana', source = 'src/main.o')
+pbaseenv.Install('./bin',analyzer)
+pbaseenv.Alias('install',['./bin'])
diff --git a/SConstruct b/SConstruct
new file mode 100644
index 0000000000000000000000000000000000000000..7e8e446b8a09431f3575724475757e31f1194150
--- /dev/null
+++ b/SConstruct
@@ -0,0 +1,167 @@
+#!/usr/bin/env python
+###### Hall C Software Main SConstruct Build File #####
+###### Author:	Edward Brash (brash@jlab.org) June 2013
+
+import os
+import sys
+import platform
+import commands
+import SCons
+
+def rootcint(target,source,env):
+	"""Executes the ROOT dictionary generator over a list of headers."""
+	dictname = target[0]
+	headers = ""
+	cpppath = env.subst('$_CCCOMCOM')
+	ccflags = env.subst('$CCFLAGS')
+	rootcint = env.subst('$ROOTCINT')
+	print "Doing rootcint call now ..."
+	for f in source:
+		headers += str(f) + " "
+	command = rootcint + " -f %s -c -pthread -fPIC %s %s" % (dictname,cpppath,headers)
+	print ('RootCint Command = %s\n' % command)
+	ok = os.system(command)
+	return ok
+
+baseenv = Environment(ENV = os.environ)
+#dict = baseenv.Dictionary()
+#keys = dict.keys()
+#keys.sort()
+#for key in keys:
+#	print "Construction variable = '%s', value = '%s'" % (key, dict[key])
+
+####### Check SCons version ##################
+print('!!! Building the Hall C analyzer and libraries with SCons requires')
+print('!!! SCons version 2.1.0 or newer.')
+EnsureSConsVersion(2,1,0)
+
+####### Hall A Build Environment #############
+#
+baseenv.Append(MAIN_DIR= Dir('.').abspath)
+baseenv.Append(HC_DIR= baseenv.subst('$MAIN_DIR'))
+baseenv.Append(HC_SRC= baseenv.subst('$HC_DIR')+'/src ') 
+baseenv.Append(HA_DIR= baseenv.subst('$HC_DIR')+'/podd ')
+baseenv.Append(HA_SRC= baseenv.subst('$HA_DIR')+'/src ') 
+baseenv.Append(HA_DC= baseenv.subst('$HA_DIR')+'/hana_decode ') 
+baseenv.Append(HA_SCALER= baseenv.subst('$HA_DIR')+'/hana_scaler ') 
+baseenv.Append(MAJORVERSION = '1')
+baseenv.Append(MINORVERSION = '5')
+baseenv.Append(PATCH = '28')
+baseenv.Append(SOVERSION = baseenv.subst('$MAJORVERSION')+'.'+baseenv.subst('$MINORVERSION'))
+baseenv.Append(VERSION = baseenv.subst('$SOVERSION')+'.'+baseenv.subst('$PATCH'))
+baseenv.Append(EXTVERS = '')
+baseenv.Append(HA_VERSION = baseenv.subst('$VERSION')+baseenv.subst('$EXTVERS'))
+print "Hall C Main Directory = %s" % baseenv.subst('$HC_DIR')
+print "Hall C Source Directory = %s" % baseenv.subst('$HC_SRC')
+print "Hall A Main Directory = %s" % baseenv.subst('$HA_DIR')
+print "Software Version = %s" % baseenv.subst('$VERSION')
+ivercode = 65536*int(float(baseenv.subst('$SOVERSION')))+ 256*int(10*(float(baseenv.subst('$SOVERSION'))-int(float(baseenv.subst('$SOVERSION')))))+ int(float(baseenv.subst('$PATCH')))
+baseenv.Append(VERCODE = ivercode)
+baseenv.Append(CPPPATH = ['$HC_SRC','$HA_SRC','$HA_DC','$HA_SCALER'])
+
+proceed = "1" or "y" or "yes" or "Yes" or "Y"
+######## Configure Section #######
+
+import configure
+configure.config(baseenv,ARGUMENTS)
+
+Export('baseenv')
+
+conf = Configure(baseenv)
+
+if not conf.CheckCXX():
+	print('!!! Your compiler and/or environment is not correctly configured.')
+	Exit(0)
+
+if not conf.CheckFunc('printf'):
+       	print('!! Your compiler and/or environment is not correctly configured.')
+       	Exit(0)
+
+if baseenv.subst('$CHECKHEADERS')==proceed:
+	system_header_list = ['arpa/inet.h','errno.h','assert.h','netdb.h','netinet/in.h','pthread.h','signal.h','stddef.h','stdio.h','stdlib.h','string.h','strings.h','sys/ioctl.h','sys/socket.h','sys/time.h','sys/types.h','time.h','unistd.h','memory.h','math.h','limits.h']
+
+	for header_file in system_header_list:
+		if not conf.CheckHeader(header_file):
+			print('!! Header file %s not found.' % header_file)
+			Exit(0)
+
+baseenv = conf.Finish()
+
+######## ROOT Dictionaries #########
+baseenv.Append(ROOTCONFIG = 'root-config')
+baseenv.Append(ROOTCINT = 'rootcint')
+
+try:
+        baseenv.ParseConfig('$ROOTCONFIG --cflags')
+        baseenv.ParseConfig('$ROOTCONFIG --libs')
+        baseenv.MergeFlags('-fPIC')
+except OSError:
+        try:
+		baseenv.Replace(ROOTCONFIG = baseenv['ENV']['ROOTSYS'] + '/bin/root-config')
+		baseenv.Replace(ROOTCINT = baseenv['ENV']['ROOTSYS'] + '/bin/rootcint')
+		baseenv.ParseConfig('$ROOTCONFIG --cflags')
+		baseenv.ParseConfig('$ROOTCONFIG --libs')
+		baseenv.MergeFlags('-fPIC')
+	except KeyError:
+                print('!!! Cannot find ROOT.  Check if root-config is in your PATH.')
+                Exit(1)
+
+bld = Builder(action=rootcint)
+baseenv.Append(BUILDERS = {'RootCint': bld})
+
+######## cppcheck ###########################
+
+def which(program):
+	import os
+	def is_exe(fpath):
+		return os.path.isfile(fpath) and os.access(fpath, os.X_OK)
+	
+	fpath, fname = os.path.split(program)
+	if fpath:
+		if is_exe(program):
+			return program
+	else:
+		for path in os.environ["PATH"].split(os.pathsep):
+			path = path.strip('"')
+			exe_file = os.path.join(path, program)
+			if is_exe(exe_file):
+				return exe_file
+	return None
+
+if baseenv.subst('$CPPCHECK')==proceed:
+	is_cppcheck = which('cppcheck')
+	print "Path to cppcheck is %s\n" % is_cppcheck
+
+	if(is_cppcheck == None):
+		print('!!! cppcheck not found on this system.  Check if cppcheck is installed and in your PATH.')
+		Exit(1)
+	else:
+		cppcheck_command = baseenv.Command('cppcheck_report.txt',[],"cppcheck --quiet --enable=all src/ 2> $TARGET")
+		baseenv.AlwaysBuild(cppcheck_command)
+
+####### Start of main SConstruct ############
+
+hallclib = 'HallC'
+hallalib = 'HallA'
+dclib = 'dc'
+scalerlib = 'scaler'
+
+baseenv.Append(LIBPATH=['$HC_DIR','$HA_DIR','$HC_SRC','$HA_SRC','$HA_DC','$HA_SCALER'])
+baseenv.Replace(SHLIBSUFFIX = '.so')
+baseenv.Append(CPPDEFINES = '-DHALLC_MODS')
+
+directorylist = ['./','src','podd','podd/src','podd/hana_decode','podd/hana_scaler']
+
+baseenv.Append(SHLIBSUFFIX ='.'+baseenv.subst('$VERSION'))
+pbaseenv=baseenv.Clone()
+pbaseenv.Append(LIBS=[hallclib,hallalib,dclib,scalerlib])
+baseenv.Append(LIBS=[hallalib,dclib,scalerlib])
+Export('pbaseenv')
+
+SConscript(dirs = directorylist,name='SConscript.py',exports='baseenv')
+
+#######  End of SConstruct #########
+
+# Local Variables:
+# mode: python
+# End:
diff --git a/configure.py b/configure.py
new file mode 100644
index 0000000000000000000000000000000000000000..b88a0edae749cac9b87966fb0a9ab4b6c3a339b8
--- /dev/null
+++ b/configure.py
@@ -0,0 +1,59 @@
+import platform
+import os
+
+def config(env,args):
+
+	if env['PLATFORM'] == 'posix':
+      		if (platform.machine() == 'x86_64'):
+        		print "Got a 64-bit processor, I can do a 64-bit build in theory..."
+			for element in platform.architecture():
+         			if (element == '32bit'):
+             				print '32-bit Linux build'
+             				env['MEMORYMODEL'] = '32bit'
+             				import linux32
+             				linux32.config(env, args)
+					break
+         			elif (element == '64bit'):
+             				print '64-bit Linux build'
+             				env['MEMORYMODEL'] = '64bit'
+             				import linux64
+             				linux64.config(env, args)
+					break
+         			else:
+             				print 'Memory model not specified, so I\'m building 32-bit...'
+             				env['MEMORYMODEL'] = '32bit'
+             				import linux32
+             				linux32.config(env, args)
+      		else:
+          		print '32-bit Linux Build.'
+          		env['MEMORYMODEL'] = '32bit'
+          		import linux32
+          		linux32.config(env, args)
+#	elif env['PLATFORM'] == 'win32':
+#      		if (os.environ['PROCESSOR_ARCHITECTURE'] == 'AMD64' or (os.environ.has_key('PROCESSOR_ARCHITEW6432') and os.environ['PROCESSOR_ARCHITEW6432'] == 'AMD64')):
+#         		print "Got a 64-bit processor, I can do a 64-bit build in theory..."
+#         		if args.get('32bit', 0):
+#            			print '32-bit Windows build.'
+#            			#import win6432
+#            			#win6432.config(env, args)
+#         		elif args.get('64bit', 0):
+#            			print '64-bit Windows build.'
+#            			#import win64
+#            			#win64.config(env, args)
+#         		else:
+#            			print 'Memory model not specified, so I\'m building 32-bit.'
+#            			#import win6432
+#            			#win6432.config(env, args)
+#      		else:
+#			print '32-bit Windows build.'
+#         		#import win32
+#         		#win32.config(env, args)
+	elif env['PLATFORM'] == 'darwin':
+      		print 'OS X Darwin is a 64-bit build.'
+      		env['MEMORYMODEL'] = '64bit'
+      		import darwin64
+      		darwin64.config(env, args)
+	else:
+      		print 'ERROR! unrecognized platform.  Twonk.'
+
+#end configure.py
diff --git a/darwin64.py b/darwin64.py
new file mode 100644
index 0000000000000000000000000000000000000000..e56f8de0a01ba7082b6708349d6f4931cb15af85
--- /dev/null
+++ b/darwin64.py
@@ -0,0 +1,42 @@
+import platform
+import os
+
+def config(env,args):
+
+	debug = args.get('debug',0)
+	standalone = args.get('standalone',0)
+	cppcheck = args.get('cppcheck',0)
+	checkheaders = args.get('checkheaders',0)
+
+	if int(debug):
+		env.Append(CXXFLAGS = '-g -O0')
+	else:	
+		env.Append(CXXFLAGS = '-O')
+		env.Append(CPPDEFINES= '-DNDEBUG')
+
+	if int(standalone):
+		env.Append(STANDALONE= '1')
+
+	if int(cppcheck):
+		env.Append(CPPCHECK= '1')
+	
+	if int(checkheaders):
+		env.Append(CHECKHEADERS= '1')
+
+	#env.Append(CXXFLAGS = '-Wall -Woverloaded-virtual -pthread -rdynamic')
+	env.Append(CXXFLAGS = '-Wall -Woverloaded-virtual -pthread')
+	env.Append(CPPDEFINES = '-DMACVERS')
+
+	cxxversion = env.subst('$CXXVERSION')
+
+#	if float(cxxversion[0:2])>=4.0:
+#			env.Append(CXXFLAGS = '-Wextra -Wno-missing-field-initializers')
+	
+	if float(cxxversion[0:2])>=3.0:
+			env.Append(CPPDEFINES = '-DHAS_SSTREAM')
+	
+	env['SHLINKFLAGS'] = '$LINKFLAGS -shared -Wl,-undefined,dynamic_lookup'
+	env['SHLIBSUFFIX'] = '.so'
+
+
+#end darwin64.py
diff --git a/docs/doc_footer.html b/docs/doc_footer.html
new file mode 100755
index 0000000000000000000000000000000000000000..2f394e0d01a9e510b96c79abc1e526e75f44c9ae
--- /dev/null
+++ b/docs/doc_footer.html
@@ -0,0 +1,10 @@
+<br />
+<!--SIGNATURE-->
+<div id="footer">
+<em>&raquo; Author: %AUTHOR% </em><em>&raquo; Copyright  %COPYRIGHT%</em><br />
+<em>&raquo; Last changed: %CHANGED% </em><em>&raquo; Last generated: %GENERATED%</em><br />
+<em>This page has been automatically generated.</em>
+</div>
+</div>
+</body>
+</html>
diff --git a/docs/doc_header.html b/docs/doc_header.html
new file mode 100755
index 0000000000000000000000000000000000000000..e65ee75bce674656acf7468430cdda31c174e86f
--- /dev/null
+++ b/docs/doc_header.html
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<!--                                             -->
+<!-- Author: ROOT team (rootdev@pcroot.cern.ch)  -->
+<!--                                             -->
+<!--   Date: %DATE%            -->
+<!--                                             -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=%CHARSET%" />
+<title>%TITLE%</title>
+<meta name="rating" content="General" />
+<meta name="objecttype" content="Manual" />
+<meta name="keywords" content="jlab, cebaf, Hall C, SHMS, HMS" />
+<meta name="description" content="Hall C ROOT/C++ Analyzer." />
+<link rel="stylesheet" type="text/css" href="%RELDIR%ROOT.css" id="ROOTstyle" />
+<script type="text/javascript" src="%RELDIR%ROOT.js"></script>
+</head>
+<body  onload="javascript:SetValuesFromCookie();"><div id="body_content">
+<div><center><img src="https://hallcweb.jlab.org/HallC-logo.png" alt="Hall C logo"/></center></div>
diff --git a/docs/makehtmldoc.C b/docs/makehtmldoc.C
new file mode 100644
index 0000000000000000000000000000000000000000..4477e4efe462b4882a8f9fb9b42e610c0d1339f9
--- /dev/null
+++ b/docs/makehtmldoc.C
@@ -0,0 +1,25 @@
+// Generate some autodoc pages by running
+// ../hcana makehtmldoc.C
+makehtmldoc() {
+ THtml html;
+ // Enable the "viewVC header" and "viewVC source" links to work
+ // But will only work for hcana classes.  Links will be broken for
+ // THa classes.
+ // Could probably go through all the THa*.html files that are created
+ // and fix these links, but would need to know the podd branch we are on.
+ html.SetViewCVS("https://github.com/JeffersonLab/hcana/tree/develop/");
+ html.SetProductName("Hall C Analysis Code HCANA");
+ html.SetSourceDir("..:../podd");
+ html.SetIncludePath("..");
+ html.SetHeader("doc_header.html");
+ html.SetFooter("doc_footer.html");
+ // Create documentation pages for all Classes, hcana and podd
+ html.MakeAll();
+ // Remake the index to list only hcana Classes.  Since the
+ // THa Class document pages were made, we can still click through to
+ // the THa classes
+ html.MakeIndex("THc");
+}
+//
+// To install, do
+// rsync -a -e ssh htmldoc/ jlabl1:/group/hallc/www/hallcweb/html/hcanadoc/
diff --git a/examples/DBASE/jan05.kinematics b/examples/DBASE/jan05.kinematics
new file mode 100644
index 0000000000000000000000000000000000000000..4afe3706dbe2d574dde41ec81e8ef16bd9bf8e45
--- /dev/null
+++ b/examples/DBASE/jan05.kinematics
@@ -0,0 +1,7374 @@
+; Start file for kinematics 
+;  
+; Standard location for the parameters:
+;   gtarg_num == an integer is the array index to select from arrays
+;                gtarg_z,gtarg_mass,gtarg_thick,gtarg_dens which
+;                are set in PARAM/gtarget.param
+;
+;   gpbeam == Beam momentum (GeV/c)
+;   htheta_lab == HMS central angle (deg)
+;   hpcentral == HMS central momentum (GeV/C)
+;   hpartmass == mass (GeV) of particle scattering into HMS
+;   stheta_lab == HMS central angle (deg)
+;   spcentral == HMS central momentum (GeV/C)
+;   spartmass == mass (GeV) of particle scattering into HMS
+;
+;  NOTE: Setting hpartmass=spartmass=electron mass for all runs by default
+;        Setting energy to 5.0 or 5.75 for june/july and fall running
+;        Change these for individual runs if necessary.
+;
+; stheta_lab == spcentral == 999 (SOS not used)
+; gtarg_num == 77 (Copper)
+; if Angle = 999 (it means that HMS or SOS was not used)
+;
+; **************************************
+; *** DEFAULT VALUE FOR PARICLE MASS ***
+; **************************************
+ 
+
+1-99999
+gpbeam=999
+gtarg_num = 999
+htheta_lab = 999
+stheta_lab = 999
+hpcentral = 999
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+50017
+gtarg_num = 17
+gpbeam    = 4.021
+hpcentral = 2.074
+htheta_lab = 19.99
+spcentral = 1.73
+stheta_lab = 32.32
+hpartmass = 0.139570
+spartmass = 0.000511
+ 
+52426
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.555
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52427
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.555
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52428
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.555
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52429
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.555
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52430
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 3.736
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52431
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 3.736
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52432
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 3.736
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52433
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 3.736
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52434
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 2.552
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52435
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 2.552
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52436
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 2.552
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52437
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 2.552
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52438
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.743
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52439
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.743
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52440
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.743
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52441
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.743
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52442
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.190
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52443
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.190
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52444
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.190
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52445
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.190
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52446
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.813
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52447
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.813
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52448
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.813
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52449
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.813
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52451
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.743
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52452
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.743
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52453
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.743
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52454
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.743
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+  
+52455
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.190
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52456
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.190
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52457
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.190
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52458
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 1.190
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52459
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.813
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52460
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.813
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52461
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.813
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52462
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.813
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52464
+gpbeam=5.765
+gtarg_num = 6
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.555
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52465
+gpbeam=5.765
+gtarg_num = 2
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.555
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52466
+gpbeam=5.765
+gtarg_num = 9
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.555
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52467
+gpbeam=5.765
+gtarg_num = 7
+htheta_lab = 10.63
+stheta_lab = 999
+hpcentral = 0.555
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+   
+52531 
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52532
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52533 
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+ 
+52535 
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52536 
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+ 
+52537
+gpbeam=4.629 
+gtarg_num = 11
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52538
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52539 
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52540 
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52541 
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52542
+gpbeam=4.629 
+gtarg_num = 11
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+ 
+52544
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52545 
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52546 
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52547 
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52548 
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52549 
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52550
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52551
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+  
+52552
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+  
+52553
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+  
+52554
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52555
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+  
+52556 
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52557
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52558
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52559
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52560
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 999
+hpcentral = 2.0
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52562
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 10.65
+stheta_lab = 30.01
+hpcentral = 4.2
+spcentral = 1.0
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52563
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 10.65
+stheta_lab = 30.01
+hpcentral = 4.2
+spcentral = 1.0
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52564
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 10.65
+stheta_lab = 30.01
+hpcentral = 4.2
+spcentral = 1.0
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52565
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 10.65
+stheta_lab = 30.01
+hpcentral = 4.2
+spcentral = 1.0
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52566
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 10.65
+stheta_lab = 30.01
+hpcentral = 4.2
+spcentral = 1.0
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52567
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 10.65
+stheta_lab = 30.01  
+hpcentral = 4.2
+spcentral = 1.0
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52568
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 4.2
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52569
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 4.2
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52570
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 4.2
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52571
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 4.2
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52572
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 4.2
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52573
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 4.2
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52574
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52575
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52576
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52577
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52578
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52579
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999 
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52580
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999 
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52581
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999 
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52582
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999 
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52583
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52584
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52585
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52586
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52587
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52588
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52589
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.696
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52593
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 10.66
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52594
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 10.66
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52595
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 10.66
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52596
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 10.66
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52598
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 10.66
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52599
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 10.66
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52602
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52603
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52605
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52606
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52607
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52608
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52609
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52610
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52611
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52612
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52613
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52614
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52617
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 20.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52618
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52619
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52620
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52621
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52622
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52623
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52624
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 3.252
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52625
+gpbeam=4.629
+gtarg_num = 11
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52626
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52627
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52629
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52630
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 25.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52631
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 20.01
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52632
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 20.01
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52633
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.01
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52634
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 20.01
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52635
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.01
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52636
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52637
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52638
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52639
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52640
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 16.0
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52641
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52642
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52643
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52644
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 10.65
+stheta_lab = 999
+hpcentral = 2.862
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52656
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 10.65
+stheta_lab = 25.01
+hpcentral = 2.862
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52657
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 16.005
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52658
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 16.005
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52659
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 16.005
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52660
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 16.005
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52661
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 16.005
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52662
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 16.005
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52663
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 16.005
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52664
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 20.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52665
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52666
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52667
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52668
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52669
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52670
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52671
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52672
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52673
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.519
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52674
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.216
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52675
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.216
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52676
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.216
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52677
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 25.00
+stheta_lab = 25.01
+hpcentral = 2.216
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52678
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.01
+stheta_lab = 25.01
+hpcentral = 2.216
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52679
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 20.01
+stheta_lab = 25.01
+hpcentral = 2.216
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52680
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.01
+stheta_lab = 25.01
+hpcentral = 2.216
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52681
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 20.01
+stheta_lab = 25.01
+hpcentral = 2.216
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52682
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 25.01
+stheta_lab = 25.01
+hpcentral = 1.95
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52683
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 25.01
+stheta_lab = 25.01
+hpcentral = 1.95
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52684
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 25.01
+stheta_lab = 25.01
+hpcentral = 1.95
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52685
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 25.01
+stheta_lab = 25.01
+hpcentral = 1.95
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52686
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 25.01
+stheta_lab = 25.01
+hpcentral = 1.95
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52687
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52688
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52689
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52690
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52691
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52692
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52694
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52695
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52696
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52697
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52698
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 25.01
+hpcentral = 2.0
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52699
+gpbeam=4.629
+gtarg_num = 15
+htheta_lab = 13.0
+stheta_lab = 25.01
+hpcentral = 4.050
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52700
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 13.0
+stheta_lab = 25.01
+hpcentral = 4.050
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52701
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 13.0
+stheta_lab = 25.01
+hpcentral = 4.050
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52702
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 13.0
+stheta_lab = 25.01
+hpcentral = 4.050
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52703
+gpbeam=4.629
+gtarg_num = 17
+htheta_lab = 13.0
+stheta_lab = 25.01
+hpcentral = 4.050
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52704
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 13.0
+stheta_lab = 25.01
+hpcentral = 3.483
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52705
+gpbeam=4.629
+gtarg_num = 3
+htheta_lab = 13.0
+stheta_lab = 25.01
+hpcentral = 3.483
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52706
+gpbeam=4.629
+gtarg_num = 4
+htheta_lab = 13.0
+stheta_lab = 25.01
+hpcentral = 3.483
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52710
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 14.0
+stheta_lab = 999
+hpcentral = 3.2
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52711
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 14.0
+stheta_lab = 999
+hpcentral = 3.2
+spcentral = 999
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52714
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52715
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52716
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52718
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52719
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52720
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52721
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52722
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52723
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52726
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52727
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 3.2
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52731
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52732
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52733
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52734
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52735
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52736
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52737
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52738
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52739
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52740
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 35.99
+hpcentral = 2.752
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52741
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52742
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52743
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52744
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52745
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 14.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52747
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 20.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52748
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 20.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52749
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 20.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52750
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 20.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52751
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 28.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52752
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 28.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52753
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 28.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52754
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 28.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52755
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 28.0
+stheta_lab = 35.99
+hpcentral = 2.367
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52756
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52757
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52758
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52759
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52760
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52761
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 14.005
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52762
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 20.00
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52763
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52764
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52765
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52766
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 20.00
+stheta_lab = 35.99
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52767
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52768
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52770
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52771
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 28.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52772
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 28.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52774
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 28.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52777
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52779
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52781
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52782
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52783
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52784
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52785
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52787
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52788
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52789
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52790
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 28.00
+hpcentral = 2.035
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52794
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52796
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52798
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52799
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52801
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52804
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 28.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52805
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 28.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52806
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 28.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52807
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52808
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52809
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52810
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 19.99
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52811
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52813
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 14.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52814
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 14.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52815
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 14.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52816
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 14.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52817
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 14.00
+stheta_lab = 45.01
+hpcentral = 1.750
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52818
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 14.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52819
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 14.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52820
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 14.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52822
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 14.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52823
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 14.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52824
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 20.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52825
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52826
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52827
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 20.00
+stheta_lab = 40.01
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52829
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52830
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52832
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 28.00
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52833
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 28.00
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52834
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 28.00
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52835
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 35.99
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52836
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 35.99
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52837
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 35.99
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52840
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 35.99
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52841
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 35.99
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52843
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 35.99
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52844
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 35.99
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52845
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 40.00
+stheta_lab = 25.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52846
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 40.00
+stheta_lab = 28.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52847
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 40.00
+stheta_lab = 28.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52848
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 40.00
+stheta_lab = 28.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52849
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 40.00
+stheta_lab = 28.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52850
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 40.00
+stheta_lab = 28.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52851
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 40.00
+stheta_lab = 28.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+52852
+gpbeam=3.489
+gtarg_num = 11
+htheta_lab = 40.00
+stheta_lab = 28.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+52853
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 40.00
+stheta_lab = 28.00
+hpcentral = 1.505
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52855
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 1.295
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52857
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 1.295
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52858
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 1.295
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52859
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 1.295
+spcentral = 1.2
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52860
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52861
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+
+52862
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52863
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52864
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52866
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52867
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52868
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52869
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52870
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52871
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 36.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52872
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52873 
+gpbeam=3.489
+gtarg_num =3 
+htheta_lab = 28.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52874
+gpbeam=3.489
+gtarg_num =3 
+htheta_lab = 28.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52875
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 28.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52876
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 28.00
+stheta_lab = 40.00
+hpcentral = 1.295
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52877
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 36.00
+stheta_lab = 45.00
+hpcentral = 1.113
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52878
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 36.00
+stheta_lab = 45.00
+hpcentral = 1.113
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52879
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 36.00
+stheta_lab = 45.00
+hpcentral = 1.113
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52880
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 36.00
+stheta_lab = 45.00
+hpcentral = 1.113
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52881
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 40.00
+stheta_lab = 45.00
+hpcentral = 1.113
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52882
+gpbeam=3.489
+gtarg_num = 3
+htheta_lab = 40.00
+stheta_lab = 45.00
+hpcentral = 1.113
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52883
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 40.00
+stheta_lab = 45.00
+hpcentral = 1.113
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52884
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 40.00
+stheta_lab = 45.00
+hpcentral = 1.113
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52888
+gpbeam=3.489
+gtarg_num = 3 
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 0.9679
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52889
+gpbeam=3.489
+gtarg_num = 4
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 0.9679
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52890
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 0.9679
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52891
+gpbeam=3.489
+gtarg_num = 17
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 0.9679
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52892
+gpbeam=3.489
+gtarg_num = 15
+htheta_lab = 40.00
+stheta_lab = 40.00
+hpcentral = 0.9679
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52896
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52897
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52898
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52899
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52900
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52901
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52902
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52905
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52906
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52908
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 22.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52909
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 22.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52910
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 22.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52911
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 22.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52912
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 19.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52913
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 19.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52914
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 19.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52915
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 16.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52916
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 16.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52917
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 16.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52918
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 16.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52919
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 16.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52920
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 16.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52921
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 16.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52922
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 13.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52923
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 13.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52924
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 13.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52925
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 13.00
+stheta_lab = 70.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52926
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.78
+stheta_lab = 55.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52927
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.78
+stheta_lab = 55.00
+hpcentral = 1.150
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52928
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 44.99
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52929
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 44.99
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52930
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 44.99
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52931
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 44.99
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52932
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 44.99
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52933
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 28
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52934
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52935
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 22
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52936
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 22
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52937
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 22
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52938
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 22
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52939
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 19
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52940
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 16
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52941
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 16
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52942
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 16
+stheta_lab = 55.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52943
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 13
+stheta_lab = 45.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52944
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 13
+stheta_lab = 45.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52945
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 13
+stheta_lab = 45.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52946
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 13
+stheta_lab = 45.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52947
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.81
+stheta_lab = 45.00
+hpcentral = 0.966
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52948
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 55
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52949
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 55
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52951
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 55
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52953
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 55
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52954
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 55
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52955
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 45
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52956
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 45
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52957
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 45
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52958
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 45
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52959
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 45
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52960
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 27.99 
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52961
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 21.99 
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52962
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 21.99 
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52963
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 21.99 
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52964
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 21.99 
+stheta_lab = 45.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52965
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 18.99 
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52966
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 16.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52967
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 16.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52968
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 16.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52969
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 13.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52970
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 13.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52971
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 13.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+52973
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 13.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52974
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 13.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52975
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 13.00
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52976
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.78
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52977
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.78
+stheta_lab = 28.00
+hpcentral = 0.811
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52979
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 70.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52986
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 70.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52988
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 70.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52989
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 70.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52990
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 70.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52991
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 70.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52992
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 55.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52993
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 55.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52994
+gpbeam=1.2048
+gtarg_num = 3				 
+htheta_lab = 55.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52995
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 55.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52996
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 55.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52997
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 55.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52998
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+52999
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53000
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53001
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53002
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53003
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 45.00
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53004
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 27.99
+stheta_lab = 28.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53005
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 22.00
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53006
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 22.00
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53007
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 22.00
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53008
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 22.00
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53009
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 22.00
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53010
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 19.00
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53011
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 16.01
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53013
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 16.01
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53014
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 16.01
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53015
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 13.01
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53016
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 13.01
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53017
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 13.01
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53018
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 13.01
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53019
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.81
+stheta_lab = 25.00
+hpcentral = 0.682
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53020
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 70.01
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53021
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 70.01
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53022
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 70.01
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53023
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 70.01
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53024
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 70.01
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53025
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 54.99
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53026
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 55.00
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53027
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 54.99
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53028
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 54.99
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53029
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 54.99
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53030
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 45.00
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53031
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 45.00
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53032
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 45.00
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53033
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53034
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 45.00
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53035
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 28.00
+stheta_lab = 55.00
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53037
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 22.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53038
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 22.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53039
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 22.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53040
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 22.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53041
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 19.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53042
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 16.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53044
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 16.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53045
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 16.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53046
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 13.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53047
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 13.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53048
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 13.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53049
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 13.00
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53050
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.80
+stheta_lab = 45.02
+hpcentral = 0.573
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53051
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 55.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53052
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 55.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53053
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 55.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+ 
+53054
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 55.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53055
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 55.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53056
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 55.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53057
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 70.02
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53058
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 70.02
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53059
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 70.02
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53060
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 45.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53061
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 45.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53062
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 45.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53063
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 45.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53064
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 45.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53065
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 45.0
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53066
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 27.99
+stheta_lab = 28.03
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53067
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 22.00
+stheta_lab = 69.92
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53068
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 22.00
+stheta_lab = 69.92
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53069
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 22.00
+stheta_lab = 69.92
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53070
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 22.00
+stheta_lab = 69.92
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53071
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 19.00
+stheta_lab = 69.92
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53072
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 16.00
+stheta_lab = 69.92
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53073
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 16.00
+stheta_lab = 69.92
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53074
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 16.00
+stheta_lab = 69.92
+hpcentral = 0.481
+spcentral = 0.7
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53075
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 13.01
+stheta_lab = 55.03
+hpcentral = 0.481
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53076
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 13.01
+stheta_lab = 55.03
+hpcentral = 0.481
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53077
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 13.01
+stheta_lab = 55.03
+hpcentral = 0.481
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53078
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 13.01
+stheta_lab = 55.03
+hpcentral = 0.481
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53079
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.81
+stheta_lab = 55.03
+hpcentral = 0.481
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53080
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 55.0
+stheta_lab = 55.03
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53081
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 55.0
+stheta_lab = 55.03
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53082
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 55.0 
+stheta_lab = 55.03
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53084
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 55.0
+stheta_lab = 55.03
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53085
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 45
+stheta_lab = 45.00
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53086
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 45
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53087
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 45   
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53088
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 45
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53089
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 45
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53090
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 45
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53091
+gpbeam=1.2048
+gtarg_num = 3
+htheta_lab = 45
+stheta_lab = 45.00
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53092
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 45
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53093
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 13.00
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53094
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 13.00
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53095
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 13.00
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53096
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 13.00
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53098
+gpbeam=1.2048
+gtarg_num = 4
+htheta_lab = 10.80
+stheta_lab = 45.01
+hpcentral = 0.404
+spcentral = 0.9
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53100
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 20.00
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53101
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53103
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53104
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 20.00
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53105
+gpbeam=1.2048
+gtarg_num = 11
+htheta_lab = 25.00
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53106
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 25.00
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53107
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 38.51
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53108
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 38.51
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53109
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 38.51
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53110
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 38.51
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53111
+gpbeam=1.2048
+gtarg_num = 17
+htheta_lab = 33.03
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53112
+gpbeam=1.2048
+gtarg_num = 15
+htheta_lab = 33.03
+stheta_lab = 55.03
+hpcentral = 1.07
+spcentral = 0.5
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53136
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 20.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53138
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53139
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53140
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53142
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53143
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53144
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53153
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53154
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53155
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53156
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 2.00
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53157
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.72
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53165
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.72
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53166
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.72
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53167
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.72
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53168
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.72
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53169
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53170
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53171
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53172
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53174
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53176
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53177
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53178
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53180
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53181
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53182
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.0
+stheta_lab = 45.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53183
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53184
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53185
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53186
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53187
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.479
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53188
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 20.01
+stheta_lab = 45.00
+hpcentral = 1.272
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53189
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 20.01
+stheta_lab = 45.00
+hpcentral = 1.272
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53190
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 20.01
+stheta_lab = 45.00
+hpcentral = 1.272
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53191
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 20.01
+stheta_lab = 45.00
+hpcentral = 1.272
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53192
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 20.01
+stheta_lab = 45.00
+hpcentral = 1.272
+spcentral = 0.479
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53193
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53194
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53195
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53196
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53197
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53198
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53199
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53200
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53201
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53202
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53203
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53204
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53205
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 1.272
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53207
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53208
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53209
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53210
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53211
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53212
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53213
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53214
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53215
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53216
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53217
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53218
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 60.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53219
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53220
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53221
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53222
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 45.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.0005109
+
+53223
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 60.00
+stheta_lab = 45.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53224
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 60.00
+stheta_lab = 45.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53225
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 60.00
+stheta_lab = 45.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53226
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 60.00
+stheta_lab = 45.00
+hpcentral = 1.094
+spcentral = 0.557
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53227
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53228
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 19.99
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53229
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53230
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53231
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53232
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53233
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53234
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53235
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53236
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53237
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53238
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53239
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53240
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53241
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53242
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53243
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53244
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53245-53246
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53247-53248
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.941
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53249
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 19.99
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53250
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 19.99
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53251
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 19.99
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53252
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 19.99
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53253
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53254
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53255
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53256
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53257
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53258
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53259
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53260
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53261
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53262
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 45.00
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53263
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 59.99
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53264
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 59.99
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53265
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 59.99
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53266
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 59.99
+stheta_lab = 70.00
+hpcentral = 0.809
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53267
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 59.99
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53269
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53270
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 20.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53271
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 20.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53272
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 20.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53273
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53275
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 20.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53278
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 30.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53279
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 30.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53280
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 30.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53281
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 30.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53282
+gpbeam=2.347
+gtarg_num = 11
+htheta_lab = 30.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53283
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 30.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53284
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53287
+gpbeam=2.347
+gtarg_num = 15
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53288
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53290
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53291
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 45.01
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53292
+gpbeam=2.347
+gtarg_num = 4
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53294
+gpbeam=2.347
+gtarg_num = 3
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53295
+gpbeam=2.347
+gtarg_num = 17
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53296
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 60.00
+stheta_lab = 70.00
+hpcentral = 0.696
+spcentral = 0.647
+hpartmass = 0.00051099
+spartmass = 0.00051099
+
+53297
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 60.00
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53298
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 60.00
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53299
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 60.00
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53300
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 60.00
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53301
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 45.005
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53302
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 45.005
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53303
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 45.005
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53304
+gpbeam=2.348
+gtarg_num = 11
+htheta_lab = 45.005
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53305
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 45.005
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53307
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 29.99
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53308-53309
+gpbeam=2.348
+gtarg_num = 11
+htheta_lab = 29.99
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53310-53311
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 29.99
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53312-53313
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 29.99
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53314
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 29.99
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53315
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 19.995
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53316
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 19.995
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53317
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 19.995
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53318
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 19.995
+hpcentral = 0.598
+hpartmass = 0.00051099
+
+53320
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 30.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53321
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 30.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53322
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 30.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53324
+gpbeam=2.348
+gtarg_num = 11
+htheta_lab = 30.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53325
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 30.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53326
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 45.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53327
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 45.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53328-53330
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 45.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53331
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 45.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53332-53334
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 60.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53335
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 60.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53336
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 60.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53337-53338
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 60.00
+hpcentral = 0.515
+hpartmass = 0.00051099
+
+53339
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 60.00
+hpcentral = 0.443
+hpartmass = 0.00051099
+
+53340
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 60.00
+hpcentral = 0.443
+hpartmass = 0.00051099
+
+53341
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 60.00
+hpcentral = 0.443
+hpartmass = 0.00051099
+
+53342-53344
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 60.00
+hpcentral = 0.443
+hpartmass = 0.00051099
+
+53345
+gpbeam=2.348
+gtarg_num = 4
+htheta_lab = 45.00
+hpcentral = 0.443
+hpartmass = 0.00051099
+
+53346
+gpbeam=2.348
+gtarg_num = 3
+htheta_lab = 45.00
+hpcentral = 0.443
+hpartmass = 0.00051099
+
+53347
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 45.00
+hpcentral = 0.443
+hpartmass = 0.00051099
+
+53348-53349
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 45.00
+hpcentral = 0.443
+hpartmass = 0.00051099
+
+53351
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 45.00
+hpcentral = 0.5
+hpartmass = 0.00051099
+
+53353
+gpbeam=2.348
+gtarg_num = 15			
+htheta_lab = 30.00
+hpcentral = 0.5
+hpartmass = 0.00051099
+
+53354
+gpbeam=2.348
+gtarg_num = 17			
+htheta_lab = 30.00
+hpcentral = 0.5
+hpartmass = 0.00051099
+
+53355
+gpbeam=2.348
+gtarg_num = 3			
+htheta_lab = 30.00
+hpcentral = 0.5
+hpartmass = 0.00051099
+
+53356
+gpbeam=2.348
+gtarg_num = 4			
+htheta_lab = 30.00
+hpcentral = 0.5
+hpartmass = 0.00051099
+
+53357
+gpbeam=2.348			
+gtarg_num = 4			
+htheta_lab = 20.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53358
+gpbeam=2.348
+gtarg_num = 3			
+htheta_lab = 20.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53359
+gpbeam=2.348
+gtarg_num = 17			
+htheta_lab = 20.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53360
+gpbeam=2.348
+gtarg_num = 15			
+htheta_lab = 20.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53361
+gpbeam=2.348
+gtarg_num = 15			               
+htheta_lab = 30.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53362
+gpbeam=2.348
+gtarg_num = 17			
+htheta_lab = 30.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53363
+gpbeam=2.348
+gtarg_num = 3			
+htheta_lab = 30.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53364
+gpbeam=2.348
+gtarg_num = 4			
+htheta_lab = 30.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53365
+gpbeam=2.348
+gtarg_num = 4			               
+htheta_lab = 45.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53366
+gpbeam=2.348
+gtarg_num = 3			               
+htheta_lab = 45.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53367
+gpbeam=2.348
+gtarg_num = 17			
+htheta_lab = 45.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53368
+gpbeam=2.348
+gtarg_num = 17			
+htheta_lab = 45.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53369
+gpbeam=2.348
+gtarg_num = 15			
+htheta_lab = 45.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53370
+gpbeam=2.348
+gtarg_num = 15			
+htheta_lab = 60.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53371
+gpbeam=2.348
+gtarg_num = 17			
+htheta_lab = 60.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53372
+gpbeam=2.348
+gtarg_num = 3			
+htheta_lab = 60.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53373
+gpbeam=2.348
+gtarg_num = 4			
+htheta_lab = 60.00
+hpcentral = 0.625
+hpartmass = 0.00051099
+
+53374
+gpbeam=2.348
+gtarg_num = 4			
+htheta_lab = 60.00
+hpcentral = 0.78
+hpartmass = 0.00051099
+
+53375
+gpbeam=2.348
+gtarg_num = 3			
+htheta_lab = 60.00
+hpcentral = 0.78
+hpartmass = 0.00051099
+
+53376
+gpbeam=2.348
+gtarg_num = 17			
+htheta_lab = 60.00
+hpcentral = 0.78
+hpartmass = 0.00051099
+
+53377
+gpbeam=2.348
+gtarg_num = 15			
+htheta_lab = 60.00
+hpcentral = 0.78
+hpartmass = 0.00051099
+
+53378
+gpbeam=2.348
+gtarg_num = 15			
+htheta_lab = 45.00
+hpcentral = 0.78
+hpartmass = 0.00051099
+
+53379
+gpbeam=2.348
+gtarg_num = 17			
+htheta_lab = 45.00
+hpcentral = 0.78
+hpartmass = 0.00051099
+
+53380
+gpbeam=2.348
+gtarg_num = 3			
+htheta_lab = 45.00
+hpcentral = 0.78
+hpartmass = 0.00051099
+
+53381
+gpbeam=2.348
+gtarg_num = 4			
+htheta_lab = 45.00
+hpcentral = 0.78
+hpartmass = 0.00051099
+
+53382
+gpbeam=2.348
+gtarg_num = 4			
+htheta_lab = 29.985
+hpcentral = 0.78
+hpartmass = 0.00051099
+ 
+53385
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 19.00
+hpcentral = 2.28
+hpartmass = 0.00051099
+
+53386
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 19.00
+hpcentral = 2.28
+hpartmass = 0.00051099
+
+53387
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 19.00
+hpcentral = 2.28
+hpartmass = 0.00051099
+
+53388
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 13.00
+hpcentral = 2.28
+hpartmass = 0.00051099
+
+53389
+gpbeam=2.348
+gtarg_num = 11
+htheta_lab = 13.00
+hpcentral = 2.28
+hpartmass = 0.00051099
+
+53390
+gpbeam=2.348
+gtarg_num = 11
+htheta_lab = 15.00
+hpcentral = 2.24
+hpartmass = 0.00051099
+
+53391
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 15.00
+hpcentral = 2.24
+hpartmass = 0.00051099
+
+53392
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 21.50
+hpcentral = 2.24
+hpartmass = 0.00051099
+
+53393
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 21.50
+hpcentral = 2.24
+hpartmass = 0.00051099
+
+53394
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 21.50
+hpcentral = 2.24
+hpartmass = 0.00051099
+
+53395
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 21.50
+hpcentral = 2.24
+hpartmass = 0.00051099
+
+53396
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 24.00
+hpcentral = 2.20
+hpartmass = 0.00051099
+
+53397
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 24.00
+hpcentral = 2.20
+hpartmass = 0.00051099
+
+53398
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 24.00
+hpcentral = 2.20
+hpartmass = 0.00051099
+
+53399
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 24.00
+hpcentral = 2.20
+hpartmass = 0.00051099
+
+53400
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 17.00
+hpcentral = 2.20
+hpartmass = 0.00051099
+
+53401
+gpbeam=2.348
+gtarg_num = 11
+htheta_lab = 17.00
+hpcentral = 2.20
+hpartmass = 0.00051099
+
+53402
+gpbeam=2.348
+gtarg_num = 11
+htheta_lab = 18.00
+hpcentral = 2.15
+hpartmass = 0.00051099
+
+53403
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 18.00
+hpcentral = 2.15
+hpartmass = 0.00051099
+
+53404
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 26.5
+hpcentral = 2.15
+hpartmass = 0.00051099
+
+53405
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 26.5
+hpcentral = 2.15
+hpartmass = 0.00051099
+
+53406
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 26.5
+hpcentral = 2.15
+hpartmass = 0.00051099
+
+53407
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 26.5
+hpcentral = 2.15
+hpartmass = 0.00051099
+
+53408
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 26.5
+hpcentral = 2.15
+hpartmass = 0.00051099
+
+53409
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 26.5
+hpcentral = 2.15
+hpartmass = 0.00051099
+
+53410
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 30.0
+hpcentral = 2.09
+hpartmass = 0.00051099
+
+53411
+gpbeam=2.348
+gtarg_num = 15
+htheta_lab = 30.0
+hpcentral = 2.09
+hpartmass = 0.00051099
+
+53412
+gpbeam=2.348
+gtarg_num = 17
+htheta_lab = 30.0
+hpcentral = 2.09
+hpartmass = 0.00051099
+
+53414
+gpbeam=2.348
+gtarg_num = 11
+htheta_lab = 21.5
+hpcentral = 2.09
+hpartmass = 0.00051099
diff --git a/examples/DBASE/raster_test.database b/examples/DBASE/raster_test.database
new file mode 100644
index 0000000000000000000000000000000000000000..76fef1a57294cfe9dbdcee523afd6367dc232077
--- /dev/null
+++ b/examples/DBASE/raster_test.database
@@ -0,0 +1,840 @@
+# ENGINE style parameter vs. run number database
+# buddhini - coppied from test.database to setup the raster decoding.
+# 
+50017
+g_ctp_parm_filename ="PARAM/general.param"
+g_decode_map_filename ="MAPS/raster_jun04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52947
+g_ctp_parm_filename ="PARAM/general.param"
+g_decode_map_filename ="MAPS/raster_jun04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52426
+g_ctp_parm_filename ="DBASE/52426.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52427
+g_ctp_parm_filename ="DBASE/52427.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52428
+g_ctp_parm_filename ="DBASE/52428.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52429
+g_ctp_parm_filename ="DBASE/52429.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52430
+g_ctp_parm_filename ="DBASE/52430.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52431
+g_ctp_parm_filename ="DBASE/52431.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52432
+g_ctp_parm_filename ="DBASE/52432.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52433
+g_ctp_parm_filename ="DBASE/52433.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52434
+g_ctp_parm_filename ="DBASE/52434.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52435
+g_ctp_parm_filename ="DBASE/52435.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52436
+g_ctp_parm_filename ="DBASE/52436.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52437
+g_ctp_parm_filename ="DBASE/52437.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52438
+g_ctp_parm_filename ="DBASE/52438.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52439
+g_ctp_parm_filename ="DBASE/52439.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52440
+g_ctp_parm_filename ="DBASE/52440.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52441
+g_ctp_parm_filename ="DBASE/52441.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52442
+g_ctp_parm_filename ="DBASE/52442.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52443
+g_ctp_parm_filename ="DBASE/52443.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52444
+g_ctp_parm_filename ="DBASE/52444.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52445
+g_ctp_parm_filename ="DBASE/52445.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52446
+g_ctp_parm_filename ="DBASE/52446.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52447
+g_ctp_parm_filename ="DBASE/52447.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52448
+g_ctp_parm_filename ="DBASE/52448.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52449
+g_ctp_parm_filename ="DBASE/52449.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52450
+g_ctp_parm_filename ="DBASE/52531.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52451
+g_ctp_parm_filename ="DBASE/52441.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52452
+g_ctp_parm_filename ="DBASE/52440.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52453
+g_ctp_parm_filename ="DBASE/52439.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52454
+g_ctp_parm_filename ="DBASE/52438.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52455
+g_ctp_parm_filename ="DBASE/52445.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52456
+g_ctp_parm_filename ="DBASE/52444.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52457
+g_ctp_parm_filename ="DBASE/52443.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52458
+g_ctp_parm_filename ="DBASE/52442.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52459
+g_ctp_parm_filename ="DBASE/52449.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52460
+g_ctp_parm_filename ="DBASE/52448.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52461
+g_ctp_parm_filename ="DBASE/52447.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52462
+g_ctp_parm_filename ="DBASE/52446.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52463
+g_ctp_parm_filename ="DBASE/52531.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52464
+g_ctp_parm_filename ="DBASE/52429.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52465
+g_ctp_parm_filename ="DBASE/52428.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52466
+g_ctp_parm_filename ="DBASE/52427.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52467
+g_ctp_parm_filename ="DBASE/52426.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52531
+g_ctp_parm_filename ="DBASE/52531.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52532
+g_ctp_parm_filename ="DBASE/52532.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52533
+g_ctp_parm_filename ="DBASE/52533.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52535
+g_ctp_parm_filename ="DBASE/52535.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52536
+g_ctp_parm_filename ="DBASE/52536.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52537
+g_ctp_parm_filename ="DBASE/52537.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52538
+g_ctp_parm_filename ="DBASE/52538.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52539
+g_ctp_parm_filename ="DBASE/52539.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52540
+g_ctp_parm_filename ="DBASE/52540.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52541
+g_ctp_parm_filename ="DBASE/52541.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52542
+g_ctp_parm_filename ="DBASE/52542.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52544
+g_ctp_parm_filename ="DBASE/52544.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52545
+g_ctp_parm_filename ="DBASE/52545.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52546
+g_ctp_parm_filename ="DBASE/52546.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52547
+g_ctp_parm_filename ="DBASE/52547.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52548
+g_ctp_parm_filename ="DBASE/52548.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52549
+g_ctp_parm_filename ="DBASE/52549.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52550
+g_ctp_parm_filename ="DBASE/52550.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52551
+g_ctp_parm_filename ="DBASE/52551.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52552
+g_ctp_parm_filename ="DBASE/52552.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52553
+g_ctp_parm_filename ="DBASE/52553.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52554
+g_ctp_parm_filename ="DBASE/52554.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52555
+g_ctp_parm_filename ="DBASE/52555.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52556
+g_ctp_parm_filename ="DBASE/52556.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52557
+g_ctp_parm_filename ="DBASE/52557.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52558
+g_ctp_parm_filename ="DBASE/52558.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52559
+g_ctp_parm_filename ="DBASE/52559.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52560
+g_ctp_parm_filename ="DBASE/52560.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52562
+g_ctp_parm_filename ="DBASE/52562.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52563
+g_ctp_parm_filename ="DBASE/52563.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52564
+g_ctp_parm_filename ="DBASE/52564.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52565
+g_ctp_parm_filename ="DBASE/52565.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52566
+g_ctp_parm_filename ="DBASE/52566.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52567
+g_ctp_parm_filename ="DBASE/52567.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52568
+g_ctp_parm_filename ="DBASE/52568.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52569
+g_ctp_parm_filename ="DBASE/52569.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52570
+g_ctp_parm_filename ="DBASE/52570.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52571
+g_ctp_parm_filename ="DBASE/52571.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52572
+g_ctp_parm_filename ="DBASE/52572.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52573
+g_ctp_parm_filename ="DBASE/52573.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52574
+g_ctp_parm_filename ="DBASE/52574.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52575
+g_ctp_parm_filename ="DBASE/52575.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52576
+g_ctp_parm_filename ="DBASE/52576.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52577
+g_ctp_parm_filename ="DBASE/52577.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52578
+g_ctp_parm_filename ="DBASE/52578.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52579
+g_ctp_parm_filename ="DBASE/52579.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52580
+g_ctp_parm_filename ="DBASE/52580.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52581
+g_ctp_parm_filename ="DBASE/52581.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52582
+g_ctp_parm_filename ="DBASE/52582.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52583
+g_ctp_parm_filename ="DBASE/52583.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52584
+g_ctp_parm_filename ="DBASE/52584.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52585
+g_ctp_parm_filename ="DBASE/52585.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52586
+g_ctp_parm_filename ="DBASE/52586.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52587
+g_ctp_parm_filename ="DBASE/52587.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52588
+g_ctp_parm_filename ="DBASE/52588.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52589
+g_ctp_parm_filename ="DBASE/52589.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52593
+g_ctp_parm_filename ="DBASE/52593.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52594
+g_ctp_parm_filename ="DBASE/52594.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52595
+g_ctp_parm_filename ="DBASE/52595.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52596
+g_ctp_parm_filename ="DBASE/52596.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52598
+g_ctp_parm_filename ="DBASE/52598.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52599
+g_ctp_parm_filename ="DBASE/52599.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52602
+g_ctp_parm_filename ="DBASE/52602.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52603
+g_ctp_parm_filename ="DBASE/52603.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52605
+g_ctp_parm_filename ="DBASE/52605.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52606
+g_ctp_parm_filename ="DBASE/52606.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52607
+g_ctp_parm_filename ="DBASE/52607.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52608
+g_ctp_parm_filename ="DBASE/52608.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52609
+g_ctp_parm_filename ="DBASE/52609.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52610
+g_ctp_parm_filename ="DBASE/52610.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52611
+g_ctp_parm_filename ="DBASE/52611.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52612
+g_ctp_parm_filename ="DBASE/52612.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52613
+g_ctp_parm_filename ="DBASE/52613.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52614
+g_ctp_parm_filename ="DBASE/52614.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52617
+g_ctp_parm_filename ="DBASE/52617.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52618
+g_ctp_parm_filename ="DBASE/52618.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52619
+g_ctp_parm_filename ="DBASE/52619.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52620
+g_ctp_parm_filename ="DBASE/52620.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52621
+g_ctp_parm_filename ="DBASE/52621.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52622
+g_ctp_parm_filename ="DBASE/52622.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52623
+g_ctp_parm_filename ="DBASE/52623.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52624
+g_ctp_parm_filename ="DBASE/52624.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52625
+g_ctp_parm_filename ="DBASE/52625.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52626
+g_ctp_parm_filename ="DBASE/52626.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52627
+g_ctp_parm_filename ="DBASE/52627.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52629
+g_ctp_parm_filename ="DBASE/52629.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52630
+g_ctp_parm_filename ="DBASE/52630.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52631
+g_ctp_parm_filename ="DBASE/52631.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52632
+g_ctp_parm_filename ="DBASE/52632.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52633
+g_ctp_parm_filename ="DBASE/52633.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52634
+g_ctp_parm_filename ="DBASE/52634.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52635
+g_ctp_parm_filename ="DBASE/52635.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52636
+g_ctp_parm_filename ="DBASE/52636.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52637
+g_ctp_parm_filename ="DBASE/52637.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52638
+g_ctp_parm_filename ="DBASE/52638.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52639
+g_ctp_parm_filename ="DBASE/52639.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52640
+g_ctp_parm_filename ="DBASE/52640.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52641
+g_ctp_parm_filename ="DBASE/52641.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52642
+g_ctp_parm_filename ="DBASE/52642.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52643
+g_ctp_parm_filename ="DBASE/52643.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52644
+g_ctp_parm_filename ="DBASE/52644.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52656
+g_ctp_parm_filename ="DBASE/52656.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52657
+g_ctp_parm_filename ="DBASE/52657.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52658
+g_ctp_parm_filename ="DBASE/52658.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52659
+g_ctp_parm_filename ="DBASE/52659.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52660
+g_ctp_parm_filename ="DBASE/52660.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52661
+g_ctp_parm_filename ="DBASE/52661.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52662
+g_ctp_parm_filename ="DBASE/52662.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52663
+g_ctp_parm_filename ="DBASE/52663.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52664
+g_ctp_parm_filename ="DBASE/52664.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52665
+g_ctp_parm_filename ="DBASE/52665.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52666
+g_ctp_parm_filename ="DBASE/52666.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52667
+g_ctp_parm_filename ="DBASE/52667.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52668
+g_ctp_parm_filename ="DBASE/52668.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52669
+g_ctp_parm_filename ="DBASE/52669.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52670
+g_ctp_parm_filename ="DBASE/52670.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52671
+g_ctp_parm_filename ="DBASE/52671.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52672
+g_ctp_parm_filename ="DBASE/52672.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52673
+g_ctp_parm_filename ="DBASE/52673.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52674
+g_ctp_parm_filename ="DBASE/52674.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52675
+g_ctp_parm_filename ="DBASE/52675.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52676
+g_ctp_parm_filename ="DBASE/52676.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52677
+g_ctp_parm_filename ="DBASE/52677.param"
+g_decode_map_filename ="HCANA_MAPS/july04.map"
+g_ctp_kinematics_filename ="DBASE/jan05.kinematics"
+
+52678
+g_ctp_parm_filename ="DBASE/52678.param"
diff --git a/examples/DBASE/test.database b/examples/DBASE/test.database
new file mode 100644
index 0000000000000000000000000000000000000000..5702b92c947dc9cd0bd16a85c953d7c5600a1a68
--- /dev/null
+++ b/examples/DBASE/test.database
@@ -0,0 +1,23 @@
+# ENGINE style parameter vs. run number database
+50017
+g_ctp_parm_filename="PARAM/general.param"
+g_decode_map_filename="MAPS/jun04.map"
+# Values taken from Logbook.  Not necessarily official.
+gpbeam    = 4.015
+hpcentral = 2.074
+htheta_lab = 10.99
+spcentral = 1.73
+stheta_lab = -32.32
+hpartmass = 0.13957
+spartmass = 0.00051099
+52949
+g_ctp_parm_filename="PARAM/52949/general.param"
+g_decode_map_filename="MAPS/july04.map"
+# From DBASE/online04.kinematics_online.
+gpbeam    = 1.2048
+hpcentral = 0.811
+htheta_lab = 55.
+hpartmass = 0.00051099
+47000-48000
+g_ctp_parm_filename="PARAM/general.param"
+g_decode_map_filename="MAPS/jan03.map"
diff --git a/examples/MAPS/jan03.map b/examples/MAPS/jan03.map
new file mode 100755
index 0000000000000000000000000000000000000000..d6bdba59e9e673608f262ab7e67a86f90fa5a9cd
--- /dev/null
+++ b/examples/MAPS/jan03.map
@@ -0,0 +1,3240 @@
+! Updated to reflect new TDC for HMS aerogel and proper mapping of misc
+! trigger signals in SOS.  Dave G (5/5/2003)
+!
+!
+       help       !lists available keywords
+       NOecho     !copies input lines to tty output
+       NOdebug    !turn on input debugging
+       override   !skip over errors
+!
+! hall C encode/decode configuration file
+! giving the FASTBUS geographical to standard
+! hall C COMMONs location as described by
+! "gen_data_structures.cmn"      K.B.Beard 13jun94
+!      10/19/94 (jra) Change ch1 roc to 8 (from 1), hms roc to 7 (from 2).
+!
+!       6/24/94 (SAW) Turn on lines for miscleaneous TDC's
+!                     Change ch1 roc to 1 (from 0), hms roc to 2 (from 1).
+!		      Disable last 16 channels of miscleaneous TDC
+!
+! standard id numbers
+!                       signals
+!HMS:
+! HDC_ID= 1               TDC
+! HSCIN_ID= 2             ADC+,ADC-,TDC+,TDC-
+! HCER_ID= 3              ADC
+! HCAL_ID= 4              ADC
+! HMISC_ID= 5             TDC,(ADC)
+!GEN:
+! GMISC_ID= 6             (TDC),ADC
+! HAERO_ID= 7             (TDC),ADC
+!SOS:
+! SDC_ID= 11              TDC
+! SSCIN_ID= 12            ADC+,ADC-,TDC+,TDC-
+! SCER_ID= 13             ADC
+! SCAL_ID= 14             ADC
+! SMISC_ID= 15            TDC,(ADC)
+! SAER_ID= 16             ADC
+! SLUC_ID=17		 ADC
+! 
+!
+!   consider subadd equiv. to channel
+!
+!  specify: subadd, plane, element, signal
+!            a,      p,     e,       s
+!            0-      1-     1-       0-3
+![if there is only signal 0 (DC,CER,CAL) it may be ommitted]
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!     HMS upstairs and downstairs map    K.B.Beard 13-Jun-1994
+!         for Jun94 run
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!      HMS downstairs (HDC) map           K.B.Beard & S.Avery 13-Jun-1994
+!					  revised by A. Johnson 4-Feb-1999	
+!   								
+! vvvvvvvvvvvvvvvvvvvvvv Wire chambers start here vvvvvvvvvvvvvvvvvvvvvvvvv
+  ROC= 2             !ReadOutController (crate) for HMS wire chambers
+!
+!
+!         TDC modules are Lecroy 1877
+    Nsubadd= 96               
+    MASK= FFFFx       !hex mask 
+    BSUB= 17           !start channel in bit#17
+!
+  detector= 1       !HDC
+!
+!                             1st HDC chamber - (2nd in position) - planes7-12  
+Slot= 2
+0, 8, 1	             !TDC ROC#2 Sl#2 Ch#0 HDC pl#8 [Y1] wire#1
+1, 8, 2              !TDC ROC#2 Sl#2 Ch#1 HDC pl#8 [Y1] wire#2
+2, 8, 3	             !TDC ROC#2 Sl#2 Ch#2 HDC pl#8 [Y1] wire#3
+3, 8, 4	             !TDC ROC#2 Sl#2 Ch#3 HDC pl#8 [Y1] wire#4
+4, 8, 5	             !TDC ROC#2 Sl#2 Ch#4 HDC pl#8 [Y1] wire#5
+5, 8, 6	             !TDC ROC#2 Sl#2 Ch#5 HDC pl#8 [Y1] wire#6
+6, 8, 7	             !TDC ROC#2 Sl#2 Ch#6 HDC pl#8 [Y1] wire#7
+7, 8, 8	             !TDC ROC#2 Sl#2 Ch#7 HDC pl#8 [Y1] wire#8
+8, 8, 9	             !TDC ROC#2 Sl#2 Ch#8 HDC pl#8 [Y1] wire#9
+9, 8, 10             !TDC ROC#2 Sl#2 Ch#9 HDC pl#8 [Y1] wire#10
+10, 8, 11            !TDC ROC#2 Sl#2 Ch#10 HDC pl#8 [Y1] wire#11
+11, 8, 12            !TDC ROC#2 Sl#2 Ch#11 HDC pl#8 [Y1] wire#12
+12, 8, 13            !TDC ROC#2 Sl#2 Ch#12 HDC pl#8 [Y1] wire#13
+!13 !TDC ROC#2 Sl#2 Ch#13 unused
+!14 !TDC ROC#2 Sl#2 Ch#14 unused
+!15 !TDC ROC#2 Sl#2 Ch#15 unused
+16, 11, 40           !TDC ROC#2 Sl#2 Ch#16 HDC pl#11 [Y2] wire#40
+17, 11, 41           !TDC ROC#2 Sl#2 Ch#17 HDC pl#11 [Y2] wire#41
+18, 11, 42           !TDC ROC#2 Sl#2 Ch#18 HDC pl#11 [Y2] wire#42
+19, 11, 43           !TDC ROC#2 Sl#2 Ch#19 HDC pl#11 [Y2] wire#43
+20, 11, 44           !TDC ROC#2 Sl#2 Ch#20 HDC pl#11 [Y2] wire#44
+21, 11, 45           !TDC ROC#2 Sl#2 Ch#21 HDC pl#11 [Y2] wire#45
+22, 11, 46           !TDC ROC#2 Sl#2 Ch#22 HDC pl#11 [Y2] wire#46
+23, 11, 47           !TDC ROC#2 Sl#2 Ch#23 HDC pl#11 [Y2] wire#47
+24, 11, 48           !TDC ROC#2 Sl#2 Ch#24 HDC pl#11 [Y2] wire#48
+25, 11, 49           !TDC ROC#2 Sl#2 Ch#25 HDC pl#11 [Y2] wire#49
+26, 11, 50           !TDC ROC#2 Sl#2 Ch#26 HDC pl#11 [Y2] wire#50
+27, 11, 51           !TDC ROC#2 Sl#2 Ch#27 HDC pl#11 [Y2] wire#51
+28, 11, 52           !TDC ROC#2 Sl#2 Ch#28 HDC pl#11 [Y2] wire#52
+!29 !TDC ROC#2 Sl#2 Ch#29 unused
+!30 !TDC ROC#2 Sl#2 Ch#30 unused
+!31 !TDC ROC#2 Sl#2 Ch#31 unused
+32, 8, 14            !TDC ROC#2 Sl#2 Ch#32 HDC pl#8 [Y1] wire#14
+33, 8, 15            !TDC ROC#2 Sl#2 Ch#33 HDC pl#8 [Y1] wire#15
+34, 8, 16            !TDC ROC#2 Sl#2 Ch#34 HDC pl#8 [Y1] wire#16
+35, 8, 17            !TDC ROC#2 Sl#2 Ch#35 HDC pl#8 [Y1] wire#17
+36, 8, 18            !TDC ROC#2 Sl#2 Ch#36 HDC pl#8 [Y1] wire#18
+37, 8, 19            !TDC ROC#2 Sl#2 Ch#37 HDC pl#8 [Y1] wire#19
+38, 8, 20            !TDC ROC#2 Sl#2 Ch#38 HDC pl#8 [Y1] wire#20
+39, 8, 21            !TDC ROC#2 Sl#2 Ch#39 HDC pl#8 [Y1] wire#21
+40, 8, 22            !TDC ROC#2 Sl#2 Ch#40 HDC pl#8 [Y1] wire#22
+41, 8, 23            !TDC ROC#2 Sl#2 Ch#41 HDC pl#8 [Y1] wire#23
+42, 8, 24            !TDC ROC#2 Sl#2 Ch#42 HDC pl#8 [Y1] wire#24
+43, 8, 25            !TDC ROC#2 Sl#2 Ch#43 HDC pl#8 [Y1] wire#25
+44, 8, 26            !TDC ROC#2 Sl#2 Ch#44 HDC pl#8 [Y1] wire#26
+!45 !TDC ROC#2 Sl#2 Ch#45 unused
+!46 !TDC ROC#2 Sl#2 Ch#46 unused
+!47 !TDC ROC#2 Sl#2 Ch#47 unused
+48, 11, 27           !TDC ROC#2 Sl#2 Ch#48 HDC pl#11 [Y2] wire#27
+49, 11, 28           !TDC ROC#2 Sl#2 Ch#49 HDC pl#11 [Y2] wire#28
+50, 11, 29           !TDC ROC#2 Sl#2 Ch#50 HDC pl#11 [Y2] wire#29
+51, 11, 30           !TDC ROC#2 Sl#2 Ch#51 HDC pl#11 [Y2] wire#30
+52, 11, 31           !TDC ROC#2 Sl#2 Ch#52 HDC pl#11 [Y2] wire#31
+53, 11, 32           !TDC ROC#2 Sl#2 Ch#53 HDC pl#11 [Y2] wire#32
+54, 11, 33           !TDC ROC#2 Sl#2 Ch#54 HDC pl#11 [Y2] wire#33
+55, 11, 34           !TDC ROC#2 Sl#2 Ch#55 HDC pl#11 [Y2] wire#34
+56, 11, 35           !TDC ROC#2 Sl#2 Ch#56 HDC pl#11 [Y2] wire#35
+57, 11, 36           !TDC ROC#2 Sl#2 Ch#57 HDC pl#11 [Y2] wire#36
+58, 11, 37           !TDC ROC#2 Sl#2 Ch#58 HDC pl#11 [Y2] wire#37
+59, 11, 38           !TDC ROC#2 Sl#2 Ch#59 HDC pl#11 [Y2] wire#38
+60, 11, 39           !TDC ROC#2 Sl#2 Ch#60 HDC pl#11 [Y2] wire#39
+!61 !TDC ROC#2 Sl#2 Ch#61 unused
+!62 !TDC ROC#2 Sl#2 Ch#62 unused
+!63 !TDC ROC#2 Sl#2 Ch#63 unused
+64, 8, 27            !TDC ROC#2 Sl#2 Ch#64 HDC pl#8 [Y1] wire#27
+65, 8, 28            !TDC ROC#2 Sl#2 Ch#65 HDC pl#8 [Y1] wire#28
+66, 8, 29            !TDC ROC#2 Sl#2 Ch#66 HDC pl#8 [Y1] wire#29
+67, 8, 30            !TDC ROC#2 Sl#2 Ch#67 HDC pl#8 [Y1] wire#30
+68, 8, 31            !TDC ROC#2 Sl#2 Ch#68 HDC pl#8 [Y1] wire#31
+69, 8, 32            !TDC ROC#2 Sl#2 Ch#69 HDC pl#8 [Y1] wire#32
+70, 8, 33            !TDC ROC#2 Sl#2 Ch#70 HDC pl#8 [Y1] wire#33
+71, 8, 34            !TDC ROC#2 Sl#2 Ch#71 HDC pl#8 [Y1] wire#34
+72, 8, 35            !TDC ROC#2 Sl#2 Ch#72 HDC pl#8 [Y1] wire#35
+73, 8, 36            !TDC ROC#2 Sl#2 Ch#73 HDC pl#8 [Y1] wire#36
+74, 8, 37            !TDC ROC#2 Sl#2 Ch#74 HDC pl#8 [Y1] wire#37
+75, 8, 38            !TDC ROC#2 Sl#2 Ch#75 HDC pl#8 [Y1] wire#38
+76, 8, 39            !TDC ROC#2 Sl#2 Ch#76 HDC pl#8 [Y1] wire#39
+!77 !TDC ROC#2 Sl#2 Ch#77 unused
+!78 !TDC ROC#2 Sl#2 Ch#78 unused
+!79 !TDC ROC#2 Sl#2 Ch#79 unused
+80, 11, 14           !TDC ROC#2 Sl#2 Ch#80 HDC pl#11 [Y2] wire#14
+81, 11, 15           !TDC ROC#2 Sl#2 Ch#81 HDC pl#11 [Y2] wire#15
+82, 11, 16           !TDC ROC#2 Sl#2 Ch#82 HDC pl#11 [Y2] wire#16
+83, 11, 17           !TDC ROC#2 Sl#2 Ch#83 HDC pl#11 [Y2] wire#17
+84, 11, 18           !TDC ROC#2 Sl#2 Ch#84 HDC pl#11 [Y2] wire#18
+85, 11, 19           !TDC ROC#2 Sl#2 Ch#85 HDC pl#11 [Y2] wire#19
+86, 11, 20           !TDC ROC#2 Sl#2 Ch#86 HDC pl#11 [Y2] wire#20
+87, 11, 21           !TDC ROC#2 Sl#2 Ch#87 HDC pl#11 [Y2] wire#21
+88, 11, 22           !TDC ROC#2 Sl#2 Ch#88 HDC pl#11 [Y2] wire#22
+89, 11, 23           !TDC ROC#2 Sl#2 Ch#89 HDC pl#11 [Y2] wire#23
+90, 11, 24           !TDC ROC#2 Sl#2 Ch#90 HDC pl#11 [Y2] wire#24
+91, 11, 25           !TDC ROC#2 Sl#2 Ch#91 HDC pl#11 [Y2] wire#25
+92, 11, 26           !TDC ROC#2 Sl#2 Ch#92 HDC pl#11 [Y2] wire#26
+!93 !TDC ROC#2 Sl#2 Ch#93 unused
+!94 !TDC ROC#2 Sl#2 Ch#94 unused
+!95 !TDC ROC#2 Sl#2 Ch#95 unused
+
+Slot= 3
+0, 8, 40             !TDC ROC#2 Sl#3 Ch#0 HDC pl#8 [Y1] wire#40
+1, 8, 41             !TDC ROC#2 Sl#3 Ch#1 HDC pl#8 [Y1] wire#41
+2, 8, 42             !TDC ROC#2 Sl#3 Ch#2 HDC pl#8 [Y1] wire#42
+3, 8, 43             !TDC ROC#2 Sl#3 Ch#3 HDC pl#8 [Y1] wire#43
+4, 8, 44             !TDC ROC#2 Sl#3 Ch#4 HDC pl#8 [Y1] wire#44
+5, 8, 45             !TDC ROC#2 Sl#3 Ch#5 HDC pl#8 [Y1] wire#45
+6, 8, 46             !TDC ROC#2 Sl#3 Ch#6 HDC pl#8 [Y1] wire#46
+7, 8, 47             !TDC ROC#2 Sl#3 Ch#7 HDC pl#8 [Y1] wire#47
+8, 8, 48             !TDC ROC#2 Sl#3 Ch#8 HDC pl#8 [Y1] wire#48
+9, 8, 49             !TDC ROC#2 Sl#3 Ch#9 HDC pl#8 [Y1] wire#49
+10, 8, 50            !TDC ROC#2 Sl#3 Ch#10 HDC pl#8 [Y1] wire#50
+11, 8, 51            !TDC ROC#2 Sl#3 Ch#11 HDC pl#8 [Y1] wire#51
+12, 8, 52            !TDC ROC#2 Sl#3 Ch#12 HDC pl#8 [Y1] wire#52
+!13 !TDC ROC#2 Sl#3 Ch#13 
+!14 !TDC ROC#2 Sl#3 Ch#14 
+!15 !TDC ROC#2 Sl#3 Ch#15 
+16, 11, 1            !TDC ROC#2 Sl#3 Ch#16 HDC pl#11 [Y2] wire#1
+17, 11, 2            !TDC ROC#2 Sl#3 Ch#17 HDC pl#11 [Y2] wire#2
+18, 11, 3            !TDC ROC#2 Sl#3 Ch#18 HDC pl#11 [Y2] wire#3
+19, 11, 4            !TDC ROC#2 Sl#3 Ch#19 HDC pl#11 [Y2] wire#4
+20, 11, 5            !TDC ROC#2 Sl#3 Ch#20 HDC pl#11 [Y2] wire#5
+21, 11, 6            !TDC ROC#2 Sl#3 Ch#21 HDC pl#11 [Y2] wire#6
+22, 11, 7            !TDC ROC#2 Sl#3 Ch#22 HDC pl#11 [Y2] wire#7
+23, 11, 8            !TDC ROC#2 Sl#3 Ch#23 HDC pl#11 [Y2] wire#8
+24, 11, 9            !TDC ROC#2 Sl#3 Ch#24 HDC pl#11 [Y2] wire#9
+25, 11, 10           !TDC ROC#2 Sl#3 Ch#25 HDC pl#11 [Y2] wire#10
+26, 11, 11           !TDC ROC#2 Sl#3 Ch#26 HDC pl#11 [Y2] wire#11
+27, 11, 12           !TDC ROC#2 Sl#3 Ch#27 HDC pl#11 [Y2] wire#12
+28, 11, 13           !TDC ROC#2 Sl#3 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#3 Ch#29 unused
+! 30 !TDC ROC#2 Sl#3 Ch#30 unused
+! 31 !TDC ROC#2 Sl#3 Ch#31 unused
+32, 10, 92           !TDC ROC#2 Sl#3 Ch#32 HDC pl#10 [V] wire#92
+33, 10, 93           !TDC ROC#2 Sl#3 Ch#33 HDC pl#10 [V] wire#93
+34, 10, 94           !TDC ROC#2 Sl#3 Ch#34 HDC pl#10 [V] wire#94
+35, 10, 95           !TDC ROC#2 Sl#3 Ch#35 HDC pl#10 [V] wire#95
+36, 10, 96           !TDC ROC#2 Sl#3 Ch#36 HDC pl#10 [V] wire#96
+37, 10, 97           !TDC ROC#2 Sl#3 Ch#37 HDC pl#10 [V] wire#97
+38, 10, 98           !TDC ROC#2 Sl#3 Ch#38 HDC pl#10 [V] wire#98
+39, 10, 99           !TDC ROC#2 Sl#3 Ch#39 HDC pl#10 [V] wire#99
+40, 10, 100          !TDC ROC#2 Sl#3 Ch#40 HDC pl#10 [V] wire#100
+41, 10, 101          !TDC ROC#2 Sl#3 Ch#41 HDC pl#10 [V] wire#101
+42, 10, 102          !TDC ROC#2 Sl#3 Ch#42 HDC pl#10 [V] wire#102
+43, 10, 103          !TDC ROC#2 Sl#3 Ch#43 HDC pl#10 [V] wire#103
+44, 10, 104          !TDC ROC#2 Sl#3 Ch#44 HDC pl#10 [V] wire#104
+45, 10, 105	     !TDC ROC#2 Sl#3 Ch#45 HDC pl#10 [V] wire#105
+46, 10, 106          !TDC ROC#2 Sl#3 Ch#46 HDC pl#10 [V] wire#106
+47, 10, 107	     !TDC ROC#2 Sl#3 Ch#47 HDC pl#10 [V] wire#107
+48, 7, 97            !TDC ROC#2 Sl#3 Ch#48 HDC pl#7 [X1] wire#97
+49, 7, 98            !TDC ROC#2 Sl#3 Ch#49 HDC pl#7 [X1] wire#98
+50, 7, 99            !TDC ROC#2 Sl#3 Ch#50 HDC pl#7 [X1] wire#99
+51, 7, 100           !TDC ROC#2 Sl#3 Ch#51 HDC pl#7 [X1] wire#100
+52, 7, 101           !TDC ROC#2 Sl#3 Ch#52 HDC pl#7 [X1] wire#101
+53, 7, 102           !TDC ROC#2 Sl#3 Ch#53 HDC pl#7 [X1] wire#102
+54, 7, 103           !TDC ROC#2 Sl#3 Ch#54 HDC pl#7 [X1] wire#103
+55, 7, 104           !TDC ROC#2 Sl#3 Ch#55 HDC pl#7 [X1] wire#104
+56, 7, 105           !TDC ROC#2 Sl#3 Ch#56 HDC pl#7 [X1] wire#105
+57, 7, 106           !TDC ROC#2 Sl#3 Ch#57 HDC pl#7 [X1] wire#106
+58, 7, 107           !TDC ROC#2 Sl#3 Ch#58 HDC pl#7 [X1] wire#107
+59, 7, 108           !TDC ROC#2 Sl#3 Ch#59 HDC pl#7 [X1] wire#108
+60, 7, 109           !TDC ROC#2 Sl#3 Ch#60 HDC pl#7 [X1] wire#109
+61, 7, 110           !TDC ROC#2 Sl#3 Ch#61 HDC pl#7 [X1] wire#110
+62, 7, 111           !TDC ROC#2 Sl#3 Ch#62 HDC pl#7 [X1] wire#111
+63, 7, 112           !TDC ROC#2 Sl#3 Ch#63 HDC pl#7 [X1] wire#112
+64, 12, 1            !TDC ROC#2 Sl#3 Ch#64 HDC pl#12 [X2] wire#1
+65, 12, 2            !TDC ROC#2 Sl#3 Ch#65 HDC pl#12 [X2] wire#2
+66, 12, 3            !TDC ROC#2 Sl#3 Ch#66 HDC pl#12 [X2] wire#3
+67, 12, 4            !TDC ROC#2 Sl#3 Ch#67 HDC pl#12 [X2] wire#4
+68, 12, 5            !TDC ROC#2 Sl#3 Ch#68 HDC pl#12 [X2] wire#5
+69, 12, 6            !TDC ROC#2 Sl#3 Ch#69 HDC pl#12 [X2] wire#6
+70, 12, 7            !TDC ROC#2 Sl#3 Ch#70 HDC pl#12 [X2] wire#7
+71, 12, 8            !TDC ROC#2 Sl#3 Ch#71 HDC pl#12 [X2] wire#8
+72, 12, 9            !TDC ROC#2 Sl#3 Ch#72 HDC pl#12 [X2] wire#9
+73, 12, 10           !TDC ROC#2 Sl#3 Ch#73 HDC pl#12 [X2] wire#10
+74, 12, 11           !TDC ROC#2 Sl#3 Ch#74 HDC pl#12 [X2] wire#11
+75, 12, 12           !TDC ROC#2 Sl#3 Ch#75 HDC pl#12 [X2] wire#12
+76, 12, 13           !TDC ROC#2 Sl#3 Ch#76 HDC pl#12 [X2] wire#13
+77, 12, 14           !TDC ROC#2 Sl#3 Ch#77 HDC pl#12 [X2] wire#14
+78, 12, 15           !TDC ROC#2 Sl#3 Ch#78 HDC pl#12 [X2] wire#15
+79, 12, 16           !TDC ROC#2 Sl#3 Ch#79 HDC pl#12 [X2] wire#16
+80, 7, 113           !TDC ROC#2 Sl#3 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#3 Ch#81 unused
+82, 9, 1             !TDC ROC#2 Sl#3 Ch#82 HDC pl#9 [U] wire#1
+83, 9, 2             !TDC ROC#2 Sl#3 Ch#83 HDC pl#9 [U] wire#2
+84, 9, 3             !TDC ROC#2 Sl#3 Ch#84 HDC pl#9 [U] wire#3
+85, 9, 4             !TDC ROC#2 Sl#3 Ch#85 HDC pl#9 [U] wire#4
+86, 9, 5             !TDC ROC#2 Sl#3 Ch#86 HDC pl#9 [U] wire#5
+87, 9, 6             !TDC ROC#2 Sl#3 Ch#87 HDC pl#9 [U] wire#6
+88, 9, 7             !TDC ROC#2 Sl#3 Ch#88 HDC pl#9 [U] wire#7
+89, 9, 8             !TDC ROC#2 Sl#3 Ch#89 HDC pl#9 [U] wire#8
+90, 9, 9             !TDC ROC#2 Sl#3 Ch#90 HDC pl#9 [U] wire#9
+91, 9, 10            !TDC ROC#2 Sl#3 Ch#91 HDC pl#9 [U] wire#10
+92, 9, 11            !TDC ROC#2 Sl#3 Ch#92 HDC pl#9 [U] wire#11
+93, 9, 12            !TDC ROC#2 Sl#3 Ch#93 HDC pl#9 [U] wire#12
+94, 9, 13            !TDC ROC#2 Sl#3 Ch#94 HDC pl#9 [U] wire#13
+95, 9, 14            !TDC ROC#2 Sl#3 Ch#95 HDC pl#9 [U] wire#14
+Slot= 5
+0, 10, 77            !TDC ROC#2 Sl#5 Ch#0 HDC pl#10 [V] wire#77
+1, 10, 78            !TDC ROC#2 Sl#5 Ch#1 HDC pl#10 [V] wire#78
+2, 10, 79            !TDC ROC#2 Sl#5 Ch#2 HDC pl#10 [V] wire#79
+3, 10, 80            !TDC ROC#2 Sl#5 Ch#3 HDC pl#10 [V] wire#80
+4, 10, 81            !TDC ROC#2 Sl#5 Ch#4 HDC pl#10 [V] wire#81
+5, 10, 82            !TDC ROC#2 Sl#5 Ch#5 HDC pl#10 [V] wire#82
+6, 10, 83            !TDC ROC#2 Sl#5 Ch#6 HDC pl#10 [V] wire#83
+7, 10, 84            !TDC ROC#2 Sl#5 Ch#7 HDC pl#10 [V] wire#84
+8, 10, 85            !TDC ROC#2 Sl#5 Ch#8 HDC pl#10 [V] wire#85
+9, 10, 86            !TDC ROC#2 Sl#5 Ch#9 HDC pl#10 [V] wire#86
+10, 10, 87           !TDC ROC#2 Sl#5 Ch#10 HDC pl#10 [V] wire#87
+11, 10, 88           !TDC ROC#2 Sl#5 Ch#11 HDC pl#10 [V] wire#88
+12, 10, 89           !TDC ROC#2 Sl#5 Ch#12 HDC pl#10 [V] wire#89
+13, 10, 90           !TDC ROC#2 Sl#5 Ch#13 HDC pl#10 [V] wire#90
+14, 10, 91           !TDC ROC#2 Sl#5 Ch#14 HDC pl#10 [V] wire#91
+! 15 !TDC ROC#2 Sl#5 Ch#15 unused
+16, 7, 81            !TDC ROC#2 Sl#5 Ch#16 HDC pl#7 [X1] wire#81
+17, 7, 82            !TDC ROC#2 Sl#5 Ch#17 HDC pl#7 [X1] wire#82
+18, 7, 83            !TDC ROC#2 Sl#5 Ch#18 HDC pl#7 [X1] wire#83
+19, 7, 84            !TDC ROC#2 Sl#5 Ch#19 HDC pl#7 [X1] wire#84
+20, 7, 85            !TDC ROC#2 Sl#5 Ch#20 HDC pl#7 [X1] wire#85
+21, 7, 86            !TDC ROC#2 Sl#5 Ch#21 HDC pl#7 [X1] wire#86
+22, 7, 87            !TDC ROC#2 Sl#5 Ch#22 HDC pl#7 [X1] wire#87
+23, 7, 88            !TDC ROC#2 Sl#5 Ch#23 HDC pl#7 [X1] wire#88
+24, 7, 89            !TDC ROC#2 Sl#5 Ch#24 HDC pl#7 [X1] wire#89
+25, 7, 90            !TDC ROC#2 Sl#5 Ch#25 HDC pl#7 [X1] wire#90
+26, 7, 91            !TDC ROC#2 Sl#5 Ch#26 HDC pl#7 [X1] wire#91
+27, 7, 92            !TDC ROC#2 Sl#5 Ch#27 HDC pl#7 [X1] wire#92
+28, 7, 93            !TDC ROC#2 Sl#5 Ch#28 HDC pl#7 [X1] wire#93
+29, 7, 94            !TDC ROC#2 Sl#5 Ch#29 HDC pl#7 [X1] wire#94
+30, 7, 95            !TDC ROC#2 Sl#5 Ch#30 HDC pl#7 [X1] wire#95
+31, 7, 96            !TDC ROC#2 Sl#5 Ch#31 HDC pl#7 [X1] wire#96
+32, 12, 17           !TDC ROC#2 Sl#5 Ch#32 HDC pl#12 [X2] wire#17
+33, 12, 18           !TDC ROC#2 Sl#5 Ch#33 HDC pl#12 [X2] wire#18
+34, 12, 19           !TDC ROC#2 Sl#5 Ch#34 HDC pl#12 [X2] wire#19
+35, 12, 20           !TDC ROC#2 Sl#5 Ch#35 HDC pl#12 [X2] wire#20
+36, 12, 21           !TDC ROC#2 Sl#5 Ch#36 HDC pl#12 [X2] wire#21
+37, 12, 22           !TDC ROC#2 Sl#5 Ch#37 HDC pl#12 [X2] wire#22
+38, 12, 23           !TDC ROC#2 Sl#5 Ch#38 HDC pl#12 [X2] wire#23
+39, 12, 24           !TDC ROC#2 Sl#5 Ch#39 HDC pl#12 [X2] wire#24
+40, 12, 25           !TDC ROC#2 Sl#5 Ch#40 HDC pl#12 [X2] wire#25
+41, 12, 26           !TDC ROC#2 Sl#5 Ch#41 HDC pl#12 [X2] wire#26
+42, 12, 27           !TDC ROC#2 Sl#5 Ch#42 HDC pl#12 [X2] wire#27
+43, 12, 28           !TDC ROC#2 Sl#5 Ch#43 HDC pl#12 [X2] wire#28
+44, 12, 29           !TDC ROC#2 Sl#5 Ch#44 HDC pl#12 [X2] wire#29
+45, 12, 30           !TDC ROC#2 Sl#5 Ch#45 HDC pl#12 [X2] wire#30
+46, 12, 31           !TDC ROC#2 Sl#5 Ch#46 HDC pl#12 [X2] wire#31
+47, 12, 32           !TDC ROC#2 Sl#5 Ch#47 HDC pl#12 [X2] wire#32
+48, 9, 15            !TDC ROC#2 Sl#5 Ch#48 HDC pl#9 [U] wire#15
+49, 9, 16            !TDC ROC#2 Sl#5 Ch#49 HDC pl#9 [U] wire#16
+50, 9, 17            !TDC ROC#2 Sl#5 Ch#50 HDC pl#9 [U] wire#17
+51, 9, 18            !TDC ROC#2 Sl#5 Ch#51 HDC pl#9 [U] wire#18
+52, 9, 19            !TDC ROC#2 Sl#5 Ch#52 HDC pl#9 [U] wire#19
+53, 9, 20            !TDC ROC#2 Sl#5 Ch#53 HDC pl#9 [U] wire#20
+54, 9, 21            !TDC ROC#2 Sl#5 Ch#54 HDC pl#9 [U] wire#21
+55, 9, 22            !TDC ROC#2 Sl#5 Ch#55 HDC pl#9 [U] wire#22
+56, 9, 23            !TDC ROC#2 Sl#5 Ch#56 HDC pl#9 [U] wire#23
+57, 9, 24            !TDC ROC#2 Sl#5 Ch#57 HDC pl#9 [U] wire#24
+58, 9, 25            !TDC ROC#2 Sl#5 Ch#58 HDC pl#9 [U] wire#25
+59, 9, 26            !TDC ROC#2 Sl#5 Ch#59 HDC pl#9 [U] wire#26
+60, 9, 27            !TDC ROC#2 Sl#5 Ch#60 HDC pl#9 [U] wire#27
+61, 9, 28            !TDC ROC#2 Sl#5 Ch#61 HDC pl#9 [U] wire#28
+62, 9, 29            !TDC ROC#2 Sl#5 Ch#62 HDC pl#9 [U] wire#29
+!63 !TDC ROC#2 Sl#5 Ch#63 unused
+64, 10, 61           !TDC ROC#2 Sl#5 Ch#64 HDC pl#10 [V] wire#61
+65, 10, 62           !TDC ROC#2 Sl#5 Ch#65 HDC pl#10 [V] wire#62
+66, 10, 63           !TDC ROC#2 Sl#5 Ch#66 HDC pl#10 [V] wire#63
+67, 10, 64           !TDC ROC#2 Sl#5 Ch#67 HDC pl#10 [V] wire#64
+68, 10, 65           !TDC ROC#2 Sl#5 Ch#68 HDC pl#10 [V] wire#65
+69, 10, 66           !TDC ROC#2 Sl#5 Ch#69 HDC pl#10 [V] wire#66
+70, 10, 67           !TDC ROC#2 Sl#5 Ch#70 HDC pl#10 [V] wire#67
+71, 10, 68           !TDC ROC#2 Sl#5 Ch#71 HDC pl#10 [V] wire#68
+72, 10, 69           !TDC ROC#2 Sl#5 Ch#72 HDC pl#10 [V] wire#69
+73, 10, 70           !TDC ROC#2 Sl#5 Ch#73 HDC pl#10 [V] wire#70
+74, 10, 71           !TDC ROC#2 Sl#5 Ch#74 HDC pl#10 [V] wire#71
+75, 10, 72           !TDC ROC#2 Sl#5 Ch#75 HDC pl#10 [V] wire#72
+76, 10, 73           !TDC ROC#2 Sl#5 Ch#76 HDC pl#10 [V] wire#73
+77, 10, 74           !TDC ROC#2 Sl#5 Ch#77 HDC pl#10 [V] wire#74
+78, 10, 75           !TDC ROC#2 Sl#5 Ch#78 HDC pl#10 [V] wire#75
+79, 10, 76           !TDC ROC#2 Sl#5 Ch#79 HDC pl#10 [V] wire#76
+80, 7, 65            !TDC ROC#2 Sl#5 Ch#80 HDC pl#7 [X1] wire#65
+81, 7, 66            !TDC ROC#2 Sl#5 Ch#81 HDC pl#7 [X1] wire#66
+82, 7, 67            !TDC ROC#2 Sl#5 Ch#82 HDC pl#7 [X1] wire#67
+83, 7, 68            !TDC ROC#2 Sl#5 Ch#83 HDC pl#7 [X1] wire#68
+84, 7, 69            !TDC ROC#2 Sl#5 Ch#84 HDC pl#7 [X1] wire#69
+85, 7, 70	     !TDC ROC#2 Sl#5 Ch#85 HDC pl#7 [X1] wire#70
+86, 7, 71            !TDC ROC#2 Sl#5 Ch#86 HDC pl#7 [X1] wire#71
+87, 7, 72            !TDC ROC#2 Sl#5 Ch#87 HDC pl#7 [X1] wire#72
+88, 7, 73            !TDC ROC#2 Sl#5 Ch#88 HDC pl#7 [X1] wire#73
+89, 7, 74            !TDC ROC#2 Sl#5 Ch#89 HDC pl#7 [X1] wire#74
+90, 7, 75            !TDC ROC#2 Sl#5 Ch#90 HDC pl#7 [X1] wire#75
+91, 7, 76	     !TDC ROC#2 Sl#5 Ch#91 HDC pl#7 [X1] wire#76
+92, 7, 77            !TDC ROC#2 Sl#5 Ch#92 HDC pl#7 [X1] wire#77
+93, 7, 78            !TDC ROC#2 Sl#5 Ch#93 HDC pl#7 [X1] wire#78
+94, 7, 79            !TDC ROC#2 Sl#5 Ch#94 HDC pl#7 [X1] wire#79
+95, 7, 80            !TDC ROC#2 Sl#5 Ch#95 HDC pl#7 [X1] wire#80
+Slot= 6
+0, 12, 33            !TDC ROC#2 Sl#6 Ch#0 HDC pl#12 [X2] wire#33
+1, 12, 34 	     !TDC ROC#2 Sl#6 Ch#1 HDC pl#12 [X2] wire#34
+2, 12, 35            !TDC ROC#2 Sl#6 Ch#2 HDC pl#12 [X2] wire#35
+3, 12, 36            !TDC ROC#2 Sl#6 Ch#3 HDC pl#12 [X2] wire#36
+4, 12, 37            !TDC ROC#2 Sl#6 Ch#4 HDC pl#12 [X2] wire#37
+5, 12, 38            !TDC ROC#2 Sl#6 Ch#5 HDC pl#12 [X2] wire#38
+6, 12, 39            !TDC ROC#2 Sl#6 Ch#6 HDC pl#12 [X2] wire#39
+7, 12, 40            !TDC ROC#2 Sl#6 Ch#7 HDC pl#12 [X2] wire#40
+8, 12, 41            !TDC ROC#2 Sl#6 Ch#8 HDC pl#12 [X2] wire#41
+9, 12, 42            !TDC ROC#2 Sl#6 Ch#9 HDC pl#12 [X2] wire#42
+10, 12, 43           !TDC ROC#2 Sl#6 Ch#10 HDC pl#12 [X2] wire#43
+11, 12, 44           !TDC ROC#2 Sl#6 Ch#11 HDC pl#12 [X2] wire#44
+12, 12, 45           !TDC ROC#2 Sl#6 Ch#12 HDC pl#12 [X2] wire#45
+13, 12, 46           !TDC ROC#2 Sl#6 Ch#13 HDC pl#12 [X2] wire#46
+14, 12, 47           !TDC ROC#2 Sl#6 Ch#14 HDC pl#12 [X2] wire#47
+15, 12, 48           !TDC ROC#2 Sl#6 Ch#15 HDC pl#12 [X2] wire#48
+16, 9, 30            !TDC ROC#2 Sl#6 Ch#16 HDC pl#9 [U] wire#30
+17, 9, 31            !TDC ROC#2 Sl#6 Ch#17 HDC pl#9 [U] wire#31
+18, 9, 32            !TDC ROC#2 Sl#6 Ch#18 HDC pl#9 [U] wire#32
+19, 9, 33            !TDC ROC#2 Sl#6 Ch#19 HDC pl#9 [U] wire#33
+20, 9, 34            !TDC ROC#2 Sl#6 Ch#20 HDC pl#9 [U] wire#34
+21, 9, 35            !TDC ROC#2 Sl#6 Ch#21 HDC pl#9 [U] wire#35
+22, 9, 36            !TDC ROC#2 Sl#6 Ch#22 HDC pl#9 [U] wire#36
+23, 9, 37            !TDC ROC#2 Sl#6 Ch#23 HDC pl#9 [U] wire#37
+24, 9, 38            !TDC ROC#2 Sl#6 Ch#24 HDC pl#9 [U] wire#38
+25, 9, 39            !TDC ROC#2 Sl#6 Ch#25 HDC pl#9 [U] wire#39
+26, 9, 40            !TDC ROC#2 Sl#6 Ch#26 HDC pl#9 [U] wire#40
+27, 9, 41            !TDC ROC#2 Sl#6 Ch#27 HDC pl#9 [U] wire#41
+28, 9, 42            !TDC ROC#2 Sl#6 Ch#28 HDC pl#9 [U] wire#42
+29, 9, 43            !TDC ROC#2 Sl#6 Ch#29 HDC pl#9 [U] wire#43
+30, 9, 44            !TDC ROC#2 Sl#6 Ch#30 HDC pl#9 [U] wire#44
+31, 9, 45            !TDC ROC#2 Sl#6 Ch#31 HDC pl#9 [U] wire#45
+32, 10, 46           !TDC ROC#2 Sl#6 Ch#32 HDC pl#10 [V] wire#46
+33, 10, 47           !TDC ROC#2 Sl#6 Ch#33 HDC pl#10 [V] wire#47
+34, 10, 48           !TDC ROC#2 Sl#6 Ch#34 HDC pl#10 [V] wire#48
+35, 10, 49           !TDC ROC#2 Sl#6 Ch#35 HDC pl#10 [V] wire#49
+36, 10, 50           !TDC ROC#2 Sl#6 Ch#36 HDC pl#10 [V] wire#50
+37, 10, 51           !TDC ROC#2 Sl#6 Ch#37 HDC pl#10 [V] wire#51
+38, 10, 52           !TDC ROC#2 Sl#6 Ch#38 HDC pl#10 [V] wire#52
+39, 10, 53           !TDC ROC#2 Sl#6 Ch#39 HDC pl#10 [V] wire#53
+40, 10, 54           !TDC ROC#2 Sl#6 Ch#40 HDC pl#10 [V] wire#54
+41, 10, 55           !TDC ROC#2 Sl#6 Ch#41 HDC pl#10 [V] wire#55
+42, 10, 56           !TDC ROC#2 Sl#6 Ch#42 HDC pl#10 [V] wire#56
+43, 10, 57           !TDC ROC#2 Sl#6 Ch#43 HDC pl#10 [V] wire#57
+44, 10, 58           !TDC ROC#2 Sl#6 Ch#44 HDC pl#10 [V] wire#58
+45, 10, 59           !TDC ROC#2 Sl#6 Ch#45 HDC pl#10 [V] wire#59
+46, 10, 60           !TDC ROC#2 Sl#6 Ch#46 HDC pl#10 [V] wire#60
+!47 !TDC ROC#2 Sl#6 Ch#47 HDC unused
+48, 7, 49           !TDC ROC#2 Sl#6 Ch#48 HDC pl#7 [X1] wire#49
+49, 7, 50           !TDC ROC#2 Sl#6 Ch#49 HDC pl#7 [X1] wire#50
+50, 7, 51           !TDC ROC#2 Sl#6 Ch#50 HDC pl#7 [X1] wire#51
+51, 7, 52           !TDC ROC#2 Sl#6 Ch#51 HDC pl#7 [X1] wire#52
+52, 7, 53           !TDC ROC#2 Sl#6 Ch#52 HDC pl#7 [X1] wire#53
+53, 7, 54           !TDC ROC#2 Sl#6 Ch#53 HDC pl#7 [X1] wire#54
+54, 7, 55           !TDC ROC#2 Sl#6 Ch#54 HDC pl#7 [X1] wire#55
+55, 7, 56           !TDC ROC#2 Sl#6 Ch#55 HDC pl#7 [X1] wire#56
+56, 7, 57           !TDC ROC#2 Sl#6 Ch#56 HDC pl#7 [X1] wire#57
+57, 7, 58           !TDC ROC#2 Sl#6 Ch#57 HDC pl#7 [X1] wire#58
+58, 7, 59           !TDC ROC#2 Sl#6 Ch#58 HDC pl#7 [X1] wire#59
+59, 7, 60           !TDC ROC#2 Sl#6 Ch#59 HDC pl#7 [X1] wire#60
+60, 7, 61           !TDC ROC#2 Sl#6 Ch#60 HDC pl#7 [X1] wire#61
+61, 7, 62           !TDC ROC#2 Sl#6 Ch#61 HDC pl#7 [X1] wire#62
+62, 7, 63           !TDC ROC#2 Sl#6 Ch#62 HDC pl#7 [X1] wire#63
+63, 7, 64           !TDC ROC#2 Sl#6 Ch#63 HDC pl#7 [X1] wire#64
+64, 12, 49          !TDC ROC#2 Sl#6 Ch#64 HDC pl#12 [X2] wire#49
+65, 12, 50          !TDC ROC#2 Sl#6 Ch#65 HDC pl#12 [X2] wire#50
+66, 12, 51          !TDC ROC#2 Sl#6 Ch#66 HDC pl#12 [X2] wire#51
+67, 12, 52          !TDC ROC#2 Sl#6 Ch#67 HDC pl#12 [X2] wire#52
+68, 12, 53          !TDC ROC#2 Sl#6 Ch#68 HDC pl#12 [X2] wire#53
+69, 12, 54          !TDC ROC#2 Sl#6 Ch#69 HDC pl#12 [X2] wire#54
+70, 12, 55          !TDC ROC#2 Sl#6 Ch#70 HDC pl#12 [X2] wire#55
+71, 12, 56          !TDC ROC#2 Sl#6 Ch#71 HDC pl#12 [X2] wire#56
+72, 12, 57          !TDC ROC#2 Sl#6 Ch#72 HDC pl#12 [X2] wire#57
+73, 12, 58          !TDC ROC#2 Sl#6 Ch#73 HDC pl#12 [X2] wire#58
+74, 12, 59          !TDC ROC#2 Sl#6 Ch#74 HDC pl#12 [X2] wire#59
+75, 12, 60          !TDC ROC#2 Sl#6 Ch#75 HDC pl#12 [X2] wire#60
+76, 12, 61          !TDC ROC#2 Sl#6 Ch#76 HDC pl#12 [X2] wire#61
+77, 12, 62          !TDC ROC#2 Sl#6 Ch#77 HDC pl#12 [X2] wire#62
+78, 12, 63          !TDC ROC#2 Sl#6 Ch#78 HDC pl#12 [X2] wire#63
+79, 12, 64          !TDC ROC#2 Sl#6 Ch#79 HDC pl#12 [X2] wire#64
+80, 10, 30          !TDC ROC#2 Sl#6 Ch#80 HDC pl#10 [V] wire#30
+81, 10, 31          !TDC ROC#2 Sl#6 Ch#81 HDC pl#10 [V] wire#31
+82, 10, 32          !TDC ROC#2 Sl#6 Ch#82 HDC pl#10 [V] wire#32
+83, 10, 33          !TDC ROC#2 Sl#6 Ch#83 HDC pl#10 [V] wire#33
+84, 10, 34          !TDC ROC#2 Sl#6 Ch#84 HDC pl#10 [V] wire#34
+85, 10, 35          !TDC ROC#2 Sl#6 Ch#85 HDC pl#10 [V] wire#35
+86, 10, 36          !TDC ROC#2 Sl#6 Ch#86 HDC pl#10 [V] wire#36
+87, 10, 37          !TDC ROC#2 Sl#6 Ch#87 HDC pl#10 [V] wire#37
+88, 10, 38          !TDC ROC#2 Sl#6 Ch#88 HDC pl#10 [V] wire#38
+89, 10, 39          !TDC ROC#2 Sl#6 Ch#89 HDC pl#10 [V] wire#39
+90, 10, 40          !TDC ROC#2 Sl#6 Ch#90 HDC pl#10 [V] wire#40
+91, 10, 41          !TDC ROC#2 Sl#6 Ch#91 HDC pl#10 [V] wire#41
+92, 10, 42          !TDC ROC#2 Sl#6 Ch#92 HDC pl#10 [V] wire#42
+93, 10, 43          !TDC ROC#2 Sl#6 Ch#93 HDC pl#10 [V] wire#43
+94, 10, 44          !TDC ROC#2 Sl#6 Ch#94 HDC pl#10 [V] wire#44
+95, 10, 45          !TDC ROC#2 Sl#6 Ch#95 HDC pl#10 [V] wire#45
+Slot= 8
+0, 9, 46            !TDC ROC#2 Sl#8 Ch#0 HDC pl#9 [U] wire#46
+1, 9, 47            !TDC ROC#2 Sl#8 Ch#1 HDC pl#9 [U] wire#47
+2, 9, 48            !TDC ROC#2 Sl#8 Ch#2 HDC pl#9 [U] wire#48
+3, 9, 49            !TDC ROC#2 Sl#8 Ch#3 HDC pl#9 [U] wire#49
+4, 9, 50            !TDC ROC#2 Sl#8 Ch#4 HDC pl#9 [U] wire#50
+5, 9, 51            !TDC ROC#2 Sl#8 Ch#5 HDC pl#9 [U] wire#51
+6, 9, 52            !TDC ROC#2 Sl#8 Ch#6 HDC pl#9 [U] wire#52
+7, 9, 53            !TDC ROC#2 Sl#8 Ch#7 HDC pl#9 [U] wire#53
+8, 9, 54            !TDC ROC#2 Sl#8 Ch#8 HDC pl#9 [U] wire#54
+9, 9, 55            !TDC ROC#2 Sl#8 Ch#9 HDC pl#9 [U] wire#55
+10, 9, 56           !TDC ROC#2 Sl#8 Ch#10 HDC pl#9 [U] wire#56
+11, 9, 57           !TDC ROC#2 Sl#8 Ch#11 HDC pl#9 [U] wire#57
+12, 9, 58           !TDC ROC#2 Sl#8 Ch#12 HDC pl#9 [U] wire#58
+13, 9, 59           !TDC ROC#2 Sl#8 Ch#13 HDC pl#9 [U] wire#59
+14, 9, 60           !TDC ROC#2 Sl#8 Ch#14 HDC pl#9 [U] wire#60
+!15 !TDC ROC#2 Sl#8 Ch#15 unused
+16, 7, 33           !TDC ROC#2 Sl#8 Ch#16 HDC pl#7 [X1] wire#33
+17, 7, 34           !TDC ROC#2 Sl#8 Ch#17 HDC pl#7 [X1] wire#34
+18, 7, 35           !TDC ROC#2 Sl#8 Ch#18 HDC pl#7 [X1] wire#35
+19, 7, 36           !TDC ROC#2 Sl#8 Ch#19 HDC pl#7 [X1] wire#36
+20, 7, 37           !TDC ROC#2 Sl#8 Ch#20 HDC pl#7 [X1] wire#37
+21, 7, 38           !TDC ROC#2 Sl#8 Ch#21 HDC pl#7 [X1] wire#38
+22, 7, 39           !TDC ROC#2 Sl#8 Ch#22 HDC pl#7 [X1] wire#39
+23, 7, 40           !TDC ROC#2 Sl#8 Ch#23 HDC pl#7 [X1] wire#40
+24, 7, 41           !TDC ROC#2 Sl#8 Ch#24 HDC pl#7 [X1] wire#41
+25, 7, 42           !TDC ROC#2 Sl#8 Ch#25 HDC pl#7 [X1] wire#42
+26, 7, 43           !TDC ROC#2 Sl#8 Ch#26 HDC pl#7 [X1] wire#43
+27, 7, 44           !TDC ROC#2 Sl#8 Ch#27 HDC pl#7 [X1] wire#44
+28, 7, 45           !TDC ROC#2 Sl#8 Ch#28 HDC pl#7 [X1] wire#45
+29, 7, 46           !TDC ROC#2 Sl#8 Ch#29 HDC pl#7 [X1] wire#46
+30, 7, 47           !TDC ROC#2 Sl#8 Ch#30 HDC pl#7 [X1] wire#47
+31, 7, 48           !TDC ROC#2 Sl#8 Ch#31 HDC pl#7 [X1] wire#48
+32, 12, 65          !TDC ROC#2 Sl#8 Ch#32 HDC pl#12 [X2] wire#65
+33, 12, 66          !TDC ROC#2 Sl#8 Ch#33 HDC pl#12 [X2] wire#66
+34, 12, 67          !TDC ROC#2 Sl#8 Ch#34 HDC pl#12 [X2] wire#67
+35, 12, 68          !TDC ROC#2 Sl#8 Ch#35 HDC pl#12 [X2] wire#68
+36, 12, 69          !TDC ROC#2 Sl#8 Ch#36 HDC pl#12 [X2] wire#69
+37, 12, 70          !TDC ROC#2 Sl#8 Ch#37 HDC pl#12 [X2] wire#70
+38, 12, 71          !TDC ROC#2 Sl#8 Ch#38 HDC pl#12 [X2] wire#71
+39, 12, 72          !TDC ROC#2 Sl#8 Ch#39 HDC pl#12 [X2] wire#72
+40, 12, 73          !TDC ROC#2 Sl#8 Ch#40 HDC pl#12 [X2] wire#73
+41, 12, 74          !TDC ROC#2 Sl#8 Ch#41 HDC pl#12 [X2] wire#74
+42, 12, 75          !TDC ROC#2 Sl#8 Ch#42 HDC pl#12 [X2] wire#75
+43, 12, 76          !TDC ROC#2 Sl#8 Ch#43 HDC pl#12 [X2] wire#76
+44, 12, 77          !TDC ROC#2 Sl#8 Ch#44 HDC pl#12 [X2] wire#77
+45, 12, 78          !TDC ROC#2 Sl#8 Ch#45 HDC pl#12 [X2] wire#78
+46, 12, 79          !TDC ROC#2 Sl#8 Ch#46 HDC pl#12 [X2] wire#79
+47, 12, 80	    !TDC ROC#2 Sl#8 Ch#47 HDC pl#12 [X2] wire#80
+48, 9, 61           !TDC ROC#2 Sl#8 Ch#48 HDC pl#9 [U] wire#61
+49, 9, 62           !TDC ROC#2 Sl#8 Ch#49 HDC pl#9 [U] wire#62
+50, 9, 63           !TDC ROC#2 Sl#8 Ch#50 HDC pl#9 [U] wire#63
+51, 9, 64           !TDC ROC#2 Sl#8 Ch#51 HDC pl#9 [U] wire#64
+52, 9, 65           !TDC ROC#2 Sl#8 Ch#52 HDC pl#9 [U] wire#65
+53, 9, 66           !TDC ROC#2 Sl#8 Ch#53 HDC pl#9 [U] wire#66
+54, 9, 67           !TDC ROC#2 Sl#8 Ch#54 HDC pl#9 [U] wire#67
+55, 9, 68           !TDC ROC#2 Sl#8 Ch#55 HDC pl#9 [U] wire#68
+56, 9, 69           !TDC ROC#2 Sl#8 Ch#56 HDC pl#9 [U] wire#69
+57, 9, 70           !TDC ROC#2 Sl#8 Ch#57 HDC pl#9 [U] wire#70
+58, 9, 71           !TDC ROC#2 Sl#8 Ch#58 HDC pl#9 [U] wire#71
+59, 9, 72           !TDC ROC#2 Sl#8 Ch#59 HDC pl#9 [U] wire#72
+60, 9, 73           !TDC ROC#2 Sl#8 Ch#60 HDC pl#9 [U] wire#73
+61, 9, 74           !TDC ROC#2 Sl#8 Ch#61 HDC pl#9 [U] wire#74
+62, 9, 75           !TDC ROC#2 Sl#8 Ch#62 HDC pl#9 [U] wire#75
+63, 9, 76           !TDC ROC#2 Sl#8 Ch#63 HDC pl#9 [U] wire#76
+64, 10, 15          !TDC ROC#2 Sl#8 Ch#64 HDC pl#10 [V] wire#15
+65, 10, 16          !TDC ROC#2 Sl#8 Ch#65 HDC pl#10 [V] wire#16
+66, 10, 17          !TDC ROC#2 Sl#8 Ch#66 HDC pl#10 [V] wire#17
+67, 10, 18          !TDC ROC#2 Sl#8 Ch#67 HDC pl#10 [V] wire#18
+68, 10, 19          !TDC ROC#2 Sl#8 Ch#68 HDC pl#10 [V] wire#19
+69, 10, 20          !TDC ROC#2 Sl#8 Ch#69 HDC pl#10 [V] wire#20
+70, 10, 21          !TDC ROC#2 Sl#8 Ch#70 HDC pl#10 [V] wire#21
+71, 10, 22          !TDC ROC#2 Sl#8 Ch#71 HDC pl#10 [V] wire#22
+72, 10, 23          !TDC ROC#2 Sl#8 Ch#72 HDC pl#10 [V] wire#23
+73, 10, 24          !TDC ROC#2 Sl#8 Ch#73 HDC pl#10 [V] wire#24
+74, 10, 25          !TDC ROC#2 Sl#8 Ch#74 HDC pl#10 [V] wire#25
+75, 10, 26          !TDC ROC#2 Sl#8 Ch#75 HDC pl#10 [V] wire#26
+76, 10, 27          !TDC ROC#2 Sl#8 Ch#76 HDC pl#10 [V] wire#27
+77, 10, 28          !TDC ROC#2 Sl#8 Ch#77 HDC pl#10 [V] wire#28
+78, 10, 29          !TDC ROC#2 Sl#8 Ch#78 HDC pl#10 [V] wire#29
+! 79 !TDC ROC#2 Sl#8 Ch#79 unused
+80, 7, 17           !TDC ROC#2 Sl#8 Ch#80 HDC pl#7 [X1] wire#17
+81, 7, 18           !TDC ROC#2 Sl#8 Ch#81 HDC pl#7 [X1] wire#18
+82, 7, 19           !TDC ROC#2 Sl#8 Ch#82 HDC pl#7 [X1] wire#19
+83, 7, 20           !TDC ROC#2 Sl#8 Ch#83 HDC pl#7 [X1] wire#20
+84, 7, 21           !TDC ROC#2 Sl#8 Ch#84 HDC pl#7 [X1] wire#21
+85, 7, 22           !TDC ROC#2 Sl#8 Ch#85 HDC pl#7 [X1] wire#22
+86, 7, 23           !TDC ROC#2 Sl#8 Ch#86 HDC pl#7 [X1] wire#23
+87, 7, 24           !TDC ROC#2 Sl#8 Ch#87 HDC pl#7 [X1] wire#24
+88, 7, 25           !TDC ROC#2 Sl#8 Ch#88 HDC pl#7 [X1] wire#25
+89, 7, 26           !TDC ROC#2 Sl#8 Ch#89 HDC pl#7 [X1] wire#26
+90, 7, 27           !TDC ROC#2 Sl#8 Ch#90 HDC pl#7 [X1] wire#27
+91, 7, 28           !TDC ROC#2 Sl#8 Ch#91 HDC pl#7 [X1] wire#28
+92, 7, 29           !TDC ROC#2 Sl#8 Ch#92 HDC pl#7 [X1] wire#29
+93, 7, 30           !TDC ROC#2 Sl#8 Ch#93 HDC pl#7 [X1] wire#30
+94, 7, 31           !TDC ROC#2 Sl#8 Ch#94 HDC pl#7 [X1] wire#31
+95, 7, 32           !TDC ROC#2 Sl#8 Ch#95 HDC pl#7 [X1] wire#32
+Slot= 9
+0, 12, 81           !TDC ROC#2 Sl#9 Ch#0 HDC pl#12 [X2] wire#81
+1, 12, 82           !TDC ROC#2 Sl#9 Ch#1 HDC pl#12 [X2] wire#82
+2, 12, 83           !TDC ROC#2 Sl#9 Ch#2 HDC pl#12 [X2] wire#83
+3, 12, 84           !TDC ROC#2 Sl#9 Ch#3 HDC pl#12 [X2] wire#84
+4, 12, 85           !TDC ROC#2 Sl#9 Ch#4 HDC pl#12 [X2] wire#85
+5, 12, 86           !TDC ROC#2 Sl#9 Ch#5 HDC pl#12 [X2] wire#86
+6, 12, 87           !TDC ROC#2 Sl#9 Ch#6 HDC pl#12 [X2] wire#87
+7, 12, 88           !TDC ROC#2 Sl#9 Ch#7 HDC pl#12 [X2] wire#88
+8, 12, 89           !TDC ROC#2 Sl#9 Ch#8 HDC pl#12 [X2] wire#89
+9, 12, 90           !TDC ROC#2 Sl#9 Ch#9 HDC pl#12 [X2] wire#90
+10, 12, 91          !TDC ROC#2 Sl#9 Ch#10 HDC pl#12 [X2] wire#91
+11, 12, 92          !TDC ROC#2 Sl#9 Ch#11 HDC pl#12 [X2] wire#92
+12, 12, 93          !TDC ROC#2 Sl#9 Ch#12 HDC pl#12 [X2] wire#93
+13, 12, 94          !TDC ROC#2 Sl#9 Ch#13 HDC pl#12 [X2] wire#94
+14, 12, 95          !TDC ROC#2 Sl#9 Ch#14 HDC pl#12 [X2] wire#95
+15, 12, 96          !TDC ROC#2 Sl#9 Ch#15 HDC pl#12 [X2] wire#96
+16, 9, 77           !TDC ROC#2 Sl#9 Ch#16 HDC pl#9 [U] wire#77
+17, 9, 78           !TDC ROC#2 Sl#9 Ch#17 HDC pl#9 [U] wire#78
+18, 9, 79           !TDC ROC#2 Sl#9 Ch#18 HDC pl#9 [U] wire#79
+19, 9, 80           !TDC ROC#2 Sl#9 Ch#19 HDC pl#9 [U] wire#80
+20, 9, 81           !TDC ROC#2 Sl#9 Ch#20 HDC pl#9 [U] wire#81
+21, 9, 82           !TDC ROC#2 Sl#9 Ch#21 HDC pl#9 [U] wire#82
+22, 9, 83           !TDC ROC#2 Sl#9 Ch#22 HDC pl#9 [U] wire#83
+23, 9, 84           !TDC ROC#2 Sl#9 Ch#23 HDC pl#9 [U] wire#84
+24, 9, 85           !TDC ROC#2 Sl#9 Ch#24 HDC pl#9 [U] wire#85
+25, 9, 86           !TDC ROC#2 Sl#9 Ch#25 HDC pl#9 [U] wire#86
+26, 9, 87           !TDC ROC#2 Sl#9 Ch#26 HDC pl#9 [U] wire#87
+27, 9, 88           !TDC ROC#2 Sl#9 Ch#27 HDC pl#9 [U] wire#88
+28, 9, 89           !TDC ROC#2 Sl#9 Ch#28 HDC pl#9 [U] wire#89
+29, 9, 90           !TDC ROC#2 Sl#9 Ch#29 HDC pl#9 [U] wire#90
+30, 9, 91           !TDC ROC#2 Sl#9 Ch#30 HDC pl#9 [U] wire#91
+!31 !TDC ROC#2 Sl#9 Ch#31 unused
+32, 12, 113         !TDC ROC#2 Sl#9 Ch#32 HDC pl#12 [X2] wire#113
+!33 !TDC ROC#2 Sl#9 Ch#33 unused
+34, 10, 1           !TDC ROC#2 Sl#9 Ch#34 HDC pl#10 [V] wire#1
+35, 10, 2           !TDC ROC#2 Sl#9 Ch#35 HDC pl#10 [V] wire#2
+36, 10, 3           !TDC ROC#2 Sl#9 Ch#36 HDC pl#10 [V] wire#3
+37, 10, 4           !TDC ROC#2 Sl#9 Ch#37 HDC pl#10 [V] wire#4
+38, 10, 5           !TDC ROC#2 Sl#9 Ch#38 HDC pl#10 [V] wire#5
+39, 10, 6           !TDC ROC#2 Sl#9 Ch#39 HDC pl#10 [V] wire#6
+40, 10, 7           !TDC ROC#2 Sl#9 Ch#40 HDC pl#10 [V] wire#7
+41, 10, 8           !TDC ROC#2 Sl#9 Ch#41 HDC pl#10 [V] wire#8
+42, 10, 9           !TDC ROC#2 Sl#9 Ch#42 HDC pl#10 [V] wire#9
+43, 10, 10          !TDC ROC#2 Sl#9 Ch#43 HDC pl#10 [V] wire#10
+44, 10, 11          !TDC ROC#2 Sl#9 Ch#44 HDC pl#10 [V] wire#11
+45, 10, 12          !TDC ROC#2 Sl#9 Ch#45 HDC pl#10 [V] wire#12
+46, 10, 13          !TDC ROC#2 Sl#9 Ch#46 HDC pl#10 [V] wire#13
+47, 10, 14          !TDC ROC#2 Sl#9 Ch#47 HDC pl#10 [V] wire#14
+48, 7, 1            !TDC ROC#2 Sl#9 Ch#48 HDC pl#7 [X1] wire#1
+49, 7, 2            !TDC ROC#2 Sl#9 Ch#49 HDC pl#7 [X1] wire#2
+50, 7, 3            !TDC ROC#2 Sl#9 Ch#50 HDC pl#7 [X1] wire#3
+51, 7, 4            !TDC ROC#2 Sl#9 Ch#51 HDC pl#7 [X1] wire#4
+52, 7, 5            !TDC ROC#2 Sl#9 Ch#52 HDC pl#7 [X1] wire#5
+53, 7, 6            !TDC ROC#2 Sl#9 Ch#53 HDC pl#7 [X1] wire#6
+54, 7, 7            !TDC ROC#2 Sl#9 Ch#54 HDC pl#7 [X1] wire#7
+55, 7, 8            !TDC ROC#2 Sl#9 Ch#55 HDC pl#7 [X1] wire#8
+56, 7, 9            !TDC ROC#2 Sl#9 Ch#56 HDC pl#7 [X1] wire#9
+57, 7, 10           !TDC ROC#2 Sl#9 Ch#57 HDC pl#7 [X1] wire#10
+58, 7, 11           !TDC ROC#2 Sl#9 Ch#58 HDC pl#7 [X1] wire#11
+59, 7, 12           !TDC ROC#2 Sl#9 Ch#59 HDC pl#7 [X1] wire#12
+60, 7, 13           !TDC ROC#2 Sl#9 Ch#60 HDC pl#7 [X1] wire#13
+61, 7, 14           !TDC ROC#2 Sl#9 Ch#61 HDC pl#7 [X1] wire#14
+62, 7, 15           !TDC ROC#2 Sl#9 Ch#62 HDC pl#7 [X1] wire#15
+63, 7, 16           !TDC ROC#2 Sl#9 Ch#63 HDC pl#7 [X1] wire#16
+64, 12, 97          !TDC ROC#2 Sl#9 Ch#64 HDC pl#12 [X2] wire#97
+65, 12, 98          !TDC ROC#2 Sl#9 Ch#65 HDC pl#12 [X2] wire#98
+66, 12, 99          !TDC ROC#2 Sl#9 Ch#66 HDC pl#12 [X2] wire#99
+67, 12, 100         !TDC ROC#2 Sl#9 Ch#67 HDC pl#12 [X2] wire#100
+68, 12, 101         !TDC ROC#2 Sl#9 Ch#68 HDC pl#12 [X2] wire#101
+69, 12, 102         !TDC ROC#2 Sl#9 Ch#69 HDC pl#12 [X2] wire#102
+70, 12, 103         !TDC ROC#2 Sl#9 Ch#70 HDC pl#12 [X2] wire#103
+71, 12, 104         !TDC ROC#2 Sl#9 Ch#71 HDC pl#12 [X2] wire#104
+72, 12, 105         !TDC ROC#2 Sl#9 Ch#72 HDC pl#12 [X2] wire#105
+73, 12, 106         !TDC ROC#2 Sl#9 Ch#73 HDC pl#12 [X2] wire#106
+74, 12, 107         !TDC ROC#2 Sl#9 Ch#74 HDC pl#12 [X2] wire#107
+75, 12, 108         !TDC ROC#2 Sl#9 Ch#75 HDC pl#12 [X2] wire#108
+76, 12, 109         !TDC ROC#2 Sl#9 Ch#76 HDC pl#12 [X2] wire#109
+77, 12, 110         !TDC ROC#2 Sl#9 Ch#77 HDC pl#12 [X2] wire#110
+78, 12, 111         !TDC ROC#2 Sl#9 Ch#78 HDC pl#12 [X2] wire#111
+79, 12, 112         !TDC ROC#2 Sl#9 Ch#79 HDC pl#12 [X2] wire#112
+80, 9, 92           !TDC ROC#2 Sl#9 Ch#80 HDC pl#9 [U] wire#92
+81, 9, 93           !TDC ROC#2 Sl#9 Ch#81 HDC pl#9 [U] wire#93
+82, 9, 94           !TDC ROC#2 Sl#9 Ch#82 HDC pl#9 [U] wire#94
+83, 9, 95           !TDC ROC#2 Sl#9 Ch#83 HDC pl#9 [U] wire#95
+84, 9, 96           !TDC ROC#2 Sl#9 Ch#84 HDC pl#9 [U] wire#96
+85, 9, 97           !TDC ROC#2 Sl#9 Ch#85 HDC pl#9 [U] wire#97
+86, 9, 98           !TDC ROC#2 Sl#9 Ch#86 HDC pl#9 [U] wire#98
+87, 9, 99           !TDC ROC#2 Sl#9 Ch#87 HDC pl#9 [U] wire#99
+88, 9, 100          !TDC ROC#2 Sl#9 Ch#88 HDC pl#9 [U] wire#100
+89, 9, 101          !TDC ROC#2 Sl#9 Ch#89 HDC pl#9 [U] wire#101
+90, 9, 102          !TDC ROC#2 Sl#9 Ch#90 HDC pl#9 [U] wire#102
+91, 9, 103          !TDC ROC#2 Sl#9 Ch#91 HDC pl#9 [U] wire#103
+92, 9, 104          !TDC ROC#2 Sl#9 Ch#92 HDC pl#9 [U] wire#104
+93, 9, 105          !TDC ROC#2 Sl#9 Ch#93 HDC pl#9 [U] wire#105
+94, 9, 106          !TDC ROC#2 Sl#9 Ch#94 HDC pl#9 [U] wire#106
+95, 9, 107          !TDC ROC#2 Sl#9 Ch#95 HDC pl#9 [U] wire#107
+!
+!
+!                               2nd HDC chamber  planes1-6     
+Slot= 15
+0, 1, 1            !TDC ROC#2 Sl#11 Ch#0 HDC pl#7 [X1] wire#1
+1, 1, 2            !TDC ROC#2 Sl#11 Ch#1 HDC pl#7 [X1] wire#2
+2, 1, 3            !TDC ROC#2 Sl#11 Ch#2 HDC pl#7 [X1] wire#3
+3, 1, 4            !TDC ROC#2 Sl#11 Ch#3 HDC pl#7 [X1] wire#4
+4, 1, 5            !TDC ROC#2 Sl#11 Ch#4 HDC pl#7 [X1] wire#5
+5, 1, 6            !TDC ROC#2 Sl#11 Ch#5 HDC pl#7 [X1] wire#6
+6, 1, 7            !TDC ROC#2 Sl#11 Ch#6 HDC pl#7 [X1] wire#7
+7, 1, 8            !TDC ROC#2 Sl#11 Ch#7 HDC pl#7 [X1] wire#8
+8, 1, 9            !TDC ROC#2 Sl#11 Ch#8 HDC pl#7 [X1] wire#9
+9, 1, 10           !TDC ROC#2 Sl#11 Ch#9 HDC pl#7 [X1] wire#10
+10, 1, 11          !TDC ROC#2 Sl#11 Ch#10 HDC pl#7 [X1] wire#11
+11, 1, 12          !TDC ROC#2 Sl#11 Ch#11 HDC pl#7 [X1] wire#12
+12, 1, 13          !TDC ROC#2 Sl#11 Ch#12 HDC pl#7 [X1] wire#13
+13, 1, 14          !TDC ROC#2 Sl#11 Ch#13 HDC pl#7 [X1] wire#14
+14, 1, 15          !TDC ROC#2 Sl#11 Ch#14 HDC pl#7 [X1] wire#15
+15, 1, 16          !TDC ROC#2 Sl#11 Ch#15 HDC pl#7 [X1] wire#16
+16, 1, 17          !TDC ROC#2 Sl#11 Ch#16 HDC pl#7 [X1] wire#17
+17, 1, 18          !TDC ROC#2 Sl#11 Ch#17 HDC pl#7 [X1] wire#18
+18, 1, 19          !TDC ROC#2 Sl#11 Ch#18 HDC pl#7 [X1] wire#19
+19, 1, 20          !TDC ROC#2 Sl#11 Ch#19 HDC pl#7 [X1] wire#20
+20, 1, 21          !TDC ROC#2 Sl#11 Ch#20 HDC pl#7 [X1] wire#21
+21, 1, 22          !TDC ROC#2 Sl#11 Ch#21 HDC pl#7 [X1] wire#22
+22, 1, 23          !TDC ROC#2 Sl#11 Ch#22 HDC pl#7 [X1] wire#23
+23, 1, 24          !TDC ROC#2 Sl#11 Ch#23 HDC pl#7 [X1] wire#24
+24, 1, 25          !TDC ROC#2 Sl#11 Ch#24 HDC pl#7 [X1] wire#25
+25, 1, 26          !TDC ROC#2 Sl#11 Ch#25 HDC pl#7 [X1] wire#26
+26, 1, 27          !TDC ROC#2 Sl#11 Ch#26 HDC pl#7 [X1] wire#27
+27, 1, 28          !TDC ROC#2 Sl#11 Ch#27 HDC pl#7 [X1] wire#28
+28, 1, 29          !TDC ROC#2 Sl#11 Ch#28 HDC pl#7 [X1] wire#29
+29, 1, 30          !TDC ROC#2 Sl#11 Ch#29 HDC pl#7 [X1] wire#30
+30, 1, 31          !TDC ROC#2 Sl#11 Ch#30 HDC pl#7 [X1] wire#31
+31, 1, 32          !TDC ROC#2 Sl#11 Ch#31 HDC pl#7 [X1] wire#32
+32, 1, 33          !TDC ROC#2 Sl#11 Ch#32 HDC pl#7 [X1] wire#33
+33, 1, 34          !TDC ROC#2 Sl#11 Ch#33 HDC pl#7 [X1] wire#34
+34, 1, 35          !TDC ROC#2 Sl#11 Ch#34 HDC pl#7 [X1] wire#35
+35, 1, 36          !TDC ROC#2 Sl#11 Ch#35 HDC pl#7 [X1] wire#36
+36, 1, 37          !TDC ROC#2 Sl#11 Ch#36 HDC pl#7 [X1] wire#37
+37, 1, 38          !TDC ROC#2 Sl#11 Ch#37 HDC pl#7 [X1] wire#38
+38, 1, 39          !TDC ROC#2 Sl#11 Ch#38 HDC pl#7 [X1] wire#39
+39, 1, 40          !TDC ROC#2 Sl#11 Ch#39 HDC pl#7 [X1] wire#40
+40, 1, 41          !TDC ROC#2 Sl#11 Ch#40 HDC pl#7 [X1] wire#41
+41, 1, 42          !TDC ROC#2 Sl#11 Ch#41 HDC pl#7 [X1] wire#42
+42, 1, 43          !TDC ROC#2 Sl#11 Ch#42 HDC pl#7 [X1] wire#43
+43, 1, 44          !TDC ROC#2 Sl#11 Ch#43 HDC pl#7 [X1] wire#44
+44, 1, 45          !TDC ROC#2 Sl#11 Ch#44 HDC pl#7 [X1] wire#45
+45, 1, 46          !TDC ROC#2 Sl#11 Ch#45 HDC pl#7 [X1] wire#46
+46, 1, 47          !TDC ROC#2 Sl#11 Ch#46 HDC pl#7 [X1] wire#47
+47, 1, 48          !TDC ROC#2 Sl#11 Ch#47 HDC pl#7 [X1] wire#48
+48, 1, 49          !TDC ROC#2 Sl#11 Ch#48 HDC pl#7 [X1] wire#49
+49, 1, 50          !TDC ROC#2 Sl#11 Ch#49 HDC pl#7 [X1] wire#50
+50, 1, 51          !TDC ROC#2 Sl#11 Ch#50 HDC pl#7 [X1] wire#51
+51, 1, 52          !TDC ROC#2 Sl#11 Ch#51 HDC pl#7 [X1] wire#52
+52, 1, 53          !TDC ROC#2 Sl#11 Ch#52 HDC pl#7 [X1] wire#53
+53, 1, 54          !TDC ROC#2 Sl#11 Ch#53 HDC pl#7 [X1] wire#54
+54, 1, 55          !TDC ROC#2 Sl#11 Ch#54 HDC pl#7 [X1] wire#55
+55, 1, 56          !TDC ROC#2 Sl#11 Ch#55 HDC pl#7 [X1] wire#56
+56, 1, 57          !TDC ROC#2 Sl#11 Ch#56 HDC pl#7 [X1] wire#57
+57, 1, 58          !TDC ROC#2 Sl#11 Ch#57 HDC pl#7 [X1] wire#58
+58, 1, 59          !TDC ROC#2 Sl#11 Ch#58 HDC pl#7 [X1] wire#59
+59, 1, 60          !TDC ROC#2 Sl#11 Ch#59 HDC pl#7 [X1] wire#60
+60, 1, 61          !TDC ROC#2 Sl#11 Ch#60 HDC pl#7 [X1] wire#61
+61, 1, 62          !TDC ROC#2 Sl#11 Ch#61 HDC pl#7 [X1] wire#62
+62, 1, 63          !TDC ROC#2 Sl#11 Ch#62 HDC pl#7 [X1] wire#63
+63, 1, 64          !TDC ROC#2 Sl#11 Ch#63 HDC pl#7 [X1] wire#64
+64, 1, 65          !TDC ROC#2 Sl#11 Ch#64 HDC pl#7 [X1] wire#65
+65, 1, 66          !TDC ROC#2 Sl#11 Ch#65 HDC pl#7 [X1] wire#66
+66, 1, 67          !TDC ROC#2 Sl#11 Ch#66 HDC pl#7 [X1] wire#67
+67, 1, 68          !TDC ROC#2 Sl#11 Ch#67 HDC pl#7 [X1] wire#68
+68, 1, 69          !TDC ROC#2 Sl#11 Ch#68 HDC pl#7 [X1] wire#69
+69, 1, 70          !TDC ROC#2 Sl#11 Ch#69 HDC pl#7 [X1] wire#70
+70, 1, 71          !TDC ROC#2 Sl#11 Ch#70 HDC pl#7 [X1] wire#71
+71, 1, 72          !TDC ROC#2 Sl#11 Ch#71 HDC pl#7 [X1] wire#72
+72, 1, 73          !TDC ROC#2 Sl#11 Ch#72 HDC pl#7 [X1] wire#73
+73, 1, 74          !TDC ROC#2 Sl#11 Ch#73 HDC pl#7 [X1] wire#74
+74, 1, 75          !TDC ROC#2 Sl#11 Ch#74 HDC pl#7 [X1] wire#75
+75, 1, 76          !TDC ROC#2 Sl#11 Ch#75 HDC pl#7 [X1] wire#76
+76, 1, 77          !TDC ROC#2 Sl#11 Ch#76 HDC pl#7 [X1] wire#77
+77, 1, 78          !TDC ROC#2 Sl#11 Ch#77 HDC pl#7 [X1] wire#78
+78, 1, 79          !TDC ROC#2 Sl#11 Ch#78 HDC pl#7 [X1] wire#79
+79, 1, 80          !TDC ROC#2 Sl#11 Ch#79 HDC pl#7 [X1] wire#80
+80, 1, 81          !TDC ROC#2 Sl#11 Ch#80 HDC pl#7 [X1] wire#81
+81, 1, 82          !TDC ROC#2 Sl#11 Ch#81 HDC pl#7 [X1] wire#82
+82, 1, 83          !TDC ROC#2 Sl#11 Ch#82 HDC pl#7 [X1] wire#83
+83, 1, 84          !TDC ROC#2 Sl#11 Ch#83 HDC pl#7 [X1] wire#84
+84, 1, 85          !TDC ROC#2 Sl#11 Ch#84 HDC pl#7 [X1] wire#85
+85, 1, 86          !TDC ROC#2 Sl#11 Ch#85 HDC pl#7 [X1] wire#86
+86, 1, 87          !TDC ROC#2 Sl#11 Ch#86 HDC pl#7 [X1] wire#87
+87, 1, 88          !TDC ROC#2 Sl#11 Ch#87 HDC pl#7 [X1] wire#88
+88, 1, 89          !TDC ROC#2 Sl#11 Ch#88 HDC pl#7 [X1] wire#89
+89, 1, 90          !TDC ROC#2 Sl#11 Ch#89 HDC pl#7 [X1] wire#90
+90, 1, 91          !TDC ROC#2 Sl#11 Ch#90 HDC pl#7 [X1] wire#91
+91, 1, 92          !TDC ROC#2 Sl#11 Ch#91 HDC pl#7 [X1] wire#92
+92, 1, 93          !TDC ROC#2 Sl#11 Ch#92 HDC pl#7 [X1] wire#93
+93, 1, 94          !TDC ROC#2 Sl#11 Ch#93 HDC pl#7 [X1] wire#94
+94, 1, 95          !TDC ROC#2 Sl#11 Ch#94 HDC pl#7 [X1] wire#95
+95, 1, 96          !TDC ROC#2 Sl#11 Ch#95 HDC pl#7 [X1] wire#96
+Slot= 16
+0, 1, 97           !TDC ROC#2 Sl#12 Ch#0 HDC pl#7 [X1] wire#97
+1, 1, 98           !TDC ROC#2 Sl#12 Ch#1 HDC pl#7 [X1] wire#98
+2, 1, 99           !TDC ROC#2 Sl#12 Ch#2 HDC pl#7 [X1] wire#99
+3, 1, 100          !TDC ROC#2 Sl#12 Ch#3 HDC pl#7 [X1] wire#100
+4, 1, 101          !TDC ROC#2 Sl#12 Ch#4 HDC pl#7 [X1] wire#101
+5, 1, 102          !TDC ROC#2 Sl#12 Ch#5 HDC pl#7 [X1] wire#102
+6, 1, 103          !TDC ROC#2 Sl#12 Ch#6 HDC pl#7 [X1] wire#103
+7, 1, 104          !TDC ROC#2 Sl#12 Ch#7 HDC pl#7 [X1] wire#104
+8, 1, 105          !TDC ROC#2 Sl#12 Ch#8 HDC pl#7 [X1] wire#105
+9, 1, 106          !TDC ROC#2 Sl#12 Ch#9 HDC pl#7 [X1] wire#106
+10, 1, 107         !TDC ROC#2 Sl#12 Ch#10 HDC pl#7 [X1] wire#107
+11, 1, 108         !TDC ROC#2 Sl#12 Ch#11 HDC pl#7 [X1] wire#108
+12, 1, 109         !TDC ROC#2 Sl#12 Ch#12 HDC pl#7 [X1] wire#109
+13, 1, 110         !TDC ROC#2 Sl#12 Ch#13 HDC pl#7 [X1] wire#110
+14, 1, 111         !TDC ROC#2 Sl#12 Ch#14 HDC pl#7 [X1] wire#111
+15, 1, 112         !TDC ROC#2 Sl#12 Ch#15 HDC pl#7 [X1] wire#112
+16, 2, 1           !TDC ROC#2 Sl#12 Ch#16 HDC pl#8 [Y1] wire#1
+17, 2, 2           !TDC ROC#2 Sl#12 Ch#17 HDC pl#8 [Y1] wire#2
+18, 2, 3           !TDC ROC#2 Sl#12 Ch#18 HDC pl#8 [Y1] wire#3
+19, 2, 4           !TDC ROC#2 Sl#12 Ch#19 HDC pl#8 [Y1] wire#4
+20, 2, 5           !TDC ROC#2 Sl#12 Ch#20 HDC pl#8 [Y1] wire#5
+21, 2, 6           !TDC ROC#2 Sl#12 Ch#21 HDC pl#8 [Y1] wire#6
+22, 2, 7           !TDC ROC#2 Sl#12 Ch#22 HDC pl#8 [Y1] wire#7
+23, 2, 8           !TDC ROC#2 Sl#12 Ch#23 HDC pl#8 [Y1] wire#8
+24, 2, 9           !TDC ROC#2 Sl#12 Ch#24 HDC pl#8 [Y1] wire#9
+25, 2, 10          !TDC ROC#2 Sl#12 Ch#25 HDC pl#8 [Y1] wire#10
+26, 2, 11          !TDC ROC#2 Sl#12 Ch#26 HDC pl#8 [Y1] wire#11
+27, 2, 12          !TDC ROC#2 Sl#12 Ch#27 HDC pl#8 [Y1] wire#12
+28, 2, 13          !TDC ROC#2 Sl#12 Ch#28 HDC pl#8 [Y1] wire#13
+! 29  !TDC ROC#2 Sl#12 Ch#29 unused
+! 30  !TDC ROC#2 Sl#12 Ch#30 unused
+! 31  !TDC ROC#2 Sl#12 Ch#31 unused
+32, 2, 14          !TDC ROC#2 Sl#12 Ch#32 HDC pl#8 [Y1] wire#14
+33, 2, 15          !TDC ROC#2 Sl#12 Ch#33 HDC pl#8 [Y1] wire#15
+34, 2, 16          !TDC ROC#2 Sl#12 Ch#34 HDC pl#8 [Y1] wire#16
+35, 2, 17          !TDC ROC#2 Sl#12 Ch#35 HDC pl#8 [Y1] wire#17
+36, 2, 18          !TDC ROC#2 Sl#12 Ch#36 HDC pl#8 [Y1] wire#18
+37, 2, 19          !TDC ROC#2 Sl#12 Ch#37 HDC pl#8 [Y1] wire#19
+38, 2, 20          !TDC ROC#2 Sl#12 Ch#38 HDC pl#8 [Y1] wire#20
+39, 2, 21          !TDC ROC#2 Sl#12 Ch#39 HDC pl#8 [Y1] wire#21
+40, 2, 22          !TDC ROC#2 Sl#12 Ch#40 HDC pl#8 [Y1] wire#22
+41, 2, 23          !TDC ROC#2 Sl#12 Ch#41 HDC pl#8 [Y1] wire#23
+42, 2, 24          !TDC ROC#2 Sl#12 Ch#42 HDC pl#8 [Y1] wire#24
+43, 2, 25          !TDC ROC#2 Sl#12 Ch#43 HDC pl#8 [Y1] wire#25
+44, 2, 26          !TDC ROC#2 Sl#12 Ch#44 HDC pl#8 [Y1] wire#26
+! 45 !TDC ROC#2 Sl#12 Ch#45 unused
+! 46 !TDC ROC#2 Sl#12 Ch#46 unused
+! 47 !TDC ROC#2 Sl#12 Ch#47 unused
+48, 2, 27          !TDC ROC#2 Sl#12 Ch#48 HDC pl#8 [Y1] wire#27
+49, 2, 28          !TDC ROC#2 Sl#12 Ch#49 HDC pl#8 [Y1] wire#28
+50, 2, 29          !TDC ROC#2 Sl#12 Ch#50 HDC pl#8 [Y1] wire#29
+51, 2, 30          !TDC ROC#2 Sl#12 Ch#51 HDC pl#8 [Y1] wire#30
+52, 2, 31          !TDC ROC#2 Sl#12 Ch#52 HDC pl#8 [Y1] wire#31
+53, 2, 32          !TDC ROC#2 Sl#12 Ch#53 HDC pl#8 [Y1] wire#32
+54, 2, 33          !TDC ROC#2 Sl#12 Ch#54 HDC pl#8 [Y1] wire#33
+55, 2, 34          !TDC ROC#2 Sl#12 Ch#55 HDC pl#8 [Y1] wire#34
+56, 2, 35          !TDC ROC#2 Sl#12 Ch#56 HDC pl#8 [Y1] wire#35
+57, 2, 36          !TDC ROC#2 Sl#12 Ch#57 HDC pl#8 [Y1] wire#36
+58, 2, 37          !TDC ROC#2 Sl#12 Ch#58 HDC pl#8 [Y1] wire#37
+59, 2, 38          !TDC ROC#2 Sl#12 Ch#59 HDC pl#8 [Y1] wire#38
+60, 2, 39          !TDC ROC#2 Sl#12 Ch#60 HDC pl#8 [Y1] wire#39
+! 61 !TDC ROC#2 Sl#12 Ch#61 unused
+! 62 !TDC ROC#2 Sl#12 Ch#62 unused
+! 63 !TDC ROC#2 Sl#12 Ch#63 unused
+64, 2, 40          !TDC ROC#2 Sl#12 Ch#64 HDC pl#8 [Y1] wire#40
+65, 2, 41          !TDC ROC#2 Sl#12 Ch#65 HDC pl#8 [Y1] wire#41
+66, 2, 42          !TDC ROC#2 Sl#12 Ch#66 HDC pl#8 [Y1] wire#42
+67, 2, 43          !TDC ROC#2 Sl#12 Ch#67 HDC pl#8 [Y1] wire#43
+68, 2, 44          !TDC ROC#2 Sl#12 Ch#68 HDC pl#8 [Y1] wire#44
+69, 2, 45          !TDC ROC#2 Sl#12 Ch#69 HDC pl#8 [Y1] wire#45
+70, 2, 46          !TDC ROC#2 Sl#12 Ch#70 HDC pl#8 [Y1] wire#46
+71, 2, 47          !TDC ROC#2 Sl#12 Ch#71 HDC pl#8 [Y1] wire#47
+72, 2, 48          !TDC ROC#2 Sl#12 Ch#72 HDC pl#8 [Y1] wire#48
+73, 2, 49          !TDC ROC#2 Sl#12 Ch#73 HDC pl#8 [Y1] wire#49
+74, 2, 50          !TDC ROC#2 Sl#12 Ch#74 HDC pl#8 [Y1] wire#50
+75, 2, 51          !TDC ROC#2 Sl#12 Ch#75 HDC pl#8 [Y1] wire#51
+76, 2, 52          !TDC ROC#2 Sl#12 Ch#76 HDC pl#8 [Y1] wire#52
+! 77 !TDC ROC#2 Sl#12 Ch#77 unused
+! 78 !TDC ROC#2 Sl#12 Ch#78 unused
+! 79 !TDC ROC#2 Sl#12 Ch#79 unused
+80, 1, 113         !TDC ROC#2 Sl#12 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#12 Ch#81 unused
+82, 3, 1           !TDC ROC#2 Sl#12 Ch#82 HDC pl#9 [U] wire#1
+83, 3, 2           !TDC ROC#2 Sl#12 Ch#83 HDC pl#9 [U] wire#2
+84, 3, 3           !TDC ROC#2 Sl#12 Ch#84 HDC pl#9 [U] wire#3
+85, 3, 4           !TDC ROC#2 Sl#12 Ch#85 HDC pl#9 [U] wire#4
+86, 3, 5           !TDC ROC#2 Sl#12 Ch#86 HDC pl#9 [U] wire#5
+87, 3, 6           !TDC ROC#2 Sl#12 Ch#87 HDC pl#9 [U] wire#6
+88, 3, 7           !TDC ROC#2 Sl#12 Ch#88 HDC pl#9 [U] wire#7
+89, 3, 8           !TDC ROC#2 Sl#12 Ch#89 HDC pl#9 [U] wire#8
+90, 3, 9           !TDC ROC#2 Sl#12 Ch#90 HDC pl#9 [U] wire#9
+91, 3, 10          !TDC ROC#2 Sl#12 Ch#91 HDC pl#9 [U] wire#10
+92, 3, 11          !TDC ROC#2 Sl#12 Ch#92 HDC pl#9 [U] wire#11
+93, 3, 12          !TDC ROC#2 Sl#12 Ch#93 HDC pl#9 [U] wire#12
+94, 3, 13          !TDC ROC#2 Sl#12 Ch#94 HDC pl#9 [U] wire#13
+95, 3, 14          !TDC ROC#2 Sl#12 Ch#95 HDC pl#9 [U] wire#14
+Slot= 18
+0, 3, 15           !TDC ROC#2 Sl#14 Ch#0 HDC pl#9 [U] wire#15
+1, 3, 16           !TDC ROC#2 Sl#14 Ch#1 HDC pl#9 [U] wire#16
+2, 3, 17           !TDC ROC#2 Sl#14 Ch#2 HDC pl#9 [U] wire#17
+3, 3, 18           !TDC ROC#2 Sl#14 Ch#3 HDC pl#9 [U] wire#18
+4, 3, 19           !TDC ROC#2 Sl#14 Ch#4 HDC pl#9 [U] wire#19
+5, 3, 20           !TDC ROC#2 Sl#14 Ch#5 HDC pl#9 [U] wire#20
+6, 3, 21           !TDC ROC#2 Sl#14 Ch#6 HDC pl#9 [U] wire#21
+7, 3, 22           !TDC ROC#2 Sl#14 Ch#7 HDC pl#9 [U] wire#22
+8, 3, 23           !TDC ROC#2 Sl#14 Ch#8 HDC pl#9 [U] wire#23
+9, 3, 24           !TDC ROC#2 Sl#14 Ch#9 HDC pl#9 [U] wire#24
+10, 3, 25          !TDC ROC#2 Sl#14 Ch#10 HDC pl#9 [U] wire#25
+11, 3, 26          !TDC ROC#2 Sl#14 Ch#11 HDC pl#9 [U] wire#26
+12, 3, 27          !TDC ROC#2 Sl#14 Ch#12 HDC pl#9 [U] wire#27
+13, 3, 28          !TDC ROC#2 Sl#14 Ch#13 HDC pl#9 [U] wire#28
+14, 3, 29          !TDC ROC#2 Sl#14 Ch#14 HDC pl#9 [U] wire#29
+! 15 !TDC ROC#2 Sl#14 Ch#15 unused
+16, 3, 30          !TDC ROC#2 Sl#14 Ch#16 HDC pl#9 [U] wire#30
+17, 3, 31          !TDC ROC#2 Sl#14 Ch#17 HDC pl#9 [U] wire#31
+18, 3, 32          !TDC ROC#2 Sl#14 Ch#18 HDC pl#9 [U] wire#32
+19, 3, 33          !TDC ROC#2 Sl#14 Ch#19 HDC pl#9 [U] wire#33
+20, 3, 34          !TDC ROC#2 Sl#14 Ch#20 HDC pl#9 [U] wire#34
+21, 3, 35          !TDC ROC#2 Sl#14 Ch#21 HDC pl#9 [U] wire#35
+22, 3, 36          !TDC ROC#2 Sl#14 Ch#22 HDC pl#9 [U] wire#36
+23, 3, 37          !TDC ROC#2 Sl#14 Ch#23 HDC pl#9 [U] wire#37
+24, 3, 38          !TDC ROC#2 Sl#14 Ch#24 HDC pl#9 [U] wire#38
+25, 3, 39          !TDC ROC#2 Sl#14 Ch#25 HDC pl#9 [U] wire#39
+26, 3, 40          !TDC ROC#2 Sl#14 Ch#26 HDC pl#9 [U] wire#40
+27, 3, 41          !TDC ROC#2 Sl#14 Ch#27 HDC pl#9 [U] wire#41
+28, 3, 42          !TDC ROC#2 Sl#14 Ch#28 HDC pl#9 [U] wire#42
+29, 3, 43          !TDC ROC#2 Sl#14 Ch#29 HDC pl#9 [U] wire#43
+30, 3, 44          !TDC ROC#2 Sl#14 Ch#30 HDC pl#9 [U] wire#44
+31, 3, 45          !TDC ROC#2 Sl#14 Ch#31 HDC pl#9 [U] wire#45
+32, 3, 46          !TDC ROC#2 Sl#14 Ch#32 HDC pl#9 [U] wire#46
+33, 3, 47          !TDC ROC#2 Sl#14 Ch#33 HDC pl#9 [U] wire#47
+34, 3, 48          !TDC ROC#2 Sl#14 Ch#34 HDC pl#9 [U] wire#48
+35, 3, 49          !TDC ROC#2 Sl#14 Ch#35 HDC pl#9 [U] wire#49
+36, 3, 50          !TDC ROC#2 Sl#14 Ch#36 HDC pl#9 [U] wire#50
+37, 3, 51          !TDC ROC#2 Sl#14 Ch#37 HDC pl#9 [U] wire#51
+38, 3, 52          !TDC ROC#2 Sl#14 Ch#38 HDC pl#9 [U] wire#52
+39, 3, 53          !TDC ROC#2 Sl#14 Ch#39 HDC pl#9 [U] wire#53
+40, 3, 54          !TDC ROC#2 Sl#14 Ch#40 HDC pl#9 [U] wire#54
+41, 3, 55          !TDC ROC#2 Sl#14 Ch#41 HDC pl#9 [U] wire#55
+42, 3, 56          !TDC ROC#2 Sl#14 Ch#42 HDC pl#9 [U] wire#56
+43, 3, 57          !TDC ROC#2 Sl#14 Ch#43 HDC pl#9 [U] wire#57
+44, 3, 58          !TDC ROC#2 Sl#14 Ch#44 HDC pl#9 [U] wire#58
+45, 3, 59          !TDC ROC#2 Sl#14 Ch#45 HDC pl#9 [U] wire#59
+46, 3, 60          !TDC ROC#2 Sl#14 Ch#46 HDC pl#9 [U] wire#60
+! 47 !TDC ROC#2 Sl#14 Ch#47 unused
+48, 3, 61          !TDC ROC#2 Sl#14 Ch#48 HDC pl#9 [U] wire#61
+49, 3, 62          !TDC ROC#2 Sl#14 Ch#49 HDC pl#9 [U] wire#62
+50, 3, 63          !TDC ROC#2 Sl#14 Ch#50 HDC pl#9 [U] wire#63
+51, 3, 64          !TDC ROC#2 Sl#14 Ch#51 HDC pl#9 [U] wire#64
+52, 3, 65          !TDC ROC#2 Sl#14 Ch#52 HDC pl#9 [U] wire#65
+53, 3, 66          !TDC ROC#2 Sl#14 Ch#53 HDC pl#9 [U] wire#66
+54, 3, 67          !TDC ROC#2 Sl#14 Ch#54 HDC pl#9 [U] wire#67
+55, 3, 68          !TDC ROC#2 Sl#14 Ch#55 HDC pl#9 [U] wire#68
+56, 3, 69          !TDC ROC#2 Sl#14 Ch#56 HDC pl#9 [U] wire#69
+57, 3, 70          !TDC ROC#2 Sl#14 Ch#57 HDC pl#9 [U] wire#70
+58, 3, 71          !TDC ROC#2 Sl#14 Ch#58 HDC pl#9 [U] wire#71
+59, 3, 72          !TDC ROC#2 Sl#14 Ch#59 HDC pl#9 [U] wire#72
+60, 3, 73          !TDC ROC#2 Sl#14 Ch#60 HDC pl#9 [U] wire#73
+61, 3, 74          !TDC ROC#2 Sl#14 Ch#61 HDC pl#9 [U] wire#74
+62, 3, 75          !TDC ROC#2 Sl#14 Ch#62 HDC pl#9 [U] wire#75
+63, 3, 76          !TDC ROC#2 Sl#14 Ch#63 HDC pl#9 [U] wire#76
+64, 3, 77          !TDC ROC#2 Sl#14 Ch#64 HDC pl#9 [U] wire#77
+65, 3, 78          !TDC ROC#2 Sl#14 Ch#65 HDC pl#9 [U] wire#78
+66, 3, 79          !TDC ROC#2 Sl#14 Ch#66 HDC pl#9 [U] wire#79
+67, 3, 80          !TDC ROC#2 Sl#14 Ch#67 HDC pl#9 [U] wire#80
+68, 3, 81          !TDC ROC#2 Sl#14 Ch#68 HDC pl#9 [U] wire#81
+69, 3, 82          !TDC ROC#2 Sl#14 Ch#69 HDC pl#9 [U] wire#82
+70, 3, 83          !TDC ROC#2 Sl#14 Ch#70 HDC pl#9 [U] wire#83
+71, 3, 84          !TDC ROC#2 Sl#14 Ch#71 HDC pl#9 [U] wire#84
+72, 3, 85          !TDC ROC#2 Sl#14 Ch#72 HDC pl#9 [U] wire#85
+73, 3, 86          !TDC ROC#2 Sl#14 Ch#73 HDC pl#9 [U] wire#86
+74, 3, 87          !TDC ROC#2 Sl#14 Ch#74 HDC pl#9 [U] wire#87
+75, 3, 88          !TDC ROC#2 Sl#14 Ch#75 HDC pl#9 [U] wire#88
+76, 3, 89          !TDC ROC#2 Sl#14 Ch#76 HDC pl#9 [U] wire#89
+77, 3, 90          !TDC ROC#2 Sl#14 Ch#77 HDC pl#9 [U] wire#90
+78, 3, 91          !TDC ROC#2 Sl#14 Ch#78 HDC pl#9 [U] wire#91
+!79, !unused
+80, 3, 92          !TDC ROC#2 Sl#14 Ch#80 HDC pl#9 [U] wire#92
+81, 3, 93          !TDC ROC#2 Sl#14 Ch#81 HDC pl#9 [U] wire#93
+82, 3, 94          !TDC ROC#2 Sl#14 Ch#82 HDC pl#9 [U] wire#94
+83, 3, 95          !TDC ROC#2 Sl#14 Ch#83 HDC pl#9 [U] wire#95
+84, 3, 96          !TDC ROC#2 Sl#14 Ch#84 HDC pl#9 [U] wire#96
+85, 3, 97          !TDC ROC#2 Sl#14 Ch#85 HDC pl#9 [U] wire#97
+86, 3, 98          !TDC ROC#2 Sl#14 Ch#86 HDC pl#9 [U] wire#98
+87, 3, 99          !TDC ROC#2 Sl#14 Ch#87 HDC pl#9 [U] wire#99
+88, 3, 100         !TDC ROC#2 Sl#14 Ch#88 HDC pl#9 [U] wire#100
+89, 3, 101         !TDC ROC#2 Sl#14 Ch#89 HDC pl#9 [U] wire#101
+90, 3, 102         !TDC ROC#2 Sl#14 Ch#90 HDC pl#9 [U] wire#102
+91, 3, 103         !TDC ROC#2 Sl#14 Ch#91 HDC pl#9 [U] wire#103
+92, 3, 104         !TDC ROC#2 Sl#14 Ch#92 HDC pl#9 [U] wire#104
+93, 3, 105         !TDC ROC#2 Sl#14 Ch#93 HDC pl#9 [U] wire#105
+94, 3, 106         !TDC ROC#2 Sl#14 Ch#94 HDC pl#9 [U] wire#106
+95, 3, 107         !TDC ROC#2 Sl#14 Ch#95 HDC pl#9 [U] wire#107
+Slot= 19
+0, 6, 113           !TDC ROC#2 Sl#15 Ch#0 HDC pl#12 [X2] wire#113
+!1,  !unused
+2, 4, 1           !TDC ROC#2 Sl#15 Ch#2 HDC pl#10 [V] wire#1
+3, 4, 2           !TDC ROC#2 Sl#15 Ch#3 HDC pl#10 [V] wire#2
+4, 4, 3           !TDC ROC#2 Sl#15 Ch#4 HDC pl#10 [V] wire#3
+5, 4, 4           !TDC ROC#2 Sl#15 Ch#5 HDC pl#10 [V] wire#4
+6, 4, 5           !TDC ROC#2 Sl#15 Ch#6 HDC pl#10 [V] wire#5
+7, 4, 6           !TDC ROC#2 Sl#15 Ch#7 HDC pl#10 [V] wire#6
+8, 4, 7           !TDC ROC#2 Sl#15 Ch#8 HDC pl#10 [V] wire#7
+9, 4, 8          !TDC ROC#2 Sl#15 Ch#9 HDC pl#10 [V] wire#8
+10, 4, 9          !TDC ROC#2 Sl#15 Ch#10 HDC pl#10 [V] wire#9
+11, 4, 10          !TDC ROC#2 Sl#15 Ch#11 HDC pl#10 [V] wire#10
+12, 4, 11          !TDC ROC#2 Sl#15 Ch#12 HDC pl#10 [V] wire#11
+13, 4, 12          !TDC ROC#2 Sl#15 Ch#13 HDC pl#10 [V] wire#12
+14, 4, 13          !TDC ROC#2 Sl#15 Ch#14 HDC pl#10 [V] wire#13
+15, 4, 14          !TDC ROC#2 Sl#15 Ch#15 HDC pl#10 [V] wire#14
+16, 4, 15          !TDC ROC#2 Sl#15 Ch#16 HDC pl#10 [V] wire#15
+17, 4, 16          !TDC ROC#2 Sl#15 Ch#17 HDC pl#10 [V] wire#16
+18, 4, 17          !TDC ROC#2 Sl#15 Ch#18 HDC pl#10 [V] wire#17
+19, 4, 18          !TDC ROC#2 Sl#15 Ch#19 HDC pl#10 [V] wire#18
+20, 4, 19          !TDC ROC#2 Sl#15 Ch#20 HDC pl#10 [V] wire#19
+21, 4, 20          !TDC ROC#2 Sl#15 Ch#21 HDC pl#10 [V] wire#20
+22, 4, 21          !TDC ROC#2 Sl#15 Ch#22 HDC pl#10 [V] wire#21
+23, 4, 22          !TDC ROC#2 Sl#15 Ch#23 HDC pl#10 [V] wire#22
+24, 4, 23          !TDC ROC#2 Sl#15 Ch#24 HDC pl#10 [V] wire#23
+25, 4, 24          !TDC ROC#2 Sl#15 Ch#25 HDC pl#10 [V] wire#24
+26, 4, 25          !TDC ROC#2 Sl#15 Ch#26 HDC pl#10 [V] wire#25
+27, 4, 26          !TDC ROC#2 Sl#15 Ch#27 HDC pl#10 [V] wire#26
+28, 4, 27          !TDC ROC#2 Sl#15 Ch#28 HDC pl#10 [V] wire#27
+29, 4, 28          !TDC ROC#2 Sl#15 Ch#29 HDC pl#10 [V] wire#28
+30, 4, 29          !TDC ROC#2 Sl#15 Ch#30 HDC pl#10 [V] wire#29
+! 31 !TDC ROC#2 Sl#15 Ch#31 unused
+32, 4, 30          !TDC ROC#2 Sl#15 Ch#32 HDC pl#10 [V] wire#30
+33, 4, 31          !TDC ROC#2 Sl#15 Ch#33 HDC pl#10 [V] wire#31
+34, 4, 32          !TDC ROC#2 Sl#15 Ch#34 HDC pl#10 [V] wire#32
+35, 4, 33          !TDC ROC#2 Sl#15 Ch#35 HDC pl#10 [V] wire#33
+36, 4, 34          !TDC ROC#2 Sl#15 Ch#36 HDC pl#10 [V] wire#34
+37, 4, 35          !TDC ROC#2 Sl#15 Ch#37 HDC pl#10 [V] wire#35
+38, 4, 36          !TDC ROC#2 Sl#15 Ch#38 HDC pl#10 [V] wire#36
+39, 4, 37          !TDC ROC#2 Sl#15 Ch#39 HDC pl#10 [V] wire#37
+40, 4, 38          !TDC ROC#2 Sl#15 Ch#40 HDC pl#10 [V] wire#38
+41, 4, 39          !TDC ROC#2 Sl#15 Ch#41 HDC pl#10 [V] wire#39
+42, 4, 40          !TDC ROC#2 Sl#15 Ch#42 HDC pl#10 [V] wire#40
+43, 4, 41          !TDC ROC#2 Sl#15 Ch#43 HDC pl#10 [V] wire#41
+44, 4, 42          !TDC ROC#2 Sl#15 Ch#44 HDC pl#10 [V] wire#42
+45, 4, 43          !TDC ROC#2 Sl#15 Ch#45 HDC pl#10 [V] wire#43
+46, 4, 44          !TDC ROC#2 Sl#15 Ch#46 HDC pl#10 [V] wire#44
+47, 4, 45          !TDC ROC#2 Sl#15 Ch#47 HDC pl#10 [V] wire#45
+48, 4, 46          !TDC ROC#2 Sl#15 Ch#48 HDC pl#10 [V] wire#46
+49, 4, 47          !TDC ROC#2 Sl#15 Ch#49 HDC pl#10 [V] wire#47
+50, 4, 48          !TDC ROC#2 Sl#15 Ch#50 HDC pl#10 [V] wire#48
+51, 4, 49          !TDC ROC#2 Sl#15 Ch#51 HDC pl#10 [V] wire#49
+52, 4, 50          !TDC ROC#2 Sl#15 Ch#52 HDC pl#10 [V] wire#50
+53, 4, 51          !TDC ROC#2 Sl#15 Ch#53 HDC pl#10 [V] wire#51
+54, 4, 52          !TDC ROC#2 Sl#15 Ch#54 HDC pl#10 [V] wire#52
+55, 4, 53          !TDC ROC#2 Sl#15 Ch#55 HDC pl#10 [V] wire#53
+56, 4, 54          !TDC ROC#2 Sl#15 Ch#56 HDC pl#10 [V] wire#54
+57, 4, 55          !TDC ROC#2 Sl#15 Ch#57 HDC pl#10 [V] wire#55
+58, 4, 56          !TDC ROC#2 Sl#15 Ch#58 HDC pl#10 [V] wire#56
+59, 4, 57          !TDC ROC#2 Sl#15 Ch#59 HDC pl#10 [V] wire#57
+60, 4, 58          !TDC ROC#2 Sl#15 Ch#60 HDC pl#10 [V] wire#58
+61, 4, 59          !TDC ROC#2 Sl#15 Ch#61 HDC pl#10 [V] wire#59
+62, 4, 60          !TDC ROC#2 Sl#15 Ch#62 HDC pl#10 [V] wire#60
+! 63 !TDC ROC#2 Sl#15 Ch#63 unused
+64, 4, 61          !TDC ROC#2 Sl#15 Ch#64 HDC pl#10 [V] wire#61
+65, 4, 62          !TDC ROC#2 Sl#15 Ch#65 HDC pl#10 [V] wire#62
+66, 4, 63          !TDC ROC#2 Sl#15 Ch#66 HDC pl#10 [V] wire#63
+67, 4, 64          !TDC ROC#2 Sl#15 Ch#67 HDC pl#10 [V] wire#64
+68, 4, 65          !TDC ROC#2 Sl#15 Ch#68 HDC pl#10 [V] wire#65
+69, 4, 66          !TDC ROC#2 Sl#15 Ch#69 HDC pl#10 [V] wire#66
+70, 4, 67          !TDC ROC#2 Sl#15 Ch#70 HDC pl#10 [V] wire#67
+71, 4, 68          !TDC ROC#2 Sl#15 Ch#71 HDC pl#10 [V] wire#68
+72, 4, 69          !TDC ROC#2 Sl#15 Ch#72 HDC pl#10 [V] wire#69
+73, 4, 70          !TDC ROC#2 Sl#15 Ch#73 HDC pl#10 [V] wire#70
+74, 4, 71          !TDC ROC#2 Sl#15 Ch#74 HDC pl#10 [V] wire#71
+75, 4, 72          !TDC ROC#2 Sl#15 Ch#75 HDC pl#10 [V] wire#72
+76, 4, 73          !TDC ROC#2 Sl#15 Ch#76 HDC pl#10 [V] wire#73
+77, 4, 74          !TDC ROC#2 Sl#15 Ch#77 HDC pl#10 [V] wire#74
+78, 4, 75          !TDC ROC#2 Sl#15 Ch#78 HDC pl#10 [V] wire#75
+79, 4, 76          !TDC ROC#2 Sl#15 Ch#79 HDC pl#10 [V] wire#76
+80, 4, 77          !TDC ROC#2 Sl#15 Ch#80 HDC pl#10 [V] wire#77
+81, 4, 78          !TDC ROC#2 Sl#15 Ch#81 HDC pl#10 [V] wire#78
+82, 4, 79          !TDC ROC#2 Sl#15 Ch#82 HDC pl#10 [V] wire#79
+83, 4, 80          !TDC ROC#2 Sl#15 Ch#83 HDC pl#10 [V] wire#80
+84, 4, 81          !TDC ROC#2 Sl#15 Ch#84 HDC pl#10 [V] wire#81
+85, 4, 82          !TDC ROC#2 Sl#15 Ch#85 HDC pl#10 [V] wire#82
+86, 4, 83          !TDC ROC#2 Sl#15 Ch#86 HDC pl#10 [V] wire#83
+87, 4, 84          !TDC ROC#2 Sl#15 Ch#87 HDC pl#10 [V] wire#84
+88, 4, 85          !TDC ROC#2 Sl#15 Ch#88 HDC pl#10 [V] wire#85
+89, 4, 86          !TDC ROC#2 Sl#15 Ch#89 HDC pl#10 [V] wire#86
+90, 4, 87          !TDC ROC#2 Sl#15 Ch#90 HDC pl#10 [V] wire#87
+91, 4, 88          !TDC ROC#2 Sl#15 Ch#91 HDC pl#10 [V] wire#88
+92, 4, 89          !TDC ROC#2 Sl#15 Ch#92 HDC pl#10 [V] wire#89
+93, 4, 90          !TDC ROC#2 Sl#15 Ch#93 HDC pl#10 [V] wire#90
+94, 4, 91          !TDC ROC#2 Sl#15 Ch#94 HDC pl#10 [V] wire#91
+! 95 !TDC ROC#2 Sl#15 Ch#95 unused
+Slot= 21
+0, 4, 92           !TDC ROC#2 Sl#17 Ch#0 HDC pl#10 [V] wire#92
+1, 4, 93           !TDC ROC#2 Sl#17 Ch#1 HDC pl#10 [V] wire#93
+2, 4, 94           !TDC ROC#2 Sl#17 Ch#2 HDC pl#10 [V] wire#94
+3, 4, 95           !TDC ROC#2 Sl#17 Ch#3 HDC pl#10 [V] wire#95
+4, 4, 96           !TDC ROC#2 Sl#17 Ch#4 HDC pl#10 [V] wire#96
+5, 4, 97           !TDC ROC#2 Sl#17 Ch#5 HDC pl#10 [V] wire#97
+6, 4, 98           !TDC ROC#2 Sl#17 Ch#6 HDC pl#10 [V] wire#98
+7, 4, 99           !TDC ROC#2 Sl#17 Ch#7 HDC pl#10 [V] wire#99
+8, 4, 100          !TDC ROC#2 Sl#17 Ch#8 HDC pl#10 [V] wire#100
+9, 4, 101          !TDC ROC#2 Sl#17 Ch#9 HDC pl#10 [V] wire#101
+10, 4, 102         !TDC ROC#2 Sl#17 Ch#10 HDC pl#10 [V] wire#102
+11, 4, 103         !TDC ROC#2 Sl#17 Ch#11 HDC pl#10 [V] wire#103
+12, 4, 104         !TDC ROC#2 Sl#17 Ch#12 HDC pl#10 [V] wire#104
+13, 4, 105         !TDC ROC#2 Sl#17 Ch#13 HDC pl#10 [V] wire#105
+14, 4, 106         !TDC ROC#2 Sl#17 Ch#14 HDC pl#10 [V] wire#106
+15, 4, 107         !TDC ROC#2 Sl#17 Ch#15 HDC pl#10 [V] wire#107
+16, 5, 1           !TDC ROC#2 Sl#17 Ch#16 HDC pl#11 [Y2] wire#1
+17, 5, 2           !TDC ROC#2 Sl#17 Ch#17 HDC pl#11 [Y2] wire#2
+18, 5, 3           !TDC ROC#2 Sl#17 Ch#18 HDC pl#11 [Y2] wire#3
+19, 5, 4           !TDC ROC#2 Sl#17 Ch#19 HDC pl#11 [Y2] wire#4
+20, 5, 5           !TDC ROC#2 Sl#17 Ch#20 HDC pl#11 [Y2] wire#5
+21, 5, 6           !TDC ROC#2 Sl#17 Ch#21 HDC pl#11 [Y2] wire#6
+22, 5, 7           !TDC ROC#2 Sl#17 Ch#22 HDC pl#11 [Y2] wire#7
+23, 5, 8           !TDC ROC#2 Sl#17 Ch#23 HDC pl#11 [Y2] wire#8
+24, 5, 9           !TDC ROC#2 Sl#17 Ch#24 HDC pl#11 [Y2] wire#9
+25, 5, 10          !TDC ROC#2 Sl#17 Ch#25 HDC pl#11 [Y2] wire#10
+26, 5, 11          !TDC ROC#2 Sl#17 Ch#26 HDC pl#11 [Y2] wire#11
+27, 5, 12          !TDC ROC#2 Sl#17 Ch#27 HDC pl#11 [Y2] wire#12
+28, 5, 13          !TDC ROC#2 Sl#17 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#17 Ch#29 unused
+! 30 !TDC ROC#2 Sl#17 Ch#30 unused
+! 31 !TDC ROC#2 Sl#17 Ch#31 unused
+32, 5, 14          !TDC ROC#2 Sl#17 Ch#32 HDC pl#11 [Y2] wire#14
+33, 5, 15          !TDC ROC#2 Sl#17 Ch#33 HDC pl#11 [Y2] wire#15
+34, 5, 16          !TDC ROC#2 Sl#17 Ch#34 HDC pl#11 [Y2] wire#16
+35, 5, 17          !TDC ROC#2 Sl#17 Ch#35 HDC pl#11 [Y2] wire#17
+36, 5, 18          !TDC ROC#2 Sl#17 Ch#36 HDC pl#11 [Y2] wire#18
+37, 5, 19          !TDC ROC#2 Sl#17 Ch#37 HDC pl#11 [Y2] wire#19
+38, 5, 20          !TDC ROC#2 Sl#17 Ch#38 HDC pl#11 [Y2] wire#20
+39, 5, 21          !TDC ROC#2 Sl#17 Ch#39 HDC pl#11 [Y2] wire#21
+40, 5, 22          !TDC ROC#2 Sl#17 Ch#40 HDC pl#11 [Y2] wire#22
+41, 5, 23          !TDC ROC#2 Sl#17 Ch#41 HDC pl#11 [Y2] wire#23
+42, 5, 24          !TDC ROC#2 Sl#17 Ch#42 HDC pl#11 [Y2] wire#24
+43, 5, 25          !TDC ROC#2 Sl#17 Ch#43 HDC pl#11 [Y2] wire#25
+44, 5, 26          !TDC ROC#2 Sl#17 Ch#44 HDC pl#11 [Y2] wire#26
+! 45 !TDC ROC#2 Sl#17 Ch#45 unused
+! 46 !TDC ROC#2 Sl#17 Ch#46 unused
+! 47 !TDC ROC#2 Sl#17 Ch#47 unused
+48, 5, 27          !TDC ROC#2 Sl#17 Ch#48 HDC pl#11 [Y2] wire#27
+49, 5, 28          !TDC ROC#2 Sl#17 Ch#49 HDC pl#11 [Y2] wire#28
+50, 5, 29          !TDC ROC#2 Sl#17 Ch#50 HDC pl#11 [Y2] wire#29
+51, 5, 30          !TDC ROC#2 Sl#17 Ch#51 HDC pl#11 [Y2] wire#30
+52, 5, 31          !TDC ROC#2 Sl#17 Ch#52 HDC pl#11 [Y2] wire#31
+53, 5, 32          !TDC ROC#2 Sl#17 Ch#53 HDC pl#11 [Y2] wire#32
+54, 5, 33          !TDC ROC#2 Sl#17 Ch#54 HDC pl#11 [Y2] wire#33
+55, 5, 34          !TDC ROC#2 Sl#17 Ch#55 HDC pl#11 [Y2] wire#34
+56, 5, 35          !TDC ROC#2 Sl#17 Ch#56 HDC pl#11 [Y2] wire#35
+57, 5, 36          !TDC ROC#2 Sl#17 Ch#57 HDC pl#11 [Y2] wire#36
+58, 5, 37          !TDC ROC#2 Sl#17 Ch#58 HDC pl#11 [Y2] wire#37
+59, 5, 38          !TDC ROC#2 Sl#17 Ch#59 HDC pl#11 [Y2] wire#38
+60, 5, 39          !TDC ROC#2 Sl#17 Ch#60 HDC pl#11 [Y2] wire#39
+! 61 !TDC ROC#2 Sl#17 Ch#61 unused
+! 62 !TDC ROC#2 Sl#17 Ch#62 unused
+! 63 !TDC ROC#2 Sl#17 Ch#63 unused
+! 64 !TDC ROC#2 Sl#17 Ch#64 unused?????   JV 11/11/97
+65, 5, 40          !TDC ROC#2 Sl#17 Ch#64 HDC pl#11 [Y2] wire#40
+66, 5, 41          !TDC ROC#2 Sl#17 Ch#65 HDC pl#11 [Y2] wire#41
+67, 5, 42          !TDC ROC#2 Sl#17 Ch#66 HDC pl#11 [Y2] wire#42
+68, 5, 43          !TDC ROC#2 Sl#17 Ch#67 HDC pl#11 [Y2] wire#43
+69, 5, 44          !TDC ROC#2 Sl#17 Ch#68 HDC pl#11 [Y2] wire#44
+70, 5, 45          !TDC ROC#2 Sl#17 Ch#69 HDC pl#11 [Y2] wire#45
+71, 5, 46          !TDC ROC#2 Sl#17 Ch#70 HDC pl#11 [Y2] wire#46
+72, 5, 47          !TDC ROC#2 Sl#17 Ch#71 HDC pl#11 [Y2] wire#47
+73, 5, 48          !TDC ROC#2 Sl#17 Ch#72 HDC pl#11 [Y2] wire#48
+74, 5, 49          !TDC ROC#2 Sl#17 Ch#73 HDC pl#11 [Y2] wire#49
+75, 5, 50          !TDC ROC#2 Sl#17 Ch#74 HDC pl#11 [Y2] wire#50
+76, 5, 51          !TDC ROC#2 Sl#17 Ch#75 HDC pl#11 [Y2] wire#51
+77, 5, 52          !TDC ROC#2 Sl#17 Ch#76 HDC pl#11 [Y2] wire#52
+! 77 !TDC ROC#2 Sl#17 Ch#77 unused
+! 78 !TDC ROC#2 Sl#17 Ch#78 unused
+! 79 !TDC ROC#2 Sl#17 Ch#79 unused
+80, 6, 1           !TDC ROC#2 Sl#17 Ch#80 HDC pl#12 [X2] wire#1
+81, 6, 2           !TDC ROC#2 Sl#17 Ch#81 HDC pl#12 [X2] wire#2
+82, 6, 3           !TDC ROC#2 Sl#17 Ch#82 HDC pl#12 [X2] wire#3
+83, 6, 4           !TDC ROC#2 Sl#17 Ch#83 HDC pl#12 [X2] wire#4
+84, 6, 5           !TDC ROC#2 Sl#17 Ch#84 HDC pl#12 [X2] wire#5
+85, 6, 6           !TDC ROC#2 Sl#17 Ch#85 HDC pl#12 [X2] wire#6
+86, 6, 7           !TDC ROC#2 Sl#17 Ch#86 HDC pl#12 [X2] wire#7
+87, 6, 8           !TDC ROC#2 Sl#17 Ch#87 HDC pl#12 [X2] wire#8
+88, 6, 9           !TDC ROC#2 Sl#17 Ch#88 HDC pl#12 [X2] wire#9
+89, 6, 10          !TDC ROC#2 Sl#17 Ch#89 HDC pl#12 [X2] wire#10
+90, 6, 11          !TDC ROC#2 Sl#17 Ch#90 HDC pl#12 [X2] wire#11
+91, 6, 12          !TDC ROC#2 Sl#17 Ch#91 HDC pl#12 [X2] wire#12
+92, 6, 13          !TDC ROC#2 Sl#17 Ch#92 HDC pl#12 [X2] wire#13
+93, 6, 14          !TDC ROC#2 Sl#17 Ch#93 HDC pl#12 [X2] wire#14
+94, 6, 15          !TDC ROC#2 Sl#17 Ch#94 HDC pl#12 [X2] wire#15
+95, 6, 16          !TDC ROC#2 Sl#17 Ch#95 HDC pl#12 [X2] wire#16
+Slot= 22
+0, 6, 17           !TDC ROC#2 Sl#18 Ch#0 HDC pl#12 [X2] wire#17
+1, 6, 18           !TDC ROC#2 Sl#18 Ch#1 HDC pl#12 [X2] wire#18
+2, 6, 19           !TDC ROC#2 Sl#18 Ch#2 HDC pl#12 [X2] wire#19
+3, 6, 20           !TDC ROC#2 Sl#18 Ch#3 HDC pl#12 [X2] wire#20
+4, 6, 21           !TDC ROC#2 Sl#18 Ch#4 HDC pl#12 [X2] wire#21
+5, 6, 22           !TDC ROC#2 Sl#18 Ch#5 HDC pl#12 [X2] wire#22
+6, 6, 23           !TDC ROC#2 Sl#18 Ch#6 HDC pl#12 [X2] wire#23
+7, 6, 24           !TDC ROC#2 Sl#18 Ch#7 HDC pl#12 [X2] wire#24
+8, 6, 25           !TDC ROC#2 Sl#18 Ch#8 HDC pl#12 [X2] wire#25
+9, 6, 26           !TDC ROC#2 Sl#18 Ch#9 HDC pl#12 [X2] wire#26
+10, 6, 27          !TDC ROC#2 Sl#18 Ch#10 HDC pl#12 [X2] wire#27
+11, 6, 28          !TDC ROC#2 Sl#18 Ch#11 HDC pl#12 [X2] wire#28
+12, 6, 29          !TDC ROC#2 Sl#18 Ch#12 HDC pl#12 [X2] wire#29
+13, 6, 30          !TDC ROC#2 Sl#18 Ch#13 HDC pl#12 [X2] wire#30
+14, 6, 31          !TDC ROC#2 Sl#18 Ch#14 HDC pl#12 [X2] wire#31
+15, 6, 32          !TDC ROC#2 Sl#18 Ch#15 HDC pl#12 [X2] wire#32
+16, 6, 33          !TDC ROC#2 Sl#18 Ch#16 HDC pl#12 [X2] wire#33
+17, 6, 34          !TDC ROC#2 Sl#18 Ch#17 HDC pl#12 [X2] wire#34
+18, 6, 35          !TDC ROC#2 Sl#18 Ch#18 HDC pl#12 [X2] wire#35
+19, 6, 36          !TDC ROC#2 Sl#18 Ch#19 HDC pl#12 [X2] wire#36
+20, 6, 37          !TDC ROC#2 Sl#18 Ch#20 HDC pl#12 [X2] wire#37
+21, 6, 38          !TDC ROC#2 Sl#18 Ch#21 HDC pl#12 [X2] wire#38
+22, 6, 39          !TDC ROC#2 Sl#18 Ch#22 HDC pl#12 [X2] wire#39
+23, 6, 40          !TDC ROC#2 Sl#18 Ch#23 HDC pl#12 [X2] wire#40
+24, 6, 41          !TDC ROC#2 Sl#18 Ch#24 HDC pl#12 [X2] wire#41
+25, 6, 42          !TDC ROC#2 Sl#18 Ch#25 HDC pl#12 [X2] wire#42
+26, 6, 43          !TDC ROC#2 Sl#18 Ch#26 HDC pl#12 [X2] wire#43
+27, 6, 44          !TDC ROC#2 Sl#18 Ch#27 HDC pl#12 [X2] wire#44
+28, 6, 45          !TDC ROC#2 Sl#18 Ch#28 HDC pl#12 [X2] wire#45
+29, 6, 46          !TDC ROC#2 Sl#18 Ch#29 HDC pl#12 [X2] wire#46
+30, 6, 47          !TDC ROC#2 Sl#18 Ch#30 HDC pl#12 [X2] wire#47
+31, 6, 48          !TDC ROC#2 Sl#18 Ch#31 HDC pl#12 [X2] wire#48
+32, 6, 49          !TDC ROC#2 Sl#18 Ch#32 HDC pl#12 [X2] wire#49
+33, 6, 50          !TDC ROC#2 Sl#18 Ch#33 HDC pl#12 [X2] wire#50
+34, 6, 51          !TDC ROC#2 Sl#18 Ch#34 HDC pl#12 [X2] wire#51
+35, 6, 52          !TDC ROC#2 Sl#18 Ch#35 HDC pl#12 [X2] wire#52
+36, 6, 53          !TDC ROC#2 Sl#18 Ch#36 HDC pl#12 [X2] wire#53
+37, 6, 54          !TDC ROC#2 Sl#18 Ch#37 HDC pl#12 [X2] wire#54
+38, 6, 55          !TDC ROC#2 Sl#18 Ch#38 HDC pl#12 [X2] wire#55
+39, 6, 56          !TDC ROC#2 Sl#18 Ch#39 HDC pl#12 [X2] wire#56
+40, 6, 57          !TDC ROC#2 Sl#18 Ch#40 HDC pl#12 [X2] wire#57
+41, 6, 58          !TDC ROC#2 Sl#18 Ch#41 HDC pl#12 [X2] wire#58
+42, 6, 59          !TDC ROC#2 Sl#18 Ch#42 HDC pl#12 [X2] wire#59
+43, 6, 60          !TDC ROC#2 Sl#18 Ch#43 HDC pl#12 [X2] wire#60
+44, 6, 61          !TDC ROC#2 Sl#18 Ch#44 HDC pl#12 [X2] wire#61
+45, 6, 62          !TDC ROC#2 Sl#18 Ch#45 HDC pl#12 [X2] wire#62
+46, 6, 63          !TDC ROC#2 Sl#18 Ch#46 HDC pl#12 [X2] wire#63
+47, 6, 64          !TDC ROC#2 Sl#18 Ch#47 HDC pl#12 [X2] wire#64
+48, 6, 65          !TDC ROC#2 Sl#18 Ch#48 HDC pl#12 [X2] wire#65
+49, 6, 66          !TDC ROC#2 Sl#18 Ch#49 HDC pl#12 [X2] wire#66
+50, 6, 67          !TDC ROC#2 Sl#18 Ch#50 HDC pl#12 [X2] wire#67
+51, 6, 68          !TDC ROC#2 Sl#18 Ch#51 HDC pl#12 [X2] wire#68
+52, 6, 69          !TDC ROC#2 Sl#18 Ch#52 HDC pl#12 [X2] wire#69
+53, 6, 70          !TDC ROC#2 Sl#18 Ch#53 HDC pl#12 [X2] wire#70
+54, 6, 71          !TDC ROC#2 Sl#18 Ch#54 HDC pl#12 [X2] wire#71
+55, 6, 72          !TDC ROC#2 Sl#18 Ch#55 HDC pl#12 [X2] wire#72
+56, 6, 73          !TDC ROC#2 Sl#18 Ch#56 HDC pl#12 [X2] wire#73
+57, 6, 74          !TDC ROC#2 Sl#18 Ch#57 HDC pl#12 [X2] wire#74
+58, 6, 75          !TDC ROC#2 Sl#18 Ch#58 HDC pl#12 [X2] wire#75
+59, 6, 76          !TDC ROC#2 Sl#18 Ch#59 HDC pl#12 [X2] wire#76
+60, 6, 77          !TDC ROC#2 Sl#18 Ch#60 HDC pl#12 [X2] wire#77
+61, 6, 78          !TDC ROC#2 Sl#18 Ch#61 HDC pl#12 [X2] wire#78
+62, 6, 79          !TDC ROC#2 Sl#18 Ch#62 HDC pl#12 [X2] wire#79
+63, 6, 80          !TDC ROC#2 Sl#18 Ch#63 HDC pl#12 [X2] wire#80
+64, 6, 81          !TDC ROC#2 Sl#18 Ch#64 HDC pl#12 [X2] wire#81
+65, 6, 82          !TDC ROC#2 Sl#18 Ch#65 HDC pl#12 [X2] wire#82
+66, 6, 83          !TDC ROC#2 Sl#18 Ch#66 HDC pl#12 [X2] wire#83
+67, 6, 84          !TDC ROC#2 Sl#18 Ch#67 HDC pl#12 [X2] wire#84
+68, 6, 85          !TDC ROC#2 Sl#18 Ch#68 HDC pl#12 [X2] wire#85
+69, 6, 86          !TDC ROC#2 Sl#18 Ch#69 HDC pl#12 [X2] wire#86
+70, 6, 87          !TDC ROC#2 Sl#18 Ch#70 HDC pl#12 [X2] wire#87
+71, 6, 88          !TDC ROC#2 Sl#18 Ch#71 HDC pl#12 [X2] wire#88
+72, 6, 89          !TDC ROC#2 Sl#18 Ch#72 HDC pl#12 [X2] wire#89
+73, 6, 90          !TDC ROC#2 Sl#18 Ch#73 HDC pl#12 [X2] wire#90
+74, 6, 91          !TDC ROC#2 Sl#18 Ch#74 HDC pl#12 [X2] wire#91
+75, 6, 92          !TDC ROC#2 Sl#18 Ch#75 HDC pl#12 [X2] wire#92
+76, 6, 93          !TDC ROC#2 Sl#18 Ch#76 HDC pl#12 [X2] wire#93
+77, 6, 94          !TDC ROC#2 Sl#18 Ch#77 HDC pl#12 [X2] wire#94
+78, 6, 95          !TDC ROC#2 Sl#18 Ch#78 HDC pl#12 [X2] wire#95
+79, 6, 96          !TDC ROC#2 Sl#18 Ch#79 HDC pl#12 [X2] wire#96
+80, 6, 97          !TDC ROC#2 Sl#18 Ch#80 HDC pl#12 [X2] wire#97
+81, 6, 98          !TDC ROC#2 Sl#18 Ch#81 HDC pl#12 [X2] wire#98
+82, 6, 99          !TDC ROC#2 Sl#18 Ch#82 HDC pl#12 [X2] wire#99
+83, 6, 100         !TDC ROC#2 Sl#18 Ch#83 HDC pl#12 [X2] wire#100
+84, 6, 101         !TDC ROC#2 Sl#18 Ch#84 HDC pl#12 [X2] wire#101
+85, 6, 102         !TDC ROC#2 Sl#18 Ch#85 HDC pl#12 [X2] wire#102
+86, 6, 103         !TDC ROC#2 Sl#18 Ch#86 HDC pl#12 [X2] wire#103
+87, 6, 104         !TDC ROC#2 Sl#18 Ch#87 HDC pl#12 [X2] wire#104
+88, 6, 105         !TDC ROC#2 Sl#18 Ch#88 HDC pl#12 [X2] wire#105
+89, 6, 106         !TDC ROC#2 Sl#18 Ch#89 HDC pl#12 [X2] wire#106
+90, 6, 107         !TDC ROC#2 Sl#18 Ch#90 HDC pl#12 [X2] wire#107
+91, 6, 108         !TDC ROC#2 Sl#18 Ch#91 HDC pl#12 [X2] wire#108
+92, 6, 109         !TDC ROC#2 Sl#18 Ch#92 HDC pl#12 [X2] wire#109
+93, 6, 110         !TDC ROC#2 Sl#18 Ch#93 HDC pl#12 [X2] wire#110
+94, 6, 111         !TDC ROC#2 Sl#18 Ch#94 HDC pl#12 [X2] wire#111
+95, 6, 112         !TDC ROC#2 Sl#18 Ch#95 HDC pl#12 [X2] wire#112
+!
+!
+!   HMS upstairs (HSCIN+HCAL+HCER) map     K.B.Beard 13-Jun-1994
+!
+
+! ^^^^^^^^^^^^^^^^^^^^^ Wire chambers end here ^^^^^^^^^^^^^^^^^^^^^^
+!=============================================================================
+    ROC= 1               !upstairs HMS crate
+!
+    detector= 2 !HSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 23 ! TDC  
+  0, 1, 1, 2 !TDC ROC#1 Sl#23 Ch#0 HSCIN pl#1 [X1] id#1 sig#2 [TDC+] (0 X1P-01)
+  1, 1, 3, 2 !TDC ROC#1 Sl#23 Ch#1 HSCIN pl#1 [X1] id#3 sig#2 [TDC+] (1 X1P-03)
+  2, 1, 5, 2 !TDC ROC#1 Sl#23 Ch#2 HSCIN pl#1 [X1] id#5 sig#2 [TDC+] (2 X1P-05)
+  3, 1, 7, 2 !TDC ROC#1 Sl#23 Ch#3 HSCIN pl#1 [X1] id#7 sig#2 [TDC+] (3 X1P-07)
+  4, 1, 9, 2 !TDC ROC#1 Sl#23 Ch#4 HSCIN pl#1 [X1] id#9 sig#2 [TDC+] (4 X1P-09)
+  5, 1, 11, 2 !TDC ROC#1 Sl#23 Ch#5 HSCIN pl#1 [X1] id#11 sig#2 [TDC+] (5 X1P-11)
+  6, 1, 13, 2 !TDC ROC#1 Sl#23 Ch#6 HSCIN pl#1 [X1] id#13 sig#2 [TDC+] (6 X1P-13)
+  7, 1, 15, 2 !TDC ROC#1 Sl#23 Ch#7 HSCIN pl#1 [X1] id#15 sig#2 [TDC+] (7 X1P-15)
+  8, 1, 2, 2 !TDC ROC#1 Sl#23 Ch#8 HSCIN pl#1 [X1] id#2 sig#2 [TDC+] (8 X1P-02)
+  9, 1, 4, 2 !TDC ROC#1 Sl#23 Ch#9 HSCIN pl#1 [X1] id#4 sig#2 [TDC+] (9 X1P-04)
+  10, 1, 6, 2 !TDC ROC#1 Sl#23 Ch#10 HSCIN pl#1 [X1] id#6 sig#2 [TDC+] (10 X1P-06)
+  11, 1, 8, 2 !TDC ROC#1 Sl#23 Ch#11 HSCIN pl#1 [X1] id#8 sig#2 [TDC+] (11 X1P-08)
+  12, 1, 10, 2 !TDC ROC#1 Sl#23 Ch#12 HSCIN pl#1 [X1] id#10 sig#2 [TDC+] (12 X1P-10)
+  13, 1, 12, 2 !TDC ROC#1 Sl#23 Ch#13 HSCIN pl#1 [X1] id#12 sig#2 [TDC+] (13 X1P-12)
+  14, 1, 14, 2 !TDC ROC#1 Sl#23 Ch#14 HSCIN pl#1 [X1] id#14 sig#2 [TDC+] (14 X1P-14)
+  15, 1, 16, 2 !TDC ROC#1 Sl#23 Ch#15 HSCIN pl#1 [X1] id#16 sig#2 [TDC+] (15 X1P-16)
+  16, 1, 1, 3 !TDC ROC#1 Sl#23 Ch#16 HSCIN pl#1 [X1] id#1 sig#3 [TDC-] (16 X1N-01)
+  17, 1, 3, 3 !TDC ROC#1 Sl#23 Ch#17 HSCIN pl#1 [X1] id#3 sig#3 [TDC-] (17 X1N-03)
+  18, 1, 5, 3 !TDC ROC#1 Sl#23 Ch#18 HSCIN pl#1 [X1] id#5 sig#3 [TDC-] (18 X1N-05)
+  19, 1, 7, 3 !TDC ROC#1 Sl#23 Ch#19 HSCIN pl#1 [X1] id#7 sig#3 [TDC-] (19 X1N-07)
+  20, 1, 9, 3 !TDC ROC#1 Sl#23 Ch#20 HSCIN pl#1 [X1] id#9 sig#3 [TDC-] (20 X1N-09)
+  21, 1, 11, 3 !TDC ROC#1 Sl#23 Ch#21 HSCIN pl#1 [X1] id#11 sig#3 [TDC-] (21 X1N-11)
+  22, 1, 13, 3 !TDC ROC#1 Sl#23 Ch#22 HSCIN pl#1 [X1] id#13 sig#3 [TDC-] (22 X1N-13)
+  23, 1, 15, 3 !TDC ROC#1 Sl#23 Ch#23 HSCIN pl#1 [X1] id#15 sig#3 [TDC-] (23 X1N-15)
+  24, 1, 2, 3 !TDC ROC#1 Sl#23 Ch#24 HSCIN pl#1 [X1] id#2 sig#3 [TDC-] (24 X1N-02)
+  25, 1, 4, 3 !TDC ROC#1 Sl#23 Ch#25 HSCIN pl#1 [X1] id#4 sig#3 [TDC-] (25 X1N-04)
+  26, 1, 6, 3 !TDC ROC#1 Sl#23 Ch#26 HSCIN pl#1 [X1] id#6 sig#3 [TDC-] (26 X1N-06)
+  27, 1, 8, 3 !TDC ROC#1 Sl#23 Ch#27 HSCIN pl#1 [X1] id#8 sig#3 [TDC-] (27 X1N-08)
+  28, 1, 10, 3 !TDC ROC#1 Sl#23 Ch#28 HSCIN pl#1 [X1] id#10 sig#3 [TDC-] (28 X1N-10)
+  29, 1, 12, 3 !TDC ROC#1 Sl#23 Ch#29 HSCIN pl#1 [X1] id#12 sig#3 [TDC-] (29 X1N-12)
+  30, 1, 14, 3 !TDC ROC#1 Sl#23 Ch#30 HSCIN pl#1 [X1] id#14 sig#3 [TDC-] (30 X1N-14)
+  31, 1, 16, 3 !TDC ROC#1 Sl#23 Ch#31 HSCIN pl#1 [X1] id#16 sig#3 [TDC-] (31 X1N-16)
+  32, 2, 1, 2 !TDC ROC#1 Sl#23 Ch#32 HSCIN pl#2 [Y1] id#1 sig#2 [TDC+] (32 Y1P-01)
+  33, 2, 3, 2 !TDC ROC#1 Sl#23 Ch#33 HSCIN pl#2 [Y1] id#3 sig#2 [TDC+] (33 Y1P-03)
+  34, 2, 5, 2 !TDC ROC#1 Sl#23 Ch#34 HSCIN pl#2 [Y1] id#5 sig#2 [TDC+] (34 Y1P-05)
+  35, 2, 7, 2 !TDC ROC#1 Sl#23 Ch#35 HSCIN pl#2 [Y1] id#7 sig#2 [TDC+] (35 Y1P-07)
+  36, 2, 9, 2 !TDC ROC#1 Sl#23 Ch#36 HSCIN pl#2 [Y1] id#9 sig#2 [TDC+] (36 Y1P-09)
+!  37 !TDC ROC#1 Sl#23 Ch#37 unused
+!  38 !TDC ROC#1 Sl#23 Ch#38 unused
+!  39 !TDC ROC#1 Sl#23 Ch#39 unused
+!!!  40, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+  41, 2, 4, 2 !TDC ROC#1 Sl#23 Ch#41 HSCIN pl#2 [Y1] id#4 sig#2 [TDC+] (41 Y1P-04)
+  42, 2, 6, 2 !TDC ROC#1 Sl#23 Ch#42 HSCIN pl#2 [Y1] id#6 sig#2 [TDC+] (42 Y1P-06)
+  43, 2, 8, 2 !TDC ROC#1 Sl#23 Ch#43 HSCIN pl#2 [Y1] id#8 sig#2 [TDC+] (43 Y1P-08)
+  44, 2, 10, 2 !TDC ROC#1 Sl#23 Ch#44 HSCIN pl#2 [Y1] id#10 sig#2 [TDC+] (44 Y1P-10)
+  45, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#45 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (45 Y1P-02)
+!   h1y2+ was moved from channel 47 to 45 on 1/29/1999
+!  46 !TDC ROC#1 Sl#23 Ch#46 unused
+!  47, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+!   h1y2+ was moved from channel 40 to 47 at run 6168
+  48, 2, 1, 3 !TDC ROC#1 Sl#23 Ch#48 HSCIN pl#2 [Y1] id#1 sig#3 [TDC-] (48 Y1N-01)
+  49, 2, 3, 3 !TDC ROC#1 Sl#23 Ch#49 HSCIN pl#2 [Y1] id#3 sig#3 [TDC-] (49 Y1N-03)
+  50, 2, 5, 3 !TDC ROC#1 Sl#23 Ch#50 HSCIN pl#2 [Y1] id#5 sig#3 [TDC-] (50 Y1N-05)
+  51, 2, 7, 3 !TDC ROC#1 Sl#23 Ch#51 HSCIN pl#2 [Y1] id#7 sig#3 [TDC-] (51 Y1N-07)
+  52, 2, 9, 3 !TDC ROC#1 Sl#23 Ch#52 HSCIN pl#2 [Y1] id#9 sig#3 [TDC-] (52 Y1N-09)
+!  53 !TDC ROC#1 Sl#23 Ch#53 unused
+!  54 !TDC ROC#1 Sl#23 Ch#54 unused
+!  55 !TDC ROC#1 Sl#23 Ch#55 unused
+  56, 2, 2, 3 !TDC ROC#1 Sl#23 Ch#56 HSCIN pl#2 [Y1] id#2 sig#3 [TDC-] (56 Y1N-02)
+  57, 2, 4, 3 !TDC ROC#1 Sl#23 Ch#57 HSCIN pl#2 [Y1] id#4 sig#3 [TDC-] (57 Y1N-04)
+  58, 2, 6, 3 !TDC ROC#1 Sl#23 Ch#58 HSCIN pl#2 [Y1] id#6 sig#3 [TDC-] (58 Y1N-06)
+  59, 2, 8, 3 !TDC ROC#1 Sl#23 Ch#59 HSCIN pl#2 [Y1] id#8 sig#3 [TDC-] (59 Y1N-08)
+!  60, 2, 10, 3 !TDC ROC#1 Sl#23 Ch#60 HSCIN pl#2 [Y1] id#10 sig#3 [TDC-] (60 Y1N-10)
+  61 , 2, 10, 3 !TDC ROC#1 Sl#23 Ch#61 swap location for h1y10-
+!  62 !TDC ROC#1 Sl#23 Ch#62 unused
+!  63 !TDC ROC#1 Sl#23 Ch#63 unused
+!
+ Slot= 21 ! TDC  
+! 
+  0, 3, 1, 2 !TDC ROC#1 Sl#21 Ch#0 HSCIN pl#3 [X2] id#1 sig#2 [TDC+] (0 X2P-01)
+  1, 3, 3, 2 !TDC ROC#1 Sl#21 Ch#1 HSCIN pl#3 [X2] id#3 sig#2 [TDC+] (1 X2P-03)
+  2, 3, 5, 2 !TDC ROC#1 Sl#21 Ch#2 HSCIN pl#3 [X2] id#5 sig#2 [TDC+] (2 X2P-05)
+  3, 3, 7, 2 !TDC ROC#1 Sl#21 Ch#3 HSCIN pl#3 [X2] id#7 sig#2 [TDC+] (3 X2P-07)
+  4, 3, 9, 2 !TDC ROC#1 Sl#21 Ch#4 HSCIN pl#3 [X2] id#9 sig#2 [TDC+] (4 X2P-09)
+  5, 3, 11, 2 !TDC ROC#1 Sl#21 Ch#5 HSCIN pl#3 [X2] id#11 sig#2 [TDC+] (5 X2P-11)
+  6, 3, 13, 2 !TDC ROC#1 Sl#21 Ch#6 HSCIN pl#3 [X2] id#13 sig#2 [TDC+] (6 X2P-13)
+  7, 3, 15, 2 !TDC ROC#1 Sl#21 Ch#7 HSCIN pl#3 [X2] id#15 sig#2 [TDC+] (7 X2P-15)
+!
+  8, 3, 2, 2 !TDC ROC#1 Sl#21 Ch#8 HSCIN pl#3 [X2] id#2 sig#2 [TDC+] (8 X2P-02)
+  9, 3, 4, 2 !TDC ROC#1 Sl#21 Ch#9 HSCIN pl#3 [X2] id#4 sig#2 [TDC+] (9 X2P-04)
+  10, 3, 6, 2 !TDC ROC#1 Sl#21 Ch#10 HSCIN pl#3 [X2] id#6 sig#2 [TDC+] (10 X2P-06)
+  11, 3, 8, 2 !TDC ROC#1 Sl#21 Ch#11 HSCIN pl#3 [X2] id#8 sig#2 [TDC+] (11 X2P-08)
+  12, 3, 10, 2 !TDC ROC#1 Sl#21 Ch#12 HSCIN pl#3 [X2] id#10 sig#2 [TDC+] (12 X2P-10)
+  13, 3, 12, 2 !TDC ROC#1 Sl#21 Ch#13 HSCIN pl#3 [X2] id#12 sig#2 [TDC+] (13 X2P-12)
+  14, 3, 14, 2 !TDC ROC#1 Sl#21 Ch#14 HSCIN pl#3 [X2] id#14 sig#2 [TDC+] (14 X2P-14)
+  15, 3, 16, 2 !TDC ROC#1 Sl#21 Ch#15 HSCIN pl#3 [X2] id#16 sig#2 [TDC+] (15 X2P-16)
+!
+! swapped s2x- with s2y+
+!
+  16, 4, 1, 2 !TDC ROC#1 Sl#21 Ch#32 HSCIN pl#4 [Y2] id#1 sig#2 [TDC+] (32 Y2P-01)
+  17, 4, 3, 2 !TDC ROC#1 Sl#21 Ch#33 HSCIN pl#4 [Y2] id#3 sig#2 [TDC+] (33 Y2P-03)
+  18, 4, 5, 2 !TDC ROC#1 Sl#21 Ch#34 HSCIN pl#4 [Y2] id#5 sig#2 [TDC+] (34 Y2P-05)
+  19, 4, 7, 2 !TDC ROC#1 Sl#21 Ch#35 HSCIN pl#4 [Y2] id#7 sig#2 [TDC+] (35 Y2P-07)
+  20, 4, 9, 2 !TDC ROC#1 Sl#21 Ch#36 HSCIN pl#4 [Y2] id#9 sig#2 [TDC+] (36 Y2P-09)
+!  21 !TDC ROC#1 Sl#21 Ch#37 unused
+!  22 !TDC ROC#1 Sl#21 Ch#38 unused
+!  23 !TDC ROC#1 Sl#21 Ch#39 unused
+  24, 4, 2, 2 !TDC ROC#1 Sl#21 Ch#40 HSCIN pl#4 [Y2] id#2 sig#2 [TDC+] (40 Y2P-02)
+  25, 4, 4, 2 !TDC ROC#1 Sl#21 Ch#41 HSCIN pl#4 [Y2] id#4 sig#2 [TDC+] (41 Y2P-04)
+  26, 4, 6, 2 !TDC ROC#1 Sl#21 Ch#42 HSCIN pl#4 [Y2] id#6 sig#2 [TDC+] (42 Y2P-06)
+  27, 4, 8, 2 !TDC ROC#1 Sl#21 Ch#43 HSCIN pl#4 [Y2] id#8 sig#2 [TDC+] (43 Y2P-08)
+  28, 4, 10, 2 !TDC ROC#1 Sl#21 Ch#44 HSCIN pl#4 [Y2] id#10 sig#2 [TDC+] (44 Y2P-10)
+!  29 !TDC ROC#1 Sl#21 Ch#45 unused
+!  30 !TDC ROC#1 Sl#21 Ch#46 unused
+!  31 !TDC ROC#1 Sl#21 Ch#47 unused
+!
+  32, 3, 1, 3 !TDC ROC#1 Sl#21 Ch#16 HSCIN pl#3 [X2] id#1 sig#3 [TDC-] (16 X2N-01)
+  33, 3, 3, 3 !TDC ROC#1 Sl#21 Ch#17 HSCIN pl#3 [X2] id#3 sig#3 [TDC-] (17 X2N-03)
+  34, 3, 5, 3 !TDC ROC#1 Sl#21 Ch#18 HSCIN pl#3 [X2] id#5 sig#3 [TDC-] (18 X2N-05)
+  35, 3, 7, 3 !TDC ROC#1 Sl#21 Ch#19 HSCIN pl#3 [X2] id#7 sig#3 [TDC-] (19 X2N-07)
+  36, 3, 9, 3 !TDC ROC#1 Sl#21 Ch#20 HSCIN pl#3 [X2] id#9 sig#3 [TDC-] (20 X2N-09)
+  37, 3, 11, 3 !TDC ROC#1 Sl#21 Ch#21 HSCIN pl#3 [X2] id#11 sig#3 [TDC-] (21 X2N-11)
+  38, 3, 13, 3 !TDC ROC#1 Sl#21 Ch#22 HSCIN pl#3 [X2] id#13 sig#3 [TDC-] (22 X2N-13)
+  39, 3, 15, 3 !TDC ROC#1 Sl#21 Ch#23 HSCIN pl#3 [X2] id#15 sig#3 [TDC-] (23 X2N-15)
+!
+  40, 3, 2, 3 !TDC ROC#1 Sl#21 Ch#24 HSCIN pl#3 [X2] id#2 sig#3 [TDC-] (24 X2N-02)
+  41, 3, 4, 3 !TDC ROC#1 Sl#21 Ch#25 HSCIN pl#3 [X2] id#4 sig#3 [TDC-] (25 X2N-04)
+  42, 3, 6, 3 !TDC ROC#1 Sl#21 Ch#26 HSCIN pl#3 [X2] id#6 sig#3 [TDC-] (26 X2N-06)
+  43, 3, 8, 3 !TDC ROC#1 Sl#21 Ch#27 HSCIN pl#3 [X2] id#8 sig#3 [TDC-] (27 X2N-08)
+  44, 3, 10, 3 !TDC ROC#1 Sl#21 Ch#28 HSCIN pl#3 [X2] id#10 sig#3 [TDC-] (28 X2N-10)
+  45, 3, 12, 3 !TDC ROC#1 Sl#21 Ch#29 HSCIN pl#3 [X2] id#12 sig#3 [TDC-] (29 X2N-12)
+  46, 3, 14, 3 !TDC ROC#1 Sl#21 Ch#30 HSCIN pl#3 [X2] id#14 sig#3 [TDC-] (30 X2N-14)
+  47, 3, 16, 3 !TDC ROC#1 Sl#21 Ch#31 HSCIN pl#3 [X2] id#16 sig#3 [TDC-] (31 X2N-16)
+!
+  48, 4, 1, 3 !TDC ROC#1 Sl#21 Ch#48 HSCIN pl#4 [Y2] id#1 sig#3 [TDC-] (48 Y2N-01)
+  49, 4, 3, 3 !TDC ROC#1 Sl#21 Ch#49 HSCIN pl#4 [Y2] id#3 sig#3 [TDC-] (49 Y2N-03)
+  50, 4, 5, 3 !TDC ROC#1 Sl#21 Ch#50 HSCIN pl#4 [Y2] id#5 sig#3 [TDC-] (50 Y2N-05)
+  51, 4, 7, 3 !TDC ROC#1 Sl#21 Ch#51 HSCIN pl#4 [Y2] id#7 sig#3 [TDC-] (51 Y2N-07)
+  52, 4, 9, 3 !TDC ROC#1 Sl#21 Ch#52 HSCIN pl#4 [Y2] id#9 sig#3 [TDC-] (52 Y2N-09)
+!  53 !TDC ROC#1 Sl#21 Ch#53 unused
+!  54 !TDC ROC#1 Sl#21 Ch#54 unused
+!  55 !TDC ROC#1 Sl#21 Ch#55 unused
+  56, 4, 2, 3 !TDC ROC#1 Sl#21 Ch#56 HSCIN pl#4 [Y2] id#2 sig#3 [TDC-] (56 Y2N-02)
+  57, 4, 4, 3 !TDC ROC#1 Sl#21 Ch#57 HSCIN pl#4 [Y2] id#4 sig#3 [TDC-] (57 Y2N-04)
+  58, 4, 6, 3 !TDC ROC#1 Sl#21 Ch#58 HSCIN pl#4 [Y2] id#6 sig#3 [TDC-] (58 Y2N-06)
+  59, 4, 8, 3 !TDC ROC#1 Sl#21 Ch#59 HSCIN pl#4 [Y2] id#8 sig#3 [TDC-] (59 Y2N-08)
+  60, 4, 10, 3 !TDC ROC#1 Sl#21 Ch#60 HSCIN pl#4 [Y2] id#10 sig#3 [TDC-] (60 Y2N-10)
+!  61 !TDC ROC#1 Sl#21 Ch#61 unused
+!  62 !TDC ROC#1 Sl#21 Ch#62 unused
+!  63 !TDC ROC#1 Sl#21 Ch#63 unused
+!
+!!!======================================================================
+    detector= 5 !HMISC
+
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 19 ! TDC  
+
+0, 1, 1, 0  ! 0 !TDC ROC#1 Sl#19 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#1 Sl#19 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#1 Sl#19 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#1 Sl#19 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#1 Sl#19 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#1 Sl#19 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#1 Sl#19 Ch#6 empty
+7, 1, 8, 0  ! 7 !TDC ROC#1 Sl#19 Ch#7 unused
+8, 1, 9, 0  ! 8 !TDC ROC#1 Sl#19 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#1 Sl#19 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#1 Sl#19 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#1 Sl#19 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#1 Sl#19 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#1 Sl#19 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#1 Sl#19 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#1 Sl#19 Ch#15 signal {PEDTRG}
+16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 signal {hS1}                       
+17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 signal {hPRE50}                    
+18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 signal {hS2X}                      
+19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 signal {hPRE150}                   
+20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 signal {hS1X}                      
+21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 signal {hS2Y}                      
+22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 signal {hPRE100}                   
+23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 signal {hS1Y}                      
+24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 signal {hS2}                       
+25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 signal {hPRE200}                   
+26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 signal {hSTOF}                     
+27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 signal {hSCIN}                     
+28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 signal {hELREAL}                   
+29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 signal {hPIPRE}                    
+30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 signal {hELCLEAN}                  
+31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 signal {hPRETRG}                   
+32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 signal {PION}                      
+33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 signal {CER}                       
+34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 signal {hPIONHI}                  
+35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 signal {hCERHI}                  
+36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 signal {??}                        
+37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 signal {UNSER}                     
+38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 signal {BCM1}                      
+39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 signal {BCM2}                      
+40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 signal {hELHI}                     
+41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 signal {hELLO}                     
+42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 signal {hPRHI}                     
+43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 signal {hPRLO}                     
+44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 signal {hSHLO}                     
+45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 signal {CLOCK}                     
+46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 signal {BEAMGATES}                 
+47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 signal {hADCGATES ? PEDS and TRIGS}
+48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 RF no delay
+49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 RF + 10 ns
+53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!
+!=============================================================================
+!                     AEROGEL TDC
+!..............................................................................
+! For aerogel: 0-->ADC_POS
+!	       1-->ADC_NEG
+!              2-->TDC_POS      ! Check one more time (Hamlet, 2002/10/01)
+!              3-->TDC_NEG
+
+    detector= 7 ! Temporary for HAERO
+
+!       TDC module LeCroy 1872a
+
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!!
+! S. Wood have problem to read additional TDC in Slot =18 (2002/10/18, Hamlet)
+!
+! For now I will use some other tdc channels for Aerogel
+!.......................>
+!
+ Slot= 18 ! TDC channels for HMS Aero 
+! Changed May 5, 2003 DJG
+!
+!
+! Slot= 18 !TDC
+!
+! TDC chan  for aerogel (Hamlet, 2002/10/17)
+!
+0, 1, 1, 2 !TDC ROC#1 Sl#18 Ch#0  signal pos 1
+1, 1, 2, 2 !TDC ROC#1 Sl#18 Ch#1  signal pos 2
+2, 1, 3, 2 !TDC ROC#1 Sl#18 Ch#2  signal pos 3
+3, 1, 4, 2 !TDC ROC#1 Sl#18 Ch#3  signal pos 4
+4, 1, 5, 2 !TDC ROC#1 Sl#18 Ch#4  signal pos 5
+5, 1, 6, 2 !TDC ROC#1 Sl#18 Ch#5  signal pos 6
+6, 1, 7, 2 !TDC ROC#1 Sl#18 Ch#6  signal pos 7
+7, 1, 8, 2 !TDC ROC#1 Sl#18 Ch#7  signal pos 8
+8, 1, 1, 3 !TDC ROC#1 Sl#18 Ch#8  signal neg 1
+9, 1, 2, 3 !TDC ROC#1 Sl#18 Ch#9  signal neg 2
+10, 1, 3, 3 !TDC ROC#1 Sl#18 Ch#10  signal neg 3
+11, 1, 4, 3 !TDC ROC#1 Sl#18 Ch#11  signal neg 4
+12, 1, 5, 3 !TDC ROC#1 Sl#18 Ch#12  signal neg 5
+13, 1, 6, 3 !TDC ROC#1 Sl#18 Ch#13  signal neg 6
+14, 1, 7, 3 !TDC ROC#1 Sl#18 Ch#14  signal neg 7
+15, 1, 8, 3 !TDC ROC#1 Sl#18 Ch#15  signal neg 8
+!!
+!16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 unused
+!17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 unused
+!18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 unused
+!19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 unused
+!20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 unused
+!21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 unused
+!22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 unused
+!23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 unused
+!24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 unused
+!25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 unused
+!26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 unused
+!27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 unused
+!28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 unused
+!29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 unused
+!30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 unused
+!31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 unused
+!32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 unused
+!33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 unused
+!34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 unused
+!35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 unused
+!36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 unused
+!37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 unused
+!38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 unused
+!39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 unused
+!40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 unused
+!41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 unused
+!42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 unused
+!43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 unused
+!44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 unused 
+!45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 unused 
+!46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 unused 
+!47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 unused 
+!48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 unused
+!49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+!50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+!51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+!52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 unused
+!53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+!54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+!55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+!56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+!57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+!58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+!59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+!60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+!61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+!62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+!63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!=============================================================================
+!       ADC module LeCroy 1881M
+    detector = 2
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#1 Sl#9 Ch#0 HSCIN pl#1 [X1] id#1 sig#0 [ADC+] (0 X1P-01)
+  1, 1, 3, 0 !ADC ROC#1 Sl#9 Ch#1 HSCIN pl#1 [X1] id#3 sig#0 [ADC+] (1 X1P-03)
+  2, 1, 5, 0 !ADC ROC#1 Sl#9 Ch#2 HSCIN pl#1 [X1] id#5 sig#0 [ADC+] (2 X1P-05)
+  3, 1, 7, 0 !ADC ROC#1 Sl#9 Ch#3 HSCIN pl#1 [X1] id#7 sig#0 [ADC+] (3 X1P-07)
+  4, 1, 9, 0 !ADC ROC#1 Sl#9 Ch#4 HSCIN pl#1 [X1] id#9 sig#0 [ADC+] (4 X1P-09)
+  5, 1, 11, 0 !ADC ROC#1 Sl#9 Ch#5 HSCIN pl#1 [X1] id#11 sig#0 [ADC+] (5 X1P-11)
+  6, 1, 13, 0 !ADC ROC#1 Sl#9 Ch#6 HSCIN pl#1 [X1] id#13 sig#0 [ADC+] (6 X1P-13)
+  7, 1, 15, 0 !ADC ROC#1 Sl#9 Ch#7 HSCIN pl#1 [X1] id#15 sig#0 [ADC+] (7 X1P-15)
+  8, 1, 2, 0 !ADC ROC#1 Sl#9 Ch#8 HSCIN pl#1 [X1] id#2 sig#0 [ADC+] (8 X1P-02)
+  9, 1, 4, 0 !ADC ROC#1 Sl#9 Ch#9 HSCIN pl#1 [X1] id#4 sig#0 [ADC+] (9 X1P-04)
+  10, 1, 6, 0 !ADC ROC#1 Sl#9 Ch#10 HSCIN pl#1 [X1] id#6 sig#0 [ADC+] (10 X1P-06)
+  11, 1, 8, 0 !ADC ROC#1 Sl#9 Ch#11 HSCIN pl#1 [X1] id#8 sig#0 [ADC+] (11 X1P-08)
+  12, 1, 10, 0 !ADC ROC#1 Sl#9 Ch#12 HSCIN pl#1 [X1] id#10 sig#0 [ADC+] (12 X1P-10)
+  13, 1, 12, 0 !ADC ROC#1 Sl#9 Ch#13 HSCIN pl#1 [X1] id#12 sig#0 [ADC+] (13 X1P-12)
+  14, 1, 14, 0 !ADC ROC#1 Sl#9 Ch#14 HSCIN pl#1 [X1] id#14 sig#0 [ADC+] (14 X1P-14)
+  15, 1, 16, 0 !ADC ROC#1 Sl#9 Ch#15 HSCIN pl#1 [X1] id#16 sig#0 [ADC+] (15 X1P-16)
+!
+  16, 1, 1, 1 !ADC ROC#1 Sl#9 Ch#16 HSCIN pl#1 [X1] id#1 sig#1 [ADC-] (16 X1N-01)
+  17, 1, 3, 1 !ADC ROC#1 Sl#9 Ch#17 HSCIN pl#1 [X1] id#3 sig#1 [ADC-] (17 X1N-03)
+  18, 1, 5, 1 !ADC ROC#1 Sl#9 Ch#18 HSCIN pl#1 [X1] id#5 sig#1 [ADC-] (18 X1N-05)
+  19, 1, 7, 1 !ADC ROC#1 Sl#9 Ch#19 HSCIN pl#1 [X1] id#7 sig#1 [ADC-] (19 X1N-07)
+  20, 1, 9, 1 !ADC ROC#1 Sl#9 Ch#20 HSCIN pl#1 [X1] id#9 sig#1 [ADC-] (20 X1N-09)
+  21, 1, 11, 1 !ADC ROC#1 Sl#9 Ch#21 HSCIN pl#1 [X1] id#11 sig#1 [ADC-] (21 X1N-11)
+  22, 1, 13, 1 !ADC ROC#1 Sl#9 Ch#22 HSCIN pl#1 [X1] id#13 sig#1 [ADC-] (22 X1N-13)
+  23, 1, 15, 1 !ADC ROC#1 Sl#9 Ch#23 HSCIN pl#1 [X1] id#15 sig#1 [ADC-] (23 X1N-15)
+  24, 1, 2, 1 !ADC ROC#1 Sl#9 Ch#24 HSCIN pl#1 [X1] id#2 sig#1 [ADC-] (24 X1N-02)
+  25, 1, 4, 1 !ADC ROC#1 Sl#9 Ch#25 HSCIN pl#1 [X1] id#4 sig#1 [ADC-] (25 X1N-04)
+  26, 1, 6, 1 !ADC ROC#1 Sl#9 Ch#26 HSCIN pl#1 [X1] id#6 sig#1 [ADC-] (26 X1N-06)
+  27, 1, 8, 1 !ADC ROC#1 Sl#9 Ch#27 HSCIN pl#1 [X1] id#8 sig#1 [ADC-] (27 X1N-08)
+  28, 1, 10, 1 !ADC ROC#1 Sl#9 Ch#28 HSCIN pl#1 [X1] id#10 sig#1 [ADC-] (28 X1N-10)
+  29, 1, 12, 1 !ADC ROC#1 Sl#9 Ch#29 HSCIN pl#1 [X1] id#12 sig#1 [ADC-] (29 X1N-12)
+  30, 1, 14, 1 !ADC ROC#1 Sl#9 Ch#30 HSCIN pl#1 [X1] id#14 sig#1 [ADC-] (30 X1N-14)
+  31, 1, 16, 1 !ADC ROC#1 Sl#9 Ch#31 HSCIN pl#1 [X1] id#16 sig#1 [ADC-] (31 X1N-16)
+! 
+  32, 2, 1, 0 !ADC ROC#1 Sl#9 Ch#32 HSCIN pl#2 [Y1] id#1 sig#0 [ADC+] (32 Y1P-01)
+  33, 2, 3, 0 !ADC ROC#1 Sl#9 Ch#33 HSCIN pl#2 [Y1] id#3 sig#0 [ADC+] (33 Y1P-03)
+  34, 2, 5, 0 !ADC ROC#1 Sl#9 Ch#34 HSCIN pl#2 [Y1] id#5 sig#0 [ADC+] (34 Y1P-05)
+  35, 2, 7, 0 !ADC ROC#1 Sl#9 Ch#35 HSCIN pl#2 [Y1] id#7 sig#0 [ADC+] (35 Y1P-07)
+  36, 2, 9, 0 !ADC ROC#1 Sl#9 Ch#36 HSCIN pl#2 [Y1] id#9 sig#0 [ADC+] (36 Y1P-09)
+!  37 !ADC ROC#1 Sl#9 Ch#37 unused
+!  38 !ADC ROC#1 Sl#9 Ch#38 unused
+!  39 !ADC ROC#1 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#1 Sl#9 Ch#40 HSCIN pl#2 [Y1] id#2 sig#0 [ADC+] (40 Y1P-02)
+  41, 2, 4, 0 !ADC ROC#1 Sl#9 Ch#41 HSCIN pl#2 [Y1] id#4 sig#0 [ADC+] (41 Y1P-04)
+  42, 2, 6, 0 !ADC ROC#1 Sl#9 Ch#42 HSCIN pl#2 [Y1] id#6 sig#0 [ADC+] (42 Y1P-06)
+  43, 2, 8, 0 !ADC ROC#1 Sl#9 Ch#43 HSCIN pl#2 [Y1] id#8 sig#0 [ADC+] (43 Y1P-08)
+  44, 2, 10, 0 !ADC ROC#1 Sl#9 Ch#44 HSCIN pl#2 [Y1] id#10 sig#0 [ADC+] (44 Y1P-10)
+!  45 !ADC ROC#1 Sl#9 Ch#45 unused
+!  46 !ADC ROC#1 Sl#9 Ch#46 unused
+!  47 !ADC ROC#1 Sl#9 Ch#47 unused
+!
+  48, 2, 1, 1 !ADC ROC#1 Sl#9 Ch#48 HSCIN pl#2 [Y1] id#1 sig#1 [ADC-] (48 Y1N-01)
+  49, 2, 3, 1 !ADC ROC#1 Sl#9 Ch#49 HSCIN pl#2 [Y1] id#3 sig#1 [ADC-] (49 Y1N-03)
+  50, 2, 5, 1 !ADC ROC#1 Sl#9 Ch#50 HSCIN pl#2 [Y1] id#5 sig#1 [ADC-] (50 Y1N-05)
+  51, 2, 7, 1 !ADC ROC#1 Sl#9 Ch#51 HSCIN pl#2 [Y1] id#7 sig#1 [ADC-] (51 Y1N-07)
+  52, 2, 9, 1 !ADC ROC#1 Sl#9 Ch#52 HSCIN pl#2 [Y1] id#9 sig#1 [ADC-] (52 Y1N-09)
+!  53 !ADC ROC#1 Sl#9 Ch#53 unused
+!  54 !ADC ROC#1 Sl#9 Ch#54 unused
+!  55 !ADC ROC#1 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#1 Sl#9 Ch#56 HSCIN pl#2 [Y1] id#2 sig#1 [ADC-] (56 Y1N-02)
+  57, 2, 4, 1 !ADC ROC#1 Sl#9 Ch#57 HSCIN pl#2 [Y1] id#4 sig#1 [ADC-] (57 Y1N-04)
+  58, 2, 6, 1 !ADC ROC#1 Sl#9 Ch#58 HSCIN pl#2 [Y1] id#6 sig#1 [ADC-] (58 Y1N-06)
+  59, 2, 8, 1 !ADC ROC#1 Sl#9 Ch#59 HSCIN pl#2 [Y1] id#8 sig#1 [ADC-] (59 Y1N-08)
+  60, 2, 10, 1 !ADC ROC#1 Sl#9 Ch#60 HSCIN pl#2 [Y1] id#10 sig#1 [ADC-] (60 Y1N-10)
+!  61 !ADC ROC#1 Sl#9 Ch#62 unused
+!  62 !ADC ROC#1 Sl#9 Ch#62 unused
+!  63 !ADC ROC#1 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#1 Sl#7 Ch#0 HSCIN pl#3 [X2] id#1 sig#0 [ADC+] (0 X2P-01)
+  1, 3, 3, 0 !ADC ROC#1 Sl#7 Ch#1 HSCIN pl#3 [X2] id#3 sig#0 [ADC+] (1 X2P-03)
+  2, 3, 5, 0 !ADC ROC#1 Sl#7 Ch#2 HSCIN pl#3 [X2] id#5 sig#0 [ADC+] (2 X2P-05)
+  3, 3, 7, 0 !ADC ROC#1 Sl#7 Ch#3 HSCIN pl#3 [X2] id#7 sig#0 [ADC+] (3 X2P-07)
+  4, 3, 9, 0 !ADC ROC#1 Sl#7 Ch#4 HSCIN pl#3 [X2] id#9 sig#0 [ADC+] (4 X2P-09)
+  5, 3, 11, 0 !ADC ROC#1 Sl#7 Ch#5 HSCIN pl#3 [X2] id#11 sig#0 [ADC+] (5 X2P-11)
+  6, 3, 13, 0 !ADC ROC#1 Sl#7 Ch#6 HSCIN pl#3 [X2] id#13 sig#0 [ADC+] (6 X2P-13)
+  7, 3, 15, 0 !ADC ROC#1 Sl#7 Ch#7 HSCIN pl#3 [X2] id#15 sig#0 [ADC+] (7 X2P-15)
+  8, 3, 2, 0 !ADC ROC#1 Sl#7 Ch#8 HSCIN pl#3 [X2] id#2 sig#0 [ADC+] (8 X2P-02)
+  9, 3, 4, 0 !ADC ROC#1 Sl#7 Ch#9 HSCIN pl#3 [X2] id#4 sig#0 [ADC+] (9 X2P-04)
+  10, 3, 6, 0 !ADC ROC#1 Sl#7 Ch#10 HSCIN pl#3 [X2] id#6 sig#0 [ADC+] (10 X2P-06)
+  11, 3, 8, 0 !ADC ROC#1 Sl#7 Ch#11 HSCIN pl#3 [X2] id#8 sig#0 [ADC+] (11 X2P-08)
+  12, 3, 10, 0 !ADC ROC#1 Sl#7 Ch#12 HSCIN pl#3 [X2] id#10 sig#0 [ADC+] (12 X2P-10)
+  13, 3, 12, 0 !ADC ROC#1 Sl#7 Ch#13 HSCIN pl#3 [X2] id#12 sig#0 [ADC+] (13 X2P-12)
+  14, 3, 14, 0 !ADC ROC#1 Sl#7 Ch#14 HSCIN pl#3 [X2] id#14 sig#0 [ADC+] (14 X2P-14)
+  15, 3, 16, 0 !ADC ROC#1 Sl#7 Ch#15 HSCIN pl#3 [X2] id#16 sig#0 [ADC+] (15 X2P-16)
+! 
+  16, 3, 1, 1 !ADC ROC#1 Sl#7 Ch#16 HSCIN pl#3 [X2] id#1 sig#1 [ADC-] (16 X2N-01)
+  17, 3, 3, 1 !ADC ROC#1 Sl#7 Ch#17 HSCIN pl#3 [X2] id#3 sig#1 [ADC-] (17 X2N-03)
+  18, 3, 5, 1 !ADC ROC#1 Sl#7 Ch#18 HSCIN pl#3 [X2] id#5 sig#1 [ADC-] (18 X2N-05)
+  19, 3, 7, 1 !ADC ROC#1 Sl#7 Ch#19 HSCIN pl#3 [X2] id#7 sig#1 [ADC-] (19 X2N-07)
+  20, 3, 9, 1 !ADC ROC#1 Sl#7 Ch#20 HSCIN pl#3 [X2] id#9 sig#1 [ADC-] (20 X2N-09)
+  21, 3, 11, 1 !ADC ROC#1 Sl#7 Ch#21 HSCIN pl#3 [X2] id#11 sig#1 [ADC-] (21 X2N-11)
+  22, 3, 13, 1 !ADC ROC#1 Sl#7 Ch#22 HSCIN pl#3 [X2] id#13 sig#1 [ADC-] (22 X2N-13)
+  23, 3, 15, 1 !ADC ROC#1 Sl#7 Ch#23 HSCIN pl#3 [X2] id#15 sig#1 [ADC-] (23 X2N-15)
+!
+  24, 3, 2, 1 !ADC ROC#1 Sl#7 Ch#24 HSCIN pl#3 [X2] id#2 sig#1 [ADC-] (24 X2N-02)
+  25, 3, 4, 1 !ADC ROC#1 Sl#7 Ch#25 HSCIN pl#3 [X2] id#4 sig#1 [ADC-] (25 X2N-04)
+  26, 3, 6, 1 !ADC ROC#1 Sl#7 Ch#26 HSCIN pl#3 [X2] id#6 sig#1 [ADC-] (26 X2N-06)
+  27, 3, 8, 1 !ADC ROC#1 Sl#7 Ch#27 HSCIN pl#3 [X2] id#8 sig#1 [ADC-] (27 X2N-08)
+  28, 3, 10, 1 !ADC ROC#1 Sl#7 Ch#28 HSCIN pl#3 [X2] id#10 sig#1 [ADC-] (28 X2N-10)
+  29, 3, 12, 1 !ADC ROC#1 Sl#7 Ch#29 HSCIN pl#3 [X2] id#12 sig#1 [ADC-] (29 X2N-12)
+  30, 3, 14, 1 !ADC ROC#1 Sl#7 Ch#30 HSCIN pl#3 [X2] id#14 sig#1 [ADC-] (30 X2N-14)
+  31, 3, 16, 1 !ADC ROC#1 Sl#7 Ch#31 HSCIN pl#3 [X2] id#16 sig#1 [ADC-] (31 X2N-16)
+  32, 4, 1, 0 !ADC ROC#1 Sl#7 Ch#32 HSCIN pl#4 [Y2] id#1 sig#0 [ADC+] (32 Y2P-01)
+  33, 4, 3, 0 !ADC ROC#1 Sl#7 Ch#33 HSCIN pl#4 [Y2] id#3 sig#0 [ADC+] (33 Y2P-03)
+  34, 4, 5, 0 !ADC ROC#1 Sl#7 Ch#34 HSCIN pl#4 [Y2] id#5 sig#0 [ADC+] (34 Y2P-05)
+  35, 4, 7, 0 !ADC ROC#1 Sl#7 Ch#35 HSCIN pl#4 [Y2] id#7 sig#0 [ADC+] (35 Y2P-07)
+  36, 4, 9, 0 !ADC ROC#1 Sl#7 Ch#36 HSCIN pl#4 [Y2] id#9 sig#0 [ADC+] (36 Y2P-09)
+!  37 !ADC ROC#1 Sl#7 Ch#37 unused
+!  38 !ADC ROC#1 Sl#7 Ch#38 unused
+!  39 !ADC ROC#1 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#1 Sl#7 Ch#40 HSCIN pl#4 [Y2] id#2 sig#0 [ADC+] (40 Y2P-02)
+  41, 4, 4, 0 !ADC ROC#1 Sl#7 Ch#41 HSCIN pl#4 [Y2] id#4 sig#0 [ADC+] (41 Y2P-04)
+  42, 4, 6, 0 !ADC ROC#1 Sl#7 Ch#42 HSCIN pl#4 [Y2] id#6 sig#0 [ADC+] (42 Y2P-06)
+  43, 4, 8, 0 !ADC ROC#1 Sl#7 Ch#43 HSCIN pl#4 [Y2] id#8 sig#0 [ADC+] (43 Y2P-08)
+  44, 4, 10, 0 !ADC ROC#1 Sl#7 Ch#44 HSCIN pl#4 [Y2] id#10 sig#0 [ADC+] (44 Y2P-10)
+!  45 !ADC ROC#1 Sl#7 Ch#45 unused
+!  46 !ADC ROC#1 Sl#7 Ch#46 unused
+!  47 !ADC ROC#1 Sl#7 Ch#47 unused
+  48, 4, 1, 1 !ADC ROC#1 Sl#7 Ch#48 HSCIN pl#4 [Y2] id#1 sig#1 [ADC-] (48 Y2N-01)
+  49, 4, 3, 1 !ADC ROC#1 Sl#7 Ch#49 HSCIN pl#4 [Y2] id#3 sig#1 [ADC-] (49 Y2N-03)
+  50, 4, 5, 1 !ADC ROC#1 Sl#7 Ch#50 HSCIN pl#4 [Y2] id#5 sig#1 [ADC-] (50 Y2N-05)
+  51, 4, 7, 1 !ADC ROC#1 Sl#7 Ch#51 HSCIN pl#4 [Y2] id#7 sig#1 [ADC-] (51 Y2N-07)
+  52, 4, 9, 1 !ADC ROC#1 Sl#7 Ch#52 HSCIN pl#4 [Y2] id#9 sig#1 [ADC-] (52 Y2N-09)
+!  53 !ADC ROC#1 Sl#7 Ch#53 unused
+!  54 !ADC ROC#1 Sl#7 Ch#54 unused
+!  55 !ADC ROC#1 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#1 Sl#7 Ch#56 HSCIN pl#4 [Y2] id#2 sig#1 [ADC-] (56 Y2N-02)
+  57, 4, 4, 1 !ADC ROC#1 Sl#7 Ch#57 HSCIN pl#4 [Y2] id#4 sig#1 [ADC-] (57 Y2N-04)
+  58, 4, 6, 1 !ADC ROC#1 Sl#7 Ch#58 HSCIN pl#4 [Y2] id#6 sig#1 [ADC-] (58 Y2N-06)
+  59, 4, 8, 1 !ADC ROC#1 Sl#7 Ch#59 HSCIN pl#4 [Y2] id#8 sig#1 [ADC-] (59 Y2N-08)
+  60, 4, 10, 1 !ADC ROC#1 Sl#7 Ch#60 HSCIN pl#4 [Y2] id#10 sig#1 [ADC-] (60 Y2N-10)
+!  61 !ADC ROC#1 Sl#7 Ch#61 unused
+!  62 !ADC ROC#1 Sl#7 Ch#62 unused
+!  63 !ADC ROC#1 Sl#7 Ch#63 unused
+!
+!---------------------------------------------------------------------------------
+    detector= 4 !HCAL
+!
+ Slot= 1 ! ADC  
+   0, 1, 1  !ADC ROC#1 Sl#1 Ch#0 HCAL col#1 row#1 (0 A-01)
+   1, 1, 2  !ADC ROC#1 Sl#1 Ch#1 HCAL col#1 row#2 (1 A-02)
+   2, 1, 3  !ADC ROC#1 Sl#1 Ch#2 HCAL col#1 row#3 (2 A-03)
+   3, 1, 4  !ADC ROC#1 Sl#1 Ch#3 HCAL col#1 row#4 (3 A-04)
+   4, 1, 5  !ADC ROC#1 Sl#1 Ch#4 HCAL col#1 row#5 (4 A-05)
+   5, 1, 6  !ADC ROC#1 Sl#1 Ch#5 HCAL col#1 row#6 (5 A-06)
+   6, 1, 7  !ADC ROC#1 Sl#1 Ch#6 HCAL col#1 row#7 (6 A-07)
+   7, 1, 8  !ADC ROC#1 Sl#1 Ch#7 HCAL col#1 row#8 (7 A-08)
+   8, 1, 9  !ADC ROC#1 Sl#1 Ch#8 HCAL col#1 row#9 (8 A-09)
+   9, 1, 10 !ADC ROC#1 Sl#1 Ch#9 HCAL col#1 row#10 (9 A-10)
+  10, 1, 11 !ADC ROC#1 Sl#1 Ch#10 HCAL col#1 row#11 (10 A-11)
+  11, 1, 12 !ADC ROC#1 Sl#1 Ch#11 HCAL col#1 row#12 (11 A-12)
+  12, 1, 13 !ADC ROC#1 Sl#1 Ch#12 HCAL col#1 row#13 (12 A-13)
+!   13 !ADC ROC#1 Sl#1 Ch#13 unused
+!   14 !ADC ROC#1 Sl#1 Ch#14 unused
+!   15 !ADC ROC#1 Sl#1 Ch#15 unused
+  16, 2, 1  !ADC ROC#1 Sl#1 Ch#16 HCAL col#2 row#1 (16 B-01)
+  17, 2, 2  !ADC ROC#1 Sl#1 Ch#17 HCAL col#2 row#2 (17 B-02)
+  18, 2, 3  !ADC ROC#1 Sl#1 Ch#18 HCAL col#2 row#3 (18 B-03)
+  19, 2, 4  !ADC ROC#1 Sl#1 Ch#19 HCAL col#2 row#4 (19 B-04)
+  20, 2, 5  !ADC ROC#1 Sl#1 Ch#20 HCAL col#2 row#5 (20 B-05)
+  21, 2, 6  !ADC ROC#1 Sl#1 Ch#21 HCAL col#2 row#6 (21 B-06)
+  22, 2, 7  !ADC ROC#1 Sl#1 Ch#22 HCAL col#2 row#7 (22 B-07)
+  23, 2, 8  !ADC ROC#1 Sl#1 Ch#23 HCAL col#2 row#8 (23 B-08)
+  24, 2, 9  !ADC ROC#1 Sl#1 Ch#24 HCAL col#2 row#9 (24 B-09)
+  25, 2, 10 !ADC ROC#1 Sl#1 Ch#25 HCAL col#2 row#10 (25 B-10)
+  26, 2, 11 !ADC ROC#1 Sl#1 Ch#26 HCAL col#2 row#11 (26 B-11)
+  27, 2, 12 !ADC ROC#1 Sl#1 Ch#27 HCAL col#2 row#12 (27 B-12)
+  28, 2, 13 !ADC ROC#1 Sl#1 Ch#28 HCAL col#2 row#13 (28 B-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+  32, 3, 1  !ADC ROC#1 Sl#1 Ch#32 HCAL col#3 row#1 (32 C-01)
+  33, 3, 2  !ADC ROC#1 Sl#1 Ch#33 HCAL col#3 row#2 (33 C-02)
+  34, 3, 3  !ADC ROC#1 Sl#1 Ch#34 HCAL col#3 row#3 (34 C-03)
+  35, 3, 4  !ADC ROC#1 Sl#1 Ch#35 HCAL col#3 row#4 (35 C-04)
+  36, 3, 5  !ADC ROC#1 Sl#1 Ch#36 HCAL col#3 row#5 (36 C-05)
+  37, 3, 6  !ADC ROC#1 Sl#1 Ch#37 HCAL col#3 row#6 (37 C-06)
+  38, 3, 7  !ADC ROC#1 Sl#1 Ch#38 HCAL col#3 row#7 (38 C-07)
+  39, 3, 8  !ADC ROC#1 Sl#1 Ch#39 HCAL col#3 row#8 (39 C-08)
+  40, 3, 9  !ADC ROC#1 Sl#1 Ch#40 HCAL col#3 row#9 (40 C-09)
+  41, 3, 10 !ADC ROC#1 Sl#1 Ch#41 HCAL col#3 row#10 (41 C-10)
+  42, 3, 11 !ADC ROC#1 Sl#1 Ch#42 HCAL col#3 row#11 (42 C-11)
+  43, 3, 12 !ADC ROC#1 Sl#1 Ch#43 HCAL col#3 row#12 (43 C-12)
+  44, 3, 13 !ADC ROC#1 Sl#1 Ch#44 HCAL col#3 row#13 (44 C-13)
+!  45 !ADC ROC#1 Sl#1 Ch#45 unused
+!  46 !ADC ROC#1 Sl#1 Ch#46 unused
+!  47 !ADC ROC#1 Sl#1 Ch#47 unused
+  48, 4, 1  !ADC ROC#1 Sl#1 Ch#48 HCAL col#4 row#1 (48 D-01)
+  49, 4, 2  !ADC ROC#1 Sl#1 Ch#49 HCAL col#4 row#2 (49 D-02)
+  50, 4, 3  !ADC ROC#1 Sl#1 Ch#50 HCAL col#4 row#3 (50 D-03)
+  51, 4, 4  !ADC ROC#1 Sl#1 Ch#51 HCAL col#4 row#4 (51 D-04)
+  52, 4, 5  !ADC ROC#1 Sl#1 Ch#52 HCAL col#4 row#5 (52 D-05)
+  53, 4, 6  !ADC ROC#1 Sl#1 Ch#53 HCAL col#4 row#6 (53 D-06)
+  54, 4, 7  !ADC ROC#1 Sl#1 Ch#54 HCAL col#4 row#7 (54 D-07)
+  55, 4, 8  !ADC ROC#1 Sl#1 Ch#55 HCAL col#4 row#8 (55 D-08)
+  56, 4, 9  !ADC ROC#1 Sl#1 Ch#56 HCAL col#4 row#9 (56 D-09)
+  57, 4, 10 !ADC ROC#1 Sl#1 Ch#57 HCAL col#4 row#10 (57 D-10)
+  58, 4, 11 !ADC ROC#1 Sl#1 Ch#58 HCAL col#4 row#11 (58 D-11)
+  59, 4, 12 !ADC ROC#1 Sl#1 Ch#59 HCAL col#4 row#12 (59 D-12)
+  60, 4, 13 !ADC ROC#1 Sl#1 Ch#60 HCAL col#4 row#13 (60 D-13)
+!
+!  61 !ADC ROC#1 Sl#1 Ch#61 unused
+
+    detector= 5    !HMISC - scintillator (ADCs) - behind calorimeter
+  62, 2, 1, 0 !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+  63, 2, 2, 0 !
+!
+detector= 4 !HCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+  0, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#0 HCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#1 HCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#2 HCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#3 HCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#4 HCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#5 HCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#6 HCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#7 HCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#1 Sl#5 Ch#8 HCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#1 Sl#5 Ch#9 HCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#1 Sl#5 Ch#10 HCAL col#1 row#11 (10 An-11)
+  11, 1, 12, 1 !ADC ROC#1 Sl#5 Ch#11 HCAL col#1 row#12 (11 An-112)
+  12, 1, 13, 1 !ADC ROC#1 Sl#5 Ch#12 HCAL col#1 row#13 (12 An-13)
+!  13 !ADC ROC#1 Sl#5 Ch#13 unused
+!  14 !ADC ROC#1 Sl#5 Ch#14 unused
+!  15 !ADC ROC#1 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#1 Sl#5 Ch#16 HCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#1 Sl#5 Ch#17 HCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#1 Sl#5 Ch#18 HCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#1 Sl#5 Ch#19 HCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#1 Sl#5 Ch#20 HCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#1 Sl#5 Ch#21 HCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#1 Sl#5 Ch#22 HCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#1 Sl#5 Ch#23 HCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#1 Sl#5 Ch#24 HCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#1 Sl#5 Ch#25 HCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#1 Sl#5 Ch#26 HCAL col#2 row#11 (26 Bn-11)
+  27, 2, 12, 1 !ADC ROC#1 Sl#5 Ch#27 HCAL col#2 row#12 (27 Bn-12)
+  28, 2, 13, 1 !ADC ROC#1 Sl#5 Ch#28 HCAL col#2 row#13 (28 Bn-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+!
+!==================================================================
+!!!!!!!!!!!!!!!!!!!!!!! AEROGEL ADC !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+    detector = 7
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+!Slot= 5 ! ADC  
+! May be will use spare channels HCAL ADC for aerogel (Hamlet, 2002/10/16)
+!48, 1, 1, 0 !ADC ROC#1 Sl#5 Ch#48 signal pos 1
+!49, 1, 2, 0 !ADC ROC#1 Sl#5 Ch#48signal pos 2
+!50, 1, 3, 0 !ADC ROC#1 Sl#5 Ch#50 signal pos 3
+!51, 1, 4, 0 !ADC ROC#1 Sl#5 Ch#51 signal pos 4
+!52, 1, 5, 0 !ADC ROC#1 Sl#5 Ch#52 signal pos 5
+!53, 1, 6, 0 !ADC ROC#1 Sl#5 Ch#53 signal pos 6
+!54, 1, 7, 0 !ADC ROC#1 Sl#5 Ch#54 signal pos 7
+!55, 1, 8, 0 !ADC ROC#1 Sl#5 Ch#55 signal pos 8
+!56, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#56  signal neg 1
+!57, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#57  signal neg 2
+!58, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#58  signal neg 3
+!59, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#59  signal neg 4
+!60, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#60  signal neg 5
+!61, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#61  signal neg 6
+!62, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#62  signal neg 7
+!63, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#63  signal neg 8
+!
+!   detector = 7
+!    Nsubadd= 64
+!    MASK= 3FFFx
+!    BSUB= 17
+
+  Slot= 11 ! ADC  
+! Additional new ADC for aerogel (Hamlet, 2002/10/17)
+   0, 1, 1, 0 !ADC ROC#1 Sl#11 Ch#0 signal pos 1
+   1, 1, 2, 0 !ADC ROC#1 Sl#11 Ch#1 signal pos 2
+   2, 1, 3, 0 !ADC ROC#1 Sl#11 Ch#2 signal pos 3
+   3, 1, 4, 0 !ADC ROC#1 Sl#11 Ch#3 signal pos 4
+   4, 1, 5, 0 !ADC ROC#1 Sl#11 Ch#4 signal pos 5
+   5, 1, 6, 0 !ADC ROC#1 Sl#11 Ch#5 signal pos 6
+   6, 1, 7, 0 !ADC ROC#1 Sl#11 Ch#6 signal pos 7
+   7, 1, 8, 0 !ADC ROC#1 Sl#11 Ch#7 signal pos 8
+   8, 1, 1, 1 !ADC ROC#1 Sl#11 Ch#8  signal neg 1
+   9, 1, 2, 1 !ADC ROC#1 Sl#11 Ch#9  signal neg 2
+  10, 1, 3, 1 !ADC ROC#1 Sl#11 Ch#10  signal neg 3
+  11, 1, 4, 1 !ADC ROC#1 Sl#11 Ch#11  signal neg 4
+  12, 1, 5, 1 !ADC ROC#1 Sl#11 Ch#12  signal neg 5
+  13, 1, 6, 1 !ADC ROC#1 Sl#11 Ch#13  signal neg 6
+  14, 1, 7, 1 !ADC ROC#1 Sl#11 Ch#14  signal neg 7
+  15, 1, 8, 1 !ADC ROC#1 Sl#11 Ch#15  signal neg 8
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!-----------------------------------------------------------------
+    detector= 3   !HCER
+!
+  Slot= 3
+   0, 1, 1 !ADC  ROC#1 Sl#3 Ch#0 HCER tube#1 (C1)
+   1, 1, 2 !ADC  ROC#1 Sl#3 Ch#1 HCER tube#2 (C2)
+!   2 !ADC ROC#1 Sl#3 Ch#2 unused
+!   3 !ADC ROC#1 Sl#3 Ch#3 unused
+!   4 !ADC ROC#1 Sl#3 Ch#4 unused
+!   5 !ADC ROC#1 Sl#3 Ch#5 unused
+!   6 !ADC ROC#1 Sl#3 Ch#6 unused
+!   7 !ADC ROC#1 Sl#3 Ch#7 unused
+!   8 !ADC ROC#1 Sl#3 Ch#8 unused
+!   9 !ADC ROC#1 Sl#3 Ch#9 unused
+!   10 !ADC ROC#1 Sl#3 Ch#10 unused
+!   11 !ADC ROC#1 Sl#3 Ch#11 unused
+!   12 !ADC ROC#1 Sl#3 Ch#12 unused
+!   13 !ADC ROC#1 Sl#3 Ch#13 unused
+!   14 !ADC ROC#1 Sl#3 Ch#14 unused
+!   15 !ADC ROC#1 Sl#3 Ch#15 unused
+!   16 !ADC ROC#1 Sl#3 Ch#16 unused
+!   17 !ADC ROC#1 Sl#3 Ch#17 unused
+!   18 !ADC ROC#1 Sl#3 Ch#18 unused
+!   19 !ADC ROC#1 Sl#3 Ch#19 unused
+!   20 !ADC ROC#1 Sl#3 Ch#20 unused
+!   21 !ADC ROC#1 Sl#3 Ch#21 unused
+!   22 !ADC ROC#1 Sl#3 Ch#22 unused
+!   23 !ADC ROC#1 Sl#3 Ch#23 unused
+!   24 !ADC ROC#1 Sl#3 Ch#24 unused
+!   25 !ADC ROC#1 Sl#3 Ch#25 unused
+!   26 !ADC ROC#1 Sl#3 Ch#26 unused
+!   27 !ADC ROC#1 Sl#3 Ch#27 unused
+!   28 !ADC ROC#1 Sl#3 Ch#28 unused
+!   29 !ADC ROC#1 Sl#3 Ch#29 unused
+!   30 !ADC ROC#1 Sl#3 Ch#30 unused
+!   31 !ADC ROC#1 Sl#3 Ch#31 unused
+!   32 !ADC ROC#1 Sl#3 Ch#32 unused
+!   33 !ADC ROC#1 Sl#3 Ch#33 unused
+!   34 !ADC ROC#1 Sl#3 Ch#34 unused
+!   35 !ADC ROC#1 Sl#3 Ch#35 unused
+!   36 !ADC ROC#1 Sl#3 Ch#36 unused
+!   37 !ADC ROC#1 Sl#3 Ch#37 unused
+!   38 !ADC ROC#1 Sl#3 Ch#38 unused
+!   39 !ADC ROC#1 Sl#3 Ch#39 unused
+!   40 !ADC ROC#1 Sl#3 Ch#40 unused
+!   41 !ADC ROC#1 Sl#3 Ch#41 unused
+!   42 !ADC ROC#1 Sl#3 Ch#42 unused
+!   43 !ADC ROC#1 Sl#3 Ch#43 unused
+!   44 !ADC ROC#1 Sl#3 Ch#44 unused
+!   45 !ADC ROC#1 Sl#3 Ch#45 unused
+!   46 !ADC ROC#1 Sl#3 Ch#46 unused
+!   47 !ADC ROC#1 Sl#3 Ch#47 unused
+!detector= 6 ! GMISC 
+!!! Use "plane" 2 for the PMT's on the floor (BLM's)
+!48, 2, 1, 0 ! Special PMT signal ch #1
+!49, 2, 2, 0 ! Special PMT signal ch #1
+!50, 2, 3, 0 ! Special PMT signal ch #1
+!51, 2, 4, 0 ! Special PMT signal ch #1
+!52, 2, 5, 0 ! Special PMT signal ch #1
+!53, 2, 6, 0 ! Special PMT signal ch #1
+!54, 2, 7, 0 ! Special PMT signal ch #1
+!55, 2, 8, 0 ! Special PMT signal ch #1
+!   48 !ADC ROC#1 Sl#3 Ch#48 unused
+!   49 !ADC ROC#1 Sl#3 Ch#49 unused
+!   50 !ADC ROC#1 Sl#3 Ch#50 unused
+!   51 !ADC ROC#1 Sl#3 Ch#51 unused
+!   52 !ADC ROC#1 Sl#3 Ch#52 unused
+!   53 !ADC ROC#1 Sl#3 Ch#53 unused
+!   54 !ADC ROC#1 Sl#3 Ch#54 unused
+!   55 !ADC ROC#1 Sl#3 Ch#55 unused
+!   56 !ADC ROC#1 Sl#3 Ch#56 unused
+!   57 !ADC ROC#1 Sl#3 Ch#57 unused
+!   58 !ADC ROC#1 Sl#3 Ch#58 unused
+!   59 !ADC ROC#1 Sl#3 Ch#59 unused
+!   60 !ADC ROC#1 Sl#3 Ch#60 unused
+!   61 !ADC ROC#1 Sl#3 Ch#61 unused
+!   62 !ADC ROC#1 Sl#3 Ch#62 unused
+!   63 !ADC ROC#1 Sl#3 Ch#63 unused
+!
+!
+  detector= 6 ! GMISC
+!
+  Slot= 13
+!
+!  0, 2, 1, 0 !ADC ROC#1 Sl#15 Ch#0
+!  1, 2, 2, 0 !ADC ROC#1 Sl#15 Ch#1
+!  2, 2, 3, 0 !ADC ROC#1 Sl#15 Ch#2
+!  3, 2, 4, 0 !ADC ROC#1 Sl#15 Ch#3
+  4, 2, 5, 0 !ADC ROC#1 Sl#15 Ch#4 H00A X+
+  5, 2, 6, 0 !ADC ROC#1 Sl#15 Ch#5 H00A X-
+  6, 2, 7, 0 !ADC ROC#1 Sl#15 Ch#6 H00A Y+
+  7, 2, 8, 0 !ADC ROC#1 Sl#15 Ch#7 H00A Y-
+  8, 2, 9, 0 !ADC ROC#1 Sl#15 Ch#8 H00B X+
+  9, 2, 10, 0 !ADC ROC#1 Sl#15 Ch#9 H00B X-
+  10, 2, 11, 0 !ADC ROC#1 Sl#15 Ch#10 H00B Y+
+  11, 2, 12, 0 !ADC ROC#1 Sl#15 Ch#11 H00B Y-
+!  12, 2, 13, 0 !ADC ROC#1 Sl#15 Ch#12 Fast Raster X-sync
+!  13, 2, 14, 0 !ADC ROC#1 Sl#15 Ch#13 Fast Raster X-signal
+!  14, 2, 15, 0 !ADC ROC#1 Sl#15 Ch#14 Fast Raster Y-sync
+!  15, 2, 16, 0 !ADC ROC#1 Sl#15 Ch#15 Fast Raster Y-signal
+! mkj switch x and y Apr 9,2003
+  14, 2, 13, 0 !ADC ROC#1 Sl#15 Ch#14 Fast Raster X-sync
+  15, 2, 14, 0 !ADC ROC#1 Sl#15 Ch#15 Fast Raster X-signal
+  12, 2, 15, 0 !ADC ROC#1 Sl#15 Ch#12 Fast Raster Y-sync
+  13, 2, 16, 0 !ADC ROC#1 Sl#15 Ch#13 Fast Raster Y-signal
+  16, 2, 17, 0  !ADC ROC#1 Sl#15 Ch#16 H00C X+
+  17, 2, 18, 0  !ADC ROC#1 Sl#15 Ch#17 H00C X-
+  18, 2, 19, 0  !ADC ROC#1 Sl#15 Ch#18 H00C Y+
+  19, 2, 20, 0  !ADC ROC#1 Sl#15 Ch#19 H00C Y-
+!   20 !ADC ROC#1 Sl#15 Ch#20 unused
+!   21 !ADC ROC#1 Sl#15 Ch#21 unused
+  22, 2, 23, 0  !ADC ROC#1 Sl#15 Ch#22 Raster gate
+!   23 !ADC ROC#1 Sl#15 Ch#23 unused
+!   24 !ADC ROC#1 Sl#15 Ch#24 unused
+!   25 !ADC ROC#1 Sl#15 Ch#25 unused
+!   26 !ADC ROC#1 Sl#15 Ch#26 unused
+!   27 !ADC ROC#1 Sl#15 Ch#27 unused
+!   28 !ADC ROC#1 Sl#15 Ch#28 unused
+!   29 !ADC ROC#1 Sl#15 Ch#29 unused
+!   30 !ADC ROC#1 Sl#15 Ch#30 unused
+!   31 !ADC ROC#1 Sl#15 Ch#31 unused
+   32, 2, 32, 0  ! Paul Gueye
+   33, 2, 33, 0  ! Paul Gueye
+   34, 2, 34, 0  ! Paul Gueye
+   35, 2, 35, 0  ! Paul Gueye
+   36, 2, 36, 0  ! Paul Gueye
+   37, 2, 37, 0  ! Paul Gueye
+   38, 2, 38, 0  ! Paul Gueye
+   39, 2, 39, 0  ! Paul Gueye
+   40, 2, 40, 0  ! Paul Gueye
+   41, 2, 41, 0  ! Paul Gueye
+   42, 2, 42, 0  ! Paul Gueye
+   43, 2, 43, 0  ! Paul Gueye
+   44, 2, 44, 0  ! Paul Gueye
+   45, 2, 45, 0  ! Paul Gueye
+   46, 2, 46, 0  ! Paul Gueye
+   47, 2, 47, 0  ! Paul Gueye
+!   32 !ADC ROC#1 Sl#15 Ch#32 unused
+!   33 !ADC ROC#1 Sl#15 Ch#33 unused
+!   34 !ADC ROC#1 Sl#15 Ch#34 unused
+!   35 !ADC ROC#1 Sl#15 Ch#35 unused
+!   36 !ADC ROC#1 Sl#15 Ch#36 unused
+!   37 !ADC ROC#1 Sl#15 Ch#37 unused
+!   38 !ADC ROC#1 Sl#15 Ch#38 unused
+!   39 !ADC ROC#1 Sl#15 Ch#39 unused
+!   40 !ADC ROC#1 Sl#15 Ch#40 unused
+!   41 !ADC ROC#1 Sl#15 Ch#41 unused
+!   42 !ADC ROC#1 Sl#15 Ch#42 unused
+!   43 !ADC ROC#1 Sl#15 Ch#43 unused
+!   44 !ADC ROC#1 Sl#15 Ch#44 unused
+!   45 !ADC ROC#1 Sl#15 Ch#45 unused
+!   46 !ADC ROC#1 Sl#15 Ch#46 unused
+!   47 !ADC ROC#1 Sl#15 Ch#47 unused
+!   48 !ADC ROC#1 Sl#15 Ch#48 unused
+!   49 !ADC ROC#1 Sl#15 Ch#49 unused
+!   50 !ADC ROC#1 Sl#15 Ch#50 unused
+!   51 !ADC ROC#1 Sl#15 Ch#51 unused
+!   52 !ADC ROC#1 Sl#15 Ch#52 unused
+!   53 !ADC ROC#1 Sl#15 Ch#53 unused
+!   54 !ADC ROC#1 Sl#15 Ch#54 unused
+!   55 !ADC ROC#1 Sl#15 Ch#55 unused
+!   56 !ADC ROC#1 Sl#15 Ch#56 unused
+!   57 !ADC ROC#1 Sl#15 Ch#57 unused
+!   58 !ADC ROC#1 Sl#15 Ch#58 unused
+!   59 !ADC ROC#1 Sl#15 Ch#59 unused
+!   60 !ADC ROC#1 Sl#15 Ch#60 unused
+!   61 !ADC ROC#1 Sl#15 Ch#61 unused
+!   62 !ADC ROC#1 Sl#15 Ch#62 unused
+!   63 !ADC ROC#1 Sl#15 Ch#63 unused
+!
+!---------------------------------------------------------------------
+!=============================== SOS MAP =============================
+!............ This part copy from replay99 (Hamlet,19 Dec'02)............
+!
+!  REAL map for SOS Drift Chambers (SDC); J.R.Arrington 20-Mar-1995
+!                                               
+     ROC= 4   !ReadOutController (crate) for SOS (fbsos)
+!
+       Nsubadd= 96	!assume 96 channel modules
+       MASK= FFFFx      !hex mask - assume LeCroy masking (lowest 13 bits)
+       BSUB= 17         !begin channel info with bit#17
+!
+       detector= 11     !SDC
+!
+       slot= 1          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 1, 1	!chamber 1, U plane, 48 wires.
+ 1, 1, 2
+ 2, 1, 3
+ 3, 1, 4
+ 4, 1, 5
+ 5, 1, 6
+ 6, 1, 7
+ 7, 1, 8
+ 8, 1, 9
+ 9, 1, 10
+ 10, 1, 11
+ 11, 1, 12
+ 12, 1, 13
+ 13, 1, 14
+ 14, 1, 15
+ 15, 1, 16
+ 16, 1, 17
+ 17, 1, 18
+ 18, 1, 19
+ 19, 1, 20
+ 20, 1, 21
+ 21, 1, 22
+ 22, 1, 23
+ 23, 1, 24
+ 24, 1, 25
+ 25, 1, 26
+ 26, 1, 27
+ 27, 1, 28
+ 28, 1, 29
+ 29, 1, 30
+ 30, 1, 31
+ 31, 1, 32
+ 32, 1, 33
+ 33, 1, 34
+ 34, 1, 35
+ 35, 1, 36
+ 36, 1, 37
+ 37, 1, 38
+ 38, 1, 39
+ 39, 1, 40
+ 40, 1, 41
+ 41, 1, 42
+ 42, 1, 43
+ 43, 1, 44
+ 44, 1, 45
+ 45, 1, 46
+ 46, 1, 47
+ 47, 1, 48
+ 48, 2, 1	!chamber 1, U' plane, 48 wires.
+ 49, 2, 2
+ 50, 2, 3
+ 51, 2, 4
+ 52, 2, 5
+ 53, 2, 6
+ 54, 2, 7
+ 55, 2, 8
+ 56, 2, 9
+ 57, 2, 10
+ 58, 2, 11
+ 59, 2, 12
+ 60, 2, 13
+ 61, 2, 14
+ 62, 2, 15
+ 63, 2, 16
+ 64, 2, 17
+ 65, 2, 18
+ 66, 2, 19
+ 67, 2, 20
+ 68, 2, 21
+ 69, 2, 22
+ 70, 2, 23
+ 71, 2, 24
+ 72, 2, 25
+ 73, 2, 26
+ 74, 2, 27
+ 75, 2, 28
+ 76, 2, 29
+ 77, 2, 30
+ 78, 2, 31
+ 79, 2, 32
+ 80, 2, 33
+ 81, 2, 34
+ 82, 2, 35
+ 83, 2, 36
+ 84, 2, 37
+ 85, 2, 38
+ 86, 2, 39
+ 87, 2, 40
+ 88, 2, 41
+ 89, 2, 42
+ 90, 2, 43
+ 91, 2, 44
+ 92, 2, 45
+ 93, 2, 46
+ 94, 2, 47
+ 95, 2, 48
+!
+       slot= 2          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 5, 1	!chamber 1, V plane, 48 wires.
+ 1, 5, 2
+ 2, 5, 3
+ 3, 5, 4
+ 4, 5, 5
+ 5, 5, 6
+ 6, 5, 7
+ 7, 5, 8
+ 8, 5, 9
+ 9, 5, 10
+ 10, 5, 11
+ 11, 5, 12
+ 12, 5, 13
+ 13, 5, 14
+ 14, 5, 15
+ 15, 5, 16
+ 16, 5, 17
+ 17, 5, 18
+ 18, 5, 19
+ 19, 5, 20
+ 20, 5, 21
+ 21, 5, 22
+ 22, 5, 23
+ 23, 5, 24
+ 24, 5, 25
+ 25, 5, 26
+ 26, 5, 27
+ 27, 5, 28
+ 28, 5, 29
+ 29, 5, 30
+ 30, 5, 31
+ 31, 5, 32
+ 32, 5, 33
+ 33, 5, 34
+ 34, 5, 35
+ 35, 5, 36
+ 36, 5, 37
+ 37, 5, 38
+ 38, 5, 39
+ 39, 5, 40
+ 40, 5, 41
+ 41, 5, 42
+ 42, 5, 43
+ 43, 5, 44
+ 44, 5, 45
+ 45, 5, 46
+ 46, 5, 47
+ 47, 5, 48
+ 48, 6, 1	!chamber 1, V' plane, 48 wires.
+ 49, 6, 2
+ 50, 6, 3
+ 51, 6, 4
+ 52, 6, 5
+ 53, 6, 6
+ 54, 6, 7
+ 55, 6, 8
+ 56, 6, 9
+ 57, 6, 10
+ 58, 6, 11
+ 59, 6, 12
+ 60, 6, 13
+ 61, 6, 14
+ 62, 6, 15
+ 63, 6, 16
+ 64, 6, 17
+ 65, 6, 18
+ 66, 6, 19
+ 67, 6, 20
+ 68, 6, 21
+ 69, 6, 22
+ 70, 6, 23
+ 71, 6, 24
+ 72, 6, 25
+ 73, 6, 26
+ 74, 6, 27
+ 75, 6, 28
+ 76, 6, 29
+ 77, 6, 30
+ 78, 6, 31
+ 79, 6, 32
+ 80, 6, 33
+ 81, 6, 34
+ 82, 6, 35
+ 83, 6, 36
+ 84, 6, 37
+ 85, 6, 38
+ 86, 6, 39
+ 87, 6, 40
+ 88, 6, 41
+ 89, 6, 42
+ 90, 6, 43
+ 91, 6, 44
+ 92, 6, 45
+ 93, 6, 46
+ 94, 6, 47
+ 95, 6, 48
+!
+       slot= 4          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 3, 1	!chamber 1, X plane, 64 wires.
+ 1, 3, 2
+ 2, 3, 3
+ 3, 3, 4
+ 4, 3, 5
+ 5, 3, 6
+ 6, 3, 7
+ 7, 3, 8
+ 8, 3, 9
+ 9, 3, 10
+ 10, 3, 11
+ 11, 3, 12
+ 12, 3, 13
+ 13, 3, 14
+ 14, 3, 15
+ 15, 3, 16
+ 16, 3, 17
+ 17, 3, 18
+ 18, 3, 19
+ 19, 3, 20
+ 20, 3, 21
+ 21, 3, 22
+ 22, 3, 23
+ 23, 3, 24
+ 24, 3, 25
+ 25, 3, 26
+ 26, 3, 27
+ 27, 3, 28
+ 28, 3, 29
+ 29, 3, 30
+ 30, 3, 31
+ 31, 3, 32
+ 32, 3, 33
+ 33, 3, 34
+ 34, 3, 35
+ 35, 3, 36
+ 36, 3, 37
+ 37, 3, 38
+ 38, 3, 39
+ 39, 3, 40
+ 40, 3, 41
+ 41, 3, 42
+ 42, 3, 43
+ 43, 3, 44
+ 44, 3, 45
+ 45, 3, 46
+ 46, 3, 47
+ 47, 3, 48
+ 48, 3, 49
+ 49, 3, 50
+ 50, 3, 51
+ 51, 3, 52
+ 52, 3, 53
+ 53, 3, 54
+ 54, 3, 55
+ 55, 3, 56
+ 56, 3, 57
+ 57, 3, 58
+ 58, 3, 59
+ 59, 3, 60
+ 60, 3, 61
+ 61, 3, 62
+ 62, 3, 63
+ 63, 3, 64
+!
+       slot= 5          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 4, 1	!chamber 1, X' plane, 64 wires.
+ 1, 4, 2
+ 2, 4, 3
+ 3, 4, 4
+ 4, 4, 5
+ 5, 4, 6
+ 6, 4, 7
+ 7, 4, 8
+ 8, 4, 9
+ 9, 4, 10
+ 10, 4, 11
+ 11, 4, 12
+ 12, 4, 13
+ 13, 4, 14
+ 14, 4, 15
+ 15, 4, 16
+ 16, 4, 17
+ 17, 4, 18
+ 18, 4, 19
+ 19, 4, 20
+ 20, 4, 21
+ 21, 4, 22
+ 22, 4, 23
+ 23, 4, 24
+ 24, 4, 25
+ 25, 4, 26
+ 26, 4, 27
+ 27, 4, 28
+ 28, 4, 29
+ 29, 4, 30
+ 30, 4, 31
+ 31, 4, 32
+ 32, 4, 33
+ 33, 4, 34
+ 34, 4, 35
+ 35, 4, 36
+ 36, 4, 37
+ 37, 4, 38
+ 38, 4, 39
+ 39, 4, 40
+ 40, 4, 41
+ 41, 4, 42
+ 42, 4, 43
+ 43, 4, 44
+ 44, 4, 45
+ 45, 4, 46
+ 46, 4, 47
+ 47, 4, 48
+ 48, 4, 49
+ 49, 4, 50
+ 50, 4, 51
+ 51, 4, 52
+ 52, 4, 53
+ 53, 4, 54
+ 54, 4, 55
+ 55, 4, 56
+ 56, 4, 57
+ 57, 4, 58
+ 58, 4, 59
+ 59, 4, 60
+ 60, 4, 61
+ 61, 4, 62
+ 62, 4, 63
+ 63, 4, 64
+!
+       slot= 8          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 7, 1	!chamber 2, U plane, 48 wires.
+ 1, 7, 2
+ 2, 7, 3
+ 3, 7, 4
+ 4, 7, 5
+ 5, 7, 6
+ 6, 7, 7
+ 7, 7, 8
+ 8, 7, 9
+ 9, 7, 10
+ 10, 7, 11
+ 11, 7, 12
+ 12, 7, 13
+ 13, 7, 14
+ 14, 7, 15
+ 15, 7, 16
+ 16, 7, 17
+ 17, 7, 18
+ 18, 7, 19
+ 19, 7, 20
+ 20, 7, 21
+ 21, 7, 22
+ 22, 7, 23
+ 23, 7, 24
+ 24, 7, 25
+ 25, 7, 26
+ 26, 7, 27
+ 27, 7, 28
+ 28, 7, 29
+ 29, 7, 30
+ 30, 7, 31
+ 31, 7, 32
+ 32, 7, 33
+ 33, 7, 34
+ 34, 7, 35
+ 35, 7, 36
+ 36, 7, 37
+ 37, 7, 38
+ 38, 7, 39
+ 39, 7, 40
+ 40, 7, 41
+ 41, 7, 42
+ 42, 7, 43
+ 43, 7, 44
+ 44, 7, 45
+ 45, 7, 46
+ 46, 7, 47
+ 47, 7, 48
+ 48, 8, 1	!chamber 2, U' plane, 48 wires.
+ 49, 8, 2
+ 50, 8, 3
+ 51, 8, 4
+ 52, 8, 5
+ 53, 8, 6
+ 54, 8, 7
+ 55, 8, 8
+ 56, 8, 9
+ 57, 8, 10
+ 58, 8, 11
+ 59, 8, 12
+ 60, 8, 13
+ 61, 8, 14
+ 62, 8, 15
+ 63, 8, 16
+ 64, 8, 17
+ 65, 8, 18
+ 66, 8, 19
+ 67, 8, 20
+ 68, 8, 21
+ 69, 8, 22
+ 70, 8, 23
+ 71, 8, 24
+ 72, 8, 25
+ 73, 8, 26
+ 74, 8, 27
+ 75, 8, 28
+ 76, 8, 29
+ 77, 8, 30
+ 78, 8, 31
+ 79, 8, 32
+ 80, 8, 33
+ 81, 8, 34
+ 82, 8, 35
+ 83, 8, 36
+ 84, 8, 37
+ 85, 8, 38
+ 86, 8, 39
+ 87, 8, 40
+ 88, 8, 41
+ 89, 8, 42
+ 90, 8, 43
+ 91, 8, 44
+ 92, 8, 45
+ 93, 8, 46
+ 94, 8, 47
+ 95, 8, 48
+!
+       slot= 9          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 11, 1	!chamber 2, V plane, 48 wires.
+ 1, 11, 2
+ 2, 11, 3
+ 3, 11, 4
+ 4, 11, 5
+ 5, 11, 6
+ 6, 11, 7
+ 7, 11, 8
+ 8, 11, 9
+ 9, 11, 10
+ 10, 11, 11
+ 11, 11, 12
+ 12, 11, 13
+ 13, 11, 14
+ 14, 11, 15
+ 15, 11, 16
+ 16, 11, 17
+ 17, 11, 18
+ 18, 11, 19
+ 19, 11, 20
+ 20, 11, 21
+ 21, 11, 22
+ 22, 11, 23
+ 23, 11, 24
+ 24, 11, 25
+ 25, 11, 26
+ 26, 11, 27
+ 27, 11, 28
+ 28, 11, 29
+ 29, 11, 30
+ 30, 11, 31
+ 31, 11, 32
+ 32, 11, 33
+ 33, 11, 34
+ 34, 11, 35
+ 35, 11, 36
+ 36, 11, 37
+ 37, 11, 38
+ 38, 11, 39
+ 39, 11, 40
+ 40, 11, 41
+ 41, 11, 42
+ 42, 11, 43
+ 43, 11, 44
+ 44, 11, 45
+ 45, 11, 46
+ 46, 11, 47
+ 47, 11, 48
+ 48, 12, 1	!chamber 2, V' plane, 48 wires.
+ 49, 12, 2
+ 50, 12, 3
+ 51, 12, 4
+ 52, 12, 5
+ 53, 12, 6
+ 54, 12, 7
+ 55, 12, 8
+ 56, 12, 9
+ 57, 12, 10
+ 58, 12, 11
+ 59, 12, 12
+ 60, 12, 13
+ 61, 12, 14
+ 62, 12, 15
+ 63, 12, 16
+ 64, 12, 17
+ 65, 12, 18
+ 66, 12, 19
+ 67, 12, 20
+ 68, 12, 21
+ 69, 12, 22
+ 70, 12, 23
+ 71, 12, 24
+ 72, 12, 25
+ 73, 12, 26
+ 74, 12, 27
+ 75, 12, 28
+ 76, 12, 29
+ 77, 12, 30
+ 78, 12, 31
+ 79, 12, 32
+ 80, 12, 33
+ 81, 12, 34
+ 82, 12, 35
+ 83, 12, 36
+ 84, 12, 37
+ 85, 12, 38
+ 86, 12, 39
+ 87, 12, 40
+ 88, 12, 41
+ 89, 12, 42
+ 90, 12, 43
+ 91, 12, 44
+ 92, 12, 45
+ 93, 12, 46
+ 94, 12, 47
+ 95, 12, 48
+!
+       slot= 11          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 9, 1	!chamber 2, X plane, 64 wires.
+ 1, 9, 2
+ 2, 9, 3
+ 3, 9, 4
+ 4, 9, 5
+ 5, 9, 6
+ 6, 9, 7
+ 7, 9, 8
+ 8, 9, 9
+ 9, 9, 10
+ 10, 9, 11
+ 11, 9, 12
+ 12, 9, 13
+ 13, 9, 14
+ 14, 9, 15
+ 15, 9, 16
+ 16, 9, 17
+ 17, 9, 18
+ 18, 9, 19
+ 19, 9, 20
+ 20, 9, 21
+ 21, 9, 22
+ 22, 9, 23
+ 23, 9, 24
+ 24, 9, 25
+ 25, 9, 26
+ 26, 9, 27
+ 27, 9, 28
+ 28, 9, 29
+ 29, 9, 30
+ 30, 9, 31
+ 31, 9, 32
+ 32, 9, 33
+ 33, 9, 34
+ 34, 9, 35
+ 35, 9, 36
+ 36, 9, 37
+ 37, 9, 38
+ 38, 9, 39
+ 39, 9, 40
+ 40, 9, 41
+ 41, 9, 42
+ 42, 9, 43
+ 43, 9, 44
+ 44, 9, 45
+ 45, 9, 46
+ 46, 9, 47
+ 47, 9, 48
+ 48, 9, 49
+ 49, 9, 50
+ 50, 9, 51
+ 51, 9, 52
+ 52, 9, 53
+ 53, 9, 54
+ 54, 9, 55
+ 55, 9, 56
+ 56, 9, 57
+ 57, 9, 58
+ 58, 9, 59
+ 59, 9, 60
+ 60, 9, 61
+ 61, 9, 62
+ 62, 9, 63
+ 63, 9, 64
+!
+       slot= 12          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 10, 1	!chamber 2, X' plane, 64 wires.
+ 1, 10, 2
+ 2, 10, 3
+ 3, 10, 4
+ 4, 10, 5
+ 5, 10, 6
+ 6, 10, 7
+ 7, 10, 8
+ 8, 10, 9
+ 9, 10, 10
+ 10, 10, 11
+ 11, 10, 12
+ 12, 10, 13
+ 13, 10, 14
+ 14, 10, 15
+ 15, 10, 16
+ 16, 10, 17
+ 17, 10, 18
+ 18, 10, 19
+ 19, 10, 20
+ 20, 10, 21
+ 21, 10, 22
+ 22, 10, 23
+ 23, 10, 24
+ 24, 10, 25
+ 25, 10, 26
+ 26, 10, 27
+ 27, 10, 28
+ 28, 10, 29
+ 29, 10, 30
+ 30, 10, 31
+ 31, 10, 32
+ 32, 10, 33
+ 33, 10, 34
+ 34, 10, 35
+ 35, 10, 36
+ 36, 10, 37
+ 37, 10, 38
+ 38, 10, 39
+ 39, 10, 40
+ 40, 10, 41
+ 41, 10, 42
+ 42, 10, 43
+ 43, 10, 44
+ 44, 10, 45
+ 45, 10, 46
+ 46, 10, 47
+ 47, 10, 48
+ 48, 10, 49
+ 49, 10, 50
+ 50, 10, 51
+ 51, 10, 52
+ 52, 10, 53
+ 53, 10, 54
+ 54, 10, 55
+ 55, 10, 56
+ 56, 10, 57
+ 57, 10, 58
+ 58, 10, 59
+ 59, 10, 60
+ 60, 10, 61
+ 61, 10, 62
+ 62, 10, 63
+ 63, 10, 64
+!
+!   SOS upstairs (SSCIN+SCAL+SCER) map    K.B.Beard 13-Jun-1994
+!
+    ROC= 3               !upstairs SOS crate (fbch2)
+!
+    detector= 12 !SSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 22 ! TDC  
+  0, 1, 3, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#3 [TDC+]
+  1, 1, 5, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#5 [TDC+]
+  2, 1, 7, 2 !TDC ROC#3 Sl#23 Ch#2 SSCIN pl#1 [X1] id sig#7 [TDC+]
+  3, 1, 9, 2 !TDC ROC#3 Sl#23 Ch#3 SSCIN pl#1 [X1] id sig#9 [TDC+]
+  4, 1, 2, 2 !TDC ROC#3 Sl#23 Ch#4 SSCIN pl#1 [X1] id sig#2 [TDC+]
+  5, 1, 4, 2 !TDC ROC#3 Sl#23 Ch#5 SSCIN pl#1 [X1] id sig#4 [TDC+]
+  6, 1, 6, 2 !TDC ROC#3 Sl#23 Ch#6 SSCIN pl#1 [X1] id sig#6 [TDC+]
+  7, 1, 8, 2 !TDC ROC#3 Sl#23 Ch#7 SSCIN pl#1 [X1] id sig#8 [TDC+]
+  8, 1, 3, 3 !TDC ROC#3 Sl#23 Ch#8 SSCIN pl#1 [X1] id sig#3 [TDC-]
+  9, 1, 5, 3 !TDC ROC#3 Sl#23 Ch#9 SSCIN pl#1 [X1] id sig#5 [TDC-]
+  10, 1, 7, 3 !TDC ROC#3 Sl#23 Ch#10 SSCIN pl#1 [X1] id sig#7 [TDC-]
+  11, 1, 9, 3 !TDC ROC#3 Sl#23 Ch#11 SSCIN pl#1 [X1] id sig#9 [TDC-]
+  12, 1, 2, 3 !TDC ROC#3 Sl#23 Ch#12 SSCIN pl#1 [X1] id sig#2 [TDC-]
+  13, 1, 4, 3 !TDC ROC#3 Sl#23 Ch#13 SSCIN pl#1 [X1] id sig#4 [TDC-]
+  14, 1, 6, 3 !TDC ROC#3 Sl#23 Ch#14 SSCIN pl#1 [X1] id sig#6 [TDC-]
+  15, 1, 8, 3 !TDC ROC#3 Sl#23 Ch#15 SSCIN pl#1 [X1] id sig#8 [TDC-]
+  16, 2, 3, 2 !TDC ROC#3 Sl#23 Ch#16 SSCIN pl#2 [Y1] id sig#3 [TDC+]
+  17, 2, 5, 2 !TDC ROC#3 Sl#23 Ch#17 SSCIN pl#2 [Y1] id sig#5 [TDC+]
+  18, 2, 7, 2 !TDC ROC#3 Sl#23 Ch#18 SSCIN pl#2 [Y1] id sig#7 [TDC+]
+  19, 2, 9, 2 !TDC ROC#3 Sl#23 Ch#19 SSCIN pl#2 [Y1] id sig#9 [TDC+]
+  20, 2, 2, 2 !TDC ROC#3 Sl#23 Ch#20 SSCIN pl#2 [Y1] id sig#2 [TDC+]
+  21, 2, 4, 2 !TDC ROC#3 Sl#23 Ch#21 SSCIN pl#2 [Y1] id sig#4 [TDC+]
+  22, 2, 6, 2 !TDC ROC#3 Sl#23 Ch#22 SSCIN pl#2 [Y1] id sig#6 [TDC+]
+  23, 2, 8, 2 !TDC ROC#3 Sl#23 Ch#23 SSCIN pl#2 [Y1] id sig#8 [TDC+]
+  24, 2, 3, 3 !TDC ROC#3 Sl#23 Ch#24 SSCIN pl#2 [Y1] id sig#3 [TDC-]
+  25, 2, 5, 3 !TDC ROC#3 Sl#23 Ch#25 SSCIN pl#2 [Y1] id sig#5 [TDC-]
+  26, 2, 7, 3 !TDC ROC#3 Sl#23 Ch#26 SSCIN pl#2 [Y1] id sig#7 [TDC-]
+  27, 2, 9, 3 !TDC ROC#3 Sl#23 Ch#27 SSCIN pl#2 [Y1] id sig#9 [TDC-]
+  28, 2, 2, 3 !TDC ROC#3 Sl#23 Ch#28 SSCIN pl#2 [Y1] id sig#2 [TDC-]
+  29, 2, 4, 3 !TDC ROC#3 Sl#23 Ch#29 SSCIN pl#2 [Y1] id sig#4 [TDC-]
+  30, 2, 6, 3 !TDC ROC#3 Sl#23 Ch#30 SSCIN pl#2 [Y1] id sig#6 [TDC-]
+  31, 2, 8, 3 !TDC ROC#3 Sl#23 Ch#31 SSCIN pl#2 [Y1] id sig#8 [TDC-]
+  32, 4, 3, 2 !TDC ROC#3 Sl#23 Ch#32 SSCIN pl#4 [Y2] id sig#3 [TDC+]
+  33, 4, 5, 2 !TDC ROC#3 Sl#23 Ch#33 SSCIN pl#4 [Y2] id sig#5 [TDC+]
+  34, 4, 7, 2 !TDC ROC#3 Sl#23 Ch#34 SSCIN pl#4 [Y2] id sig#7 [TDC+]
+  35, 4, 9, 2 !TDC ROC#3 Sl#23 Ch#35 SSCIN pl#4 [Y2] id sig#9 [TDC+]
+  36, 4, 2, 2 !TDC ROC#3 Sl#23 Ch#36 SSCIN pl#4 [Y2] id sig#2 [TDC+]
+  37, 4, 4, 2 !TDC ROC#3 Sl#23 Ch#37 SSCIN pl#4 [Y2] id sig#4 [TDC+]
+  38, 4, 6, 2 !TDC ROC#3 Sl#23 Ch#38 SSCIN pl#4 [Y2] id sig#6 [TDC+]
+  39, 4, 8, 2 !TDC ROC#3 Sl#23 Ch#39 SSCIN pl#4 [Y2] id sig#8 [TDC+]
+  40, 4, 3, 3 !TDC ROC#3 Sl#23 Ch#40 SSCIN pl#4 [Y2] id sig#3 [TDC-]
+  41, 4, 5, 3 !TDC ROC#3 Sl#23 Ch#41 SSCIN pl#4 [Y2] id sig#5 [TDC-]
+  42, 4, 7, 3 !TDC ROC#3 Sl#23 Ch#42 SSCIN pl#4 [Y2] id sig#7 [TDC-]
+  43, 4, 9, 3 !TDC ROC#3 Sl#23 Ch#43 SSCIN pl#4 [Y2] id sig#9 [TDC-]
+  44, 4, 2, 3 !TDC ROC#3 Sl#23 Ch#44 SSCIN pl#4 [Y2] id sig#2 [TDC-]
+  45, 4, 4, 3 !TDC ROC#3 Sl#23 Ch#45 SSCIN pl#4 [Y2] id sig#4 [TDC-]
+  46, 4, 6, 3 !TDC ROC#3 Sl#23 Ch#46 SSCIN pl#4 [Y2] id sig#6 [TDC-]
+  47, 4, 8, 3 !TDC ROC#3 Sl#23 Ch#47 SSCIN pl#4 [Y2] id sig#8 [TDC-]
+  48, 1, 1, 2 !TDC ROC#3 Sl#23 Ch#48 SSCIN pl#1 [X1] id sig#1 [TDC+]
+  49, 1, 1, 3 !TDC ROC#3 Sl#23 Ch#49 SSCIN pl#1 [X1] id sig#1 [TDC-]
+  50, 2, 1, 2 !TDC ROC#3 Sl#23 Ch#50 SSCIN pl#2 [Y1] id sig#1 [TDC+]
+  51, 2, 1, 3 !TDC ROC#3 Sl#23 Ch#51 SSCIN pl#2 [Y1] id sig#1 [TDC-]
+  52, 4, 1, 2 !TDC ROC#3 Sl#23 Ch#52 SSCIN pl#4 [Y2] id sig#1 [TDC+]
+  53, 4, 1, 3 !TDC ROC#3 Sl#23 Ch#53 SSCIN pl#4 [Y2] id sig#1 [TDC-]
+!  54 !TDC ROC#3 Sl#23 Ch#54 unused
+!  55 !TDC ROC#3 Sl#23 Ch#55 unused
+!  56 !TDC ROC#3 Sl#23 Ch#56 unused
+!  57 !TDC ROC#3 Sl#23 Ch#57 unused
+!  58 !TDC ROC#3 Sl#23 Ch#58 unused
+!  59 !TDC ROC#3 Sl#23 Ch#59 unused
+!  60 !TDC ROC#3 Sl#23 Ch#60 unused
+!  61 !TDC ROC#3 Sl#23 Ch#61 unused
+!  62 !TDC ROC#3 Sl#23 Ch#62 unused
+!  63 !TDC ROC#3 Sl#23 Ch#63 unused
+!
+!for run 8023, swapped HMS and SOS TDC so that TDC with first 8
+!channels dead would be here.  Moved connectors 1 and 2 to position
+!3 and 4.  Moved 3 singles channels (in connector3) to connector 2.
+
+ Slot= 20 ! TDC  
+  32, 3, 1, 2 !TDC ROC#3 Sl#21 Ch#0 SSCIN pl#3 [X2] id sig#1 [TDC+]
+  33, 3, 3, 2 !TDC ROC#3 Sl#21 Ch#1 SSCIN pl#3 [X2] id sig#3 [TDC+]
+  34, 3, 5, 2 !TDC ROC#3 Sl#21 Ch#2 SSCIN pl#3 [X2] id sig#5 [TDC+]
+  35, 3, 7, 2 !TDC ROC#3 Sl#21 Ch#3 SSCIN pl#3 [X2] id sig#7 [TDC+]
+  36, 3, 9, 2 !TDC ROC#3 Sl#21 Ch#4 SSCIN pl#3 [X2] id sig#9 [TDC+]
+  37, 3, 11, 2 !TDC ROC#3 Sl#21 Ch#5 SSCIN pl#3 [X2] id sig#11 [TDC+]
+  38, 3, 13, 2 !TDC ROC#3 Sl#21 Ch#6 SSCIN pl#3 [X2] id sig#13 [TDC+]
+  39, 3, 15, 2 !TDC ROC#3 Sl#21 Ch#7 SSCIN pl#3 [X2] id sig#15 [TDC+]
+  40, 3, 2, 2 !TDC ROC#3 Sl#21 Ch#8 SSCIN pl#3 [X2] id sig#2 [TDC+]
+  41, 3, 4, 2 !TDC ROC#3 Sl#21 Ch#9 SSCIN pl#3 [X2] id sig#4 [TDC+]
+  42, 3, 6, 2 !TDC ROC#3 Sl#21 Ch#10 SSCIN pl#3 [X2] id sig#6 [TDC+]
+  43, 3, 8, 2 !TDC ROC#3 Sl#21 Ch#11 SSCIN pl#3 [X2] id sig#8 [TDC+]
+  44, 3, 10, 2 !TDC ROC#3 Sl#21 Ch#12 SSCIN pl#3 [X2] id sig#10 [TDC+]
+  45, 3, 12, 2 !TDC ROC#3 Sl#21 Ch#13 SSCIN pl#3 [X2] id sig#12 [TDC+]
+  46, 3, 14, 2 !TDC ROC#3 Sl#21 Ch#14 SSCIN pl#3 [X2] id sig#14 [TDC+]
+  47, 3, 16, 2 !TDC ROC#3 Sl#21 Ch#15 SSCIN pl#3 [X2] id sig#16 [TDC+]
+  48, 3, 1, 3 !TDC ROC#3 Sl#21 Ch#16 SSCIN pl#3 [X2] id sig#1 [TDC-]
+  49, 3, 3, 3 !TDC ROC#3 Sl#21 Ch#17 SSCIN pl#3 [X2] id sig#3 [TDC-]
+  50, 3, 5, 3 !TDC ROC#3 Sl#21 Ch#18 SSCIN pl#3 [X2] id sig#5 [TDC-]
+  51, 3, 7, 3 !TDC ROC#3 Sl#21 Ch#19 SSCIN pl#3 [X2] id sig#7 [TDC-]
+  52, 3, 9, 3 !TDC ROC#3 Sl#21 Ch#20 SSCIN pl#3 [X2] id sig#9 [TDC-]
+  53, 3, 11, 3 !TDC ROC#3 Sl#21 Ch#21 SSCIN pl#3 [X2] id sig#11 [TDC-]
+  54, 3, 13, 3 !TDC ROC#3 Sl#21 Ch#22 SSCIN pl#3 [X2] id sig#13 [TDC-]
+  55, 3, 15, 3 !TDC ROC#3 Sl#21 Ch#23 SSCIN pl#3 [X2] id sig#15 [TDC-]
+  56, 3, 2, 3 !TDC ROC#3 Sl#21 Ch#24 SSCIN pl#3 [X2] id sig#2 [TDC-]
+  57, 3, 4, 3 !TDC ROC#3 Sl#21 Ch#25 SSCIN pl#3 [X2] id sig#4 [TDC-]
+  58, 3, 6, 3 !TDC ROC#3 Sl#21 Ch#26 SSCIN pl#3 [X2] id sig#6 [TDC-]
+  59, 3, 8, 3 !TDC ROC#3 Sl#21 Ch#27 SSCIN pl#3 [X2] id sig#8 [TDC-]
+  60, 3, 10, 3 !TDC ROC#3 Sl#21 Ch#28 SSCIN pl#3 [X2] id sig#10 [TDC-]
+  61, 3, 12, 3 !TDC ROC#3 Sl#21 Ch#29 SSCIN pl#3 [X2] id sig#12 [TDC-]
+  62, 3, 14, 3 !TDC ROC#3 Sl#21 Ch#30 SSCIN pl#3 [X2] id sig#14 [TDC-]
+  63, 3, 16, 3 !TDC ROC#3 Sl#21 Ch#31 SSCIN pl#3 [X2] id sig#16  [TDC-]
+!
+    detector= 15 !SMISC
+!
+  16, 1, 65, 0  ! 0 !TDC ROC#3 Sl#21 Ch#32 RF TDC.
+!
+    detector= 15 !SMISC
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 18 ! TDC  
+0, 1, 1, 0  ! 0 !TDC ROC#3 Sl#20 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#3 Sl#20 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#3 Sl#20 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#3 Sl#20 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#3 Sl#20 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#3 Sl#20 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#3 Sl#20 Ch#6 unused     {MuonL}
+7, 1, 8, 0  ! 7 !TDC ROC#3 Sl#20 Ch#7 unused     {MuonR}
+8, 1, 9, 0  ! 8 !TDC ROC#3 Sl#20 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#3 Sl#20 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#3 Sl#20 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#3 Sl#20 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#3 Sl#20 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#3 Sl#20 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#3 Sl#20 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#3 Sl#20 Ch#15 signal {PEDTRG}
+
+  Slot= 18! TDC
+16, 1, 17, 0  ! 16 !TDC ROC#3 Sl#18 Ch#16 signal {sS1}           
+17, 1, 18, 0  ! 17 !TDC ROC#3 Sl#18 Ch#17 signal {sPRE50}        
+18, 1, 19, 0  ! 18 !TDC ROC#3 Sl#18 Ch#18 signal {sS2X}          
+19, 1, 20, 0  ! 19 !TDC ROC#3 Sl#18 Ch#19 signal {sPRE150}       
+20, 1, 21, 0  ! 20 !TDC ROC#3 Sl#18 Ch#20 signal {sS1X}          
+21, 1, 22, 0  ! 21 !TDC ROC#3 Sl#18 Ch#21 signal {sS2Y}          
+22, 1, 23, 0  ! 22 !TDC ROC#3 Sl#18 Ch#22 signal {sPRE100}       
+23, 1, 24, 0  ! 23 !TDC ROC#3 Sl#18 Ch#23 signal {sS1Y}          
+24, 1, 25, 0  ! 24 !TDC ROC#3 Sl#18 Ch#24 signal {sS2}           
+25, 1, 26, 0  ! 25 !TDC ROC#3 Sl#18 Ch#25 signal {sPRE200}       
+26, 1, 27, 0  ! 26 !TDC ROC#3 Sl#18 Ch#26 signal {sSTOF}         
+27, 1, 28, 0  ! 27 !TDC ROC#3 Sl#18 Ch#27 signal {sSCIN}         
+28, 1, 29, 0  ! 28 !TDC ROC#3 Sl#18 Ch#28 signal {sELREAL}       
+29, 1, 30, 0  ! 29 !TDC ROC#3 Sl#18 Ch#29 signal {sPIPRE}        
+30, 1, 31, 0  ! 30 !TDC ROC#3 Sl#18 Ch#30 signal {sELCLEAN}      
+31, 1, 32, 0  ! 31 !TDC ROC#3 Sl#18 Ch#31 signal {sPRETRG}       
+32, 1, 33, 0  ! 32 !TDC ROC#3 Sl#18 Ch#32 signal {BCM1}          
+33, 1, 34, 0  ! 33 !TDC ROC#3 Sl#18 Ch#33 signal {BCM2}          
+34, 1, 35, 0  ! 34 !TDC ROC#3 Sl#18 Ch#34 signal {BCM3}          
+35, 1, 36, 0  ! 35 !TDC ROC#3 Sl#18 Ch#35 signal {UNSER}         
+36, 1, 37, 0  ! 36 !TDC ROC#3 Sl#18 Ch#36 signal {CLOCK}         
+37, 1, 38, 0  ! 37 !TDC ROC#3 Sl#18 Ch#37 signal {1 MHz * 36??}  
+38, 1, 39, 0  ! 38 !TDC ROC#3 Sl#18 Ch#38 signal {sPICLEAN}      
+39, 1, 40, 0  ! 39 !TDC ROC#3 Sl#18 Ch#39 signal {sELCLEAN}      
+40, 1, 41, 0  ! 40 !TDC ROC#3 Sl#18 Ch#40 signal {sPION}         
+41, 1, 42, 0  ! 41 !TDC ROC#3 Sl#18 Ch#41 signal {sCER}          
+42, 1, 43, 0  ! 42 !TDC ROC#3 Sl#18 Ch#42 signal {sELHI}         
+43, 1, 44, 0  ! 43 !TDC ROC#3 Sl#18 Ch#43 signal {sELLO}         
+44, 1, 45, 0  ! 44 !TDC ROC#3 Sl#18 Ch#44 signal {sPRHI}         
+45, 1, 46, 0  ! 45 !TDC ROC#3 Sl#18 Ch#45 signal {sPRLO}         
+46, 1, 47, 0  ! 46 !TDC ROC#3 Sl#18 Ch#46 signal {sSHLO}         
+47, 1, 48, 0  ! 47 !TDC ROC#3 Sl#18 Ch#47 signal {PEDS+TRIGS?}   
+!
+!       ADC module LeCroy 1881M
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+    detector= 12 !SSCIN
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#3 Sl#9 Ch#0 SSCIN pl#1 [X1] id sig#1 [ADC+]
+  1, 1, 3, 0 !ADC ROC#3 Sl#9 Ch#1 SSCIN pl#1 [X1] id sig#3 [ADC+]
+  2, 1, 5, 0 !ADC ROC#3 Sl#9 Ch#2 SSCIN pl#1 [X1] id sig#5 [ADC+]
+  3, 1, 7, 0 !ADC ROC#3 Sl#9 Ch#3 SSCIN pl#1 [X1] id sig#7 [ADC+]
+  4, 1, 9, 0 !ADC ROC#3 Sl#9 Ch#4 SSCIN pl#1 [X1] id sig#9 [ADC+]
+!  5 !ADC ROC#3 Sl#9 Ch#5 unused
+!  6 !ADC ROC#3 Sl#9 Ch#6 unused
+!  7 !ADC ROC#3 Sl#9 Ch#7 unused
+  8, 1, 2, 0 !ADC ROC#3 Sl#9 Ch#8 SSCIN pl#1 [X1] id sig#2 [ADC+]
+  9, 1, 4, 0 !ADC ROC#3 Sl#9 Ch#9 SSCIN pl#1 [X1] id sig#4 [ADC+]
+  10, 1, 6, 0 !ADC ROC#3 Sl#9 Ch#10 SSCIN pl#1 [X1] id sig#6 [ADC+]
+  11, 1, 8, 0 !ADC ROC#3 Sl#9 Ch#11 SSCIN pl#1 [X1] id sig#8 [ADC+]
+!  12 !ADC ROC#3 Sl#9 Ch#12 unused
+!  13 !ADC ROC#3 Sl#9 Ch#13 unused
+!  14 !ADC ROC#3 Sl#9 Ch#14 unused
+!  15 !ADC ROC#3 Sl#9 Ch#15 unused
+  16, 1, 1, 1 !ADC ROC#3 Sl#9 Ch#16 SSCIN pl#1 [X1] id sig#1 [ADC-]
+  17, 1, 3, 1 !ADC ROC#3 Sl#9 Ch#17 SSCIN pl#1 [X1] id sig#3 [ADC-]
+  18, 1, 5, 1 !ADC ROC#3 Sl#9 Ch#18 SSCIN pl#1 [X1] id sig#5 [ADC-]
+  19, 1, 7, 1 !ADC ROC#3 Sl#9 Ch#19 SSCIN pl#1 [X1] id sig#7 [ADC-]
+  20, 1, 9, 1 !ADC ROC#3 Sl#9 Ch#20 SSCIN pl#1 [X1] id sig#9 [ADC-]
+!  21 !ADC ROC#3 Sl#9 Ch#21 unused
+!  22 !ADC ROC#3 Sl#9 Ch#22 unused
+!  23 !ADC ROC#3 Sl#9 Ch#23 unused
+  24, 1, 2, 1 !ADC ROC#3 Sl#9 Ch#24 SSCIN pl#1 [X1] id sig#2 [ADC-]
+  25, 1, 4, 1 !ADC ROC#3 Sl#9 Ch#25 SSCIN pl#1 [X1] id sig#4 [ADC-]
+  26, 1, 6, 1 !ADC ROC#3 Sl#9 Ch#26 SSCIN pl#1 [X1] id sig#6 [ADC-]
+  27, 1, 8, 1 !ADC ROC#3 Sl#9 Ch#27 SSCIN pl#1 [X1] id sig#8 [ADC-]
+!  28 !ADC ROC#3 Sl#9 Ch#28 unused
+!  29 !ADC ROC#3 Sl#9 Ch#29 unused
+!  30 !ADC ROC#3 Sl#9 Ch#30 unused
+!  31 !ADC ROC#3 Sl#9 Ch#31 unused
+  32, 2, 1, 0 !ADC ROC#3 Sl#9 Ch#32 SSCIN pl#2 [Y1] id sig#1 [ADC+]
+  33, 2, 3, 0 !ADC ROC#3 Sl#9 Ch#33 SSCIN pl#2 [Y1] id sig#3 [ADC+]
+  34, 2, 5, 0 !ADC ROC#3 Sl#9 Ch#34 SSCIN pl#2 [Y1] id sig#5 [ADC+]
+  35, 2, 7, 0 !ADC ROC#3 Sl#9 Ch#35 SSCIN pl#2 [Y1] id sig#7 [ADC+]
+  36, 2, 9, 0 !ADC ROC#3 Sl#9 Ch#36 SSCIN pl#2 [Y1] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#9 Ch#37 unused
+!  38 !ADC ROC#3 Sl#9 Ch#38 unused
+!  39 !ADC ROC#3 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#3 Sl#9 Ch#40 SSCIN pl#2 [Y1] id sig#2 [ADC+]
+  41, 2, 4, 0 !ADC ROC#3 Sl#9 Ch#41 SSCIN pl#2 [Y1] id sig#4 [ADC+]
+  42, 2, 6, 0 !ADC ROC#3 Sl#9 Ch#42 SSCIN pl#2 [Y1] id sig#6 [ADC+]
+  43, 2, 8, 0 !ADC ROC#3 Sl#9 Ch#43 SSCIN pl#2 [Y1] id sig#8 [ADC+]
+!  44 !ADC ROC#3 Sl#9 Ch#44 unused
+!  45 !ADC ROC#3 Sl#9 Ch#45 unused
+!  46 !ADC ROC#3 Sl#9 Ch#46 unused
+!  47 !ADC ROC#3 Sl#9 Ch#47 unused
+  48, 2, 1, 1 !ADC ROC#3 Sl#9 Ch#48 SSCIN pl#2 [Y1] id sig#1 [ADC-]
+  49, 2, 3, 1 !ADC ROC#3 Sl#9 Ch#49 SSCIN pl#2 [Y1] id sig#3 [ADC-]
+  50, 2, 5, 1 !ADC ROC#3 Sl#9 Ch#50 SSCIN pl#2 [Y1] id sig#5 [ADC-]
+  51, 2, 7, 1 !ADC ROC#3 Sl#9 Ch#51 SSCIN pl#2 [Y1] id sig#7 [ADC-]
+  52, 2, 9, 1 !ADC ROC#3 Sl#9 Ch#52 SSCIN pl#2 [Y1] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#9 Ch#53 unused
+!  54 !ADC ROC#3 Sl#9 Ch#54 unused
+!  55 !ADC ROC#3 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#3 Sl#9 Ch#56 SSCIN pl#2 [Y1] id sig#2 [ADC-]
+  57, 2, 4, 1 !ADC ROC#3 Sl#9 Ch#57 SSCIN pl#2 [Y1] id sig#4 [ADC-]
+  58, 2, 6, 1 !ADC ROC#3 Sl#9 Ch#58 SSCIN pl#2 [Y1] id sig#6 [ADC-]
+  59, 2, 8, 1 !ADC ROC#3 Sl#9 Ch#59 SSCIN pl#2 [Y1] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#9 Ch#60 unused
+!  61 !ADC ROC#3 Sl#9 Ch#61 unused
+!  62 !ADC ROC#3 Sl#9 Ch#62 unused
+!  63 !ADC ROC#3 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#3 Sl#7 Ch#0 SSCIN pl#3 [X2] id sig#1 [ADC+]
+  1, 3, 3, 0 !ADC ROC#3 Sl#7 Ch#1 SSCIN pl#3 [X2] id sig#3 [ADC+]
+  2, 3, 5, 0 !ADC ROC#3 Sl#7 Ch#2 SSCIN pl#3 [X2] id sig#5 [ADC+]
+  3, 3, 7, 0 !ADC ROC#3 Sl#7 Ch#3 SSCIN pl#3 [X2] id sig#7 [ADC+]
+  4, 3, 9, 0 !ADC ROC#3 Sl#7 Ch#4 SSCIN pl#3 [X2] id sig#9 [ADC+]
+  5, 3, 11, 0 !ADC ROC#3 Sl#7 Ch#5 SSCIN pl#3 [X2] id sig#11 [ADC+]
+  6, 3, 13, 0 !ADC ROC#3 Sl#7 Ch#6 SSCIN pl#3 [X2] id sig#13 [ADC+]
+  7, 3, 15, 0 !ADC ROC#3 Sl#7 Ch#7 SSCIN pl#3 [X2] id sig#15 [ADC+]
+  8, 3, 2, 0 !ADC ROC#3 Sl#7 Ch#8 SSCIN pl#3 [X2] id sig#2 [ADC+]
+  9, 3, 4, 0 !ADC ROC#3 Sl#7 Ch#9 SSCIN pl#3 [X2] id sig#4 [ADC+]
+  10, 3, 6, 0 !ADC ROC#3 Sl#7 Ch#10 SSCIN pl#3 [X2] id sig#6 [ADC+]
+  11, 3, 8, 0 !ADC ROC#3 Sl#7 Ch#11 SSCIN pl#3 [X2] id sig#8 [ADC+]
+  12, 3, 10, 0 !ADC ROC#3 Sl#7 Ch#12 SSCIN pl#3 [X2] id sig#10 [ADC+]
+  13, 3, 12, 0 !ADC ROC#3 Sl#7 Ch#13 SSCIN pl#3 [X2] id sig#12 [ADC+]
+  14, 3, 14, 0 !ADC ROC#3 Sl#7 Ch#14 SSCIN pl#3 [X2] id sig#14 [ADC+]
+  15, 3, 16, 0 !ADC ROC#3 Sl#7 Ch#15 SSCIN pl#3 [X2] id sig#16 [ADC+]
+  16, 3, 1, 1 !ADC ROC#3 Sl#7 Ch#16 SSCIN pl#3 [X2] id sig#1 [ADC-]
+  17, 3, 3, 1 !ADC ROC#3 Sl#7 Ch#17 SSCIN pl#3 [X2] id sig#3 [ADC-]
+  18, 3, 5, 1 !ADC ROC#3 Sl#7 Ch#18 SSCIN pl#3 [X2] id sig#5 [ADC-]
+  19, 3, 7, 1 !ADC ROC#3 Sl#7 Ch#19 SSCIN pl#3 [X2] id sig#7 [ADC-]
+  20, 3, 9, 1 !ADC ROC#3 Sl#7 Ch#20 SSCIN pl#3 [X2] id sig#9 [ADC-]
+  21, 3, 11, 1 !ADC ROC#3 Sl#7 Ch#21 SSCIN pl#3 [X2] id sig#11 [ADC-]
+  22, 3, 13, 1 !ADC ROC#3 Sl#7 Ch#22 SSCIN pl#3 [X2] id sig#13 [ADC-]
+  23, 3, 15, 1 !ADC ROC#3 Sl#7 Ch#23 SSCIN pl#3 [X2] id sig#15 [ADC-]
+  24, 3, 2, 1 !ADC ROC#3 Sl#7 Ch#24 SSCIN pl#3 [X2] id sig#2 [ADC-]
+  25, 3, 4, 1 !ADC ROC#3 Sl#7 Ch#25 SSCIN pl#3 [X2] id sig#4 [ADC-]
+  26, 3, 6, 1 !ADC ROC#3 Sl#7 Ch#26 SSCIN pl#3 [X2] id sig#6 [ADC-]
+  27, 3, 8, 1 !ADC ROC#3 Sl#7 Ch#27 SSCIN pl#3 [X2] id sig#8 [ADC-]
+  28, 3, 10, 1 !ADC ROC#3 Sl#7 Ch#28 SSCIN pl#3 [X2] id sig#10 [ADC-]
+  29, 3, 12, 1 !ADC ROC#3 Sl#7 Ch#29 SSCIN pl#3 [X2] id sig#12 [ADC-]
+  30, 3, 14, 1 !ADC ROC#3 Sl#7 Ch#30 SSCIN pl#3 [X2] id sig#14 [ADC-]
+  31, 3, 16, 1 !ADC ROC#3 Sl#7 Ch#31 SSCIN pl#3 [X2] id sig#16 [ADC-]
+  32, 4, 1, 0 !ADC ROC#3 Sl#7 Ch#32 SSCIN pl#4 [Y2] id sig#1 [ADC+]
+  33, 4, 3, 0 !ADC ROC#3 Sl#7 Ch#33 SSCIN pl#4 [Y2] id sig#3 [ADC+]
+  34, 4, 5, 0 !ADC ROC#3 Sl#7 Ch#34 SSCIN pl#4 [Y2] id sig#5 [ADC+]
+  35, 4, 7, 0 !ADC ROC#3 Sl#7 Ch#35 SSCIN pl#4 [Y2] id sig#7 [ADC+]
+  36, 4, 9, 0 !ADC ROC#3 Sl#7 Ch#36 SSCIN pl#4 [Y2] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#7 Ch#37 unused
+!  38 !ADC ROC#3 Sl#7 Ch#38 unused
+!  39 !ADC ROC#3 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#3 Sl#7 Ch#40 SSCIN pl#4 [Y2] id sig#2 [ADC+]
+  41, 4, 4, 0 !ADC ROC#3 Sl#7 Ch#41 SSCIN pl#4 [Y2] id sig#4 [ADC+]
+  42, 4, 6, 0 !ADC ROC#3 Sl#7 Ch#42 SSCIN pl#4 [Y2] id sig#6 [ADC+]
+!  43, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+] DEAD CH!
+!  44 !ADC ROC#3 Sl#7 Ch#44 unused
+!  45 !ADC ROC#3 Sl#7 Ch#45 unused
+!  46 !ADC ROC#3 Sl#7 Ch#46 unused
+  47, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+]
+  48, 4, 1, 1 !ADC ROC#3 Sl#7 Ch#48 SSCIN pl#4 [Y2] id sig#1 [ADC-]
+  49, 4, 3, 1 !ADC ROC#3 Sl#7 Ch#49 SSCIN pl#4 [Y2] id sig#3 [ADC-]
+  50, 4, 5, 1 !ADC ROC#3 Sl#7 Ch#50 SSCIN pl#4 [Y2] id sig#5 [ADC-]
+  51, 4, 7, 1 !ADC ROC#3 Sl#7 Ch#51 SSCIN pl#4 [Y2] id sig#7 [ADC-]
+  52, 4, 9, 1 !ADC ROC#3 Sl#7 Ch#52 SSCIN pl#4 [Y2] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#7 Ch#53 unused
+!  54 !ADC ROC#3 Sl#7 Ch#54 unused
+!  55 !ADC ROC#3 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#3 Sl#7 Ch#56 SSCIN pl#4 [Y2] id sig#2 [ADC-]
+  57, 4, 4, 1 !ADC ROC#3 Sl#7 Ch#57 SSCIN pl#4 [Y2] id sig#4 [ADC-]
+  58, 4, 6, 1 !ADC ROC#3 Sl#7 Ch#58 SSCIN pl#4 [Y2] id sig#6 [ADC-]
+  59, 4, 8, 1 !ADC ROC#3 Sl#7 Ch#59 SSCIN pl#4 [Y2] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#7 Ch#60 unused
+!  61 !ADC ROC#3 Sl#7 Ch#61 unused
+!  62 !ADC ROC#3 Sl#7 Ch#62 unused
+!  63 !ADC ROC#3 Sl#7 Ch#63 unused
+!
+    detector= 14 !SCAL
+!
+ Slot= 1 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#1 Ch#0 SCAL column#1 row#1
+  1, 1, 2 !ADC ROC#3 Sl#1 Ch#1 SCAL column#1 row#2
+  2, 1, 3 !ADC ROC#3 Sl#1 Ch#2 SCAL column#1 row#3
+  3, 1, 4 !ADC ROC#3 Sl#1 Ch#3 SCAL column#1 row#4
+  4, 1, 5 !ADC ROC#3 Sl#1 Ch#4 SCAL column#1 row#5
+  5, 1, 6 !ADC ROC#3 Sl#1 Ch#5 SCAL column#1 row#6
+  6, 1, 7 !ADC ROC#3 Sl#1 Ch#6 SCAL column#1 row#7
+  7, 1, 8 !ADC ROC#3 Sl#1 Ch#7 SCAL column#1 row#8
+  8, 1, 9 !ADC ROC#3 Sl#1 Ch#8 SCAL column#1 row#9
+  9, 1, 10 !ADC ROC#3 Sl#1 Ch#9 SCAL column#1 row#10
+  10, 1, 11 !ADC ROC#3 Sl#1 Ch#10 SCAL column#1 row#11
+!  11 !ADC ROC#3 Sl#1 Ch#11 unused
+!  12 !ADC ROC#3 Sl#1 Ch#12 unused
+!  13 !ADC ROC#3 Sl#1 Ch#13 unused
+!  14 !ADC ROC#3 Sl#1 Ch#14 unused
+!  15 !ADC ROC#3 Sl#1 Ch#15 unused
+  16, 2, 1 !ADC ROC#3 Sl#1 Ch#16 SCAL column#2 row#1
+  17, 2, 2 !ADC ROC#3 Sl#1 Ch#17 SCAL column#2 row#2
+  18, 2, 3 !ADC ROC#3 Sl#1 Ch#18 SCAL column#2 row#3
+  19, 2, 4 !ADC ROC#3 Sl#1 Ch#19 SCAL column#2 row#4
+  20, 2, 5 !ADC ROC#3 Sl#1 Ch#20 SCAL column#2 row#5
+  21, 2, 6 !ADC ROC#3 Sl#1 Ch#21 SCAL column#2 row#6
+  22, 2, 7 !ADC ROC#3 Sl#1 Ch#22 SCAL column#2 row#7
+  23, 2, 8 !ADC ROC#3 Sl#1 Ch#23 SCAL column#2 row#8
+  24, 2, 9 !ADC ROC#3 Sl#1 Ch#24 SCAL column#2 row#9
+  25, 2, 10 !ADC ROC#3 Sl#1 Ch#25 SCAL column#2 row#10
+  26, 2, 11 !ADC ROC#3 Sl#1 Ch#26 SCAL column#2 row#11
+!  27 !ADC ROC#3 Sl#1 Ch#27 unused
+!  28 !ADC ROC#3 Sl#1 Ch#28 unused
+!  29 !ADC ROC#3 Sl#1 Ch#29 unused
+!  30 !ADC ROC#3 Sl#1 Ch#30 unused
+!  31 !ADC ROC#3 Sl#1 Ch#31 unused
+!  32, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1  
+  44, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1
+  33, 3, 2 !ADC ROC#3 Sl#1 Ch#33 SCAL column#3 row#2
+  34, 3, 3 !ADC ROC#3 Sl#1 Ch#34 SCAL column#3 row#3
+  35, 3, 4 !ADC ROC#3 Sl#1 Ch#35 SCAL column#3 row#4
+  36, 3, 5 !ADC ROC#3 Sl#1 Ch#36 SCAL column#3 row#5
+  37, 3, 6 !ADC ROC#3 Sl#1 Ch#37 SCAL column#3 row#6
+  38, 3, 7 !ADC ROC#3 Sl#1 Ch#38 SCAL column#3 row#7
+  39, 3, 8 !ADC ROC#3 Sl#1 Ch#39 SCAL column#3 row#8
+  40, 3, 9 !ADC ROC#3 Sl#1 Ch#40 SCAL column#3 row#9
+  41, 3, 10 !ADC ROC#3 Sl#1 Ch#41 SCAL column#3 row#10
+  42, 3, 11 !ADC ROC#3 Sl#1 Ch#42 SCAL column#3 row#11
+!  43 !ADC ROC#3 Sl#1 Ch#43 unused
+!  44 !ADC ROC#3 Sl#1 Ch#44 unused
+!  45 !ADC ROC#3 Sl#1 Ch#45 unused
+!  46 !ADC ROC#3 Sl#1 Ch#46 unused
+!  47 !ADC ROC#3 Sl#1 Ch#47 unused
+
+!sD1 was being lost in the ADC delay lines.  Move to channel #15.
+!  48, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!
+  49, 4, 2 !ADC ROC#3 Sl#1 Ch#49 SCAL column#4 row#2
+  50, 4, 3 !ADC ROC#3 Sl#1 Ch#50 SCAL column#4 row#3
+  51, 4, 4 !ADC ROC#3 Sl#1 Ch#51 SCAL column#4 row#4
+  52, 4, 5 !ADC ROC#3 Sl#1 Ch#52 SCAL column#4 row#5
+  53, 4, 6 !ADC ROC#3 Sl#1 Ch#53 SCAL column#4 row#6
+  54, 4, 7 !ADC ROC#3 Sl#1 Ch#54 SCAL column#4 row#7
+  55, 4, 8 !ADC ROC#3 Sl#1 Ch#55 SCAL column#4 row#8
+  56, 4, 9 !ADC ROC#3 Sl#1 Ch#56 SCAL column#4 row#9
+  57, 4, 10 !ADC ROC#3 Sl#1 Ch#57 SCAL column#4 row#10
+  58, 4, 11 !ADC ROC#3 Sl#1 Ch#58 SCAL column#4 row#11
+!  59 !ADC ROC#3 Sl#1 Ch#59 unused
+!  60 !ADC ROC#3 Sl#1 Ch#60 unused
+!  61 !ADC ROC#3 Sl#1 Ch#61 unused
+!  62 !ADC ROC#3 Sl#1 Ch#62 unused
+  62, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!  63 !ADC ROC#3 Sl#1 Ch#63 unused
+ detector= 15   !smisc  -  photodiode for laser gain calibration system.
+ 63, 2, 1, 0    !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+!
+detector= 14 !SCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+!  0, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  12, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#3 Sl#5 Ch#1 SCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#3 Sl#5 Ch#2 SCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#3 Sl#5 Ch#3 SCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#3 Sl#5 Ch#4 SCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#3 Sl#5 Ch#5 SCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#3 Sl#5 Ch#6 SCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#3 Sl#5 Ch#7 SCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#3 Sl#5 Ch#8 SCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#3 Sl#5 Ch#9 SCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#3 Sl#5 Ch#10 SCAL col#1 row#11 (10 An-11)
+!   11 !ADC ROC#3 Sl#5 Ch#11 unused
+!   12 !ADC ROC#3 Sl#5 Ch#12 unused
+!   13 !ADC ROC#3 Sl#5 Ch#13 unused
+!   14 !ADC ROC#3 Sl#5 Ch#14 unused
+!   15 !ADC ROC#3 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#3 Sl#5 Ch#16 SCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#3 Sl#5 Ch#17 SCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#3 Sl#5 Ch#18 SCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#3 Sl#5 Ch#19 SCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#3 Sl#5 Ch#20 SCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#3 Sl#5 Ch#21 SCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#3 Sl#5 Ch#22 SCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#3 Sl#5 Ch#23 SCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#3 Sl#5 Ch#24 SCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#3 Sl#5 Ch#25 SCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#3 Sl#5 Ch#26 SCAL col#2 row#11 (26 Bn-11)
+!  27 !ADC ROC#3 Sl#5 Ch#27 unused
+!  28 !ADC ROC#3 Sl#5 Ch#28 unused
+!  29 !ADC ROC#3 Sl#5 Ch#29 unused
+!  30 !ADC ROC#3 Sl#5 Ch#30 unused
+!  31 !ADC ROC#3 Sl#5 Ch#31 unused
+!
+    detector= 13 !SCER
+!
+ Slot= 3 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#3 Ch#0 SCER tube#1
+  1, 1, 2 !ADC ROC#3 Sl#3 Ch#1 SCER tube#2
+  2, 1, 3 !ADC ROC#3 Sl#3 Ch#2 SCER tube#3
+  3, 1, 4 !ADC ROC#3 Sl#3 Ch#3 SCER tube#4
+detector=15 ! SMISC helicity stuff mkj 5/15/03
+!           ! muon det added 6/17/03
+  4, 2, 5,0 !  4 !ADC ROC#3 Sl#3 Ch#4 unused
+  5, 2, 6,0 !  5 !ADC ROC#3 Sl#3 Ch#5 unused
+!  6 !ADC ROC#3 Sl#3 Ch#6 unused
+!  7 !ADC ROC#3 Sl#3 Ch#7 unused
+!  8 !ADC ROC#3 Sl#3 Ch#8 unused
+8,2,2,0  ! mps  clock
+!  9 !ADC ROC#3 Sl#3 Ch#9 unused
+!  10 !ADC ROC#3 Sl#3 Ch#10 unused
+!  11 !ADC ROC#3 Sl#3 Ch#11 unused
+!  12 !ADC ROC#3 Sl#3 Ch#12 unused
+12,2,3,0  ! H+ signal
+15,2,4,0  ! H- signal
+!  13 !ADC ROC#3 Sl#3 Ch#13 unused
+!  14 !ADC ROC#3 Sl#3 Ch#14 unused
+!  15 !ADC ROC#3 Sl#3 Ch#15 unused
+  ! 16 !ADC ROC#3 Sl#3 Ch#16 signal {A01}
+  ! 17 !ADC ROC#3 Sl#3 Ch#17 signal {A02}
+  ! 18 !ADC ROC#3 Sl#3 Ch#18 signal {A03}
+  ! 19 !ADC ROC#3 Sl#3 Ch#19 signal {A04}
+  ! 20 !ADC ROC#3 Sl#3 Ch#20 signal {A05}
+  ! 21 !ADC ROC#3 Sl#3 Ch#21 signal {A06}
+  ! 22 !ADC ROC#3 Sl#3 Ch#22 signal {A07}
+  ! 23 !ADC ROC#3 Sl#3 Ch#23 signal {A08}
+  ! 24 !ADC ROC#3 Sl#3 Ch#24 signal {A09}
+  ! 25 !ADC ROC#3 Sl#3 Ch#25 signal {A10}
+  ! 26 !ADC ROC#3 Sl#3 Ch#26 signal {A11}
+  ! 27 !ADC ROC#3 Sl#3 Ch#27 signal {A12}
+  ! 28 !ADC ROC#3 Sl#3 Ch#28 signal {A13}
+  ! 29 !ADC ROC#3 Sl#3 Ch#29 signal {A14}
+  ! 30 !ADC ROC#3 Sl#3 Ch#30 signal {A15}
+  ! 31 !ADC ROC#3 Sl#3 Ch#31 signal {A16}
+!
+!........................................................
+! SAER took out from SOS detector hut (Hamlet, 21 Dec'02)
+!
+!    detector= 16 !SAER
+!
+!  32 !ADC ROC#3 Sl#3 Ch#32 DEAD!!!!
+!  33 !ADC ROC#3 Sl#3 Ch#33 unused spare
+! 34, 1, 1, 0 !ADC ROC#3 Sl#3 Ch#34 signal pos 1
+! 35, 1, 2, 0 !ADC ROC#3 Sl#3 Ch#35 signal pos 2
+! 36, 1, 3, 0 !ADC ROC#3 Sl#3 Ch#36 signal pos 3
+! 37, 1, 4, 0 !ADC ROC#3 Sl#3 Ch#37 signal pos 4
+! 38, 1, 5, 0 !ADC ROC#3 Sl#3 Ch#38 signal pos 5
+! 39, 1, 6, 0 !ADC ROC#3 Sl#3 Ch#39 signal pos 6
+! 40, 1, 7, 0 !ADC ROC#3 Sl#3 Ch#40 signal pos 7
+! 41, 1, 1, 1 !ADC ROC#3 Sl#3 Ch#41 signal neg 1
+! 42, 1, 2, 1 !ADC ROC#3 Sl#3 Ch#42 signal neg 2
+! 43, 1, 3, 1 !ADC ROC#3 Sl#3 Ch#43 signal neg 3
+! 44, 1, 4, 1 !ADC ROC#3 Sl#3 Ch#44 signal neg 4
+! 45, 1, 5, 1 !ADC ROC#3 Sl#3 Ch#45 signal neg 5
+! 46, 1, 6, 1 !ADC ROC#3 Sl#3 Ch#46 signal neg 6
+! 47, 1, 7, 1 !ADC ROC#3 Sl#3 Ch#47 signal neg 7 
+! 48, 1, 8, 0 !ADC ROC#3 Sl#3 Ch#48 amplified signal pos 1
+! 49, 1, 9, 0 !ADC ROC#3 Sl#3 Ch#49 amplified signal pos 2
+! 50, 1, 10, 0 !ADC ROC#3 Sl#3 Ch#50 amplified signal pos 3
+! 51, 1, 11, 0 !ADC ROC#3 Sl#3 Ch#51 amplified signal pos 4
+! 52, 1, 12, 0 !ADC ROC#3 Sl#3 Ch#52 amplified signal pos 5
+! 53, 1, 13, 0 !ADC ROC#3 Sl#3 Ch#53 amplified signal pos 6
+! 54, 1, 14, 0 !ADC ROC#3 Sl#3 Ch#54 amplified signal pos 7
+! 55, 1, 15, 0 !ADC ROC#3 Sl#3 Ch#62 amplified signal sum 1-7
+! 56, 1, 8, 1 !ADC ROC#3 Sl#3 Ch#55 amplified signal neg 1
+! 57, 1, 9, 1 !ADC ROC#3 Sl#3 Ch#56 amplified signal neg 2
+! 58, 1, 10, 1 !ADC ROC#3 Sl#3 Ch#57 amplified signal neg 3
+! 59, 1, 11, 1 !ADC ROC#3 Sl#3 Ch#58 amplified signal neg 4
+! 60, 1, 12, 1 !ADC ROC#3 Sl#3 Ch#59 amplified signal neg 5
+! 61, 1, 13, 1 !ADC ROC#3 Sl#3 Ch#60 amplified signal neg 6
+! 62, 1, 14, 1 !ADC ROC#3 Sl#3 Ch#61 amplified signal neg 7
+! 63, 1, 15, 1 !ADC ROC#3 Sl#3 Ch#63 amplified signal sum 8-14
+!
+
+
+
+
+
+
+
+
diff --git a/examples/MAPS/july04.map b/examples/MAPS/july04.map
new file mode 100644
index 0000000000000000000000000000000000000000..7551ce6553363614d187bee04425a57a7c93713c
--- /dev/null
+++ b/examples/MAPS/july04.map
@@ -0,0 +1,3240 @@
+! Updated to reflect new TDC for HMS aerogel and proper mapping of misc
+! trigger signals in SOS.  Dave G (5/5/2003)
+!
+!
+       help       !lists available keywords
+       NOecho     !copies input lines to tty output
+       NOdebug    !turn on input debugging
+       override   !skip over errors
+!
+! hall C encode/decode configuration file
+! giving the FASTBUS geographical to standard
+! hall C COMMONs location as described by
+! "gen_data_structures.cmn"      K.B.Beard 13jun94
+!      10/19/94 (jra) Change ch1 roc to 8 (from 1), hms roc to 7 (from 2).
+!
+!       6/24/94 (SAW) Turn on lines for miscleaneous TDC's
+!                     Change ch1 roc to 1 (from 0), hms roc to 2 (from 1).
+!		      Disable last 16 channels of miscleaneous TDC
+!
+! standard id numbers
+!                       signals
+!HMS:
+! HDC_ID= 1               TDC
+! HSCIN_ID= 2             ADC+,ADC-,TDC+,TDC-
+! HCER_ID= 3              ADC
+! HCAL_ID= 4              ADC
+! HMISC_ID= 5             TDC,(ADC)
+!GEN:
+! GMISC_ID= 6             (TDC),ADC
+! HAERO_ID= 7             (TDC),ADC
+!SOS:
+! SDC_ID= 11              TDC
+! SSCIN_ID= 12            ADC+,ADC-,TDC+,TDC-
+! SCER_ID= 13             ADC
+! SCAL_ID= 14             ADC
+! SMISC_ID= 15            TDC,(ADC)
+! SAER_ID= 16             ADC
+! SLUC_ID=17		 ADC
+! 
+!
+!   consider subadd equiv. to channel
+!
+!  specify: subadd, plane, element, signal
+!            a,      p,     e,       s
+!            0-      1-     1-       0-3
+![if there is only signal 0 (DC,CER,CAL) it may be ommitted]
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!     HMS upstairs and downstairs map    K.B.Beard 13-Jun-1994
+!         for Jun94 run
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!      HMS downstairs (HDC) map           K.B.Beard & S.Avery 13-Jun-1994
+!					  revised by A. Johnson 4-Feb-1999	
+!   								
+! vvvvvvvvvvvvvvvvvvvvvv Wire chambers start here vvvvvvvvvvvvvvvvvvvvvvvvv
+  ROC= 2             !ReadOutController (crate) for HMS wire chambers
+!
+!
+!         TDC modules are Lecroy 1877
+    Nsubadd= 96               
+    MASK= FFFFx       !hex mask 
+    BSUB= 17           !start channel in bit#17
+!
+  detector= 1       !HDC
+!
+!                             1st HDC chamber - (2nd in position) - planes7-12  
+Slot= 2
+0, 8, 1	             !TDC ROC#2 Sl#2 Ch#0 HDC pl#8 [Y1] wire#1
+1, 8, 2              !TDC ROC#2 Sl#2 Ch#1 HDC pl#8 [Y1] wire#2
+2, 8, 3	             !TDC ROC#2 Sl#2 Ch#2 HDC pl#8 [Y1] wire#3
+3, 8, 4	             !TDC ROC#2 Sl#2 Ch#3 HDC pl#8 [Y1] wire#4
+4, 8, 5	             !TDC ROC#2 Sl#2 Ch#4 HDC pl#8 [Y1] wire#5
+5, 8, 6	             !TDC ROC#2 Sl#2 Ch#5 HDC pl#8 [Y1] wire#6
+6, 8, 7	             !TDC ROC#2 Sl#2 Ch#6 HDC pl#8 [Y1] wire#7
+7, 8, 8	             !TDC ROC#2 Sl#2 Ch#7 HDC pl#8 [Y1] wire#8
+8, 8, 9	             !TDC ROC#2 Sl#2 Ch#8 HDC pl#8 [Y1] wire#9
+9, 8, 10             !TDC ROC#2 Sl#2 Ch#9 HDC pl#8 [Y1] wire#10
+10, 8, 11            !TDC ROC#2 Sl#2 Ch#10 HDC pl#8 [Y1] wire#11
+11, 8, 12            !TDC ROC#2 Sl#2 Ch#11 HDC pl#8 [Y1] wire#12
+12, 8, 13            !TDC ROC#2 Sl#2 Ch#12 HDC pl#8 [Y1] wire#13
+!13 !TDC ROC#2 Sl#2 Ch#13 unused
+!14 !TDC ROC#2 Sl#2 Ch#14 unused
+!15 !TDC ROC#2 Sl#2 Ch#15 unused
+16, 11, 40           !TDC ROC#2 Sl#2 Ch#16 HDC pl#11 [Y2] wire#40
+17, 11, 41           !TDC ROC#2 Sl#2 Ch#17 HDC pl#11 [Y2] wire#41
+18, 11, 42           !TDC ROC#2 Sl#2 Ch#18 HDC pl#11 [Y2] wire#42
+19, 11, 43           !TDC ROC#2 Sl#2 Ch#19 HDC pl#11 [Y2] wire#43
+20, 11, 44           !TDC ROC#2 Sl#2 Ch#20 HDC pl#11 [Y2] wire#44
+21, 11, 45           !TDC ROC#2 Sl#2 Ch#21 HDC pl#11 [Y2] wire#45
+22, 11, 46           !TDC ROC#2 Sl#2 Ch#22 HDC pl#11 [Y2] wire#46
+23, 11, 47           !TDC ROC#2 Sl#2 Ch#23 HDC pl#11 [Y2] wire#47
+24, 11, 48           !TDC ROC#2 Sl#2 Ch#24 HDC pl#11 [Y2] wire#48
+25, 11, 49           !TDC ROC#2 Sl#2 Ch#25 HDC pl#11 [Y2] wire#49
+26, 11, 50           !TDC ROC#2 Sl#2 Ch#26 HDC pl#11 [Y2] wire#50
+27, 11, 51           !TDC ROC#2 Sl#2 Ch#27 HDC pl#11 [Y2] wire#51
+28, 11, 52           !TDC ROC#2 Sl#2 Ch#28 HDC pl#11 [Y2] wire#52
+!29 !TDC ROC#2 Sl#2 Ch#29 unused
+!30 !TDC ROC#2 Sl#2 Ch#30 unused
+!31 !TDC ROC#2 Sl#2 Ch#31 unused
+32, 8, 14            !TDC ROC#2 Sl#2 Ch#32 HDC pl#8 [Y1] wire#14
+33, 8, 15            !TDC ROC#2 Sl#2 Ch#33 HDC pl#8 [Y1] wire#15
+34, 8, 16            !TDC ROC#2 Sl#2 Ch#34 HDC pl#8 [Y1] wire#16
+35, 8, 17            !TDC ROC#2 Sl#2 Ch#35 HDC pl#8 [Y1] wire#17
+36, 8, 18            !TDC ROC#2 Sl#2 Ch#36 HDC pl#8 [Y1] wire#18
+37, 8, 19            !TDC ROC#2 Sl#2 Ch#37 HDC pl#8 [Y1] wire#19
+38, 8, 20            !TDC ROC#2 Sl#2 Ch#38 HDC pl#8 [Y1] wire#20
+39, 8, 21            !TDC ROC#2 Sl#2 Ch#39 HDC pl#8 [Y1] wire#21
+40, 8, 22            !TDC ROC#2 Sl#2 Ch#40 HDC pl#8 [Y1] wire#22
+41, 8, 23            !TDC ROC#2 Sl#2 Ch#41 HDC pl#8 [Y1] wire#23
+42, 8, 24            !TDC ROC#2 Sl#2 Ch#42 HDC pl#8 [Y1] wire#24
+43, 8, 25            !TDC ROC#2 Sl#2 Ch#43 HDC pl#8 [Y1] wire#25
+44, 8, 26            !TDC ROC#2 Sl#2 Ch#44 HDC pl#8 [Y1] wire#26
+!45 !TDC ROC#2 Sl#2 Ch#45 unused
+!46 !TDC ROC#2 Sl#2 Ch#46 unused
+!47 !TDC ROC#2 Sl#2 Ch#47 unused
+48, 11, 27           !TDC ROC#2 Sl#2 Ch#48 HDC pl#11 [Y2] wire#27
+49, 11, 28           !TDC ROC#2 Sl#2 Ch#49 HDC pl#11 [Y2] wire#28
+50, 11, 29           !TDC ROC#2 Sl#2 Ch#50 HDC pl#11 [Y2] wire#29
+51, 11, 30           !TDC ROC#2 Sl#2 Ch#51 HDC pl#11 [Y2] wire#30
+52, 11, 31           !TDC ROC#2 Sl#2 Ch#52 HDC pl#11 [Y2] wire#31
+53, 11, 32           !TDC ROC#2 Sl#2 Ch#53 HDC pl#11 [Y2] wire#32
+54, 11, 33           !TDC ROC#2 Sl#2 Ch#54 HDC pl#11 [Y2] wire#33
+55, 11, 34           !TDC ROC#2 Sl#2 Ch#55 HDC pl#11 [Y2] wire#34
+56, 11, 35           !TDC ROC#2 Sl#2 Ch#56 HDC pl#11 [Y2] wire#35
+57, 11, 36           !TDC ROC#2 Sl#2 Ch#57 HDC pl#11 [Y2] wire#36
+58, 11, 37           !TDC ROC#2 Sl#2 Ch#58 HDC pl#11 [Y2] wire#37
+59, 11, 38           !TDC ROC#2 Sl#2 Ch#59 HDC pl#11 [Y2] wire#38
+60, 11, 39           !TDC ROC#2 Sl#2 Ch#60 HDC pl#11 [Y2] wire#39
+!61 !TDC ROC#2 Sl#2 Ch#61 unused
+!62 !TDC ROC#2 Sl#2 Ch#62 unused
+!63 !TDC ROC#2 Sl#2 Ch#63 unused
+64, 8, 27            !TDC ROC#2 Sl#2 Ch#64 HDC pl#8 [Y1] wire#27
+65, 8, 28            !TDC ROC#2 Sl#2 Ch#65 HDC pl#8 [Y1] wire#28
+66, 8, 29            !TDC ROC#2 Sl#2 Ch#66 HDC pl#8 [Y1] wire#29
+67, 8, 30            !TDC ROC#2 Sl#2 Ch#67 HDC pl#8 [Y1] wire#30
+68, 8, 31            !TDC ROC#2 Sl#2 Ch#68 HDC pl#8 [Y1] wire#31
+69, 8, 32            !TDC ROC#2 Sl#2 Ch#69 HDC pl#8 [Y1] wire#32
+70, 8, 33            !TDC ROC#2 Sl#2 Ch#70 HDC pl#8 [Y1] wire#33
+71, 8, 34            !TDC ROC#2 Sl#2 Ch#71 HDC pl#8 [Y1] wire#34
+72, 8, 35            !TDC ROC#2 Sl#2 Ch#72 HDC pl#8 [Y1] wire#35
+73, 8, 36            !TDC ROC#2 Sl#2 Ch#73 HDC pl#8 [Y1] wire#36
+74, 8, 37            !TDC ROC#2 Sl#2 Ch#74 HDC pl#8 [Y1] wire#37
+75, 8, 38            !TDC ROC#2 Sl#2 Ch#75 HDC pl#8 [Y1] wire#38
+76, 8, 39            !TDC ROC#2 Sl#2 Ch#76 HDC pl#8 [Y1] wire#39
+!77 !TDC ROC#2 Sl#2 Ch#77 unused
+!78 !TDC ROC#2 Sl#2 Ch#78 unused
+!79 !TDC ROC#2 Sl#2 Ch#79 unused
+80, 11, 14           !TDC ROC#2 Sl#2 Ch#80 HDC pl#11 [Y2] wire#14
+81, 11, 15           !TDC ROC#2 Sl#2 Ch#81 HDC pl#11 [Y2] wire#15
+82, 11, 16           !TDC ROC#2 Sl#2 Ch#82 HDC pl#11 [Y2] wire#16
+83, 11, 17           !TDC ROC#2 Sl#2 Ch#83 HDC pl#11 [Y2] wire#17
+84, 11, 18           !TDC ROC#2 Sl#2 Ch#84 HDC pl#11 [Y2] wire#18
+85, 11, 19           !TDC ROC#2 Sl#2 Ch#85 HDC pl#11 [Y2] wire#19
+86, 11, 20           !TDC ROC#2 Sl#2 Ch#86 HDC pl#11 [Y2] wire#20
+87, 11, 21           !TDC ROC#2 Sl#2 Ch#87 HDC pl#11 [Y2] wire#21
+88, 11, 22           !TDC ROC#2 Sl#2 Ch#88 HDC pl#11 [Y2] wire#22
+89, 11, 23           !TDC ROC#2 Sl#2 Ch#89 HDC pl#11 [Y2] wire#23
+90, 11, 24           !TDC ROC#2 Sl#2 Ch#90 HDC pl#11 [Y2] wire#24
+91, 11, 25           !TDC ROC#2 Sl#2 Ch#91 HDC pl#11 [Y2] wire#25
+92, 11, 26           !TDC ROC#2 Sl#2 Ch#92 HDC pl#11 [Y2] wire#26
+!93 !TDC ROC#2 Sl#2 Ch#93 unused
+!94 !TDC ROC#2 Sl#2 Ch#94 unused
+!95 !TDC ROC#2 Sl#2 Ch#95 unused
+
+Slot= 3
+0, 8, 40             !TDC ROC#2 Sl#3 Ch#0 HDC pl#8 [Y1] wire#40
+1, 8, 41             !TDC ROC#2 Sl#3 Ch#1 HDC pl#8 [Y1] wire#41
+2, 8, 42             !TDC ROC#2 Sl#3 Ch#2 HDC pl#8 [Y1] wire#42
+3, 8, 43             !TDC ROC#2 Sl#3 Ch#3 HDC pl#8 [Y1] wire#43
+4, 8, 44             !TDC ROC#2 Sl#3 Ch#4 HDC pl#8 [Y1] wire#44
+5, 8, 45             !TDC ROC#2 Sl#3 Ch#5 HDC pl#8 [Y1] wire#45
+6, 8, 46             !TDC ROC#2 Sl#3 Ch#6 HDC pl#8 [Y1] wire#46
+7, 8, 47             !TDC ROC#2 Sl#3 Ch#7 HDC pl#8 [Y1] wire#47
+8, 8, 48             !TDC ROC#2 Sl#3 Ch#8 HDC pl#8 [Y1] wire#48
+9, 8, 49             !TDC ROC#2 Sl#3 Ch#9 HDC pl#8 [Y1] wire#49
+10, 8, 50            !TDC ROC#2 Sl#3 Ch#10 HDC pl#8 [Y1] wire#50
+11, 8, 51            !TDC ROC#2 Sl#3 Ch#11 HDC pl#8 [Y1] wire#51
+12, 8, 52            !TDC ROC#2 Sl#3 Ch#12 HDC pl#8 [Y1] wire#52
+!13 !TDC ROC#2 Sl#3 Ch#13 
+!14 !TDC ROC#2 Sl#3 Ch#14 
+!15 !TDC ROC#2 Sl#3 Ch#15 
+16, 11, 1            !TDC ROC#2 Sl#3 Ch#16 HDC pl#11 [Y2] wire#1
+17, 11, 2            !TDC ROC#2 Sl#3 Ch#17 HDC pl#11 [Y2] wire#2
+18, 11, 3            !TDC ROC#2 Sl#3 Ch#18 HDC pl#11 [Y2] wire#3
+19, 11, 4            !TDC ROC#2 Sl#3 Ch#19 HDC pl#11 [Y2] wire#4
+20, 11, 5            !TDC ROC#2 Sl#3 Ch#20 HDC pl#11 [Y2] wire#5
+21, 11, 6            !TDC ROC#2 Sl#3 Ch#21 HDC pl#11 [Y2] wire#6
+22, 11, 7            !TDC ROC#2 Sl#3 Ch#22 HDC pl#11 [Y2] wire#7
+23, 11, 8            !TDC ROC#2 Sl#3 Ch#23 HDC pl#11 [Y2] wire#8
+24, 11, 9            !TDC ROC#2 Sl#3 Ch#24 HDC pl#11 [Y2] wire#9
+25, 11, 10           !TDC ROC#2 Sl#3 Ch#25 HDC pl#11 [Y2] wire#10
+26, 11, 11           !TDC ROC#2 Sl#3 Ch#26 HDC pl#11 [Y2] wire#11
+27, 11, 12           !TDC ROC#2 Sl#3 Ch#27 HDC pl#11 [Y2] wire#12
+28, 11, 13           !TDC ROC#2 Sl#3 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#3 Ch#29 unused
+! 30 !TDC ROC#2 Sl#3 Ch#30 unused
+! 31 !TDC ROC#2 Sl#3 Ch#31 unused
+32, 10, 92           !TDC ROC#2 Sl#3 Ch#32 HDC pl#10 [V] wire#92
+33, 10, 93           !TDC ROC#2 Sl#3 Ch#33 HDC pl#10 [V] wire#93
+34, 10, 94           !TDC ROC#2 Sl#3 Ch#34 HDC pl#10 [V] wire#94
+35, 10, 95           !TDC ROC#2 Sl#3 Ch#35 HDC pl#10 [V] wire#95
+36, 10, 96           !TDC ROC#2 Sl#3 Ch#36 HDC pl#10 [V] wire#96
+37, 10, 97           !TDC ROC#2 Sl#3 Ch#37 HDC pl#10 [V] wire#97
+38, 10, 98           !TDC ROC#2 Sl#3 Ch#38 HDC pl#10 [V] wire#98
+39, 10, 99           !TDC ROC#2 Sl#3 Ch#39 HDC pl#10 [V] wire#99
+40, 10, 100          !TDC ROC#2 Sl#3 Ch#40 HDC pl#10 [V] wire#100
+41, 10, 101          !TDC ROC#2 Sl#3 Ch#41 HDC pl#10 [V] wire#101
+42, 10, 102          !TDC ROC#2 Sl#3 Ch#42 HDC pl#10 [V] wire#102
+43, 10, 103          !TDC ROC#2 Sl#3 Ch#43 HDC pl#10 [V] wire#103
+44, 10, 104          !TDC ROC#2 Sl#3 Ch#44 HDC pl#10 [V] wire#104
+45, 10, 105	     !TDC ROC#2 Sl#3 Ch#45 HDC pl#10 [V] wire#105
+46, 10, 106          !TDC ROC#2 Sl#3 Ch#46 HDC pl#10 [V] wire#106
+47, 10, 107	     !TDC ROC#2 Sl#3 Ch#47 HDC pl#10 [V] wire#107
+48, 7, 97            !TDC ROC#2 Sl#3 Ch#48 HDC pl#7 [X1] wire#97
+49, 7, 98            !TDC ROC#2 Sl#3 Ch#49 HDC pl#7 [X1] wire#98
+50, 7, 99            !TDC ROC#2 Sl#3 Ch#50 HDC pl#7 [X1] wire#99
+51, 7, 100           !TDC ROC#2 Sl#3 Ch#51 HDC pl#7 [X1] wire#100
+52, 7, 101           !TDC ROC#2 Sl#3 Ch#52 HDC pl#7 [X1] wire#101
+53, 7, 102           !TDC ROC#2 Sl#3 Ch#53 HDC pl#7 [X1] wire#102
+54, 7, 103           !TDC ROC#2 Sl#3 Ch#54 HDC pl#7 [X1] wire#103
+55, 7, 104           !TDC ROC#2 Sl#3 Ch#55 HDC pl#7 [X1] wire#104
+56, 7, 105           !TDC ROC#2 Sl#3 Ch#56 HDC pl#7 [X1] wire#105
+57, 7, 106           !TDC ROC#2 Sl#3 Ch#57 HDC pl#7 [X1] wire#106
+58, 7, 107           !TDC ROC#2 Sl#3 Ch#58 HDC pl#7 [X1] wire#107
+59, 7, 108           !TDC ROC#2 Sl#3 Ch#59 HDC pl#7 [X1] wire#108
+60, 7, 109           !TDC ROC#2 Sl#3 Ch#60 HDC pl#7 [X1] wire#109
+61, 7, 110           !TDC ROC#2 Sl#3 Ch#61 HDC pl#7 [X1] wire#110
+62, 7, 111           !TDC ROC#2 Sl#3 Ch#62 HDC pl#7 [X1] wire#111
+63, 7, 112           !TDC ROC#2 Sl#3 Ch#63 HDC pl#7 [X1] wire#112
+64, 12, 1            !TDC ROC#2 Sl#3 Ch#64 HDC pl#12 [X2] wire#1
+65, 12, 2            !TDC ROC#2 Sl#3 Ch#65 HDC pl#12 [X2] wire#2
+66, 12, 3            !TDC ROC#2 Sl#3 Ch#66 HDC pl#12 [X2] wire#3
+67, 12, 4            !TDC ROC#2 Sl#3 Ch#67 HDC pl#12 [X2] wire#4
+68, 12, 5            !TDC ROC#2 Sl#3 Ch#68 HDC pl#12 [X2] wire#5
+69, 12, 6            !TDC ROC#2 Sl#3 Ch#69 HDC pl#12 [X2] wire#6
+70, 12, 7            !TDC ROC#2 Sl#3 Ch#70 HDC pl#12 [X2] wire#7
+71, 12, 8            !TDC ROC#2 Sl#3 Ch#71 HDC pl#12 [X2] wire#8
+72, 12, 9            !TDC ROC#2 Sl#3 Ch#72 HDC pl#12 [X2] wire#9
+73, 12, 10           !TDC ROC#2 Sl#3 Ch#73 HDC pl#12 [X2] wire#10
+74, 12, 11           !TDC ROC#2 Sl#3 Ch#74 HDC pl#12 [X2] wire#11
+75, 12, 12           !TDC ROC#2 Sl#3 Ch#75 HDC pl#12 [X2] wire#12
+76, 12, 13           !TDC ROC#2 Sl#3 Ch#76 HDC pl#12 [X2] wire#13
+77, 12, 14           !TDC ROC#2 Sl#3 Ch#77 HDC pl#12 [X2] wire#14
+78, 12, 15           !TDC ROC#2 Sl#3 Ch#78 HDC pl#12 [X2] wire#15
+79, 12, 16           !TDC ROC#2 Sl#3 Ch#79 HDC pl#12 [X2] wire#16
+80, 7, 113           !TDC ROC#2 Sl#3 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#3 Ch#81 unused
+82, 9, 1             !TDC ROC#2 Sl#3 Ch#82 HDC pl#9 [U] wire#1
+83, 9, 2             !TDC ROC#2 Sl#3 Ch#83 HDC pl#9 [U] wire#2
+84, 9, 3             !TDC ROC#2 Sl#3 Ch#84 HDC pl#9 [U] wire#3
+85, 9, 4             !TDC ROC#2 Sl#3 Ch#85 HDC pl#9 [U] wire#4
+86, 9, 5             !TDC ROC#2 Sl#3 Ch#86 HDC pl#9 [U] wire#5
+87, 9, 6             !TDC ROC#2 Sl#3 Ch#87 HDC pl#9 [U] wire#6
+88, 9, 7             !TDC ROC#2 Sl#3 Ch#88 HDC pl#9 [U] wire#7
+89, 9, 8             !TDC ROC#2 Sl#3 Ch#89 HDC pl#9 [U] wire#8
+90, 9, 9             !TDC ROC#2 Sl#3 Ch#90 HDC pl#9 [U] wire#9
+91, 9, 10            !TDC ROC#2 Sl#3 Ch#91 HDC pl#9 [U] wire#10
+92, 9, 11            !TDC ROC#2 Sl#3 Ch#92 HDC pl#9 [U] wire#11
+93, 9, 12            !TDC ROC#2 Sl#3 Ch#93 HDC pl#9 [U] wire#12
+94, 9, 13            !TDC ROC#2 Sl#3 Ch#94 HDC pl#9 [U] wire#13
+95, 9, 14            !TDC ROC#2 Sl#3 Ch#95 HDC pl#9 [U] wire#14
+Slot= 5
+0, 10, 77            !TDC ROC#2 Sl#5 Ch#0 HDC pl#10 [V] wire#77
+1, 10, 78            !TDC ROC#2 Sl#5 Ch#1 HDC pl#10 [V] wire#78
+2, 10, 79            !TDC ROC#2 Sl#5 Ch#2 HDC pl#10 [V] wire#79
+3, 10, 80            !TDC ROC#2 Sl#5 Ch#3 HDC pl#10 [V] wire#80
+4, 10, 81            !TDC ROC#2 Sl#5 Ch#4 HDC pl#10 [V] wire#81
+5, 10, 82            !TDC ROC#2 Sl#5 Ch#5 HDC pl#10 [V] wire#82
+6, 10, 83            !TDC ROC#2 Sl#5 Ch#6 HDC pl#10 [V] wire#83
+7, 10, 84            !TDC ROC#2 Sl#5 Ch#7 HDC pl#10 [V] wire#84
+8, 10, 85            !TDC ROC#2 Sl#5 Ch#8 HDC pl#10 [V] wire#85
+9, 10, 86            !TDC ROC#2 Sl#5 Ch#9 HDC pl#10 [V] wire#86
+10, 10, 87           !TDC ROC#2 Sl#5 Ch#10 HDC pl#10 [V] wire#87
+11, 10, 88           !TDC ROC#2 Sl#5 Ch#11 HDC pl#10 [V] wire#88
+12, 10, 89           !TDC ROC#2 Sl#5 Ch#12 HDC pl#10 [V] wire#89
+13, 10, 90           !TDC ROC#2 Sl#5 Ch#13 HDC pl#10 [V] wire#90
+14, 10, 91           !TDC ROC#2 Sl#5 Ch#14 HDC pl#10 [V] wire#91
+! 15 !TDC ROC#2 Sl#5 Ch#15 unused
+16, 7, 81            !TDC ROC#2 Sl#5 Ch#16 HDC pl#7 [X1] wire#81
+17, 7, 82            !TDC ROC#2 Sl#5 Ch#17 HDC pl#7 [X1] wire#82
+18, 7, 83            !TDC ROC#2 Sl#5 Ch#18 HDC pl#7 [X1] wire#83
+19, 7, 84            !TDC ROC#2 Sl#5 Ch#19 HDC pl#7 [X1] wire#84
+20, 7, 85            !TDC ROC#2 Sl#5 Ch#20 HDC pl#7 [X1] wire#85
+21, 7, 86            !TDC ROC#2 Sl#5 Ch#21 HDC pl#7 [X1] wire#86
+22, 7, 87            !TDC ROC#2 Sl#5 Ch#22 HDC pl#7 [X1] wire#87
+23, 7, 88            !TDC ROC#2 Sl#5 Ch#23 HDC pl#7 [X1] wire#88
+24, 7, 89            !TDC ROC#2 Sl#5 Ch#24 HDC pl#7 [X1] wire#89
+25, 7, 90            !TDC ROC#2 Sl#5 Ch#25 HDC pl#7 [X1] wire#90
+26, 7, 91            !TDC ROC#2 Sl#5 Ch#26 HDC pl#7 [X1] wire#91
+27, 7, 92            !TDC ROC#2 Sl#5 Ch#27 HDC pl#7 [X1] wire#92
+28, 7, 93            !TDC ROC#2 Sl#5 Ch#28 HDC pl#7 [X1] wire#93
+29, 7, 94            !TDC ROC#2 Sl#5 Ch#29 HDC pl#7 [X1] wire#94
+30, 7, 95            !TDC ROC#2 Sl#5 Ch#30 HDC pl#7 [X1] wire#95
+31, 7, 96            !TDC ROC#2 Sl#5 Ch#31 HDC pl#7 [X1] wire#96
+32, 12, 17           !TDC ROC#2 Sl#5 Ch#32 HDC pl#12 [X2] wire#17
+33, 12, 18           !TDC ROC#2 Sl#5 Ch#33 HDC pl#12 [X2] wire#18
+34, 12, 19           !TDC ROC#2 Sl#5 Ch#34 HDC pl#12 [X2] wire#19
+35, 12, 20           !TDC ROC#2 Sl#5 Ch#35 HDC pl#12 [X2] wire#20
+36, 12, 21           !TDC ROC#2 Sl#5 Ch#36 HDC pl#12 [X2] wire#21
+37, 12, 22           !TDC ROC#2 Sl#5 Ch#37 HDC pl#12 [X2] wire#22
+38, 12, 23           !TDC ROC#2 Sl#5 Ch#38 HDC pl#12 [X2] wire#23
+39, 12, 24           !TDC ROC#2 Sl#5 Ch#39 HDC pl#12 [X2] wire#24
+40, 12, 25           !TDC ROC#2 Sl#5 Ch#40 HDC pl#12 [X2] wire#25
+41, 12, 26           !TDC ROC#2 Sl#5 Ch#41 HDC pl#12 [X2] wire#26
+42, 12, 27           !TDC ROC#2 Sl#5 Ch#42 HDC pl#12 [X2] wire#27
+43, 12, 28           !TDC ROC#2 Sl#5 Ch#43 HDC pl#12 [X2] wire#28
+44, 12, 29           !TDC ROC#2 Sl#5 Ch#44 HDC pl#12 [X2] wire#29
+45, 12, 30           !TDC ROC#2 Sl#5 Ch#45 HDC pl#12 [X2] wire#30
+46, 12, 31           !TDC ROC#2 Sl#5 Ch#46 HDC pl#12 [X2] wire#31
+47, 12, 32           !TDC ROC#2 Sl#5 Ch#47 HDC pl#12 [X2] wire#32
+48, 9, 15            !TDC ROC#2 Sl#5 Ch#48 HDC pl#9 [U] wire#15
+49, 9, 16            !TDC ROC#2 Sl#5 Ch#49 HDC pl#9 [U] wire#16
+50, 9, 17            !TDC ROC#2 Sl#5 Ch#50 HDC pl#9 [U] wire#17
+51, 9, 18            !TDC ROC#2 Sl#5 Ch#51 HDC pl#9 [U] wire#18
+52, 9, 19            !TDC ROC#2 Sl#5 Ch#52 HDC pl#9 [U] wire#19
+53, 9, 20            !TDC ROC#2 Sl#5 Ch#53 HDC pl#9 [U] wire#20
+54, 9, 21            !TDC ROC#2 Sl#5 Ch#54 HDC pl#9 [U] wire#21
+55, 9, 22            !TDC ROC#2 Sl#5 Ch#55 HDC pl#9 [U] wire#22
+56, 9, 23            !TDC ROC#2 Sl#5 Ch#56 HDC pl#9 [U] wire#23
+57, 9, 24            !TDC ROC#2 Sl#5 Ch#57 HDC pl#9 [U] wire#24
+58, 9, 25            !TDC ROC#2 Sl#5 Ch#58 HDC pl#9 [U] wire#25
+59, 9, 26            !TDC ROC#2 Sl#5 Ch#59 HDC pl#9 [U] wire#26
+60, 9, 27            !TDC ROC#2 Sl#5 Ch#60 HDC pl#9 [U] wire#27
+61, 9, 28            !TDC ROC#2 Sl#5 Ch#61 HDC pl#9 [U] wire#28
+62, 9, 29            !TDC ROC#2 Sl#5 Ch#62 HDC pl#9 [U] wire#29
+!63 !TDC ROC#2 Sl#5 Ch#63 unused
+64, 10, 61           !TDC ROC#2 Sl#5 Ch#64 HDC pl#10 [V] wire#61
+65, 10, 62           !TDC ROC#2 Sl#5 Ch#65 HDC pl#10 [V] wire#62
+66, 10, 63           !TDC ROC#2 Sl#5 Ch#66 HDC pl#10 [V] wire#63
+67, 10, 64           !TDC ROC#2 Sl#5 Ch#67 HDC pl#10 [V] wire#64
+68, 10, 65           !TDC ROC#2 Sl#5 Ch#68 HDC pl#10 [V] wire#65
+69, 10, 66           !TDC ROC#2 Sl#5 Ch#69 HDC pl#10 [V] wire#66
+70, 10, 67           !TDC ROC#2 Sl#5 Ch#70 HDC pl#10 [V] wire#67
+71, 10, 68           !TDC ROC#2 Sl#5 Ch#71 HDC pl#10 [V] wire#68
+72, 10, 69           !TDC ROC#2 Sl#5 Ch#72 HDC pl#10 [V] wire#69
+73, 10, 70           !TDC ROC#2 Sl#5 Ch#73 HDC pl#10 [V] wire#70
+74, 10, 71           !TDC ROC#2 Sl#5 Ch#74 HDC pl#10 [V] wire#71
+75, 10, 72           !TDC ROC#2 Sl#5 Ch#75 HDC pl#10 [V] wire#72
+76, 10, 73           !TDC ROC#2 Sl#5 Ch#76 HDC pl#10 [V] wire#73
+77, 10, 74           !TDC ROC#2 Sl#5 Ch#77 HDC pl#10 [V] wire#74
+78, 10, 75           !TDC ROC#2 Sl#5 Ch#78 HDC pl#10 [V] wire#75
+79, 10, 76           !TDC ROC#2 Sl#5 Ch#79 HDC pl#10 [V] wire#76
+80, 7, 65            !TDC ROC#2 Sl#5 Ch#80 HDC pl#7 [X1] wire#65
+81, 7, 66            !TDC ROC#2 Sl#5 Ch#81 HDC pl#7 [X1] wire#66
+82, 7, 67            !TDC ROC#2 Sl#5 Ch#82 HDC pl#7 [X1] wire#67
+83, 7, 68            !TDC ROC#2 Sl#5 Ch#83 HDC pl#7 [X1] wire#68
+84, 7, 69            !TDC ROC#2 Sl#5 Ch#84 HDC pl#7 [X1] wire#69
+85, 7, 70	     !TDC ROC#2 Sl#5 Ch#85 HDC pl#7 [X1] wire#70
+86, 7, 71            !TDC ROC#2 Sl#5 Ch#86 HDC pl#7 [X1] wire#71
+87, 7, 72            !TDC ROC#2 Sl#5 Ch#87 HDC pl#7 [X1] wire#72
+88, 7, 73            !TDC ROC#2 Sl#5 Ch#88 HDC pl#7 [X1] wire#73
+89, 7, 74            !TDC ROC#2 Sl#5 Ch#89 HDC pl#7 [X1] wire#74
+90, 7, 75            !TDC ROC#2 Sl#5 Ch#90 HDC pl#7 [X1] wire#75
+91, 7, 76	     !TDC ROC#2 Sl#5 Ch#91 HDC pl#7 [X1] wire#76
+92, 7, 77            !TDC ROC#2 Sl#5 Ch#92 HDC pl#7 [X1] wire#77
+93, 7, 78            !TDC ROC#2 Sl#5 Ch#93 HDC pl#7 [X1] wire#78
+94, 7, 79            !TDC ROC#2 Sl#5 Ch#94 HDC pl#7 [X1] wire#79
+95, 7, 80            !TDC ROC#2 Sl#5 Ch#95 HDC pl#7 [X1] wire#80
+Slot= 6
+0, 12, 33            !TDC ROC#2 Sl#6 Ch#0 HDC pl#12 [X2] wire#33
+1, 12, 34 	     !TDC ROC#2 Sl#6 Ch#1 HDC pl#12 [X2] wire#34
+2, 12, 35            !TDC ROC#2 Sl#6 Ch#2 HDC pl#12 [X2] wire#35
+3, 12, 36            !TDC ROC#2 Sl#6 Ch#3 HDC pl#12 [X2] wire#36
+4, 12, 37            !TDC ROC#2 Sl#6 Ch#4 HDC pl#12 [X2] wire#37
+5, 12, 38            !TDC ROC#2 Sl#6 Ch#5 HDC pl#12 [X2] wire#38
+6, 12, 39            !TDC ROC#2 Sl#6 Ch#6 HDC pl#12 [X2] wire#39
+7, 12, 40            !TDC ROC#2 Sl#6 Ch#7 HDC pl#12 [X2] wire#40
+8, 12, 41            !TDC ROC#2 Sl#6 Ch#8 HDC pl#12 [X2] wire#41
+9, 12, 42            !TDC ROC#2 Sl#6 Ch#9 HDC pl#12 [X2] wire#42
+10, 12, 43           !TDC ROC#2 Sl#6 Ch#10 HDC pl#12 [X2] wire#43
+11, 12, 44           !TDC ROC#2 Sl#6 Ch#11 HDC pl#12 [X2] wire#44
+12, 12, 45           !TDC ROC#2 Sl#6 Ch#12 HDC pl#12 [X2] wire#45
+13, 12, 46           !TDC ROC#2 Sl#6 Ch#13 HDC pl#12 [X2] wire#46
+14, 12, 47           !TDC ROC#2 Sl#6 Ch#14 HDC pl#12 [X2] wire#47
+15, 12, 48           !TDC ROC#2 Sl#6 Ch#15 HDC pl#12 [X2] wire#48
+16, 9, 30            !TDC ROC#2 Sl#6 Ch#16 HDC pl#9 [U] wire#30
+17, 9, 31            !TDC ROC#2 Sl#6 Ch#17 HDC pl#9 [U] wire#31
+18, 9, 32            !TDC ROC#2 Sl#6 Ch#18 HDC pl#9 [U] wire#32
+19, 9, 33            !TDC ROC#2 Sl#6 Ch#19 HDC pl#9 [U] wire#33
+20, 9, 34            !TDC ROC#2 Sl#6 Ch#20 HDC pl#9 [U] wire#34
+21, 9, 35            !TDC ROC#2 Sl#6 Ch#21 HDC pl#9 [U] wire#35
+22, 9, 36            !TDC ROC#2 Sl#6 Ch#22 HDC pl#9 [U] wire#36
+23, 9, 37            !TDC ROC#2 Sl#6 Ch#23 HDC pl#9 [U] wire#37
+24, 9, 38            !TDC ROC#2 Sl#6 Ch#24 HDC pl#9 [U] wire#38
+25, 9, 39            !TDC ROC#2 Sl#6 Ch#25 HDC pl#9 [U] wire#39
+26, 9, 40            !TDC ROC#2 Sl#6 Ch#26 HDC pl#9 [U] wire#40
+27, 9, 41            !TDC ROC#2 Sl#6 Ch#27 HDC pl#9 [U] wire#41
+28, 9, 42            !TDC ROC#2 Sl#6 Ch#28 HDC pl#9 [U] wire#42
+29, 9, 43            !TDC ROC#2 Sl#6 Ch#29 HDC pl#9 [U] wire#43
+30, 9, 44            !TDC ROC#2 Sl#6 Ch#30 HDC pl#9 [U] wire#44
+31, 9, 45            !TDC ROC#2 Sl#6 Ch#31 HDC pl#9 [U] wire#45
+32, 10, 46           !TDC ROC#2 Sl#6 Ch#32 HDC pl#10 [V] wire#46
+33, 10, 47           !TDC ROC#2 Sl#6 Ch#33 HDC pl#10 [V] wire#47
+34, 10, 48           !TDC ROC#2 Sl#6 Ch#34 HDC pl#10 [V] wire#48
+35, 10, 49           !TDC ROC#2 Sl#6 Ch#35 HDC pl#10 [V] wire#49
+36, 10, 50           !TDC ROC#2 Sl#6 Ch#36 HDC pl#10 [V] wire#50
+37, 10, 51           !TDC ROC#2 Sl#6 Ch#37 HDC pl#10 [V] wire#51
+38, 10, 52           !TDC ROC#2 Sl#6 Ch#38 HDC pl#10 [V] wire#52
+39, 10, 53           !TDC ROC#2 Sl#6 Ch#39 HDC pl#10 [V] wire#53
+40, 10, 54           !TDC ROC#2 Sl#6 Ch#40 HDC pl#10 [V] wire#54
+41, 10, 55           !TDC ROC#2 Sl#6 Ch#41 HDC pl#10 [V] wire#55
+42, 10, 56           !TDC ROC#2 Sl#6 Ch#42 HDC pl#10 [V] wire#56
+43, 10, 57           !TDC ROC#2 Sl#6 Ch#43 HDC pl#10 [V] wire#57
+44, 10, 58           !TDC ROC#2 Sl#6 Ch#44 HDC pl#10 [V] wire#58
+45, 10, 59           !TDC ROC#2 Sl#6 Ch#45 HDC pl#10 [V] wire#59
+46, 10, 60           !TDC ROC#2 Sl#6 Ch#46 HDC pl#10 [V] wire#60
+!47 !TDC ROC#2 Sl#6 Ch#47 HDC unused
+48, 7, 49           !TDC ROC#2 Sl#6 Ch#48 HDC pl#7 [X1] wire#49
+49, 7, 50           !TDC ROC#2 Sl#6 Ch#49 HDC pl#7 [X1] wire#50
+50, 7, 51           !TDC ROC#2 Sl#6 Ch#50 HDC pl#7 [X1] wire#51
+51, 7, 52           !TDC ROC#2 Sl#6 Ch#51 HDC pl#7 [X1] wire#52
+52, 7, 53           !TDC ROC#2 Sl#6 Ch#52 HDC pl#7 [X1] wire#53
+53, 7, 54           !TDC ROC#2 Sl#6 Ch#53 HDC pl#7 [X1] wire#54
+54, 7, 55           !TDC ROC#2 Sl#6 Ch#54 HDC pl#7 [X1] wire#55
+55, 7, 56           !TDC ROC#2 Sl#6 Ch#55 HDC pl#7 [X1] wire#56
+56, 7, 57           !TDC ROC#2 Sl#6 Ch#56 HDC pl#7 [X1] wire#57
+57, 7, 58           !TDC ROC#2 Sl#6 Ch#57 HDC pl#7 [X1] wire#58
+58, 7, 59           !TDC ROC#2 Sl#6 Ch#58 HDC pl#7 [X1] wire#59
+59, 7, 60           !TDC ROC#2 Sl#6 Ch#59 HDC pl#7 [X1] wire#60
+60, 7, 61           !TDC ROC#2 Sl#6 Ch#60 HDC pl#7 [X1] wire#61
+61, 7, 62           !TDC ROC#2 Sl#6 Ch#61 HDC pl#7 [X1] wire#62
+62, 7, 63           !TDC ROC#2 Sl#6 Ch#62 HDC pl#7 [X1] wire#63
+63, 7, 64           !TDC ROC#2 Sl#6 Ch#63 HDC pl#7 [X1] wire#64
+64, 12, 49          !TDC ROC#2 Sl#6 Ch#64 HDC pl#12 [X2] wire#49
+65, 12, 50          !TDC ROC#2 Sl#6 Ch#65 HDC pl#12 [X2] wire#50
+66, 12, 51          !TDC ROC#2 Sl#6 Ch#66 HDC pl#12 [X2] wire#51
+67, 12, 52          !TDC ROC#2 Sl#6 Ch#67 HDC pl#12 [X2] wire#52
+68, 12, 53          !TDC ROC#2 Sl#6 Ch#68 HDC pl#12 [X2] wire#53
+69, 12, 54          !TDC ROC#2 Sl#6 Ch#69 HDC pl#12 [X2] wire#54
+70, 12, 55          !TDC ROC#2 Sl#6 Ch#70 HDC pl#12 [X2] wire#55
+71, 12, 56          !TDC ROC#2 Sl#6 Ch#71 HDC pl#12 [X2] wire#56
+72, 12, 57          !TDC ROC#2 Sl#6 Ch#72 HDC pl#12 [X2] wire#57
+73, 12, 58          !TDC ROC#2 Sl#6 Ch#73 HDC pl#12 [X2] wire#58
+74, 12, 59          !TDC ROC#2 Sl#6 Ch#74 HDC pl#12 [X2] wire#59
+75, 12, 60          !TDC ROC#2 Sl#6 Ch#75 HDC pl#12 [X2] wire#60
+76, 12, 61          !TDC ROC#2 Sl#6 Ch#76 HDC pl#12 [X2] wire#61
+77, 12, 62          !TDC ROC#2 Sl#6 Ch#77 HDC pl#12 [X2] wire#62
+78, 12, 63          !TDC ROC#2 Sl#6 Ch#78 HDC pl#12 [X2] wire#63
+79, 12, 64          !TDC ROC#2 Sl#6 Ch#79 HDC pl#12 [X2] wire#64
+80, 10, 30          !TDC ROC#2 Sl#6 Ch#80 HDC pl#10 [V] wire#30
+81, 10, 31          !TDC ROC#2 Sl#6 Ch#81 HDC pl#10 [V] wire#31
+82, 10, 32          !TDC ROC#2 Sl#6 Ch#82 HDC pl#10 [V] wire#32
+83, 10, 33          !TDC ROC#2 Sl#6 Ch#83 HDC pl#10 [V] wire#33
+84, 10, 34          !TDC ROC#2 Sl#6 Ch#84 HDC pl#10 [V] wire#34
+85, 10, 35          !TDC ROC#2 Sl#6 Ch#85 HDC pl#10 [V] wire#35
+86, 10, 36          !TDC ROC#2 Sl#6 Ch#86 HDC pl#10 [V] wire#36
+87, 10, 37          !TDC ROC#2 Sl#6 Ch#87 HDC pl#10 [V] wire#37
+88, 10, 38          !TDC ROC#2 Sl#6 Ch#88 HDC pl#10 [V] wire#38
+89, 10, 39          !TDC ROC#2 Sl#6 Ch#89 HDC pl#10 [V] wire#39
+90, 10, 40          !TDC ROC#2 Sl#6 Ch#90 HDC pl#10 [V] wire#40
+91, 10, 41          !TDC ROC#2 Sl#6 Ch#91 HDC pl#10 [V] wire#41
+92, 10, 42          !TDC ROC#2 Sl#6 Ch#92 HDC pl#10 [V] wire#42
+93, 10, 43          !TDC ROC#2 Sl#6 Ch#93 HDC pl#10 [V] wire#43
+94, 10, 44          !TDC ROC#2 Sl#6 Ch#94 HDC pl#10 [V] wire#44
+95, 10, 45          !TDC ROC#2 Sl#6 Ch#95 HDC pl#10 [V] wire#45
+Slot= 8
+0, 9, 46            !TDC ROC#2 Sl#8 Ch#0 HDC pl#9 [U] wire#46
+1, 9, 47            !TDC ROC#2 Sl#8 Ch#1 HDC pl#9 [U] wire#47
+2, 9, 48            !TDC ROC#2 Sl#8 Ch#2 HDC pl#9 [U] wire#48
+3, 9, 49            !TDC ROC#2 Sl#8 Ch#3 HDC pl#9 [U] wire#49
+4, 9, 50            !TDC ROC#2 Sl#8 Ch#4 HDC pl#9 [U] wire#50
+5, 9, 51            !TDC ROC#2 Sl#8 Ch#5 HDC pl#9 [U] wire#51
+6, 9, 52            !TDC ROC#2 Sl#8 Ch#6 HDC pl#9 [U] wire#52
+7, 9, 53            !TDC ROC#2 Sl#8 Ch#7 HDC pl#9 [U] wire#53
+8, 9, 54            !TDC ROC#2 Sl#8 Ch#8 HDC pl#9 [U] wire#54
+9, 9, 55            !TDC ROC#2 Sl#8 Ch#9 HDC pl#9 [U] wire#55
+10, 9, 56           !TDC ROC#2 Sl#8 Ch#10 HDC pl#9 [U] wire#56
+11, 9, 57           !TDC ROC#2 Sl#8 Ch#11 HDC pl#9 [U] wire#57
+12, 9, 58           !TDC ROC#2 Sl#8 Ch#12 HDC pl#9 [U] wire#58
+13, 9, 59           !TDC ROC#2 Sl#8 Ch#13 HDC pl#9 [U] wire#59
+14, 9, 60           !TDC ROC#2 Sl#8 Ch#14 HDC pl#9 [U] wire#60
+!15 !TDC ROC#2 Sl#8 Ch#15 unused
+16, 7, 33           !TDC ROC#2 Sl#8 Ch#16 HDC pl#7 [X1] wire#33
+17, 7, 34           !TDC ROC#2 Sl#8 Ch#17 HDC pl#7 [X1] wire#34
+18, 7, 35           !TDC ROC#2 Sl#8 Ch#18 HDC pl#7 [X1] wire#35
+19, 7, 36           !TDC ROC#2 Sl#8 Ch#19 HDC pl#7 [X1] wire#36
+20, 7, 37           !TDC ROC#2 Sl#8 Ch#20 HDC pl#7 [X1] wire#37
+21, 7, 38           !TDC ROC#2 Sl#8 Ch#21 HDC pl#7 [X1] wire#38
+22, 7, 39           !TDC ROC#2 Sl#8 Ch#22 HDC pl#7 [X1] wire#39
+23, 7, 40           !TDC ROC#2 Sl#8 Ch#23 HDC pl#7 [X1] wire#40
+24, 7, 41           !TDC ROC#2 Sl#8 Ch#24 HDC pl#7 [X1] wire#41
+25, 7, 42           !TDC ROC#2 Sl#8 Ch#25 HDC pl#7 [X1] wire#42
+26, 7, 43           !TDC ROC#2 Sl#8 Ch#26 HDC pl#7 [X1] wire#43
+27, 7, 44           !TDC ROC#2 Sl#8 Ch#27 HDC pl#7 [X1] wire#44
+28, 7, 45           !TDC ROC#2 Sl#8 Ch#28 HDC pl#7 [X1] wire#45
+29, 7, 46           !TDC ROC#2 Sl#8 Ch#29 HDC pl#7 [X1] wire#46
+30, 7, 47           !TDC ROC#2 Sl#8 Ch#30 HDC pl#7 [X1] wire#47
+31, 7, 48           !TDC ROC#2 Sl#8 Ch#31 HDC pl#7 [X1] wire#48
+32, 12, 65          !TDC ROC#2 Sl#8 Ch#32 HDC pl#12 [X2] wire#65
+33, 12, 66          !TDC ROC#2 Sl#8 Ch#33 HDC pl#12 [X2] wire#66
+34, 12, 67          !TDC ROC#2 Sl#8 Ch#34 HDC pl#12 [X2] wire#67
+35, 12, 68          !TDC ROC#2 Sl#8 Ch#35 HDC pl#12 [X2] wire#68
+36, 12, 69          !TDC ROC#2 Sl#8 Ch#36 HDC pl#12 [X2] wire#69
+37, 12, 70          !TDC ROC#2 Sl#8 Ch#37 HDC pl#12 [X2] wire#70
+38, 12, 71          !TDC ROC#2 Sl#8 Ch#38 HDC pl#12 [X2] wire#71
+39, 12, 72          !TDC ROC#2 Sl#8 Ch#39 HDC pl#12 [X2] wire#72
+40, 12, 73          !TDC ROC#2 Sl#8 Ch#40 HDC pl#12 [X2] wire#73
+41, 12, 74          !TDC ROC#2 Sl#8 Ch#41 HDC pl#12 [X2] wire#74
+42, 12, 75          !TDC ROC#2 Sl#8 Ch#42 HDC pl#12 [X2] wire#75
+43, 12, 76          !TDC ROC#2 Sl#8 Ch#43 HDC pl#12 [X2] wire#76
+44, 12, 77          !TDC ROC#2 Sl#8 Ch#44 HDC pl#12 [X2] wire#77
+45, 12, 78          !TDC ROC#2 Sl#8 Ch#45 HDC pl#12 [X2] wire#78
+46, 12, 79          !TDC ROC#2 Sl#8 Ch#46 HDC pl#12 [X2] wire#79
+47, 12, 80	    !TDC ROC#2 Sl#8 Ch#47 HDC pl#12 [X2] wire#80
+48, 9, 61           !TDC ROC#2 Sl#8 Ch#48 HDC pl#9 [U] wire#61
+49, 9, 62           !TDC ROC#2 Sl#8 Ch#49 HDC pl#9 [U] wire#62
+50, 9, 63           !TDC ROC#2 Sl#8 Ch#50 HDC pl#9 [U] wire#63
+51, 9, 64           !TDC ROC#2 Sl#8 Ch#51 HDC pl#9 [U] wire#64
+52, 9, 65           !TDC ROC#2 Sl#8 Ch#52 HDC pl#9 [U] wire#65
+53, 9, 66           !TDC ROC#2 Sl#8 Ch#53 HDC pl#9 [U] wire#66
+54, 9, 67           !TDC ROC#2 Sl#8 Ch#54 HDC pl#9 [U] wire#67
+55, 9, 68           !TDC ROC#2 Sl#8 Ch#55 HDC pl#9 [U] wire#68
+56, 9, 69           !TDC ROC#2 Sl#8 Ch#56 HDC pl#9 [U] wire#69
+57, 9, 70           !TDC ROC#2 Sl#8 Ch#57 HDC pl#9 [U] wire#70
+58, 9, 71           !TDC ROC#2 Sl#8 Ch#58 HDC pl#9 [U] wire#71
+59, 9, 72           !TDC ROC#2 Sl#8 Ch#59 HDC pl#9 [U] wire#72
+60, 9, 73           !TDC ROC#2 Sl#8 Ch#60 HDC pl#9 [U] wire#73
+61, 9, 74           !TDC ROC#2 Sl#8 Ch#61 HDC pl#9 [U] wire#74
+62, 9, 75           !TDC ROC#2 Sl#8 Ch#62 HDC pl#9 [U] wire#75
+63, 9, 76           !TDC ROC#2 Sl#8 Ch#63 HDC pl#9 [U] wire#76
+64, 10, 15          !TDC ROC#2 Sl#8 Ch#64 HDC pl#10 [V] wire#15
+65, 10, 16          !TDC ROC#2 Sl#8 Ch#65 HDC pl#10 [V] wire#16
+66, 10, 17          !TDC ROC#2 Sl#8 Ch#66 HDC pl#10 [V] wire#17
+67, 10, 18          !TDC ROC#2 Sl#8 Ch#67 HDC pl#10 [V] wire#18
+68, 10, 19          !TDC ROC#2 Sl#8 Ch#68 HDC pl#10 [V] wire#19
+69, 10, 20          !TDC ROC#2 Sl#8 Ch#69 HDC pl#10 [V] wire#20
+70, 10, 21          !TDC ROC#2 Sl#8 Ch#70 HDC pl#10 [V] wire#21
+71, 10, 22          !TDC ROC#2 Sl#8 Ch#71 HDC pl#10 [V] wire#22
+72, 10, 23          !TDC ROC#2 Sl#8 Ch#72 HDC pl#10 [V] wire#23
+73, 10, 24          !TDC ROC#2 Sl#8 Ch#73 HDC pl#10 [V] wire#24
+74, 10, 25          !TDC ROC#2 Sl#8 Ch#74 HDC pl#10 [V] wire#25
+75, 10, 26          !TDC ROC#2 Sl#8 Ch#75 HDC pl#10 [V] wire#26
+76, 10, 27          !TDC ROC#2 Sl#8 Ch#76 HDC pl#10 [V] wire#27
+77, 10, 28          !TDC ROC#2 Sl#8 Ch#77 HDC pl#10 [V] wire#28
+78, 10, 29          !TDC ROC#2 Sl#8 Ch#78 HDC pl#10 [V] wire#29
+! 79 !TDC ROC#2 Sl#8 Ch#79 unused
+80, 7, 17           !TDC ROC#2 Sl#8 Ch#80 HDC pl#7 [X1] wire#17
+81, 7, 18           !TDC ROC#2 Sl#8 Ch#81 HDC pl#7 [X1] wire#18
+82, 7, 19           !TDC ROC#2 Sl#8 Ch#82 HDC pl#7 [X1] wire#19
+83, 7, 20           !TDC ROC#2 Sl#8 Ch#83 HDC pl#7 [X1] wire#20
+84, 7, 21           !TDC ROC#2 Sl#8 Ch#84 HDC pl#7 [X1] wire#21
+85, 7, 22           !TDC ROC#2 Sl#8 Ch#85 HDC pl#7 [X1] wire#22
+86, 7, 23           !TDC ROC#2 Sl#8 Ch#86 HDC pl#7 [X1] wire#23
+87, 7, 24           !TDC ROC#2 Sl#8 Ch#87 HDC pl#7 [X1] wire#24
+88, 7, 25           !TDC ROC#2 Sl#8 Ch#88 HDC pl#7 [X1] wire#25
+89, 7, 26           !TDC ROC#2 Sl#8 Ch#89 HDC pl#7 [X1] wire#26
+90, 7, 27           !TDC ROC#2 Sl#8 Ch#90 HDC pl#7 [X1] wire#27
+91, 7, 28           !TDC ROC#2 Sl#8 Ch#91 HDC pl#7 [X1] wire#28
+92, 7, 29           !TDC ROC#2 Sl#8 Ch#92 HDC pl#7 [X1] wire#29
+93, 7, 30           !TDC ROC#2 Sl#8 Ch#93 HDC pl#7 [X1] wire#30
+94, 7, 31           !TDC ROC#2 Sl#8 Ch#94 HDC pl#7 [X1] wire#31
+95, 7, 32           !TDC ROC#2 Sl#8 Ch#95 HDC pl#7 [X1] wire#32
+Slot= 9
+0, 12, 81           !TDC ROC#2 Sl#9 Ch#0 HDC pl#12 [X2] wire#81
+1, 12, 82           !TDC ROC#2 Sl#9 Ch#1 HDC pl#12 [X2] wire#82
+2, 12, 83           !TDC ROC#2 Sl#9 Ch#2 HDC pl#12 [X2] wire#83
+3, 12, 84           !TDC ROC#2 Sl#9 Ch#3 HDC pl#12 [X2] wire#84
+4, 12, 85           !TDC ROC#2 Sl#9 Ch#4 HDC pl#12 [X2] wire#85
+5, 12, 86           !TDC ROC#2 Sl#9 Ch#5 HDC pl#12 [X2] wire#86
+6, 12, 87           !TDC ROC#2 Sl#9 Ch#6 HDC pl#12 [X2] wire#87
+7, 12, 88           !TDC ROC#2 Sl#9 Ch#7 HDC pl#12 [X2] wire#88
+8, 12, 89           !TDC ROC#2 Sl#9 Ch#8 HDC pl#12 [X2] wire#89
+9, 12, 90           !TDC ROC#2 Sl#9 Ch#9 HDC pl#12 [X2] wire#90
+10, 12, 91          !TDC ROC#2 Sl#9 Ch#10 HDC pl#12 [X2] wire#91
+11, 12, 92          !TDC ROC#2 Sl#9 Ch#11 HDC pl#12 [X2] wire#92
+12, 12, 93          !TDC ROC#2 Sl#9 Ch#12 HDC pl#12 [X2] wire#93
+13, 12, 94          !TDC ROC#2 Sl#9 Ch#13 HDC pl#12 [X2] wire#94
+14, 12, 95          !TDC ROC#2 Sl#9 Ch#14 HDC pl#12 [X2] wire#95
+15, 12, 96          !TDC ROC#2 Sl#9 Ch#15 HDC pl#12 [X2] wire#96
+16, 9, 77           !TDC ROC#2 Sl#9 Ch#16 HDC pl#9 [U] wire#77
+17, 9, 78           !TDC ROC#2 Sl#9 Ch#17 HDC pl#9 [U] wire#78
+18, 9, 79           !TDC ROC#2 Sl#9 Ch#18 HDC pl#9 [U] wire#79
+19, 9, 80           !TDC ROC#2 Sl#9 Ch#19 HDC pl#9 [U] wire#80
+20, 9, 81           !TDC ROC#2 Sl#9 Ch#20 HDC pl#9 [U] wire#81
+21, 9, 82           !TDC ROC#2 Sl#9 Ch#21 HDC pl#9 [U] wire#82
+22, 9, 83           !TDC ROC#2 Sl#9 Ch#22 HDC pl#9 [U] wire#83
+23, 9, 84           !TDC ROC#2 Sl#9 Ch#23 HDC pl#9 [U] wire#84
+24, 9, 85           !TDC ROC#2 Sl#9 Ch#24 HDC pl#9 [U] wire#85
+25, 9, 86           !TDC ROC#2 Sl#9 Ch#25 HDC pl#9 [U] wire#86
+26, 9, 87           !TDC ROC#2 Sl#9 Ch#26 HDC pl#9 [U] wire#87
+27, 9, 88           !TDC ROC#2 Sl#9 Ch#27 HDC pl#9 [U] wire#88
+28, 9, 89           !TDC ROC#2 Sl#9 Ch#28 HDC pl#9 [U] wire#89
+29, 9, 90           !TDC ROC#2 Sl#9 Ch#29 HDC pl#9 [U] wire#90
+30, 9, 91           !TDC ROC#2 Sl#9 Ch#30 HDC pl#9 [U] wire#91
+!31 !TDC ROC#2 Sl#9 Ch#31 unused
+32, 12, 113         !TDC ROC#2 Sl#9 Ch#32 HDC pl#12 [X2] wire#113
+!33 !TDC ROC#2 Sl#9 Ch#33 unused
+34, 10, 1           !TDC ROC#2 Sl#9 Ch#34 HDC pl#10 [V] wire#1
+35, 10, 2           !TDC ROC#2 Sl#9 Ch#35 HDC pl#10 [V] wire#2
+36, 10, 3           !TDC ROC#2 Sl#9 Ch#36 HDC pl#10 [V] wire#3
+37, 10, 4           !TDC ROC#2 Sl#9 Ch#37 HDC pl#10 [V] wire#4
+38, 10, 5           !TDC ROC#2 Sl#9 Ch#38 HDC pl#10 [V] wire#5
+39, 10, 6           !TDC ROC#2 Sl#9 Ch#39 HDC pl#10 [V] wire#6
+40, 10, 7           !TDC ROC#2 Sl#9 Ch#40 HDC pl#10 [V] wire#7
+41, 10, 8           !TDC ROC#2 Sl#9 Ch#41 HDC pl#10 [V] wire#8
+42, 10, 9           !TDC ROC#2 Sl#9 Ch#42 HDC pl#10 [V] wire#9
+43, 10, 10          !TDC ROC#2 Sl#9 Ch#43 HDC pl#10 [V] wire#10
+44, 10, 11          !TDC ROC#2 Sl#9 Ch#44 HDC pl#10 [V] wire#11
+45, 10, 12          !TDC ROC#2 Sl#9 Ch#45 HDC pl#10 [V] wire#12
+46, 10, 13          !TDC ROC#2 Sl#9 Ch#46 HDC pl#10 [V] wire#13
+47, 10, 14          !TDC ROC#2 Sl#9 Ch#47 HDC pl#10 [V] wire#14
+48, 7, 1            !TDC ROC#2 Sl#9 Ch#48 HDC pl#7 [X1] wire#1
+49, 7, 2            !TDC ROC#2 Sl#9 Ch#49 HDC pl#7 [X1] wire#2
+50, 7, 3            !TDC ROC#2 Sl#9 Ch#50 HDC pl#7 [X1] wire#3
+51, 7, 4            !TDC ROC#2 Sl#9 Ch#51 HDC pl#7 [X1] wire#4
+52, 7, 5            !TDC ROC#2 Sl#9 Ch#52 HDC pl#7 [X1] wire#5
+53, 7, 6            !TDC ROC#2 Sl#9 Ch#53 HDC pl#7 [X1] wire#6
+54, 7, 7            !TDC ROC#2 Sl#9 Ch#54 HDC pl#7 [X1] wire#7
+55, 7, 8            !TDC ROC#2 Sl#9 Ch#55 HDC pl#7 [X1] wire#8
+56, 7, 9            !TDC ROC#2 Sl#9 Ch#56 HDC pl#7 [X1] wire#9
+57, 7, 10           !TDC ROC#2 Sl#9 Ch#57 HDC pl#7 [X1] wire#10
+58, 7, 11           !TDC ROC#2 Sl#9 Ch#58 HDC pl#7 [X1] wire#11
+59, 7, 12           !TDC ROC#2 Sl#9 Ch#59 HDC pl#7 [X1] wire#12
+60, 7, 13           !TDC ROC#2 Sl#9 Ch#60 HDC pl#7 [X1] wire#13
+61, 7, 14           !TDC ROC#2 Sl#9 Ch#61 HDC pl#7 [X1] wire#14
+62, 7, 15           !TDC ROC#2 Sl#9 Ch#62 HDC pl#7 [X1] wire#15
+63, 7, 16           !TDC ROC#2 Sl#9 Ch#63 HDC pl#7 [X1] wire#16
+64, 12, 97          !TDC ROC#2 Sl#9 Ch#64 HDC pl#12 [X2] wire#97
+65, 12, 98          !TDC ROC#2 Sl#9 Ch#65 HDC pl#12 [X2] wire#98
+66, 12, 99          !TDC ROC#2 Sl#9 Ch#66 HDC pl#12 [X2] wire#99
+67, 12, 100         !TDC ROC#2 Sl#9 Ch#67 HDC pl#12 [X2] wire#100
+68, 12, 101         !TDC ROC#2 Sl#9 Ch#68 HDC pl#12 [X2] wire#101
+69, 12, 102         !TDC ROC#2 Sl#9 Ch#69 HDC pl#12 [X2] wire#102
+70, 12, 103         !TDC ROC#2 Sl#9 Ch#70 HDC pl#12 [X2] wire#103
+71, 12, 104         !TDC ROC#2 Sl#9 Ch#71 HDC pl#12 [X2] wire#104
+72, 12, 105         !TDC ROC#2 Sl#9 Ch#72 HDC pl#12 [X2] wire#105
+73, 12, 106         !TDC ROC#2 Sl#9 Ch#73 HDC pl#12 [X2] wire#106
+74, 12, 107         !TDC ROC#2 Sl#9 Ch#74 HDC pl#12 [X2] wire#107
+75, 12, 108         !TDC ROC#2 Sl#9 Ch#75 HDC pl#12 [X2] wire#108
+76, 12, 109         !TDC ROC#2 Sl#9 Ch#76 HDC pl#12 [X2] wire#109
+77, 12, 110         !TDC ROC#2 Sl#9 Ch#77 HDC pl#12 [X2] wire#110
+78, 12, 111         !TDC ROC#2 Sl#9 Ch#78 HDC pl#12 [X2] wire#111
+79, 12, 112         !TDC ROC#2 Sl#9 Ch#79 HDC pl#12 [X2] wire#112
+80, 9, 92           !TDC ROC#2 Sl#9 Ch#80 HDC pl#9 [U] wire#92
+81, 9, 93           !TDC ROC#2 Sl#9 Ch#81 HDC pl#9 [U] wire#93
+82, 9, 94           !TDC ROC#2 Sl#9 Ch#82 HDC pl#9 [U] wire#94
+83, 9, 95           !TDC ROC#2 Sl#9 Ch#83 HDC pl#9 [U] wire#95
+84, 9, 96           !TDC ROC#2 Sl#9 Ch#84 HDC pl#9 [U] wire#96
+85, 9, 97           !TDC ROC#2 Sl#9 Ch#85 HDC pl#9 [U] wire#97
+86, 9, 98           !TDC ROC#2 Sl#9 Ch#86 HDC pl#9 [U] wire#98
+87, 9, 99           !TDC ROC#2 Sl#9 Ch#87 HDC pl#9 [U] wire#99
+88, 9, 100          !TDC ROC#2 Sl#9 Ch#88 HDC pl#9 [U] wire#100
+89, 9, 101          !TDC ROC#2 Sl#9 Ch#89 HDC pl#9 [U] wire#101
+90, 9, 102          !TDC ROC#2 Sl#9 Ch#90 HDC pl#9 [U] wire#102
+91, 9, 103          !TDC ROC#2 Sl#9 Ch#91 HDC pl#9 [U] wire#103
+92, 9, 104          !TDC ROC#2 Sl#9 Ch#92 HDC pl#9 [U] wire#104
+93, 9, 105          !TDC ROC#2 Sl#9 Ch#93 HDC pl#9 [U] wire#105
+94, 9, 106          !TDC ROC#2 Sl#9 Ch#94 HDC pl#9 [U] wire#106
+95, 9, 107          !TDC ROC#2 Sl#9 Ch#95 HDC pl#9 [U] wire#107
+!
+!
+!                               2nd HDC chamber  planes1-6     
+Slot= 15
+0, 1, 1            !TDC ROC#2 Sl#11 Ch#0 HDC pl#7 [X1] wire#1
+1, 1, 2            !TDC ROC#2 Sl#11 Ch#1 HDC pl#7 [X1] wire#2
+2, 1, 3            !TDC ROC#2 Sl#11 Ch#2 HDC pl#7 [X1] wire#3
+3, 1, 4            !TDC ROC#2 Sl#11 Ch#3 HDC pl#7 [X1] wire#4
+4, 1, 5            !TDC ROC#2 Sl#11 Ch#4 HDC pl#7 [X1] wire#5
+5, 1, 6            !TDC ROC#2 Sl#11 Ch#5 HDC pl#7 [X1] wire#6
+6, 1, 7            !TDC ROC#2 Sl#11 Ch#6 HDC pl#7 [X1] wire#7
+7, 1, 8            !TDC ROC#2 Sl#11 Ch#7 HDC pl#7 [X1] wire#8
+8, 1, 9            !TDC ROC#2 Sl#11 Ch#8 HDC pl#7 [X1] wire#9
+9, 1, 10           !TDC ROC#2 Sl#11 Ch#9 HDC pl#7 [X1] wire#10
+10, 1, 11          !TDC ROC#2 Sl#11 Ch#10 HDC pl#7 [X1] wire#11
+11, 1, 12          !TDC ROC#2 Sl#11 Ch#11 HDC pl#7 [X1] wire#12
+12, 1, 13          !TDC ROC#2 Sl#11 Ch#12 HDC pl#7 [X1] wire#13
+13, 1, 14          !TDC ROC#2 Sl#11 Ch#13 HDC pl#7 [X1] wire#14
+14, 1, 15          !TDC ROC#2 Sl#11 Ch#14 HDC pl#7 [X1] wire#15
+15, 1, 16          !TDC ROC#2 Sl#11 Ch#15 HDC pl#7 [X1] wire#16
+16, 1, 17          !TDC ROC#2 Sl#11 Ch#16 HDC pl#7 [X1] wire#17
+17, 1, 18          !TDC ROC#2 Sl#11 Ch#17 HDC pl#7 [X1] wire#18
+18, 1, 19          !TDC ROC#2 Sl#11 Ch#18 HDC pl#7 [X1] wire#19
+19, 1, 20          !TDC ROC#2 Sl#11 Ch#19 HDC pl#7 [X1] wire#20
+20, 1, 21          !TDC ROC#2 Sl#11 Ch#20 HDC pl#7 [X1] wire#21
+21, 1, 22          !TDC ROC#2 Sl#11 Ch#21 HDC pl#7 [X1] wire#22
+22, 1, 23          !TDC ROC#2 Sl#11 Ch#22 HDC pl#7 [X1] wire#23
+23, 1, 24          !TDC ROC#2 Sl#11 Ch#23 HDC pl#7 [X1] wire#24
+24, 1, 25          !TDC ROC#2 Sl#11 Ch#24 HDC pl#7 [X1] wire#25
+25, 1, 26          !TDC ROC#2 Sl#11 Ch#25 HDC pl#7 [X1] wire#26
+26, 1, 27          !TDC ROC#2 Sl#11 Ch#26 HDC pl#7 [X1] wire#27
+27, 1, 28          !TDC ROC#2 Sl#11 Ch#27 HDC pl#7 [X1] wire#28
+28, 1, 29          !TDC ROC#2 Sl#11 Ch#28 HDC pl#7 [X1] wire#29
+29, 1, 30          !TDC ROC#2 Sl#11 Ch#29 HDC pl#7 [X1] wire#30
+30, 1, 31          !TDC ROC#2 Sl#11 Ch#30 HDC pl#7 [X1] wire#31
+31, 1, 32          !TDC ROC#2 Sl#11 Ch#31 HDC pl#7 [X1] wire#32
+32, 1, 33          !TDC ROC#2 Sl#11 Ch#32 HDC pl#7 [X1] wire#33
+33, 1, 34          !TDC ROC#2 Sl#11 Ch#33 HDC pl#7 [X1] wire#34
+34, 1, 35          !TDC ROC#2 Sl#11 Ch#34 HDC pl#7 [X1] wire#35
+35, 1, 36          !TDC ROC#2 Sl#11 Ch#35 HDC pl#7 [X1] wire#36
+36, 1, 37          !TDC ROC#2 Sl#11 Ch#36 HDC pl#7 [X1] wire#37
+37, 1, 38          !TDC ROC#2 Sl#11 Ch#37 HDC pl#7 [X1] wire#38
+38, 1, 39          !TDC ROC#2 Sl#11 Ch#38 HDC pl#7 [X1] wire#39
+39, 1, 40          !TDC ROC#2 Sl#11 Ch#39 HDC pl#7 [X1] wire#40
+40, 1, 41          !TDC ROC#2 Sl#11 Ch#40 HDC pl#7 [X1] wire#41
+41, 1, 42          !TDC ROC#2 Sl#11 Ch#41 HDC pl#7 [X1] wire#42
+42, 1, 43          !TDC ROC#2 Sl#11 Ch#42 HDC pl#7 [X1] wire#43
+43, 1, 44          !TDC ROC#2 Sl#11 Ch#43 HDC pl#7 [X1] wire#44
+44, 1, 45          !TDC ROC#2 Sl#11 Ch#44 HDC pl#7 [X1] wire#45
+45, 1, 46          !TDC ROC#2 Sl#11 Ch#45 HDC pl#7 [X1] wire#46
+46, 1, 47          !TDC ROC#2 Sl#11 Ch#46 HDC pl#7 [X1] wire#47
+47, 1, 48          !TDC ROC#2 Sl#11 Ch#47 HDC pl#7 [X1] wire#48
+48, 1, 49          !TDC ROC#2 Sl#11 Ch#48 HDC pl#7 [X1] wire#49
+49, 1, 50          !TDC ROC#2 Sl#11 Ch#49 HDC pl#7 [X1] wire#50
+50, 1, 51          !TDC ROC#2 Sl#11 Ch#50 HDC pl#7 [X1] wire#51
+51, 1, 52          !TDC ROC#2 Sl#11 Ch#51 HDC pl#7 [X1] wire#52
+52, 1, 53          !TDC ROC#2 Sl#11 Ch#52 HDC pl#7 [X1] wire#53
+53, 1, 54          !TDC ROC#2 Sl#11 Ch#53 HDC pl#7 [X1] wire#54
+54, 1, 55          !TDC ROC#2 Sl#11 Ch#54 HDC pl#7 [X1] wire#55
+55, 1, 56          !TDC ROC#2 Sl#11 Ch#55 HDC pl#7 [X1] wire#56
+56, 1, 57          !TDC ROC#2 Sl#11 Ch#56 HDC pl#7 [X1] wire#57
+57, 1, 58          !TDC ROC#2 Sl#11 Ch#57 HDC pl#7 [X1] wire#58
+58, 1, 59          !TDC ROC#2 Sl#11 Ch#58 HDC pl#7 [X1] wire#59
+59, 1, 60          !TDC ROC#2 Sl#11 Ch#59 HDC pl#7 [X1] wire#60
+60, 1, 61          !TDC ROC#2 Sl#11 Ch#60 HDC pl#7 [X1] wire#61
+61, 1, 62          !TDC ROC#2 Sl#11 Ch#61 HDC pl#7 [X1] wire#62
+62, 1, 63          !TDC ROC#2 Sl#11 Ch#62 HDC pl#7 [X1] wire#63
+63, 1, 64          !TDC ROC#2 Sl#11 Ch#63 HDC pl#7 [X1] wire#64
+64, 1, 65          !TDC ROC#2 Sl#11 Ch#64 HDC pl#7 [X1] wire#65
+65, 1, 66          !TDC ROC#2 Sl#11 Ch#65 HDC pl#7 [X1] wire#66
+66, 1, 67          !TDC ROC#2 Sl#11 Ch#66 HDC pl#7 [X1] wire#67
+67, 1, 68          !TDC ROC#2 Sl#11 Ch#67 HDC pl#7 [X1] wire#68
+68, 1, 69          !TDC ROC#2 Sl#11 Ch#68 HDC pl#7 [X1] wire#69
+69, 1, 70          !TDC ROC#2 Sl#11 Ch#69 HDC pl#7 [X1] wire#70
+70, 1, 71          !TDC ROC#2 Sl#11 Ch#70 HDC pl#7 [X1] wire#71
+71, 1, 72          !TDC ROC#2 Sl#11 Ch#71 HDC pl#7 [X1] wire#72
+72, 1, 73          !TDC ROC#2 Sl#11 Ch#72 HDC pl#7 [X1] wire#73
+73, 1, 74          !TDC ROC#2 Sl#11 Ch#73 HDC pl#7 [X1] wire#74
+74, 1, 75          !TDC ROC#2 Sl#11 Ch#74 HDC pl#7 [X1] wire#75
+75, 1, 76          !TDC ROC#2 Sl#11 Ch#75 HDC pl#7 [X1] wire#76
+76, 1, 77          !TDC ROC#2 Sl#11 Ch#76 HDC pl#7 [X1] wire#77
+77, 1, 78          !TDC ROC#2 Sl#11 Ch#77 HDC pl#7 [X1] wire#78
+78, 1, 79          !TDC ROC#2 Sl#11 Ch#78 HDC pl#7 [X1] wire#79
+79, 1, 80          !TDC ROC#2 Sl#11 Ch#79 HDC pl#7 [X1] wire#80
+80, 1, 81          !TDC ROC#2 Sl#11 Ch#80 HDC pl#7 [X1] wire#81
+81, 1, 82          !TDC ROC#2 Sl#11 Ch#81 HDC pl#7 [X1] wire#82
+82, 1, 83          !TDC ROC#2 Sl#11 Ch#82 HDC pl#7 [X1] wire#83
+83, 1, 84          !TDC ROC#2 Sl#11 Ch#83 HDC pl#7 [X1] wire#84
+84, 1, 85          !TDC ROC#2 Sl#11 Ch#84 HDC pl#7 [X1] wire#85
+85, 1, 86          !TDC ROC#2 Sl#11 Ch#85 HDC pl#7 [X1] wire#86
+86, 1, 87          !TDC ROC#2 Sl#11 Ch#86 HDC pl#7 [X1] wire#87
+87, 1, 88          !TDC ROC#2 Sl#11 Ch#87 HDC pl#7 [X1] wire#88
+88, 1, 89          !TDC ROC#2 Sl#11 Ch#88 HDC pl#7 [X1] wire#89
+89, 1, 90          !TDC ROC#2 Sl#11 Ch#89 HDC pl#7 [X1] wire#90
+90, 1, 91          !TDC ROC#2 Sl#11 Ch#90 HDC pl#7 [X1] wire#91
+91, 1, 92          !TDC ROC#2 Sl#11 Ch#91 HDC pl#7 [X1] wire#92
+92, 1, 93          !TDC ROC#2 Sl#11 Ch#92 HDC pl#7 [X1] wire#93
+93, 1, 94          !TDC ROC#2 Sl#11 Ch#93 HDC pl#7 [X1] wire#94
+94, 1, 95          !TDC ROC#2 Sl#11 Ch#94 HDC pl#7 [X1] wire#95
+95, 1, 96          !TDC ROC#2 Sl#11 Ch#95 HDC pl#7 [X1] wire#96
+Slot= 16
+0, 1, 97           !TDC ROC#2 Sl#12 Ch#0 HDC pl#7 [X1] wire#97
+1, 1, 98           !TDC ROC#2 Sl#12 Ch#1 HDC pl#7 [X1] wire#98
+2, 1, 99           !TDC ROC#2 Sl#12 Ch#2 HDC pl#7 [X1] wire#99
+3, 1, 100          !TDC ROC#2 Sl#12 Ch#3 HDC pl#7 [X1] wire#100
+4, 1, 101          !TDC ROC#2 Sl#12 Ch#4 HDC pl#7 [X1] wire#101
+5, 1, 102          !TDC ROC#2 Sl#12 Ch#5 HDC pl#7 [X1] wire#102
+6, 1, 103          !TDC ROC#2 Sl#12 Ch#6 HDC pl#7 [X1] wire#103
+7, 1, 104          !TDC ROC#2 Sl#12 Ch#7 HDC pl#7 [X1] wire#104
+8, 1, 105          !TDC ROC#2 Sl#12 Ch#8 HDC pl#7 [X1] wire#105
+9, 1, 106          !TDC ROC#2 Sl#12 Ch#9 HDC pl#7 [X1] wire#106
+10, 1, 107         !TDC ROC#2 Sl#12 Ch#10 HDC pl#7 [X1] wire#107
+11, 1, 108         !TDC ROC#2 Sl#12 Ch#11 HDC pl#7 [X1] wire#108
+12, 1, 109         !TDC ROC#2 Sl#12 Ch#12 HDC pl#7 [X1] wire#109
+13, 1, 110         !TDC ROC#2 Sl#12 Ch#13 HDC pl#7 [X1] wire#110
+14, 1, 111         !TDC ROC#2 Sl#12 Ch#14 HDC pl#7 [X1] wire#111
+15, 1, 112         !TDC ROC#2 Sl#12 Ch#15 HDC pl#7 [X1] wire#112
+16, 2, 1           !TDC ROC#2 Sl#12 Ch#16 HDC pl#8 [Y1] wire#1
+17, 2, 2           !TDC ROC#2 Sl#12 Ch#17 HDC pl#8 [Y1] wire#2
+18, 2, 3           !TDC ROC#2 Sl#12 Ch#18 HDC pl#8 [Y1] wire#3
+19, 2, 4           !TDC ROC#2 Sl#12 Ch#19 HDC pl#8 [Y1] wire#4
+20, 2, 5           !TDC ROC#2 Sl#12 Ch#20 HDC pl#8 [Y1] wire#5
+21, 2, 6           !TDC ROC#2 Sl#12 Ch#21 HDC pl#8 [Y1] wire#6
+22, 2, 7           !TDC ROC#2 Sl#12 Ch#22 HDC pl#8 [Y1] wire#7
+23, 2, 8           !TDC ROC#2 Sl#12 Ch#23 HDC pl#8 [Y1] wire#8
+24, 2, 9           !TDC ROC#2 Sl#12 Ch#24 HDC pl#8 [Y1] wire#9
+25, 2, 10          !TDC ROC#2 Sl#12 Ch#25 HDC pl#8 [Y1] wire#10
+26, 2, 11          !TDC ROC#2 Sl#12 Ch#26 HDC pl#8 [Y1] wire#11
+27, 2, 12          !TDC ROC#2 Sl#12 Ch#27 HDC pl#8 [Y1] wire#12
+28, 2, 13          !TDC ROC#2 Sl#12 Ch#28 HDC pl#8 [Y1] wire#13
+! 29  !TDC ROC#2 Sl#12 Ch#29 unused
+! 30  !TDC ROC#2 Sl#12 Ch#30 unused
+! 31  !TDC ROC#2 Sl#12 Ch#31 unused
+32, 2, 14          !TDC ROC#2 Sl#12 Ch#32 HDC pl#8 [Y1] wire#14
+33, 2, 15          !TDC ROC#2 Sl#12 Ch#33 HDC pl#8 [Y1] wire#15
+34, 2, 16          !TDC ROC#2 Sl#12 Ch#34 HDC pl#8 [Y1] wire#16
+35, 2, 17          !TDC ROC#2 Sl#12 Ch#35 HDC pl#8 [Y1] wire#17
+36, 2, 18          !TDC ROC#2 Sl#12 Ch#36 HDC pl#8 [Y1] wire#18
+37, 2, 19          !TDC ROC#2 Sl#12 Ch#37 HDC pl#8 [Y1] wire#19
+38, 2, 20          !TDC ROC#2 Sl#12 Ch#38 HDC pl#8 [Y1] wire#20
+39, 2, 21          !TDC ROC#2 Sl#12 Ch#39 HDC pl#8 [Y1] wire#21
+40, 2, 22          !TDC ROC#2 Sl#12 Ch#40 HDC pl#8 [Y1] wire#22
+41, 2, 23          !TDC ROC#2 Sl#12 Ch#41 HDC pl#8 [Y1] wire#23
+42, 2, 24          !TDC ROC#2 Sl#12 Ch#42 HDC pl#8 [Y1] wire#24
+43, 2, 25          !TDC ROC#2 Sl#12 Ch#43 HDC pl#8 [Y1] wire#25
+44, 2, 26          !TDC ROC#2 Sl#12 Ch#44 HDC pl#8 [Y1] wire#26
+! 45 !TDC ROC#2 Sl#12 Ch#45 unused
+! 46 !TDC ROC#2 Sl#12 Ch#46 unused
+! 47 !TDC ROC#2 Sl#12 Ch#47 unused
+48, 2, 27          !TDC ROC#2 Sl#12 Ch#48 HDC pl#8 [Y1] wire#27
+49, 2, 28          !TDC ROC#2 Sl#12 Ch#49 HDC pl#8 [Y1] wire#28
+50, 2, 29          !TDC ROC#2 Sl#12 Ch#50 HDC pl#8 [Y1] wire#29
+51, 2, 30          !TDC ROC#2 Sl#12 Ch#51 HDC pl#8 [Y1] wire#30
+52, 2, 31          !TDC ROC#2 Sl#12 Ch#52 HDC pl#8 [Y1] wire#31
+53, 2, 32          !TDC ROC#2 Sl#12 Ch#53 HDC pl#8 [Y1] wire#32
+54, 2, 33          !TDC ROC#2 Sl#12 Ch#54 HDC pl#8 [Y1] wire#33
+55, 2, 34          !TDC ROC#2 Sl#12 Ch#55 HDC pl#8 [Y1] wire#34
+56, 2, 35          !TDC ROC#2 Sl#12 Ch#56 HDC pl#8 [Y1] wire#35
+57, 2, 36          !TDC ROC#2 Sl#12 Ch#57 HDC pl#8 [Y1] wire#36
+58, 2, 37          !TDC ROC#2 Sl#12 Ch#58 HDC pl#8 [Y1] wire#37
+59, 2, 38          !TDC ROC#2 Sl#12 Ch#59 HDC pl#8 [Y1] wire#38
+60, 2, 39          !TDC ROC#2 Sl#12 Ch#60 HDC pl#8 [Y1] wire#39
+! 61 !TDC ROC#2 Sl#12 Ch#61 unused
+! 62 !TDC ROC#2 Sl#12 Ch#62 unused
+! 63 !TDC ROC#2 Sl#12 Ch#63 unused
+64, 2, 40          !TDC ROC#2 Sl#12 Ch#64 HDC pl#8 [Y1] wire#40
+65, 2, 41          !TDC ROC#2 Sl#12 Ch#65 HDC pl#8 [Y1] wire#41
+66, 2, 42          !TDC ROC#2 Sl#12 Ch#66 HDC pl#8 [Y1] wire#42
+67, 2, 43          !TDC ROC#2 Sl#12 Ch#67 HDC pl#8 [Y1] wire#43
+68, 2, 44          !TDC ROC#2 Sl#12 Ch#68 HDC pl#8 [Y1] wire#44
+69, 2, 45          !TDC ROC#2 Sl#12 Ch#69 HDC pl#8 [Y1] wire#45
+70, 2, 46          !TDC ROC#2 Sl#12 Ch#70 HDC pl#8 [Y1] wire#46
+71, 2, 47          !TDC ROC#2 Sl#12 Ch#71 HDC pl#8 [Y1] wire#47
+72, 2, 48          !TDC ROC#2 Sl#12 Ch#72 HDC pl#8 [Y1] wire#48
+73, 2, 49          !TDC ROC#2 Sl#12 Ch#73 HDC pl#8 [Y1] wire#49
+74, 2, 50          !TDC ROC#2 Sl#12 Ch#74 HDC pl#8 [Y1] wire#50
+75, 2, 51          !TDC ROC#2 Sl#12 Ch#75 HDC pl#8 [Y1] wire#51
+76, 2, 52          !TDC ROC#2 Sl#12 Ch#76 HDC pl#8 [Y1] wire#52
+! 77 !TDC ROC#2 Sl#12 Ch#77 unused
+! 78 !TDC ROC#2 Sl#12 Ch#78 unused
+! 79 !TDC ROC#2 Sl#12 Ch#79 unused
+80, 1, 113         !TDC ROC#2 Sl#12 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#12 Ch#81 unused
+82, 3, 1           !TDC ROC#2 Sl#12 Ch#82 HDC pl#9 [U] wire#1
+83, 3, 2           !TDC ROC#2 Sl#12 Ch#83 HDC pl#9 [U] wire#2
+84, 3, 3           !TDC ROC#2 Sl#12 Ch#84 HDC pl#9 [U] wire#3
+85, 3, 4           !TDC ROC#2 Sl#12 Ch#85 HDC pl#9 [U] wire#4
+86, 3, 5           !TDC ROC#2 Sl#12 Ch#86 HDC pl#9 [U] wire#5
+87, 3, 6           !TDC ROC#2 Sl#12 Ch#87 HDC pl#9 [U] wire#6
+88, 3, 7           !TDC ROC#2 Sl#12 Ch#88 HDC pl#9 [U] wire#7
+89, 3, 8           !TDC ROC#2 Sl#12 Ch#89 HDC pl#9 [U] wire#8
+90, 3, 9           !TDC ROC#2 Sl#12 Ch#90 HDC pl#9 [U] wire#9
+91, 3, 10          !TDC ROC#2 Sl#12 Ch#91 HDC pl#9 [U] wire#10
+92, 3, 11          !TDC ROC#2 Sl#12 Ch#92 HDC pl#9 [U] wire#11
+93, 3, 12          !TDC ROC#2 Sl#12 Ch#93 HDC pl#9 [U] wire#12
+94, 3, 13          !TDC ROC#2 Sl#12 Ch#94 HDC pl#9 [U] wire#13
+95, 3, 14          !TDC ROC#2 Sl#12 Ch#95 HDC pl#9 [U] wire#14
+Slot= 18
+0, 3, 15           !TDC ROC#2 Sl#14 Ch#0 HDC pl#9 [U] wire#15
+1, 3, 16           !TDC ROC#2 Sl#14 Ch#1 HDC pl#9 [U] wire#16
+2, 3, 17           !TDC ROC#2 Sl#14 Ch#2 HDC pl#9 [U] wire#17
+3, 3, 18           !TDC ROC#2 Sl#14 Ch#3 HDC pl#9 [U] wire#18
+4, 3, 19           !TDC ROC#2 Sl#14 Ch#4 HDC pl#9 [U] wire#19
+5, 3, 20           !TDC ROC#2 Sl#14 Ch#5 HDC pl#9 [U] wire#20
+6, 3, 21           !TDC ROC#2 Sl#14 Ch#6 HDC pl#9 [U] wire#21
+7, 3, 22           !TDC ROC#2 Sl#14 Ch#7 HDC pl#9 [U] wire#22
+8, 3, 23           !TDC ROC#2 Sl#14 Ch#8 HDC pl#9 [U] wire#23
+9, 3, 24           !TDC ROC#2 Sl#14 Ch#9 HDC pl#9 [U] wire#24
+10, 3, 25          !TDC ROC#2 Sl#14 Ch#10 HDC pl#9 [U] wire#25
+11, 3, 26          !TDC ROC#2 Sl#14 Ch#11 HDC pl#9 [U] wire#26
+12, 3, 27          !TDC ROC#2 Sl#14 Ch#12 HDC pl#9 [U] wire#27
+13, 3, 28          !TDC ROC#2 Sl#14 Ch#13 HDC pl#9 [U] wire#28
+14, 3, 29          !TDC ROC#2 Sl#14 Ch#14 HDC pl#9 [U] wire#29
+! 15 !TDC ROC#2 Sl#14 Ch#15 unused
+16, 3, 30          !TDC ROC#2 Sl#14 Ch#16 HDC pl#9 [U] wire#30
+17, 3, 31          !TDC ROC#2 Sl#14 Ch#17 HDC pl#9 [U] wire#31
+18, 3, 32          !TDC ROC#2 Sl#14 Ch#18 HDC pl#9 [U] wire#32
+19, 3, 33          !TDC ROC#2 Sl#14 Ch#19 HDC pl#9 [U] wire#33
+20, 3, 34          !TDC ROC#2 Sl#14 Ch#20 HDC pl#9 [U] wire#34
+21, 3, 35          !TDC ROC#2 Sl#14 Ch#21 HDC pl#9 [U] wire#35
+22, 3, 36          !TDC ROC#2 Sl#14 Ch#22 HDC pl#9 [U] wire#36
+23, 3, 37          !TDC ROC#2 Sl#14 Ch#23 HDC pl#9 [U] wire#37
+24, 3, 38          !TDC ROC#2 Sl#14 Ch#24 HDC pl#9 [U] wire#38
+25, 3, 39          !TDC ROC#2 Sl#14 Ch#25 HDC pl#9 [U] wire#39
+26, 3, 40          !TDC ROC#2 Sl#14 Ch#26 HDC pl#9 [U] wire#40
+27, 3, 41          !TDC ROC#2 Sl#14 Ch#27 HDC pl#9 [U] wire#41
+28, 3, 42          !TDC ROC#2 Sl#14 Ch#28 HDC pl#9 [U] wire#42
+29, 3, 43          !TDC ROC#2 Sl#14 Ch#29 HDC pl#9 [U] wire#43
+30, 3, 44          !TDC ROC#2 Sl#14 Ch#30 HDC pl#9 [U] wire#44
+31, 3, 45          !TDC ROC#2 Sl#14 Ch#31 HDC pl#9 [U] wire#45
+32, 3, 46          !TDC ROC#2 Sl#14 Ch#32 HDC pl#9 [U] wire#46
+33, 3, 47          !TDC ROC#2 Sl#14 Ch#33 HDC pl#9 [U] wire#47
+34, 3, 48          !TDC ROC#2 Sl#14 Ch#34 HDC pl#9 [U] wire#48
+35, 3, 49          !TDC ROC#2 Sl#14 Ch#35 HDC pl#9 [U] wire#49
+36, 3, 50          !TDC ROC#2 Sl#14 Ch#36 HDC pl#9 [U] wire#50
+37, 3, 51          !TDC ROC#2 Sl#14 Ch#37 HDC pl#9 [U] wire#51
+38, 3, 52          !TDC ROC#2 Sl#14 Ch#38 HDC pl#9 [U] wire#52
+39, 3, 53          !TDC ROC#2 Sl#14 Ch#39 HDC pl#9 [U] wire#53
+40, 3, 54          !TDC ROC#2 Sl#14 Ch#40 HDC pl#9 [U] wire#54
+41, 3, 55          !TDC ROC#2 Sl#14 Ch#41 HDC pl#9 [U] wire#55
+42, 3, 56          !TDC ROC#2 Sl#14 Ch#42 HDC pl#9 [U] wire#56
+43, 3, 57          !TDC ROC#2 Sl#14 Ch#43 HDC pl#9 [U] wire#57
+44, 3, 58          !TDC ROC#2 Sl#14 Ch#44 HDC pl#9 [U] wire#58
+45, 3, 59          !TDC ROC#2 Sl#14 Ch#45 HDC pl#9 [U] wire#59
+46, 3, 60          !TDC ROC#2 Sl#14 Ch#46 HDC pl#9 [U] wire#60
+! 47 !TDC ROC#2 Sl#14 Ch#47 unused
+48, 3, 61          !TDC ROC#2 Sl#14 Ch#48 HDC pl#9 [U] wire#61
+49, 3, 62          !TDC ROC#2 Sl#14 Ch#49 HDC pl#9 [U] wire#62
+50, 3, 63          !TDC ROC#2 Sl#14 Ch#50 HDC pl#9 [U] wire#63
+51, 3, 64          !TDC ROC#2 Sl#14 Ch#51 HDC pl#9 [U] wire#64
+52, 3, 65          !TDC ROC#2 Sl#14 Ch#52 HDC pl#9 [U] wire#65
+53, 3, 66          !TDC ROC#2 Sl#14 Ch#53 HDC pl#9 [U] wire#66
+54, 3, 67          !TDC ROC#2 Sl#14 Ch#54 HDC pl#9 [U] wire#67
+55, 3, 68          !TDC ROC#2 Sl#14 Ch#55 HDC pl#9 [U] wire#68
+56, 3, 69          !TDC ROC#2 Sl#14 Ch#56 HDC pl#9 [U] wire#69
+57, 3, 70          !TDC ROC#2 Sl#14 Ch#57 HDC pl#9 [U] wire#70
+58, 3, 71          !TDC ROC#2 Sl#14 Ch#58 HDC pl#9 [U] wire#71
+59, 3, 72          !TDC ROC#2 Sl#14 Ch#59 HDC pl#9 [U] wire#72
+60, 3, 73          !TDC ROC#2 Sl#14 Ch#60 HDC pl#9 [U] wire#73
+61, 3, 74          !TDC ROC#2 Sl#14 Ch#61 HDC pl#9 [U] wire#74
+62, 3, 75          !TDC ROC#2 Sl#14 Ch#62 HDC pl#9 [U] wire#75
+63, 3, 76          !TDC ROC#2 Sl#14 Ch#63 HDC pl#9 [U] wire#76
+64, 3, 77          !TDC ROC#2 Sl#14 Ch#64 HDC pl#9 [U] wire#77
+65, 3, 78          !TDC ROC#2 Sl#14 Ch#65 HDC pl#9 [U] wire#78
+66, 3, 79          !TDC ROC#2 Sl#14 Ch#66 HDC pl#9 [U] wire#79
+67, 3, 80          !TDC ROC#2 Sl#14 Ch#67 HDC pl#9 [U] wire#80
+68, 3, 81          !TDC ROC#2 Sl#14 Ch#68 HDC pl#9 [U] wire#81
+69, 3, 82          !TDC ROC#2 Sl#14 Ch#69 HDC pl#9 [U] wire#82
+70, 3, 83          !TDC ROC#2 Sl#14 Ch#70 HDC pl#9 [U] wire#83
+71, 3, 84          !TDC ROC#2 Sl#14 Ch#71 HDC pl#9 [U] wire#84
+72, 3, 85          !TDC ROC#2 Sl#14 Ch#72 HDC pl#9 [U] wire#85
+73, 3, 86          !TDC ROC#2 Sl#14 Ch#73 HDC pl#9 [U] wire#86
+74, 3, 87          !TDC ROC#2 Sl#14 Ch#74 HDC pl#9 [U] wire#87
+75, 3, 88          !TDC ROC#2 Sl#14 Ch#75 HDC pl#9 [U] wire#88
+76, 3, 89          !TDC ROC#2 Sl#14 Ch#76 HDC pl#9 [U] wire#89
+77, 3, 90          !TDC ROC#2 Sl#14 Ch#77 HDC pl#9 [U] wire#90
+78, 3, 91          !TDC ROC#2 Sl#14 Ch#78 HDC pl#9 [U] wire#91
+!79, !unused
+80, 3, 92          !TDC ROC#2 Sl#14 Ch#80 HDC pl#9 [U] wire#92
+81, 3, 93          !TDC ROC#2 Sl#14 Ch#81 HDC pl#9 [U] wire#93
+82, 3, 94          !TDC ROC#2 Sl#14 Ch#82 HDC pl#9 [U] wire#94
+83, 3, 95          !TDC ROC#2 Sl#14 Ch#83 HDC pl#9 [U] wire#95
+84, 3, 96          !TDC ROC#2 Sl#14 Ch#84 HDC pl#9 [U] wire#96
+85, 3, 97          !TDC ROC#2 Sl#14 Ch#85 HDC pl#9 [U] wire#97
+86, 3, 98          !TDC ROC#2 Sl#14 Ch#86 HDC pl#9 [U] wire#98
+87, 3, 99          !TDC ROC#2 Sl#14 Ch#87 HDC pl#9 [U] wire#99
+88, 3, 100         !TDC ROC#2 Sl#14 Ch#88 HDC pl#9 [U] wire#100
+89, 3, 101         !TDC ROC#2 Sl#14 Ch#89 HDC pl#9 [U] wire#101
+90, 3, 102         !TDC ROC#2 Sl#14 Ch#90 HDC pl#9 [U] wire#102
+91, 3, 103         !TDC ROC#2 Sl#14 Ch#91 HDC pl#9 [U] wire#103
+92, 3, 104         !TDC ROC#2 Sl#14 Ch#92 HDC pl#9 [U] wire#104
+93, 3, 105         !TDC ROC#2 Sl#14 Ch#93 HDC pl#9 [U] wire#105
+94, 3, 106         !TDC ROC#2 Sl#14 Ch#94 HDC pl#9 [U] wire#106
+95, 3, 107         !TDC ROC#2 Sl#14 Ch#95 HDC pl#9 [U] wire#107
+Slot= 19
+0, 6, 113           !TDC ROC#2 Sl#15 Ch#0 HDC pl#12 [X2] wire#113
+!1,  !unused
+2, 4, 1           !TDC ROC#2 Sl#15 Ch#2 HDC pl#10 [V] wire#1
+3, 4, 2           !TDC ROC#2 Sl#15 Ch#3 HDC pl#10 [V] wire#2
+4, 4, 3           !TDC ROC#2 Sl#15 Ch#4 HDC pl#10 [V] wire#3
+5, 4, 4           !TDC ROC#2 Sl#15 Ch#5 HDC pl#10 [V] wire#4
+6, 4, 5           !TDC ROC#2 Sl#15 Ch#6 HDC pl#10 [V] wire#5
+7, 4, 6           !TDC ROC#2 Sl#15 Ch#7 HDC pl#10 [V] wire#6
+8, 4, 7           !TDC ROC#2 Sl#15 Ch#8 HDC pl#10 [V] wire#7
+9, 4, 8          !TDC ROC#2 Sl#15 Ch#9 HDC pl#10 [V] wire#8
+10, 4, 9          !TDC ROC#2 Sl#15 Ch#10 HDC pl#10 [V] wire#9
+11, 4, 10          !TDC ROC#2 Sl#15 Ch#11 HDC pl#10 [V] wire#10
+12, 4, 11          !TDC ROC#2 Sl#15 Ch#12 HDC pl#10 [V] wire#11
+13, 4, 12          !TDC ROC#2 Sl#15 Ch#13 HDC pl#10 [V] wire#12
+14, 4, 13          !TDC ROC#2 Sl#15 Ch#14 HDC pl#10 [V] wire#13
+15, 4, 14          !TDC ROC#2 Sl#15 Ch#15 HDC pl#10 [V] wire#14
+16, 4, 15          !TDC ROC#2 Sl#15 Ch#16 HDC pl#10 [V] wire#15
+17, 4, 16          !TDC ROC#2 Sl#15 Ch#17 HDC pl#10 [V] wire#16
+18, 4, 17          !TDC ROC#2 Sl#15 Ch#18 HDC pl#10 [V] wire#17
+19, 4, 18          !TDC ROC#2 Sl#15 Ch#19 HDC pl#10 [V] wire#18
+20, 4, 19          !TDC ROC#2 Sl#15 Ch#20 HDC pl#10 [V] wire#19
+21, 4, 20          !TDC ROC#2 Sl#15 Ch#21 HDC pl#10 [V] wire#20
+22, 4, 21          !TDC ROC#2 Sl#15 Ch#22 HDC pl#10 [V] wire#21
+23, 4, 22          !TDC ROC#2 Sl#15 Ch#23 HDC pl#10 [V] wire#22
+24, 4, 23          !TDC ROC#2 Sl#15 Ch#24 HDC pl#10 [V] wire#23
+25, 4, 24          !TDC ROC#2 Sl#15 Ch#25 HDC pl#10 [V] wire#24
+26, 4, 25          !TDC ROC#2 Sl#15 Ch#26 HDC pl#10 [V] wire#25
+27, 4, 26          !TDC ROC#2 Sl#15 Ch#27 HDC pl#10 [V] wire#26
+28, 4, 27          !TDC ROC#2 Sl#15 Ch#28 HDC pl#10 [V] wire#27
+29, 4, 28          !TDC ROC#2 Sl#15 Ch#29 HDC pl#10 [V] wire#28
+30, 4, 29          !TDC ROC#2 Sl#15 Ch#30 HDC pl#10 [V] wire#29
+! 31 !TDC ROC#2 Sl#15 Ch#31 unused
+32, 4, 30          !TDC ROC#2 Sl#15 Ch#32 HDC pl#10 [V] wire#30
+33, 4, 31          !TDC ROC#2 Sl#15 Ch#33 HDC pl#10 [V] wire#31
+34, 4, 32          !TDC ROC#2 Sl#15 Ch#34 HDC pl#10 [V] wire#32
+35, 4, 33          !TDC ROC#2 Sl#15 Ch#35 HDC pl#10 [V] wire#33
+36, 4, 34          !TDC ROC#2 Sl#15 Ch#36 HDC pl#10 [V] wire#34
+37, 4, 35          !TDC ROC#2 Sl#15 Ch#37 HDC pl#10 [V] wire#35
+38, 4, 36          !TDC ROC#2 Sl#15 Ch#38 HDC pl#10 [V] wire#36
+39, 4, 37          !TDC ROC#2 Sl#15 Ch#39 HDC pl#10 [V] wire#37
+40, 4, 38          !TDC ROC#2 Sl#15 Ch#40 HDC pl#10 [V] wire#38
+41, 4, 39          !TDC ROC#2 Sl#15 Ch#41 HDC pl#10 [V] wire#39
+42, 4, 40          !TDC ROC#2 Sl#15 Ch#42 HDC pl#10 [V] wire#40
+43, 4, 41          !TDC ROC#2 Sl#15 Ch#43 HDC pl#10 [V] wire#41
+44, 4, 42          !TDC ROC#2 Sl#15 Ch#44 HDC pl#10 [V] wire#42
+45, 4, 43          !TDC ROC#2 Sl#15 Ch#45 HDC pl#10 [V] wire#43
+46, 4, 44          !TDC ROC#2 Sl#15 Ch#46 HDC pl#10 [V] wire#44
+47, 4, 45          !TDC ROC#2 Sl#15 Ch#47 HDC pl#10 [V] wire#45
+48, 4, 46          !TDC ROC#2 Sl#15 Ch#48 HDC pl#10 [V] wire#46
+49, 4, 47          !TDC ROC#2 Sl#15 Ch#49 HDC pl#10 [V] wire#47
+50, 4, 48          !TDC ROC#2 Sl#15 Ch#50 HDC pl#10 [V] wire#48
+51, 4, 49          !TDC ROC#2 Sl#15 Ch#51 HDC pl#10 [V] wire#49
+52, 4, 50          !TDC ROC#2 Sl#15 Ch#52 HDC pl#10 [V] wire#50
+53, 4, 51          !TDC ROC#2 Sl#15 Ch#53 HDC pl#10 [V] wire#51
+54, 4, 52          !TDC ROC#2 Sl#15 Ch#54 HDC pl#10 [V] wire#52
+55, 4, 53          !TDC ROC#2 Sl#15 Ch#55 HDC pl#10 [V] wire#53
+56, 4, 54          !TDC ROC#2 Sl#15 Ch#56 HDC pl#10 [V] wire#54
+57, 4, 55          !TDC ROC#2 Sl#15 Ch#57 HDC pl#10 [V] wire#55
+58, 4, 56          !TDC ROC#2 Sl#15 Ch#58 HDC pl#10 [V] wire#56
+59, 4, 57          !TDC ROC#2 Sl#15 Ch#59 HDC pl#10 [V] wire#57
+60, 4, 58          !TDC ROC#2 Sl#15 Ch#60 HDC pl#10 [V] wire#58
+61, 4, 59          !TDC ROC#2 Sl#15 Ch#61 HDC pl#10 [V] wire#59
+62, 4, 60          !TDC ROC#2 Sl#15 Ch#62 HDC pl#10 [V] wire#60
+! 63 !TDC ROC#2 Sl#15 Ch#63 unused
+64, 4, 61          !TDC ROC#2 Sl#15 Ch#64 HDC pl#10 [V] wire#61
+65, 4, 62          !TDC ROC#2 Sl#15 Ch#65 HDC pl#10 [V] wire#62
+66, 4, 63          !TDC ROC#2 Sl#15 Ch#66 HDC pl#10 [V] wire#63
+67, 4, 64          !TDC ROC#2 Sl#15 Ch#67 HDC pl#10 [V] wire#64
+68, 4, 65          !TDC ROC#2 Sl#15 Ch#68 HDC pl#10 [V] wire#65
+69, 4, 66          !TDC ROC#2 Sl#15 Ch#69 HDC pl#10 [V] wire#66
+70, 4, 67          !TDC ROC#2 Sl#15 Ch#70 HDC pl#10 [V] wire#67
+71, 4, 68          !TDC ROC#2 Sl#15 Ch#71 HDC pl#10 [V] wire#68
+72, 4, 69          !TDC ROC#2 Sl#15 Ch#72 HDC pl#10 [V] wire#69
+73, 4, 70          !TDC ROC#2 Sl#15 Ch#73 HDC pl#10 [V] wire#70
+74, 4, 71          !TDC ROC#2 Sl#15 Ch#74 HDC pl#10 [V] wire#71
+75, 4, 72          !TDC ROC#2 Sl#15 Ch#75 HDC pl#10 [V] wire#72
+76, 4, 73          !TDC ROC#2 Sl#15 Ch#76 HDC pl#10 [V] wire#73
+77, 4, 74          !TDC ROC#2 Sl#15 Ch#77 HDC pl#10 [V] wire#74
+78, 4, 75          !TDC ROC#2 Sl#15 Ch#78 HDC pl#10 [V] wire#75
+79, 4, 76          !TDC ROC#2 Sl#15 Ch#79 HDC pl#10 [V] wire#76
+80, 4, 77          !TDC ROC#2 Sl#15 Ch#80 HDC pl#10 [V] wire#77
+81, 4, 78          !TDC ROC#2 Sl#15 Ch#81 HDC pl#10 [V] wire#78
+82, 4, 79          !TDC ROC#2 Sl#15 Ch#82 HDC pl#10 [V] wire#79
+83, 4, 80          !TDC ROC#2 Sl#15 Ch#83 HDC pl#10 [V] wire#80
+84, 4, 81          !TDC ROC#2 Sl#15 Ch#84 HDC pl#10 [V] wire#81
+85, 4, 82          !TDC ROC#2 Sl#15 Ch#85 HDC pl#10 [V] wire#82
+86, 4, 83          !TDC ROC#2 Sl#15 Ch#86 HDC pl#10 [V] wire#83
+87, 4, 84          !TDC ROC#2 Sl#15 Ch#87 HDC pl#10 [V] wire#84
+88, 4, 85          !TDC ROC#2 Sl#15 Ch#88 HDC pl#10 [V] wire#85
+89, 4, 86          !TDC ROC#2 Sl#15 Ch#89 HDC pl#10 [V] wire#86
+90, 4, 87          !TDC ROC#2 Sl#15 Ch#90 HDC pl#10 [V] wire#87
+91, 4, 88          !TDC ROC#2 Sl#15 Ch#91 HDC pl#10 [V] wire#88
+92, 4, 89          !TDC ROC#2 Sl#15 Ch#92 HDC pl#10 [V] wire#89
+93, 4, 90          !TDC ROC#2 Sl#15 Ch#93 HDC pl#10 [V] wire#90
+94, 4, 91          !TDC ROC#2 Sl#15 Ch#94 HDC pl#10 [V] wire#91
+! 95 !TDC ROC#2 Sl#15 Ch#95 unused
+Slot= 21
+0, 4, 92           !TDC ROC#2 Sl#17 Ch#0 HDC pl#10 [V] wire#92
+1, 4, 93           !TDC ROC#2 Sl#17 Ch#1 HDC pl#10 [V] wire#93
+2, 4, 94           !TDC ROC#2 Sl#17 Ch#2 HDC pl#10 [V] wire#94
+3, 4, 95           !TDC ROC#2 Sl#17 Ch#3 HDC pl#10 [V] wire#95
+4, 4, 96           !TDC ROC#2 Sl#17 Ch#4 HDC pl#10 [V] wire#96
+5, 4, 97           !TDC ROC#2 Sl#17 Ch#5 HDC pl#10 [V] wire#97
+6, 4, 98           !TDC ROC#2 Sl#17 Ch#6 HDC pl#10 [V] wire#98
+7, 4, 99           !TDC ROC#2 Sl#17 Ch#7 HDC pl#10 [V] wire#99
+8, 4, 100          !TDC ROC#2 Sl#17 Ch#8 HDC pl#10 [V] wire#100
+9, 4, 101          !TDC ROC#2 Sl#17 Ch#9 HDC pl#10 [V] wire#101
+10, 4, 102         !TDC ROC#2 Sl#17 Ch#10 HDC pl#10 [V] wire#102
+11, 4, 103         !TDC ROC#2 Sl#17 Ch#11 HDC pl#10 [V] wire#103
+12, 4, 104         !TDC ROC#2 Sl#17 Ch#12 HDC pl#10 [V] wire#104
+13, 4, 105         !TDC ROC#2 Sl#17 Ch#13 HDC pl#10 [V] wire#105
+14, 4, 106         !TDC ROC#2 Sl#17 Ch#14 HDC pl#10 [V] wire#106
+15, 4, 107         !TDC ROC#2 Sl#17 Ch#15 HDC pl#10 [V] wire#107
+16, 5, 1           !TDC ROC#2 Sl#17 Ch#16 HDC pl#11 [Y2] wire#1
+17, 5, 2           !TDC ROC#2 Sl#17 Ch#17 HDC pl#11 [Y2] wire#2
+18, 5, 3           !TDC ROC#2 Sl#17 Ch#18 HDC pl#11 [Y2] wire#3
+19, 5, 4           !TDC ROC#2 Sl#17 Ch#19 HDC pl#11 [Y2] wire#4
+20, 5, 5           !TDC ROC#2 Sl#17 Ch#20 HDC pl#11 [Y2] wire#5
+21, 5, 6           !TDC ROC#2 Sl#17 Ch#21 HDC pl#11 [Y2] wire#6
+22, 5, 7           !TDC ROC#2 Sl#17 Ch#22 HDC pl#11 [Y2] wire#7
+23, 5, 8           !TDC ROC#2 Sl#17 Ch#23 HDC pl#11 [Y2] wire#8
+24, 5, 9           !TDC ROC#2 Sl#17 Ch#24 HDC pl#11 [Y2] wire#9
+25, 5, 10          !TDC ROC#2 Sl#17 Ch#25 HDC pl#11 [Y2] wire#10
+26, 5, 11          !TDC ROC#2 Sl#17 Ch#26 HDC pl#11 [Y2] wire#11
+27, 5, 12          !TDC ROC#2 Sl#17 Ch#27 HDC pl#11 [Y2] wire#12
+28, 5, 13          !TDC ROC#2 Sl#17 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#17 Ch#29 unused
+! 30 !TDC ROC#2 Sl#17 Ch#30 unused
+! 31 !TDC ROC#2 Sl#17 Ch#31 unused
+32, 5, 14          !TDC ROC#2 Sl#17 Ch#32 HDC pl#11 [Y2] wire#14
+33, 5, 15          !TDC ROC#2 Sl#17 Ch#33 HDC pl#11 [Y2] wire#15
+34, 5, 16          !TDC ROC#2 Sl#17 Ch#34 HDC pl#11 [Y2] wire#16
+35, 5, 17          !TDC ROC#2 Sl#17 Ch#35 HDC pl#11 [Y2] wire#17
+36, 5, 18          !TDC ROC#2 Sl#17 Ch#36 HDC pl#11 [Y2] wire#18
+37, 5, 19          !TDC ROC#2 Sl#17 Ch#37 HDC pl#11 [Y2] wire#19
+38, 5, 20          !TDC ROC#2 Sl#17 Ch#38 HDC pl#11 [Y2] wire#20
+39, 5, 21          !TDC ROC#2 Sl#17 Ch#39 HDC pl#11 [Y2] wire#21
+40, 5, 22          !TDC ROC#2 Sl#17 Ch#40 HDC pl#11 [Y2] wire#22
+41, 5, 23          !TDC ROC#2 Sl#17 Ch#41 HDC pl#11 [Y2] wire#23
+42, 5, 24          !TDC ROC#2 Sl#17 Ch#42 HDC pl#11 [Y2] wire#24
+43, 5, 25          !TDC ROC#2 Sl#17 Ch#43 HDC pl#11 [Y2] wire#25
+44, 5, 26          !TDC ROC#2 Sl#17 Ch#44 HDC pl#11 [Y2] wire#26
+! 45 !TDC ROC#2 Sl#17 Ch#45 unused
+! 46 !TDC ROC#2 Sl#17 Ch#46 unused
+! 47 !TDC ROC#2 Sl#17 Ch#47 unused
+48, 5, 27          !TDC ROC#2 Sl#17 Ch#48 HDC pl#11 [Y2] wire#27
+49, 5, 28          !TDC ROC#2 Sl#17 Ch#49 HDC pl#11 [Y2] wire#28
+50, 5, 29          !TDC ROC#2 Sl#17 Ch#50 HDC pl#11 [Y2] wire#29
+51, 5, 30          !TDC ROC#2 Sl#17 Ch#51 HDC pl#11 [Y2] wire#30
+52, 5, 31          !TDC ROC#2 Sl#17 Ch#52 HDC pl#11 [Y2] wire#31
+53, 5, 32          !TDC ROC#2 Sl#17 Ch#53 HDC pl#11 [Y2] wire#32
+54, 5, 33          !TDC ROC#2 Sl#17 Ch#54 HDC pl#11 [Y2] wire#33
+55, 5, 34          !TDC ROC#2 Sl#17 Ch#55 HDC pl#11 [Y2] wire#34
+56, 5, 35          !TDC ROC#2 Sl#17 Ch#56 HDC pl#11 [Y2] wire#35
+57, 5, 36          !TDC ROC#2 Sl#17 Ch#57 HDC pl#11 [Y2] wire#36
+58, 5, 37          !TDC ROC#2 Sl#17 Ch#58 HDC pl#11 [Y2] wire#37
+59, 5, 38          !TDC ROC#2 Sl#17 Ch#59 HDC pl#11 [Y2] wire#38
+60, 5, 39          !TDC ROC#2 Sl#17 Ch#60 HDC pl#11 [Y2] wire#39
+! 61 !TDC ROC#2 Sl#17 Ch#61 unused
+! 62 !TDC ROC#2 Sl#17 Ch#62 unused
+! 63 !TDC ROC#2 Sl#17 Ch#63 unused
+! 64 !TDC ROC#2 Sl#17 Ch#64 unused?????   JV 11/11/97
+65, 5, 40          !TDC ROC#2 Sl#17 Ch#64 HDC pl#11 [Y2] wire#40
+66, 5, 41          !TDC ROC#2 Sl#17 Ch#65 HDC pl#11 [Y2] wire#41
+67, 5, 42          !TDC ROC#2 Sl#17 Ch#66 HDC pl#11 [Y2] wire#42
+68, 5, 43          !TDC ROC#2 Sl#17 Ch#67 HDC pl#11 [Y2] wire#43
+69, 5, 44          !TDC ROC#2 Sl#17 Ch#68 HDC pl#11 [Y2] wire#44
+70, 5, 45          !TDC ROC#2 Sl#17 Ch#69 HDC pl#11 [Y2] wire#45
+71, 5, 46          !TDC ROC#2 Sl#17 Ch#70 HDC pl#11 [Y2] wire#46
+72, 5, 47          !TDC ROC#2 Sl#17 Ch#71 HDC pl#11 [Y2] wire#47
+73, 5, 48          !TDC ROC#2 Sl#17 Ch#72 HDC pl#11 [Y2] wire#48
+74, 5, 49          !TDC ROC#2 Sl#17 Ch#73 HDC pl#11 [Y2] wire#49
+75, 5, 50          !TDC ROC#2 Sl#17 Ch#74 HDC pl#11 [Y2] wire#50
+76, 5, 51          !TDC ROC#2 Sl#17 Ch#75 HDC pl#11 [Y2] wire#51
+77, 5, 52          !TDC ROC#2 Sl#17 Ch#76 HDC pl#11 [Y2] wire#52
+! 77 !TDC ROC#2 Sl#17 Ch#77 unused
+! 78 !TDC ROC#2 Sl#17 Ch#78 unused
+! 79 !TDC ROC#2 Sl#17 Ch#79 unused
+80, 6, 1           !TDC ROC#2 Sl#17 Ch#80 HDC pl#12 [X2] wire#1
+81, 6, 2           !TDC ROC#2 Sl#17 Ch#81 HDC pl#12 [X2] wire#2
+82, 6, 3           !TDC ROC#2 Sl#17 Ch#82 HDC pl#12 [X2] wire#3
+83, 6, 4           !TDC ROC#2 Sl#17 Ch#83 HDC pl#12 [X2] wire#4
+84, 6, 5           !TDC ROC#2 Sl#17 Ch#84 HDC pl#12 [X2] wire#5
+85, 6, 6           !TDC ROC#2 Sl#17 Ch#85 HDC pl#12 [X2] wire#6
+86, 6, 7           !TDC ROC#2 Sl#17 Ch#86 HDC pl#12 [X2] wire#7
+87, 6, 8           !TDC ROC#2 Sl#17 Ch#87 HDC pl#12 [X2] wire#8
+88, 6, 9           !TDC ROC#2 Sl#17 Ch#88 HDC pl#12 [X2] wire#9
+89, 6, 10          !TDC ROC#2 Sl#17 Ch#89 HDC pl#12 [X2] wire#10
+90, 6, 11          !TDC ROC#2 Sl#17 Ch#90 HDC pl#12 [X2] wire#11
+91, 6, 12          !TDC ROC#2 Sl#17 Ch#91 HDC pl#12 [X2] wire#12
+92, 6, 13          !TDC ROC#2 Sl#17 Ch#92 HDC pl#12 [X2] wire#13
+93, 6, 14          !TDC ROC#2 Sl#17 Ch#93 HDC pl#12 [X2] wire#14
+94, 6, 15          !TDC ROC#2 Sl#17 Ch#94 HDC pl#12 [X2] wire#15
+95, 6, 16          !TDC ROC#2 Sl#17 Ch#95 HDC pl#12 [X2] wire#16
+Slot= 22
+0, 6, 17           !TDC ROC#2 Sl#18 Ch#0 HDC pl#12 [X2] wire#17
+1, 6, 18           !TDC ROC#2 Sl#18 Ch#1 HDC pl#12 [X2] wire#18
+2, 6, 19           !TDC ROC#2 Sl#18 Ch#2 HDC pl#12 [X2] wire#19
+3, 6, 20           !TDC ROC#2 Sl#18 Ch#3 HDC pl#12 [X2] wire#20
+4, 6, 21           !TDC ROC#2 Sl#18 Ch#4 HDC pl#12 [X2] wire#21
+5, 6, 22           !TDC ROC#2 Sl#18 Ch#5 HDC pl#12 [X2] wire#22
+6, 6, 23           !TDC ROC#2 Sl#18 Ch#6 HDC pl#12 [X2] wire#23
+7, 6, 24           !TDC ROC#2 Sl#18 Ch#7 HDC pl#12 [X2] wire#24
+8, 6, 25           !TDC ROC#2 Sl#18 Ch#8 HDC pl#12 [X2] wire#25
+9, 6, 26           !TDC ROC#2 Sl#18 Ch#9 HDC pl#12 [X2] wire#26
+10, 6, 27          !TDC ROC#2 Sl#18 Ch#10 HDC pl#12 [X2] wire#27
+11, 6, 28          !TDC ROC#2 Sl#18 Ch#11 HDC pl#12 [X2] wire#28
+12, 6, 29          !TDC ROC#2 Sl#18 Ch#12 HDC pl#12 [X2] wire#29
+13, 6, 30          !TDC ROC#2 Sl#18 Ch#13 HDC pl#12 [X2] wire#30
+14, 6, 31          !TDC ROC#2 Sl#18 Ch#14 HDC pl#12 [X2] wire#31
+15, 6, 32          !TDC ROC#2 Sl#18 Ch#15 HDC pl#12 [X2] wire#32
+16, 6, 33          !TDC ROC#2 Sl#18 Ch#16 HDC pl#12 [X2] wire#33
+17, 6, 34          !TDC ROC#2 Sl#18 Ch#17 HDC pl#12 [X2] wire#34
+18, 6, 35          !TDC ROC#2 Sl#18 Ch#18 HDC pl#12 [X2] wire#35
+19, 6, 36          !TDC ROC#2 Sl#18 Ch#19 HDC pl#12 [X2] wire#36
+20, 6, 37          !TDC ROC#2 Sl#18 Ch#20 HDC pl#12 [X2] wire#37
+21, 6, 38          !TDC ROC#2 Sl#18 Ch#21 HDC pl#12 [X2] wire#38
+22, 6, 39          !TDC ROC#2 Sl#18 Ch#22 HDC pl#12 [X2] wire#39
+23, 6, 40          !TDC ROC#2 Sl#18 Ch#23 HDC pl#12 [X2] wire#40
+24, 6, 41          !TDC ROC#2 Sl#18 Ch#24 HDC pl#12 [X2] wire#41
+25, 6, 42          !TDC ROC#2 Sl#18 Ch#25 HDC pl#12 [X2] wire#42
+26, 6, 43          !TDC ROC#2 Sl#18 Ch#26 HDC pl#12 [X2] wire#43
+27, 6, 44          !TDC ROC#2 Sl#18 Ch#27 HDC pl#12 [X2] wire#44
+28, 6, 45          !TDC ROC#2 Sl#18 Ch#28 HDC pl#12 [X2] wire#45
+29, 6, 46          !TDC ROC#2 Sl#18 Ch#29 HDC pl#12 [X2] wire#46
+30, 6, 47          !TDC ROC#2 Sl#18 Ch#30 HDC pl#12 [X2] wire#47
+31, 6, 48          !TDC ROC#2 Sl#18 Ch#31 HDC pl#12 [X2] wire#48
+32, 6, 49          !TDC ROC#2 Sl#18 Ch#32 HDC pl#12 [X2] wire#49
+33, 6, 50          !TDC ROC#2 Sl#18 Ch#33 HDC pl#12 [X2] wire#50
+34, 6, 51          !TDC ROC#2 Sl#18 Ch#34 HDC pl#12 [X2] wire#51
+35, 6, 52          !TDC ROC#2 Sl#18 Ch#35 HDC pl#12 [X2] wire#52
+36, 6, 53          !TDC ROC#2 Sl#18 Ch#36 HDC pl#12 [X2] wire#53
+37, 6, 54          !TDC ROC#2 Sl#18 Ch#37 HDC pl#12 [X2] wire#54
+38, 6, 55          !TDC ROC#2 Sl#18 Ch#38 HDC pl#12 [X2] wire#55
+39, 6, 56          !TDC ROC#2 Sl#18 Ch#39 HDC pl#12 [X2] wire#56
+40, 6, 57          !TDC ROC#2 Sl#18 Ch#40 HDC pl#12 [X2] wire#57
+41, 6, 58          !TDC ROC#2 Sl#18 Ch#41 HDC pl#12 [X2] wire#58
+42, 6, 59          !TDC ROC#2 Sl#18 Ch#42 HDC pl#12 [X2] wire#59
+43, 6, 60          !TDC ROC#2 Sl#18 Ch#43 HDC pl#12 [X2] wire#60
+44, 6, 61          !TDC ROC#2 Sl#18 Ch#44 HDC pl#12 [X2] wire#61
+45, 6, 62          !TDC ROC#2 Sl#18 Ch#45 HDC pl#12 [X2] wire#62
+46, 6, 63          !TDC ROC#2 Sl#18 Ch#46 HDC pl#12 [X2] wire#63
+47, 6, 64          !TDC ROC#2 Sl#18 Ch#47 HDC pl#12 [X2] wire#64
+48, 6, 65          !TDC ROC#2 Sl#18 Ch#48 HDC pl#12 [X2] wire#65
+49, 6, 66          !TDC ROC#2 Sl#18 Ch#49 HDC pl#12 [X2] wire#66
+50, 6, 67          !TDC ROC#2 Sl#18 Ch#50 HDC pl#12 [X2] wire#67
+51, 6, 68          !TDC ROC#2 Sl#18 Ch#51 HDC pl#12 [X2] wire#68
+52, 6, 69          !TDC ROC#2 Sl#18 Ch#52 HDC pl#12 [X2] wire#69
+53, 6, 70          !TDC ROC#2 Sl#18 Ch#53 HDC pl#12 [X2] wire#70
+54, 6, 71          !TDC ROC#2 Sl#18 Ch#54 HDC pl#12 [X2] wire#71
+55, 6, 72          !TDC ROC#2 Sl#18 Ch#55 HDC pl#12 [X2] wire#72
+56, 6, 73          !TDC ROC#2 Sl#18 Ch#56 HDC pl#12 [X2] wire#73
+57, 6, 74          !TDC ROC#2 Sl#18 Ch#57 HDC pl#12 [X2] wire#74
+58, 6, 75          !TDC ROC#2 Sl#18 Ch#58 HDC pl#12 [X2] wire#75
+59, 6, 76          !TDC ROC#2 Sl#18 Ch#59 HDC pl#12 [X2] wire#76
+60, 6, 77          !TDC ROC#2 Sl#18 Ch#60 HDC pl#12 [X2] wire#77
+61, 6, 78          !TDC ROC#2 Sl#18 Ch#61 HDC pl#12 [X2] wire#78
+62, 6, 79          !TDC ROC#2 Sl#18 Ch#62 HDC pl#12 [X2] wire#79
+63, 6, 80          !TDC ROC#2 Sl#18 Ch#63 HDC pl#12 [X2] wire#80
+64, 6, 81          !TDC ROC#2 Sl#18 Ch#64 HDC pl#12 [X2] wire#81
+65, 6, 82          !TDC ROC#2 Sl#18 Ch#65 HDC pl#12 [X2] wire#82
+66, 6, 83          !TDC ROC#2 Sl#18 Ch#66 HDC pl#12 [X2] wire#83
+67, 6, 84          !TDC ROC#2 Sl#18 Ch#67 HDC pl#12 [X2] wire#84
+68, 6, 85          !TDC ROC#2 Sl#18 Ch#68 HDC pl#12 [X2] wire#85
+69, 6, 86          !TDC ROC#2 Sl#18 Ch#69 HDC pl#12 [X2] wire#86
+70, 6, 87          !TDC ROC#2 Sl#18 Ch#70 HDC pl#12 [X2] wire#87
+71, 6, 88          !TDC ROC#2 Sl#18 Ch#71 HDC pl#12 [X2] wire#88
+72, 6, 89          !TDC ROC#2 Sl#18 Ch#72 HDC pl#12 [X2] wire#89
+73, 6, 90          !TDC ROC#2 Sl#18 Ch#73 HDC pl#12 [X2] wire#90
+74, 6, 91          !TDC ROC#2 Sl#18 Ch#74 HDC pl#12 [X2] wire#91
+75, 6, 92          !TDC ROC#2 Sl#18 Ch#75 HDC pl#12 [X2] wire#92
+76, 6, 93          !TDC ROC#2 Sl#18 Ch#76 HDC pl#12 [X2] wire#93
+77, 6, 94          !TDC ROC#2 Sl#18 Ch#77 HDC pl#12 [X2] wire#94
+78, 6, 95          !TDC ROC#2 Sl#18 Ch#78 HDC pl#12 [X2] wire#95
+79, 6, 96          !TDC ROC#2 Sl#18 Ch#79 HDC pl#12 [X2] wire#96
+80, 6, 97          !TDC ROC#2 Sl#18 Ch#80 HDC pl#12 [X2] wire#97
+81, 6, 98          !TDC ROC#2 Sl#18 Ch#81 HDC pl#12 [X2] wire#98
+82, 6, 99          !TDC ROC#2 Sl#18 Ch#82 HDC pl#12 [X2] wire#99
+83, 6, 100         !TDC ROC#2 Sl#18 Ch#83 HDC pl#12 [X2] wire#100
+84, 6, 101         !TDC ROC#2 Sl#18 Ch#84 HDC pl#12 [X2] wire#101
+85, 6, 102         !TDC ROC#2 Sl#18 Ch#85 HDC pl#12 [X2] wire#102
+86, 6, 103         !TDC ROC#2 Sl#18 Ch#86 HDC pl#12 [X2] wire#103
+87, 6, 104         !TDC ROC#2 Sl#18 Ch#87 HDC pl#12 [X2] wire#104
+88, 6, 105         !TDC ROC#2 Sl#18 Ch#88 HDC pl#12 [X2] wire#105
+89, 6, 106         !TDC ROC#2 Sl#18 Ch#89 HDC pl#12 [X2] wire#106
+90, 6, 107         !TDC ROC#2 Sl#18 Ch#90 HDC pl#12 [X2] wire#107
+91, 6, 108         !TDC ROC#2 Sl#18 Ch#91 HDC pl#12 [X2] wire#108
+92, 6, 109         !TDC ROC#2 Sl#18 Ch#92 HDC pl#12 [X2] wire#109
+93, 6, 110         !TDC ROC#2 Sl#18 Ch#93 HDC pl#12 [X2] wire#110
+94, 6, 111         !TDC ROC#2 Sl#18 Ch#94 HDC pl#12 [X2] wire#111
+95, 6, 112         !TDC ROC#2 Sl#18 Ch#95 HDC pl#12 [X2] wire#112
+!
+!
+!   HMS upstairs (HSCIN+HCAL+HCER) map     K.B.Beard 13-Jun-1994
+!
+
+! ^^^^^^^^^^^^^^^^^^^^^ Wire chambers end here ^^^^^^^^^^^^^^^^^^^^^^
+!=============================================================================
+    ROC= 1               !upstairs HMS crate
+!
+    detector= 2 !HSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 23 ! TDC  
+  0, 1, 1, 2 !TDC ROC#1 Sl#23 Ch#0 HSCIN pl#1 [X1] id#1 sig#2 [TDC+] (0 X1P-01)
+  1, 1, 3, 2 !TDC ROC#1 Sl#23 Ch#1 HSCIN pl#1 [X1] id#3 sig#2 [TDC+] (1 X1P-03)
+  2, 1, 5, 2 !TDC ROC#1 Sl#23 Ch#2 HSCIN pl#1 [X1] id#5 sig#2 [TDC+] (2 X1P-05)
+  3, 1, 7, 2 !TDC ROC#1 Sl#23 Ch#3 HSCIN pl#1 [X1] id#7 sig#2 [TDC+] (3 X1P-07)
+  4, 1, 9, 2 !TDC ROC#1 Sl#23 Ch#4 HSCIN pl#1 [X1] id#9 sig#2 [TDC+] (4 X1P-09)
+  5, 1, 11, 2 !TDC ROC#1 Sl#23 Ch#5 HSCIN pl#1 [X1] id#11 sig#2 [TDC+] (5 X1P-11)
+  6, 1, 13, 2 !TDC ROC#1 Sl#23 Ch#6 HSCIN pl#1 [X1] id#13 sig#2 [TDC+] (6 X1P-13)
+  7, 1, 15, 2 !TDC ROC#1 Sl#23 Ch#7 HSCIN pl#1 [X1] id#15 sig#2 [TDC+] (7 X1P-15)
+  8, 1, 2, 2 !TDC ROC#1 Sl#23 Ch#8 HSCIN pl#1 [X1] id#2 sig#2 [TDC+] (8 X1P-02)
+  9, 1, 4, 2 !TDC ROC#1 Sl#23 Ch#9 HSCIN pl#1 [X1] id#4 sig#2 [TDC+] (9 X1P-04)
+  10, 1, 6, 2 !TDC ROC#1 Sl#23 Ch#10 HSCIN pl#1 [X1] id#6 sig#2 [TDC+] (10 X1P-06)
+  11, 1, 8, 2 !TDC ROC#1 Sl#23 Ch#11 HSCIN pl#1 [X1] id#8 sig#2 [TDC+] (11 X1P-08)
+  12, 1, 10, 2 !TDC ROC#1 Sl#23 Ch#12 HSCIN pl#1 [X1] id#10 sig#2 [TDC+] (12 X1P-10)
+  13, 1, 12, 2 !TDC ROC#1 Sl#23 Ch#13 HSCIN pl#1 [X1] id#12 sig#2 [TDC+] (13 X1P-12)
+  14, 1, 14, 2 !TDC ROC#1 Sl#23 Ch#14 HSCIN pl#1 [X1] id#14 sig#2 [TDC+] (14 X1P-14)
+  15, 1, 16, 2 !TDC ROC#1 Sl#23 Ch#15 HSCIN pl#1 [X1] id#16 sig#2 [TDC+] (15 X1P-16)
+  16, 1, 1, 3 !TDC ROC#1 Sl#23 Ch#16 HSCIN pl#1 [X1] id#1 sig#3 [TDC-] (16 X1N-01)
+  17, 1, 3, 3 !TDC ROC#1 Sl#23 Ch#17 HSCIN pl#1 [X1] id#3 sig#3 [TDC-] (17 X1N-03)
+  18, 1, 5, 3 !TDC ROC#1 Sl#23 Ch#18 HSCIN pl#1 [X1] id#5 sig#3 [TDC-] (18 X1N-05)
+  19, 1, 7, 3 !TDC ROC#1 Sl#23 Ch#19 HSCIN pl#1 [X1] id#7 sig#3 [TDC-] (19 X1N-07)
+  20, 1, 9, 3 !TDC ROC#1 Sl#23 Ch#20 HSCIN pl#1 [X1] id#9 sig#3 [TDC-] (20 X1N-09)
+  21, 1, 11, 3 !TDC ROC#1 Sl#23 Ch#21 HSCIN pl#1 [X1] id#11 sig#3 [TDC-] (21 X1N-11)
+  22, 1, 13, 3 !TDC ROC#1 Sl#23 Ch#22 HSCIN pl#1 [X1] id#13 sig#3 [TDC-] (22 X1N-13)
+  23, 1, 15, 3 !TDC ROC#1 Sl#23 Ch#23 HSCIN pl#1 [X1] id#15 sig#3 [TDC-] (23 X1N-15)
+  24, 1, 2, 3 !TDC ROC#1 Sl#23 Ch#24 HSCIN pl#1 [X1] id#2 sig#3 [TDC-] (24 X1N-02)
+  25, 1, 4, 3 !TDC ROC#1 Sl#23 Ch#25 HSCIN pl#1 [X1] id#4 sig#3 [TDC-] (25 X1N-04)
+  26, 1, 6, 3 !TDC ROC#1 Sl#23 Ch#26 HSCIN pl#1 [X1] id#6 sig#3 [TDC-] (26 X1N-06)
+  27, 1, 8, 3 !TDC ROC#1 Sl#23 Ch#27 HSCIN pl#1 [X1] id#8 sig#3 [TDC-] (27 X1N-08)
+  28, 1, 10, 3 !TDC ROC#1 Sl#23 Ch#28 HSCIN pl#1 [X1] id#10 sig#3 [TDC-] (28 X1N-10)
+  29, 1, 12, 3 !TDC ROC#1 Sl#23 Ch#29 HSCIN pl#1 [X1] id#12 sig#3 [TDC-] (29 X1N-12)
+  30, 1, 14, 3 !TDC ROC#1 Sl#23 Ch#30 HSCIN pl#1 [X1] id#14 sig#3 [TDC-] (30 X1N-14)
+  31, 1, 16, 3 !TDC ROC#1 Sl#23 Ch#31 HSCIN pl#1 [X1] id#16 sig#3 [TDC-] (31 X1N-16)
+  32, 2, 1, 2 !TDC ROC#1 Sl#23 Ch#32 HSCIN pl#2 [Y1] id#1 sig#2 [TDC+] (32 Y1P-01)
+  33, 2, 3, 2 !TDC ROC#1 Sl#23 Ch#33 HSCIN pl#2 [Y1] id#3 sig#2 [TDC+] (33 Y1P-03)
+  34, 2, 5, 2 !TDC ROC#1 Sl#23 Ch#34 HSCIN pl#2 [Y1] id#5 sig#2 [TDC+] (34 Y1P-05)
+  35, 2, 7, 2 !TDC ROC#1 Sl#23 Ch#35 HSCIN pl#2 [Y1] id#7 sig#2 [TDC+] (35 Y1P-07)
+  36, 2, 9, 2 !TDC ROC#1 Sl#23 Ch#36 HSCIN pl#2 [Y1] id#9 sig#2 [TDC+] (36 Y1P-09)
+!  37 !TDC ROC#1 Sl#23 Ch#37 unused
+!  38 !TDC ROC#1 Sl#23 Ch#38 unused
+!  39 !TDC ROC#1 Sl#23 Ch#39 unused
+!!!  40, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+  41, 2, 4, 2 !TDC ROC#1 Sl#23 Ch#41 HSCIN pl#2 [Y1] id#4 sig#2 [TDC+] (41 Y1P-04)
+  42, 2, 6, 2 !TDC ROC#1 Sl#23 Ch#42 HSCIN pl#2 [Y1] id#6 sig#2 [TDC+] (42 Y1P-06)
+  43, 2, 8, 2 !TDC ROC#1 Sl#23 Ch#43 HSCIN pl#2 [Y1] id#8 sig#2 [TDC+] (43 Y1P-08)
+  44, 2, 10, 2 !TDC ROC#1 Sl#23 Ch#44 HSCIN pl#2 [Y1] id#10 sig#2 [TDC+] (44 Y1P-10)
+  45, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#45 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (45 Y1P-02)
+!   h1y2+ was moved from channel 47 to 45 on 1/29/1999
+!  46 !TDC ROC#1 Sl#23 Ch#46 unused
+!  47, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+!   h1y2+ was moved from channel 40 to 47 at run 6168
+  48, 2, 1, 3 !TDC ROC#1 Sl#23 Ch#48 HSCIN pl#2 [Y1] id#1 sig#3 [TDC-] (48 Y1N-01)
+  49, 2, 3, 3 !TDC ROC#1 Sl#23 Ch#49 HSCIN pl#2 [Y1] id#3 sig#3 [TDC-] (49 Y1N-03)
+  50, 2, 5, 3 !TDC ROC#1 Sl#23 Ch#50 HSCIN pl#2 [Y1] id#5 sig#3 [TDC-] (50 Y1N-05)
+  51, 2, 7, 3 !TDC ROC#1 Sl#23 Ch#51 HSCIN pl#2 [Y1] id#7 sig#3 [TDC-] (51 Y1N-07)
+  52, 2, 9, 3 !TDC ROC#1 Sl#23 Ch#52 HSCIN pl#2 [Y1] id#9 sig#3 [TDC-] (52 Y1N-09)
+!  53 !TDC ROC#1 Sl#23 Ch#53 unused
+!  54 !TDC ROC#1 Sl#23 Ch#54 unused
+!  55 !TDC ROC#1 Sl#23 Ch#55 unused
+  56, 2, 2, 3 !TDC ROC#1 Sl#23 Ch#56 HSCIN pl#2 [Y1] id#2 sig#3 [TDC-] (56 Y1N-02)
+  57, 2, 4, 3 !TDC ROC#1 Sl#23 Ch#57 HSCIN pl#2 [Y1] id#4 sig#3 [TDC-] (57 Y1N-04)
+  58, 2, 6, 3 !TDC ROC#1 Sl#23 Ch#58 HSCIN pl#2 [Y1] id#6 sig#3 [TDC-] (58 Y1N-06)
+  59, 2, 8, 3 !TDC ROC#1 Sl#23 Ch#59 HSCIN pl#2 [Y1] id#8 sig#3 [TDC-] (59 Y1N-08)
+!  60, 2, 10, 3 !TDC ROC#1 Sl#23 Ch#60 HSCIN pl#2 [Y1] id#10 sig#3 [TDC-] (60 Y1N-10)
+  61 , 2, 10, 3 !TDC ROC#1 Sl#23 Ch#61 swap location for h1y10-
+!  62 !TDC ROC#1 Sl#23 Ch#62 unused
+!  63 !TDC ROC#1 Sl#23 Ch#63 unused
+!
+ Slot= 21 ! TDC  
+! 
+  0, 3, 1, 2 !TDC ROC#1 Sl#21 Ch#0 HSCIN pl#3 [X2] id#1 sig#2 [TDC+] (0 X2P-01)
+  1, 3, 3, 2 !TDC ROC#1 Sl#21 Ch#1 HSCIN pl#3 [X2] id#3 sig#2 [TDC+] (1 X2P-03)
+  2, 3, 5, 2 !TDC ROC#1 Sl#21 Ch#2 HSCIN pl#3 [X2] id#5 sig#2 [TDC+] (2 X2P-05)
+  3, 3, 7, 2 !TDC ROC#1 Sl#21 Ch#3 HSCIN pl#3 [X2] id#7 sig#2 [TDC+] (3 X2P-07)
+  4, 3, 9, 2 !TDC ROC#1 Sl#21 Ch#4 HSCIN pl#3 [X2] id#9 sig#2 [TDC+] (4 X2P-09)
+  5, 3, 11, 2 !TDC ROC#1 Sl#21 Ch#5 HSCIN pl#3 [X2] id#11 sig#2 [TDC+] (5 X2P-11)
+  6, 3, 13, 2 !TDC ROC#1 Sl#21 Ch#6 HSCIN pl#3 [X2] id#13 sig#2 [TDC+] (6 X2P-13)
+  7, 3, 15, 2 !TDC ROC#1 Sl#21 Ch#7 HSCIN pl#3 [X2] id#15 sig#2 [TDC+] (7 X2P-15)
+!
+  8, 3, 2, 2 !TDC ROC#1 Sl#21 Ch#8 HSCIN pl#3 [X2] id#2 sig#2 [TDC+] (8 X2P-02)
+  9, 3, 4, 2 !TDC ROC#1 Sl#21 Ch#9 HSCIN pl#3 [X2] id#4 sig#2 [TDC+] (9 X2P-04)
+  10, 3, 6, 2 !TDC ROC#1 Sl#21 Ch#10 HSCIN pl#3 [X2] id#6 sig#2 [TDC+] (10 X2P-06)
+  11, 3, 8, 2 !TDC ROC#1 Sl#21 Ch#11 HSCIN pl#3 [X2] id#8 sig#2 [TDC+] (11 X2P-08)
+  12, 3, 10, 2 !TDC ROC#1 Sl#21 Ch#12 HSCIN pl#3 [X2] id#10 sig#2 [TDC+] (12 X2P-10)
+  13, 3, 12, 2 !TDC ROC#1 Sl#21 Ch#13 HSCIN pl#3 [X2] id#12 sig#2 [TDC+] (13 X2P-12)
+  14, 3, 14, 2 !TDC ROC#1 Sl#21 Ch#14 HSCIN pl#3 [X2] id#14 sig#2 [TDC+] (14 X2P-14)
+  15, 3, 16, 2 !TDC ROC#1 Sl#21 Ch#15 HSCIN pl#3 [X2] id#16 sig#2 [TDC+] (15 X2P-16)
+!
+! swapped s2x- with s2y+
+!
+  16, 4, 1, 2 !TDC ROC#1 Sl#21 Ch#32 HSCIN pl#4 [Y2] id#1 sig#2 [TDC+] (32 Y2P-01)
+  17, 4, 3, 2 !TDC ROC#1 Sl#21 Ch#33 HSCIN pl#4 [Y2] id#3 sig#2 [TDC+] (33 Y2P-03)
+  18, 4, 5, 2 !TDC ROC#1 Sl#21 Ch#34 HSCIN pl#4 [Y2] id#5 sig#2 [TDC+] (34 Y2P-05)
+  19, 4, 7, 2 !TDC ROC#1 Sl#21 Ch#35 HSCIN pl#4 [Y2] id#7 sig#2 [TDC+] (35 Y2P-07)
+  20, 4, 9, 2 !TDC ROC#1 Sl#21 Ch#36 HSCIN pl#4 [Y2] id#9 sig#2 [TDC+] (36 Y2P-09)
+!  21 !TDC ROC#1 Sl#21 Ch#37 unused
+!  22 !TDC ROC#1 Sl#21 Ch#38 unused
+!  23 !TDC ROC#1 Sl#21 Ch#39 unused
+  24, 4, 2, 2 !TDC ROC#1 Sl#21 Ch#40 HSCIN pl#4 [Y2] id#2 sig#2 [TDC+] (40 Y2P-02)
+  25, 4, 4, 2 !TDC ROC#1 Sl#21 Ch#41 HSCIN pl#4 [Y2] id#4 sig#2 [TDC+] (41 Y2P-04)
+  26, 4, 6, 2 !TDC ROC#1 Sl#21 Ch#42 HSCIN pl#4 [Y2] id#6 sig#2 [TDC+] (42 Y2P-06)
+  27, 4, 8, 2 !TDC ROC#1 Sl#21 Ch#43 HSCIN pl#4 [Y2] id#8 sig#2 [TDC+] (43 Y2P-08)
+  28, 4, 10, 2 !TDC ROC#1 Sl#21 Ch#44 HSCIN pl#4 [Y2] id#10 sig#2 [TDC+] (44 Y2P-10)
+!  29 !TDC ROC#1 Sl#21 Ch#45 unused
+!  30 !TDC ROC#1 Sl#21 Ch#46 unused
+!  31 !TDC ROC#1 Sl#21 Ch#47 unused
+!
+  32, 3, 1, 3 !TDC ROC#1 Sl#21 Ch#16 HSCIN pl#3 [X2] id#1 sig#3 [TDC-] (16 X2N-01)
+  33, 3, 3, 3 !TDC ROC#1 Sl#21 Ch#17 HSCIN pl#3 [X2] id#3 sig#3 [TDC-] (17 X2N-03)
+  34, 3, 5, 3 !TDC ROC#1 Sl#21 Ch#18 HSCIN pl#3 [X2] id#5 sig#3 [TDC-] (18 X2N-05)
+  35, 3, 7, 3 !TDC ROC#1 Sl#21 Ch#19 HSCIN pl#3 [X2] id#7 sig#3 [TDC-] (19 X2N-07)
+  36, 3, 9, 3 !TDC ROC#1 Sl#21 Ch#20 HSCIN pl#3 [X2] id#9 sig#3 [TDC-] (20 X2N-09)
+  37, 3, 11, 3 !TDC ROC#1 Sl#21 Ch#21 HSCIN pl#3 [X2] id#11 sig#3 [TDC-] (21 X2N-11)
+  38, 3, 13, 3 !TDC ROC#1 Sl#21 Ch#22 HSCIN pl#3 [X2] id#13 sig#3 [TDC-] (22 X2N-13)
+  39, 3, 15, 3 !TDC ROC#1 Sl#21 Ch#23 HSCIN pl#3 [X2] id#15 sig#3 [TDC-] (23 X2N-15)
+!
+  40, 3, 2, 3 !TDC ROC#1 Sl#21 Ch#24 HSCIN pl#3 [X2] id#2 sig#3 [TDC-] (24 X2N-02)
+  41, 3, 4, 3 !TDC ROC#1 Sl#21 Ch#25 HSCIN pl#3 [X2] id#4 sig#3 [TDC-] (25 X2N-04)
+  42, 3, 6, 3 !TDC ROC#1 Sl#21 Ch#26 HSCIN pl#3 [X2] id#6 sig#3 [TDC-] (26 X2N-06)
+  43, 3, 8, 3 !TDC ROC#1 Sl#21 Ch#27 HSCIN pl#3 [X2] id#8 sig#3 [TDC-] (27 X2N-08)
+  44, 3, 10, 3 !TDC ROC#1 Sl#21 Ch#28 HSCIN pl#3 [X2] id#10 sig#3 [TDC-] (28 X2N-10)
+  45, 3, 12, 3 !TDC ROC#1 Sl#21 Ch#29 HSCIN pl#3 [X2] id#12 sig#3 [TDC-] (29 X2N-12)
+  46, 3, 14, 3 !TDC ROC#1 Sl#21 Ch#30 HSCIN pl#3 [X2] id#14 sig#3 [TDC-] (30 X2N-14)
+  47, 3, 16, 3 !TDC ROC#1 Sl#21 Ch#31 HSCIN pl#3 [X2] id#16 sig#3 [TDC-] (31 X2N-16)
+!
+  48, 4, 1, 3 !TDC ROC#1 Sl#21 Ch#48 HSCIN pl#4 [Y2] id#1 sig#3 [TDC-] (48 Y2N-01)
+  49, 4, 3, 3 !TDC ROC#1 Sl#21 Ch#49 HSCIN pl#4 [Y2] id#3 sig#3 [TDC-] (49 Y2N-03)
+  50, 4, 5, 3 !TDC ROC#1 Sl#21 Ch#50 HSCIN pl#4 [Y2] id#5 sig#3 [TDC-] (50 Y2N-05)
+  51, 4, 7, 3 !TDC ROC#1 Sl#21 Ch#51 HSCIN pl#4 [Y2] id#7 sig#3 [TDC-] (51 Y2N-07)
+  52, 4, 9, 3 !TDC ROC#1 Sl#21 Ch#52 HSCIN pl#4 [Y2] id#9 sig#3 [TDC-] (52 Y2N-09)
+!  53 !TDC ROC#1 Sl#21 Ch#53 unused
+!  54 !TDC ROC#1 Sl#21 Ch#54 unused
+!  55 !TDC ROC#1 Sl#21 Ch#55 unused
+  56, 4, 2, 3 !TDC ROC#1 Sl#21 Ch#56 HSCIN pl#4 [Y2] id#2 sig#3 [TDC-] (56 Y2N-02)
+  57, 4, 4, 3 !TDC ROC#1 Sl#21 Ch#57 HSCIN pl#4 [Y2] id#4 sig#3 [TDC-] (57 Y2N-04)
+  58, 4, 6, 3 !TDC ROC#1 Sl#21 Ch#58 HSCIN pl#4 [Y2] id#6 sig#3 [TDC-] (58 Y2N-06)
+  59, 4, 8, 3 !TDC ROC#1 Sl#21 Ch#59 HSCIN pl#4 [Y2] id#8 sig#3 [TDC-] (59 Y2N-08)
+  60, 4, 10, 3 !TDC ROC#1 Sl#21 Ch#60 HSCIN pl#4 [Y2] id#10 sig#3 [TDC-] (60 Y2N-10)
+!  61 !TDC ROC#1 Sl#21 Ch#61 unused
+!  62 !TDC ROC#1 Sl#21 Ch#62 unused
+!  63 !TDC ROC#1 Sl#21 Ch#63 unused
+!
+!!!======================================================================
+    detector= 5 !HMISC
+
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 19 ! TDC  
+
+0, 1, 1, 0  ! 0 !TDC ROC#1 Sl#19 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#1 Sl#19 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#1 Sl#19 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#1 Sl#19 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#1 Sl#19 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#1 Sl#19 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#1 Sl#19 Ch#6 empty
+7, 1, 8, 0  ! 7 !TDC ROC#1 Sl#19 Ch#7 unused
+8, 1, 9, 0  ! 8 !TDC ROC#1 Sl#19 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#1 Sl#19 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#1 Sl#19 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#1 Sl#19 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#1 Sl#19 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#1 Sl#19 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#1 Sl#19 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#1 Sl#19 Ch#15 signal {PEDTRG}
+16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 signal {hS1}                       
+17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 signal {hPRE50}                    
+18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 signal {hS2X}                      
+19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 signal {hPRE150}                   
+20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 signal {hS1X}                      
+21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 signal {hS2Y}                      
+22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 signal {hPRE100}                   
+23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 signal {hS1Y}                      
+24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 signal {hS2}                       
+25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 signal {hCERHI}                   
+26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 signal {hSTOF}                     
+27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 signal {hSCIN}                     
+28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 signal {hELREAL}                   
+29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 signal {hPIPRE}                    
+30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 signal {hELCLEAN}                  
+31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 signal {hPRETRG}                   
+32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 signal {PION}                      
+33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 signal {CER}                       
+34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 signal {hPIONHI}                  
+35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 signal {hPRE200}                  
+36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 signal {??}                        
+37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 signal {UNSER}                     
+38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 signal {BCM1}                      
+39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 signal {BCM2}                      
+40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 signal {hELHI}                     
+41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 signal {hELLO}                     
+42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 signal {hPRHI}                     
+43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 signal {hPRLO}                     
+44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 signal {hSHLO}                     
+45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 signal {CLOCK}                     
+46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 signal {BEAMGATES}                 
+47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 signal {hADCGATES ? PEDS and TRIGS}
+48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 RF no delay
+49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 RF + 10 ns
+53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!
+!=============================================================================
+!                     AEROGEL TDC
+!..............................................................................
+! For aerogel: 0-->ADC_POS
+!	       1-->ADC_NEG
+!              2-->TDC_POS      ! Check one more time (Hamlet, 2002/10/01)
+!              3-->TDC_NEG
+
+    detector= 7 ! Temporary for HAERO
+
+!       TDC module LeCroy 1872a
+
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!!
+! S. Wood have problem to read additional TDC in Slot =18 (2002/10/18, Hamlet)
+!
+! For now I will use some other tdc channels for Aerogel
+!.......................>
+!
+ Slot= 18 ! TDC channels for HMS Aero 
+! Changed May 5, 2003 DJG
+!
+!
+! Slot= 18 !TDC
+!
+! TDC chan  for aerogel (Hamlet, 2002/10/17)
+!
+0, 1, 1, 2 !TDC ROC#1 Sl#18 Ch#0  signal pos 1
+1, 1, 2, 2 !TDC ROC#1 Sl#18 Ch#1  signal pos 2
+2, 1, 3, 2 !TDC ROC#1 Sl#18 Ch#2  signal pos 3
+3, 1, 4, 2 !TDC ROC#1 Sl#18 Ch#3  signal pos 4
+4, 1, 5, 2 !TDC ROC#1 Sl#18 Ch#4  signal pos 5
+5, 1, 6, 2 !TDC ROC#1 Sl#18 Ch#5  signal pos 6
+6, 1, 7, 2 !TDC ROC#1 Sl#18 Ch#6  signal pos 7
+7, 1, 8, 2 !TDC ROC#1 Sl#18 Ch#7  signal pos 8
+8, 1, 1, 3 !TDC ROC#1 Sl#18 Ch#8  signal neg 1
+9, 1, 2, 3 !TDC ROC#1 Sl#18 Ch#9  signal neg 2
+10, 1, 3, 3 !TDC ROC#1 Sl#18 Ch#10  signal neg 3
+11, 1, 4, 3 !TDC ROC#1 Sl#18 Ch#11  signal neg 4
+12, 1, 5, 3 !TDC ROC#1 Sl#18 Ch#12  signal neg 5
+13, 1, 6, 3 !TDC ROC#1 Sl#18 Ch#13  signal neg 6
+14, 1, 7, 3 !TDC ROC#1 Sl#18 Ch#14  signal neg 7
+15, 1, 8, 3 !TDC ROC#1 Sl#18 Ch#15  signal neg 8
+!!
+!16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 unused
+!17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 unused
+!18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 unused
+!19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 unused
+!20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 unused
+!21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 unused
+!22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 unused
+!23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 unused
+!24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 unused
+!25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 unused
+!26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 unused
+!27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 unused
+!28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 unused
+!29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 unused
+!30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 unused
+!31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 unused
+!32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 unused
+!33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 unused
+!34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 unused
+!35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 unused
+!36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 unused
+!37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 unused
+!38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 unused
+!39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 unused
+!40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 unused
+!41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 unused
+!42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 unused
+!43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 unused
+!44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 unused 
+!45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 unused 
+!46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 unused 
+!47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 unused 
+!48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 unused
+!49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+!50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+!51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+!52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 unused
+!53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+!54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+!55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+!56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+!57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+!58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+!59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+!60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+!61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+!62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+!63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!=============================================================================
+!       ADC module LeCroy 1881M
+    detector = 2
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#1 Sl#9 Ch#0 HSCIN pl#1 [X1] id#1 sig#0 [ADC+] (0 X1P-01)
+  1, 1, 3, 0 !ADC ROC#1 Sl#9 Ch#1 HSCIN pl#1 [X1] id#3 sig#0 [ADC+] (1 X1P-03)
+  2, 1, 5, 0 !ADC ROC#1 Sl#9 Ch#2 HSCIN pl#1 [X1] id#5 sig#0 [ADC+] (2 X1P-05)
+  3, 1, 7, 0 !ADC ROC#1 Sl#9 Ch#3 HSCIN pl#1 [X1] id#7 sig#0 [ADC+] (3 X1P-07)
+  4, 1, 9, 0 !ADC ROC#1 Sl#9 Ch#4 HSCIN pl#1 [X1] id#9 sig#0 [ADC+] (4 X1P-09)
+  5, 1, 11, 0 !ADC ROC#1 Sl#9 Ch#5 HSCIN pl#1 [X1] id#11 sig#0 [ADC+] (5 X1P-11)
+  6, 1, 13, 0 !ADC ROC#1 Sl#9 Ch#6 HSCIN pl#1 [X1] id#13 sig#0 [ADC+] (6 X1P-13)
+  7, 1, 15, 0 !ADC ROC#1 Sl#9 Ch#7 HSCIN pl#1 [X1] id#15 sig#0 [ADC+] (7 X1P-15)
+  8, 1, 2, 0 !ADC ROC#1 Sl#9 Ch#8 HSCIN pl#1 [X1] id#2 sig#0 [ADC+] (8 X1P-02)
+  9, 1, 4, 0 !ADC ROC#1 Sl#9 Ch#9 HSCIN pl#1 [X1] id#4 sig#0 [ADC+] (9 X1P-04)
+  10, 1, 6, 0 !ADC ROC#1 Sl#9 Ch#10 HSCIN pl#1 [X1] id#6 sig#0 [ADC+] (10 X1P-06)
+  11, 1, 8, 0 !ADC ROC#1 Sl#9 Ch#11 HSCIN pl#1 [X1] id#8 sig#0 [ADC+] (11 X1P-08)
+  12, 1, 10, 0 !ADC ROC#1 Sl#9 Ch#12 HSCIN pl#1 [X1] id#10 sig#0 [ADC+] (12 X1P-10)
+  13, 1, 12, 0 !ADC ROC#1 Sl#9 Ch#13 HSCIN pl#1 [X1] id#12 sig#0 [ADC+] (13 X1P-12)
+  14, 1, 14, 0 !ADC ROC#1 Sl#9 Ch#14 HSCIN pl#1 [X1] id#14 sig#0 [ADC+] (14 X1P-14)
+  15, 1, 16, 0 !ADC ROC#1 Sl#9 Ch#15 HSCIN pl#1 [X1] id#16 sig#0 [ADC+] (15 X1P-16)
+!
+  16, 1, 1, 1 !ADC ROC#1 Sl#9 Ch#16 HSCIN pl#1 [X1] id#1 sig#1 [ADC-] (16 X1N-01)
+  17, 1, 3, 1 !ADC ROC#1 Sl#9 Ch#17 HSCIN pl#1 [X1] id#3 sig#1 [ADC-] (17 X1N-03)
+  18, 1, 5, 1 !ADC ROC#1 Sl#9 Ch#18 HSCIN pl#1 [X1] id#5 sig#1 [ADC-] (18 X1N-05)
+  19, 1, 7, 1 !ADC ROC#1 Sl#9 Ch#19 HSCIN pl#1 [X1] id#7 sig#1 [ADC-] (19 X1N-07)
+  20, 1, 9, 1 !ADC ROC#1 Sl#9 Ch#20 HSCIN pl#1 [X1] id#9 sig#1 [ADC-] (20 X1N-09)
+  21, 1, 11, 1 !ADC ROC#1 Sl#9 Ch#21 HSCIN pl#1 [X1] id#11 sig#1 [ADC-] (21 X1N-11)
+  22, 1, 13, 1 !ADC ROC#1 Sl#9 Ch#22 HSCIN pl#1 [X1] id#13 sig#1 [ADC-] (22 X1N-13)
+  23, 1, 15, 1 !ADC ROC#1 Sl#9 Ch#23 HSCIN pl#1 [X1] id#15 sig#1 [ADC-] (23 X1N-15)
+  24, 1, 2, 1 !ADC ROC#1 Sl#9 Ch#24 HSCIN pl#1 [X1] id#2 sig#1 [ADC-] (24 X1N-02)
+  25, 1, 4, 1 !ADC ROC#1 Sl#9 Ch#25 HSCIN pl#1 [X1] id#4 sig#1 [ADC-] (25 X1N-04)
+  26, 1, 6, 1 !ADC ROC#1 Sl#9 Ch#26 HSCIN pl#1 [X1] id#6 sig#1 [ADC-] (26 X1N-06)
+  27, 1, 8, 1 !ADC ROC#1 Sl#9 Ch#27 HSCIN pl#1 [X1] id#8 sig#1 [ADC-] (27 X1N-08)
+  28, 1, 10, 1 !ADC ROC#1 Sl#9 Ch#28 HSCIN pl#1 [X1] id#10 sig#1 [ADC-] (28 X1N-10)
+  29, 1, 12, 1 !ADC ROC#1 Sl#9 Ch#29 HSCIN pl#1 [X1] id#12 sig#1 [ADC-] (29 X1N-12)
+  30, 1, 14, 1 !ADC ROC#1 Sl#9 Ch#30 HSCIN pl#1 [X1] id#14 sig#1 [ADC-] (30 X1N-14)
+  31, 1, 16, 1 !ADC ROC#1 Sl#9 Ch#31 HSCIN pl#1 [X1] id#16 sig#1 [ADC-] (31 X1N-16)
+! 
+  32, 2, 1, 0 !ADC ROC#1 Sl#9 Ch#32 HSCIN pl#2 [Y1] id#1 sig#0 [ADC+] (32 Y1P-01)
+  33, 2, 3, 0 !ADC ROC#1 Sl#9 Ch#33 HSCIN pl#2 [Y1] id#3 sig#0 [ADC+] (33 Y1P-03)
+  34, 2, 5, 0 !ADC ROC#1 Sl#9 Ch#34 HSCIN pl#2 [Y1] id#5 sig#0 [ADC+] (34 Y1P-05)
+  35, 2, 7, 0 !ADC ROC#1 Sl#9 Ch#35 HSCIN pl#2 [Y1] id#7 sig#0 [ADC+] (35 Y1P-07)
+  36, 2, 9, 0 !ADC ROC#1 Sl#9 Ch#36 HSCIN pl#2 [Y1] id#9 sig#0 [ADC+] (36 Y1P-09)
+!  37 !ADC ROC#1 Sl#9 Ch#37 unused
+!  38 !ADC ROC#1 Sl#9 Ch#38 unused
+!  39 !ADC ROC#1 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#1 Sl#9 Ch#40 HSCIN pl#2 [Y1] id#2 sig#0 [ADC+] (40 Y1P-02)
+  41, 2, 4, 0 !ADC ROC#1 Sl#9 Ch#41 HSCIN pl#2 [Y1] id#4 sig#0 [ADC+] (41 Y1P-04)
+  42, 2, 6, 0 !ADC ROC#1 Sl#9 Ch#42 HSCIN pl#2 [Y1] id#6 sig#0 [ADC+] (42 Y1P-06)
+  43, 2, 8, 0 !ADC ROC#1 Sl#9 Ch#43 HSCIN pl#2 [Y1] id#8 sig#0 [ADC+] (43 Y1P-08)
+  44, 2, 10, 0 !ADC ROC#1 Sl#9 Ch#44 HSCIN pl#2 [Y1] id#10 sig#0 [ADC+] (44 Y1P-10)
+!  45 !ADC ROC#1 Sl#9 Ch#45 unused
+!  46 !ADC ROC#1 Sl#9 Ch#46 unused
+!  47 !ADC ROC#1 Sl#9 Ch#47 unused
+!
+  48, 2, 1, 1 !ADC ROC#1 Sl#9 Ch#48 HSCIN pl#2 [Y1] id#1 sig#1 [ADC-] (48 Y1N-01)
+  49, 2, 3, 1 !ADC ROC#1 Sl#9 Ch#49 HSCIN pl#2 [Y1] id#3 sig#1 [ADC-] (49 Y1N-03)
+  50, 2, 5, 1 !ADC ROC#1 Sl#9 Ch#50 HSCIN pl#2 [Y1] id#5 sig#1 [ADC-] (50 Y1N-05)
+  51, 2, 7, 1 !ADC ROC#1 Sl#9 Ch#51 HSCIN pl#2 [Y1] id#7 sig#1 [ADC-] (51 Y1N-07)
+  52, 2, 9, 1 !ADC ROC#1 Sl#9 Ch#52 HSCIN pl#2 [Y1] id#9 sig#1 [ADC-] (52 Y1N-09)
+!  53 !ADC ROC#1 Sl#9 Ch#53 unused
+!  54 !ADC ROC#1 Sl#9 Ch#54 unused
+!  55 !ADC ROC#1 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#1 Sl#9 Ch#56 HSCIN pl#2 [Y1] id#2 sig#1 [ADC-] (56 Y1N-02)
+  57, 2, 4, 1 !ADC ROC#1 Sl#9 Ch#57 HSCIN pl#2 [Y1] id#4 sig#1 [ADC-] (57 Y1N-04)
+  58, 2, 6, 1 !ADC ROC#1 Sl#9 Ch#58 HSCIN pl#2 [Y1] id#6 sig#1 [ADC-] (58 Y1N-06)
+  59, 2, 8, 1 !ADC ROC#1 Sl#9 Ch#59 HSCIN pl#2 [Y1] id#8 sig#1 [ADC-] (59 Y1N-08)
+  60, 2, 10, 1 !ADC ROC#1 Sl#9 Ch#60 HSCIN pl#2 [Y1] id#10 sig#1 [ADC-] (60 Y1N-10)
+!  61 !ADC ROC#1 Sl#9 Ch#62 unused
+!  62 !ADC ROC#1 Sl#9 Ch#62 unused
+!  63 !ADC ROC#1 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#1 Sl#7 Ch#0 HSCIN pl#3 [X2] id#1 sig#0 [ADC+] (0 X2P-01)
+  1, 3, 3, 0 !ADC ROC#1 Sl#7 Ch#1 HSCIN pl#3 [X2] id#3 sig#0 [ADC+] (1 X2P-03)
+  2, 3, 5, 0 !ADC ROC#1 Sl#7 Ch#2 HSCIN pl#3 [X2] id#5 sig#0 [ADC+] (2 X2P-05)
+  3, 3, 7, 0 !ADC ROC#1 Sl#7 Ch#3 HSCIN pl#3 [X2] id#7 sig#0 [ADC+] (3 X2P-07)
+  4, 3, 9, 0 !ADC ROC#1 Sl#7 Ch#4 HSCIN pl#3 [X2] id#9 sig#0 [ADC+] (4 X2P-09)
+  5, 3, 11, 0 !ADC ROC#1 Sl#7 Ch#5 HSCIN pl#3 [X2] id#11 sig#0 [ADC+] (5 X2P-11)
+  6, 3, 13, 0 !ADC ROC#1 Sl#7 Ch#6 HSCIN pl#3 [X2] id#13 sig#0 [ADC+] (6 X2P-13)
+  7, 3, 15, 0 !ADC ROC#1 Sl#7 Ch#7 HSCIN pl#3 [X2] id#15 sig#0 [ADC+] (7 X2P-15)
+  8, 3, 2, 0 !ADC ROC#1 Sl#7 Ch#8 HSCIN pl#3 [X2] id#2 sig#0 [ADC+] (8 X2P-02)
+  9, 3, 4, 0 !ADC ROC#1 Sl#7 Ch#9 HSCIN pl#3 [X2] id#4 sig#0 [ADC+] (9 X2P-04)
+  10, 3, 6, 0 !ADC ROC#1 Sl#7 Ch#10 HSCIN pl#3 [X2] id#6 sig#0 [ADC+] (10 X2P-06)
+  11, 3, 8, 0 !ADC ROC#1 Sl#7 Ch#11 HSCIN pl#3 [X2] id#8 sig#0 [ADC+] (11 X2P-08)
+  12, 3, 10, 0 !ADC ROC#1 Sl#7 Ch#12 HSCIN pl#3 [X2] id#10 sig#0 [ADC+] (12 X2P-10)
+  13, 3, 12, 0 !ADC ROC#1 Sl#7 Ch#13 HSCIN pl#3 [X2] id#12 sig#0 [ADC+] (13 X2P-12)
+  14, 3, 14, 0 !ADC ROC#1 Sl#7 Ch#14 HSCIN pl#3 [X2] id#14 sig#0 [ADC+] (14 X2P-14)
+  15, 3, 16, 0 !ADC ROC#1 Sl#7 Ch#15 HSCIN pl#3 [X2] id#16 sig#0 [ADC+] (15 X2P-16)
+! 
+  16, 3, 1, 1 !ADC ROC#1 Sl#7 Ch#16 HSCIN pl#3 [X2] id#1 sig#1 [ADC-] (16 X2N-01)
+  17, 3, 3, 1 !ADC ROC#1 Sl#7 Ch#17 HSCIN pl#3 [X2] id#3 sig#1 [ADC-] (17 X2N-03)
+  18, 3, 5, 1 !ADC ROC#1 Sl#7 Ch#18 HSCIN pl#3 [X2] id#5 sig#1 [ADC-] (18 X2N-05)
+  19, 3, 7, 1 !ADC ROC#1 Sl#7 Ch#19 HSCIN pl#3 [X2] id#7 sig#1 [ADC-] (19 X2N-07)
+  20, 3, 9, 1 !ADC ROC#1 Sl#7 Ch#20 HSCIN pl#3 [X2] id#9 sig#1 [ADC-] (20 X2N-09)
+  21, 3, 11, 1 !ADC ROC#1 Sl#7 Ch#21 HSCIN pl#3 [X2] id#11 sig#1 [ADC-] (21 X2N-11)
+  22, 3, 13, 1 !ADC ROC#1 Sl#7 Ch#22 HSCIN pl#3 [X2] id#13 sig#1 [ADC-] (22 X2N-13)
+  23, 3, 15, 1 !ADC ROC#1 Sl#7 Ch#23 HSCIN pl#3 [X2] id#15 sig#1 [ADC-] (23 X2N-15)
+!
+  24, 3, 2, 1 !ADC ROC#1 Sl#7 Ch#24 HSCIN pl#3 [X2] id#2 sig#1 [ADC-] (24 X2N-02)
+  25, 3, 4, 1 !ADC ROC#1 Sl#7 Ch#25 HSCIN pl#3 [X2] id#4 sig#1 [ADC-] (25 X2N-04)
+  26, 3, 6, 1 !ADC ROC#1 Sl#7 Ch#26 HSCIN pl#3 [X2] id#6 sig#1 [ADC-] (26 X2N-06)
+  27, 3, 8, 1 !ADC ROC#1 Sl#7 Ch#27 HSCIN pl#3 [X2] id#8 sig#1 [ADC-] (27 X2N-08)
+  28, 3, 10, 1 !ADC ROC#1 Sl#7 Ch#28 HSCIN pl#3 [X2] id#10 sig#1 [ADC-] (28 X2N-10)
+  29, 3, 12, 1 !ADC ROC#1 Sl#7 Ch#29 HSCIN pl#3 [X2] id#12 sig#1 [ADC-] (29 X2N-12)
+  30, 3, 14, 1 !ADC ROC#1 Sl#7 Ch#30 HSCIN pl#3 [X2] id#14 sig#1 [ADC-] (30 X2N-14)
+  31, 3, 16, 1 !ADC ROC#1 Sl#7 Ch#31 HSCIN pl#3 [X2] id#16 sig#1 [ADC-] (31 X2N-16)
+  32, 4, 1, 0 !ADC ROC#1 Sl#7 Ch#32 HSCIN pl#4 [Y2] id#1 sig#0 [ADC+] (32 Y2P-01)
+  33, 4, 3, 0 !ADC ROC#1 Sl#7 Ch#33 HSCIN pl#4 [Y2] id#3 sig#0 [ADC+] (33 Y2P-03)
+  34, 4, 5, 0 !ADC ROC#1 Sl#7 Ch#34 HSCIN pl#4 [Y2] id#5 sig#0 [ADC+] (34 Y2P-05)
+  35, 4, 7, 0 !ADC ROC#1 Sl#7 Ch#35 HSCIN pl#4 [Y2] id#7 sig#0 [ADC+] (35 Y2P-07)
+  36, 4, 9, 0 !ADC ROC#1 Sl#7 Ch#36 HSCIN pl#4 [Y2] id#9 sig#0 [ADC+] (36 Y2P-09)
+!  37 !ADC ROC#1 Sl#7 Ch#37 unused
+!  38 !ADC ROC#1 Sl#7 Ch#38 unused
+!  39 !ADC ROC#1 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#1 Sl#7 Ch#40 HSCIN pl#4 [Y2] id#2 sig#0 [ADC+] (40 Y2P-02)
+  41, 4, 4, 0 !ADC ROC#1 Sl#7 Ch#41 HSCIN pl#4 [Y2] id#4 sig#0 [ADC+] (41 Y2P-04)
+  42, 4, 6, 0 !ADC ROC#1 Sl#7 Ch#42 HSCIN pl#4 [Y2] id#6 sig#0 [ADC+] (42 Y2P-06)
+  43, 4, 8, 0 !ADC ROC#1 Sl#7 Ch#43 HSCIN pl#4 [Y2] id#8 sig#0 [ADC+] (43 Y2P-08)
+  44, 4, 10, 0 !ADC ROC#1 Sl#7 Ch#44 HSCIN pl#4 [Y2] id#10 sig#0 [ADC+] (44 Y2P-10)
+!  45 !ADC ROC#1 Sl#7 Ch#45 unused
+!  46 !ADC ROC#1 Sl#7 Ch#46 unused
+!  47 !ADC ROC#1 Sl#7 Ch#47 unused
+  48, 4, 1, 1 !ADC ROC#1 Sl#7 Ch#48 HSCIN pl#4 [Y2] id#1 sig#1 [ADC-] (48 Y2N-01)
+  49, 4, 3, 1 !ADC ROC#1 Sl#7 Ch#49 HSCIN pl#4 [Y2] id#3 sig#1 [ADC-] (49 Y2N-03)
+  50, 4, 5, 1 !ADC ROC#1 Sl#7 Ch#50 HSCIN pl#4 [Y2] id#5 sig#1 [ADC-] (50 Y2N-05)
+  51, 4, 7, 1 !ADC ROC#1 Sl#7 Ch#51 HSCIN pl#4 [Y2] id#7 sig#1 [ADC-] (51 Y2N-07)
+  52, 4, 9, 1 !ADC ROC#1 Sl#7 Ch#52 HSCIN pl#4 [Y2] id#9 sig#1 [ADC-] (52 Y2N-09)
+!  53 !ADC ROC#1 Sl#7 Ch#53 unused
+!  54 !ADC ROC#1 Sl#7 Ch#54 unused
+!  55 !ADC ROC#1 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#1 Sl#7 Ch#56 HSCIN pl#4 [Y2] id#2 sig#1 [ADC-] (56 Y2N-02)
+  57, 4, 4, 1 !ADC ROC#1 Sl#7 Ch#57 HSCIN pl#4 [Y2] id#4 sig#1 [ADC-] (57 Y2N-04)
+  58, 4, 6, 1 !ADC ROC#1 Sl#7 Ch#58 HSCIN pl#4 [Y2] id#6 sig#1 [ADC-] (58 Y2N-06)
+  59, 4, 8, 1 !ADC ROC#1 Sl#7 Ch#59 HSCIN pl#4 [Y2] id#8 sig#1 [ADC-] (59 Y2N-08)
+  60, 4, 10, 1 !ADC ROC#1 Sl#7 Ch#60 HSCIN pl#4 [Y2] id#10 sig#1 [ADC-] (60 Y2N-10)
+!  61 !ADC ROC#1 Sl#7 Ch#61 unused
+!  62 !ADC ROC#1 Sl#7 Ch#62 unused
+!  63 !ADC ROC#1 Sl#7 Ch#63 unused
+!
+!---------------------------------------------------------------------------------
+    detector= 4 !HCAL
+!
+ Slot= 1 ! ADC  
+   0, 1, 1  !ADC ROC#1 Sl#1 Ch#0 HCAL col#1 row#1 (0 A-01)
+   1, 1, 2  !ADC ROC#1 Sl#1 Ch#1 HCAL col#1 row#2 (1 A-02)
+   2, 1, 3  !ADC ROC#1 Sl#1 Ch#2 HCAL col#1 row#3 (2 A-03)
+   3, 1, 4  !ADC ROC#1 Sl#1 Ch#3 HCAL col#1 row#4 (3 A-04)
+   4, 1, 5  !ADC ROC#1 Sl#1 Ch#4 HCAL col#1 row#5 (4 A-05)
+   5, 1, 6  !ADC ROC#1 Sl#1 Ch#5 HCAL col#1 row#6 (5 A-06)
+   6, 1, 7  !ADC ROC#1 Sl#1 Ch#6 HCAL col#1 row#7 (6 A-07)
+   7, 1, 8  !ADC ROC#1 Sl#1 Ch#7 HCAL col#1 row#8 (7 A-08)
+   8, 1, 9  !ADC ROC#1 Sl#1 Ch#8 HCAL col#1 row#9 (8 A-09)
+   9, 1, 10 !ADC ROC#1 Sl#1 Ch#9 HCAL col#1 row#10 (9 A-10)
+  10, 1, 11 !ADC ROC#1 Sl#1 Ch#10 HCAL col#1 row#11 (10 A-11)
+  11, 1, 12 !ADC ROC#1 Sl#1 Ch#11 HCAL col#1 row#12 (11 A-12)
+  12, 1, 13 !ADC ROC#1 Sl#1 Ch#12 HCAL col#1 row#13 (12 A-13)
+!   13 !ADC ROC#1 Sl#1 Ch#13 unused
+!   14 !ADC ROC#1 Sl#1 Ch#14 unused
+!   15 !ADC ROC#1 Sl#1 Ch#15 unused
+  16, 2, 1  !ADC ROC#1 Sl#1 Ch#16 HCAL col#2 row#1 (16 B-01)
+  17, 2, 2  !ADC ROC#1 Sl#1 Ch#17 HCAL col#2 row#2 (17 B-02)
+  18, 2, 3  !ADC ROC#1 Sl#1 Ch#18 HCAL col#2 row#3 (18 B-03)
+  19, 2, 4  !ADC ROC#1 Sl#1 Ch#19 HCAL col#2 row#4 (19 B-04)
+  20, 2, 5  !ADC ROC#1 Sl#1 Ch#20 HCAL col#2 row#5 (20 B-05)
+  21, 2, 6  !ADC ROC#1 Sl#1 Ch#21 HCAL col#2 row#6 (21 B-06)
+  22, 2, 7  !ADC ROC#1 Sl#1 Ch#22 HCAL col#2 row#7 (22 B-07)
+  23, 2, 8  !ADC ROC#1 Sl#1 Ch#23 HCAL col#2 row#8 (23 B-08)
+  24, 2, 9  !ADC ROC#1 Sl#1 Ch#24 HCAL col#2 row#9 (24 B-09)
+  25, 2, 10 !ADC ROC#1 Sl#1 Ch#25 HCAL col#2 row#10 (25 B-10)
+  26, 2, 11 !ADC ROC#1 Sl#1 Ch#26 HCAL col#2 row#11 (26 B-11)
+  27, 2, 12 !ADC ROC#1 Sl#1 Ch#27 HCAL col#2 row#12 (27 B-12)
+  28, 2, 13 !ADC ROC#1 Sl#1 Ch#28 HCAL col#2 row#13 (28 B-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+  32, 3, 1  !ADC ROC#1 Sl#1 Ch#32 HCAL col#3 row#1 (32 C-01)
+  33, 3, 2  !ADC ROC#1 Sl#1 Ch#33 HCAL col#3 row#2 (33 C-02)
+  34, 3, 3  !ADC ROC#1 Sl#1 Ch#34 HCAL col#3 row#3 (34 C-03)
+  35, 3, 4  !ADC ROC#1 Sl#1 Ch#35 HCAL col#3 row#4 (35 C-04)
+  36, 3, 5  !ADC ROC#1 Sl#1 Ch#36 HCAL col#3 row#5 (36 C-05)
+  37, 3, 6  !ADC ROC#1 Sl#1 Ch#37 HCAL col#3 row#6 (37 C-06)
+  38, 3, 7  !ADC ROC#1 Sl#1 Ch#38 HCAL col#3 row#7 (38 C-07)
+  39, 3, 8  !ADC ROC#1 Sl#1 Ch#39 HCAL col#3 row#8 (39 C-08)
+  40, 3, 9  !ADC ROC#1 Sl#1 Ch#40 HCAL col#3 row#9 (40 C-09)
+  41, 3, 10 !ADC ROC#1 Sl#1 Ch#41 HCAL col#3 row#10 (41 C-10)
+  42, 3, 11 !ADC ROC#1 Sl#1 Ch#42 HCAL col#3 row#11 (42 C-11)
+  43, 3, 12 !ADC ROC#1 Sl#1 Ch#43 HCAL col#3 row#12 (43 C-12)
+  44, 3, 13 !ADC ROC#1 Sl#1 Ch#44 HCAL col#3 row#13 (44 C-13)
+!  45 !ADC ROC#1 Sl#1 Ch#45 unused
+!  46 !ADC ROC#1 Sl#1 Ch#46 unused
+!  47 !ADC ROC#1 Sl#1 Ch#47 unused
+  48, 4, 1  !ADC ROC#1 Sl#1 Ch#48 HCAL col#4 row#1 (48 D-01)
+  49, 4, 2  !ADC ROC#1 Sl#1 Ch#49 HCAL col#4 row#2 (49 D-02)
+  50, 4, 3  !ADC ROC#1 Sl#1 Ch#50 HCAL col#4 row#3 (50 D-03)
+  51, 4, 4  !ADC ROC#1 Sl#1 Ch#51 HCAL col#4 row#4 (51 D-04)
+  52, 4, 5  !ADC ROC#1 Sl#1 Ch#52 HCAL col#4 row#5 (52 D-05)
+  53, 4, 6  !ADC ROC#1 Sl#1 Ch#53 HCAL col#4 row#6 (53 D-06)
+  54, 4, 7  !ADC ROC#1 Sl#1 Ch#54 HCAL col#4 row#7 (54 D-07)
+  55, 4, 8  !ADC ROC#1 Sl#1 Ch#55 HCAL col#4 row#8 (55 D-08)
+  56, 4, 9  !ADC ROC#1 Sl#1 Ch#56 HCAL col#4 row#9 (56 D-09)
+  57, 4, 10 !ADC ROC#1 Sl#1 Ch#57 HCAL col#4 row#10 (57 D-10)
+  58, 4, 11 !ADC ROC#1 Sl#1 Ch#58 HCAL col#4 row#11 (58 D-11)
+  59, 4, 12 !ADC ROC#1 Sl#1 Ch#59 HCAL col#4 row#12 (59 D-12)
+  60, 4, 13 !ADC ROC#1 Sl#1 Ch#60 HCAL col#4 row#13 (60 D-13)
+!
+!  61 !ADC ROC#1 Sl#1 Ch#61 unused
+
+    detector= 5    !HMISC - scintillator (ADCs) - behind calorimeter
+  62, 2, 1, 0 !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+  63, 2, 2, 0 !
+!
+detector= 4 !HCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+  0, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#0 HCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#1 HCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#2 HCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#3 HCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#4 HCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#5 HCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#6 HCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#7 HCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#1 Sl#5 Ch#8 HCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#1 Sl#5 Ch#9 HCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#1 Sl#5 Ch#10 HCAL col#1 row#11 (10 An-11)
+  11, 1, 12, 1 !ADC ROC#1 Sl#5 Ch#11 HCAL col#1 row#12 (11 An-112)
+  12, 1, 13, 1 !ADC ROC#1 Sl#5 Ch#12 HCAL col#1 row#13 (12 An-13)
+!  13 !ADC ROC#1 Sl#5 Ch#13 unused
+!  14 !ADC ROC#1 Sl#5 Ch#14 unused
+!  15 !ADC ROC#1 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#1 Sl#5 Ch#16 HCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#1 Sl#5 Ch#17 HCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#1 Sl#5 Ch#18 HCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#1 Sl#5 Ch#19 HCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#1 Sl#5 Ch#20 HCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#1 Sl#5 Ch#21 HCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#1 Sl#5 Ch#22 HCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#1 Sl#5 Ch#23 HCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#1 Sl#5 Ch#24 HCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#1 Sl#5 Ch#25 HCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#1 Sl#5 Ch#26 HCAL col#2 row#11 (26 Bn-11)
+  27, 2, 12, 1 !ADC ROC#1 Sl#5 Ch#27 HCAL col#2 row#12 (27 Bn-12)
+  28, 2, 13, 1 !ADC ROC#1 Sl#5 Ch#28 HCAL col#2 row#13 (28 Bn-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+!
+!==================================================================
+!!!!!!!!!!!!!!!!!!!!!!! AEROGEL ADC !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+    detector = 7
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+!Slot= 5 ! ADC  
+! May be will use spare channels HCAL ADC for aerogel (Hamlet, 2002/10/16)
+!48, 1, 1, 0 !ADC ROC#1 Sl#5 Ch#48 signal pos 1
+!49, 1, 2, 0 !ADC ROC#1 Sl#5 Ch#48signal pos 2
+!50, 1, 3, 0 !ADC ROC#1 Sl#5 Ch#50 signal pos 3
+!51, 1, 4, 0 !ADC ROC#1 Sl#5 Ch#51 signal pos 4
+!52, 1, 5, 0 !ADC ROC#1 Sl#5 Ch#52 signal pos 5
+!53, 1, 6, 0 !ADC ROC#1 Sl#5 Ch#53 signal pos 6
+!54, 1, 7, 0 !ADC ROC#1 Sl#5 Ch#54 signal pos 7
+!55, 1, 8, 0 !ADC ROC#1 Sl#5 Ch#55 signal pos 8
+!56, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#56  signal neg 1
+!57, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#57  signal neg 2
+!58, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#58  signal neg 3
+!59, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#59  signal neg 4
+!60, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#60  signal neg 5
+!61, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#61  signal neg 6
+!62, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#62  signal neg 7
+!63, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#63  signal neg 8
+!
+!   detector = 7
+!    Nsubadd= 64
+!    MASK= 3FFFx
+!    BSUB= 17
+
+  Slot= 11 ! ADC  
+! Additional new ADC for aerogel (Hamlet, 2002/10/17)
+   0, 1, 1, 0 !ADC ROC#1 Sl#11 Ch#0 signal pos 1
+   1, 1, 2, 0 !ADC ROC#1 Sl#11 Ch#1 signal pos 2
+   2, 1, 3, 0 !ADC ROC#1 Sl#11 Ch#2 signal pos 3
+   3, 1, 4, 0 !ADC ROC#1 Sl#11 Ch#3 signal pos 4
+   4, 1, 5, 0 !ADC ROC#1 Sl#11 Ch#4 signal pos 5
+   5, 1, 6, 0 !ADC ROC#1 Sl#11 Ch#5 signal pos 6
+   6, 1, 7, 0 !ADC ROC#1 Sl#11 Ch#6 signal pos 7
+   7, 1, 8, 0 !ADC ROC#1 Sl#11 Ch#7 signal pos 8
+   8, 1, 1, 1 !ADC ROC#1 Sl#11 Ch#8  signal neg 1
+   9, 1, 2, 1 !ADC ROC#1 Sl#11 Ch#9  signal neg 2
+  10, 1, 3, 1 !ADC ROC#1 Sl#11 Ch#10  signal neg 3
+  11, 1, 4, 1 !ADC ROC#1 Sl#11 Ch#11  signal neg 4
+  12, 1, 5, 1 !ADC ROC#1 Sl#11 Ch#12  signal neg 5
+  13, 1, 6, 1 !ADC ROC#1 Sl#11 Ch#13  signal neg 6
+  14, 1, 7, 1 !ADC ROC#1 Sl#11 Ch#14  signal neg 7
+  15, 1, 8, 1 !ADC ROC#1 Sl#11 Ch#15  signal neg 8
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!-----------------------------------------------------------------
+    detector= 3   !HCER
+!
+  Slot= 3
+   0, 1, 1 !ADC  ROC#1 Sl#3 Ch#0 HCER tube#1 (C1)
+   1, 1, 2 !ADC  ROC#1 Sl#3 Ch#1 HCER tube#2 (C2)
+!   2 !ADC ROC#1 Sl#3 Ch#2 unused
+!   3 !ADC ROC#1 Sl#3 Ch#3 unused
+!   4 !ADC ROC#1 Sl#3 Ch#4 unused
+!   5 !ADC ROC#1 Sl#3 Ch#5 unused
+!   6 !ADC ROC#1 Sl#3 Ch#6 unused
+!   7 !ADC ROC#1 Sl#3 Ch#7 unused
+!   8 !ADC ROC#1 Sl#3 Ch#8 unused
+!   9 !ADC ROC#1 Sl#3 Ch#9 unused
+!   10 !ADC ROC#1 Sl#3 Ch#10 unused
+!   11 !ADC ROC#1 Sl#3 Ch#11 unused
+!   12 !ADC ROC#1 Sl#3 Ch#12 unused
+!   13 !ADC ROC#1 Sl#3 Ch#13 unused
+!   14 !ADC ROC#1 Sl#3 Ch#14 unused
+!   15 !ADC ROC#1 Sl#3 Ch#15 unused
+!   16 !ADC ROC#1 Sl#3 Ch#16 unused
+!   17 !ADC ROC#1 Sl#3 Ch#17 unused
+!   18 !ADC ROC#1 Sl#3 Ch#18 unused
+!   19 !ADC ROC#1 Sl#3 Ch#19 unused
+!   20 !ADC ROC#1 Sl#3 Ch#20 unused
+!   21 !ADC ROC#1 Sl#3 Ch#21 unused
+!   22 !ADC ROC#1 Sl#3 Ch#22 unused
+!   23 !ADC ROC#1 Sl#3 Ch#23 unused
+!   24 !ADC ROC#1 Sl#3 Ch#24 unused
+!   25 !ADC ROC#1 Sl#3 Ch#25 unused
+!   26 !ADC ROC#1 Sl#3 Ch#26 unused
+!   27 !ADC ROC#1 Sl#3 Ch#27 unused
+!   28 !ADC ROC#1 Sl#3 Ch#28 unused
+!   29 !ADC ROC#1 Sl#3 Ch#29 unused
+!   30 !ADC ROC#1 Sl#3 Ch#30 unused
+!   31 !ADC ROC#1 Sl#3 Ch#31 unused
+!   32 !ADC ROC#1 Sl#3 Ch#32 unused
+!   33 !ADC ROC#1 Sl#3 Ch#33 unused
+!   34 !ADC ROC#1 Sl#3 Ch#34 unused
+!   35 !ADC ROC#1 Sl#3 Ch#35 unused
+!   36 !ADC ROC#1 Sl#3 Ch#36 unused
+!   37 !ADC ROC#1 Sl#3 Ch#37 unused
+!   38 !ADC ROC#1 Sl#3 Ch#38 unused
+!   39 !ADC ROC#1 Sl#3 Ch#39 unused
+!   40 !ADC ROC#1 Sl#3 Ch#40 unused
+!   41 !ADC ROC#1 Sl#3 Ch#41 unused
+!   42 !ADC ROC#1 Sl#3 Ch#42 unused
+!   43 !ADC ROC#1 Sl#3 Ch#43 unused
+!   44 !ADC ROC#1 Sl#3 Ch#44 unused
+!   45 !ADC ROC#1 Sl#3 Ch#45 unused
+!   46 !ADC ROC#1 Sl#3 Ch#46 unused
+!   47 !ADC ROC#1 Sl#3 Ch#47 unused
+!detector= 6 ! GMISC 
+!!! Use "plane" 2 for the PMT's on the floor (BLM's)
+!48, 2, 1, 0 ! Special PMT signal ch #1
+!49, 2, 2, 0 ! Special PMT signal ch #1
+!50, 2, 3, 0 ! Special PMT signal ch #1
+!51, 2, 4, 0 ! Special PMT signal ch #1
+!52, 2, 5, 0 ! Special PMT signal ch #1
+!53, 2, 6, 0 ! Special PMT signal ch #1
+!54, 2, 7, 0 ! Special PMT signal ch #1
+!55, 2, 8, 0 ! Special PMT signal ch #1
+!   48 !ADC ROC#1 Sl#3 Ch#48 unused
+!   49 !ADC ROC#1 Sl#3 Ch#49 unused
+!   50 !ADC ROC#1 Sl#3 Ch#50 unused
+!   51 !ADC ROC#1 Sl#3 Ch#51 unused
+!   52 !ADC ROC#1 Sl#3 Ch#52 unused
+!   53 !ADC ROC#1 Sl#3 Ch#53 unused
+!   54 !ADC ROC#1 Sl#3 Ch#54 unused
+!   55 !ADC ROC#1 Sl#3 Ch#55 unused
+!   56 !ADC ROC#1 Sl#3 Ch#56 unused
+!   57 !ADC ROC#1 Sl#3 Ch#57 unused
+!   58 !ADC ROC#1 Sl#3 Ch#58 unused
+!   59 !ADC ROC#1 Sl#3 Ch#59 unused
+!   60 !ADC ROC#1 Sl#3 Ch#60 unused
+!   61 !ADC ROC#1 Sl#3 Ch#61 unused
+!   62 !ADC ROC#1 Sl#3 Ch#62 unused
+!   63 !ADC ROC#1 Sl#3 Ch#63 unused
+!
+!
+  detector= 6 ! GMISC
+!
+  Slot= 13
+!
+!  0, 2, 1, 0 !ADC ROC#1 Sl#15 Ch#0
+!  1, 2, 2, 0 !ADC ROC#1 Sl#15 Ch#1
+!  2, 2, 3, 0 !ADC ROC#1 Sl#15 Ch#2
+!  3, 2, 4, 0 !ADC ROC#1 Sl#15 Ch#3
+  4, 2, 5, 0 !ADC ROC#1 Sl#15 Ch#4 H00A X+
+  5, 2, 6, 0 !ADC ROC#1 Sl#15 Ch#5 H00A X-
+  6, 2, 7, 0 !ADC ROC#1 Sl#15 Ch#6 H00A Y+
+  7, 2, 8, 0 !ADC ROC#1 Sl#15 Ch#7 H00A Y-
+  8, 2, 9, 0 !ADC ROC#1 Sl#15 Ch#8 H00B X+
+  9, 2, 10, 0 !ADC ROC#1 Sl#15 Ch#9 H00B X-
+  10, 2, 11, 0 !ADC ROC#1 Sl#15 Ch#10 H00B Y+
+  11, 2, 12, 0 !ADC ROC#1 Sl#15 Ch#11 H00B Y-
+!  12, 2, 13, 0 !ADC ROC#1 Sl#15 Ch#12 Fast Raster X-sync
+!  13, 2, 14, 0 !ADC ROC#1 Sl#15 Ch#13 Fast Raster X-signal
+!  14, 2, 15, 0 !ADC ROC#1 Sl#15 Ch#14 Fast Raster Y-sync
+!  15, 2, 16, 0 !ADC ROC#1 Sl#15 Ch#15 Fast Raster Y-signal
+! mkj switch x and y Apr 9,2003
+  14, 2, 13, 0 !ADC ROC#1 Sl#15 Ch#14 Fast Raster X-sync
+  15, 2, 14, 0 !ADC ROC#1 Sl#15 Ch#15 Fast Raster X-signal
+  12, 2, 15, 0 !ADC ROC#1 Sl#15 Ch#12 Fast Raster Y-sync
+  13, 2, 16, 0 !ADC ROC#1 Sl#15 Ch#13 Fast Raster Y-signal
+  16, 2, 17, 0  !ADC ROC#1 Sl#15 Ch#16 H00C X+
+  17, 2, 18, 0  !ADC ROC#1 Sl#15 Ch#17 H00C X-
+  18, 2, 19, 0  !ADC ROC#1 Sl#15 Ch#18 H00C Y+
+  19, 2, 20, 0  !ADC ROC#1 Sl#15 Ch#19 H00C Y-
+!   20 !ADC ROC#1 Sl#15 Ch#20 unused
+!   21 !ADC ROC#1 Sl#15 Ch#21 unused
+  22, 2, 23, 0  !ADC ROC#1 Sl#15 Ch#22 Raster gate
+!   23 !ADC ROC#1 Sl#15 Ch#23 unused
+!   24 !ADC ROC#1 Sl#15 Ch#24 unused
+!   25 !ADC ROC#1 Sl#15 Ch#25 unused
+!   26 !ADC ROC#1 Sl#15 Ch#26 unused
+!   27 !ADC ROC#1 Sl#15 Ch#27 unused
+!   28 !ADC ROC#1 Sl#15 Ch#28 unused
+!   29 !ADC ROC#1 Sl#15 Ch#29 unused
+!   30 !ADC ROC#1 Sl#15 Ch#30 unused
+!   31 !ADC ROC#1 Sl#15 Ch#31 unused
+   32, 2, 32, 0  ! Paul Gueye
+   33, 2, 33, 0  ! Paul Gueye
+   34, 2, 34, 0  ! Paul Gueye
+   35, 2, 35, 0  ! Paul Gueye
+   36, 2, 36, 0  ! Paul Gueye
+   37, 2, 37, 0  ! Paul Gueye
+   38, 2, 38, 0  ! Paul Gueye
+   39, 2, 39, 0  ! Paul Gueye
+   40, 2, 40, 0  ! Paul Gueye
+   41, 2, 41, 0  ! Paul Gueye
+   42, 2, 42, 0  ! Paul Gueye
+   43, 2, 43, 0  ! Paul Gueye
+   44, 2, 44, 0  ! Paul Gueye
+   45, 2, 45, 0  ! Paul Gueye
+   46, 2, 46, 0  ! Paul Gueye
+   47, 2, 47, 0  ! Paul Gueye
+!   32 !ADC ROC#1 Sl#15 Ch#32 unused
+!   33 !ADC ROC#1 Sl#15 Ch#33 unused
+!   34 !ADC ROC#1 Sl#15 Ch#34 unused
+!   35 !ADC ROC#1 Sl#15 Ch#35 unused
+!   36 !ADC ROC#1 Sl#15 Ch#36 unused
+!   37 !ADC ROC#1 Sl#15 Ch#37 unused
+!   38 !ADC ROC#1 Sl#15 Ch#38 unused
+!   39 !ADC ROC#1 Sl#15 Ch#39 unused
+!   40 !ADC ROC#1 Sl#15 Ch#40 unused
+!   41 !ADC ROC#1 Sl#15 Ch#41 unused
+!   42 !ADC ROC#1 Sl#15 Ch#42 unused
+!   43 !ADC ROC#1 Sl#15 Ch#43 unused
+!   44 !ADC ROC#1 Sl#15 Ch#44 unused
+!   45 !ADC ROC#1 Sl#15 Ch#45 unused
+!   46 !ADC ROC#1 Sl#15 Ch#46 unused
+!   47 !ADC ROC#1 Sl#15 Ch#47 unused
+!   48 !ADC ROC#1 Sl#15 Ch#48 unused
+!   49 !ADC ROC#1 Sl#15 Ch#49 unused
+!   50 !ADC ROC#1 Sl#15 Ch#50 unused
+!   51 !ADC ROC#1 Sl#15 Ch#51 unused
+!   52 !ADC ROC#1 Sl#15 Ch#52 unused
+!   53 !ADC ROC#1 Sl#15 Ch#53 unused
+!   54 !ADC ROC#1 Sl#15 Ch#54 unused
+!   55 !ADC ROC#1 Sl#15 Ch#55 unused
+!   56 !ADC ROC#1 Sl#15 Ch#56 unused
+!   57 !ADC ROC#1 Sl#15 Ch#57 unused
+!   58 !ADC ROC#1 Sl#15 Ch#58 unused
+!   59 !ADC ROC#1 Sl#15 Ch#59 unused
+!   60 !ADC ROC#1 Sl#15 Ch#60 unused
+!   61 !ADC ROC#1 Sl#15 Ch#61 unused
+!   62 !ADC ROC#1 Sl#15 Ch#62 unused
+!   63 !ADC ROC#1 Sl#15 Ch#63 unused
+!
+!---------------------------------------------------------------------
+!=============================== SOS MAP =============================
+!............ This part copy from replay99 (Hamlet,19 Dec'02)............
+!
+!  REAL map for SOS Drift Chambers (SDC); J.R.Arrington 20-Mar-1995
+!                                               
+     ROC= 4   !ReadOutController (crate) for SOS (fbsos)
+!
+       Nsubadd= 96	!assume 96 channel modules
+       MASK= FFFFx      !hex mask - assume LeCroy masking (lowest 13 bits)
+       BSUB= 17         !begin channel info with bit#17
+!
+       detector= 11     !SDC
+!
+       slot= 1          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 1, 1	!chamber 1, U plane, 48 wires.
+ 1, 1, 2
+ 2, 1, 3
+ 3, 1, 4
+ 4, 1, 5
+ 5, 1, 6
+ 6, 1, 7
+ 7, 1, 8
+ 8, 1, 9
+ 9, 1, 10
+ 10, 1, 11
+ 11, 1, 12
+ 12, 1, 13
+ 13, 1, 14
+ 14, 1, 15
+ 15, 1, 16
+ 16, 1, 17
+ 17, 1, 18
+ 18, 1, 19
+ 19, 1, 20
+ 20, 1, 21
+ 21, 1, 22
+ 22, 1, 23
+ 23, 1, 24
+ 24, 1, 25
+ 25, 1, 26
+ 26, 1, 27
+ 27, 1, 28
+ 28, 1, 29
+ 29, 1, 30
+ 30, 1, 31
+ 31, 1, 32
+ 32, 1, 33
+ 33, 1, 34
+ 34, 1, 35
+ 35, 1, 36
+ 36, 1, 37
+ 37, 1, 38
+ 38, 1, 39
+ 39, 1, 40
+ 40, 1, 41
+ 41, 1, 42
+ 42, 1, 43
+ 43, 1, 44
+ 44, 1, 45
+ 45, 1, 46
+ 46, 1, 47
+ 47, 1, 48
+ 48, 2, 1	!chamber 1, U' plane, 48 wires.
+ 49, 2, 2
+ 50, 2, 3
+ 51, 2, 4
+ 52, 2, 5
+ 53, 2, 6
+ 54, 2, 7
+ 55, 2, 8
+ 56, 2, 9
+ 57, 2, 10
+ 58, 2, 11
+ 59, 2, 12
+ 60, 2, 13
+ 61, 2, 14
+ 62, 2, 15
+ 63, 2, 16
+ 64, 2, 17
+ 65, 2, 18
+ 66, 2, 19
+ 67, 2, 20
+ 68, 2, 21
+ 69, 2, 22
+ 70, 2, 23
+ 71, 2, 24
+ 72, 2, 25
+ 73, 2, 26
+ 74, 2, 27
+ 75, 2, 28
+ 76, 2, 29
+ 77, 2, 30
+ 78, 2, 31
+ 79, 2, 32
+ 80, 2, 33
+ 81, 2, 34
+ 82, 2, 35
+ 83, 2, 36
+ 84, 2, 37
+ 85, 2, 38
+ 86, 2, 39
+ 87, 2, 40
+ 88, 2, 41
+ 89, 2, 42
+ 90, 2, 43
+ 91, 2, 44
+ 92, 2, 45
+ 93, 2, 46
+ 94, 2, 47
+ 95, 2, 48
+!
+       slot= 2          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 5, 1	!chamber 1, V plane, 48 wires.
+ 1, 5, 2
+ 2, 5, 3
+ 3, 5, 4
+ 4, 5, 5
+ 5, 5, 6
+ 6, 5, 7
+ 7, 5, 8
+ 8, 5, 9
+ 9, 5, 10
+ 10, 5, 11
+ 11, 5, 12
+ 12, 5, 13
+ 13, 5, 14
+ 14, 5, 15
+ 15, 5, 16
+ 16, 5, 17
+ 17, 5, 18
+ 18, 5, 19
+ 19, 5, 20
+ 20, 5, 21
+ 21, 5, 22
+ 22, 5, 23
+ 23, 5, 24
+ 24, 5, 25
+ 25, 5, 26
+ 26, 5, 27
+ 27, 5, 28
+ 28, 5, 29
+ 29, 5, 30
+ 30, 5, 31
+ 31, 5, 32
+ 32, 5, 33
+ 33, 5, 34
+ 34, 5, 35
+ 35, 5, 36
+ 36, 5, 37
+ 37, 5, 38
+ 38, 5, 39
+ 39, 5, 40
+ 40, 5, 41
+ 41, 5, 42
+ 42, 5, 43
+ 43, 5, 44
+ 44, 5, 45
+ 45, 5, 46
+ 46, 5, 47
+ 47, 5, 48
+ 48, 6, 1	!chamber 1, V' plane, 48 wires.
+ 49, 6, 2
+ 50, 6, 3
+ 51, 6, 4
+ 52, 6, 5
+ 53, 6, 6
+ 54, 6, 7
+ 55, 6, 8
+ 56, 6, 9
+ 57, 6, 10
+ 58, 6, 11
+ 59, 6, 12
+ 60, 6, 13
+ 61, 6, 14
+ 62, 6, 15
+ 63, 6, 16
+ 64, 6, 17
+ 65, 6, 18
+ 66, 6, 19
+ 67, 6, 20
+ 68, 6, 21
+ 69, 6, 22
+ 70, 6, 23
+ 71, 6, 24
+ 72, 6, 25
+ 73, 6, 26
+ 74, 6, 27
+ 75, 6, 28
+ 76, 6, 29
+ 77, 6, 30
+ 78, 6, 31
+ 79, 6, 32
+ 80, 6, 33
+ 81, 6, 34
+ 82, 6, 35
+ 83, 6, 36
+ 84, 6, 37
+ 85, 6, 38
+ 86, 6, 39
+ 87, 6, 40
+ 88, 6, 41
+ 89, 6, 42
+ 90, 6, 43
+ 91, 6, 44
+ 92, 6, 45
+ 93, 6, 46
+ 94, 6, 47
+ 95, 6, 48
+!
+       slot= 4          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 3, 1	!chamber 1, X plane, 64 wires.
+ 1, 3, 2
+ 2, 3, 3
+ 3, 3, 4
+ 4, 3, 5
+ 5, 3, 6
+ 6, 3, 7
+ 7, 3, 8
+ 8, 3, 9
+ 9, 3, 10
+ 10, 3, 11
+ 11, 3, 12
+ 12, 3, 13
+ 13, 3, 14
+ 14, 3, 15
+ 15, 3, 16
+ 16, 3, 17
+ 17, 3, 18
+ 18, 3, 19
+ 19, 3, 20
+ 20, 3, 21
+ 21, 3, 22
+ 22, 3, 23
+ 23, 3, 24
+ 24, 3, 25
+ 25, 3, 26
+ 26, 3, 27
+ 27, 3, 28
+ 28, 3, 29
+ 29, 3, 30
+ 30, 3, 31
+ 31, 3, 32
+ 32, 3, 33
+ 33, 3, 34
+ 34, 3, 35
+ 35, 3, 36
+ 36, 3, 37
+ 37, 3, 38
+ 38, 3, 39
+ 39, 3, 40
+ 40, 3, 41
+ 41, 3, 42
+ 42, 3, 43
+ 43, 3, 44
+ 44, 3, 45
+ 45, 3, 46
+ 46, 3, 47
+ 47, 3, 48
+ 48, 3, 49
+ 49, 3, 50
+ 50, 3, 51
+ 51, 3, 52
+ 52, 3, 53
+ 53, 3, 54
+ 54, 3, 55
+ 55, 3, 56
+ 56, 3, 57
+ 57, 3, 58
+ 58, 3, 59
+ 59, 3, 60
+ 60, 3, 61
+ 61, 3, 62
+ 62, 3, 63
+ 63, 3, 64
+!
+       slot= 5          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 4, 1	!chamber 1, X' plane, 64 wires.
+ 1, 4, 2
+ 2, 4, 3
+ 3, 4, 4
+ 4, 4, 5
+ 5, 4, 6
+ 6, 4, 7
+ 7, 4, 8
+ 8, 4, 9
+ 9, 4, 10
+ 10, 4, 11
+ 11, 4, 12
+ 12, 4, 13
+ 13, 4, 14
+ 14, 4, 15
+ 15, 4, 16
+ 16, 4, 17
+ 17, 4, 18
+ 18, 4, 19
+ 19, 4, 20
+ 20, 4, 21
+ 21, 4, 22
+ 22, 4, 23
+ 23, 4, 24
+ 24, 4, 25
+ 25, 4, 26
+ 26, 4, 27
+ 27, 4, 28
+ 28, 4, 29
+ 29, 4, 30
+ 30, 4, 31
+ 31, 4, 32
+ 32, 4, 33
+ 33, 4, 34
+ 34, 4, 35
+ 35, 4, 36
+ 36, 4, 37
+ 37, 4, 38
+ 38, 4, 39
+ 39, 4, 40
+ 40, 4, 41
+ 41, 4, 42
+ 42, 4, 43
+ 43, 4, 44
+ 44, 4, 45
+ 45, 4, 46
+ 46, 4, 47
+ 47, 4, 48
+ 48, 4, 49
+ 49, 4, 50
+ 50, 4, 51
+ 51, 4, 52
+ 52, 4, 53
+ 53, 4, 54
+ 54, 4, 55
+ 55, 4, 56
+ 56, 4, 57
+ 57, 4, 58
+ 58, 4, 59
+ 59, 4, 60
+ 60, 4, 61
+ 61, 4, 62
+ 62, 4, 63
+ 63, 4, 64
+!
+       slot= 8          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 7, 1	!chamber 2, U plane, 48 wires.
+ 1, 7, 2
+ 2, 7, 3
+ 3, 7, 4
+ 4, 7, 5
+ 5, 7, 6
+ 6, 7, 7
+ 7, 7, 8
+ 8, 7, 9
+ 9, 7, 10
+ 10, 7, 11
+ 11, 7, 12
+ 12, 7, 13
+ 13, 7, 14
+ 14, 7, 15
+ 15, 7, 16
+ 16, 7, 17
+ 17, 7, 18
+ 18, 7, 19
+ 19, 7, 20
+ 20, 7, 21
+ 21, 7, 22
+ 22, 7, 23
+ 23, 7, 24
+ 24, 7, 25
+ 25, 7, 26
+ 26, 7, 27
+ 27, 7, 28
+ 28, 7, 29
+ 29, 7, 30
+ 30, 7, 31
+ 31, 7, 32
+ 32, 7, 33
+ 33, 7, 34
+ 34, 7, 35
+ 35, 7, 36
+ 36, 7, 37
+ 37, 7, 38
+ 38, 7, 39
+ 39, 7, 40
+ 40, 7, 41
+ 41, 7, 42
+ 42, 7, 43
+ 43, 7, 44
+ 44, 7, 45
+ 45, 7, 46
+ 46, 7, 47
+ 47, 7, 48
+ 48, 8, 1	!chamber 2, U' plane, 48 wires.
+ 49, 8, 2
+ 50, 8, 3
+ 51, 8, 4
+ 52, 8, 5
+ 53, 8, 6
+ 54, 8, 7
+ 55, 8, 8
+ 56, 8, 9
+ 57, 8, 10
+ 58, 8, 11
+ 59, 8, 12
+ 60, 8, 13
+ 61, 8, 14
+ 62, 8, 15
+ 63, 8, 16
+ 64, 8, 17
+ 65, 8, 18
+ 66, 8, 19
+ 67, 8, 20
+ 68, 8, 21
+ 69, 8, 22
+ 70, 8, 23
+ 71, 8, 24
+ 72, 8, 25
+ 73, 8, 26
+ 74, 8, 27
+ 75, 8, 28
+ 76, 8, 29
+ 77, 8, 30
+ 78, 8, 31
+ 79, 8, 32
+ 80, 8, 33
+ 81, 8, 34
+ 82, 8, 35
+ 83, 8, 36
+ 84, 8, 37
+ 85, 8, 38
+ 86, 8, 39
+ 87, 8, 40
+ 88, 8, 41
+ 89, 8, 42
+ 90, 8, 43
+ 91, 8, 44
+ 92, 8, 45
+ 93, 8, 46
+ 94, 8, 47
+ 95, 8, 48
+!
+       slot= 9          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 11, 1	!chamber 2, V plane, 48 wires.
+ 1, 11, 2
+ 2, 11, 3
+ 3, 11, 4
+ 4, 11, 5
+ 5, 11, 6
+ 6, 11, 7
+ 7, 11, 8
+ 8, 11, 9
+ 9, 11, 10
+ 10, 11, 11
+ 11, 11, 12
+ 12, 11, 13
+ 13, 11, 14
+ 14, 11, 15
+ 15, 11, 16
+ 16, 11, 17
+ 17, 11, 18
+ 18, 11, 19
+ 19, 11, 20
+ 20, 11, 21
+ 21, 11, 22
+ 22, 11, 23
+ 23, 11, 24
+ 24, 11, 25
+ 25, 11, 26
+ 26, 11, 27
+ 27, 11, 28
+ 28, 11, 29
+ 29, 11, 30
+ 30, 11, 31
+ 31, 11, 32
+ 32, 11, 33
+ 33, 11, 34
+ 34, 11, 35
+ 35, 11, 36
+ 36, 11, 37
+ 37, 11, 38
+ 38, 11, 39
+ 39, 11, 40
+ 40, 11, 41
+ 41, 11, 42
+ 42, 11, 43
+ 43, 11, 44
+ 44, 11, 45
+ 45, 11, 46
+ 46, 11, 47
+ 47, 11, 48
+ 48, 12, 1	!chamber 2, V' plane, 48 wires.
+ 49, 12, 2
+ 50, 12, 3
+ 51, 12, 4
+ 52, 12, 5
+ 53, 12, 6
+ 54, 12, 7
+ 55, 12, 8
+ 56, 12, 9
+ 57, 12, 10
+ 58, 12, 11
+ 59, 12, 12
+ 60, 12, 13
+ 61, 12, 14
+ 62, 12, 15
+ 63, 12, 16
+ 64, 12, 17
+ 65, 12, 18
+ 66, 12, 19
+ 67, 12, 20
+ 68, 12, 21
+ 69, 12, 22
+ 70, 12, 23
+ 71, 12, 24
+ 72, 12, 25
+ 73, 12, 26
+ 74, 12, 27
+ 75, 12, 28
+ 76, 12, 29
+ 77, 12, 30
+ 78, 12, 31
+ 79, 12, 32
+ 80, 12, 33
+ 81, 12, 34
+ 82, 12, 35
+ 83, 12, 36
+ 84, 12, 37
+ 85, 12, 38
+ 86, 12, 39
+ 87, 12, 40
+ 88, 12, 41
+ 89, 12, 42
+ 90, 12, 43
+ 91, 12, 44
+ 92, 12, 45
+ 93, 12, 46
+ 94, 12, 47
+ 95, 12, 48
+!
+       slot= 11          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 9, 1	!chamber 2, X plane, 64 wires.
+ 1, 9, 2
+ 2, 9, 3
+ 3, 9, 4
+ 4, 9, 5
+ 5, 9, 6
+ 6, 9, 7
+ 7, 9, 8
+ 8, 9, 9
+ 9, 9, 10
+ 10, 9, 11
+ 11, 9, 12
+ 12, 9, 13
+ 13, 9, 14
+ 14, 9, 15
+ 15, 9, 16
+ 16, 9, 17
+ 17, 9, 18
+ 18, 9, 19
+ 19, 9, 20
+ 20, 9, 21
+ 21, 9, 22
+ 22, 9, 23
+ 23, 9, 24
+ 24, 9, 25
+ 25, 9, 26
+ 26, 9, 27
+ 27, 9, 28
+ 28, 9, 29
+ 29, 9, 30
+ 30, 9, 31
+ 31, 9, 32
+ 32, 9, 33
+ 33, 9, 34
+ 34, 9, 35
+ 35, 9, 36
+ 36, 9, 37
+ 37, 9, 38
+ 38, 9, 39
+ 39, 9, 40
+ 40, 9, 41
+ 41, 9, 42
+ 42, 9, 43
+ 43, 9, 44
+ 44, 9, 45
+ 45, 9, 46
+ 46, 9, 47
+ 47, 9, 48
+ 48, 9, 49
+ 49, 9, 50
+ 50, 9, 51
+ 51, 9, 52
+ 52, 9, 53
+ 53, 9, 54
+ 54, 9, 55
+ 55, 9, 56
+ 56, 9, 57
+ 57, 9, 58
+ 58, 9, 59
+ 59, 9, 60
+ 60, 9, 61
+ 61, 9, 62
+ 62, 9, 63
+ 63, 9, 64
+!
+       slot= 12          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 10, 1	!chamber 2, X' plane, 64 wires.
+ 1, 10, 2
+ 2, 10, 3
+ 3, 10, 4
+ 4, 10, 5
+ 5, 10, 6
+ 6, 10, 7
+ 7, 10, 8
+ 8, 10, 9
+ 9, 10, 10
+ 10, 10, 11
+ 11, 10, 12
+ 12, 10, 13
+ 13, 10, 14
+ 14, 10, 15
+ 15, 10, 16
+ 16, 10, 17
+ 17, 10, 18
+ 18, 10, 19
+ 19, 10, 20
+ 20, 10, 21
+ 21, 10, 22
+ 22, 10, 23
+ 23, 10, 24
+ 24, 10, 25
+ 25, 10, 26
+ 26, 10, 27
+ 27, 10, 28
+ 28, 10, 29
+ 29, 10, 30
+ 30, 10, 31
+ 31, 10, 32
+ 32, 10, 33
+ 33, 10, 34
+ 34, 10, 35
+ 35, 10, 36
+ 36, 10, 37
+ 37, 10, 38
+ 38, 10, 39
+ 39, 10, 40
+ 40, 10, 41
+ 41, 10, 42
+ 42, 10, 43
+ 43, 10, 44
+ 44, 10, 45
+ 45, 10, 46
+ 46, 10, 47
+ 47, 10, 48
+ 48, 10, 49
+ 49, 10, 50
+ 50, 10, 51
+ 51, 10, 52
+ 52, 10, 53
+ 53, 10, 54
+ 54, 10, 55
+ 55, 10, 56
+ 56, 10, 57
+ 57, 10, 58
+ 58, 10, 59
+ 59, 10, 60
+ 60, 10, 61
+ 61, 10, 62
+ 62, 10, 63
+ 63, 10, 64
+!
+!   SOS upstairs (SSCIN+SCAL+SCER) map    K.B.Beard 13-Jun-1994
+!
+    ROC= 3               !upstairs SOS crate (fbch2)
+!
+    detector= 12 !SSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 22 ! TDC  
+  0, 1, 3, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#3 [TDC+]
+  1, 1, 5, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#5 [TDC+]
+  2, 1, 7, 2 !TDC ROC#3 Sl#23 Ch#2 SSCIN pl#1 [X1] id sig#7 [TDC+]
+  3, 1, 9, 2 !TDC ROC#3 Sl#23 Ch#3 SSCIN pl#1 [X1] id sig#9 [TDC+]
+  4, 1, 2, 2 !TDC ROC#3 Sl#23 Ch#4 SSCIN pl#1 [X1] id sig#2 [TDC+]
+  5, 1, 4, 2 !TDC ROC#3 Sl#23 Ch#5 SSCIN pl#1 [X1] id sig#4 [TDC+]
+  6, 1, 6, 2 !TDC ROC#3 Sl#23 Ch#6 SSCIN pl#1 [X1] id sig#6 [TDC+]
+  7, 1, 8, 2 !TDC ROC#3 Sl#23 Ch#7 SSCIN pl#1 [X1] id sig#8 [TDC+]
+  8, 1, 3, 3 !TDC ROC#3 Sl#23 Ch#8 SSCIN pl#1 [X1] id sig#3 [TDC-]
+  9, 1, 5, 3 !TDC ROC#3 Sl#23 Ch#9 SSCIN pl#1 [X1] id sig#5 [TDC-]
+  10, 1, 7, 3 !TDC ROC#3 Sl#23 Ch#10 SSCIN pl#1 [X1] id sig#7 [TDC-]
+  11, 1, 9, 3 !TDC ROC#3 Sl#23 Ch#11 SSCIN pl#1 [X1] id sig#9 [TDC-]
+  12, 1, 2, 3 !TDC ROC#3 Sl#23 Ch#12 SSCIN pl#1 [X1] id sig#2 [TDC-]
+  13, 1, 4, 3 !TDC ROC#3 Sl#23 Ch#13 SSCIN pl#1 [X1] id sig#4 [TDC-]
+  14, 1, 6, 3 !TDC ROC#3 Sl#23 Ch#14 SSCIN pl#1 [X1] id sig#6 [TDC-]
+  15, 1, 8, 3 !TDC ROC#3 Sl#23 Ch#15 SSCIN pl#1 [X1] id sig#8 [TDC-]
+  16, 2, 3, 2 !TDC ROC#3 Sl#23 Ch#16 SSCIN pl#2 [Y1] id sig#3 [TDC+]
+  17, 2, 5, 2 !TDC ROC#3 Sl#23 Ch#17 SSCIN pl#2 [Y1] id sig#5 [TDC+]
+  18, 2, 7, 2 !TDC ROC#3 Sl#23 Ch#18 SSCIN pl#2 [Y1] id sig#7 [TDC+]
+  19, 2, 9, 2 !TDC ROC#3 Sl#23 Ch#19 SSCIN pl#2 [Y1] id sig#9 [TDC+]
+  20, 2, 2, 2 !TDC ROC#3 Sl#23 Ch#20 SSCIN pl#2 [Y1] id sig#2 [TDC+]
+  21, 2, 4, 2 !TDC ROC#3 Sl#23 Ch#21 SSCIN pl#2 [Y1] id sig#4 [TDC+]
+  22, 2, 6, 2 !TDC ROC#3 Sl#23 Ch#22 SSCIN pl#2 [Y1] id sig#6 [TDC+]
+  23, 2, 8, 2 !TDC ROC#3 Sl#23 Ch#23 SSCIN pl#2 [Y1] id sig#8 [TDC+]
+  24, 2, 3, 3 !TDC ROC#3 Sl#23 Ch#24 SSCIN pl#2 [Y1] id sig#3 [TDC-]
+  25, 2, 5, 3 !TDC ROC#3 Sl#23 Ch#25 SSCIN pl#2 [Y1] id sig#5 [TDC-]
+  26, 2, 7, 3 !TDC ROC#3 Sl#23 Ch#26 SSCIN pl#2 [Y1] id sig#7 [TDC-]
+  27, 2, 9, 3 !TDC ROC#3 Sl#23 Ch#27 SSCIN pl#2 [Y1] id sig#9 [TDC-]
+  28, 2, 2, 3 !TDC ROC#3 Sl#23 Ch#28 SSCIN pl#2 [Y1] id sig#2 [TDC-]
+  29, 2, 4, 3 !TDC ROC#3 Sl#23 Ch#29 SSCIN pl#2 [Y1] id sig#4 [TDC-]
+  30, 2, 6, 3 !TDC ROC#3 Sl#23 Ch#30 SSCIN pl#2 [Y1] id sig#6 [TDC-]
+  31, 2, 8, 3 !TDC ROC#3 Sl#23 Ch#31 SSCIN pl#2 [Y1] id sig#8 [TDC-]
+  32, 4, 3, 2 !TDC ROC#3 Sl#23 Ch#32 SSCIN pl#4 [Y2] id sig#3 [TDC+]
+  33, 4, 5, 2 !TDC ROC#3 Sl#23 Ch#33 SSCIN pl#4 [Y2] id sig#5 [TDC+]
+  34, 4, 7, 2 !TDC ROC#3 Sl#23 Ch#34 SSCIN pl#4 [Y2] id sig#7 [TDC+]
+  35, 4, 9, 2 !TDC ROC#3 Sl#23 Ch#35 SSCIN pl#4 [Y2] id sig#9 [TDC+]
+  36, 4, 2, 2 !TDC ROC#3 Sl#23 Ch#36 SSCIN pl#4 [Y2] id sig#2 [TDC+]
+  37, 4, 4, 2 !TDC ROC#3 Sl#23 Ch#37 SSCIN pl#4 [Y2] id sig#4 [TDC+]
+  38, 4, 6, 2 !TDC ROC#3 Sl#23 Ch#38 SSCIN pl#4 [Y2] id sig#6 [TDC+]
+  39, 4, 8, 2 !TDC ROC#3 Sl#23 Ch#39 SSCIN pl#4 [Y2] id sig#8 [TDC+]
+  40, 4, 3, 3 !TDC ROC#3 Sl#23 Ch#40 SSCIN pl#4 [Y2] id sig#3 [TDC-]
+  41, 4, 5, 3 !TDC ROC#3 Sl#23 Ch#41 SSCIN pl#4 [Y2] id sig#5 [TDC-]
+  42, 4, 7, 3 !TDC ROC#3 Sl#23 Ch#42 SSCIN pl#4 [Y2] id sig#7 [TDC-]
+  43, 4, 9, 3 !TDC ROC#3 Sl#23 Ch#43 SSCIN pl#4 [Y2] id sig#9 [TDC-]
+  44, 4, 2, 3 !TDC ROC#3 Sl#23 Ch#44 SSCIN pl#4 [Y2] id sig#2 [TDC-]
+  45, 4, 4, 3 !TDC ROC#3 Sl#23 Ch#45 SSCIN pl#4 [Y2] id sig#4 [TDC-]
+  46, 4, 6, 3 !TDC ROC#3 Sl#23 Ch#46 SSCIN pl#4 [Y2] id sig#6 [TDC-]
+  47, 4, 8, 3 !TDC ROC#3 Sl#23 Ch#47 SSCIN pl#4 [Y2] id sig#8 [TDC-]
+  48, 1, 1, 2 !TDC ROC#3 Sl#23 Ch#48 SSCIN pl#1 [X1] id sig#1 [TDC+]
+  49, 1, 1, 3 !TDC ROC#3 Sl#23 Ch#49 SSCIN pl#1 [X1] id sig#1 [TDC-]
+  50, 2, 1, 2 !TDC ROC#3 Sl#23 Ch#50 SSCIN pl#2 [Y1] id sig#1 [TDC+]
+  51, 2, 1, 3 !TDC ROC#3 Sl#23 Ch#51 SSCIN pl#2 [Y1] id sig#1 [TDC-]
+  52, 4, 1, 2 !TDC ROC#3 Sl#23 Ch#52 SSCIN pl#4 [Y2] id sig#1 [TDC+]
+  53, 4, 1, 3 !TDC ROC#3 Sl#23 Ch#53 SSCIN pl#4 [Y2] id sig#1 [TDC-]
+!  54 !TDC ROC#3 Sl#23 Ch#54 unused
+!  55 !TDC ROC#3 Sl#23 Ch#55 unused
+!  56 !TDC ROC#3 Sl#23 Ch#56 unused
+!  57 !TDC ROC#3 Sl#23 Ch#57 unused
+!  58 !TDC ROC#3 Sl#23 Ch#58 unused
+!  59 !TDC ROC#3 Sl#23 Ch#59 unused
+!  60 !TDC ROC#3 Sl#23 Ch#60 unused
+!  61 !TDC ROC#3 Sl#23 Ch#61 unused
+!  62 !TDC ROC#3 Sl#23 Ch#62 unused
+!  63 !TDC ROC#3 Sl#23 Ch#63 unused
+!
+!for run 8023, swapped HMS and SOS TDC so that TDC with first 8
+!channels dead would be here.  Moved connectors 1 and 2 to position
+!3 and 4.  Moved 3 singles channels (in connector3) to connector 2.
+
+ Slot= 20 ! TDC  
+  32, 3, 1, 2 !TDC ROC#3 Sl#21 Ch#0 SSCIN pl#3 [X2] id sig#1 [TDC+]
+  33, 3, 3, 2 !TDC ROC#3 Sl#21 Ch#1 SSCIN pl#3 [X2] id sig#3 [TDC+]
+  34, 3, 5, 2 !TDC ROC#3 Sl#21 Ch#2 SSCIN pl#3 [X2] id sig#5 [TDC+]
+  35, 3, 7, 2 !TDC ROC#3 Sl#21 Ch#3 SSCIN pl#3 [X2] id sig#7 [TDC+]
+  36, 3, 9, 2 !TDC ROC#3 Sl#21 Ch#4 SSCIN pl#3 [X2] id sig#9 [TDC+]
+  37, 3, 11, 2 !TDC ROC#3 Sl#21 Ch#5 SSCIN pl#3 [X2] id sig#11 [TDC+]
+  38, 3, 13, 2 !TDC ROC#3 Sl#21 Ch#6 SSCIN pl#3 [X2] id sig#13 [TDC+]
+  39, 3, 15, 2 !TDC ROC#3 Sl#21 Ch#7 SSCIN pl#3 [X2] id sig#15 [TDC+]
+  40, 3, 2, 2 !TDC ROC#3 Sl#21 Ch#8 SSCIN pl#3 [X2] id sig#2 [TDC+]
+  41, 3, 4, 2 !TDC ROC#3 Sl#21 Ch#9 SSCIN pl#3 [X2] id sig#4 [TDC+]
+  42, 3, 6, 2 !TDC ROC#3 Sl#21 Ch#10 SSCIN pl#3 [X2] id sig#6 [TDC+]
+  43, 3, 8, 2 !TDC ROC#3 Sl#21 Ch#11 SSCIN pl#3 [X2] id sig#8 [TDC+]
+  44, 3, 10, 2 !TDC ROC#3 Sl#21 Ch#12 SSCIN pl#3 [X2] id sig#10 [TDC+]
+  45, 3, 12, 2 !TDC ROC#3 Sl#21 Ch#13 SSCIN pl#3 [X2] id sig#12 [TDC+]
+  46, 3, 14, 2 !TDC ROC#3 Sl#21 Ch#14 SSCIN pl#3 [X2] id sig#14 [TDC+]
+  47, 3, 16, 2 !TDC ROC#3 Sl#21 Ch#15 SSCIN pl#3 [X2] id sig#16 [TDC+]
+  48, 3, 1, 3 !TDC ROC#3 Sl#21 Ch#16 SSCIN pl#3 [X2] id sig#1 [TDC-]
+  49, 3, 3, 3 !TDC ROC#3 Sl#21 Ch#17 SSCIN pl#3 [X2] id sig#3 [TDC-]
+  50, 3, 5, 3 !TDC ROC#3 Sl#21 Ch#18 SSCIN pl#3 [X2] id sig#5 [TDC-]
+  51, 3, 7, 3 !TDC ROC#3 Sl#21 Ch#19 SSCIN pl#3 [X2] id sig#7 [TDC-]
+  52, 3, 9, 3 !TDC ROC#3 Sl#21 Ch#20 SSCIN pl#3 [X2] id sig#9 [TDC-]
+  53, 3, 11, 3 !TDC ROC#3 Sl#21 Ch#21 SSCIN pl#3 [X2] id sig#11 [TDC-]
+  54, 3, 13, 3 !TDC ROC#3 Sl#21 Ch#22 SSCIN pl#3 [X2] id sig#13 [TDC-]
+  55, 3, 15, 3 !TDC ROC#3 Sl#21 Ch#23 SSCIN pl#3 [X2] id sig#15 [TDC-]
+  56, 3, 2, 3 !TDC ROC#3 Sl#21 Ch#24 SSCIN pl#3 [X2] id sig#2 [TDC-]
+  57, 3, 4, 3 !TDC ROC#3 Sl#21 Ch#25 SSCIN pl#3 [X2] id sig#4 [TDC-]
+  58, 3, 6, 3 !TDC ROC#3 Sl#21 Ch#26 SSCIN pl#3 [X2] id sig#6 [TDC-]
+  59, 3, 8, 3 !TDC ROC#3 Sl#21 Ch#27 SSCIN pl#3 [X2] id sig#8 [TDC-]
+  60, 3, 10, 3 !TDC ROC#3 Sl#21 Ch#28 SSCIN pl#3 [X2] id sig#10 [TDC-]
+  61, 3, 12, 3 !TDC ROC#3 Sl#21 Ch#29 SSCIN pl#3 [X2] id sig#12 [TDC-]
+  62, 3, 14, 3 !TDC ROC#3 Sl#21 Ch#30 SSCIN pl#3 [X2] id sig#14 [TDC-]
+  63, 3, 16, 3 !TDC ROC#3 Sl#21 Ch#31 SSCIN pl#3 [X2] id sig#16  [TDC-]
+!
+    detector= 15 !SMISC
+!
+  16, 1, 65, 0  ! 0 !TDC ROC#3 Sl#21 Ch#32 RF TDC.
+!
+    detector= 15 !SMISC
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 18 ! TDC  
+0, 1, 1, 0  ! 0 !TDC ROC#3 Sl#20 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#3 Sl#20 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#3 Sl#20 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#3 Sl#20 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#3 Sl#20 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#3 Sl#20 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#3 Sl#20 Ch#6 unused     {MuonL}
+7, 1, 8, 0  ! 7 !TDC ROC#3 Sl#20 Ch#7 unused     {MuonR}
+8, 1, 9, 0  ! 8 !TDC ROC#3 Sl#20 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#3 Sl#20 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#3 Sl#20 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#3 Sl#20 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#3 Sl#20 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#3 Sl#20 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#3 Sl#20 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#3 Sl#20 Ch#15 signal {PEDTRG}
+
+  Slot= 18! TDC
+16, 1, 17, 0  ! 16 !TDC ROC#3 Sl#18 Ch#16 signal {sS1}           
+17, 1, 18, 0  ! 17 !TDC ROC#3 Sl#18 Ch#17 signal {sPRE50}        
+18, 1, 19, 0  ! 18 !TDC ROC#3 Sl#18 Ch#18 signal {sS2X}          
+19, 1, 20, 0  ! 19 !TDC ROC#3 Sl#18 Ch#19 signal {sPRE150}       
+20, 1, 21, 0  ! 20 !TDC ROC#3 Sl#18 Ch#20 signal {sS1X}          
+21, 1, 22, 0  ! 21 !TDC ROC#3 Sl#18 Ch#21 signal {sS2Y}          
+22, 1, 23, 0  ! 22 !TDC ROC#3 Sl#18 Ch#22 signal {sPRE100}       
+23, 1, 24, 0  ! 23 !TDC ROC#3 Sl#18 Ch#23 signal {sS1Y}          
+24, 1, 25, 0  ! 24 !TDC ROC#3 Sl#18 Ch#24 signal {sS2}           
+25, 1, 26, 0  ! 25 !TDC ROC#3 Sl#18 Ch#25 signal {sPRE200}       
+26, 1, 27, 0  ! 26 !TDC ROC#3 Sl#18 Ch#26 signal {sSTOF}         
+27, 1, 28, 0  ! 27 !TDC ROC#3 Sl#18 Ch#27 signal {sSCIN}         
+28, 1, 29, 0  ! 28 !TDC ROC#3 Sl#18 Ch#28 signal {sELREAL}       
+29, 1, 30, 0  ! 29 !TDC ROC#3 Sl#18 Ch#29 signal {sPIPRE}        
+30, 1, 31, 0  ! 30 !TDC ROC#3 Sl#18 Ch#30 signal {sELCLEAN}      
+31, 1, 32, 0  ! 31 !TDC ROC#3 Sl#18 Ch#31 signal {sPRETRG}       
+32, 1, 33, 0  ! 32 !TDC ROC#3 Sl#18 Ch#32 signal {BCM1}          
+33, 1, 34, 0  ! 33 !TDC ROC#3 Sl#18 Ch#33 signal {BCM2}          
+34, 1, 35, 0  ! 34 !TDC ROC#3 Sl#18 Ch#34 signal {BCM3}          
+35, 1, 36, 0  ! 35 !TDC ROC#3 Sl#18 Ch#35 signal {UNSER}         
+36, 1, 37, 0  ! 36 !TDC ROC#3 Sl#18 Ch#36 signal {CLOCK}         
+37, 1, 38, 0  ! 37 !TDC ROC#3 Sl#18 Ch#37 signal {1 MHz * 36??}  
+38, 1, 39, 0  ! 38 !TDC ROC#3 Sl#18 Ch#38 signal {sPICLEAN}      
+39, 1, 40, 0  ! 39 !TDC ROC#3 Sl#18 Ch#39 signal {sELCLEAN}      
+40, 1, 41, 0  ! 40 !TDC ROC#3 Sl#18 Ch#40 signal {sPION}         
+41, 1, 42, 0  ! 41 !TDC ROC#3 Sl#18 Ch#41 signal {sCER}          
+42, 1, 43, 0  ! 42 !TDC ROC#3 Sl#18 Ch#42 signal {sELHI}         
+43, 1, 44, 0  ! 43 !TDC ROC#3 Sl#18 Ch#43 signal {sELLO}         
+44, 1, 45, 0  ! 44 !TDC ROC#3 Sl#18 Ch#44 signal {sPRHI}         
+45, 1, 46, 0  ! 45 !TDC ROC#3 Sl#18 Ch#45 signal {sPRLO}         
+46, 1, 47, 0  ! 46 !TDC ROC#3 Sl#18 Ch#46 signal {sSHLO}         
+47, 1, 48, 0  ! 47 !TDC ROC#3 Sl#18 Ch#47 signal {PEDS+TRIGS?}   
+!
+!       ADC module LeCroy 1881M
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+    detector= 12 !SSCIN
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#3 Sl#9 Ch#0 SSCIN pl#1 [X1] id sig#1 [ADC+]
+  1, 1, 3, 0 !ADC ROC#3 Sl#9 Ch#1 SSCIN pl#1 [X1] id sig#3 [ADC+]
+  2, 1, 5, 0 !ADC ROC#3 Sl#9 Ch#2 SSCIN pl#1 [X1] id sig#5 [ADC+]
+  3, 1, 7, 0 !ADC ROC#3 Sl#9 Ch#3 SSCIN pl#1 [X1] id sig#7 [ADC+]
+  4, 1, 9, 0 !ADC ROC#3 Sl#9 Ch#4 SSCIN pl#1 [X1] id sig#9 [ADC+]
+!  5 !ADC ROC#3 Sl#9 Ch#5 unused
+!  6 !ADC ROC#3 Sl#9 Ch#6 unused
+!  7 !ADC ROC#3 Sl#9 Ch#7 unused
+  8, 1, 2, 0 !ADC ROC#3 Sl#9 Ch#8 SSCIN pl#1 [X1] id sig#2 [ADC+]
+  9, 1, 4, 0 !ADC ROC#3 Sl#9 Ch#9 SSCIN pl#1 [X1] id sig#4 [ADC+]
+  10, 1, 6, 0 !ADC ROC#3 Sl#9 Ch#10 SSCIN pl#1 [X1] id sig#6 [ADC+]
+  11, 1, 8, 0 !ADC ROC#3 Sl#9 Ch#11 SSCIN pl#1 [X1] id sig#8 [ADC+]
+!  12 !ADC ROC#3 Sl#9 Ch#12 unused
+!  13 !ADC ROC#3 Sl#9 Ch#13 unused
+!  14 !ADC ROC#3 Sl#9 Ch#14 unused
+!  15 !ADC ROC#3 Sl#9 Ch#15 unused
+  16, 1, 1, 1 !ADC ROC#3 Sl#9 Ch#16 SSCIN pl#1 [X1] id sig#1 [ADC-]
+  17, 1, 3, 1 !ADC ROC#3 Sl#9 Ch#17 SSCIN pl#1 [X1] id sig#3 [ADC-]
+  18, 1, 5, 1 !ADC ROC#3 Sl#9 Ch#18 SSCIN pl#1 [X1] id sig#5 [ADC-]
+  19, 1, 7, 1 !ADC ROC#3 Sl#9 Ch#19 SSCIN pl#1 [X1] id sig#7 [ADC-]
+  20, 1, 9, 1 !ADC ROC#3 Sl#9 Ch#20 SSCIN pl#1 [X1] id sig#9 [ADC-]
+!  21 !ADC ROC#3 Sl#9 Ch#21 unused
+!  22 !ADC ROC#3 Sl#9 Ch#22 unused
+!  23 !ADC ROC#3 Sl#9 Ch#23 unused
+  24, 1, 2, 1 !ADC ROC#3 Sl#9 Ch#24 SSCIN pl#1 [X1] id sig#2 [ADC-]
+  25, 1, 4, 1 !ADC ROC#3 Sl#9 Ch#25 SSCIN pl#1 [X1] id sig#4 [ADC-]
+  26, 1, 6, 1 !ADC ROC#3 Sl#9 Ch#26 SSCIN pl#1 [X1] id sig#6 [ADC-]
+  27, 1, 8, 1 !ADC ROC#3 Sl#9 Ch#27 SSCIN pl#1 [X1] id sig#8 [ADC-]
+!  28 !ADC ROC#3 Sl#9 Ch#28 unused
+!  29 !ADC ROC#3 Sl#9 Ch#29 unused
+!  30 !ADC ROC#3 Sl#9 Ch#30 unused
+!  31 !ADC ROC#3 Sl#9 Ch#31 unused
+  32, 2, 1, 0 !ADC ROC#3 Sl#9 Ch#32 SSCIN pl#2 [Y1] id sig#1 [ADC+]
+  33, 2, 3, 0 !ADC ROC#3 Sl#9 Ch#33 SSCIN pl#2 [Y1] id sig#3 [ADC+]
+  34, 2, 5, 0 !ADC ROC#3 Sl#9 Ch#34 SSCIN pl#2 [Y1] id sig#5 [ADC+]
+  35, 2, 7, 0 !ADC ROC#3 Sl#9 Ch#35 SSCIN pl#2 [Y1] id sig#7 [ADC+]
+  36, 2, 9, 0 !ADC ROC#3 Sl#9 Ch#36 SSCIN pl#2 [Y1] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#9 Ch#37 unused
+!  38 !ADC ROC#3 Sl#9 Ch#38 unused
+!  39 !ADC ROC#3 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#3 Sl#9 Ch#40 SSCIN pl#2 [Y1] id sig#2 [ADC+]
+  41, 2, 4, 0 !ADC ROC#3 Sl#9 Ch#41 SSCIN pl#2 [Y1] id sig#4 [ADC+]
+  42, 2, 6, 0 !ADC ROC#3 Sl#9 Ch#42 SSCIN pl#2 [Y1] id sig#6 [ADC+]
+  43, 2, 8, 0 !ADC ROC#3 Sl#9 Ch#43 SSCIN pl#2 [Y1] id sig#8 [ADC+]
+!  44 !ADC ROC#3 Sl#9 Ch#44 unused
+!  45 !ADC ROC#3 Sl#9 Ch#45 unused
+!  46 !ADC ROC#3 Sl#9 Ch#46 unused
+!  47 !ADC ROC#3 Sl#9 Ch#47 unused
+  48, 2, 1, 1 !ADC ROC#3 Sl#9 Ch#48 SSCIN pl#2 [Y1] id sig#1 [ADC-]
+  49, 2, 3, 1 !ADC ROC#3 Sl#9 Ch#49 SSCIN pl#2 [Y1] id sig#3 [ADC-]
+  50, 2, 5, 1 !ADC ROC#3 Sl#9 Ch#50 SSCIN pl#2 [Y1] id sig#5 [ADC-]
+  51, 2, 7, 1 !ADC ROC#3 Sl#9 Ch#51 SSCIN pl#2 [Y1] id sig#7 [ADC-]
+  52, 2, 9, 1 !ADC ROC#3 Sl#9 Ch#52 SSCIN pl#2 [Y1] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#9 Ch#53 unused
+!  54 !ADC ROC#3 Sl#9 Ch#54 unused
+!  55 !ADC ROC#3 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#3 Sl#9 Ch#56 SSCIN pl#2 [Y1] id sig#2 [ADC-]
+  57, 2, 4, 1 !ADC ROC#3 Sl#9 Ch#57 SSCIN pl#2 [Y1] id sig#4 [ADC-]
+  58, 2, 6, 1 !ADC ROC#3 Sl#9 Ch#58 SSCIN pl#2 [Y1] id sig#6 [ADC-]
+  59, 2, 8, 1 !ADC ROC#3 Sl#9 Ch#59 SSCIN pl#2 [Y1] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#9 Ch#60 unused
+!  61 !ADC ROC#3 Sl#9 Ch#61 unused
+!  62 !ADC ROC#3 Sl#9 Ch#62 unused
+!  63 !ADC ROC#3 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#3 Sl#7 Ch#0 SSCIN pl#3 [X2] id sig#1 [ADC+]
+  1, 3, 3, 0 !ADC ROC#3 Sl#7 Ch#1 SSCIN pl#3 [X2] id sig#3 [ADC+]
+  2, 3, 5, 0 !ADC ROC#3 Sl#7 Ch#2 SSCIN pl#3 [X2] id sig#5 [ADC+]
+  3, 3, 7, 0 !ADC ROC#3 Sl#7 Ch#3 SSCIN pl#3 [X2] id sig#7 [ADC+]
+  4, 3, 9, 0 !ADC ROC#3 Sl#7 Ch#4 SSCIN pl#3 [X2] id sig#9 [ADC+]
+  5, 3, 11, 0 !ADC ROC#3 Sl#7 Ch#5 SSCIN pl#3 [X2] id sig#11 [ADC+]
+  6, 3, 13, 0 !ADC ROC#3 Sl#7 Ch#6 SSCIN pl#3 [X2] id sig#13 [ADC+]
+  7, 3, 15, 0 !ADC ROC#3 Sl#7 Ch#7 SSCIN pl#3 [X2] id sig#15 [ADC+]
+  8, 3, 2, 0 !ADC ROC#3 Sl#7 Ch#8 SSCIN pl#3 [X2] id sig#2 [ADC+]
+  9, 3, 4, 0 !ADC ROC#3 Sl#7 Ch#9 SSCIN pl#3 [X2] id sig#4 [ADC+]
+  10, 3, 6, 0 !ADC ROC#3 Sl#7 Ch#10 SSCIN pl#3 [X2] id sig#6 [ADC+]
+  11, 3, 8, 0 !ADC ROC#3 Sl#7 Ch#11 SSCIN pl#3 [X2] id sig#8 [ADC+]
+  12, 3, 10, 0 !ADC ROC#3 Sl#7 Ch#12 SSCIN pl#3 [X2] id sig#10 [ADC+]
+  13, 3, 12, 0 !ADC ROC#3 Sl#7 Ch#13 SSCIN pl#3 [X2] id sig#12 [ADC+]
+  14, 3, 14, 0 !ADC ROC#3 Sl#7 Ch#14 SSCIN pl#3 [X2] id sig#14 [ADC+]
+  15, 3, 16, 0 !ADC ROC#3 Sl#7 Ch#15 SSCIN pl#3 [X2] id sig#16 [ADC+]
+  16, 3, 1, 1 !ADC ROC#3 Sl#7 Ch#16 SSCIN pl#3 [X2] id sig#1 [ADC-]
+  17, 3, 3, 1 !ADC ROC#3 Sl#7 Ch#17 SSCIN pl#3 [X2] id sig#3 [ADC-]
+  18, 3, 5, 1 !ADC ROC#3 Sl#7 Ch#18 SSCIN pl#3 [X2] id sig#5 [ADC-]
+  19, 3, 7, 1 !ADC ROC#3 Sl#7 Ch#19 SSCIN pl#3 [X2] id sig#7 [ADC-]
+  20, 3, 9, 1 !ADC ROC#3 Sl#7 Ch#20 SSCIN pl#3 [X2] id sig#9 [ADC-]
+  21, 3, 11, 1 !ADC ROC#3 Sl#7 Ch#21 SSCIN pl#3 [X2] id sig#11 [ADC-]
+  22, 3, 13, 1 !ADC ROC#3 Sl#7 Ch#22 SSCIN pl#3 [X2] id sig#13 [ADC-]
+  23, 3, 15, 1 !ADC ROC#3 Sl#7 Ch#23 SSCIN pl#3 [X2] id sig#15 [ADC-]
+  24, 3, 2, 1 !ADC ROC#3 Sl#7 Ch#24 SSCIN pl#3 [X2] id sig#2 [ADC-]
+  25, 3, 4, 1 !ADC ROC#3 Sl#7 Ch#25 SSCIN pl#3 [X2] id sig#4 [ADC-]
+  26, 3, 6, 1 !ADC ROC#3 Sl#7 Ch#26 SSCIN pl#3 [X2] id sig#6 [ADC-]
+  27, 3, 8, 1 !ADC ROC#3 Sl#7 Ch#27 SSCIN pl#3 [X2] id sig#8 [ADC-]
+  28, 3, 10, 1 !ADC ROC#3 Sl#7 Ch#28 SSCIN pl#3 [X2] id sig#10 [ADC-]
+  29, 3, 12, 1 !ADC ROC#3 Sl#7 Ch#29 SSCIN pl#3 [X2] id sig#12 [ADC-]
+  30, 3, 14, 1 !ADC ROC#3 Sl#7 Ch#30 SSCIN pl#3 [X2] id sig#14 [ADC-]
+  31, 3, 16, 1 !ADC ROC#3 Sl#7 Ch#31 SSCIN pl#3 [X2] id sig#16 [ADC-]
+  32, 4, 1, 0 !ADC ROC#3 Sl#7 Ch#32 SSCIN pl#4 [Y2] id sig#1 [ADC+]
+  33, 4, 3, 0 !ADC ROC#3 Sl#7 Ch#33 SSCIN pl#4 [Y2] id sig#3 [ADC+]
+  34, 4, 5, 0 !ADC ROC#3 Sl#7 Ch#34 SSCIN pl#4 [Y2] id sig#5 [ADC+]
+  35, 4, 7, 0 !ADC ROC#3 Sl#7 Ch#35 SSCIN pl#4 [Y2] id sig#7 [ADC+]
+  36, 4, 9, 0 !ADC ROC#3 Sl#7 Ch#36 SSCIN pl#4 [Y2] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#7 Ch#37 unused
+!  38 !ADC ROC#3 Sl#7 Ch#38 unused
+!  39 !ADC ROC#3 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#3 Sl#7 Ch#40 SSCIN pl#4 [Y2] id sig#2 [ADC+]
+  41, 4, 4, 0 !ADC ROC#3 Sl#7 Ch#41 SSCIN pl#4 [Y2] id sig#4 [ADC+]
+  42, 4, 6, 0 !ADC ROC#3 Sl#7 Ch#42 SSCIN pl#4 [Y2] id sig#6 [ADC+]
+!  43, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+] DEAD CH!
+!  44 !ADC ROC#3 Sl#7 Ch#44 unused
+!  45 !ADC ROC#3 Sl#7 Ch#45 unused
+!  46 !ADC ROC#3 Sl#7 Ch#46 unused
+  47, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+]
+  48, 4, 1, 1 !ADC ROC#3 Sl#7 Ch#48 SSCIN pl#4 [Y2] id sig#1 [ADC-]
+  49, 4, 3, 1 !ADC ROC#3 Sl#7 Ch#49 SSCIN pl#4 [Y2] id sig#3 [ADC-]
+  50, 4, 5, 1 !ADC ROC#3 Sl#7 Ch#50 SSCIN pl#4 [Y2] id sig#5 [ADC-]
+  51, 4, 7, 1 !ADC ROC#3 Sl#7 Ch#51 SSCIN pl#4 [Y2] id sig#7 [ADC-]
+  52, 4, 9, 1 !ADC ROC#3 Sl#7 Ch#52 SSCIN pl#4 [Y2] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#7 Ch#53 unused
+!  54 !ADC ROC#3 Sl#7 Ch#54 unused
+!  55 !ADC ROC#3 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#3 Sl#7 Ch#56 SSCIN pl#4 [Y2] id sig#2 [ADC-]
+  57, 4, 4, 1 !ADC ROC#3 Sl#7 Ch#57 SSCIN pl#4 [Y2] id sig#4 [ADC-]
+  58, 4, 6, 1 !ADC ROC#3 Sl#7 Ch#58 SSCIN pl#4 [Y2] id sig#6 [ADC-]
+  59, 4, 8, 1 !ADC ROC#3 Sl#7 Ch#59 SSCIN pl#4 [Y2] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#7 Ch#60 unused
+!  61 !ADC ROC#3 Sl#7 Ch#61 unused
+!  62 !ADC ROC#3 Sl#7 Ch#62 unused
+!  63 !ADC ROC#3 Sl#7 Ch#63 unused
+!
+    detector= 14 !SCAL
+!
+ Slot= 1 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#1 Ch#0 SCAL column#1 row#1
+  1, 1, 2 !ADC ROC#3 Sl#1 Ch#1 SCAL column#1 row#2
+  2, 1, 3 !ADC ROC#3 Sl#1 Ch#2 SCAL column#1 row#3
+  3, 1, 4 !ADC ROC#3 Sl#1 Ch#3 SCAL column#1 row#4
+  4, 1, 5 !ADC ROC#3 Sl#1 Ch#4 SCAL column#1 row#5
+  5, 1, 6 !ADC ROC#3 Sl#1 Ch#5 SCAL column#1 row#6
+  6, 1, 7 !ADC ROC#3 Sl#1 Ch#6 SCAL column#1 row#7
+  7, 1, 8 !ADC ROC#3 Sl#1 Ch#7 SCAL column#1 row#8
+  8, 1, 9 !ADC ROC#3 Sl#1 Ch#8 SCAL column#1 row#9
+  9, 1, 10 !ADC ROC#3 Sl#1 Ch#9 SCAL column#1 row#10
+  10, 1, 11 !ADC ROC#3 Sl#1 Ch#10 SCAL column#1 row#11
+!  11 !ADC ROC#3 Sl#1 Ch#11 unused
+!  12 !ADC ROC#3 Sl#1 Ch#12 unused
+!  13 !ADC ROC#3 Sl#1 Ch#13 unused
+!  14 !ADC ROC#3 Sl#1 Ch#14 unused
+!  15 !ADC ROC#3 Sl#1 Ch#15 unused
+  16, 2, 1 !ADC ROC#3 Sl#1 Ch#16 SCAL column#2 row#1
+  17, 2, 2 !ADC ROC#3 Sl#1 Ch#17 SCAL column#2 row#2
+  18, 2, 3 !ADC ROC#3 Sl#1 Ch#18 SCAL column#2 row#3
+  19, 2, 4 !ADC ROC#3 Sl#1 Ch#19 SCAL column#2 row#4
+  20, 2, 5 !ADC ROC#3 Sl#1 Ch#20 SCAL column#2 row#5
+  21, 2, 6 !ADC ROC#3 Sl#1 Ch#21 SCAL column#2 row#6
+  22, 2, 7 !ADC ROC#3 Sl#1 Ch#22 SCAL column#2 row#7
+  23, 2, 8 !ADC ROC#3 Sl#1 Ch#23 SCAL column#2 row#8
+  24, 2, 9 !ADC ROC#3 Sl#1 Ch#24 SCAL column#2 row#9
+  25, 2, 10 !ADC ROC#3 Sl#1 Ch#25 SCAL column#2 row#10
+  26, 2, 11 !ADC ROC#3 Sl#1 Ch#26 SCAL column#2 row#11
+!  27 !ADC ROC#3 Sl#1 Ch#27 unused
+!  28 !ADC ROC#3 Sl#1 Ch#28 unused
+!  29 !ADC ROC#3 Sl#1 Ch#29 unused
+!  30 !ADC ROC#3 Sl#1 Ch#30 unused
+!  31 !ADC ROC#3 Sl#1 Ch#31 unused
+!  32, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1  
+  44, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1
+  33, 3, 2 !ADC ROC#3 Sl#1 Ch#33 SCAL column#3 row#2
+  34, 3, 3 !ADC ROC#3 Sl#1 Ch#34 SCAL column#3 row#3
+  35, 3, 4 !ADC ROC#3 Sl#1 Ch#35 SCAL column#3 row#4
+  36, 3, 5 !ADC ROC#3 Sl#1 Ch#36 SCAL column#3 row#5
+  37, 3, 6 !ADC ROC#3 Sl#1 Ch#37 SCAL column#3 row#6
+  38, 3, 7 !ADC ROC#3 Sl#1 Ch#38 SCAL column#3 row#7
+  39, 3, 8 !ADC ROC#3 Sl#1 Ch#39 SCAL column#3 row#8
+  40, 3, 9 !ADC ROC#3 Sl#1 Ch#40 SCAL column#3 row#9
+  41, 3, 10 !ADC ROC#3 Sl#1 Ch#41 SCAL column#3 row#10
+  42, 3, 11 !ADC ROC#3 Sl#1 Ch#42 SCAL column#3 row#11
+!  43 !ADC ROC#3 Sl#1 Ch#43 unused
+!  44 !ADC ROC#3 Sl#1 Ch#44 unused
+!  45 !ADC ROC#3 Sl#1 Ch#45 unused
+!  46 !ADC ROC#3 Sl#1 Ch#46 unused
+!  47 !ADC ROC#3 Sl#1 Ch#47 unused
+
+!sD1 was being lost in the ADC delay lines.  Move to channel #15.
+!  48, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!
+  49, 4, 2 !ADC ROC#3 Sl#1 Ch#49 SCAL column#4 row#2
+  50, 4, 3 !ADC ROC#3 Sl#1 Ch#50 SCAL column#4 row#3
+  51, 4, 4 !ADC ROC#3 Sl#1 Ch#51 SCAL column#4 row#4
+  52, 4, 5 !ADC ROC#3 Sl#1 Ch#52 SCAL column#4 row#5
+  53, 4, 6 !ADC ROC#3 Sl#1 Ch#53 SCAL column#4 row#6
+  54, 4, 7 !ADC ROC#3 Sl#1 Ch#54 SCAL column#4 row#7
+  55, 4, 8 !ADC ROC#3 Sl#1 Ch#55 SCAL column#4 row#8
+  56, 4, 9 !ADC ROC#3 Sl#1 Ch#56 SCAL column#4 row#9
+  57, 4, 10 !ADC ROC#3 Sl#1 Ch#57 SCAL column#4 row#10
+  58, 4, 11 !ADC ROC#3 Sl#1 Ch#58 SCAL column#4 row#11
+!  59 !ADC ROC#3 Sl#1 Ch#59 unused
+!  60 !ADC ROC#3 Sl#1 Ch#60 unused
+!  61 !ADC ROC#3 Sl#1 Ch#61 unused
+!  62 !ADC ROC#3 Sl#1 Ch#62 unused
+  62, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!  63 !ADC ROC#3 Sl#1 Ch#63 unused
+ detector= 15   !smisc  -  photodiode for laser gain calibration system.
+ 63, 2, 1, 0    !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+!
+detector= 14 !SCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+!  0, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  12, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#3 Sl#5 Ch#1 SCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#3 Sl#5 Ch#2 SCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#3 Sl#5 Ch#3 SCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#3 Sl#5 Ch#4 SCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#3 Sl#5 Ch#5 SCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#3 Sl#5 Ch#6 SCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#3 Sl#5 Ch#7 SCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#3 Sl#5 Ch#8 SCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#3 Sl#5 Ch#9 SCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#3 Sl#5 Ch#10 SCAL col#1 row#11 (10 An-11)
+!   11 !ADC ROC#3 Sl#5 Ch#11 unused
+!   12 !ADC ROC#3 Sl#5 Ch#12 unused
+!   13 !ADC ROC#3 Sl#5 Ch#13 unused
+!   14 !ADC ROC#3 Sl#5 Ch#14 unused
+!   15 !ADC ROC#3 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#3 Sl#5 Ch#16 SCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#3 Sl#5 Ch#17 SCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#3 Sl#5 Ch#18 SCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#3 Sl#5 Ch#19 SCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#3 Sl#5 Ch#20 SCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#3 Sl#5 Ch#21 SCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#3 Sl#5 Ch#22 SCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#3 Sl#5 Ch#23 SCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#3 Sl#5 Ch#24 SCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#3 Sl#5 Ch#25 SCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#3 Sl#5 Ch#26 SCAL col#2 row#11 (26 Bn-11)
+!  27 !ADC ROC#3 Sl#5 Ch#27 unused
+!  28 !ADC ROC#3 Sl#5 Ch#28 unused
+!  29 !ADC ROC#3 Sl#5 Ch#29 unused
+!  30 !ADC ROC#3 Sl#5 Ch#30 unused
+!  31 !ADC ROC#3 Sl#5 Ch#31 unused
+!
+    detector= 13 !SCER
+!
+ Slot= 3 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#3 Ch#0 SCER tube#1
+  1, 1, 2 !ADC ROC#3 Sl#3 Ch#1 SCER tube#2
+  2, 1, 3 !ADC ROC#3 Sl#3 Ch#2 SCER tube#3
+  3, 1, 4 !ADC ROC#3 Sl#3 Ch#3 SCER tube#4
+detector=15 ! SMISC helicity stuff mkj 5/15/03
+!           ! muon det added 6/17/03
+  4, 2, 5,0 !  4 !ADC ROC#3 Sl#3 Ch#4 unused
+  5, 2, 6,0 !  5 !ADC ROC#3 Sl#3 Ch#5 unused
+!  6 !ADC ROC#3 Sl#3 Ch#6 unused
+!  7 !ADC ROC#3 Sl#3 Ch#7 unused
+!  8 !ADC ROC#3 Sl#3 Ch#8 unused
+8,2,2,0  ! mps  clock
+!  9 !ADC ROC#3 Sl#3 Ch#9 unused
+!  10 !ADC ROC#3 Sl#3 Ch#10 unused
+!  11 !ADC ROC#3 Sl#3 Ch#11 unused
+!  12 !ADC ROC#3 Sl#3 Ch#12 unused
+12,2,3,0  ! H+ signal
+15,2,4,0  ! H- signal
+!  13 !ADC ROC#3 Sl#3 Ch#13 unused
+!  14 !ADC ROC#3 Sl#3 Ch#14 unused
+!  15 !ADC ROC#3 Sl#3 Ch#15 unused
+  ! 16 !ADC ROC#3 Sl#3 Ch#16 signal {A01}
+  ! 17 !ADC ROC#3 Sl#3 Ch#17 signal {A02}
+  ! 18 !ADC ROC#3 Sl#3 Ch#18 signal {A03}
+  ! 19 !ADC ROC#3 Sl#3 Ch#19 signal {A04}
+  ! 20 !ADC ROC#3 Sl#3 Ch#20 signal {A05}
+  ! 21 !ADC ROC#3 Sl#3 Ch#21 signal {A06}
+  ! 22 !ADC ROC#3 Sl#3 Ch#22 signal {A07}
+  ! 23 !ADC ROC#3 Sl#3 Ch#23 signal {A08}
+  ! 24 !ADC ROC#3 Sl#3 Ch#24 signal {A09}
+  ! 25 !ADC ROC#3 Sl#3 Ch#25 signal {A10}
+  ! 26 !ADC ROC#3 Sl#3 Ch#26 signal {A11}
+  ! 27 !ADC ROC#3 Sl#3 Ch#27 signal {A12}
+  ! 28 !ADC ROC#3 Sl#3 Ch#28 signal {A13}
+  ! 29 !ADC ROC#3 Sl#3 Ch#29 signal {A14}
+  ! 30 !ADC ROC#3 Sl#3 Ch#30 signal {A15}
+  ! 31 !ADC ROC#3 Sl#3 Ch#31 signal {A16}
+!
+!........................................................
+! SAER took out from SOS detector hut (Hamlet, 21 Dec'02)
+!
+!    detector= 16 !SAER
+!
+!  32 !ADC ROC#3 Sl#3 Ch#32 DEAD!!!!
+!  33 !ADC ROC#3 Sl#3 Ch#33 unused spare
+! 34, 1, 1, 0 !ADC ROC#3 Sl#3 Ch#34 signal pos 1
+! 35, 1, 2, 0 !ADC ROC#3 Sl#3 Ch#35 signal pos 2
+! 36, 1, 3, 0 !ADC ROC#3 Sl#3 Ch#36 signal pos 3
+! 37, 1, 4, 0 !ADC ROC#3 Sl#3 Ch#37 signal pos 4
+! 38, 1, 5, 0 !ADC ROC#3 Sl#3 Ch#38 signal pos 5
+! 39, 1, 6, 0 !ADC ROC#3 Sl#3 Ch#39 signal pos 6
+! 40, 1, 7, 0 !ADC ROC#3 Sl#3 Ch#40 signal pos 7
+! 41, 1, 1, 1 !ADC ROC#3 Sl#3 Ch#41 signal neg 1
+! 42, 1, 2, 1 !ADC ROC#3 Sl#3 Ch#42 signal neg 2
+! 43, 1, 3, 1 !ADC ROC#3 Sl#3 Ch#43 signal neg 3
+! 44, 1, 4, 1 !ADC ROC#3 Sl#3 Ch#44 signal neg 4
+! 45, 1, 5, 1 !ADC ROC#3 Sl#3 Ch#45 signal neg 5
+! 46, 1, 6, 1 !ADC ROC#3 Sl#3 Ch#46 signal neg 6
+! 47, 1, 7, 1 !ADC ROC#3 Sl#3 Ch#47 signal neg 7 
+! 48, 1, 8, 0 !ADC ROC#3 Sl#3 Ch#48 amplified signal pos 1
+! 49, 1, 9, 0 !ADC ROC#3 Sl#3 Ch#49 amplified signal pos 2
+! 50, 1, 10, 0 !ADC ROC#3 Sl#3 Ch#50 amplified signal pos 3
+! 51, 1, 11, 0 !ADC ROC#3 Sl#3 Ch#51 amplified signal pos 4
+! 52, 1, 12, 0 !ADC ROC#3 Sl#3 Ch#52 amplified signal pos 5
+! 53, 1, 13, 0 !ADC ROC#3 Sl#3 Ch#53 amplified signal pos 6
+! 54, 1, 14, 0 !ADC ROC#3 Sl#3 Ch#54 amplified signal pos 7
+! 55, 1, 15, 0 !ADC ROC#3 Sl#3 Ch#62 amplified signal sum 1-7
+! 56, 1, 8, 1 !ADC ROC#3 Sl#3 Ch#55 amplified signal neg 1
+! 57, 1, 9, 1 !ADC ROC#3 Sl#3 Ch#56 amplified signal neg 2
+! 58, 1, 10, 1 !ADC ROC#3 Sl#3 Ch#57 amplified signal neg 3
+! 59, 1, 11, 1 !ADC ROC#3 Sl#3 Ch#58 amplified signal neg 4
+! 60, 1, 12, 1 !ADC ROC#3 Sl#3 Ch#59 amplified signal neg 5
+! 61, 1, 13, 1 !ADC ROC#3 Sl#3 Ch#60 amplified signal neg 6
+! 62, 1, 14, 1 !ADC ROC#3 Sl#3 Ch#61 amplified signal neg 7
+! 63, 1, 15, 1 !ADC ROC#3 Sl#3 Ch#63 amplified signal sum 8-14
+!
+
+
+
+
+
+
+
+
diff --git a/examples/MAPS/jun04.map b/examples/MAPS/jun04.map
new file mode 100644
index 0000000000000000000000000000000000000000..94d46e41ab07ffecd6de0b3303a9ca7587860fcc
--- /dev/null
+++ b/examples/MAPS/jun04.map
@@ -0,0 +1,3240 @@
+! Updated to reflect new TDC for HMS aerogel and proper mapping of misc
+! trigger signals in SOS.  Dave G (5/5/2003)
+!
+!
+       help       !lists available keywords
+       NOecho     !copies input lines to tty output
+       NOdebug    !turn on input debugging
+       override   !skip over errors
+!
+! hall C encode/decode configuration file
+! giving the FASTBUS geographical to standard
+! hall C COMMONs location as described by
+! "gen_data_structures.cmn"      K.B.Beard 13jun94
+!      10/19/94 (jra) Change ch1 roc to 8 (from 1), hms roc to 7 (from 2).
+!
+!       6/24/94 (SAW) Turn on lines for miscleaneous TDC's
+!                     Change ch1 roc to 1 (from 0), hms roc to 2 (from 1).
+!		      Disable last 16 channels of miscleaneous TDC
+!
+! standard id numbers
+!                       signals
+!HMS:
+! HDC_ID= 1               TDC
+! HSCIN_ID= 2             ADC+,ADC-,TDC+,TDC-
+! HCER_ID= 3              ADC
+! HCAL_ID= 4              ADC
+! HMISC_ID= 5             TDC,(ADC)
+!GEN:
+! GMISC_ID= 6             (TDC),ADC
+! HAERO_ID= 7             (TDC),ADC
+!SOS:
+! SDC_ID= 11              TDC
+! SSCIN_ID= 12            ADC+,ADC-,TDC+,TDC-
+! SCER_ID= 13             ADC
+! SCAL_ID= 14             ADC
+! SMISC_ID= 15            TDC,(ADC)
+! SAER_ID= 16             ADC
+! SLUC_ID=17		 ADC
+! 
+!
+!   consider subadd equiv. to channel
+!
+!  specify: subadd, plane, element, signal
+!            a,      p,     e,       s
+!            0-      1-     1-       0-3
+![if there is only signal 0 (DC,CER,CAL) it may be ommitted]
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!     HMS upstairs and downstairs map    K.B.Beard 13-Jun-1994
+!         for Jun94 run
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!      HMS downstairs (HDC) map           K.B.Beard & S.Avery 13-Jun-1994
+!					  revised by A. Johnson 4-Feb-1999	
+!   								
+! vvvvvvvvvvvvvvvvvvvvvv Wire chambers start here vvvvvvvvvvvvvvvvvvvvvvvvv
+  ROC= 2             !ReadOutController (crate) for HMS wire chambers
+!
+!
+!         TDC modules are Lecroy 1877
+    Nsubadd= 96               
+    MASK= FFFFx       !hex mask 
+    BSUB= 17           !start channel in bit#17
+!
+  detector= 1       !HDC
+!
+!                             1st HDC chamber - (2nd in position) - planes7-12  
+Slot= 2
+0, 8, 1	             !TDC ROC#2 Sl#2 Ch#0 HDC pl#8 [Y1] wire#1
+1, 8, 2              !TDC ROC#2 Sl#2 Ch#1 HDC pl#8 [Y1] wire#2
+2, 8, 3	             !TDC ROC#2 Sl#2 Ch#2 HDC pl#8 [Y1] wire#3
+3, 8, 4	             !TDC ROC#2 Sl#2 Ch#3 HDC pl#8 [Y1] wire#4
+4, 8, 5	             !TDC ROC#2 Sl#2 Ch#4 HDC pl#8 [Y1] wire#5
+5, 8, 6	             !TDC ROC#2 Sl#2 Ch#5 HDC pl#8 [Y1] wire#6
+6, 8, 7	             !TDC ROC#2 Sl#2 Ch#6 HDC pl#8 [Y1] wire#7
+7, 8, 8	             !TDC ROC#2 Sl#2 Ch#7 HDC pl#8 [Y1] wire#8
+8, 8, 9	             !TDC ROC#2 Sl#2 Ch#8 HDC pl#8 [Y1] wire#9
+9, 8, 10             !TDC ROC#2 Sl#2 Ch#9 HDC pl#8 [Y1] wire#10
+10, 8, 11            !TDC ROC#2 Sl#2 Ch#10 HDC pl#8 [Y1] wire#11
+11, 8, 12            !TDC ROC#2 Sl#2 Ch#11 HDC pl#8 [Y1] wire#12
+12, 8, 13            !TDC ROC#2 Sl#2 Ch#12 HDC pl#8 [Y1] wire#13
+!13 !TDC ROC#2 Sl#2 Ch#13 unused
+!14 !TDC ROC#2 Sl#2 Ch#14 unused
+!15 !TDC ROC#2 Sl#2 Ch#15 unused
+16, 11, 40           !TDC ROC#2 Sl#2 Ch#16 HDC pl#11 [Y2] wire#40
+17, 11, 41           !TDC ROC#2 Sl#2 Ch#17 HDC pl#11 [Y2] wire#41
+18, 11, 42           !TDC ROC#2 Sl#2 Ch#18 HDC pl#11 [Y2] wire#42
+19, 11, 43           !TDC ROC#2 Sl#2 Ch#19 HDC pl#11 [Y2] wire#43
+20, 11, 44           !TDC ROC#2 Sl#2 Ch#20 HDC pl#11 [Y2] wire#44
+21, 11, 45           !TDC ROC#2 Sl#2 Ch#21 HDC pl#11 [Y2] wire#45
+22, 11, 46           !TDC ROC#2 Sl#2 Ch#22 HDC pl#11 [Y2] wire#46
+23, 11, 47           !TDC ROC#2 Sl#2 Ch#23 HDC pl#11 [Y2] wire#47
+24, 11, 48           !TDC ROC#2 Sl#2 Ch#24 HDC pl#11 [Y2] wire#48
+25, 11, 49           !TDC ROC#2 Sl#2 Ch#25 HDC pl#11 [Y2] wire#49
+26, 11, 50           !TDC ROC#2 Sl#2 Ch#26 HDC pl#11 [Y2] wire#50
+27, 11, 51           !TDC ROC#2 Sl#2 Ch#27 HDC pl#11 [Y2] wire#51
+28, 11, 52           !TDC ROC#2 Sl#2 Ch#28 HDC pl#11 [Y2] wire#52
+!29 !TDC ROC#2 Sl#2 Ch#29 unused
+!30 !TDC ROC#2 Sl#2 Ch#30 unused
+!31 !TDC ROC#2 Sl#2 Ch#31 unused
+32, 8, 14            !TDC ROC#2 Sl#2 Ch#32 HDC pl#8 [Y1] wire#14
+33, 8, 15            !TDC ROC#2 Sl#2 Ch#33 HDC pl#8 [Y1] wire#15
+34, 8, 16            !TDC ROC#2 Sl#2 Ch#34 HDC pl#8 [Y1] wire#16
+35, 8, 17            !TDC ROC#2 Sl#2 Ch#35 HDC pl#8 [Y1] wire#17
+36, 8, 18            !TDC ROC#2 Sl#2 Ch#36 HDC pl#8 [Y1] wire#18
+37, 8, 19            !TDC ROC#2 Sl#2 Ch#37 HDC pl#8 [Y1] wire#19
+38, 8, 20            !TDC ROC#2 Sl#2 Ch#38 HDC pl#8 [Y1] wire#20
+39, 8, 21            !TDC ROC#2 Sl#2 Ch#39 HDC pl#8 [Y1] wire#21
+40, 8, 22            !TDC ROC#2 Sl#2 Ch#40 HDC pl#8 [Y1] wire#22
+41, 8, 23            !TDC ROC#2 Sl#2 Ch#41 HDC pl#8 [Y1] wire#23
+42, 8, 24            !TDC ROC#2 Sl#2 Ch#42 HDC pl#8 [Y1] wire#24
+43, 8, 25            !TDC ROC#2 Sl#2 Ch#43 HDC pl#8 [Y1] wire#25
+44, 8, 26            !TDC ROC#2 Sl#2 Ch#44 HDC pl#8 [Y1] wire#26
+!45 !TDC ROC#2 Sl#2 Ch#45 unused
+!46 !TDC ROC#2 Sl#2 Ch#46 unused
+!47 !TDC ROC#2 Sl#2 Ch#47 unused
+48, 11, 27           !TDC ROC#2 Sl#2 Ch#48 HDC pl#11 [Y2] wire#27
+49, 11, 28           !TDC ROC#2 Sl#2 Ch#49 HDC pl#11 [Y2] wire#28
+50, 11, 29           !TDC ROC#2 Sl#2 Ch#50 HDC pl#11 [Y2] wire#29
+51, 11, 30           !TDC ROC#2 Sl#2 Ch#51 HDC pl#11 [Y2] wire#30
+52, 11, 31           !TDC ROC#2 Sl#2 Ch#52 HDC pl#11 [Y2] wire#31
+53, 11, 32           !TDC ROC#2 Sl#2 Ch#53 HDC pl#11 [Y2] wire#32
+54, 11, 33           !TDC ROC#2 Sl#2 Ch#54 HDC pl#11 [Y2] wire#33
+55, 11, 34           !TDC ROC#2 Sl#2 Ch#55 HDC pl#11 [Y2] wire#34
+56, 11, 35           !TDC ROC#2 Sl#2 Ch#56 HDC pl#11 [Y2] wire#35
+57, 11, 36           !TDC ROC#2 Sl#2 Ch#57 HDC pl#11 [Y2] wire#36
+58, 11, 37           !TDC ROC#2 Sl#2 Ch#58 HDC pl#11 [Y2] wire#37
+59, 11, 38           !TDC ROC#2 Sl#2 Ch#59 HDC pl#11 [Y2] wire#38
+60, 11, 39           !TDC ROC#2 Sl#2 Ch#60 HDC pl#11 [Y2] wire#39
+!61 !TDC ROC#2 Sl#2 Ch#61 unused
+!62 !TDC ROC#2 Sl#2 Ch#62 unused
+!63 !TDC ROC#2 Sl#2 Ch#63 unused
+64, 8, 27            !TDC ROC#2 Sl#2 Ch#64 HDC pl#8 [Y1] wire#27
+65, 8, 28            !TDC ROC#2 Sl#2 Ch#65 HDC pl#8 [Y1] wire#28
+66, 8, 29            !TDC ROC#2 Sl#2 Ch#66 HDC pl#8 [Y1] wire#29
+67, 8, 30            !TDC ROC#2 Sl#2 Ch#67 HDC pl#8 [Y1] wire#30
+68, 8, 31            !TDC ROC#2 Sl#2 Ch#68 HDC pl#8 [Y1] wire#31
+69, 8, 32            !TDC ROC#2 Sl#2 Ch#69 HDC pl#8 [Y1] wire#32
+70, 8, 33            !TDC ROC#2 Sl#2 Ch#70 HDC pl#8 [Y1] wire#33
+71, 8, 34            !TDC ROC#2 Sl#2 Ch#71 HDC pl#8 [Y1] wire#34
+72, 8, 35            !TDC ROC#2 Sl#2 Ch#72 HDC pl#8 [Y1] wire#35
+73, 8, 36            !TDC ROC#2 Sl#2 Ch#73 HDC pl#8 [Y1] wire#36
+74, 8, 37            !TDC ROC#2 Sl#2 Ch#74 HDC pl#8 [Y1] wire#37
+75, 8, 38            !TDC ROC#2 Sl#2 Ch#75 HDC pl#8 [Y1] wire#38
+76, 8, 39            !TDC ROC#2 Sl#2 Ch#76 HDC pl#8 [Y1] wire#39
+!77 !TDC ROC#2 Sl#2 Ch#77 unused
+!78 !TDC ROC#2 Sl#2 Ch#78 unused
+!79 !TDC ROC#2 Sl#2 Ch#79 unused
+80, 11, 14           !TDC ROC#2 Sl#2 Ch#80 HDC pl#11 [Y2] wire#14
+81, 11, 15           !TDC ROC#2 Sl#2 Ch#81 HDC pl#11 [Y2] wire#15
+82, 11, 16           !TDC ROC#2 Sl#2 Ch#82 HDC pl#11 [Y2] wire#16
+83, 11, 17           !TDC ROC#2 Sl#2 Ch#83 HDC pl#11 [Y2] wire#17
+84, 11, 18           !TDC ROC#2 Sl#2 Ch#84 HDC pl#11 [Y2] wire#18
+85, 11, 19           !TDC ROC#2 Sl#2 Ch#85 HDC pl#11 [Y2] wire#19
+86, 11, 20           !TDC ROC#2 Sl#2 Ch#86 HDC pl#11 [Y2] wire#20
+87, 11, 21           !TDC ROC#2 Sl#2 Ch#87 HDC pl#11 [Y2] wire#21
+88, 11, 22           !TDC ROC#2 Sl#2 Ch#88 HDC pl#11 [Y2] wire#22
+89, 11, 23           !TDC ROC#2 Sl#2 Ch#89 HDC pl#11 [Y2] wire#23
+90, 11, 24           !TDC ROC#2 Sl#2 Ch#90 HDC pl#11 [Y2] wire#24
+91, 11, 25           !TDC ROC#2 Sl#2 Ch#91 HDC pl#11 [Y2] wire#25
+92, 11, 26           !TDC ROC#2 Sl#2 Ch#92 HDC pl#11 [Y2] wire#26
+!93 !TDC ROC#2 Sl#2 Ch#93 unused
+!94 !TDC ROC#2 Sl#2 Ch#94 unused
+!95 !TDC ROC#2 Sl#2 Ch#95 unused
+
+Slot= 3
+0, 8, 40             !TDC ROC#2 Sl#3 Ch#0 HDC pl#8 [Y1] wire#40
+1, 8, 41             !TDC ROC#2 Sl#3 Ch#1 HDC pl#8 [Y1] wire#41
+2, 8, 42             !TDC ROC#2 Sl#3 Ch#2 HDC pl#8 [Y1] wire#42
+3, 8, 43             !TDC ROC#2 Sl#3 Ch#3 HDC pl#8 [Y1] wire#43
+4, 8, 44             !TDC ROC#2 Sl#3 Ch#4 HDC pl#8 [Y1] wire#44
+5, 8, 45             !TDC ROC#2 Sl#3 Ch#5 HDC pl#8 [Y1] wire#45
+6, 8, 46             !TDC ROC#2 Sl#3 Ch#6 HDC pl#8 [Y1] wire#46
+7, 8, 47             !TDC ROC#2 Sl#3 Ch#7 HDC pl#8 [Y1] wire#47
+8, 8, 48             !TDC ROC#2 Sl#3 Ch#8 HDC pl#8 [Y1] wire#48
+9, 8, 49             !TDC ROC#2 Sl#3 Ch#9 HDC pl#8 [Y1] wire#49
+10, 8, 50            !TDC ROC#2 Sl#3 Ch#10 HDC pl#8 [Y1] wire#50
+11, 8, 51            !TDC ROC#2 Sl#3 Ch#11 HDC pl#8 [Y1] wire#51
+12, 8, 52            !TDC ROC#2 Sl#3 Ch#12 HDC pl#8 [Y1] wire#52
+!13 !TDC ROC#2 Sl#3 Ch#13 
+!14 !TDC ROC#2 Sl#3 Ch#14 
+!15 !TDC ROC#2 Sl#3 Ch#15 
+16, 11, 1            !TDC ROC#2 Sl#3 Ch#16 HDC pl#11 [Y2] wire#1
+17, 11, 2            !TDC ROC#2 Sl#3 Ch#17 HDC pl#11 [Y2] wire#2
+18, 11, 3            !TDC ROC#2 Sl#3 Ch#18 HDC pl#11 [Y2] wire#3
+19, 11, 4            !TDC ROC#2 Sl#3 Ch#19 HDC pl#11 [Y2] wire#4
+20, 11, 5            !TDC ROC#2 Sl#3 Ch#20 HDC pl#11 [Y2] wire#5
+21, 11, 6            !TDC ROC#2 Sl#3 Ch#21 HDC pl#11 [Y2] wire#6
+22, 11, 7            !TDC ROC#2 Sl#3 Ch#22 HDC pl#11 [Y2] wire#7
+23, 11, 8            !TDC ROC#2 Sl#3 Ch#23 HDC pl#11 [Y2] wire#8
+24, 11, 9            !TDC ROC#2 Sl#3 Ch#24 HDC pl#11 [Y2] wire#9
+25, 11, 10           !TDC ROC#2 Sl#3 Ch#25 HDC pl#11 [Y2] wire#10
+26, 11, 11           !TDC ROC#2 Sl#3 Ch#26 HDC pl#11 [Y2] wire#11
+27, 11, 12           !TDC ROC#2 Sl#3 Ch#27 HDC pl#11 [Y2] wire#12
+28, 11, 13           !TDC ROC#2 Sl#3 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#3 Ch#29 unused
+! 30 !TDC ROC#2 Sl#3 Ch#30 unused
+! 31 !TDC ROC#2 Sl#3 Ch#31 unused
+32, 10, 92           !TDC ROC#2 Sl#3 Ch#32 HDC pl#10 [V] wire#92
+33, 10, 93           !TDC ROC#2 Sl#3 Ch#33 HDC pl#10 [V] wire#93
+34, 10, 94           !TDC ROC#2 Sl#3 Ch#34 HDC pl#10 [V] wire#94
+35, 10, 95           !TDC ROC#2 Sl#3 Ch#35 HDC pl#10 [V] wire#95
+36, 10, 96           !TDC ROC#2 Sl#3 Ch#36 HDC pl#10 [V] wire#96
+37, 10, 97           !TDC ROC#2 Sl#3 Ch#37 HDC pl#10 [V] wire#97
+38, 10, 98           !TDC ROC#2 Sl#3 Ch#38 HDC pl#10 [V] wire#98
+39, 10, 99           !TDC ROC#2 Sl#3 Ch#39 HDC pl#10 [V] wire#99
+40, 10, 100          !TDC ROC#2 Sl#3 Ch#40 HDC pl#10 [V] wire#100
+41, 10, 101          !TDC ROC#2 Sl#3 Ch#41 HDC pl#10 [V] wire#101
+42, 10, 102          !TDC ROC#2 Sl#3 Ch#42 HDC pl#10 [V] wire#102
+43, 10, 103          !TDC ROC#2 Sl#3 Ch#43 HDC pl#10 [V] wire#103
+44, 10, 104          !TDC ROC#2 Sl#3 Ch#44 HDC pl#10 [V] wire#104
+45, 10, 105	     !TDC ROC#2 Sl#3 Ch#45 HDC pl#10 [V] wire#105
+46, 10, 106          !TDC ROC#2 Sl#3 Ch#46 HDC pl#10 [V] wire#106
+47, 10, 107	     !TDC ROC#2 Sl#3 Ch#47 HDC pl#10 [V] wire#107
+48, 7, 97            !TDC ROC#2 Sl#3 Ch#48 HDC pl#7 [X1] wire#97
+49, 7, 98            !TDC ROC#2 Sl#3 Ch#49 HDC pl#7 [X1] wire#98
+50, 7, 99            !TDC ROC#2 Sl#3 Ch#50 HDC pl#7 [X1] wire#99
+51, 7, 100           !TDC ROC#2 Sl#3 Ch#51 HDC pl#7 [X1] wire#100
+52, 7, 101           !TDC ROC#2 Sl#3 Ch#52 HDC pl#7 [X1] wire#101
+53, 7, 102           !TDC ROC#2 Sl#3 Ch#53 HDC pl#7 [X1] wire#102
+54, 7, 103           !TDC ROC#2 Sl#3 Ch#54 HDC pl#7 [X1] wire#103
+55, 7, 104           !TDC ROC#2 Sl#3 Ch#55 HDC pl#7 [X1] wire#104
+56, 7, 105           !TDC ROC#2 Sl#3 Ch#56 HDC pl#7 [X1] wire#105
+57, 7, 106           !TDC ROC#2 Sl#3 Ch#57 HDC pl#7 [X1] wire#106
+58, 7, 107           !TDC ROC#2 Sl#3 Ch#58 HDC pl#7 [X1] wire#107
+59, 7, 108           !TDC ROC#2 Sl#3 Ch#59 HDC pl#7 [X1] wire#108
+60, 7, 109           !TDC ROC#2 Sl#3 Ch#60 HDC pl#7 [X1] wire#109
+61, 7, 110           !TDC ROC#2 Sl#3 Ch#61 HDC pl#7 [X1] wire#110
+62, 7, 111           !TDC ROC#2 Sl#3 Ch#62 HDC pl#7 [X1] wire#111
+63, 7, 112           !TDC ROC#2 Sl#3 Ch#63 HDC pl#7 [X1] wire#112
+64, 12, 1            !TDC ROC#2 Sl#3 Ch#64 HDC pl#12 [X2] wire#1
+65, 12, 2            !TDC ROC#2 Sl#3 Ch#65 HDC pl#12 [X2] wire#2
+66, 12, 3            !TDC ROC#2 Sl#3 Ch#66 HDC pl#12 [X2] wire#3
+67, 12, 4            !TDC ROC#2 Sl#3 Ch#67 HDC pl#12 [X2] wire#4
+68, 12, 5            !TDC ROC#2 Sl#3 Ch#68 HDC pl#12 [X2] wire#5
+69, 12, 6            !TDC ROC#2 Sl#3 Ch#69 HDC pl#12 [X2] wire#6
+70, 12, 7            !TDC ROC#2 Sl#3 Ch#70 HDC pl#12 [X2] wire#7
+71, 12, 8            !TDC ROC#2 Sl#3 Ch#71 HDC pl#12 [X2] wire#8
+72, 12, 9            !TDC ROC#2 Sl#3 Ch#72 HDC pl#12 [X2] wire#9
+73, 12, 10           !TDC ROC#2 Sl#3 Ch#73 HDC pl#12 [X2] wire#10
+74, 12, 11           !TDC ROC#2 Sl#3 Ch#74 HDC pl#12 [X2] wire#11
+75, 12, 12           !TDC ROC#2 Sl#3 Ch#75 HDC pl#12 [X2] wire#12
+76, 12, 13           !TDC ROC#2 Sl#3 Ch#76 HDC pl#12 [X2] wire#13
+77, 12, 14           !TDC ROC#2 Sl#3 Ch#77 HDC pl#12 [X2] wire#14
+78, 12, 15           !TDC ROC#2 Sl#3 Ch#78 HDC pl#12 [X2] wire#15
+79, 12, 16           !TDC ROC#2 Sl#3 Ch#79 HDC pl#12 [X2] wire#16
+80, 7, 113           !TDC ROC#2 Sl#3 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#3 Ch#81 unused
+82, 9, 1             !TDC ROC#2 Sl#3 Ch#82 HDC pl#9 [U] wire#1
+83, 9, 2             !TDC ROC#2 Sl#3 Ch#83 HDC pl#9 [U] wire#2
+84, 9, 3             !TDC ROC#2 Sl#3 Ch#84 HDC pl#9 [U] wire#3
+85, 9, 4             !TDC ROC#2 Sl#3 Ch#85 HDC pl#9 [U] wire#4
+86, 9, 5             !TDC ROC#2 Sl#3 Ch#86 HDC pl#9 [U] wire#5
+87, 9, 6             !TDC ROC#2 Sl#3 Ch#87 HDC pl#9 [U] wire#6
+88, 9, 7             !TDC ROC#2 Sl#3 Ch#88 HDC pl#9 [U] wire#7
+89, 9, 8             !TDC ROC#2 Sl#3 Ch#89 HDC pl#9 [U] wire#8
+90, 9, 9             !TDC ROC#2 Sl#3 Ch#90 HDC pl#9 [U] wire#9
+91, 9, 10            !TDC ROC#2 Sl#3 Ch#91 HDC pl#9 [U] wire#10
+92, 9, 11            !TDC ROC#2 Sl#3 Ch#92 HDC pl#9 [U] wire#11
+93, 9, 12            !TDC ROC#2 Sl#3 Ch#93 HDC pl#9 [U] wire#12
+94, 9, 13            !TDC ROC#2 Sl#3 Ch#94 HDC pl#9 [U] wire#13
+95, 9, 14            !TDC ROC#2 Sl#3 Ch#95 HDC pl#9 [U] wire#14
+Slot= 5
+0, 10, 77            !TDC ROC#2 Sl#5 Ch#0 HDC pl#10 [V] wire#77
+1, 10, 78            !TDC ROC#2 Sl#5 Ch#1 HDC pl#10 [V] wire#78
+2, 10, 79            !TDC ROC#2 Sl#5 Ch#2 HDC pl#10 [V] wire#79
+3, 10, 80            !TDC ROC#2 Sl#5 Ch#3 HDC pl#10 [V] wire#80
+4, 10, 81            !TDC ROC#2 Sl#5 Ch#4 HDC pl#10 [V] wire#81
+5, 10, 82            !TDC ROC#2 Sl#5 Ch#5 HDC pl#10 [V] wire#82
+6, 10, 83            !TDC ROC#2 Sl#5 Ch#6 HDC pl#10 [V] wire#83
+7, 10, 84            !TDC ROC#2 Sl#5 Ch#7 HDC pl#10 [V] wire#84
+8, 10, 85            !TDC ROC#2 Sl#5 Ch#8 HDC pl#10 [V] wire#85
+9, 10, 86            !TDC ROC#2 Sl#5 Ch#9 HDC pl#10 [V] wire#86
+10, 10, 87           !TDC ROC#2 Sl#5 Ch#10 HDC pl#10 [V] wire#87
+11, 10, 88           !TDC ROC#2 Sl#5 Ch#11 HDC pl#10 [V] wire#88
+12, 10, 89           !TDC ROC#2 Sl#5 Ch#12 HDC pl#10 [V] wire#89
+13, 10, 90           !TDC ROC#2 Sl#5 Ch#13 HDC pl#10 [V] wire#90
+14, 10, 91           !TDC ROC#2 Sl#5 Ch#14 HDC pl#10 [V] wire#91
+! 15 !TDC ROC#2 Sl#5 Ch#15 unused
+16, 7, 81            !TDC ROC#2 Sl#5 Ch#16 HDC pl#7 [X1] wire#81
+17, 7, 82            !TDC ROC#2 Sl#5 Ch#17 HDC pl#7 [X1] wire#82
+18, 7, 83            !TDC ROC#2 Sl#5 Ch#18 HDC pl#7 [X1] wire#83
+19, 7, 84            !TDC ROC#2 Sl#5 Ch#19 HDC pl#7 [X1] wire#84
+20, 7, 85            !TDC ROC#2 Sl#5 Ch#20 HDC pl#7 [X1] wire#85
+21, 7, 86            !TDC ROC#2 Sl#5 Ch#21 HDC pl#7 [X1] wire#86
+22, 7, 87            !TDC ROC#2 Sl#5 Ch#22 HDC pl#7 [X1] wire#87
+23, 7, 88            !TDC ROC#2 Sl#5 Ch#23 HDC pl#7 [X1] wire#88
+24, 7, 89            !TDC ROC#2 Sl#5 Ch#24 HDC pl#7 [X1] wire#89
+25, 7, 90            !TDC ROC#2 Sl#5 Ch#25 HDC pl#7 [X1] wire#90
+26, 7, 91            !TDC ROC#2 Sl#5 Ch#26 HDC pl#7 [X1] wire#91
+27, 7, 92            !TDC ROC#2 Sl#5 Ch#27 HDC pl#7 [X1] wire#92
+28, 7, 93            !TDC ROC#2 Sl#5 Ch#28 HDC pl#7 [X1] wire#93
+29, 7, 94            !TDC ROC#2 Sl#5 Ch#29 HDC pl#7 [X1] wire#94
+30, 7, 95            !TDC ROC#2 Sl#5 Ch#30 HDC pl#7 [X1] wire#95
+31, 7, 96            !TDC ROC#2 Sl#5 Ch#31 HDC pl#7 [X1] wire#96
+32, 12, 17           !TDC ROC#2 Sl#5 Ch#32 HDC pl#12 [X2] wire#17
+33, 12, 18           !TDC ROC#2 Sl#5 Ch#33 HDC pl#12 [X2] wire#18
+34, 12, 19           !TDC ROC#2 Sl#5 Ch#34 HDC pl#12 [X2] wire#19
+35, 12, 20           !TDC ROC#2 Sl#5 Ch#35 HDC pl#12 [X2] wire#20
+36, 12, 21           !TDC ROC#2 Sl#5 Ch#36 HDC pl#12 [X2] wire#21
+37, 12, 22           !TDC ROC#2 Sl#5 Ch#37 HDC pl#12 [X2] wire#22
+38, 12, 23           !TDC ROC#2 Sl#5 Ch#38 HDC pl#12 [X2] wire#23
+39, 12, 24           !TDC ROC#2 Sl#5 Ch#39 HDC pl#12 [X2] wire#24
+40, 12, 25           !TDC ROC#2 Sl#5 Ch#40 HDC pl#12 [X2] wire#25
+41, 12, 26           !TDC ROC#2 Sl#5 Ch#41 HDC pl#12 [X2] wire#26
+42, 12, 27           !TDC ROC#2 Sl#5 Ch#42 HDC pl#12 [X2] wire#27
+43, 12, 28           !TDC ROC#2 Sl#5 Ch#43 HDC pl#12 [X2] wire#28
+44, 12, 29           !TDC ROC#2 Sl#5 Ch#44 HDC pl#12 [X2] wire#29
+45, 12, 30           !TDC ROC#2 Sl#5 Ch#45 HDC pl#12 [X2] wire#30
+46, 12, 31           !TDC ROC#2 Sl#5 Ch#46 HDC pl#12 [X2] wire#31
+47, 12, 32           !TDC ROC#2 Sl#5 Ch#47 HDC pl#12 [X2] wire#32
+48, 9, 15            !TDC ROC#2 Sl#5 Ch#48 HDC pl#9 [U] wire#15
+49, 9, 16            !TDC ROC#2 Sl#5 Ch#49 HDC pl#9 [U] wire#16
+50, 9, 17            !TDC ROC#2 Sl#5 Ch#50 HDC pl#9 [U] wire#17
+51, 9, 18            !TDC ROC#2 Sl#5 Ch#51 HDC pl#9 [U] wire#18
+52, 9, 19            !TDC ROC#2 Sl#5 Ch#52 HDC pl#9 [U] wire#19
+53, 9, 20            !TDC ROC#2 Sl#5 Ch#53 HDC pl#9 [U] wire#20
+54, 9, 21            !TDC ROC#2 Sl#5 Ch#54 HDC pl#9 [U] wire#21
+55, 9, 22            !TDC ROC#2 Sl#5 Ch#55 HDC pl#9 [U] wire#22
+56, 9, 23            !TDC ROC#2 Sl#5 Ch#56 HDC pl#9 [U] wire#23
+57, 9, 24            !TDC ROC#2 Sl#5 Ch#57 HDC pl#9 [U] wire#24
+58, 9, 25            !TDC ROC#2 Sl#5 Ch#58 HDC pl#9 [U] wire#25
+59, 9, 26            !TDC ROC#2 Sl#5 Ch#59 HDC pl#9 [U] wire#26
+60, 9, 27            !TDC ROC#2 Sl#5 Ch#60 HDC pl#9 [U] wire#27
+61, 9, 28            !TDC ROC#2 Sl#5 Ch#61 HDC pl#9 [U] wire#28
+62, 9, 29            !TDC ROC#2 Sl#5 Ch#62 HDC pl#9 [U] wire#29
+!63 !TDC ROC#2 Sl#5 Ch#63 unused
+64, 10, 61           !TDC ROC#2 Sl#5 Ch#64 HDC pl#10 [V] wire#61
+65, 10, 62           !TDC ROC#2 Sl#5 Ch#65 HDC pl#10 [V] wire#62
+66, 10, 63           !TDC ROC#2 Sl#5 Ch#66 HDC pl#10 [V] wire#63
+67, 10, 64           !TDC ROC#2 Sl#5 Ch#67 HDC pl#10 [V] wire#64
+68, 10, 65           !TDC ROC#2 Sl#5 Ch#68 HDC pl#10 [V] wire#65
+69, 10, 66           !TDC ROC#2 Sl#5 Ch#69 HDC pl#10 [V] wire#66
+70, 10, 67           !TDC ROC#2 Sl#5 Ch#70 HDC pl#10 [V] wire#67
+71, 10, 68           !TDC ROC#2 Sl#5 Ch#71 HDC pl#10 [V] wire#68
+72, 10, 69           !TDC ROC#2 Sl#5 Ch#72 HDC pl#10 [V] wire#69
+73, 10, 70           !TDC ROC#2 Sl#5 Ch#73 HDC pl#10 [V] wire#70
+74, 10, 71           !TDC ROC#2 Sl#5 Ch#74 HDC pl#10 [V] wire#71
+75, 10, 72           !TDC ROC#2 Sl#5 Ch#75 HDC pl#10 [V] wire#72
+76, 10, 73           !TDC ROC#2 Sl#5 Ch#76 HDC pl#10 [V] wire#73
+77, 10, 74           !TDC ROC#2 Sl#5 Ch#77 HDC pl#10 [V] wire#74
+78, 10, 75           !TDC ROC#2 Sl#5 Ch#78 HDC pl#10 [V] wire#75
+79, 10, 76           !TDC ROC#2 Sl#5 Ch#79 HDC pl#10 [V] wire#76
+80, 7, 65            !TDC ROC#2 Sl#5 Ch#80 HDC pl#7 [X1] wire#65
+81, 7, 66            !TDC ROC#2 Sl#5 Ch#81 HDC pl#7 [X1] wire#66
+82, 7, 67            !TDC ROC#2 Sl#5 Ch#82 HDC pl#7 [X1] wire#67
+83, 7, 68            !TDC ROC#2 Sl#5 Ch#83 HDC pl#7 [X1] wire#68
+84, 7, 69            !TDC ROC#2 Sl#5 Ch#84 HDC pl#7 [X1] wire#69
+85, 7, 70	     !TDC ROC#2 Sl#5 Ch#85 HDC pl#7 [X1] wire#70
+86, 7, 71            !TDC ROC#2 Sl#5 Ch#86 HDC pl#7 [X1] wire#71
+87, 7, 72            !TDC ROC#2 Sl#5 Ch#87 HDC pl#7 [X1] wire#72
+88, 7, 73            !TDC ROC#2 Sl#5 Ch#88 HDC pl#7 [X1] wire#73
+89, 7, 74            !TDC ROC#2 Sl#5 Ch#89 HDC pl#7 [X1] wire#74
+90, 7, 75            !TDC ROC#2 Sl#5 Ch#90 HDC pl#7 [X1] wire#75
+91, 7, 76	     !TDC ROC#2 Sl#5 Ch#91 HDC pl#7 [X1] wire#76
+92, 7, 77            !TDC ROC#2 Sl#5 Ch#92 HDC pl#7 [X1] wire#77
+93, 7, 78            !TDC ROC#2 Sl#5 Ch#93 HDC pl#7 [X1] wire#78
+94, 7, 79            !TDC ROC#2 Sl#5 Ch#94 HDC pl#7 [X1] wire#79
+95, 7, 80            !TDC ROC#2 Sl#5 Ch#95 HDC pl#7 [X1] wire#80
+Slot= 6
+0, 12, 33            !TDC ROC#2 Sl#6 Ch#0 HDC pl#12 [X2] wire#33
+1, 12, 34 	     !TDC ROC#2 Sl#6 Ch#1 HDC pl#12 [X2] wire#34
+2, 12, 35            !TDC ROC#2 Sl#6 Ch#2 HDC pl#12 [X2] wire#35
+3, 12, 36            !TDC ROC#2 Sl#6 Ch#3 HDC pl#12 [X2] wire#36
+4, 12, 37            !TDC ROC#2 Sl#6 Ch#4 HDC pl#12 [X2] wire#37
+5, 12, 38            !TDC ROC#2 Sl#6 Ch#5 HDC pl#12 [X2] wire#38
+6, 12, 39            !TDC ROC#2 Sl#6 Ch#6 HDC pl#12 [X2] wire#39
+7, 12, 40            !TDC ROC#2 Sl#6 Ch#7 HDC pl#12 [X2] wire#40
+8, 12, 41            !TDC ROC#2 Sl#6 Ch#8 HDC pl#12 [X2] wire#41
+9, 12, 42            !TDC ROC#2 Sl#6 Ch#9 HDC pl#12 [X2] wire#42
+10, 12, 43           !TDC ROC#2 Sl#6 Ch#10 HDC pl#12 [X2] wire#43
+11, 12, 44           !TDC ROC#2 Sl#6 Ch#11 HDC pl#12 [X2] wire#44
+12, 12, 45           !TDC ROC#2 Sl#6 Ch#12 HDC pl#12 [X2] wire#45
+13, 12, 46           !TDC ROC#2 Sl#6 Ch#13 HDC pl#12 [X2] wire#46
+14, 12, 47           !TDC ROC#2 Sl#6 Ch#14 HDC pl#12 [X2] wire#47
+15, 12, 48           !TDC ROC#2 Sl#6 Ch#15 HDC pl#12 [X2] wire#48
+16, 9, 30            !TDC ROC#2 Sl#6 Ch#16 HDC pl#9 [U] wire#30
+17, 9, 31            !TDC ROC#2 Sl#6 Ch#17 HDC pl#9 [U] wire#31
+18, 9, 32            !TDC ROC#2 Sl#6 Ch#18 HDC pl#9 [U] wire#32
+19, 9, 33            !TDC ROC#2 Sl#6 Ch#19 HDC pl#9 [U] wire#33
+20, 9, 34            !TDC ROC#2 Sl#6 Ch#20 HDC pl#9 [U] wire#34
+21, 9, 35            !TDC ROC#2 Sl#6 Ch#21 HDC pl#9 [U] wire#35
+22, 9, 36            !TDC ROC#2 Sl#6 Ch#22 HDC pl#9 [U] wire#36
+23, 9, 37            !TDC ROC#2 Sl#6 Ch#23 HDC pl#9 [U] wire#37
+24, 9, 38            !TDC ROC#2 Sl#6 Ch#24 HDC pl#9 [U] wire#38
+25, 9, 39            !TDC ROC#2 Sl#6 Ch#25 HDC pl#9 [U] wire#39
+26, 9, 40            !TDC ROC#2 Sl#6 Ch#26 HDC pl#9 [U] wire#40
+27, 9, 41            !TDC ROC#2 Sl#6 Ch#27 HDC pl#9 [U] wire#41
+28, 9, 42            !TDC ROC#2 Sl#6 Ch#28 HDC pl#9 [U] wire#42
+29, 9, 43            !TDC ROC#2 Sl#6 Ch#29 HDC pl#9 [U] wire#43
+30, 9, 44            !TDC ROC#2 Sl#6 Ch#30 HDC pl#9 [U] wire#44
+31, 9, 45            !TDC ROC#2 Sl#6 Ch#31 HDC pl#9 [U] wire#45
+32, 10, 46           !TDC ROC#2 Sl#6 Ch#32 HDC pl#10 [V] wire#46
+33, 10, 47           !TDC ROC#2 Sl#6 Ch#33 HDC pl#10 [V] wire#47
+34, 10, 48           !TDC ROC#2 Sl#6 Ch#34 HDC pl#10 [V] wire#48
+35, 10, 49           !TDC ROC#2 Sl#6 Ch#35 HDC pl#10 [V] wire#49
+36, 10, 50           !TDC ROC#2 Sl#6 Ch#36 HDC pl#10 [V] wire#50
+37, 10, 51           !TDC ROC#2 Sl#6 Ch#37 HDC pl#10 [V] wire#51
+38, 10, 52           !TDC ROC#2 Sl#6 Ch#38 HDC pl#10 [V] wire#52
+39, 10, 53           !TDC ROC#2 Sl#6 Ch#39 HDC pl#10 [V] wire#53
+40, 10, 54           !TDC ROC#2 Sl#6 Ch#40 HDC pl#10 [V] wire#54
+41, 10, 55           !TDC ROC#2 Sl#6 Ch#41 HDC pl#10 [V] wire#55
+42, 10, 56           !TDC ROC#2 Sl#6 Ch#42 HDC pl#10 [V] wire#56
+43, 10, 57           !TDC ROC#2 Sl#6 Ch#43 HDC pl#10 [V] wire#57
+44, 10, 58           !TDC ROC#2 Sl#6 Ch#44 HDC pl#10 [V] wire#58
+45, 10, 59           !TDC ROC#2 Sl#6 Ch#45 HDC pl#10 [V] wire#59
+46, 10, 60           !TDC ROC#2 Sl#6 Ch#46 HDC pl#10 [V] wire#60
+!47 !TDC ROC#2 Sl#6 Ch#47 HDC unused
+48, 7, 49           !TDC ROC#2 Sl#6 Ch#48 HDC pl#7 [X1] wire#49
+49, 7, 50           !TDC ROC#2 Sl#6 Ch#49 HDC pl#7 [X1] wire#50
+50, 7, 51           !TDC ROC#2 Sl#6 Ch#50 HDC pl#7 [X1] wire#51
+51, 7, 52           !TDC ROC#2 Sl#6 Ch#51 HDC pl#7 [X1] wire#52
+52, 7, 53           !TDC ROC#2 Sl#6 Ch#52 HDC pl#7 [X1] wire#53
+53, 7, 54           !TDC ROC#2 Sl#6 Ch#53 HDC pl#7 [X1] wire#54
+54, 7, 55           !TDC ROC#2 Sl#6 Ch#54 HDC pl#7 [X1] wire#55
+55, 7, 56           !TDC ROC#2 Sl#6 Ch#55 HDC pl#7 [X1] wire#56
+56, 7, 57           !TDC ROC#2 Sl#6 Ch#56 HDC pl#7 [X1] wire#57
+57, 7, 58           !TDC ROC#2 Sl#6 Ch#57 HDC pl#7 [X1] wire#58
+58, 7, 59           !TDC ROC#2 Sl#6 Ch#58 HDC pl#7 [X1] wire#59
+59, 7, 60           !TDC ROC#2 Sl#6 Ch#59 HDC pl#7 [X1] wire#60
+60, 7, 61           !TDC ROC#2 Sl#6 Ch#60 HDC pl#7 [X1] wire#61
+61, 7, 62           !TDC ROC#2 Sl#6 Ch#61 HDC pl#7 [X1] wire#62
+62, 7, 63           !TDC ROC#2 Sl#6 Ch#62 HDC pl#7 [X1] wire#63
+63, 7, 64           !TDC ROC#2 Sl#6 Ch#63 HDC pl#7 [X1] wire#64
+64, 12, 49          !TDC ROC#2 Sl#6 Ch#64 HDC pl#12 [X2] wire#49
+65, 12, 50          !TDC ROC#2 Sl#6 Ch#65 HDC pl#12 [X2] wire#50
+66, 12, 51          !TDC ROC#2 Sl#6 Ch#66 HDC pl#12 [X2] wire#51
+67, 12, 52          !TDC ROC#2 Sl#6 Ch#67 HDC pl#12 [X2] wire#52
+68, 12, 53          !TDC ROC#2 Sl#6 Ch#68 HDC pl#12 [X2] wire#53
+69, 12, 54          !TDC ROC#2 Sl#6 Ch#69 HDC pl#12 [X2] wire#54
+70, 12, 55          !TDC ROC#2 Sl#6 Ch#70 HDC pl#12 [X2] wire#55
+71, 12, 56          !TDC ROC#2 Sl#6 Ch#71 HDC pl#12 [X2] wire#56
+72, 12, 57          !TDC ROC#2 Sl#6 Ch#72 HDC pl#12 [X2] wire#57
+73, 12, 58          !TDC ROC#2 Sl#6 Ch#73 HDC pl#12 [X2] wire#58
+74, 12, 59          !TDC ROC#2 Sl#6 Ch#74 HDC pl#12 [X2] wire#59
+75, 12, 60          !TDC ROC#2 Sl#6 Ch#75 HDC pl#12 [X2] wire#60
+76, 12, 61          !TDC ROC#2 Sl#6 Ch#76 HDC pl#12 [X2] wire#61
+77, 12, 62          !TDC ROC#2 Sl#6 Ch#77 HDC pl#12 [X2] wire#62
+78, 12, 63          !TDC ROC#2 Sl#6 Ch#78 HDC pl#12 [X2] wire#63
+79, 12, 64          !TDC ROC#2 Sl#6 Ch#79 HDC pl#12 [X2] wire#64
+80, 10, 30          !TDC ROC#2 Sl#6 Ch#80 HDC pl#10 [V] wire#30
+81, 10, 31          !TDC ROC#2 Sl#6 Ch#81 HDC pl#10 [V] wire#31
+82, 10, 32          !TDC ROC#2 Sl#6 Ch#82 HDC pl#10 [V] wire#32
+83, 10, 33          !TDC ROC#2 Sl#6 Ch#83 HDC pl#10 [V] wire#33
+84, 10, 34          !TDC ROC#2 Sl#6 Ch#84 HDC pl#10 [V] wire#34
+85, 10, 35          !TDC ROC#2 Sl#6 Ch#85 HDC pl#10 [V] wire#35
+86, 10, 36          !TDC ROC#2 Sl#6 Ch#86 HDC pl#10 [V] wire#36
+87, 10, 37          !TDC ROC#2 Sl#6 Ch#87 HDC pl#10 [V] wire#37
+88, 10, 38          !TDC ROC#2 Sl#6 Ch#88 HDC pl#10 [V] wire#38
+89, 10, 39          !TDC ROC#2 Sl#6 Ch#89 HDC pl#10 [V] wire#39
+90, 10, 40          !TDC ROC#2 Sl#6 Ch#90 HDC pl#10 [V] wire#40
+91, 10, 41          !TDC ROC#2 Sl#6 Ch#91 HDC pl#10 [V] wire#41
+92, 10, 42          !TDC ROC#2 Sl#6 Ch#92 HDC pl#10 [V] wire#42
+93, 10, 43          !TDC ROC#2 Sl#6 Ch#93 HDC pl#10 [V] wire#43
+94, 10, 44          !TDC ROC#2 Sl#6 Ch#94 HDC pl#10 [V] wire#44
+95, 10, 45          !TDC ROC#2 Sl#6 Ch#95 HDC pl#10 [V] wire#45
+Slot= 8
+0, 9, 46            !TDC ROC#2 Sl#8 Ch#0 HDC pl#9 [U] wire#46
+1, 9, 47            !TDC ROC#2 Sl#8 Ch#1 HDC pl#9 [U] wire#47
+2, 9, 48            !TDC ROC#2 Sl#8 Ch#2 HDC pl#9 [U] wire#48
+3, 9, 49            !TDC ROC#2 Sl#8 Ch#3 HDC pl#9 [U] wire#49
+4, 9, 50            !TDC ROC#2 Sl#8 Ch#4 HDC pl#9 [U] wire#50
+5, 9, 51            !TDC ROC#2 Sl#8 Ch#5 HDC pl#9 [U] wire#51
+6, 9, 52            !TDC ROC#2 Sl#8 Ch#6 HDC pl#9 [U] wire#52
+7, 9, 53            !TDC ROC#2 Sl#8 Ch#7 HDC pl#9 [U] wire#53
+8, 9, 54            !TDC ROC#2 Sl#8 Ch#8 HDC pl#9 [U] wire#54
+9, 9, 55            !TDC ROC#2 Sl#8 Ch#9 HDC pl#9 [U] wire#55
+10, 9, 56           !TDC ROC#2 Sl#8 Ch#10 HDC pl#9 [U] wire#56
+11, 9, 57           !TDC ROC#2 Sl#8 Ch#11 HDC pl#9 [U] wire#57
+12, 9, 58           !TDC ROC#2 Sl#8 Ch#12 HDC pl#9 [U] wire#58
+13, 9, 59           !TDC ROC#2 Sl#8 Ch#13 HDC pl#9 [U] wire#59
+14, 9, 60           !TDC ROC#2 Sl#8 Ch#14 HDC pl#9 [U] wire#60
+!15 !TDC ROC#2 Sl#8 Ch#15 unused
+16, 7, 33           !TDC ROC#2 Sl#8 Ch#16 HDC pl#7 [X1] wire#33
+17, 7, 34           !TDC ROC#2 Sl#8 Ch#17 HDC pl#7 [X1] wire#34
+18, 7, 35           !TDC ROC#2 Sl#8 Ch#18 HDC pl#7 [X1] wire#35
+19, 7, 36           !TDC ROC#2 Sl#8 Ch#19 HDC pl#7 [X1] wire#36
+20, 7, 37           !TDC ROC#2 Sl#8 Ch#20 HDC pl#7 [X1] wire#37
+21, 7, 38           !TDC ROC#2 Sl#8 Ch#21 HDC pl#7 [X1] wire#38
+22, 7, 39           !TDC ROC#2 Sl#8 Ch#22 HDC pl#7 [X1] wire#39
+23, 7, 40           !TDC ROC#2 Sl#8 Ch#23 HDC pl#7 [X1] wire#40
+24, 7, 41           !TDC ROC#2 Sl#8 Ch#24 HDC pl#7 [X1] wire#41
+25, 7, 42           !TDC ROC#2 Sl#8 Ch#25 HDC pl#7 [X1] wire#42
+26, 7, 43           !TDC ROC#2 Sl#8 Ch#26 HDC pl#7 [X1] wire#43
+27, 7, 44           !TDC ROC#2 Sl#8 Ch#27 HDC pl#7 [X1] wire#44
+28, 7, 45           !TDC ROC#2 Sl#8 Ch#28 HDC pl#7 [X1] wire#45
+29, 7, 46           !TDC ROC#2 Sl#8 Ch#29 HDC pl#7 [X1] wire#46
+30, 7, 47           !TDC ROC#2 Sl#8 Ch#30 HDC pl#7 [X1] wire#47
+31, 7, 48           !TDC ROC#2 Sl#8 Ch#31 HDC pl#7 [X1] wire#48
+32, 12, 65          !TDC ROC#2 Sl#8 Ch#32 HDC pl#12 [X2] wire#65
+33, 12, 66          !TDC ROC#2 Sl#8 Ch#33 HDC pl#12 [X2] wire#66
+34, 12, 67          !TDC ROC#2 Sl#8 Ch#34 HDC pl#12 [X2] wire#67
+35, 12, 68          !TDC ROC#2 Sl#8 Ch#35 HDC pl#12 [X2] wire#68
+36, 12, 69          !TDC ROC#2 Sl#8 Ch#36 HDC pl#12 [X2] wire#69
+37, 12, 70          !TDC ROC#2 Sl#8 Ch#37 HDC pl#12 [X2] wire#70
+38, 12, 71          !TDC ROC#2 Sl#8 Ch#38 HDC pl#12 [X2] wire#71
+39, 12, 72          !TDC ROC#2 Sl#8 Ch#39 HDC pl#12 [X2] wire#72
+40, 12, 73          !TDC ROC#2 Sl#8 Ch#40 HDC pl#12 [X2] wire#73
+41, 12, 74          !TDC ROC#2 Sl#8 Ch#41 HDC pl#12 [X2] wire#74
+42, 12, 75          !TDC ROC#2 Sl#8 Ch#42 HDC pl#12 [X2] wire#75
+43, 12, 76          !TDC ROC#2 Sl#8 Ch#43 HDC pl#12 [X2] wire#76
+44, 12, 77          !TDC ROC#2 Sl#8 Ch#44 HDC pl#12 [X2] wire#77
+45, 12, 78          !TDC ROC#2 Sl#8 Ch#45 HDC pl#12 [X2] wire#78
+46, 12, 79          !TDC ROC#2 Sl#8 Ch#46 HDC pl#12 [X2] wire#79
+47, 12, 80	    !TDC ROC#2 Sl#8 Ch#47 HDC pl#12 [X2] wire#80
+48, 9, 61           !TDC ROC#2 Sl#8 Ch#48 HDC pl#9 [U] wire#61
+49, 9, 62           !TDC ROC#2 Sl#8 Ch#49 HDC pl#9 [U] wire#62
+50, 9, 63           !TDC ROC#2 Sl#8 Ch#50 HDC pl#9 [U] wire#63
+51, 9, 64           !TDC ROC#2 Sl#8 Ch#51 HDC pl#9 [U] wire#64
+52, 9, 65           !TDC ROC#2 Sl#8 Ch#52 HDC pl#9 [U] wire#65
+53, 9, 66           !TDC ROC#2 Sl#8 Ch#53 HDC pl#9 [U] wire#66
+54, 9, 67           !TDC ROC#2 Sl#8 Ch#54 HDC pl#9 [U] wire#67
+55, 9, 68           !TDC ROC#2 Sl#8 Ch#55 HDC pl#9 [U] wire#68
+56, 9, 69           !TDC ROC#2 Sl#8 Ch#56 HDC pl#9 [U] wire#69
+57, 9, 70           !TDC ROC#2 Sl#8 Ch#57 HDC pl#9 [U] wire#70
+58, 9, 71           !TDC ROC#2 Sl#8 Ch#58 HDC pl#9 [U] wire#71
+59, 9, 72           !TDC ROC#2 Sl#8 Ch#59 HDC pl#9 [U] wire#72
+60, 9, 73           !TDC ROC#2 Sl#8 Ch#60 HDC pl#9 [U] wire#73
+61, 9, 74           !TDC ROC#2 Sl#8 Ch#61 HDC pl#9 [U] wire#74
+62, 9, 75           !TDC ROC#2 Sl#8 Ch#62 HDC pl#9 [U] wire#75
+63, 9, 76           !TDC ROC#2 Sl#8 Ch#63 HDC pl#9 [U] wire#76
+64, 10, 15          !TDC ROC#2 Sl#8 Ch#64 HDC pl#10 [V] wire#15
+65, 10, 16          !TDC ROC#2 Sl#8 Ch#65 HDC pl#10 [V] wire#16
+66, 10, 17          !TDC ROC#2 Sl#8 Ch#66 HDC pl#10 [V] wire#17
+67, 10, 18          !TDC ROC#2 Sl#8 Ch#67 HDC pl#10 [V] wire#18
+68, 10, 19          !TDC ROC#2 Sl#8 Ch#68 HDC pl#10 [V] wire#19
+69, 10, 20          !TDC ROC#2 Sl#8 Ch#69 HDC pl#10 [V] wire#20
+70, 10, 21          !TDC ROC#2 Sl#8 Ch#70 HDC pl#10 [V] wire#21
+71, 10, 22          !TDC ROC#2 Sl#8 Ch#71 HDC pl#10 [V] wire#22
+72, 10, 23          !TDC ROC#2 Sl#8 Ch#72 HDC pl#10 [V] wire#23
+73, 10, 24          !TDC ROC#2 Sl#8 Ch#73 HDC pl#10 [V] wire#24
+74, 10, 25          !TDC ROC#2 Sl#8 Ch#74 HDC pl#10 [V] wire#25
+75, 10, 26          !TDC ROC#2 Sl#8 Ch#75 HDC pl#10 [V] wire#26
+76, 10, 27          !TDC ROC#2 Sl#8 Ch#76 HDC pl#10 [V] wire#27
+77, 10, 28          !TDC ROC#2 Sl#8 Ch#77 HDC pl#10 [V] wire#28
+78, 10, 29          !TDC ROC#2 Sl#8 Ch#78 HDC pl#10 [V] wire#29
+! 79 !TDC ROC#2 Sl#8 Ch#79 unused
+80, 7, 17           !TDC ROC#2 Sl#8 Ch#80 HDC pl#7 [X1] wire#17
+81, 7, 18           !TDC ROC#2 Sl#8 Ch#81 HDC pl#7 [X1] wire#18
+82, 7, 19           !TDC ROC#2 Sl#8 Ch#82 HDC pl#7 [X1] wire#19
+83, 7, 20           !TDC ROC#2 Sl#8 Ch#83 HDC pl#7 [X1] wire#20
+84, 7, 21           !TDC ROC#2 Sl#8 Ch#84 HDC pl#7 [X1] wire#21
+85, 7, 22           !TDC ROC#2 Sl#8 Ch#85 HDC pl#7 [X1] wire#22
+86, 7, 23           !TDC ROC#2 Sl#8 Ch#86 HDC pl#7 [X1] wire#23
+87, 7, 24           !TDC ROC#2 Sl#8 Ch#87 HDC pl#7 [X1] wire#24
+88, 7, 25           !TDC ROC#2 Sl#8 Ch#88 HDC pl#7 [X1] wire#25
+89, 7, 26           !TDC ROC#2 Sl#8 Ch#89 HDC pl#7 [X1] wire#26
+90, 7, 27           !TDC ROC#2 Sl#8 Ch#90 HDC pl#7 [X1] wire#27
+91, 7, 28           !TDC ROC#2 Sl#8 Ch#91 HDC pl#7 [X1] wire#28
+92, 7, 29           !TDC ROC#2 Sl#8 Ch#92 HDC pl#7 [X1] wire#29
+93, 7, 30           !TDC ROC#2 Sl#8 Ch#93 HDC pl#7 [X1] wire#30
+94, 7, 31           !TDC ROC#2 Sl#8 Ch#94 HDC pl#7 [X1] wire#31
+95, 7, 32           !TDC ROC#2 Sl#8 Ch#95 HDC pl#7 [X1] wire#32
+Slot= 9
+0, 12, 81           !TDC ROC#2 Sl#9 Ch#0 HDC pl#12 [X2] wire#81
+1, 12, 82           !TDC ROC#2 Sl#9 Ch#1 HDC pl#12 [X2] wire#82
+2, 12, 83           !TDC ROC#2 Sl#9 Ch#2 HDC pl#12 [X2] wire#83
+3, 12, 84           !TDC ROC#2 Sl#9 Ch#3 HDC pl#12 [X2] wire#84
+4, 12, 85           !TDC ROC#2 Sl#9 Ch#4 HDC pl#12 [X2] wire#85
+5, 12, 86           !TDC ROC#2 Sl#9 Ch#5 HDC pl#12 [X2] wire#86
+6, 12, 87           !TDC ROC#2 Sl#9 Ch#6 HDC pl#12 [X2] wire#87
+7, 12, 88           !TDC ROC#2 Sl#9 Ch#7 HDC pl#12 [X2] wire#88
+8, 12, 89           !TDC ROC#2 Sl#9 Ch#8 HDC pl#12 [X2] wire#89
+9, 12, 90           !TDC ROC#2 Sl#9 Ch#9 HDC pl#12 [X2] wire#90
+10, 12, 91          !TDC ROC#2 Sl#9 Ch#10 HDC pl#12 [X2] wire#91
+11, 12, 92          !TDC ROC#2 Sl#9 Ch#11 HDC pl#12 [X2] wire#92
+12, 12, 93          !TDC ROC#2 Sl#9 Ch#12 HDC pl#12 [X2] wire#93
+13, 12, 94          !TDC ROC#2 Sl#9 Ch#13 HDC pl#12 [X2] wire#94
+14, 12, 95          !TDC ROC#2 Sl#9 Ch#14 HDC pl#12 [X2] wire#95
+15, 12, 96          !TDC ROC#2 Sl#9 Ch#15 HDC pl#12 [X2] wire#96
+16, 9, 77           !TDC ROC#2 Sl#9 Ch#16 HDC pl#9 [U] wire#77
+17, 9, 78           !TDC ROC#2 Sl#9 Ch#17 HDC pl#9 [U] wire#78
+18, 9, 79           !TDC ROC#2 Sl#9 Ch#18 HDC pl#9 [U] wire#79
+19, 9, 80           !TDC ROC#2 Sl#9 Ch#19 HDC pl#9 [U] wire#80
+20, 9, 81           !TDC ROC#2 Sl#9 Ch#20 HDC pl#9 [U] wire#81
+21, 9, 82           !TDC ROC#2 Sl#9 Ch#21 HDC pl#9 [U] wire#82
+22, 9, 83           !TDC ROC#2 Sl#9 Ch#22 HDC pl#9 [U] wire#83
+23, 9, 84           !TDC ROC#2 Sl#9 Ch#23 HDC pl#9 [U] wire#84
+24, 9, 85           !TDC ROC#2 Sl#9 Ch#24 HDC pl#9 [U] wire#85
+25, 9, 86           !TDC ROC#2 Sl#9 Ch#25 HDC pl#9 [U] wire#86
+26, 9, 87           !TDC ROC#2 Sl#9 Ch#26 HDC pl#9 [U] wire#87
+27, 9, 88           !TDC ROC#2 Sl#9 Ch#27 HDC pl#9 [U] wire#88
+28, 9, 89           !TDC ROC#2 Sl#9 Ch#28 HDC pl#9 [U] wire#89
+29, 9, 90           !TDC ROC#2 Sl#9 Ch#29 HDC pl#9 [U] wire#90
+30, 9, 91           !TDC ROC#2 Sl#9 Ch#30 HDC pl#9 [U] wire#91
+!31 !TDC ROC#2 Sl#9 Ch#31 unused
+32, 12, 113         !TDC ROC#2 Sl#9 Ch#32 HDC pl#12 [X2] wire#113
+!33 !TDC ROC#2 Sl#9 Ch#33 unused
+34, 10, 1           !TDC ROC#2 Sl#9 Ch#34 HDC pl#10 [V] wire#1
+35, 10, 2           !TDC ROC#2 Sl#9 Ch#35 HDC pl#10 [V] wire#2
+36, 10, 3           !TDC ROC#2 Sl#9 Ch#36 HDC pl#10 [V] wire#3
+37, 10, 4           !TDC ROC#2 Sl#9 Ch#37 HDC pl#10 [V] wire#4
+38, 10, 5           !TDC ROC#2 Sl#9 Ch#38 HDC pl#10 [V] wire#5
+39, 10, 6           !TDC ROC#2 Sl#9 Ch#39 HDC pl#10 [V] wire#6
+40, 10, 7           !TDC ROC#2 Sl#9 Ch#40 HDC pl#10 [V] wire#7
+41, 10, 8           !TDC ROC#2 Sl#9 Ch#41 HDC pl#10 [V] wire#8
+42, 10, 9           !TDC ROC#2 Sl#9 Ch#42 HDC pl#10 [V] wire#9
+43, 10, 10          !TDC ROC#2 Sl#9 Ch#43 HDC pl#10 [V] wire#10
+44, 10, 11          !TDC ROC#2 Sl#9 Ch#44 HDC pl#10 [V] wire#11
+45, 10, 12          !TDC ROC#2 Sl#9 Ch#45 HDC pl#10 [V] wire#12
+46, 10, 13          !TDC ROC#2 Sl#9 Ch#46 HDC pl#10 [V] wire#13
+47, 10, 14          !TDC ROC#2 Sl#9 Ch#47 HDC pl#10 [V] wire#14
+48, 7, 1            !TDC ROC#2 Sl#9 Ch#48 HDC pl#7 [X1] wire#1
+49, 7, 2            !TDC ROC#2 Sl#9 Ch#49 HDC pl#7 [X1] wire#2
+50, 7, 3            !TDC ROC#2 Sl#9 Ch#50 HDC pl#7 [X1] wire#3
+51, 7, 4            !TDC ROC#2 Sl#9 Ch#51 HDC pl#7 [X1] wire#4
+52, 7, 5            !TDC ROC#2 Sl#9 Ch#52 HDC pl#7 [X1] wire#5
+53, 7, 6            !TDC ROC#2 Sl#9 Ch#53 HDC pl#7 [X1] wire#6
+54, 7, 7            !TDC ROC#2 Sl#9 Ch#54 HDC pl#7 [X1] wire#7
+55, 7, 8            !TDC ROC#2 Sl#9 Ch#55 HDC pl#7 [X1] wire#8
+56, 7, 9            !TDC ROC#2 Sl#9 Ch#56 HDC pl#7 [X1] wire#9
+57, 7, 10           !TDC ROC#2 Sl#9 Ch#57 HDC pl#7 [X1] wire#10
+58, 7, 11           !TDC ROC#2 Sl#9 Ch#58 HDC pl#7 [X1] wire#11
+59, 7, 12           !TDC ROC#2 Sl#9 Ch#59 HDC pl#7 [X1] wire#12
+60, 7, 13           !TDC ROC#2 Sl#9 Ch#60 HDC pl#7 [X1] wire#13
+61, 7, 14           !TDC ROC#2 Sl#9 Ch#61 HDC pl#7 [X1] wire#14
+62, 7, 15           !TDC ROC#2 Sl#9 Ch#62 HDC pl#7 [X1] wire#15
+63, 7, 16           !TDC ROC#2 Sl#9 Ch#63 HDC pl#7 [X1] wire#16
+64, 12, 97          !TDC ROC#2 Sl#9 Ch#64 HDC pl#12 [X2] wire#97
+65, 12, 98          !TDC ROC#2 Sl#9 Ch#65 HDC pl#12 [X2] wire#98
+66, 12, 99          !TDC ROC#2 Sl#9 Ch#66 HDC pl#12 [X2] wire#99
+67, 12, 100         !TDC ROC#2 Sl#9 Ch#67 HDC pl#12 [X2] wire#100
+68, 12, 101         !TDC ROC#2 Sl#9 Ch#68 HDC pl#12 [X2] wire#101
+69, 12, 102         !TDC ROC#2 Sl#9 Ch#69 HDC pl#12 [X2] wire#102
+70, 12, 103         !TDC ROC#2 Sl#9 Ch#70 HDC pl#12 [X2] wire#103
+71, 12, 104         !TDC ROC#2 Sl#9 Ch#71 HDC pl#12 [X2] wire#104
+72, 12, 105         !TDC ROC#2 Sl#9 Ch#72 HDC pl#12 [X2] wire#105
+73, 12, 106         !TDC ROC#2 Sl#9 Ch#73 HDC pl#12 [X2] wire#106
+74, 12, 107         !TDC ROC#2 Sl#9 Ch#74 HDC pl#12 [X2] wire#107
+75, 12, 108         !TDC ROC#2 Sl#9 Ch#75 HDC pl#12 [X2] wire#108
+76, 12, 109         !TDC ROC#2 Sl#9 Ch#76 HDC pl#12 [X2] wire#109
+77, 12, 110         !TDC ROC#2 Sl#9 Ch#77 HDC pl#12 [X2] wire#110
+78, 12, 111         !TDC ROC#2 Sl#9 Ch#78 HDC pl#12 [X2] wire#111
+79, 12, 112         !TDC ROC#2 Sl#9 Ch#79 HDC pl#12 [X2] wire#112
+80, 9, 92           !TDC ROC#2 Sl#9 Ch#80 HDC pl#9 [U] wire#92
+81, 9, 93           !TDC ROC#2 Sl#9 Ch#81 HDC pl#9 [U] wire#93
+82, 9, 94           !TDC ROC#2 Sl#9 Ch#82 HDC pl#9 [U] wire#94
+83, 9, 95           !TDC ROC#2 Sl#9 Ch#83 HDC pl#9 [U] wire#95
+84, 9, 96           !TDC ROC#2 Sl#9 Ch#84 HDC pl#9 [U] wire#96
+85, 9, 97           !TDC ROC#2 Sl#9 Ch#85 HDC pl#9 [U] wire#97
+86, 9, 98           !TDC ROC#2 Sl#9 Ch#86 HDC pl#9 [U] wire#98
+87, 9, 99           !TDC ROC#2 Sl#9 Ch#87 HDC pl#9 [U] wire#99
+88, 9, 100          !TDC ROC#2 Sl#9 Ch#88 HDC pl#9 [U] wire#100
+89, 9, 101          !TDC ROC#2 Sl#9 Ch#89 HDC pl#9 [U] wire#101
+90, 9, 102          !TDC ROC#2 Sl#9 Ch#90 HDC pl#9 [U] wire#102
+91, 9, 103          !TDC ROC#2 Sl#9 Ch#91 HDC pl#9 [U] wire#103
+92, 9, 104          !TDC ROC#2 Sl#9 Ch#92 HDC pl#9 [U] wire#104
+93, 9, 105          !TDC ROC#2 Sl#9 Ch#93 HDC pl#9 [U] wire#105
+94, 9, 106          !TDC ROC#2 Sl#9 Ch#94 HDC pl#9 [U] wire#106
+95, 9, 107          !TDC ROC#2 Sl#9 Ch#95 HDC pl#9 [U] wire#107
+!
+!
+!                               2nd HDC chamber  planes1-6     
+Slot= 15
+0, 1, 1            !TDC ROC#2 Sl#11 Ch#0 HDC pl#7 [X1] wire#1
+1, 1, 2            !TDC ROC#2 Sl#11 Ch#1 HDC pl#7 [X1] wire#2
+2, 1, 3            !TDC ROC#2 Sl#11 Ch#2 HDC pl#7 [X1] wire#3
+3, 1, 4            !TDC ROC#2 Sl#11 Ch#3 HDC pl#7 [X1] wire#4
+4, 1, 5            !TDC ROC#2 Sl#11 Ch#4 HDC pl#7 [X1] wire#5
+5, 1, 6            !TDC ROC#2 Sl#11 Ch#5 HDC pl#7 [X1] wire#6
+6, 1, 7            !TDC ROC#2 Sl#11 Ch#6 HDC pl#7 [X1] wire#7
+7, 1, 8            !TDC ROC#2 Sl#11 Ch#7 HDC pl#7 [X1] wire#8
+8, 1, 9            !TDC ROC#2 Sl#11 Ch#8 HDC pl#7 [X1] wire#9
+9, 1, 10           !TDC ROC#2 Sl#11 Ch#9 HDC pl#7 [X1] wire#10
+10, 1, 11          !TDC ROC#2 Sl#11 Ch#10 HDC pl#7 [X1] wire#11
+11, 1, 12          !TDC ROC#2 Sl#11 Ch#11 HDC pl#7 [X1] wire#12
+12, 1, 13          !TDC ROC#2 Sl#11 Ch#12 HDC pl#7 [X1] wire#13
+13, 1, 14          !TDC ROC#2 Sl#11 Ch#13 HDC pl#7 [X1] wire#14
+14, 1, 15          !TDC ROC#2 Sl#11 Ch#14 HDC pl#7 [X1] wire#15
+15, 1, 16          !TDC ROC#2 Sl#11 Ch#15 HDC pl#7 [X1] wire#16
+16, 1, 17          !TDC ROC#2 Sl#11 Ch#16 HDC pl#7 [X1] wire#17
+17, 1, 18          !TDC ROC#2 Sl#11 Ch#17 HDC pl#7 [X1] wire#18
+18, 1, 19          !TDC ROC#2 Sl#11 Ch#18 HDC pl#7 [X1] wire#19
+19, 1, 20          !TDC ROC#2 Sl#11 Ch#19 HDC pl#7 [X1] wire#20
+20, 1, 21          !TDC ROC#2 Sl#11 Ch#20 HDC pl#7 [X1] wire#21
+21, 1, 22          !TDC ROC#2 Sl#11 Ch#21 HDC pl#7 [X1] wire#22
+22, 1, 23          !TDC ROC#2 Sl#11 Ch#22 HDC pl#7 [X1] wire#23
+23, 1, 24          !TDC ROC#2 Sl#11 Ch#23 HDC pl#7 [X1] wire#24
+24, 1, 25          !TDC ROC#2 Sl#11 Ch#24 HDC pl#7 [X1] wire#25
+25, 1, 26          !TDC ROC#2 Sl#11 Ch#25 HDC pl#7 [X1] wire#26
+26, 1, 27          !TDC ROC#2 Sl#11 Ch#26 HDC pl#7 [X1] wire#27
+27, 1, 28          !TDC ROC#2 Sl#11 Ch#27 HDC pl#7 [X1] wire#28
+28, 1, 29          !TDC ROC#2 Sl#11 Ch#28 HDC pl#7 [X1] wire#29
+29, 1, 30          !TDC ROC#2 Sl#11 Ch#29 HDC pl#7 [X1] wire#30
+30, 1, 31          !TDC ROC#2 Sl#11 Ch#30 HDC pl#7 [X1] wire#31
+31, 1, 32          !TDC ROC#2 Sl#11 Ch#31 HDC pl#7 [X1] wire#32
+32, 1, 33          !TDC ROC#2 Sl#11 Ch#32 HDC pl#7 [X1] wire#33
+33, 1, 34          !TDC ROC#2 Sl#11 Ch#33 HDC pl#7 [X1] wire#34
+34, 1, 35          !TDC ROC#2 Sl#11 Ch#34 HDC pl#7 [X1] wire#35
+35, 1, 36          !TDC ROC#2 Sl#11 Ch#35 HDC pl#7 [X1] wire#36
+36, 1, 37          !TDC ROC#2 Sl#11 Ch#36 HDC pl#7 [X1] wire#37
+37, 1, 38          !TDC ROC#2 Sl#11 Ch#37 HDC pl#7 [X1] wire#38
+38, 1, 39          !TDC ROC#2 Sl#11 Ch#38 HDC pl#7 [X1] wire#39
+39, 1, 40          !TDC ROC#2 Sl#11 Ch#39 HDC pl#7 [X1] wire#40
+40, 1, 41          !TDC ROC#2 Sl#11 Ch#40 HDC pl#7 [X1] wire#41
+41, 1, 42          !TDC ROC#2 Sl#11 Ch#41 HDC pl#7 [X1] wire#42
+42, 1, 43          !TDC ROC#2 Sl#11 Ch#42 HDC pl#7 [X1] wire#43
+43, 1, 44          !TDC ROC#2 Sl#11 Ch#43 HDC pl#7 [X1] wire#44
+44, 1, 45          !TDC ROC#2 Sl#11 Ch#44 HDC pl#7 [X1] wire#45
+45, 1, 46          !TDC ROC#2 Sl#11 Ch#45 HDC pl#7 [X1] wire#46
+46, 1, 47          !TDC ROC#2 Sl#11 Ch#46 HDC pl#7 [X1] wire#47
+47, 1, 48          !TDC ROC#2 Sl#11 Ch#47 HDC pl#7 [X1] wire#48
+48, 1, 49          !TDC ROC#2 Sl#11 Ch#48 HDC pl#7 [X1] wire#49
+49, 1, 50          !TDC ROC#2 Sl#11 Ch#49 HDC pl#7 [X1] wire#50
+50, 1, 51          !TDC ROC#2 Sl#11 Ch#50 HDC pl#7 [X1] wire#51
+51, 1, 52          !TDC ROC#2 Sl#11 Ch#51 HDC pl#7 [X1] wire#52
+52, 1, 53          !TDC ROC#2 Sl#11 Ch#52 HDC pl#7 [X1] wire#53
+53, 1, 54          !TDC ROC#2 Sl#11 Ch#53 HDC pl#7 [X1] wire#54
+54, 1, 55          !TDC ROC#2 Sl#11 Ch#54 HDC pl#7 [X1] wire#55
+55, 1, 56          !TDC ROC#2 Sl#11 Ch#55 HDC pl#7 [X1] wire#56
+56, 1, 57          !TDC ROC#2 Sl#11 Ch#56 HDC pl#7 [X1] wire#57
+57, 1, 58          !TDC ROC#2 Sl#11 Ch#57 HDC pl#7 [X1] wire#58
+58, 1, 59          !TDC ROC#2 Sl#11 Ch#58 HDC pl#7 [X1] wire#59
+59, 1, 60          !TDC ROC#2 Sl#11 Ch#59 HDC pl#7 [X1] wire#60
+60, 1, 61          !TDC ROC#2 Sl#11 Ch#60 HDC pl#7 [X1] wire#61
+61, 1, 62          !TDC ROC#2 Sl#11 Ch#61 HDC pl#7 [X1] wire#62
+62, 1, 63          !TDC ROC#2 Sl#11 Ch#62 HDC pl#7 [X1] wire#63
+63, 1, 64          !TDC ROC#2 Sl#11 Ch#63 HDC pl#7 [X1] wire#64
+64, 1, 65          !TDC ROC#2 Sl#11 Ch#64 HDC pl#7 [X1] wire#65
+65, 1, 66          !TDC ROC#2 Sl#11 Ch#65 HDC pl#7 [X1] wire#66
+66, 1, 67          !TDC ROC#2 Sl#11 Ch#66 HDC pl#7 [X1] wire#67
+67, 1, 68          !TDC ROC#2 Sl#11 Ch#67 HDC pl#7 [X1] wire#68
+68, 1, 69          !TDC ROC#2 Sl#11 Ch#68 HDC pl#7 [X1] wire#69
+69, 1, 70          !TDC ROC#2 Sl#11 Ch#69 HDC pl#7 [X1] wire#70
+70, 1, 71          !TDC ROC#2 Sl#11 Ch#70 HDC pl#7 [X1] wire#71
+71, 1, 72          !TDC ROC#2 Sl#11 Ch#71 HDC pl#7 [X1] wire#72
+72, 1, 73          !TDC ROC#2 Sl#11 Ch#72 HDC pl#7 [X1] wire#73
+73, 1, 74          !TDC ROC#2 Sl#11 Ch#73 HDC pl#7 [X1] wire#74
+74, 1, 75          !TDC ROC#2 Sl#11 Ch#74 HDC pl#7 [X1] wire#75
+75, 1, 76          !TDC ROC#2 Sl#11 Ch#75 HDC pl#7 [X1] wire#76
+76, 1, 77          !TDC ROC#2 Sl#11 Ch#76 HDC pl#7 [X1] wire#77
+77, 1, 78          !TDC ROC#2 Sl#11 Ch#77 HDC pl#7 [X1] wire#78
+78, 1, 79          !TDC ROC#2 Sl#11 Ch#78 HDC pl#7 [X1] wire#79
+79, 1, 80          !TDC ROC#2 Sl#11 Ch#79 HDC pl#7 [X1] wire#80
+80, 1, 81          !TDC ROC#2 Sl#11 Ch#80 HDC pl#7 [X1] wire#81
+81, 1, 82          !TDC ROC#2 Sl#11 Ch#81 HDC pl#7 [X1] wire#82
+82, 1, 83          !TDC ROC#2 Sl#11 Ch#82 HDC pl#7 [X1] wire#83
+83, 1, 84          !TDC ROC#2 Sl#11 Ch#83 HDC pl#7 [X1] wire#84
+84, 1, 85          !TDC ROC#2 Sl#11 Ch#84 HDC pl#7 [X1] wire#85
+85, 1, 86          !TDC ROC#2 Sl#11 Ch#85 HDC pl#7 [X1] wire#86
+86, 1, 87          !TDC ROC#2 Sl#11 Ch#86 HDC pl#7 [X1] wire#87
+87, 1, 88          !TDC ROC#2 Sl#11 Ch#87 HDC pl#7 [X1] wire#88
+88, 1, 89          !TDC ROC#2 Sl#11 Ch#88 HDC pl#7 [X1] wire#89
+89, 1, 90          !TDC ROC#2 Sl#11 Ch#89 HDC pl#7 [X1] wire#90
+90, 1, 91          !TDC ROC#2 Sl#11 Ch#90 HDC pl#7 [X1] wire#91
+91, 1, 92          !TDC ROC#2 Sl#11 Ch#91 HDC pl#7 [X1] wire#92
+92, 1, 93          !TDC ROC#2 Sl#11 Ch#92 HDC pl#7 [X1] wire#93
+93, 1, 94          !TDC ROC#2 Sl#11 Ch#93 HDC pl#7 [X1] wire#94
+94, 1, 95          !TDC ROC#2 Sl#11 Ch#94 HDC pl#7 [X1] wire#95
+95, 1, 96          !TDC ROC#2 Sl#11 Ch#95 HDC pl#7 [X1] wire#96
+Slot= 16
+0, 1, 97           !TDC ROC#2 Sl#12 Ch#0 HDC pl#7 [X1] wire#97
+1, 1, 98           !TDC ROC#2 Sl#12 Ch#1 HDC pl#7 [X1] wire#98
+2, 1, 99           !TDC ROC#2 Sl#12 Ch#2 HDC pl#7 [X1] wire#99
+3, 1, 100          !TDC ROC#2 Sl#12 Ch#3 HDC pl#7 [X1] wire#100
+4, 1, 101          !TDC ROC#2 Sl#12 Ch#4 HDC pl#7 [X1] wire#101
+5, 1, 102          !TDC ROC#2 Sl#12 Ch#5 HDC pl#7 [X1] wire#102
+6, 1, 103          !TDC ROC#2 Sl#12 Ch#6 HDC pl#7 [X1] wire#103
+7, 1, 104          !TDC ROC#2 Sl#12 Ch#7 HDC pl#7 [X1] wire#104
+8, 1, 105          !TDC ROC#2 Sl#12 Ch#8 HDC pl#7 [X1] wire#105
+9, 1, 106          !TDC ROC#2 Sl#12 Ch#9 HDC pl#7 [X1] wire#106
+10, 1, 107         !TDC ROC#2 Sl#12 Ch#10 HDC pl#7 [X1] wire#107
+11, 1, 108         !TDC ROC#2 Sl#12 Ch#11 HDC pl#7 [X1] wire#108
+12, 1, 109         !TDC ROC#2 Sl#12 Ch#12 HDC pl#7 [X1] wire#109
+13, 1, 110         !TDC ROC#2 Sl#12 Ch#13 HDC pl#7 [X1] wire#110
+14, 1, 111         !TDC ROC#2 Sl#12 Ch#14 HDC pl#7 [X1] wire#111
+15, 1, 112         !TDC ROC#2 Sl#12 Ch#15 HDC pl#7 [X1] wire#112
+16, 2, 1           !TDC ROC#2 Sl#12 Ch#16 HDC pl#8 [Y1] wire#1
+17, 2, 2           !TDC ROC#2 Sl#12 Ch#17 HDC pl#8 [Y1] wire#2
+18, 2, 3           !TDC ROC#2 Sl#12 Ch#18 HDC pl#8 [Y1] wire#3
+19, 2, 4           !TDC ROC#2 Sl#12 Ch#19 HDC pl#8 [Y1] wire#4
+20, 2, 5           !TDC ROC#2 Sl#12 Ch#20 HDC pl#8 [Y1] wire#5
+21, 2, 6           !TDC ROC#2 Sl#12 Ch#21 HDC pl#8 [Y1] wire#6
+22, 2, 7           !TDC ROC#2 Sl#12 Ch#22 HDC pl#8 [Y1] wire#7
+23, 2, 8           !TDC ROC#2 Sl#12 Ch#23 HDC pl#8 [Y1] wire#8
+24, 2, 9           !TDC ROC#2 Sl#12 Ch#24 HDC pl#8 [Y1] wire#9
+25, 2, 10          !TDC ROC#2 Sl#12 Ch#25 HDC pl#8 [Y1] wire#10
+26, 2, 11          !TDC ROC#2 Sl#12 Ch#26 HDC pl#8 [Y1] wire#11
+27, 2, 12          !TDC ROC#2 Sl#12 Ch#27 HDC pl#8 [Y1] wire#12
+28, 2, 13          !TDC ROC#2 Sl#12 Ch#28 HDC pl#8 [Y1] wire#13
+! 29  !TDC ROC#2 Sl#12 Ch#29 unused
+! 30  !TDC ROC#2 Sl#12 Ch#30 unused
+! 31  !TDC ROC#2 Sl#12 Ch#31 unused
+32, 2, 14          !TDC ROC#2 Sl#12 Ch#32 HDC pl#8 [Y1] wire#14
+33, 2, 15          !TDC ROC#2 Sl#12 Ch#33 HDC pl#8 [Y1] wire#15
+34, 2, 16          !TDC ROC#2 Sl#12 Ch#34 HDC pl#8 [Y1] wire#16
+35, 2, 17          !TDC ROC#2 Sl#12 Ch#35 HDC pl#8 [Y1] wire#17
+36, 2, 18          !TDC ROC#2 Sl#12 Ch#36 HDC pl#8 [Y1] wire#18
+37, 2, 19          !TDC ROC#2 Sl#12 Ch#37 HDC pl#8 [Y1] wire#19
+38, 2, 20          !TDC ROC#2 Sl#12 Ch#38 HDC pl#8 [Y1] wire#20
+39, 2, 21          !TDC ROC#2 Sl#12 Ch#39 HDC pl#8 [Y1] wire#21
+40, 2, 22          !TDC ROC#2 Sl#12 Ch#40 HDC pl#8 [Y1] wire#22
+41, 2, 23          !TDC ROC#2 Sl#12 Ch#41 HDC pl#8 [Y1] wire#23
+42, 2, 24          !TDC ROC#2 Sl#12 Ch#42 HDC pl#8 [Y1] wire#24
+43, 2, 25          !TDC ROC#2 Sl#12 Ch#43 HDC pl#8 [Y1] wire#25
+44, 2, 26          !TDC ROC#2 Sl#12 Ch#44 HDC pl#8 [Y1] wire#26
+! 45 !TDC ROC#2 Sl#12 Ch#45 unused
+! 46 !TDC ROC#2 Sl#12 Ch#46 unused
+! 47 !TDC ROC#2 Sl#12 Ch#47 unused
+48, 2, 27          !TDC ROC#2 Sl#12 Ch#48 HDC pl#8 [Y1] wire#27
+49, 2, 28          !TDC ROC#2 Sl#12 Ch#49 HDC pl#8 [Y1] wire#28
+50, 2, 29          !TDC ROC#2 Sl#12 Ch#50 HDC pl#8 [Y1] wire#29
+51, 2, 30          !TDC ROC#2 Sl#12 Ch#51 HDC pl#8 [Y1] wire#30
+52, 2, 31          !TDC ROC#2 Sl#12 Ch#52 HDC pl#8 [Y1] wire#31
+53, 2, 32          !TDC ROC#2 Sl#12 Ch#53 HDC pl#8 [Y1] wire#32
+54, 2, 33          !TDC ROC#2 Sl#12 Ch#54 HDC pl#8 [Y1] wire#33
+55, 2, 34          !TDC ROC#2 Sl#12 Ch#55 HDC pl#8 [Y1] wire#34
+56, 2, 35          !TDC ROC#2 Sl#12 Ch#56 HDC pl#8 [Y1] wire#35
+57, 2, 36          !TDC ROC#2 Sl#12 Ch#57 HDC pl#8 [Y1] wire#36
+58, 2, 37          !TDC ROC#2 Sl#12 Ch#58 HDC pl#8 [Y1] wire#37
+59, 2, 38          !TDC ROC#2 Sl#12 Ch#59 HDC pl#8 [Y1] wire#38
+60, 2, 39          !TDC ROC#2 Sl#12 Ch#60 HDC pl#8 [Y1] wire#39
+! 61 !TDC ROC#2 Sl#12 Ch#61 unused
+! 62 !TDC ROC#2 Sl#12 Ch#62 unused
+! 63 !TDC ROC#2 Sl#12 Ch#63 unused
+64, 2, 40          !TDC ROC#2 Sl#12 Ch#64 HDC pl#8 [Y1] wire#40
+65, 2, 41          !TDC ROC#2 Sl#12 Ch#65 HDC pl#8 [Y1] wire#41
+66, 2, 42          !TDC ROC#2 Sl#12 Ch#66 HDC pl#8 [Y1] wire#42
+67, 2, 43          !TDC ROC#2 Sl#12 Ch#67 HDC pl#8 [Y1] wire#43
+68, 2, 44          !TDC ROC#2 Sl#12 Ch#68 HDC pl#8 [Y1] wire#44
+69, 2, 45          !TDC ROC#2 Sl#12 Ch#69 HDC pl#8 [Y1] wire#45
+70, 2, 46          !TDC ROC#2 Sl#12 Ch#70 HDC pl#8 [Y1] wire#46
+71, 2, 47          !TDC ROC#2 Sl#12 Ch#71 HDC pl#8 [Y1] wire#47
+72, 2, 48          !TDC ROC#2 Sl#12 Ch#72 HDC pl#8 [Y1] wire#48
+73, 2, 49          !TDC ROC#2 Sl#12 Ch#73 HDC pl#8 [Y1] wire#49
+74, 2, 50          !TDC ROC#2 Sl#12 Ch#74 HDC pl#8 [Y1] wire#50
+75, 2, 51          !TDC ROC#2 Sl#12 Ch#75 HDC pl#8 [Y1] wire#51
+76, 2, 52          !TDC ROC#2 Sl#12 Ch#76 HDC pl#8 [Y1] wire#52
+! 77 !TDC ROC#2 Sl#12 Ch#77 unused
+! 78 !TDC ROC#2 Sl#12 Ch#78 unused
+! 79 !TDC ROC#2 Sl#12 Ch#79 unused
+80, 1, 113         !TDC ROC#2 Sl#12 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#12 Ch#81 unused
+82, 3, 1           !TDC ROC#2 Sl#12 Ch#82 HDC pl#9 [U] wire#1
+83, 3, 2           !TDC ROC#2 Sl#12 Ch#83 HDC pl#9 [U] wire#2
+84, 3, 3           !TDC ROC#2 Sl#12 Ch#84 HDC pl#9 [U] wire#3
+85, 3, 4           !TDC ROC#2 Sl#12 Ch#85 HDC pl#9 [U] wire#4
+86, 3, 5           !TDC ROC#2 Sl#12 Ch#86 HDC pl#9 [U] wire#5
+87, 3, 6           !TDC ROC#2 Sl#12 Ch#87 HDC pl#9 [U] wire#6
+88, 3, 7           !TDC ROC#2 Sl#12 Ch#88 HDC pl#9 [U] wire#7
+89, 3, 8           !TDC ROC#2 Sl#12 Ch#89 HDC pl#9 [U] wire#8
+90, 3, 9           !TDC ROC#2 Sl#12 Ch#90 HDC pl#9 [U] wire#9
+91, 3, 10          !TDC ROC#2 Sl#12 Ch#91 HDC pl#9 [U] wire#10
+92, 3, 11          !TDC ROC#2 Sl#12 Ch#92 HDC pl#9 [U] wire#11
+93, 3, 12          !TDC ROC#2 Sl#12 Ch#93 HDC pl#9 [U] wire#12
+94, 3, 13          !TDC ROC#2 Sl#12 Ch#94 HDC pl#9 [U] wire#13
+95, 3, 14          !TDC ROC#2 Sl#12 Ch#95 HDC pl#9 [U] wire#14
+Slot= 18
+0, 3, 15           !TDC ROC#2 Sl#14 Ch#0 HDC pl#9 [U] wire#15
+1, 3, 16           !TDC ROC#2 Sl#14 Ch#1 HDC pl#9 [U] wire#16
+2, 3, 17           !TDC ROC#2 Sl#14 Ch#2 HDC pl#9 [U] wire#17
+3, 3, 18           !TDC ROC#2 Sl#14 Ch#3 HDC pl#9 [U] wire#18
+4, 3, 19           !TDC ROC#2 Sl#14 Ch#4 HDC pl#9 [U] wire#19
+5, 3, 20           !TDC ROC#2 Sl#14 Ch#5 HDC pl#9 [U] wire#20
+6, 3, 21           !TDC ROC#2 Sl#14 Ch#6 HDC pl#9 [U] wire#21
+7, 3, 22           !TDC ROC#2 Sl#14 Ch#7 HDC pl#9 [U] wire#22
+8, 3, 23           !TDC ROC#2 Sl#14 Ch#8 HDC pl#9 [U] wire#23
+9, 3, 24           !TDC ROC#2 Sl#14 Ch#9 HDC pl#9 [U] wire#24
+10, 3, 25          !TDC ROC#2 Sl#14 Ch#10 HDC pl#9 [U] wire#25
+11, 3, 26          !TDC ROC#2 Sl#14 Ch#11 HDC pl#9 [U] wire#26
+12, 3, 27          !TDC ROC#2 Sl#14 Ch#12 HDC pl#9 [U] wire#27
+13, 3, 28          !TDC ROC#2 Sl#14 Ch#13 HDC pl#9 [U] wire#28
+14, 3, 29          !TDC ROC#2 Sl#14 Ch#14 HDC pl#9 [U] wire#29
+! 15 !TDC ROC#2 Sl#14 Ch#15 unused
+16, 3, 30          !TDC ROC#2 Sl#14 Ch#16 HDC pl#9 [U] wire#30
+17, 3, 31          !TDC ROC#2 Sl#14 Ch#17 HDC pl#9 [U] wire#31
+18, 3, 32          !TDC ROC#2 Sl#14 Ch#18 HDC pl#9 [U] wire#32
+19, 3, 33          !TDC ROC#2 Sl#14 Ch#19 HDC pl#9 [U] wire#33
+20, 3, 34          !TDC ROC#2 Sl#14 Ch#20 HDC pl#9 [U] wire#34
+21, 3, 35          !TDC ROC#2 Sl#14 Ch#21 HDC pl#9 [U] wire#35
+22, 3, 36          !TDC ROC#2 Sl#14 Ch#22 HDC pl#9 [U] wire#36
+23, 3, 37          !TDC ROC#2 Sl#14 Ch#23 HDC pl#9 [U] wire#37
+24, 3, 38          !TDC ROC#2 Sl#14 Ch#24 HDC pl#9 [U] wire#38
+25, 3, 39          !TDC ROC#2 Sl#14 Ch#25 HDC pl#9 [U] wire#39
+26, 3, 40          !TDC ROC#2 Sl#14 Ch#26 HDC pl#9 [U] wire#40
+27, 3, 41          !TDC ROC#2 Sl#14 Ch#27 HDC pl#9 [U] wire#41
+28, 3, 42          !TDC ROC#2 Sl#14 Ch#28 HDC pl#9 [U] wire#42
+29, 3, 43          !TDC ROC#2 Sl#14 Ch#29 HDC pl#9 [U] wire#43
+30, 3, 44          !TDC ROC#2 Sl#14 Ch#30 HDC pl#9 [U] wire#44
+31, 3, 45          !TDC ROC#2 Sl#14 Ch#31 HDC pl#9 [U] wire#45
+32, 3, 46          !TDC ROC#2 Sl#14 Ch#32 HDC pl#9 [U] wire#46
+33, 3, 47          !TDC ROC#2 Sl#14 Ch#33 HDC pl#9 [U] wire#47
+34, 3, 48          !TDC ROC#2 Sl#14 Ch#34 HDC pl#9 [U] wire#48
+35, 3, 49          !TDC ROC#2 Sl#14 Ch#35 HDC pl#9 [U] wire#49
+36, 3, 50          !TDC ROC#2 Sl#14 Ch#36 HDC pl#9 [U] wire#50
+37, 3, 51          !TDC ROC#2 Sl#14 Ch#37 HDC pl#9 [U] wire#51
+38, 3, 52          !TDC ROC#2 Sl#14 Ch#38 HDC pl#9 [U] wire#52
+39, 3, 53          !TDC ROC#2 Sl#14 Ch#39 HDC pl#9 [U] wire#53
+40, 3, 54          !TDC ROC#2 Sl#14 Ch#40 HDC pl#9 [U] wire#54
+41, 3, 55          !TDC ROC#2 Sl#14 Ch#41 HDC pl#9 [U] wire#55
+42, 3, 56          !TDC ROC#2 Sl#14 Ch#42 HDC pl#9 [U] wire#56
+43, 3, 57          !TDC ROC#2 Sl#14 Ch#43 HDC pl#9 [U] wire#57
+44, 3, 58          !TDC ROC#2 Sl#14 Ch#44 HDC pl#9 [U] wire#58
+45, 3, 59          !TDC ROC#2 Sl#14 Ch#45 HDC pl#9 [U] wire#59
+46, 3, 60          !TDC ROC#2 Sl#14 Ch#46 HDC pl#9 [U] wire#60
+! 47 !TDC ROC#2 Sl#14 Ch#47 unused
+48, 3, 61          !TDC ROC#2 Sl#14 Ch#48 HDC pl#9 [U] wire#61
+49, 3, 62          !TDC ROC#2 Sl#14 Ch#49 HDC pl#9 [U] wire#62
+50, 3, 63          !TDC ROC#2 Sl#14 Ch#50 HDC pl#9 [U] wire#63
+51, 3, 64          !TDC ROC#2 Sl#14 Ch#51 HDC pl#9 [U] wire#64
+52, 3, 65          !TDC ROC#2 Sl#14 Ch#52 HDC pl#9 [U] wire#65
+53, 3, 66          !TDC ROC#2 Sl#14 Ch#53 HDC pl#9 [U] wire#66
+54, 3, 67          !TDC ROC#2 Sl#14 Ch#54 HDC pl#9 [U] wire#67
+55, 3, 68          !TDC ROC#2 Sl#14 Ch#55 HDC pl#9 [U] wire#68
+56, 3, 69          !TDC ROC#2 Sl#14 Ch#56 HDC pl#9 [U] wire#69
+57, 3, 70          !TDC ROC#2 Sl#14 Ch#57 HDC pl#9 [U] wire#70
+58, 3, 71          !TDC ROC#2 Sl#14 Ch#58 HDC pl#9 [U] wire#71
+59, 3, 72          !TDC ROC#2 Sl#14 Ch#59 HDC pl#9 [U] wire#72
+60, 3, 73          !TDC ROC#2 Sl#14 Ch#60 HDC pl#9 [U] wire#73
+61, 3, 74          !TDC ROC#2 Sl#14 Ch#61 HDC pl#9 [U] wire#74
+62, 3, 75          !TDC ROC#2 Sl#14 Ch#62 HDC pl#9 [U] wire#75
+63, 3, 76          !TDC ROC#2 Sl#14 Ch#63 HDC pl#9 [U] wire#76
+64, 3, 77          !TDC ROC#2 Sl#14 Ch#64 HDC pl#9 [U] wire#77
+65, 3, 78          !TDC ROC#2 Sl#14 Ch#65 HDC pl#9 [U] wire#78
+66, 3, 79          !TDC ROC#2 Sl#14 Ch#66 HDC pl#9 [U] wire#79
+67, 3, 80          !TDC ROC#2 Sl#14 Ch#67 HDC pl#9 [U] wire#80
+68, 3, 81          !TDC ROC#2 Sl#14 Ch#68 HDC pl#9 [U] wire#81
+69, 3, 82          !TDC ROC#2 Sl#14 Ch#69 HDC pl#9 [U] wire#82
+70, 3, 83          !TDC ROC#2 Sl#14 Ch#70 HDC pl#9 [U] wire#83
+71, 3, 84          !TDC ROC#2 Sl#14 Ch#71 HDC pl#9 [U] wire#84
+72, 3, 85          !TDC ROC#2 Sl#14 Ch#72 HDC pl#9 [U] wire#85
+73, 3, 86          !TDC ROC#2 Sl#14 Ch#73 HDC pl#9 [U] wire#86
+74, 3, 87          !TDC ROC#2 Sl#14 Ch#74 HDC pl#9 [U] wire#87
+75, 3, 88          !TDC ROC#2 Sl#14 Ch#75 HDC pl#9 [U] wire#88
+76, 3, 89          !TDC ROC#2 Sl#14 Ch#76 HDC pl#9 [U] wire#89
+77, 3, 90          !TDC ROC#2 Sl#14 Ch#77 HDC pl#9 [U] wire#90
+78, 3, 91          !TDC ROC#2 Sl#14 Ch#78 HDC pl#9 [U] wire#91
+!79, !unused
+80, 3, 92          !TDC ROC#2 Sl#14 Ch#80 HDC pl#9 [U] wire#92
+81, 3, 93          !TDC ROC#2 Sl#14 Ch#81 HDC pl#9 [U] wire#93
+82, 3, 94          !TDC ROC#2 Sl#14 Ch#82 HDC pl#9 [U] wire#94
+83, 3, 95          !TDC ROC#2 Sl#14 Ch#83 HDC pl#9 [U] wire#95
+84, 3, 96          !TDC ROC#2 Sl#14 Ch#84 HDC pl#9 [U] wire#96
+85, 3, 97          !TDC ROC#2 Sl#14 Ch#85 HDC pl#9 [U] wire#97
+86, 3, 98          !TDC ROC#2 Sl#14 Ch#86 HDC pl#9 [U] wire#98
+87, 3, 99          !TDC ROC#2 Sl#14 Ch#87 HDC pl#9 [U] wire#99
+88, 3, 100         !TDC ROC#2 Sl#14 Ch#88 HDC pl#9 [U] wire#100
+89, 3, 101         !TDC ROC#2 Sl#14 Ch#89 HDC pl#9 [U] wire#101
+90, 3, 102         !TDC ROC#2 Sl#14 Ch#90 HDC pl#9 [U] wire#102
+91, 3, 103         !TDC ROC#2 Sl#14 Ch#91 HDC pl#9 [U] wire#103
+92, 3, 104         !TDC ROC#2 Sl#14 Ch#92 HDC pl#9 [U] wire#104
+93, 3, 105         !TDC ROC#2 Sl#14 Ch#93 HDC pl#9 [U] wire#105
+94, 3, 106         !TDC ROC#2 Sl#14 Ch#94 HDC pl#9 [U] wire#106
+95, 3, 107         !TDC ROC#2 Sl#14 Ch#95 HDC pl#9 [U] wire#107
+Slot= 19
+0, 6, 113           !TDC ROC#2 Sl#15 Ch#0 HDC pl#12 [X2] wire#113
+!1,  !unused
+2, 4, 1           !TDC ROC#2 Sl#15 Ch#2 HDC pl#10 [V] wire#1
+3, 4, 2           !TDC ROC#2 Sl#15 Ch#3 HDC pl#10 [V] wire#2
+4, 4, 3           !TDC ROC#2 Sl#15 Ch#4 HDC pl#10 [V] wire#3
+5, 4, 4           !TDC ROC#2 Sl#15 Ch#5 HDC pl#10 [V] wire#4
+6, 4, 5           !TDC ROC#2 Sl#15 Ch#6 HDC pl#10 [V] wire#5
+7, 4, 6           !TDC ROC#2 Sl#15 Ch#7 HDC pl#10 [V] wire#6
+8, 4, 7           !TDC ROC#2 Sl#15 Ch#8 HDC pl#10 [V] wire#7
+9, 4, 8          !TDC ROC#2 Sl#15 Ch#9 HDC pl#10 [V] wire#8
+10, 4, 9          !TDC ROC#2 Sl#15 Ch#10 HDC pl#10 [V] wire#9
+11, 4, 10          !TDC ROC#2 Sl#15 Ch#11 HDC pl#10 [V] wire#10
+12, 4, 11          !TDC ROC#2 Sl#15 Ch#12 HDC pl#10 [V] wire#11
+13, 4, 12          !TDC ROC#2 Sl#15 Ch#13 HDC pl#10 [V] wire#12
+14, 4, 13          !TDC ROC#2 Sl#15 Ch#14 HDC pl#10 [V] wire#13
+15, 4, 14          !TDC ROC#2 Sl#15 Ch#15 HDC pl#10 [V] wire#14
+16, 4, 15          !TDC ROC#2 Sl#15 Ch#16 HDC pl#10 [V] wire#15
+17, 4, 16          !TDC ROC#2 Sl#15 Ch#17 HDC pl#10 [V] wire#16
+18, 4, 17          !TDC ROC#2 Sl#15 Ch#18 HDC pl#10 [V] wire#17
+19, 4, 18          !TDC ROC#2 Sl#15 Ch#19 HDC pl#10 [V] wire#18
+20, 4, 19          !TDC ROC#2 Sl#15 Ch#20 HDC pl#10 [V] wire#19
+21, 4, 20          !TDC ROC#2 Sl#15 Ch#21 HDC pl#10 [V] wire#20
+22, 4, 21          !TDC ROC#2 Sl#15 Ch#22 HDC pl#10 [V] wire#21
+23, 4, 22          !TDC ROC#2 Sl#15 Ch#23 HDC pl#10 [V] wire#22
+24, 4, 23          !TDC ROC#2 Sl#15 Ch#24 HDC pl#10 [V] wire#23
+25, 4, 24          !TDC ROC#2 Sl#15 Ch#25 HDC pl#10 [V] wire#24
+26, 4, 25          !TDC ROC#2 Sl#15 Ch#26 HDC pl#10 [V] wire#25
+27, 4, 26          !TDC ROC#2 Sl#15 Ch#27 HDC pl#10 [V] wire#26
+28, 4, 27          !TDC ROC#2 Sl#15 Ch#28 HDC pl#10 [V] wire#27
+29, 4, 28          !TDC ROC#2 Sl#15 Ch#29 HDC pl#10 [V] wire#28
+30, 4, 29          !TDC ROC#2 Sl#15 Ch#30 HDC pl#10 [V] wire#29
+! 31 !TDC ROC#2 Sl#15 Ch#31 unused
+32, 4, 30          !TDC ROC#2 Sl#15 Ch#32 HDC pl#10 [V] wire#30
+33, 4, 31          !TDC ROC#2 Sl#15 Ch#33 HDC pl#10 [V] wire#31
+34, 4, 32          !TDC ROC#2 Sl#15 Ch#34 HDC pl#10 [V] wire#32
+35, 4, 33          !TDC ROC#2 Sl#15 Ch#35 HDC pl#10 [V] wire#33
+36, 4, 34          !TDC ROC#2 Sl#15 Ch#36 HDC pl#10 [V] wire#34
+37, 4, 35          !TDC ROC#2 Sl#15 Ch#37 HDC pl#10 [V] wire#35
+38, 4, 36          !TDC ROC#2 Sl#15 Ch#38 HDC pl#10 [V] wire#36
+39, 4, 37          !TDC ROC#2 Sl#15 Ch#39 HDC pl#10 [V] wire#37
+40, 4, 38          !TDC ROC#2 Sl#15 Ch#40 HDC pl#10 [V] wire#38
+41, 4, 39          !TDC ROC#2 Sl#15 Ch#41 HDC pl#10 [V] wire#39
+42, 4, 40          !TDC ROC#2 Sl#15 Ch#42 HDC pl#10 [V] wire#40
+43, 4, 41          !TDC ROC#2 Sl#15 Ch#43 HDC pl#10 [V] wire#41
+44, 4, 42          !TDC ROC#2 Sl#15 Ch#44 HDC pl#10 [V] wire#42
+45, 4, 43          !TDC ROC#2 Sl#15 Ch#45 HDC pl#10 [V] wire#43
+46, 4, 44          !TDC ROC#2 Sl#15 Ch#46 HDC pl#10 [V] wire#44
+47, 4, 45          !TDC ROC#2 Sl#15 Ch#47 HDC pl#10 [V] wire#45
+48, 4, 46          !TDC ROC#2 Sl#15 Ch#48 HDC pl#10 [V] wire#46
+49, 4, 47          !TDC ROC#2 Sl#15 Ch#49 HDC pl#10 [V] wire#47
+50, 4, 48          !TDC ROC#2 Sl#15 Ch#50 HDC pl#10 [V] wire#48
+51, 4, 49          !TDC ROC#2 Sl#15 Ch#51 HDC pl#10 [V] wire#49
+52, 4, 50          !TDC ROC#2 Sl#15 Ch#52 HDC pl#10 [V] wire#50
+53, 4, 51          !TDC ROC#2 Sl#15 Ch#53 HDC pl#10 [V] wire#51
+54, 4, 52          !TDC ROC#2 Sl#15 Ch#54 HDC pl#10 [V] wire#52
+55, 4, 53          !TDC ROC#2 Sl#15 Ch#55 HDC pl#10 [V] wire#53
+56, 4, 54          !TDC ROC#2 Sl#15 Ch#56 HDC pl#10 [V] wire#54
+57, 4, 55          !TDC ROC#2 Sl#15 Ch#57 HDC pl#10 [V] wire#55
+58, 4, 56          !TDC ROC#2 Sl#15 Ch#58 HDC pl#10 [V] wire#56
+59, 4, 57          !TDC ROC#2 Sl#15 Ch#59 HDC pl#10 [V] wire#57
+60, 4, 58          !TDC ROC#2 Sl#15 Ch#60 HDC pl#10 [V] wire#58
+61, 4, 59          !TDC ROC#2 Sl#15 Ch#61 HDC pl#10 [V] wire#59
+62, 4, 60          !TDC ROC#2 Sl#15 Ch#62 HDC pl#10 [V] wire#60
+! 63 !TDC ROC#2 Sl#15 Ch#63 unused
+64, 4, 61          !TDC ROC#2 Sl#15 Ch#64 HDC pl#10 [V] wire#61
+65, 4, 62          !TDC ROC#2 Sl#15 Ch#65 HDC pl#10 [V] wire#62
+66, 4, 63          !TDC ROC#2 Sl#15 Ch#66 HDC pl#10 [V] wire#63
+67, 4, 64          !TDC ROC#2 Sl#15 Ch#67 HDC pl#10 [V] wire#64
+68, 4, 65          !TDC ROC#2 Sl#15 Ch#68 HDC pl#10 [V] wire#65
+69, 4, 66          !TDC ROC#2 Sl#15 Ch#69 HDC pl#10 [V] wire#66
+70, 4, 67          !TDC ROC#2 Sl#15 Ch#70 HDC pl#10 [V] wire#67
+71, 4, 68          !TDC ROC#2 Sl#15 Ch#71 HDC pl#10 [V] wire#68
+72, 4, 69          !TDC ROC#2 Sl#15 Ch#72 HDC pl#10 [V] wire#69
+73, 4, 70          !TDC ROC#2 Sl#15 Ch#73 HDC pl#10 [V] wire#70
+74, 4, 71          !TDC ROC#2 Sl#15 Ch#74 HDC pl#10 [V] wire#71
+75, 4, 72          !TDC ROC#2 Sl#15 Ch#75 HDC pl#10 [V] wire#72
+76, 4, 73          !TDC ROC#2 Sl#15 Ch#76 HDC pl#10 [V] wire#73
+77, 4, 74          !TDC ROC#2 Sl#15 Ch#77 HDC pl#10 [V] wire#74
+78, 4, 75          !TDC ROC#2 Sl#15 Ch#78 HDC pl#10 [V] wire#75
+79, 4, 76          !TDC ROC#2 Sl#15 Ch#79 HDC pl#10 [V] wire#76
+80, 4, 77          !TDC ROC#2 Sl#15 Ch#80 HDC pl#10 [V] wire#77
+81, 4, 78          !TDC ROC#2 Sl#15 Ch#81 HDC pl#10 [V] wire#78
+82, 4, 79          !TDC ROC#2 Sl#15 Ch#82 HDC pl#10 [V] wire#79
+83, 4, 80          !TDC ROC#2 Sl#15 Ch#83 HDC pl#10 [V] wire#80
+84, 4, 81          !TDC ROC#2 Sl#15 Ch#84 HDC pl#10 [V] wire#81
+85, 4, 82          !TDC ROC#2 Sl#15 Ch#85 HDC pl#10 [V] wire#82
+86, 4, 83          !TDC ROC#2 Sl#15 Ch#86 HDC pl#10 [V] wire#83
+87, 4, 84          !TDC ROC#2 Sl#15 Ch#87 HDC pl#10 [V] wire#84
+88, 4, 85          !TDC ROC#2 Sl#15 Ch#88 HDC pl#10 [V] wire#85
+89, 4, 86          !TDC ROC#2 Sl#15 Ch#89 HDC pl#10 [V] wire#86
+90, 4, 87          !TDC ROC#2 Sl#15 Ch#90 HDC pl#10 [V] wire#87
+91, 4, 88          !TDC ROC#2 Sl#15 Ch#91 HDC pl#10 [V] wire#88
+92, 4, 89          !TDC ROC#2 Sl#15 Ch#92 HDC pl#10 [V] wire#89
+93, 4, 90          !TDC ROC#2 Sl#15 Ch#93 HDC pl#10 [V] wire#90
+94, 4, 91          !TDC ROC#2 Sl#15 Ch#94 HDC pl#10 [V] wire#91
+! 95 !TDC ROC#2 Sl#15 Ch#95 unused
+Slot= 21
+0, 4, 92           !TDC ROC#2 Sl#17 Ch#0 HDC pl#10 [V] wire#92
+1, 4, 93           !TDC ROC#2 Sl#17 Ch#1 HDC pl#10 [V] wire#93
+2, 4, 94           !TDC ROC#2 Sl#17 Ch#2 HDC pl#10 [V] wire#94
+3, 4, 95           !TDC ROC#2 Sl#17 Ch#3 HDC pl#10 [V] wire#95
+4, 4, 96           !TDC ROC#2 Sl#17 Ch#4 HDC pl#10 [V] wire#96
+5, 4, 97           !TDC ROC#2 Sl#17 Ch#5 HDC pl#10 [V] wire#97
+6, 4, 98           !TDC ROC#2 Sl#17 Ch#6 HDC pl#10 [V] wire#98
+7, 4, 99           !TDC ROC#2 Sl#17 Ch#7 HDC pl#10 [V] wire#99
+8, 4, 100          !TDC ROC#2 Sl#17 Ch#8 HDC pl#10 [V] wire#100
+9, 4, 101          !TDC ROC#2 Sl#17 Ch#9 HDC pl#10 [V] wire#101
+10, 4, 102         !TDC ROC#2 Sl#17 Ch#10 HDC pl#10 [V] wire#102
+11, 4, 103         !TDC ROC#2 Sl#17 Ch#11 HDC pl#10 [V] wire#103
+12, 4, 104         !TDC ROC#2 Sl#17 Ch#12 HDC pl#10 [V] wire#104
+13, 4, 105         !TDC ROC#2 Sl#17 Ch#13 HDC pl#10 [V] wire#105
+14, 4, 106         !TDC ROC#2 Sl#17 Ch#14 HDC pl#10 [V] wire#106
+15, 4, 107         !TDC ROC#2 Sl#17 Ch#15 HDC pl#10 [V] wire#107
+16, 5, 1           !TDC ROC#2 Sl#17 Ch#16 HDC pl#11 [Y2] wire#1
+17, 5, 2           !TDC ROC#2 Sl#17 Ch#17 HDC pl#11 [Y2] wire#2
+18, 5, 3           !TDC ROC#2 Sl#17 Ch#18 HDC pl#11 [Y2] wire#3
+19, 5, 4           !TDC ROC#2 Sl#17 Ch#19 HDC pl#11 [Y2] wire#4
+20, 5, 5           !TDC ROC#2 Sl#17 Ch#20 HDC pl#11 [Y2] wire#5
+21, 5, 6           !TDC ROC#2 Sl#17 Ch#21 HDC pl#11 [Y2] wire#6
+22, 5, 7           !TDC ROC#2 Sl#17 Ch#22 HDC pl#11 [Y2] wire#7
+23, 5, 8           !TDC ROC#2 Sl#17 Ch#23 HDC pl#11 [Y2] wire#8
+24, 5, 9           !TDC ROC#2 Sl#17 Ch#24 HDC pl#11 [Y2] wire#9
+25, 5, 10          !TDC ROC#2 Sl#17 Ch#25 HDC pl#11 [Y2] wire#10
+26, 5, 11          !TDC ROC#2 Sl#17 Ch#26 HDC pl#11 [Y2] wire#11
+27, 5, 12          !TDC ROC#2 Sl#17 Ch#27 HDC pl#11 [Y2] wire#12
+28, 5, 13          !TDC ROC#2 Sl#17 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#17 Ch#29 unused
+! 30 !TDC ROC#2 Sl#17 Ch#30 unused
+! 31 !TDC ROC#2 Sl#17 Ch#31 unused
+32, 5, 14          !TDC ROC#2 Sl#17 Ch#32 HDC pl#11 [Y2] wire#14
+33, 5, 15          !TDC ROC#2 Sl#17 Ch#33 HDC pl#11 [Y2] wire#15
+34, 5, 16          !TDC ROC#2 Sl#17 Ch#34 HDC pl#11 [Y2] wire#16
+35, 5, 17          !TDC ROC#2 Sl#17 Ch#35 HDC pl#11 [Y2] wire#17
+36, 5, 18          !TDC ROC#2 Sl#17 Ch#36 HDC pl#11 [Y2] wire#18
+37, 5, 19          !TDC ROC#2 Sl#17 Ch#37 HDC pl#11 [Y2] wire#19
+38, 5, 20          !TDC ROC#2 Sl#17 Ch#38 HDC pl#11 [Y2] wire#20
+39, 5, 21          !TDC ROC#2 Sl#17 Ch#39 HDC pl#11 [Y2] wire#21
+40, 5, 22          !TDC ROC#2 Sl#17 Ch#40 HDC pl#11 [Y2] wire#22
+41, 5, 23          !TDC ROC#2 Sl#17 Ch#41 HDC pl#11 [Y2] wire#23
+42, 5, 24          !TDC ROC#2 Sl#17 Ch#42 HDC pl#11 [Y2] wire#24
+43, 5, 25          !TDC ROC#2 Sl#17 Ch#43 HDC pl#11 [Y2] wire#25
+44, 5, 26          !TDC ROC#2 Sl#17 Ch#44 HDC pl#11 [Y2] wire#26
+! 45 !TDC ROC#2 Sl#17 Ch#45 unused
+! 46 !TDC ROC#2 Sl#17 Ch#46 unused
+! 47 !TDC ROC#2 Sl#17 Ch#47 unused
+48, 5, 27          !TDC ROC#2 Sl#17 Ch#48 HDC pl#11 [Y2] wire#27
+49, 5, 28          !TDC ROC#2 Sl#17 Ch#49 HDC pl#11 [Y2] wire#28
+50, 5, 29          !TDC ROC#2 Sl#17 Ch#50 HDC pl#11 [Y2] wire#29
+51, 5, 30          !TDC ROC#2 Sl#17 Ch#51 HDC pl#11 [Y2] wire#30
+52, 5, 31          !TDC ROC#2 Sl#17 Ch#52 HDC pl#11 [Y2] wire#31
+53, 5, 32          !TDC ROC#2 Sl#17 Ch#53 HDC pl#11 [Y2] wire#32
+54, 5, 33          !TDC ROC#2 Sl#17 Ch#54 HDC pl#11 [Y2] wire#33
+55, 5, 34          !TDC ROC#2 Sl#17 Ch#55 HDC pl#11 [Y2] wire#34
+56, 5, 35          !TDC ROC#2 Sl#17 Ch#56 HDC pl#11 [Y2] wire#35
+57, 5, 36          !TDC ROC#2 Sl#17 Ch#57 HDC pl#11 [Y2] wire#36
+58, 5, 37          !TDC ROC#2 Sl#17 Ch#58 HDC pl#11 [Y2] wire#37
+59, 5, 38          !TDC ROC#2 Sl#17 Ch#59 HDC pl#11 [Y2] wire#38
+60, 5, 39          !TDC ROC#2 Sl#17 Ch#60 HDC pl#11 [Y2] wire#39
+! 61 !TDC ROC#2 Sl#17 Ch#61 unused
+! 62 !TDC ROC#2 Sl#17 Ch#62 unused
+! 63 !TDC ROC#2 Sl#17 Ch#63 unused
+! 64 !TDC ROC#2 Sl#17 Ch#64 unused?????   JV 11/11/97
+65, 5, 40          !TDC ROC#2 Sl#17 Ch#64 HDC pl#11 [Y2] wire#40
+66, 5, 41          !TDC ROC#2 Sl#17 Ch#65 HDC pl#11 [Y2] wire#41
+67, 5, 42          !TDC ROC#2 Sl#17 Ch#66 HDC pl#11 [Y2] wire#42
+68, 5, 43          !TDC ROC#2 Sl#17 Ch#67 HDC pl#11 [Y2] wire#43
+69, 5, 44          !TDC ROC#2 Sl#17 Ch#68 HDC pl#11 [Y2] wire#44
+70, 5, 45          !TDC ROC#2 Sl#17 Ch#69 HDC pl#11 [Y2] wire#45
+71, 5, 46          !TDC ROC#2 Sl#17 Ch#70 HDC pl#11 [Y2] wire#46
+72, 5, 47          !TDC ROC#2 Sl#17 Ch#71 HDC pl#11 [Y2] wire#47
+73, 5, 48          !TDC ROC#2 Sl#17 Ch#72 HDC pl#11 [Y2] wire#48
+74, 5, 49          !TDC ROC#2 Sl#17 Ch#73 HDC pl#11 [Y2] wire#49
+75, 5, 50          !TDC ROC#2 Sl#17 Ch#74 HDC pl#11 [Y2] wire#50
+76, 5, 51          !TDC ROC#2 Sl#17 Ch#75 HDC pl#11 [Y2] wire#51
+77, 5, 52          !TDC ROC#2 Sl#17 Ch#76 HDC pl#11 [Y2] wire#52
+! 77 !TDC ROC#2 Sl#17 Ch#77 unused
+! 78 !TDC ROC#2 Sl#17 Ch#78 unused
+! 79 !TDC ROC#2 Sl#17 Ch#79 unused
+80, 6, 1           !TDC ROC#2 Sl#17 Ch#80 HDC pl#12 [X2] wire#1
+81, 6, 2           !TDC ROC#2 Sl#17 Ch#81 HDC pl#12 [X2] wire#2
+82, 6, 3           !TDC ROC#2 Sl#17 Ch#82 HDC pl#12 [X2] wire#3
+83, 6, 4           !TDC ROC#2 Sl#17 Ch#83 HDC pl#12 [X2] wire#4
+84, 6, 5           !TDC ROC#2 Sl#17 Ch#84 HDC pl#12 [X2] wire#5
+85, 6, 6           !TDC ROC#2 Sl#17 Ch#85 HDC pl#12 [X2] wire#6
+86, 6, 7           !TDC ROC#2 Sl#17 Ch#86 HDC pl#12 [X2] wire#7
+87, 6, 8           !TDC ROC#2 Sl#17 Ch#87 HDC pl#12 [X2] wire#8
+88, 6, 9           !TDC ROC#2 Sl#17 Ch#88 HDC pl#12 [X2] wire#9
+89, 6, 10          !TDC ROC#2 Sl#17 Ch#89 HDC pl#12 [X2] wire#10
+90, 6, 11          !TDC ROC#2 Sl#17 Ch#90 HDC pl#12 [X2] wire#11
+91, 6, 12          !TDC ROC#2 Sl#17 Ch#91 HDC pl#12 [X2] wire#12
+92, 6, 13          !TDC ROC#2 Sl#17 Ch#92 HDC pl#12 [X2] wire#13
+93, 6, 14          !TDC ROC#2 Sl#17 Ch#93 HDC pl#12 [X2] wire#14
+94, 6, 15          !TDC ROC#2 Sl#17 Ch#94 HDC pl#12 [X2] wire#15
+95, 6, 16          !TDC ROC#2 Sl#17 Ch#95 HDC pl#12 [X2] wire#16
+Slot= 22
+0, 6, 17           !TDC ROC#2 Sl#18 Ch#0 HDC pl#12 [X2] wire#17
+1, 6, 18           !TDC ROC#2 Sl#18 Ch#1 HDC pl#12 [X2] wire#18
+2, 6, 19           !TDC ROC#2 Sl#18 Ch#2 HDC pl#12 [X2] wire#19
+3, 6, 20           !TDC ROC#2 Sl#18 Ch#3 HDC pl#12 [X2] wire#20
+4, 6, 21           !TDC ROC#2 Sl#18 Ch#4 HDC pl#12 [X2] wire#21
+5, 6, 22           !TDC ROC#2 Sl#18 Ch#5 HDC pl#12 [X2] wire#22
+6, 6, 23           !TDC ROC#2 Sl#18 Ch#6 HDC pl#12 [X2] wire#23
+7, 6, 24           !TDC ROC#2 Sl#18 Ch#7 HDC pl#12 [X2] wire#24
+8, 6, 25           !TDC ROC#2 Sl#18 Ch#8 HDC pl#12 [X2] wire#25
+9, 6, 26           !TDC ROC#2 Sl#18 Ch#9 HDC pl#12 [X2] wire#26
+10, 6, 27          !TDC ROC#2 Sl#18 Ch#10 HDC pl#12 [X2] wire#27
+11, 6, 28          !TDC ROC#2 Sl#18 Ch#11 HDC pl#12 [X2] wire#28
+12, 6, 29          !TDC ROC#2 Sl#18 Ch#12 HDC pl#12 [X2] wire#29
+13, 6, 30          !TDC ROC#2 Sl#18 Ch#13 HDC pl#12 [X2] wire#30
+14, 6, 31          !TDC ROC#2 Sl#18 Ch#14 HDC pl#12 [X2] wire#31
+15, 6, 32          !TDC ROC#2 Sl#18 Ch#15 HDC pl#12 [X2] wire#32
+16, 6, 33          !TDC ROC#2 Sl#18 Ch#16 HDC pl#12 [X2] wire#33
+17, 6, 34          !TDC ROC#2 Sl#18 Ch#17 HDC pl#12 [X2] wire#34
+18, 6, 35          !TDC ROC#2 Sl#18 Ch#18 HDC pl#12 [X2] wire#35
+19, 6, 36          !TDC ROC#2 Sl#18 Ch#19 HDC pl#12 [X2] wire#36
+20, 6, 37          !TDC ROC#2 Sl#18 Ch#20 HDC pl#12 [X2] wire#37
+21, 6, 38          !TDC ROC#2 Sl#18 Ch#21 HDC pl#12 [X2] wire#38
+22, 6, 39          !TDC ROC#2 Sl#18 Ch#22 HDC pl#12 [X2] wire#39
+23, 6, 40          !TDC ROC#2 Sl#18 Ch#23 HDC pl#12 [X2] wire#40
+24, 6, 41          !TDC ROC#2 Sl#18 Ch#24 HDC pl#12 [X2] wire#41
+25, 6, 42          !TDC ROC#2 Sl#18 Ch#25 HDC pl#12 [X2] wire#42
+26, 6, 43          !TDC ROC#2 Sl#18 Ch#26 HDC pl#12 [X2] wire#43
+27, 6, 44          !TDC ROC#2 Sl#18 Ch#27 HDC pl#12 [X2] wire#44
+28, 6, 45          !TDC ROC#2 Sl#18 Ch#28 HDC pl#12 [X2] wire#45
+29, 6, 46          !TDC ROC#2 Sl#18 Ch#29 HDC pl#12 [X2] wire#46
+30, 6, 47          !TDC ROC#2 Sl#18 Ch#30 HDC pl#12 [X2] wire#47
+31, 6, 48          !TDC ROC#2 Sl#18 Ch#31 HDC pl#12 [X2] wire#48
+32, 6, 49          !TDC ROC#2 Sl#18 Ch#32 HDC pl#12 [X2] wire#49
+33, 6, 50          !TDC ROC#2 Sl#18 Ch#33 HDC pl#12 [X2] wire#50
+34, 6, 51          !TDC ROC#2 Sl#18 Ch#34 HDC pl#12 [X2] wire#51
+35, 6, 52          !TDC ROC#2 Sl#18 Ch#35 HDC pl#12 [X2] wire#52
+36, 6, 53          !TDC ROC#2 Sl#18 Ch#36 HDC pl#12 [X2] wire#53
+37, 6, 54          !TDC ROC#2 Sl#18 Ch#37 HDC pl#12 [X2] wire#54
+38, 6, 55          !TDC ROC#2 Sl#18 Ch#38 HDC pl#12 [X2] wire#55
+39, 6, 56          !TDC ROC#2 Sl#18 Ch#39 HDC pl#12 [X2] wire#56
+40, 6, 57          !TDC ROC#2 Sl#18 Ch#40 HDC pl#12 [X2] wire#57
+41, 6, 58          !TDC ROC#2 Sl#18 Ch#41 HDC pl#12 [X2] wire#58
+42, 6, 59          !TDC ROC#2 Sl#18 Ch#42 HDC pl#12 [X2] wire#59
+43, 6, 60          !TDC ROC#2 Sl#18 Ch#43 HDC pl#12 [X2] wire#60
+44, 6, 61          !TDC ROC#2 Sl#18 Ch#44 HDC pl#12 [X2] wire#61
+45, 6, 62          !TDC ROC#2 Sl#18 Ch#45 HDC pl#12 [X2] wire#62
+46, 6, 63          !TDC ROC#2 Sl#18 Ch#46 HDC pl#12 [X2] wire#63
+47, 6, 64          !TDC ROC#2 Sl#18 Ch#47 HDC pl#12 [X2] wire#64
+48, 6, 65          !TDC ROC#2 Sl#18 Ch#48 HDC pl#12 [X2] wire#65
+49, 6, 66          !TDC ROC#2 Sl#18 Ch#49 HDC pl#12 [X2] wire#66
+50, 6, 67          !TDC ROC#2 Sl#18 Ch#50 HDC pl#12 [X2] wire#67
+51, 6, 68          !TDC ROC#2 Sl#18 Ch#51 HDC pl#12 [X2] wire#68
+52, 6, 69          !TDC ROC#2 Sl#18 Ch#52 HDC pl#12 [X2] wire#69
+53, 6, 70          !TDC ROC#2 Sl#18 Ch#53 HDC pl#12 [X2] wire#70
+54, 6, 71          !TDC ROC#2 Sl#18 Ch#54 HDC pl#12 [X2] wire#71
+55, 6, 72          !TDC ROC#2 Sl#18 Ch#55 HDC pl#12 [X2] wire#72
+56, 6, 73          !TDC ROC#2 Sl#18 Ch#56 HDC pl#12 [X2] wire#73
+57, 6, 74          !TDC ROC#2 Sl#18 Ch#57 HDC pl#12 [X2] wire#74
+58, 6, 75          !TDC ROC#2 Sl#18 Ch#58 HDC pl#12 [X2] wire#75
+59, 6, 76          !TDC ROC#2 Sl#18 Ch#59 HDC pl#12 [X2] wire#76
+60, 6, 77          !TDC ROC#2 Sl#18 Ch#60 HDC pl#12 [X2] wire#77
+61, 6, 78          !TDC ROC#2 Sl#18 Ch#61 HDC pl#12 [X2] wire#78
+62, 6, 79          !TDC ROC#2 Sl#18 Ch#62 HDC pl#12 [X2] wire#79
+63, 6, 80          !TDC ROC#2 Sl#18 Ch#63 HDC pl#12 [X2] wire#80
+64, 6, 81          !TDC ROC#2 Sl#18 Ch#64 HDC pl#12 [X2] wire#81
+65, 6, 82          !TDC ROC#2 Sl#18 Ch#65 HDC pl#12 [X2] wire#82
+66, 6, 83          !TDC ROC#2 Sl#18 Ch#66 HDC pl#12 [X2] wire#83
+67, 6, 84          !TDC ROC#2 Sl#18 Ch#67 HDC pl#12 [X2] wire#84
+68, 6, 85          !TDC ROC#2 Sl#18 Ch#68 HDC pl#12 [X2] wire#85
+69, 6, 86          !TDC ROC#2 Sl#18 Ch#69 HDC pl#12 [X2] wire#86
+70, 6, 87          !TDC ROC#2 Sl#18 Ch#70 HDC pl#12 [X2] wire#87
+71, 6, 88          !TDC ROC#2 Sl#18 Ch#71 HDC pl#12 [X2] wire#88
+72, 6, 89          !TDC ROC#2 Sl#18 Ch#72 HDC pl#12 [X2] wire#89
+73, 6, 90          !TDC ROC#2 Sl#18 Ch#73 HDC pl#12 [X2] wire#90
+74, 6, 91          !TDC ROC#2 Sl#18 Ch#74 HDC pl#12 [X2] wire#91
+75, 6, 92          !TDC ROC#2 Sl#18 Ch#75 HDC pl#12 [X2] wire#92
+76, 6, 93          !TDC ROC#2 Sl#18 Ch#76 HDC pl#12 [X2] wire#93
+77, 6, 94          !TDC ROC#2 Sl#18 Ch#77 HDC pl#12 [X2] wire#94
+78, 6, 95          !TDC ROC#2 Sl#18 Ch#78 HDC pl#12 [X2] wire#95
+79, 6, 96          !TDC ROC#2 Sl#18 Ch#79 HDC pl#12 [X2] wire#96
+80, 6, 97          !TDC ROC#2 Sl#18 Ch#80 HDC pl#12 [X2] wire#97
+81, 6, 98          !TDC ROC#2 Sl#18 Ch#81 HDC pl#12 [X2] wire#98
+82, 6, 99          !TDC ROC#2 Sl#18 Ch#82 HDC pl#12 [X2] wire#99
+83, 6, 100         !TDC ROC#2 Sl#18 Ch#83 HDC pl#12 [X2] wire#100
+84, 6, 101         !TDC ROC#2 Sl#18 Ch#84 HDC pl#12 [X2] wire#101
+85, 6, 102         !TDC ROC#2 Sl#18 Ch#85 HDC pl#12 [X2] wire#102
+86, 6, 103         !TDC ROC#2 Sl#18 Ch#86 HDC pl#12 [X2] wire#103
+87, 6, 104         !TDC ROC#2 Sl#18 Ch#87 HDC pl#12 [X2] wire#104
+88, 6, 105         !TDC ROC#2 Sl#18 Ch#88 HDC pl#12 [X2] wire#105
+89, 6, 106         !TDC ROC#2 Sl#18 Ch#89 HDC pl#12 [X2] wire#106
+90, 6, 107         !TDC ROC#2 Sl#18 Ch#90 HDC pl#12 [X2] wire#107
+91, 6, 108         !TDC ROC#2 Sl#18 Ch#91 HDC pl#12 [X2] wire#108
+92, 6, 109         !TDC ROC#2 Sl#18 Ch#92 HDC pl#12 [X2] wire#109
+93, 6, 110         !TDC ROC#2 Sl#18 Ch#93 HDC pl#12 [X2] wire#110
+94, 6, 111         !TDC ROC#2 Sl#18 Ch#94 HDC pl#12 [X2] wire#111
+95, 6, 112         !TDC ROC#2 Sl#18 Ch#95 HDC pl#12 [X2] wire#112
+!
+!
+!   HMS upstairs (HSCIN+HCAL+HCER) map     K.B.Beard 13-Jun-1994
+!
+
+! ^^^^^^^^^^^^^^^^^^^^^ Wire chambers end here ^^^^^^^^^^^^^^^^^^^^^^
+!=============================================================================
+    ROC= 1               !upstairs HMS crate
+!
+    detector= 2 !HSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 23 ! TDC  
+  0, 1, 1, 2 !TDC ROC#1 Sl#23 Ch#0 HSCIN pl#1 [X1] id#1 sig#2 [TDC+] (0 X1P-01)
+  1, 1, 3, 2 !TDC ROC#1 Sl#23 Ch#1 HSCIN pl#1 [X1] id#3 sig#2 [TDC+] (1 X1P-03)
+  2, 1, 5, 2 !TDC ROC#1 Sl#23 Ch#2 HSCIN pl#1 [X1] id#5 sig#2 [TDC+] (2 X1P-05)
+  3, 1, 7, 2 !TDC ROC#1 Sl#23 Ch#3 HSCIN pl#1 [X1] id#7 sig#2 [TDC+] (3 X1P-07)
+  4, 1, 9, 2 !TDC ROC#1 Sl#23 Ch#4 HSCIN pl#1 [X1] id#9 sig#2 [TDC+] (4 X1P-09)
+  5, 1, 11, 2 !TDC ROC#1 Sl#23 Ch#5 HSCIN pl#1 [X1] id#11 sig#2 [TDC+] (5 X1P-11)
+  6, 1, 13, 2 !TDC ROC#1 Sl#23 Ch#6 HSCIN pl#1 [X1] id#13 sig#2 [TDC+] (6 X1P-13)
+  7, 1, 15, 2 !TDC ROC#1 Sl#23 Ch#7 HSCIN pl#1 [X1] id#15 sig#2 [TDC+] (7 X1P-15)
+  8, 1, 2, 2 !TDC ROC#1 Sl#23 Ch#8 HSCIN pl#1 [X1] id#2 sig#2 [TDC+] (8 X1P-02)
+  9, 1, 4, 2 !TDC ROC#1 Sl#23 Ch#9 HSCIN pl#1 [X1] id#4 sig#2 [TDC+] (9 X1P-04)
+  10, 1, 6, 2 !TDC ROC#1 Sl#23 Ch#10 HSCIN pl#1 [X1] id#6 sig#2 [TDC+] (10 X1P-06)
+  11, 1, 8, 2 !TDC ROC#1 Sl#23 Ch#11 HSCIN pl#1 [X1] id#8 sig#2 [TDC+] (11 X1P-08)
+  12, 1, 10, 2 !TDC ROC#1 Sl#23 Ch#12 HSCIN pl#1 [X1] id#10 sig#2 [TDC+] (12 X1P-10)
+  13, 1, 12, 2 !TDC ROC#1 Sl#23 Ch#13 HSCIN pl#1 [X1] id#12 sig#2 [TDC+] (13 X1P-12)
+  14, 1, 14, 2 !TDC ROC#1 Sl#23 Ch#14 HSCIN pl#1 [X1] id#14 sig#2 [TDC+] (14 X1P-14)
+  15, 1, 16, 2 !TDC ROC#1 Sl#23 Ch#15 HSCIN pl#1 [X1] id#16 sig#2 [TDC+] (15 X1P-16)
+  16, 1, 1, 3 !TDC ROC#1 Sl#23 Ch#16 HSCIN pl#1 [X1] id#1 sig#3 [TDC-] (16 X1N-01)
+  17, 1, 3, 3 !TDC ROC#1 Sl#23 Ch#17 HSCIN pl#1 [X1] id#3 sig#3 [TDC-] (17 X1N-03)
+  18, 1, 5, 3 !TDC ROC#1 Sl#23 Ch#18 HSCIN pl#1 [X1] id#5 sig#3 [TDC-] (18 X1N-05)
+  19, 1, 7, 3 !TDC ROC#1 Sl#23 Ch#19 HSCIN pl#1 [X1] id#7 sig#3 [TDC-] (19 X1N-07)
+  20, 1, 9, 3 !TDC ROC#1 Sl#23 Ch#20 HSCIN pl#1 [X1] id#9 sig#3 [TDC-] (20 X1N-09)
+  21, 1, 11, 3 !TDC ROC#1 Sl#23 Ch#21 HSCIN pl#1 [X1] id#11 sig#3 [TDC-] (21 X1N-11)
+  22, 1, 13, 3 !TDC ROC#1 Sl#23 Ch#22 HSCIN pl#1 [X1] id#13 sig#3 [TDC-] (22 X1N-13)
+  23, 1, 15, 3 !TDC ROC#1 Sl#23 Ch#23 HSCIN pl#1 [X1] id#15 sig#3 [TDC-] (23 X1N-15)
+  24, 1, 2, 3 !TDC ROC#1 Sl#23 Ch#24 HSCIN pl#1 [X1] id#2 sig#3 [TDC-] (24 X1N-02)
+  25, 1, 4, 3 !TDC ROC#1 Sl#23 Ch#25 HSCIN pl#1 [X1] id#4 sig#3 [TDC-] (25 X1N-04)
+  26, 1, 6, 3 !TDC ROC#1 Sl#23 Ch#26 HSCIN pl#1 [X1] id#6 sig#3 [TDC-] (26 X1N-06)
+  27, 1, 8, 3 !TDC ROC#1 Sl#23 Ch#27 HSCIN pl#1 [X1] id#8 sig#3 [TDC-] (27 X1N-08)
+  28, 1, 10, 3 !TDC ROC#1 Sl#23 Ch#28 HSCIN pl#1 [X1] id#10 sig#3 [TDC-] (28 X1N-10)
+  29, 1, 12, 3 !TDC ROC#1 Sl#23 Ch#29 HSCIN pl#1 [X1] id#12 sig#3 [TDC-] (29 X1N-12)
+  30, 1, 14, 3 !TDC ROC#1 Sl#23 Ch#30 HSCIN pl#1 [X1] id#14 sig#3 [TDC-] (30 X1N-14)
+  31, 1, 16, 3 !TDC ROC#1 Sl#23 Ch#31 HSCIN pl#1 [X1] id#16 sig#3 [TDC-] (31 X1N-16)
+  32, 2, 1, 2 !TDC ROC#1 Sl#23 Ch#32 HSCIN pl#2 [Y1] id#1 sig#2 [TDC+] (32 Y1P-01)
+  33, 2, 3, 2 !TDC ROC#1 Sl#23 Ch#33 HSCIN pl#2 [Y1] id#3 sig#2 [TDC+] (33 Y1P-03)
+  34, 2, 5, 2 !TDC ROC#1 Sl#23 Ch#34 HSCIN pl#2 [Y1] id#5 sig#2 [TDC+] (34 Y1P-05)
+  35, 2, 7, 2 !TDC ROC#1 Sl#23 Ch#35 HSCIN pl#2 [Y1] id#7 sig#2 [TDC+] (35 Y1P-07)
+  36, 2, 9, 2 !TDC ROC#1 Sl#23 Ch#36 HSCIN pl#2 [Y1] id#9 sig#2 [TDC+] (36 Y1P-09)
+!  37 !TDC ROC#1 Sl#23 Ch#37 unused
+!  38 !TDC ROC#1 Sl#23 Ch#38 unused
+!  39 !TDC ROC#1 Sl#23 Ch#39 unused
+!!!  40, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+  41, 2, 4, 2 !TDC ROC#1 Sl#23 Ch#41 HSCIN pl#2 [Y1] id#4 sig#2 [TDC+] (41 Y1P-04)
+  42, 2, 6, 2 !TDC ROC#1 Sl#23 Ch#42 HSCIN pl#2 [Y1] id#6 sig#2 [TDC+] (42 Y1P-06)
+  43, 2, 8, 2 !TDC ROC#1 Sl#23 Ch#43 HSCIN pl#2 [Y1] id#8 sig#2 [TDC+] (43 Y1P-08)
+  44, 2, 10, 2 !TDC ROC#1 Sl#23 Ch#44 HSCIN pl#2 [Y1] id#10 sig#2 [TDC+] (44 Y1P-10)
+  45, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#45 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (45 Y1P-02)
+!   h1y2+ was moved from channel 47 to 45 on 1/29/1999
+!  46 !TDC ROC#1 Sl#23 Ch#46 unused
+!  47, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+!   h1y2+ was moved from channel 40 to 47 at run 6168
+  48, 2, 1, 3 !TDC ROC#1 Sl#23 Ch#48 HSCIN pl#2 [Y1] id#1 sig#3 [TDC-] (48 Y1N-01)
+  49, 2, 3, 3 !TDC ROC#1 Sl#23 Ch#49 HSCIN pl#2 [Y1] id#3 sig#3 [TDC-] (49 Y1N-03)
+  50, 2, 5, 3 !TDC ROC#1 Sl#23 Ch#50 HSCIN pl#2 [Y1] id#5 sig#3 [TDC-] (50 Y1N-05)
+  51, 2, 7, 3 !TDC ROC#1 Sl#23 Ch#51 HSCIN pl#2 [Y1] id#7 sig#3 [TDC-] (51 Y1N-07)
+  52, 2, 9, 3 !TDC ROC#1 Sl#23 Ch#52 HSCIN pl#2 [Y1] id#9 sig#3 [TDC-] (52 Y1N-09)
+!  53 !TDC ROC#1 Sl#23 Ch#53 unused
+!  54 !TDC ROC#1 Sl#23 Ch#54 unused
+!  55 !TDC ROC#1 Sl#23 Ch#55 unused
+  56, 2, 2, 3 !TDC ROC#1 Sl#23 Ch#56 HSCIN pl#2 [Y1] id#2 sig#3 [TDC-] (56 Y1N-02)
+  57, 2, 4, 3 !TDC ROC#1 Sl#23 Ch#57 HSCIN pl#2 [Y1] id#4 sig#3 [TDC-] (57 Y1N-04)
+  58, 2, 6, 3 !TDC ROC#1 Sl#23 Ch#58 HSCIN pl#2 [Y1] id#6 sig#3 [TDC-] (58 Y1N-06)
+  59, 2, 8, 3 !TDC ROC#1 Sl#23 Ch#59 HSCIN pl#2 [Y1] id#8 sig#3 [TDC-] (59 Y1N-08)
+!  60, 2, 10, 3 !TDC ROC#1 Sl#23 Ch#60 HSCIN pl#2 [Y1] id#10 sig#3 [TDC-] (60 Y1N-10)
+  61 , 2, 10, 3 !TDC ROC#1 Sl#23 Ch#61 swap location for h1y10-
+!  62 !TDC ROC#1 Sl#23 Ch#62 unused
+!  63 !TDC ROC#1 Sl#23 Ch#63 unused
+!
+ Slot= 21 ! TDC  
+! 
+  0, 3, 1, 2 !TDC ROC#1 Sl#21 Ch#0 HSCIN pl#3 [X2] id#1 sig#2 [TDC+] (0 X2P-01)
+  1, 3, 3, 2 !TDC ROC#1 Sl#21 Ch#1 HSCIN pl#3 [X2] id#3 sig#2 [TDC+] (1 X2P-03)
+  2, 3, 5, 2 !TDC ROC#1 Sl#21 Ch#2 HSCIN pl#3 [X2] id#5 sig#2 [TDC+] (2 X2P-05)
+  3, 3, 7, 2 !TDC ROC#1 Sl#21 Ch#3 HSCIN pl#3 [X2] id#7 sig#2 [TDC+] (3 X2P-07)
+  4, 3, 9, 2 !TDC ROC#1 Sl#21 Ch#4 HSCIN pl#3 [X2] id#9 sig#2 [TDC+] (4 X2P-09)
+  5, 3, 11, 2 !TDC ROC#1 Sl#21 Ch#5 HSCIN pl#3 [X2] id#11 sig#2 [TDC+] (5 X2P-11)
+  6, 3, 13, 2 !TDC ROC#1 Sl#21 Ch#6 HSCIN pl#3 [X2] id#13 sig#2 [TDC+] (6 X2P-13)
+  7, 3, 15, 2 !TDC ROC#1 Sl#21 Ch#7 HSCIN pl#3 [X2] id#15 sig#2 [TDC+] (7 X2P-15)
+!
+  8, 3, 2, 2 !TDC ROC#1 Sl#21 Ch#8 HSCIN pl#3 [X2] id#2 sig#2 [TDC+] (8 X2P-02)
+  9, 3, 4, 2 !TDC ROC#1 Sl#21 Ch#9 HSCIN pl#3 [X2] id#4 sig#2 [TDC+] (9 X2P-04)
+  10, 3, 6, 2 !TDC ROC#1 Sl#21 Ch#10 HSCIN pl#3 [X2] id#6 sig#2 [TDC+] (10 X2P-06)
+  11, 3, 8, 2 !TDC ROC#1 Sl#21 Ch#11 HSCIN pl#3 [X2] id#8 sig#2 [TDC+] (11 X2P-08)
+  12, 3, 10, 2 !TDC ROC#1 Sl#21 Ch#12 HSCIN pl#3 [X2] id#10 sig#2 [TDC+] (12 X2P-10)
+  13, 3, 12, 2 !TDC ROC#1 Sl#21 Ch#13 HSCIN pl#3 [X2] id#12 sig#2 [TDC+] (13 X2P-12)
+  14, 3, 14, 2 !TDC ROC#1 Sl#21 Ch#14 HSCIN pl#3 [X2] id#14 sig#2 [TDC+] (14 X2P-14)
+  15, 3, 16, 2 !TDC ROC#1 Sl#21 Ch#15 HSCIN pl#3 [X2] id#16 sig#2 [TDC+] (15 X2P-16)
+!
+! swapped s2x- with s2y+
+!
+  16, 4, 1, 2 !TDC ROC#1 Sl#21 Ch#32 HSCIN pl#4 [Y2] id#1 sig#2 [TDC+] (32 Y2P-01)
+  17, 4, 3, 2 !TDC ROC#1 Sl#21 Ch#33 HSCIN pl#4 [Y2] id#3 sig#2 [TDC+] (33 Y2P-03)
+  18, 4, 5, 2 !TDC ROC#1 Sl#21 Ch#34 HSCIN pl#4 [Y2] id#5 sig#2 [TDC+] (34 Y2P-05)
+  19, 4, 7, 2 !TDC ROC#1 Sl#21 Ch#35 HSCIN pl#4 [Y2] id#7 sig#2 [TDC+] (35 Y2P-07)
+  20, 4, 9, 2 !TDC ROC#1 Sl#21 Ch#36 HSCIN pl#4 [Y2] id#9 sig#2 [TDC+] (36 Y2P-09)
+!  21 !TDC ROC#1 Sl#21 Ch#37 unused
+!  22 !TDC ROC#1 Sl#21 Ch#38 unused
+!  23 !TDC ROC#1 Sl#21 Ch#39 unused
+  24, 4, 2, 2 !TDC ROC#1 Sl#21 Ch#40 HSCIN pl#4 [Y2] id#2 sig#2 [TDC+] (40 Y2P-02)
+  25, 4, 4, 2 !TDC ROC#1 Sl#21 Ch#41 HSCIN pl#4 [Y2] id#4 sig#2 [TDC+] (41 Y2P-04)
+  26, 4, 6, 2 !TDC ROC#1 Sl#21 Ch#42 HSCIN pl#4 [Y2] id#6 sig#2 [TDC+] (42 Y2P-06)
+  27, 4, 8, 2 !TDC ROC#1 Sl#21 Ch#43 HSCIN pl#4 [Y2] id#8 sig#2 [TDC+] (43 Y2P-08)
+  28, 4, 10, 2 !TDC ROC#1 Sl#21 Ch#44 HSCIN pl#4 [Y2] id#10 sig#2 [TDC+] (44 Y2P-10)
+!  29 !TDC ROC#1 Sl#21 Ch#45 unused
+!  30 !TDC ROC#1 Sl#21 Ch#46 unused
+!  31 !TDC ROC#1 Sl#21 Ch#47 unused
+!
+  32, 3, 1, 3 !TDC ROC#1 Sl#21 Ch#16 HSCIN pl#3 [X2] id#1 sig#3 [TDC-] (16 X2N-01)
+  33, 3, 3, 3 !TDC ROC#1 Sl#21 Ch#17 HSCIN pl#3 [X2] id#3 sig#3 [TDC-] (17 X2N-03)
+  34, 3, 5, 3 !TDC ROC#1 Sl#21 Ch#18 HSCIN pl#3 [X2] id#5 sig#3 [TDC-] (18 X2N-05)
+  35, 3, 7, 3 !TDC ROC#1 Sl#21 Ch#19 HSCIN pl#3 [X2] id#7 sig#3 [TDC-] (19 X2N-07)
+  36, 3, 9, 3 !TDC ROC#1 Sl#21 Ch#20 HSCIN pl#3 [X2] id#9 sig#3 [TDC-] (20 X2N-09)
+  37, 3, 11, 3 !TDC ROC#1 Sl#21 Ch#21 HSCIN pl#3 [X2] id#11 sig#3 [TDC-] (21 X2N-11)
+  38, 3, 13, 3 !TDC ROC#1 Sl#21 Ch#22 HSCIN pl#3 [X2] id#13 sig#3 [TDC-] (22 X2N-13)
+  39, 3, 15, 3 !TDC ROC#1 Sl#21 Ch#23 HSCIN pl#3 [X2] id#15 sig#3 [TDC-] (23 X2N-15)
+!
+  40, 3, 2, 3 !TDC ROC#1 Sl#21 Ch#24 HSCIN pl#3 [X2] id#2 sig#3 [TDC-] (24 X2N-02)
+  41, 3, 4, 3 !TDC ROC#1 Sl#21 Ch#25 HSCIN pl#3 [X2] id#4 sig#3 [TDC-] (25 X2N-04)
+  42, 3, 6, 3 !TDC ROC#1 Sl#21 Ch#26 HSCIN pl#3 [X2] id#6 sig#3 [TDC-] (26 X2N-06)
+  43, 3, 8, 3 !TDC ROC#1 Sl#21 Ch#27 HSCIN pl#3 [X2] id#8 sig#3 [TDC-] (27 X2N-08)
+  44, 3, 10, 3 !TDC ROC#1 Sl#21 Ch#28 HSCIN pl#3 [X2] id#10 sig#3 [TDC-] (28 X2N-10)
+  45, 3, 12, 3 !TDC ROC#1 Sl#21 Ch#29 HSCIN pl#3 [X2] id#12 sig#3 [TDC-] (29 X2N-12)
+  46, 3, 14, 3 !TDC ROC#1 Sl#21 Ch#30 HSCIN pl#3 [X2] id#14 sig#3 [TDC-] (30 X2N-14)
+  47, 3, 16, 3 !TDC ROC#1 Sl#21 Ch#31 HSCIN pl#3 [X2] id#16 sig#3 [TDC-] (31 X2N-16)
+!
+  48, 4, 1, 3 !TDC ROC#1 Sl#21 Ch#48 HSCIN pl#4 [Y2] id#1 sig#3 [TDC-] (48 Y2N-01)
+  49, 4, 3, 3 !TDC ROC#1 Sl#21 Ch#49 HSCIN pl#4 [Y2] id#3 sig#3 [TDC-] (49 Y2N-03)
+  50, 4, 5, 3 !TDC ROC#1 Sl#21 Ch#50 HSCIN pl#4 [Y2] id#5 sig#3 [TDC-] (50 Y2N-05)
+  51, 4, 7, 3 !TDC ROC#1 Sl#21 Ch#51 HSCIN pl#4 [Y2] id#7 sig#3 [TDC-] (51 Y2N-07)
+  52, 4, 9, 3 !TDC ROC#1 Sl#21 Ch#52 HSCIN pl#4 [Y2] id#9 sig#3 [TDC-] (52 Y2N-09)
+!  53 !TDC ROC#1 Sl#21 Ch#53 unused
+!  54 !TDC ROC#1 Sl#21 Ch#54 unused
+!  55 !TDC ROC#1 Sl#21 Ch#55 unused
+  56, 4, 2, 3 !TDC ROC#1 Sl#21 Ch#56 HSCIN pl#4 [Y2] id#2 sig#3 [TDC-] (56 Y2N-02)
+  57, 4, 4, 3 !TDC ROC#1 Sl#21 Ch#57 HSCIN pl#4 [Y2] id#4 sig#3 [TDC-] (57 Y2N-04)
+  58, 4, 6, 3 !TDC ROC#1 Sl#21 Ch#58 HSCIN pl#4 [Y2] id#6 sig#3 [TDC-] (58 Y2N-06)
+  59, 4, 8, 3 !TDC ROC#1 Sl#21 Ch#59 HSCIN pl#4 [Y2] id#8 sig#3 [TDC-] (59 Y2N-08)
+  60, 4, 10, 3 !TDC ROC#1 Sl#21 Ch#60 HSCIN pl#4 [Y2] id#10 sig#3 [TDC-] (60 Y2N-10)
+!  61 !TDC ROC#1 Sl#21 Ch#61 unused
+!  62 !TDC ROC#1 Sl#21 Ch#62 unused
+!  63 !TDC ROC#1 Sl#21 Ch#63 unused
+!
+!!!======================================================================
+    detector= 5 !HMISC
+
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 19 ! TDC  
+
+0, 1, 1, 0  ! 0 !TDC ROC#1 Sl#19 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#1 Sl#19 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#1 Sl#19 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#1 Sl#19 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#1 Sl#19 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#1 Sl#19 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#1 Sl#19 Ch#6 empty
+7, 1, 8, 0  ! 7 !TDC ROC#1 Sl#19 Ch#7 unused
+8, 1, 9, 0  ! 8 !TDC ROC#1 Sl#19 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#1 Sl#19 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#1 Sl#19 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#1 Sl#19 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#1 Sl#19 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#1 Sl#19 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#1 Sl#19 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#1 Sl#19 Ch#15 signal {PEDTRG}
+16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 signal {hS1}                       
+17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 signal {hPRE50}                    
+18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 signal {hS2X}                      
+19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 signal {hPRE150}                   
+20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 signal {hS1X}                      
+21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 signal {hS2Y}                      
+22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 signal {hPRE100}                   
+23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 signal {hS1Y}                      
+24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 signal {hS2}                       
+25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 signal {hPRE200}                   
+26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 signal {hSTOF}                     
+27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 signal {hSCIN}                     
+28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 signal {hELREAL}                   
+29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 signal {hPIPRE}                    
+30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 signal {hELCLEAN}                  
+31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 signal {hPRETRG}                   
+32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 signal {PION}                      
+33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 signal {CER}                       
+34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 signal {hPIONHI}                  
+35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 signal {hCERHI}                  
+36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 signal {??}                        
+37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 signal {UNSER}                     
+38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 signal {BCM1}                      
+39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 signal {BCM2}                      
+40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 signal {hELHI}                     
+41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 signal {hELLO}                     
+42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 signal {hPRHI}                     
+43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 signal {hPRLO}                     
+44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 signal {hSHLO}                     
+45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 signal {CLOCK}                     
+46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 signal {BEAMGATES}                 
+47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 signal {hADCGATES ? PEDS and TRIGS}
+48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 RF no delay
+49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 RF + 10 ns
+53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!
+!=============================================================================
+!                     AEROGEL TDC
+!..............................................................................
+! For aerogel: 0-->ADC_POS
+!	       1-->ADC_NEG
+!              2-->TDC_POS      ! Check one more time (Hamlet, 2002/10/01)
+!              3-->TDC_NEG
+
+    detector= 7 ! Temporary for HAERO
+
+!       TDC module LeCroy 1872a
+
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!!
+! S. Wood have problem to read additional TDC in Slot =18 (2002/10/18, Hamlet)
+!
+! For now I will use some other tdc channels for Aerogel
+!.......................>
+!
+ Slot= 18 ! TDC channels for HMS Aero 
+! Changed May 5, 2003 DJG
+!
+!
+! Slot= 18 !TDC
+!
+! TDC chan  for aerogel (Hamlet, 2002/10/17)
+!
+0, 1, 1, 2 !TDC ROC#1 Sl#18 Ch#0  signal pos 1
+1, 1, 2, 2 !TDC ROC#1 Sl#18 Ch#1  signal pos 2
+2, 1, 3, 2 !TDC ROC#1 Sl#18 Ch#2  signal pos 3
+3, 1, 4, 2 !TDC ROC#1 Sl#18 Ch#3  signal pos 4
+4, 1, 5, 2 !TDC ROC#1 Sl#18 Ch#4  signal pos 5
+5, 1, 6, 2 !TDC ROC#1 Sl#18 Ch#5  signal pos 6
+6, 1, 7, 2 !TDC ROC#1 Sl#18 Ch#6  signal pos 7
+7, 1, 8, 2 !TDC ROC#1 Sl#18 Ch#7  signal pos 8
+8, 1, 1, 3 !TDC ROC#1 Sl#18 Ch#8  signal neg 1
+9, 1, 2, 3 !TDC ROC#1 Sl#18 Ch#9  signal neg 2
+10, 1, 3, 3 !TDC ROC#1 Sl#18 Ch#10  signal neg 3
+11, 1, 4, 3 !TDC ROC#1 Sl#18 Ch#11  signal neg 4
+12, 1, 5, 3 !TDC ROC#1 Sl#18 Ch#12  signal neg 5
+13, 1, 6, 3 !TDC ROC#1 Sl#18 Ch#13  signal neg 6
+14, 1, 7, 3 !TDC ROC#1 Sl#18 Ch#14  signal neg 7
+15, 1, 8, 3 !TDC ROC#1 Sl#18 Ch#15  signal neg 8
+!!
+!16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 unused
+!17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 unused
+!18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 unused
+!19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 unused
+!20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 unused
+!21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 unused
+!22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 unused
+!23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 unused
+!24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 unused
+!25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 unused
+!26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 unused
+!27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 unused
+!28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 unused
+!29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 unused
+!30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 unused
+!31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 unused
+!32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 unused
+!33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 unused
+!34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 unused
+!35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 unused
+!36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 unused
+!37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 unused
+!38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 unused
+!39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 unused
+!40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 unused
+!41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 unused
+!42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 unused
+!43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 unused
+!44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 unused 
+!45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 unused 
+!46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 unused 
+!47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 unused 
+!48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 unused
+!49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+!50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+!51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+!52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 unused
+!53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+!54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+!55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+!56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+!57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+!58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+!59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+!60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+!61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+!62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+!63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!=============================================================================
+!       ADC module LeCroy 1881M
+    detector = 2
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#1 Sl#9 Ch#0 HSCIN pl#1 [X1] id#1 sig#0 [ADC+] (0 X1P-01)
+  1, 1, 3, 0 !ADC ROC#1 Sl#9 Ch#1 HSCIN pl#1 [X1] id#3 sig#0 [ADC+] (1 X1P-03)
+  2, 1, 5, 0 !ADC ROC#1 Sl#9 Ch#2 HSCIN pl#1 [X1] id#5 sig#0 [ADC+] (2 X1P-05)
+  3, 1, 7, 0 !ADC ROC#1 Sl#9 Ch#3 HSCIN pl#1 [X1] id#7 sig#0 [ADC+] (3 X1P-07)
+  4, 1, 9, 0 !ADC ROC#1 Sl#9 Ch#4 HSCIN pl#1 [X1] id#9 sig#0 [ADC+] (4 X1P-09)
+  5, 1, 11, 0 !ADC ROC#1 Sl#9 Ch#5 HSCIN pl#1 [X1] id#11 sig#0 [ADC+] (5 X1P-11)
+  6, 1, 13, 0 !ADC ROC#1 Sl#9 Ch#6 HSCIN pl#1 [X1] id#13 sig#0 [ADC+] (6 X1P-13)
+  7, 1, 15, 0 !ADC ROC#1 Sl#9 Ch#7 HSCIN pl#1 [X1] id#15 sig#0 [ADC+] (7 X1P-15)
+  8, 1, 2, 0 !ADC ROC#1 Sl#9 Ch#8 HSCIN pl#1 [X1] id#2 sig#0 [ADC+] (8 X1P-02)
+  9, 1, 4, 0 !ADC ROC#1 Sl#9 Ch#9 HSCIN pl#1 [X1] id#4 sig#0 [ADC+] (9 X1P-04)
+  10, 1, 6, 0 !ADC ROC#1 Sl#9 Ch#10 HSCIN pl#1 [X1] id#6 sig#0 [ADC+] (10 X1P-06)
+  11, 1, 8, 0 !ADC ROC#1 Sl#9 Ch#11 HSCIN pl#1 [X1] id#8 sig#0 [ADC+] (11 X1P-08)
+  12, 1, 10, 0 !ADC ROC#1 Sl#9 Ch#12 HSCIN pl#1 [X1] id#10 sig#0 [ADC+] (12 X1P-10)
+  13, 1, 12, 0 !ADC ROC#1 Sl#9 Ch#13 HSCIN pl#1 [X1] id#12 sig#0 [ADC+] (13 X1P-12)
+  14, 1, 14, 0 !ADC ROC#1 Sl#9 Ch#14 HSCIN pl#1 [X1] id#14 sig#0 [ADC+] (14 X1P-14)
+  15, 1, 16, 0 !ADC ROC#1 Sl#9 Ch#15 HSCIN pl#1 [X1] id#16 sig#0 [ADC+] (15 X1P-16)
+!
+  16, 1, 1, 1 !ADC ROC#1 Sl#9 Ch#16 HSCIN pl#1 [X1] id#1 sig#1 [ADC-] (16 X1N-01)
+  17, 1, 3, 1 !ADC ROC#1 Sl#9 Ch#17 HSCIN pl#1 [X1] id#3 sig#1 [ADC-] (17 X1N-03)
+  18, 1, 5, 1 !ADC ROC#1 Sl#9 Ch#18 HSCIN pl#1 [X1] id#5 sig#1 [ADC-] (18 X1N-05)
+  19, 1, 7, 1 !ADC ROC#1 Sl#9 Ch#19 HSCIN pl#1 [X1] id#7 sig#1 [ADC-] (19 X1N-07)
+  20, 1, 9, 1 !ADC ROC#1 Sl#9 Ch#20 HSCIN pl#1 [X1] id#9 sig#1 [ADC-] (20 X1N-09)
+  21, 1, 11, 1 !ADC ROC#1 Sl#9 Ch#21 HSCIN pl#1 [X1] id#11 sig#1 [ADC-] (21 X1N-11)
+  22, 1, 13, 1 !ADC ROC#1 Sl#9 Ch#22 HSCIN pl#1 [X1] id#13 sig#1 [ADC-] (22 X1N-13)
+  23, 1, 15, 1 !ADC ROC#1 Sl#9 Ch#23 HSCIN pl#1 [X1] id#15 sig#1 [ADC-] (23 X1N-15)
+  24, 1, 2, 1 !ADC ROC#1 Sl#9 Ch#24 HSCIN pl#1 [X1] id#2 sig#1 [ADC-] (24 X1N-02)
+  25, 1, 4, 1 !ADC ROC#1 Sl#9 Ch#25 HSCIN pl#1 [X1] id#4 sig#1 [ADC-] (25 X1N-04)
+  26, 1, 6, 1 !ADC ROC#1 Sl#9 Ch#26 HSCIN pl#1 [X1] id#6 sig#1 [ADC-] (26 X1N-06)
+  27, 1, 8, 1 !ADC ROC#1 Sl#9 Ch#27 HSCIN pl#1 [X1] id#8 sig#1 [ADC-] (27 X1N-08)
+  28, 1, 10, 1 !ADC ROC#1 Sl#9 Ch#28 HSCIN pl#1 [X1] id#10 sig#1 [ADC-] (28 X1N-10)
+  29, 1, 12, 1 !ADC ROC#1 Sl#9 Ch#29 HSCIN pl#1 [X1] id#12 sig#1 [ADC-] (29 X1N-12)
+  30, 1, 14, 1 !ADC ROC#1 Sl#9 Ch#30 HSCIN pl#1 [X1] id#14 sig#1 [ADC-] (30 X1N-14)
+  31, 1, 16, 1 !ADC ROC#1 Sl#9 Ch#31 HSCIN pl#1 [X1] id#16 sig#1 [ADC-] (31 X1N-16)
+! 
+  32, 2, 1, 0 !ADC ROC#1 Sl#9 Ch#32 HSCIN pl#2 [Y1] id#1 sig#0 [ADC+] (32 Y1P-01)
+  33, 2, 3, 0 !ADC ROC#1 Sl#9 Ch#33 HSCIN pl#2 [Y1] id#3 sig#0 [ADC+] (33 Y1P-03)
+  34, 2, 5, 0 !ADC ROC#1 Sl#9 Ch#34 HSCIN pl#2 [Y1] id#5 sig#0 [ADC+] (34 Y1P-05)
+  35, 2, 7, 0 !ADC ROC#1 Sl#9 Ch#35 HSCIN pl#2 [Y1] id#7 sig#0 [ADC+] (35 Y1P-07)
+  36, 2, 9, 0 !ADC ROC#1 Sl#9 Ch#36 HSCIN pl#2 [Y1] id#9 sig#0 [ADC+] (36 Y1P-09)
+!  37 !ADC ROC#1 Sl#9 Ch#37 unused
+!  38 !ADC ROC#1 Sl#9 Ch#38 unused
+!  39 !ADC ROC#1 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#1 Sl#9 Ch#40 HSCIN pl#2 [Y1] id#2 sig#0 [ADC+] (40 Y1P-02)
+  41, 2, 4, 0 !ADC ROC#1 Sl#9 Ch#41 HSCIN pl#2 [Y1] id#4 sig#0 [ADC+] (41 Y1P-04)
+  42, 2, 6, 0 !ADC ROC#1 Sl#9 Ch#42 HSCIN pl#2 [Y1] id#6 sig#0 [ADC+] (42 Y1P-06)
+  43, 2, 8, 0 !ADC ROC#1 Sl#9 Ch#43 HSCIN pl#2 [Y1] id#8 sig#0 [ADC+] (43 Y1P-08)
+  44, 2, 10, 0 !ADC ROC#1 Sl#9 Ch#44 HSCIN pl#2 [Y1] id#10 sig#0 [ADC+] (44 Y1P-10)
+!  45 !ADC ROC#1 Sl#9 Ch#45 unused
+!  46 !ADC ROC#1 Sl#9 Ch#46 unused
+!  47 !ADC ROC#1 Sl#9 Ch#47 unused
+!
+  48, 2, 1, 1 !ADC ROC#1 Sl#9 Ch#48 HSCIN pl#2 [Y1] id#1 sig#1 [ADC-] (48 Y1N-01)
+  49, 2, 3, 1 !ADC ROC#1 Sl#9 Ch#49 HSCIN pl#2 [Y1] id#3 sig#1 [ADC-] (49 Y1N-03)
+  50, 2, 5, 1 !ADC ROC#1 Sl#9 Ch#50 HSCIN pl#2 [Y1] id#5 sig#1 [ADC-] (50 Y1N-05)
+  51, 2, 7, 1 !ADC ROC#1 Sl#9 Ch#51 HSCIN pl#2 [Y1] id#7 sig#1 [ADC-] (51 Y1N-07)
+  52, 2, 9, 1 !ADC ROC#1 Sl#9 Ch#52 HSCIN pl#2 [Y1] id#9 sig#1 [ADC-] (52 Y1N-09)
+!  53 !ADC ROC#1 Sl#9 Ch#53 unused
+!  54 !ADC ROC#1 Sl#9 Ch#54 unused
+!  55 !ADC ROC#1 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#1 Sl#9 Ch#56 HSCIN pl#2 [Y1] id#2 sig#1 [ADC-] (56 Y1N-02)
+  57, 2, 4, 1 !ADC ROC#1 Sl#9 Ch#57 HSCIN pl#2 [Y1] id#4 sig#1 [ADC-] (57 Y1N-04)
+  58, 2, 6, 1 !ADC ROC#1 Sl#9 Ch#58 HSCIN pl#2 [Y1] id#6 sig#1 [ADC-] (58 Y1N-06)
+  59, 2, 8, 1 !ADC ROC#1 Sl#9 Ch#59 HSCIN pl#2 [Y1] id#8 sig#1 [ADC-] (59 Y1N-08)
+  60, 2, 10, 1 !ADC ROC#1 Sl#9 Ch#60 HSCIN pl#2 [Y1] id#10 sig#1 [ADC-] (60 Y1N-10)
+!  61 !ADC ROC#1 Sl#9 Ch#62 unused
+!  62 !ADC ROC#1 Sl#9 Ch#62 unused
+!  63 !ADC ROC#1 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#1 Sl#7 Ch#0 HSCIN pl#3 [X2] id#1 sig#0 [ADC+] (0 X2P-01)
+  1, 3, 3, 0 !ADC ROC#1 Sl#7 Ch#1 HSCIN pl#3 [X2] id#3 sig#0 [ADC+] (1 X2P-03)
+  2, 3, 5, 0 !ADC ROC#1 Sl#7 Ch#2 HSCIN pl#3 [X2] id#5 sig#0 [ADC+] (2 X2P-05)
+  3, 3, 7, 0 !ADC ROC#1 Sl#7 Ch#3 HSCIN pl#3 [X2] id#7 sig#0 [ADC+] (3 X2P-07)
+  4, 3, 9, 0 !ADC ROC#1 Sl#7 Ch#4 HSCIN pl#3 [X2] id#9 sig#0 [ADC+] (4 X2P-09)
+  5, 3, 11, 0 !ADC ROC#1 Sl#7 Ch#5 HSCIN pl#3 [X2] id#11 sig#0 [ADC+] (5 X2P-11)
+  6, 3, 13, 0 !ADC ROC#1 Sl#7 Ch#6 HSCIN pl#3 [X2] id#13 sig#0 [ADC+] (6 X2P-13)
+  7, 3, 15, 0 !ADC ROC#1 Sl#7 Ch#7 HSCIN pl#3 [X2] id#15 sig#0 [ADC+] (7 X2P-15)
+  8, 3, 2, 0 !ADC ROC#1 Sl#7 Ch#8 HSCIN pl#3 [X2] id#2 sig#0 [ADC+] (8 X2P-02)
+  9, 3, 4, 0 !ADC ROC#1 Sl#7 Ch#9 HSCIN pl#3 [X2] id#4 sig#0 [ADC+] (9 X2P-04)
+  10, 3, 6, 0 !ADC ROC#1 Sl#7 Ch#10 HSCIN pl#3 [X2] id#6 sig#0 [ADC+] (10 X2P-06)
+  11, 3, 8, 0 !ADC ROC#1 Sl#7 Ch#11 HSCIN pl#3 [X2] id#8 sig#0 [ADC+] (11 X2P-08)
+  12, 3, 10, 0 !ADC ROC#1 Sl#7 Ch#12 HSCIN pl#3 [X2] id#10 sig#0 [ADC+] (12 X2P-10)
+  13, 3, 12, 0 !ADC ROC#1 Sl#7 Ch#13 HSCIN pl#3 [X2] id#12 sig#0 [ADC+] (13 X2P-12)
+  14, 3, 14, 0 !ADC ROC#1 Sl#7 Ch#14 HSCIN pl#3 [X2] id#14 sig#0 [ADC+] (14 X2P-14)
+  15, 3, 16, 0 !ADC ROC#1 Sl#7 Ch#15 HSCIN pl#3 [X2] id#16 sig#0 [ADC+] (15 X2P-16)
+! 
+  16, 3, 1, 1 !ADC ROC#1 Sl#7 Ch#16 HSCIN pl#3 [X2] id#1 sig#1 [ADC-] (16 X2N-01)
+  17, 3, 3, 1 !ADC ROC#1 Sl#7 Ch#17 HSCIN pl#3 [X2] id#3 sig#1 [ADC-] (17 X2N-03)
+  18, 3, 5, 1 !ADC ROC#1 Sl#7 Ch#18 HSCIN pl#3 [X2] id#5 sig#1 [ADC-] (18 X2N-05)
+  19, 3, 7, 1 !ADC ROC#1 Sl#7 Ch#19 HSCIN pl#3 [X2] id#7 sig#1 [ADC-] (19 X2N-07)
+  20, 3, 9, 1 !ADC ROC#1 Sl#7 Ch#20 HSCIN pl#3 [X2] id#9 sig#1 [ADC-] (20 X2N-09)
+  21, 3, 11, 1 !ADC ROC#1 Sl#7 Ch#21 HSCIN pl#3 [X2] id#11 sig#1 [ADC-] (21 X2N-11)
+  22, 3, 13, 1 !ADC ROC#1 Sl#7 Ch#22 HSCIN pl#3 [X2] id#13 sig#1 [ADC-] (22 X2N-13)
+  23, 3, 15, 1 !ADC ROC#1 Sl#7 Ch#23 HSCIN pl#3 [X2] id#15 sig#1 [ADC-] (23 X2N-15)
+!
+  24, 3, 2, 1 !ADC ROC#1 Sl#7 Ch#24 HSCIN pl#3 [X2] id#2 sig#1 [ADC-] (24 X2N-02)
+  25, 3, 4, 1 !ADC ROC#1 Sl#7 Ch#25 HSCIN pl#3 [X2] id#4 sig#1 [ADC-] (25 X2N-04)
+  26, 3, 6, 1 !ADC ROC#1 Sl#7 Ch#26 HSCIN pl#3 [X2] id#6 sig#1 [ADC-] (26 X2N-06)
+  27, 3, 8, 1 !ADC ROC#1 Sl#7 Ch#27 HSCIN pl#3 [X2] id#8 sig#1 [ADC-] (27 X2N-08)
+  28, 3, 10, 1 !ADC ROC#1 Sl#7 Ch#28 HSCIN pl#3 [X2] id#10 sig#1 [ADC-] (28 X2N-10)
+  29, 3, 12, 1 !ADC ROC#1 Sl#7 Ch#29 HSCIN pl#3 [X2] id#12 sig#1 [ADC-] (29 X2N-12)
+  30, 3, 14, 1 !ADC ROC#1 Sl#7 Ch#30 HSCIN pl#3 [X2] id#14 sig#1 [ADC-] (30 X2N-14)
+  31, 3, 16, 1 !ADC ROC#1 Sl#7 Ch#31 HSCIN pl#3 [X2] id#16 sig#1 [ADC-] (31 X2N-16)
+  32, 4, 1, 0 !ADC ROC#1 Sl#7 Ch#32 HSCIN pl#4 [Y2] id#1 sig#0 [ADC+] (32 Y2P-01)
+  33, 4, 3, 0 !ADC ROC#1 Sl#7 Ch#33 HSCIN pl#4 [Y2] id#3 sig#0 [ADC+] (33 Y2P-03)
+  34, 4, 5, 0 !ADC ROC#1 Sl#7 Ch#34 HSCIN pl#4 [Y2] id#5 sig#0 [ADC+] (34 Y2P-05)
+  35, 4, 7, 0 !ADC ROC#1 Sl#7 Ch#35 HSCIN pl#4 [Y2] id#7 sig#0 [ADC+] (35 Y2P-07)
+  36, 4, 9, 0 !ADC ROC#1 Sl#7 Ch#36 HSCIN pl#4 [Y2] id#9 sig#0 [ADC+] (36 Y2P-09)
+!  37 !ADC ROC#1 Sl#7 Ch#37 unused
+!  38 !ADC ROC#1 Sl#7 Ch#38 unused
+!  39 !ADC ROC#1 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#1 Sl#7 Ch#40 HSCIN pl#4 [Y2] id#2 sig#0 [ADC+] (40 Y2P-02)
+  41, 4, 4, 0 !ADC ROC#1 Sl#7 Ch#41 HSCIN pl#4 [Y2] id#4 sig#0 [ADC+] (41 Y2P-04)
+  42, 4, 6, 0 !ADC ROC#1 Sl#7 Ch#42 HSCIN pl#4 [Y2] id#6 sig#0 [ADC+] (42 Y2P-06)
+  43, 4, 8, 0 !ADC ROC#1 Sl#7 Ch#43 HSCIN pl#4 [Y2] id#8 sig#0 [ADC+] (43 Y2P-08)
+  44, 4, 10, 0 !ADC ROC#1 Sl#7 Ch#44 HSCIN pl#4 [Y2] id#10 sig#0 [ADC+] (44 Y2P-10)
+!  45 !ADC ROC#1 Sl#7 Ch#45 unused
+!  46 !ADC ROC#1 Sl#7 Ch#46 unused
+!  47 !ADC ROC#1 Sl#7 Ch#47 unused
+  48, 4, 1, 1 !ADC ROC#1 Sl#7 Ch#48 HSCIN pl#4 [Y2] id#1 sig#1 [ADC-] (48 Y2N-01)
+  49, 4, 3, 1 !ADC ROC#1 Sl#7 Ch#49 HSCIN pl#4 [Y2] id#3 sig#1 [ADC-] (49 Y2N-03)
+  50, 4, 5, 1 !ADC ROC#1 Sl#7 Ch#50 HSCIN pl#4 [Y2] id#5 sig#1 [ADC-] (50 Y2N-05)
+  51, 4, 7, 1 !ADC ROC#1 Sl#7 Ch#51 HSCIN pl#4 [Y2] id#7 sig#1 [ADC-] (51 Y2N-07)
+  52, 4, 9, 1 !ADC ROC#1 Sl#7 Ch#52 HSCIN pl#4 [Y2] id#9 sig#1 [ADC-] (52 Y2N-09)
+!  53 !ADC ROC#1 Sl#7 Ch#53 unused
+!  54 !ADC ROC#1 Sl#7 Ch#54 unused
+!  55 !ADC ROC#1 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#1 Sl#7 Ch#56 HSCIN pl#4 [Y2] id#2 sig#1 [ADC-] (56 Y2N-02)
+  57, 4, 4, 1 !ADC ROC#1 Sl#7 Ch#57 HSCIN pl#4 [Y2] id#4 sig#1 [ADC-] (57 Y2N-04)
+  58, 4, 6, 1 !ADC ROC#1 Sl#7 Ch#58 HSCIN pl#4 [Y2] id#6 sig#1 [ADC-] (58 Y2N-06)
+  59, 4, 8, 1 !ADC ROC#1 Sl#7 Ch#59 HSCIN pl#4 [Y2] id#8 sig#1 [ADC-] (59 Y2N-08)
+  60, 4, 10, 1 !ADC ROC#1 Sl#7 Ch#60 HSCIN pl#4 [Y2] id#10 sig#1 [ADC-] (60 Y2N-10)
+!  61 !ADC ROC#1 Sl#7 Ch#61 unused
+!  62 !ADC ROC#1 Sl#7 Ch#62 unused
+!  63 !ADC ROC#1 Sl#7 Ch#63 unused
+!
+!---------------------------------------------------------------------------------
+    detector= 4 !HCAL
+!
+ Slot= 1 ! ADC  
+   0, 1, 1  !ADC ROC#1 Sl#1 Ch#0 HCAL col#1 row#1 (0 A-01)
+   1, 1, 2  !ADC ROC#1 Sl#1 Ch#1 HCAL col#1 row#2 (1 A-02)
+   2, 1, 3  !ADC ROC#1 Sl#1 Ch#2 HCAL col#1 row#3 (2 A-03)
+   3, 1, 4  !ADC ROC#1 Sl#1 Ch#3 HCAL col#1 row#4 (3 A-04)
+   4, 1, 5  !ADC ROC#1 Sl#1 Ch#4 HCAL col#1 row#5 (4 A-05)
+   5, 1, 6  !ADC ROC#1 Sl#1 Ch#5 HCAL col#1 row#6 (5 A-06)
+   6, 1, 7  !ADC ROC#1 Sl#1 Ch#6 HCAL col#1 row#7 (6 A-07)
+   7, 1, 8  !ADC ROC#1 Sl#1 Ch#7 HCAL col#1 row#8 (7 A-08)
+   8, 1, 9  !ADC ROC#1 Sl#1 Ch#8 HCAL col#1 row#9 (8 A-09)
+   9, 1, 10 !ADC ROC#1 Sl#1 Ch#9 HCAL col#1 row#10 (9 A-10)
+  10, 1, 11 !ADC ROC#1 Sl#1 Ch#10 HCAL col#1 row#11 (10 A-11)
+  11, 1, 12 !ADC ROC#1 Sl#1 Ch#11 HCAL col#1 row#12 (11 A-12)
+  12, 1, 13 !ADC ROC#1 Sl#1 Ch#12 HCAL col#1 row#13 (12 A-13)
+!   13 !ADC ROC#1 Sl#1 Ch#13 unused
+!   14 !ADC ROC#1 Sl#1 Ch#14 unused
+!   15 !ADC ROC#1 Sl#1 Ch#15 unused
+  16, 2, 1  !ADC ROC#1 Sl#1 Ch#16 HCAL col#2 row#1 (16 B-01)
+  17, 2, 2  !ADC ROC#1 Sl#1 Ch#17 HCAL col#2 row#2 (17 B-02)
+  18, 2, 3  !ADC ROC#1 Sl#1 Ch#18 HCAL col#2 row#3 (18 B-03)
+  19, 2, 4  !ADC ROC#1 Sl#1 Ch#19 HCAL col#2 row#4 (19 B-04)
+  20, 2, 5  !ADC ROC#1 Sl#1 Ch#20 HCAL col#2 row#5 (20 B-05)
+  21, 2, 6  !ADC ROC#1 Sl#1 Ch#21 HCAL col#2 row#6 (21 B-06)
+  22, 2, 7  !ADC ROC#1 Sl#1 Ch#22 HCAL col#2 row#7 (22 B-07)
+  23, 2, 8  !ADC ROC#1 Sl#1 Ch#23 HCAL col#2 row#8 (23 B-08)
+  24, 2, 9  !ADC ROC#1 Sl#1 Ch#24 HCAL col#2 row#9 (24 B-09)
+  25, 2, 10 !ADC ROC#1 Sl#1 Ch#25 HCAL col#2 row#10 (25 B-10)
+  26, 2, 11 !ADC ROC#1 Sl#1 Ch#26 HCAL col#2 row#11 (26 B-11)
+  27, 2, 12 !ADC ROC#1 Sl#1 Ch#27 HCAL col#2 row#12 (27 B-12)
+  28, 2, 13 !ADC ROC#1 Sl#1 Ch#28 HCAL col#2 row#13 (28 B-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+  32, 3, 1  !ADC ROC#1 Sl#1 Ch#32 HCAL col#3 row#1 (32 C-01)
+  33, 3, 2  !ADC ROC#1 Sl#1 Ch#33 HCAL col#3 row#2 (33 C-02)
+  34, 3, 3  !ADC ROC#1 Sl#1 Ch#34 HCAL col#3 row#3 (34 C-03)
+  35, 3, 4  !ADC ROC#1 Sl#1 Ch#35 HCAL col#3 row#4 (35 C-04)
+  36, 3, 5  !ADC ROC#1 Sl#1 Ch#36 HCAL col#3 row#5 (36 C-05)
+  37, 3, 6  !ADC ROC#1 Sl#1 Ch#37 HCAL col#3 row#6 (37 C-06)
+  38, 3, 7  !ADC ROC#1 Sl#1 Ch#38 HCAL col#3 row#7 (38 C-07)
+  39, 3, 8  !ADC ROC#1 Sl#1 Ch#39 HCAL col#3 row#8 (39 C-08)
+  40, 3, 9  !ADC ROC#1 Sl#1 Ch#40 HCAL col#3 row#9 (40 C-09)
+  41, 3, 10 !ADC ROC#1 Sl#1 Ch#41 HCAL col#3 row#10 (41 C-10)
+  42, 3, 11 !ADC ROC#1 Sl#1 Ch#42 HCAL col#3 row#11 (42 C-11)
+  43, 3, 12 !ADC ROC#1 Sl#1 Ch#43 HCAL col#3 row#12 (43 C-12)
+  44, 3, 13 !ADC ROC#1 Sl#1 Ch#44 HCAL col#3 row#13 (44 C-13)
+!  45 !ADC ROC#1 Sl#1 Ch#45 unused
+!  46 !ADC ROC#1 Sl#1 Ch#46 unused
+!  47 !ADC ROC#1 Sl#1 Ch#47 unused
+  48, 4, 1  !ADC ROC#1 Sl#1 Ch#48 HCAL col#4 row#1 (48 D-01)
+  49, 4, 2  !ADC ROC#1 Sl#1 Ch#49 HCAL col#4 row#2 (49 D-02)
+  50, 4, 3  !ADC ROC#1 Sl#1 Ch#50 HCAL col#4 row#3 (50 D-03)
+  51, 4, 4  !ADC ROC#1 Sl#1 Ch#51 HCAL col#4 row#4 (51 D-04)
+  52, 4, 5  !ADC ROC#1 Sl#1 Ch#52 HCAL col#4 row#5 (52 D-05)
+  53, 4, 6  !ADC ROC#1 Sl#1 Ch#53 HCAL col#4 row#6 (53 D-06)
+  54, 4, 7  !ADC ROC#1 Sl#1 Ch#54 HCAL col#4 row#7 (54 D-07)
+  55, 4, 8  !ADC ROC#1 Sl#1 Ch#55 HCAL col#4 row#8 (55 D-08)
+  56, 4, 9  !ADC ROC#1 Sl#1 Ch#56 HCAL col#4 row#9 (56 D-09)
+  57, 4, 10 !ADC ROC#1 Sl#1 Ch#57 HCAL col#4 row#10 (57 D-10)
+  58, 4, 11 !ADC ROC#1 Sl#1 Ch#58 HCAL col#4 row#11 (58 D-11)
+  59, 4, 12 !ADC ROC#1 Sl#1 Ch#59 HCAL col#4 row#12 (59 D-12)
+  60, 4, 13 !ADC ROC#1 Sl#1 Ch#60 HCAL col#4 row#13 (60 D-13)
+!
+!  61 !ADC ROC#1 Sl#1 Ch#61 unused
+
+    detector= 5    !HMISC - scintillator (ADCs) - behind calorimeter
+  62, 2, 1, 0 !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+  63, 2, 2, 0 !
+!
+detector= 4 !HCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+  0, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#0 HCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#1 HCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#2 HCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#3 HCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#4 HCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#5 HCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#6 HCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#7 HCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#1 Sl#5 Ch#8 HCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#1 Sl#5 Ch#9 HCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#1 Sl#5 Ch#10 HCAL col#1 row#11 (10 An-11)
+  11, 1, 12, 1 !ADC ROC#1 Sl#5 Ch#11 HCAL col#1 row#12 (11 An-112)
+  12, 1, 13, 1 !ADC ROC#1 Sl#5 Ch#12 HCAL col#1 row#13 (12 An-13)
+!  13 !ADC ROC#1 Sl#5 Ch#13 unused
+!  14 !ADC ROC#1 Sl#5 Ch#14 unused
+!  15 !ADC ROC#1 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#1 Sl#5 Ch#16 HCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#1 Sl#5 Ch#17 HCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#1 Sl#5 Ch#18 HCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#1 Sl#5 Ch#19 HCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#1 Sl#5 Ch#20 HCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#1 Sl#5 Ch#21 HCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#1 Sl#5 Ch#22 HCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#1 Sl#5 Ch#23 HCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#1 Sl#5 Ch#24 HCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#1 Sl#5 Ch#25 HCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#1 Sl#5 Ch#26 HCAL col#2 row#11 (26 Bn-11)
+  27, 2, 12, 1 !ADC ROC#1 Sl#5 Ch#27 HCAL col#2 row#12 (27 Bn-12)
+  28, 2, 13, 1 !ADC ROC#1 Sl#5 Ch#28 HCAL col#2 row#13 (28 Bn-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+!
+!==================================================================
+!!!!!!!!!!!!!!!!!!!!!!! AEROGEL ADC !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+    detector = 7
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+!Slot= 5 ! ADC  
+! May be will use spare channels HCAL ADC for aerogel (Hamlet, 2002/10/16)
+!48, 1, 1, 0 !ADC ROC#1 Sl#5 Ch#48 signal pos 1
+!49, 1, 2, 0 !ADC ROC#1 Sl#5 Ch#48signal pos 2
+!50, 1, 3, 0 !ADC ROC#1 Sl#5 Ch#50 signal pos 3
+!51, 1, 4, 0 !ADC ROC#1 Sl#5 Ch#51 signal pos 4
+!52, 1, 5, 0 !ADC ROC#1 Sl#5 Ch#52 signal pos 5
+!53, 1, 6, 0 !ADC ROC#1 Sl#5 Ch#53 signal pos 6
+!54, 1, 7, 0 !ADC ROC#1 Sl#5 Ch#54 signal pos 7
+!55, 1, 8, 0 !ADC ROC#1 Sl#5 Ch#55 signal pos 8
+!56, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#56  signal neg 1
+!57, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#57  signal neg 2
+!58, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#58  signal neg 3
+!59, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#59  signal neg 4
+!60, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#60  signal neg 5
+!61, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#61  signal neg 6
+!62, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#62  signal neg 7
+!63, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#63  signal neg 8
+!
+!   detector = 7
+!    Nsubadd= 64
+!    MASK= 3FFFx
+!    BSUB= 17
+
+  Slot= 11 ! ADC  
+! Additional new ADC for aerogel (Hamlet, 2002/10/17)
+   0, 1, 1, 0 !ADC ROC#1 Sl#11 Ch#0 signal pos 1
+   1, 1, 2, 0 !ADC ROC#1 Sl#11 Ch#1 signal pos 2
+   2, 1, 3, 0 !ADC ROC#1 Sl#11 Ch#2 signal pos 3
+   3, 1, 4, 0 !ADC ROC#1 Sl#11 Ch#3 signal pos 4
+   4, 1, 5, 0 !ADC ROC#1 Sl#11 Ch#4 signal pos 5
+   5, 1, 6, 0 !ADC ROC#1 Sl#11 Ch#5 signal pos 6
+   6, 1, 7, 0 !ADC ROC#1 Sl#11 Ch#6 signal pos 7
+   7, 1, 8, 0 !ADC ROC#1 Sl#11 Ch#7 signal pos 8
+   8, 1, 1, 1 !ADC ROC#1 Sl#11 Ch#8  signal neg 1
+   9, 1, 2, 1 !ADC ROC#1 Sl#11 Ch#9  signal neg 2
+  10, 1, 3, 1 !ADC ROC#1 Sl#11 Ch#10  signal neg 3
+  11, 1, 4, 1 !ADC ROC#1 Sl#11 Ch#11  signal neg 4
+  12, 1, 5, 1 !ADC ROC#1 Sl#11 Ch#12  signal neg 5
+  13, 1, 6, 1 !ADC ROC#1 Sl#11 Ch#13  signal neg 6
+  14, 1, 7, 1 !ADC ROC#1 Sl#11 Ch#14  signal neg 7
+  15, 1, 8, 1 !ADC ROC#1 Sl#11 Ch#15  signal neg 8
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!-----------------------------------------------------------------
+    detector= 3   !HCER
+!
+  Slot= 3
+   0, 1, 1 !ADC  ROC#1 Sl#3 Ch#0 HCER tube#1 (C1)
+   1, 1, 2 !ADC  ROC#1 Sl#3 Ch#1 HCER tube#2 (C2)
+!   2 !ADC ROC#1 Sl#3 Ch#2 unused
+!   3 !ADC ROC#1 Sl#3 Ch#3 unused
+!   4 !ADC ROC#1 Sl#3 Ch#4 unused
+!   5 !ADC ROC#1 Sl#3 Ch#5 unused
+!   6 !ADC ROC#1 Sl#3 Ch#6 unused
+!   7 !ADC ROC#1 Sl#3 Ch#7 unused
+!   8 !ADC ROC#1 Sl#3 Ch#8 unused
+!   9 !ADC ROC#1 Sl#3 Ch#9 unused
+!   10 !ADC ROC#1 Sl#3 Ch#10 unused
+!   11 !ADC ROC#1 Sl#3 Ch#11 unused
+!   12 !ADC ROC#1 Sl#3 Ch#12 unused
+!   13 !ADC ROC#1 Sl#3 Ch#13 unused
+!   14 !ADC ROC#1 Sl#3 Ch#14 unused
+!   15 !ADC ROC#1 Sl#3 Ch#15 unused
+!   16 !ADC ROC#1 Sl#3 Ch#16 unused
+!   17 !ADC ROC#1 Sl#3 Ch#17 unused
+!   18 !ADC ROC#1 Sl#3 Ch#18 unused
+!   19 !ADC ROC#1 Sl#3 Ch#19 unused
+!   20 !ADC ROC#1 Sl#3 Ch#20 unused
+!   21 !ADC ROC#1 Sl#3 Ch#21 unused
+!   22 !ADC ROC#1 Sl#3 Ch#22 unused
+!   23 !ADC ROC#1 Sl#3 Ch#23 unused
+!   24 !ADC ROC#1 Sl#3 Ch#24 unused
+!   25 !ADC ROC#1 Sl#3 Ch#25 unused
+!   26 !ADC ROC#1 Sl#3 Ch#26 unused
+!   27 !ADC ROC#1 Sl#3 Ch#27 unused
+!   28 !ADC ROC#1 Sl#3 Ch#28 unused
+!   29 !ADC ROC#1 Sl#3 Ch#29 unused
+!   30 !ADC ROC#1 Sl#3 Ch#30 unused
+!   31 !ADC ROC#1 Sl#3 Ch#31 unused
+!   32 !ADC ROC#1 Sl#3 Ch#32 unused
+!   33 !ADC ROC#1 Sl#3 Ch#33 unused
+!   34 !ADC ROC#1 Sl#3 Ch#34 unused
+!   35 !ADC ROC#1 Sl#3 Ch#35 unused
+!   36 !ADC ROC#1 Sl#3 Ch#36 unused
+!   37 !ADC ROC#1 Sl#3 Ch#37 unused
+!   38 !ADC ROC#1 Sl#3 Ch#38 unused
+!   39 !ADC ROC#1 Sl#3 Ch#39 unused
+!   40 !ADC ROC#1 Sl#3 Ch#40 unused
+!   41 !ADC ROC#1 Sl#3 Ch#41 unused
+!   42 !ADC ROC#1 Sl#3 Ch#42 unused
+!   43 !ADC ROC#1 Sl#3 Ch#43 unused
+!   44 !ADC ROC#1 Sl#3 Ch#44 unused
+!   45 !ADC ROC#1 Sl#3 Ch#45 unused
+!   46 !ADC ROC#1 Sl#3 Ch#46 unused
+!   47 !ADC ROC#1 Sl#3 Ch#47 unused
+!detector= 6 ! GMISC 
+!!! Use "plane" 2 for the PMT's on the floor (BLM's)
+!48, 2, 1, 0 ! Special PMT signal ch #1
+!49, 2, 2, 0 ! Special PMT signal ch #1
+!50, 2, 3, 0 ! Special PMT signal ch #1
+!51, 2, 4, 0 ! Special PMT signal ch #1
+!52, 2, 5, 0 ! Special PMT signal ch #1
+!53, 2, 6, 0 ! Special PMT signal ch #1
+!54, 2, 7, 0 ! Special PMT signal ch #1
+!55, 2, 8, 0 ! Special PMT signal ch #1
+!   48 !ADC ROC#1 Sl#3 Ch#48 unused
+!   49 !ADC ROC#1 Sl#3 Ch#49 unused
+!   50 !ADC ROC#1 Sl#3 Ch#50 unused
+!   51 !ADC ROC#1 Sl#3 Ch#51 unused
+!   52 !ADC ROC#1 Sl#3 Ch#52 unused
+!   53 !ADC ROC#1 Sl#3 Ch#53 unused
+!   54 !ADC ROC#1 Sl#3 Ch#54 unused
+!   55 !ADC ROC#1 Sl#3 Ch#55 unused
+!   56 !ADC ROC#1 Sl#3 Ch#56 unused
+!   57 !ADC ROC#1 Sl#3 Ch#57 unused
+!   58 !ADC ROC#1 Sl#3 Ch#58 unused
+!   59 !ADC ROC#1 Sl#3 Ch#59 unused
+!   60 !ADC ROC#1 Sl#3 Ch#60 unused
+!   61 !ADC ROC#1 Sl#3 Ch#61 unused
+!   62 !ADC ROC#1 Sl#3 Ch#62 unused
+!   63 !ADC ROC#1 Sl#3 Ch#63 unused
+!
+!
+  detector= 6 ! GMISC
+!
+  Slot= 13
+!
+!  0, 2, 1, 0 !ADC ROC#1 Sl#15 Ch#0
+!  1, 2, 2, 0 !ADC ROC#1 Sl#15 Ch#1
+!  2, 2, 3, 0 !ADC ROC#1 Sl#15 Ch#2
+!  3, 2, 4, 0 !ADC ROC#1 Sl#15 Ch#3
+  4, 2, 5, 0 !ADC ROC#1 Sl#15 Ch#4 H00A X+
+  5, 2, 6, 0 !ADC ROC#1 Sl#15 Ch#5 H00A X-
+  6, 2, 7, 0 !ADC ROC#1 Sl#15 Ch#6 H00A Y+
+  7, 2, 8, 0 !ADC ROC#1 Sl#15 Ch#7 H00A Y-
+  8, 2, 9, 0 !ADC ROC#1 Sl#15 Ch#8 H00B X+
+  9, 2, 10, 0 !ADC ROC#1 Sl#15 Ch#9 H00B X-
+  10, 2, 11, 0 !ADC ROC#1 Sl#15 Ch#10 H00B Y+
+  11, 2, 12, 0 !ADC ROC#1 Sl#15 Ch#11 H00B Y-
+!  12, 2, 13, 0 !ADC ROC#1 Sl#15 Ch#12 Fast Raster X-sync
+!  13, 2, 14, 0 !ADC ROC#1 Sl#15 Ch#13 Fast Raster X-signal
+!  14, 2, 15, 0 !ADC ROC#1 Sl#15 Ch#14 Fast Raster Y-sync
+!  15, 2, 16, 0 !ADC ROC#1 Sl#15 Ch#15 Fast Raster Y-signal
+! mkj switch x and y Apr 9,2003
+  14, 2, 13, 0 !ADC ROC#1 Sl#15 Ch#14 Fast Raster X-sync
+  15, 2, 14, 0 !ADC ROC#1 Sl#15 Ch#15 Fast Raster X-signal
+  12, 2, 15, 0 !ADC ROC#1 Sl#15 Ch#12 Fast Raster Y-sync
+  13, 2, 16, 0 !ADC ROC#1 Sl#15 Ch#13 Fast Raster Y-signal
+  16, 2, 17, 0  !ADC ROC#1 Sl#15 Ch#16 H00C X+
+  17, 2, 18, 0  !ADC ROC#1 Sl#15 Ch#17 H00C X-
+  18, 2, 19, 0  !ADC ROC#1 Sl#15 Ch#18 H00C Y+
+  19, 2, 20, 0  !ADC ROC#1 Sl#15 Ch#19 H00C Y-
+!   20 !ADC ROC#1 Sl#15 Ch#20 unused
+!   21 !ADC ROC#1 Sl#15 Ch#21 unused
+  22, 2, 23, 0  !ADC ROC#1 Sl#15 Ch#22 Raster gate
+!   23 !ADC ROC#1 Sl#15 Ch#23 unused
+!   24 !ADC ROC#1 Sl#15 Ch#24 unused
+!   25 !ADC ROC#1 Sl#15 Ch#25 unused
+!   26 !ADC ROC#1 Sl#15 Ch#26 unused
+!   27 !ADC ROC#1 Sl#15 Ch#27 unused
+!   28 !ADC ROC#1 Sl#15 Ch#28 unused
+!   29 !ADC ROC#1 Sl#15 Ch#29 unused
+!   30 !ADC ROC#1 Sl#15 Ch#30 unused
+!   31 !ADC ROC#1 Sl#15 Ch#31 unused
+   32, 2, 32, 0  ! Paul Gueye
+   33, 2, 33, 0  ! Paul Gueye
+   34, 2, 34, 0  ! Paul Gueye
+   35, 2, 35, 0  ! Paul Gueye
+   36, 2, 36, 0  ! Paul Gueye
+   37, 2, 37, 0  ! Paul Gueye
+   38, 2, 38, 0  ! Paul Gueye
+   39, 2, 39, 0  ! Paul Gueye
+   40, 2, 40, 0  ! Paul Gueye
+   41, 2, 41, 0  ! Paul Gueye
+   42, 2, 42, 0  ! Paul Gueye
+   43, 2, 43, 0  ! Paul Gueye
+   44, 2, 44, 0  ! Paul Gueye
+   45, 2, 45, 0  ! Paul Gueye
+   46, 2, 46, 0  ! Paul Gueye
+   47, 2, 47, 0  ! Paul Gueye
+!   32 !ADC ROC#1 Sl#15 Ch#32 unused
+!   33 !ADC ROC#1 Sl#15 Ch#33 unused
+!   34 !ADC ROC#1 Sl#15 Ch#34 unused
+!   35 !ADC ROC#1 Sl#15 Ch#35 unused
+!   36 !ADC ROC#1 Sl#15 Ch#36 unused
+!   37 !ADC ROC#1 Sl#15 Ch#37 unused
+!   38 !ADC ROC#1 Sl#15 Ch#38 unused
+!   39 !ADC ROC#1 Sl#15 Ch#39 unused
+!   40 !ADC ROC#1 Sl#15 Ch#40 unused
+!   41 !ADC ROC#1 Sl#15 Ch#41 unused
+!   42 !ADC ROC#1 Sl#15 Ch#42 unused
+!   43 !ADC ROC#1 Sl#15 Ch#43 unused
+!   44 !ADC ROC#1 Sl#15 Ch#44 unused
+!   45 !ADC ROC#1 Sl#15 Ch#45 unused
+!   46 !ADC ROC#1 Sl#15 Ch#46 unused
+!   47 !ADC ROC#1 Sl#15 Ch#47 unused
+!   48 !ADC ROC#1 Sl#15 Ch#48 unused
+!   49 !ADC ROC#1 Sl#15 Ch#49 unused
+!   50 !ADC ROC#1 Sl#15 Ch#50 unused
+!   51 !ADC ROC#1 Sl#15 Ch#51 unused
+!   52 !ADC ROC#1 Sl#15 Ch#52 unused
+!   53 !ADC ROC#1 Sl#15 Ch#53 unused
+!   54 !ADC ROC#1 Sl#15 Ch#54 unused
+!   55 !ADC ROC#1 Sl#15 Ch#55 unused
+!   56 !ADC ROC#1 Sl#15 Ch#56 unused
+!   57 !ADC ROC#1 Sl#15 Ch#57 unused
+!   58 !ADC ROC#1 Sl#15 Ch#58 unused
+!   59 !ADC ROC#1 Sl#15 Ch#59 unused
+!   60 !ADC ROC#1 Sl#15 Ch#60 unused
+!   61 !ADC ROC#1 Sl#15 Ch#61 unused
+!   62 !ADC ROC#1 Sl#15 Ch#62 unused
+!   63 !ADC ROC#1 Sl#15 Ch#63 unused
+!
+!---------------------------------------------------------------------
+!=============================== SOS MAP =============================
+!............ This part copy from replay99 (Hamlet,19 Dec'02)............
+!
+!  REAL map for SOS Drift Chambers (SDC); J.R.Arrington 20-Mar-1995
+!                                               
+     ROC= 4   !ReadOutController (crate) for SOS (fbsos)
+!
+       Nsubadd= 96	!assume 96 channel modules
+       MASK= FFFFx      !hex mask - assume LeCroy masking (lowest 13 bits)
+       BSUB= 17         !begin channel info with bit#17
+!
+       detector= 11     !SDC
+!
+       slot= 1          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 1, 1	!chamber 1, U plane, 48 wires.
+ 1, 1, 2
+ 2, 1, 3
+ 3, 1, 4
+ 4, 1, 5
+ 5, 1, 6
+ 6, 1, 7
+ 7, 1, 8
+ 8, 1, 9
+ 9, 1, 10
+ 10, 1, 11
+ 11, 1, 12
+ 12, 1, 13
+ 13, 1, 14
+ 14, 1, 15
+ 15, 1, 16
+ 16, 1, 17
+ 17, 1, 18
+ 18, 1, 19
+ 19, 1, 20
+ 20, 1, 21
+ 21, 1, 22
+ 22, 1, 23
+ 23, 1, 24
+ 24, 1, 25
+ 25, 1, 26
+ 26, 1, 27
+ 27, 1, 28
+ 28, 1, 29
+ 29, 1, 30
+ 30, 1, 31
+ 31, 1, 32
+ 32, 1, 33
+ 33, 1, 34
+ 34, 1, 35
+ 35, 1, 36
+ 36, 1, 37
+ 37, 1, 38
+ 38, 1, 39
+ 39, 1, 40
+ 40, 1, 41
+ 41, 1, 42
+ 42, 1, 43
+ 43, 1, 44
+ 44, 1, 45
+ 45, 1, 46
+ 46, 1, 47
+ 47, 1, 48
+ 48, 2, 1	!chamber 1, U' plane, 48 wires.
+ 49, 2, 2
+ 50, 2, 3
+ 51, 2, 4
+ 52, 2, 5
+ 53, 2, 6
+ 54, 2, 7
+ 55, 2, 8
+ 56, 2, 9
+ 57, 2, 10
+ 58, 2, 11
+ 59, 2, 12
+ 60, 2, 13
+ 61, 2, 14
+ 62, 2, 15
+ 63, 2, 16
+ 64, 2, 17
+ 65, 2, 18
+ 66, 2, 19
+ 67, 2, 20
+ 68, 2, 21
+ 69, 2, 22
+ 70, 2, 23
+ 71, 2, 24
+ 72, 2, 25
+ 73, 2, 26
+ 74, 2, 27
+ 75, 2, 28
+ 76, 2, 29
+ 77, 2, 30
+ 78, 2, 31
+ 79, 2, 32
+ 80, 2, 33
+ 81, 2, 34
+ 82, 2, 35
+ 83, 2, 36
+ 84, 2, 37
+ 85, 2, 38
+ 86, 2, 39
+ 87, 2, 40
+ 88, 2, 41
+ 89, 2, 42
+ 90, 2, 43
+ 91, 2, 44
+ 92, 2, 45
+ 93, 2, 46
+ 94, 2, 47
+ 95, 2, 48
+!
+       slot= 2          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 5, 1	!chamber 1, V plane, 48 wires.
+ 1, 5, 2
+ 2, 5, 3
+ 3, 5, 4
+ 4, 5, 5
+ 5, 5, 6
+ 6, 5, 7
+ 7, 5, 8
+ 8, 5, 9
+ 9, 5, 10
+ 10, 5, 11
+ 11, 5, 12
+ 12, 5, 13
+ 13, 5, 14
+ 14, 5, 15
+ 15, 5, 16
+ 16, 5, 17
+ 17, 5, 18
+ 18, 5, 19
+ 19, 5, 20
+ 20, 5, 21
+ 21, 5, 22
+ 22, 5, 23
+ 23, 5, 24
+ 24, 5, 25
+ 25, 5, 26
+ 26, 5, 27
+ 27, 5, 28
+ 28, 5, 29
+ 29, 5, 30
+ 30, 5, 31
+ 31, 5, 32
+ 32, 5, 33
+ 33, 5, 34
+ 34, 5, 35
+ 35, 5, 36
+ 36, 5, 37
+ 37, 5, 38
+ 38, 5, 39
+ 39, 5, 40
+ 40, 5, 41
+ 41, 5, 42
+ 42, 5, 43
+ 43, 5, 44
+ 44, 5, 45
+ 45, 5, 46
+ 46, 5, 47
+ 47, 5, 48
+ 48, 6, 1	!chamber 1, V' plane, 48 wires.
+ 49, 6, 2
+ 50, 6, 3
+ 51, 6, 4
+ 52, 6, 5
+ 53, 6, 6
+ 54, 6, 7
+ 55, 6, 8
+ 56, 6, 9
+ 57, 6, 10
+ 58, 6, 11
+ 59, 6, 12
+ 60, 6, 13
+ 61, 6, 14
+ 62, 6, 15
+ 63, 6, 16
+ 64, 6, 17
+ 65, 6, 18
+ 66, 6, 19
+ 67, 6, 20
+ 68, 6, 21
+ 69, 6, 22
+ 70, 6, 23
+ 71, 6, 24
+ 72, 6, 25
+ 73, 6, 26
+ 74, 6, 27
+ 75, 6, 28
+ 76, 6, 29
+ 77, 6, 30
+ 78, 6, 31
+ 79, 6, 32
+ 80, 6, 33
+ 81, 6, 34
+ 82, 6, 35
+ 83, 6, 36
+ 84, 6, 37
+ 85, 6, 38
+ 86, 6, 39
+ 87, 6, 40
+ 88, 6, 41
+ 89, 6, 42
+ 90, 6, 43
+ 91, 6, 44
+ 92, 6, 45
+ 93, 6, 46
+ 94, 6, 47
+ 95, 6, 48
+!
+       slot= 4          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 3, 1	!chamber 1, X plane, 64 wires.
+ 1, 3, 2
+ 2, 3, 3
+ 3, 3, 4
+ 4, 3, 5
+ 5, 3, 6
+ 6, 3, 7
+ 7, 3, 8
+ 8, 3, 9
+ 9, 3, 10
+ 10, 3, 11
+ 11, 3, 12
+ 12, 3, 13
+ 13, 3, 14
+ 14, 3, 15
+ 15, 3, 16
+ 16, 3, 17
+ 17, 3, 18
+ 18, 3, 19
+ 19, 3, 20
+ 20, 3, 21
+ 21, 3, 22
+ 22, 3, 23
+ 23, 3, 24
+ 24, 3, 25
+ 25, 3, 26
+ 26, 3, 27
+ 27, 3, 28
+ 28, 3, 29
+ 29, 3, 30
+ 30, 3, 31
+ 31, 3, 32
+ 32, 3, 33
+ 33, 3, 34
+ 34, 3, 35
+ 35, 3, 36
+ 36, 3, 37
+ 37, 3, 38
+ 38, 3, 39
+ 39, 3, 40
+ 40, 3, 41
+ 41, 3, 42
+ 42, 3, 43
+ 43, 3, 44
+ 44, 3, 45
+ 45, 3, 46
+ 46, 3, 47
+ 47, 3, 48
+ 48, 3, 49
+ 49, 3, 50
+ 50, 3, 51
+ 51, 3, 52
+ 52, 3, 53
+ 53, 3, 54
+ 54, 3, 55
+ 55, 3, 56
+ 56, 3, 57
+ 57, 3, 58
+ 58, 3, 59
+ 59, 3, 60
+ 60, 3, 61
+ 61, 3, 62
+ 62, 3, 63
+ 63, 3, 64
+!
+       slot= 5          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 4, 1	!chamber 1, X' plane, 64 wires.
+ 1, 4, 2
+ 2, 4, 3
+ 3, 4, 4
+ 4, 4, 5
+ 5, 4, 6
+ 6, 4, 7
+ 7, 4, 8
+ 8, 4, 9
+ 9, 4, 10
+ 10, 4, 11
+ 11, 4, 12
+ 12, 4, 13
+ 13, 4, 14
+ 14, 4, 15
+ 15, 4, 16
+ 16, 4, 17
+ 17, 4, 18
+ 18, 4, 19
+ 19, 4, 20
+ 20, 4, 21
+ 21, 4, 22
+ 22, 4, 23
+ 23, 4, 24
+ 24, 4, 25
+ 25, 4, 26
+ 26, 4, 27
+ 27, 4, 28
+ 28, 4, 29
+ 29, 4, 30
+ 30, 4, 31
+ 31, 4, 32
+ 32, 4, 33
+ 33, 4, 34
+ 34, 4, 35
+ 35, 4, 36
+ 36, 4, 37
+ 37, 4, 38
+ 38, 4, 39
+ 39, 4, 40
+ 40, 4, 41
+ 41, 4, 42
+ 42, 4, 43
+ 43, 4, 44
+ 44, 4, 45
+ 45, 4, 46
+ 46, 4, 47
+ 47, 4, 48
+ 48, 4, 49
+ 49, 4, 50
+ 50, 4, 51
+ 51, 4, 52
+ 52, 4, 53
+ 53, 4, 54
+ 54, 4, 55
+ 55, 4, 56
+ 56, 4, 57
+ 57, 4, 58
+ 58, 4, 59
+ 59, 4, 60
+ 60, 4, 61
+ 61, 4, 62
+ 62, 4, 63
+ 63, 4, 64
+!
+       slot= 8          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 7, 1	!chamber 2, U plane, 48 wires.
+ 1, 7, 2
+ 2, 7, 3
+ 3, 7, 4
+ 4, 7, 5
+ 5, 7, 6
+ 6, 7, 7
+ 7, 7, 8
+ 8, 7, 9
+ 9, 7, 10
+ 10, 7, 11
+ 11, 7, 12
+ 12, 7, 13
+ 13, 7, 14
+ 14, 7, 15
+ 15, 7, 16
+ 16, 7, 17
+ 17, 7, 18
+ 18, 7, 19
+ 19, 7, 20
+ 20, 7, 21
+ 21, 7, 22
+ 22, 7, 23
+ 23, 7, 24
+ 24, 7, 25
+ 25, 7, 26
+ 26, 7, 27
+ 27, 7, 28
+ 28, 7, 29
+ 29, 7, 30
+ 30, 7, 31
+ 31, 7, 32
+ 32, 7, 33
+ 33, 7, 34
+ 34, 7, 35
+ 35, 7, 36
+ 36, 7, 37
+ 37, 7, 38
+ 38, 7, 39
+ 39, 7, 40
+ 40, 7, 41
+ 41, 7, 42
+ 42, 7, 43
+ 43, 7, 44
+ 44, 7, 45
+ 45, 7, 46
+ 46, 7, 47
+ 47, 7, 48
+ 48, 8, 1	!chamber 2, U' plane, 48 wires.
+ 49, 8, 2
+ 50, 8, 3
+ 51, 8, 4
+ 52, 8, 5
+ 53, 8, 6
+ 54, 8, 7
+ 55, 8, 8
+ 56, 8, 9
+ 57, 8, 10
+ 58, 8, 11
+ 59, 8, 12
+ 60, 8, 13
+ 61, 8, 14
+ 62, 8, 15
+ 63, 8, 16
+ 64, 8, 17
+ 65, 8, 18
+ 66, 8, 19
+ 67, 8, 20
+ 68, 8, 21
+ 69, 8, 22
+ 70, 8, 23
+ 71, 8, 24
+ 72, 8, 25
+ 73, 8, 26
+ 74, 8, 27
+ 75, 8, 28
+ 76, 8, 29
+ 77, 8, 30
+ 78, 8, 31
+ 79, 8, 32
+ 80, 8, 33
+ 81, 8, 34
+ 82, 8, 35
+ 83, 8, 36
+ 84, 8, 37
+ 85, 8, 38
+ 86, 8, 39
+ 87, 8, 40
+ 88, 8, 41
+ 89, 8, 42
+ 90, 8, 43
+ 91, 8, 44
+ 92, 8, 45
+ 93, 8, 46
+ 94, 8, 47
+ 95, 8, 48
+!
+       slot= 9          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 11, 1	!chamber 2, V plane, 48 wires.
+ 1, 11, 2
+ 2, 11, 3
+ 3, 11, 4
+ 4, 11, 5
+ 5, 11, 6
+ 6, 11, 7
+ 7, 11, 8
+ 8, 11, 9
+ 9, 11, 10
+ 10, 11, 11
+ 11, 11, 12
+ 12, 11, 13
+ 13, 11, 14
+ 14, 11, 15
+ 15, 11, 16
+ 16, 11, 17
+ 17, 11, 18
+ 18, 11, 19
+ 19, 11, 20
+ 20, 11, 21
+ 21, 11, 22
+ 22, 11, 23
+ 23, 11, 24
+ 24, 11, 25
+ 25, 11, 26
+ 26, 11, 27
+ 27, 11, 28
+ 28, 11, 29
+ 29, 11, 30
+ 30, 11, 31
+ 31, 11, 32
+ 32, 11, 33
+ 33, 11, 34
+ 34, 11, 35
+ 35, 11, 36
+ 36, 11, 37
+ 37, 11, 38
+ 38, 11, 39
+ 39, 11, 40
+ 40, 11, 41
+ 41, 11, 42
+ 42, 11, 43
+ 43, 11, 44
+ 44, 11, 45
+ 45, 11, 46
+ 46, 11, 47
+ 47, 11, 48
+ 48, 12, 1	!chamber 2, V' plane, 48 wires.
+ 49, 12, 2
+ 50, 12, 3
+ 51, 12, 4
+ 52, 12, 5
+ 53, 12, 6
+ 54, 12, 7
+ 55, 12, 8
+ 56, 12, 9
+ 57, 12, 10
+ 58, 12, 11
+ 59, 12, 12
+ 60, 12, 13
+ 61, 12, 14
+ 62, 12, 15
+ 63, 12, 16
+ 64, 12, 17
+ 65, 12, 18
+ 66, 12, 19
+ 67, 12, 20
+ 68, 12, 21
+ 69, 12, 22
+ 70, 12, 23
+ 71, 12, 24
+ 72, 12, 25
+ 73, 12, 26
+ 74, 12, 27
+ 75, 12, 28
+ 76, 12, 29
+ 77, 12, 30
+ 78, 12, 31
+ 79, 12, 32
+ 80, 12, 33
+ 81, 12, 34
+ 82, 12, 35
+ 83, 12, 36
+ 84, 12, 37
+ 85, 12, 38
+ 86, 12, 39
+ 87, 12, 40
+ 88, 12, 41
+ 89, 12, 42
+ 90, 12, 43
+ 91, 12, 44
+ 92, 12, 45
+ 93, 12, 46
+ 94, 12, 47
+ 95, 12, 48
+!
+       slot= 11          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 9, 1	!chamber 2, X plane, 64 wires.
+ 1, 9, 2
+ 2, 9, 3
+ 3, 9, 4
+ 4, 9, 5
+ 5, 9, 6
+ 6, 9, 7
+ 7, 9, 8
+ 8, 9, 9
+ 9, 9, 10
+ 10, 9, 11
+ 11, 9, 12
+ 12, 9, 13
+ 13, 9, 14
+ 14, 9, 15
+ 15, 9, 16
+ 16, 9, 17
+ 17, 9, 18
+ 18, 9, 19
+ 19, 9, 20
+ 20, 9, 21
+ 21, 9, 22
+ 22, 9, 23
+ 23, 9, 24
+ 24, 9, 25
+ 25, 9, 26
+ 26, 9, 27
+ 27, 9, 28
+ 28, 9, 29
+ 29, 9, 30
+ 30, 9, 31
+ 31, 9, 32
+ 32, 9, 33
+ 33, 9, 34
+ 34, 9, 35
+ 35, 9, 36
+ 36, 9, 37
+ 37, 9, 38
+ 38, 9, 39
+ 39, 9, 40
+ 40, 9, 41
+ 41, 9, 42
+ 42, 9, 43
+ 43, 9, 44
+ 44, 9, 45
+ 45, 9, 46
+ 46, 9, 47
+ 47, 9, 48
+ 48, 9, 49
+ 49, 9, 50
+ 50, 9, 51
+ 51, 9, 52
+ 52, 9, 53
+ 53, 9, 54
+ 54, 9, 55
+ 55, 9, 56
+ 56, 9, 57
+ 57, 9, 58
+ 58, 9, 59
+ 59, 9, 60
+ 60, 9, 61
+ 61, 9, 62
+ 62, 9, 63
+ 63, 9, 64
+!
+       slot= 12          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 10, 1	!chamber 2, X' plane, 64 wires.
+ 1, 10, 2
+ 2, 10, 3
+ 3, 10, 4
+ 4, 10, 5
+ 5, 10, 6
+ 6, 10, 7
+ 7, 10, 8
+ 8, 10, 9
+ 9, 10, 10
+ 10, 10, 11
+ 11, 10, 12
+ 12, 10, 13
+ 13, 10, 14
+ 14, 10, 15
+ 15, 10, 16
+ 16, 10, 17
+ 17, 10, 18
+ 18, 10, 19
+ 19, 10, 20
+ 20, 10, 21
+ 21, 10, 22
+ 22, 10, 23
+ 23, 10, 24
+ 24, 10, 25
+ 25, 10, 26
+ 26, 10, 27
+ 27, 10, 28
+ 28, 10, 29
+ 29, 10, 30
+ 30, 10, 31
+ 31, 10, 32
+ 32, 10, 33
+ 33, 10, 34
+ 34, 10, 35
+ 35, 10, 36
+ 36, 10, 37
+ 37, 10, 38
+ 38, 10, 39
+ 39, 10, 40
+ 40, 10, 41
+ 41, 10, 42
+ 42, 10, 43
+ 43, 10, 44
+ 44, 10, 45
+ 45, 10, 46
+ 46, 10, 47
+ 47, 10, 48
+ 48, 10, 49
+ 49, 10, 50
+ 50, 10, 51
+ 51, 10, 52
+ 52, 10, 53
+ 53, 10, 54
+ 54, 10, 55
+ 55, 10, 56
+ 56, 10, 57
+ 57, 10, 58
+ 58, 10, 59
+ 59, 10, 60
+ 60, 10, 61
+ 61, 10, 62
+ 62, 10, 63
+ 63, 10, 64
+!
+!   SOS upstairs (SSCIN+SCAL+SCER) map    K.B.Beard 13-Jun-1994
+!
+    ROC= 3               !upstairs SOS crate (fbch2)
+!
+    detector= 12 !SSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 22 ! TDC  
+  0, 1, 3, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#3 [TDC+]
+  1, 1, 5, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#5 [TDC+]
+  2, 1, 7, 2 !TDC ROC#3 Sl#23 Ch#2 SSCIN pl#1 [X1] id sig#7 [TDC+]
+  3, 1, 9, 2 !TDC ROC#3 Sl#23 Ch#3 SSCIN pl#1 [X1] id sig#9 [TDC+]
+  4, 1, 2, 2 !TDC ROC#3 Sl#23 Ch#4 SSCIN pl#1 [X1] id sig#2 [TDC+]
+  5, 1, 4, 2 !TDC ROC#3 Sl#23 Ch#5 SSCIN pl#1 [X1] id sig#4 [TDC+]
+  6, 1, 6, 2 !TDC ROC#3 Sl#23 Ch#6 SSCIN pl#1 [X1] id sig#6 [TDC+]
+  7, 1, 8, 2 !TDC ROC#3 Sl#23 Ch#7 SSCIN pl#1 [X1] id sig#8 [TDC+]
+  8, 1, 3, 3 !TDC ROC#3 Sl#23 Ch#8 SSCIN pl#1 [X1] id sig#3 [TDC-]
+  9, 1, 5, 3 !TDC ROC#3 Sl#23 Ch#9 SSCIN pl#1 [X1] id sig#5 [TDC-]
+  10, 1, 7, 3 !TDC ROC#3 Sl#23 Ch#10 SSCIN pl#1 [X1] id sig#7 [TDC-]
+  11, 1, 9, 3 !TDC ROC#3 Sl#23 Ch#11 SSCIN pl#1 [X1] id sig#9 [TDC-]
+  12, 1, 2, 3 !TDC ROC#3 Sl#23 Ch#12 SSCIN pl#1 [X1] id sig#2 [TDC-]
+  13, 1, 4, 3 !TDC ROC#3 Sl#23 Ch#13 SSCIN pl#1 [X1] id sig#4 [TDC-]
+  14, 1, 6, 3 !TDC ROC#3 Sl#23 Ch#14 SSCIN pl#1 [X1] id sig#6 [TDC-]
+  15, 1, 8, 3 !TDC ROC#3 Sl#23 Ch#15 SSCIN pl#1 [X1] id sig#8 [TDC-]
+  16, 2, 3, 2 !TDC ROC#3 Sl#23 Ch#16 SSCIN pl#2 [Y1] id sig#3 [TDC+]
+  17, 2, 5, 2 !TDC ROC#3 Sl#23 Ch#17 SSCIN pl#2 [Y1] id sig#5 [TDC+]
+  18, 2, 7, 2 !TDC ROC#3 Sl#23 Ch#18 SSCIN pl#2 [Y1] id sig#7 [TDC+]
+  19, 2, 9, 2 !TDC ROC#3 Sl#23 Ch#19 SSCIN pl#2 [Y1] id sig#9 [TDC+]
+  20, 2, 2, 2 !TDC ROC#3 Sl#23 Ch#20 SSCIN pl#2 [Y1] id sig#2 [TDC+]
+  21, 2, 4, 2 !TDC ROC#3 Sl#23 Ch#21 SSCIN pl#2 [Y1] id sig#4 [TDC+]
+  22, 2, 6, 2 !TDC ROC#3 Sl#23 Ch#22 SSCIN pl#2 [Y1] id sig#6 [TDC+]
+  23, 2, 8, 2 !TDC ROC#3 Sl#23 Ch#23 SSCIN pl#2 [Y1] id sig#8 [TDC+]
+  24, 2, 3, 3 !TDC ROC#3 Sl#23 Ch#24 SSCIN pl#2 [Y1] id sig#3 [TDC-]
+  25, 2, 5, 3 !TDC ROC#3 Sl#23 Ch#25 SSCIN pl#2 [Y1] id sig#5 [TDC-]
+  26, 2, 7, 3 !TDC ROC#3 Sl#23 Ch#26 SSCIN pl#2 [Y1] id sig#7 [TDC-]
+  27, 2, 9, 3 !TDC ROC#3 Sl#23 Ch#27 SSCIN pl#2 [Y1] id sig#9 [TDC-]
+  28, 2, 2, 3 !TDC ROC#3 Sl#23 Ch#28 SSCIN pl#2 [Y1] id sig#2 [TDC-]
+  29, 2, 4, 3 !TDC ROC#3 Sl#23 Ch#29 SSCIN pl#2 [Y1] id sig#4 [TDC-]
+  30, 2, 6, 3 !TDC ROC#3 Sl#23 Ch#30 SSCIN pl#2 [Y1] id sig#6 [TDC-]
+  31, 2, 8, 3 !TDC ROC#3 Sl#23 Ch#31 SSCIN pl#2 [Y1] id sig#8 [TDC-]
+  32, 4, 3, 2 !TDC ROC#3 Sl#23 Ch#32 SSCIN pl#4 [Y2] id sig#3 [TDC+]
+  33, 4, 5, 2 !TDC ROC#3 Sl#23 Ch#33 SSCIN pl#4 [Y2] id sig#5 [TDC+]
+  34, 4, 7, 2 !TDC ROC#3 Sl#23 Ch#34 SSCIN pl#4 [Y2] id sig#7 [TDC+]
+  35, 4, 9, 2 !TDC ROC#3 Sl#23 Ch#35 SSCIN pl#4 [Y2] id sig#9 [TDC+]
+  36, 4, 2, 2 !TDC ROC#3 Sl#23 Ch#36 SSCIN pl#4 [Y2] id sig#2 [TDC+]
+  37, 4, 4, 2 !TDC ROC#3 Sl#23 Ch#37 SSCIN pl#4 [Y2] id sig#4 [TDC+]
+  38, 4, 6, 2 !TDC ROC#3 Sl#23 Ch#38 SSCIN pl#4 [Y2] id sig#6 [TDC+]
+  39, 4, 8, 2 !TDC ROC#3 Sl#23 Ch#39 SSCIN pl#4 [Y2] id sig#8 [TDC+]
+  40, 4, 3, 3 !TDC ROC#3 Sl#23 Ch#40 SSCIN pl#4 [Y2] id sig#3 [TDC-]
+  41, 4, 5, 3 !TDC ROC#3 Sl#23 Ch#41 SSCIN pl#4 [Y2] id sig#5 [TDC-]
+  42, 4, 7, 3 !TDC ROC#3 Sl#23 Ch#42 SSCIN pl#4 [Y2] id sig#7 [TDC-]
+  43, 4, 9, 3 !TDC ROC#3 Sl#23 Ch#43 SSCIN pl#4 [Y2] id sig#9 [TDC-]
+  44, 4, 2, 3 !TDC ROC#3 Sl#23 Ch#44 SSCIN pl#4 [Y2] id sig#2 [TDC-]
+  45, 4, 4, 3 !TDC ROC#3 Sl#23 Ch#45 SSCIN pl#4 [Y2] id sig#4 [TDC-]
+  46, 4, 6, 3 !TDC ROC#3 Sl#23 Ch#46 SSCIN pl#4 [Y2] id sig#6 [TDC-]
+  47, 4, 8, 3 !TDC ROC#3 Sl#23 Ch#47 SSCIN pl#4 [Y2] id sig#8 [TDC-]
+  48, 1, 1, 2 !TDC ROC#3 Sl#23 Ch#48 SSCIN pl#1 [X1] id sig#1 [TDC+]
+  49, 1, 1, 3 !TDC ROC#3 Sl#23 Ch#49 SSCIN pl#1 [X1] id sig#1 [TDC-]
+  50, 2, 1, 2 !TDC ROC#3 Sl#23 Ch#50 SSCIN pl#2 [Y1] id sig#1 [TDC+]
+  51, 2, 1, 3 !TDC ROC#3 Sl#23 Ch#51 SSCIN pl#2 [Y1] id sig#1 [TDC-]
+  52, 4, 1, 2 !TDC ROC#3 Sl#23 Ch#52 SSCIN pl#4 [Y2] id sig#1 [TDC+]
+  53, 4, 1, 3 !TDC ROC#3 Sl#23 Ch#53 SSCIN pl#4 [Y2] id sig#1 [TDC-]
+!  54 !TDC ROC#3 Sl#23 Ch#54 unused
+!  55 !TDC ROC#3 Sl#23 Ch#55 unused
+!  56 !TDC ROC#3 Sl#23 Ch#56 unused
+!  57 !TDC ROC#3 Sl#23 Ch#57 unused
+!  58 !TDC ROC#3 Sl#23 Ch#58 unused
+!  59 !TDC ROC#3 Sl#23 Ch#59 unused
+!  60 !TDC ROC#3 Sl#23 Ch#60 unused
+!  61 !TDC ROC#3 Sl#23 Ch#61 unused
+!  62 !TDC ROC#3 Sl#23 Ch#62 unused
+!  63 !TDC ROC#3 Sl#23 Ch#63 unused
+!
+!for run 8023, swapped HMS and SOS TDC so that TDC with first 8
+!channels dead would be here.  Moved connectors 1 and 2 to position
+!3 and 4.  Moved 3 singles channels (in connector3) to connector 2.
+
+ Slot= 20 ! TDC  
+  32, 3, 1, 2 !TDC ROC#3 Sl#21 Ch#0 SSCIN pl#3 [X2] id sig#1 [TDC+]
+  33, 3, 3, 2 !TDC ROC#3 Sl#21 Ch#1 SSCIN pl#3 [X2] id sig#3 [TDC+]
+  34, 3, 5, 2 !TDC ROC#3 Sl#21 Ch#2 SSCIN pl#3 [X2] id sig#5 [TDC+]
+  35, 3, 7, 2 !TDC ROC#3 Sl#21 Ch#3 SSCIN pl#3 [X2] id sig#7 [TDC+]
+  36, 3, 9, 2 !TDC ROC#3 Sl#21 Ch#4 SSCIN pl#3 [X2] id sig#9 [TDC+]
+  37, 3, 11, 2 !TDC ROC#3 Sl#21 Ch#5 SSCIN pl#3 [X2] id sig#11 [TDC+]
+  38, 3, 13, 2 !TDC ROC#3 Sl#21 Ch#6 SSCIN pl#3 [X2] id sig#13 [TDC+]
+  39, 3, 15, 2 !TDC ROC#3 Sl#21 Ch#7 SSCIN pl#3 [X2] id sig#15 [TDC+]
+  40, 3, 2, 2 !TDC ROC#3 Sl#21 Ch#8 SSCIN pl#3 [X2] id sig#2 [TDC+]
+  41, 3, 4, 2 !TDC ROC#3 Sl#21 Ch#9 SSCIN pl#3 [X2] id sig#4 [TDC+]
+  42, 3, 6, 2 !TDC ROC#3 Sl#21 Ch#10 SSCIN pl#3 [X2] id sig#6 [TDC+]
+  43, 3, 8, 2 !TDC ROC#3 Sl#21 Ch#11 SSCIN pl#3 [X2] id sig#8 [TDC+]
+  44, 3, 10, 2 !TDC ROC#3 Sl#21 Ch#12 SSCIN pl#3 [X2] id sig#10 [TDC+]
+  45, 3, 12, 2 !TDC ROC#3 Sl#21 Ch#13 SSCIN pl#3 [X2] id sig#12 [TDC+]
+  46, 3, 14, 2 !TDC ROC#3 Sl#21 Ch#14 SSCIN pl#3 [X2] id sig#14 [TDC+]
+  47, 3, 16, 2 !TDC ROC#3 Sl#21 Ch#15 SSCIN pl#3 [X2] id sig#16 [TDC+]
+  48, 3, 1, 3 !TDC ROC#3 Sl#21 Ch#16 SSCIN pl#3 [X2] id sig#1 [TDC-]
+  49, 3, 3, 3 !TDC ROC#3 Sl#21 Ch#17 SSCIN pl#3 [X2] id sig#3 [TDC-]
+  50, 3, 5, 3 !TDC ROC#3 Sl#21 Ch#18 SSCIN pl#3 [X2] id sig#5 [TDC-]
+  51, 3, 7, 3 !TDC ROC#3 Sl#21 Ch#19 SSCIN pl#3 [X2] id sig#7 [TDC-]
+  52, 3, 9, 3 !TDC ROC#3 Sl#21 Ch#20 SSCIN pl#3 [X2] id sig#9 [TDC-]
+  53, 3, 11, 3 !TDC ROC#3 Sl#21 Ch#21 SSCIN pl#3 [X2] id sig#11 [TDC-]
+  54, 3, 13, 3 !TDC ROC#3 Sl#21 Ch#22 SSCIN pl#3 [X2] id sig#13 [TDC-]
+  55, 3, 15, 3 !TDC ROC#3 Sl#21 Ch#23 SSCIN pl#3 [X2] id sig#15 [TDC-]
+  56, 3, 2, 3 !TDC ROC#3 Sl#21 Ch#24 SSCIN pl#3 [X2] id sig#2 [TDC-]
+  57, 3, 4, 3 !TDC ROC#3 Sl#21 Ch#25 SSCIN pl#3 [X2] id sig#4 [TDC-]
+  58, 3, 6, 3 !TDC ROC#3 Sl#21 Ch#26 SSCIN pl#3 [X2] id sig#6 [TDC-]
+  59, 3, 8, 3 !TDC ROC#3 Sl#21 Ch#27 SSCIN pl#3 [X2] id sig#8 [TDC-]
+  60, 3, 10, 3 !TDC ROC#3 Sl#21 Ch#28 SSCIN pl#3 [X2] id sig#10 [TDC-]
+  61, 3, 12, 3 !TDC ROC#3 Sl#21 Ch#29 SSCIN pl#3 [X2] id sig#12 [TDC-]
+  62, 3, 14, 3 !TDC ROC#3 Sl#21 Ch#30 SSCIN pl#3 [X2] id sig#14 [TDC-]
+  63, 3, 16, 3 !TDC ROC#3 Sl#21 Ch#31 SSCIN pl#3 [X2] id sig#16  [TDC-]
+!
+    detector= 15 !SMISC
+!
+  18, 1, 65, 0  ! 0 !TDC ROC#3 Sl#20 Ch#32 RF TDC.
+!
+    detector= 15 !SMISC
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 18 ! TDC  
+0, 1, 1, 0  ! 0 !TDC ROC#3 Sl#20 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#3 Sl#20 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#3 Sl#20 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#3 Sl#20 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#3 Sl#20 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#3 Sl#20 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#3 Sl#20 Ch#6 unused     {MuonL}
+7, 1, 8, 0  ! 7 !TDC ROC#3 Sl#20 Ch#7 unused     {MuonR}
+8, 1, 9, 0  ! 8 !TDC ROC#3 Sl#20 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#3 Sl#20 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#3 Sl#20 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#3 Sl#20 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#3 Sl#20 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#3 Sl#20 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#3 Sl#20 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#3 Sl#20 Ch#15 signal {PEDTRG}
+
+  Slot= 18! TDC
+16, 1, 17, 0  ! 16 !TDC ROC#3 Sl#18 Ch#16 signal {sS1}           
+17, 1, 18, 0  ! 17 !TDC ROC#3 Sl#18 Ch#17 signal {sPRE50}        
+18, 1, 19, 0  ! 18 !TDC ROC#3 Sl#18 Ch#18 signal {sS2X}          
+19, 1, 20, 0  ! 19 !TDC ROC#3 Sl#18 Ch#19 signal {sPRE150}       
+20, 1, 21, 0  ! 20 !TDC ROC#3 Sl#18 Ch#20 signal {sS1X}          
+21, 1, 22, 0  ! 21 !TDC ROC#3 Sl#18 Ch#21 signal {sS2Y}          
+22, 1, 23, 0  ! 22 !TDC ROC#3 Sl#18 Ch#22 signal {sPRE100}       
+23, 1, 24, 0  ! 23 !TDC ROC#3 Sl#18 Ch#23 signal {sS1Y}          
+24, 1, 25, 0  ! 24 !TDC ROC#3 Sl#18 Ch#24 signal {sS2}           
+25, 1, 26, 0  ! 25 !TDC ROC#3 Sl#18 Ch#25 signal {sPRE200}       
+26, 1, 27, 0  ! 26 !TDC ROC#3 Sl#18 Ch#26 signal {sSTOF}         
+27, 1, 28, 0  ! 27 !TDC ROC#3 Sl#18 Ch#27 signal {sSCIN}         
+28, 1, 29, 0  ! 28 !TDC ROC#3 Sl#18 Ch#28 signal {sELREAL}       
+29, 1, 30, 0  ! 29 !TDC ROC#3 Sl#18 Ch#29 signal {sPIPRE}        
+30, 1, 31, 0  ! 30 !TDC ROC#3 Sl#18 Ch#30 signal {sELCLEAN}      
+31, 1, 32, 0  ! 31 !TDC ROC#3 Sl#18 Ch#31 signal {sPRETRG}       
+32, 1, 33, 0  ! 32 !TDC ROC#3 Sl#18 Ch#32 signal {BCM1}          
+33, 1, 34, 0  ! 33 !TDC ROC#3 Sl#18 Ch#33 signal {BCM2}          
+34, 1, 35, 0  ! 34 !TDC ROC#3 Sl#18 Ch#34 signal {BCM3}          
+35, 1, 36, 0  ! 35 !TDC ROC#3 Sl#18 Ch#35 signal {UNSER}         
+36, 1, 37, 0  ! 36 !TDC ROC#3 Sl#18 Ch#36 signal {CLOCK}         
+37, 1, 38, 0  ! 37 !TDC ROC#3 Sl#18 Ch#37 signal {1 MHz * 36??}  
+38, 1, 39, 0  ! 38 !TDC ROC#3 Sl#18 Ch#38 signal {sPICLEAN}      
+39, 1, 40, 0  ! 39 !TDC ROC#3 Sl#18 Ch#39 signal {sELCLEAN}      
+40, 1, 41, 0  ! 40 !TDC ROC#3 Sl#18 Ch#40 signal {sPION}         
+41, 1, 42, 0  ! 41 !TDC ROC#3 Sl#18 Ch#41 signal {sCER}          
+42, 1, 43, 0  ! 42 !TDC ROC#3 Sl#18 Ch#42 signal {sELHI}         
+43, 1, 44, 0  ! 43 !TDC ROC#3 Sl#18 Ch#43 signal {sELLO}         
+44, 1, 45, 0  ! 44 !TDC ROC#3 Sl#18 Ch#44 signal {sPRHI}         
+45, 1, 46, 0  ! 45 !TDC ROC#3 Sl#18 Ch#45 signal {sPRLO}         
+46, 1, 47, 0  ! 46 !TDC ROC#3 Sl#18 Ch#46 signal {sSHLO}         
+47, 1, 48, 0  ! 47 !TDC ROC#3 Sl#18 Ch#47 signal {PEDS+TRIGS?}   
+!
+!       ADC module LeCroy 1881M
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+    detector= 12 !SSCIN
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#3 Sl#9 Ch#0 SSCIN pl#1 [X1] id sig#1 [ADC+]
+  1, 1, 3, 0 !ADC ROC#3 Sl#9 Ch#1 SSCIN pl#1 [X1] id sig#3 [ADC+]
+  2, 1, 5, 0 !ADC ROC#3 Sl#9 Ch#2 SSCIN pl#1 [X1] id sig#5 [ADC+]
+  3, 1, 7, 0 !ADC ROC#3 Sl#9 Ch#3 SSCIN pl#1 [X1] id sig#7 [ADC+]
+  4, 1, 9, 0 !ADC ROC#3 Sl#9 Ch#4 SSCIN pl#1 [X1] id sig#9 [ADC+]
+!  5 !ADC ROC#3 Sl#9 Ch#5 unused
+!  6 !ADC ROC#3 Sl#9 Ch#6 unused
+!  7 !ADC ROC#3 Sl#9 Ch#7 unused
+  8, 1, 2, 0 !ADC ROC#3 Sl#9 Ch#8 SSCIN pl#1 [X1] id sig#2 [ADC+]
+  9, 1, 4, 0 !ADC ROC#3 Sl#9 Ch#9 SSCIN pl#1 [X1] id sig#4 [ADC+]
+  10, 1, 6, 0 !ADC ROC#3 Sl#9 Ch#10 SSCIN pl#1 [X1] id sig#6 [ADC+]
+  11, 1, 8, 0 !ADC ROC#3 Sl#9 Ch#11 SSCIN pl#1 [X1] id sig#8 [ADC+]
+!  12 !ADC ROC#3 Sl#9 Ch#12 unused
+!  13 !ADC ROC#3 Sl#9 Ch#13 unused
+!  14 !ADC ROC#3 Sl#9 Ch#14 unused
+!  15 !ADC ROC#3 Sl#9 Ch#15 unused
+  16, 1, 1, 1 !ADC ROC#3 Sl#9 Ch#16 SSCIN pl#1 [X1] id sig#1 [ADC-]
+  17, 1, 3, 1 !ADC ROC#3 Sl#9 Ch#17 SSCIN pl#1 [X1] id sig#3 [ADC-]
+  18, 1, 5, 1 !ADC ROC#3 Sl#9 Ch#18 SSCIN pl#1 [X1] id sig#5 [ADC-]
+  19, 1, 7, 1 !ADC ROC#3 Sl#9 Ch#19 SSCIN pl#1 [X1] id sig#7 [ADC-]
+  20, 1, 9, 1 !ADC ROC#3 Sl#9 Ch#20 SSCIN pl#1 [X1] id sig#9 [ADC-]
+!  21 !ADC ROC#3 Sl#9 Ch#21 unused
+!  22 !ADC ROC#3 Sl#9 Ch#22 unused
+!  23 !ADC ROC#3 Sl#9 Ch#23 unused
+  24, 1, 2, 1 !ADC ROC#3 Sl#9 Ch#24 SSCIN pl#1 [X1] id sig#2 [ADC-]
+  25, 1, 4, 1 !ADC ROC#3 Sl#9 Ch#25 SSCIN pl#1 [X1] id sig#4 [ADC-]
+  26, 1, 6, 1 !ADC ROC#3 Sl#9 Ch#26 SSCIN pl#1 [X1] id sig#6 [ADC-]
+  27, 1, 8, 1 !ADC ROC#3 Sl#9 Ch#27 SSCIN pl#1 [X1] id sig#8 [ADC-]
+!  28 !ADC ROC#3 Sl#9 Ch#28 unused
+!  29 !ADC ROC#3 Sl#9 Ch#29 unused
+!  30 !ADC ROC#3 Sl#9 Ch#30 unused
+!  31 !ADC ROC#3 Sl#9 Ch#31 unused
+  32, 2, 1, 0 !ADC ROC#3 Sl#9 Ch#32 SSCIN pl#2 [Y1] id sig#1 [ADC+]
+  33, 2, 3, 0 !ADC ROC#3 Sl#9 Ch#33 SSCIN pl#2 [Y1] id sig#3 [ADC+]
+  34, 2, 5, 0 !ADC ROC#3 Sl#9 Ch#34 SSCIN pl#2 [Y1] id sig#5 [ADC+]
+  35, 2, 7, 0 !ADC ROC#3 Sl#9 Ch#35 SSCIN pl#2 [Y1] id sig#7 [ADC+]
+  36, 2, 9, 0 !ADC ROC#3 Sl#9 Ch#36 SSCIN pl#2 [Y1] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#9 Ch#37 unused
+!  38 !ADC ROC#3 Sl#9 Ch#38 unused
+!  39 !ADC ROC#3 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#3 Sl#9 Ch#40 SSCIN pl#2 [Y1] id sig#2 [ADC+]
+  41, 2, 4, 0 !ADC ROC#3 Sl#9 Ch#41 SSCIN pl#2 [Y1] id sig#4 [ADC+]
+  42, 2, 6, 0 !ADC ROC#3 Sl#9 Ch#42 SSCIN pl#2 [Y1] id sig#6 [ADC+]
+  43, 2, 8, 0 !ADC ROC#3 Sl#9 Ch#43 SSCIN pl#2 [Y1] id sig#8 [ADC+]
+!  44 !ADC ROC#3 Sl#9 Ch#44 unused
+!  45 !ADC ROC#3 Sl#9 Ch#45 unused
+!  46 !ADC ROC#3 Sl#9 Ch#46 unused
+!  47 !ADC ROC#3 Sl#9 Ch#47 unused
+  48, 2, 1, 1 !ADC ROC#3 Sl#9 Ch#48 SSCIN pl#2 [Y1] id sig#1 [ADC-]
+  49, 2, 3, 1 !ADC ROC#3 Sl#9 Ch#49 SSCIN pl#2 [Y1] id sig#3 [ADC-]
+  50, 2, 5, 1 !ADC ROC#3 Sl#9 Ch#50 SSCIN pl#2 [Y1] id sig#5 [ADC-]
+  51, 2, 7, 1 !ADC ROC#3 Sl#9 Ch#51 SSCIN pl#2 [Y1] id sig#7 [ADC-]
+  52, 2, 9, 1 !ADC ROC#3 Sl#9 Ch#52 SSCIN pl#2 [Y1] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#9 Ch#53 unused
+!  54 !ADC ROC#3 Sl#9 Ch#54 unused
+!  55 !ADC ROC#3 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#3 Sl#9 Ch#56 SSCIN pl#2 [Y1] id sig#2 [ADC-]
+  57, 2, 4, 1 !ADC ROC#3 Sl#9 Ch#57 SSCIN pl#2 [Y1] id sig#4 [ADC-]
+  58, 2, 6, 1 !ADC ROC#3 Sl#9 Ch#58 SSCIN pl#2 [Y1] id sig#6 [ADC-]
+  59, 2, 8, 1 !ADC ROC#3 Sl#9 Ch#59 SSCIN pl#2 [Y1] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#9 Ch#60 unused
+!  61 !ADC ROC#3 Sl#9 Ch#61 unused
+!  62 !ADC ROC#3 Sl#9 Ch#62 unused
+!  63 !ADC ROC#3 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#3 Sl#7 Ch#0 SSCIN pl#3 [X2] id sig#1 [ADC+]
+  1, 3, 3, 0 !ADC ROC#3 Sl#7 Ch#1 SSCIN pl#3 [X2] id sig#3 [ADC+]
+  2, 3, 5, 0 !ADC ROC#3 Sl#7 Ch#2 SSCIN pl#3 [X2] id sig#5 [ADC+]
+  3, 3, 7, 0 !ADC ROC#3 Sl#7 Ch#3 SSCIN pl#3 [X2] id sig#7 [ADC+]
+  4, 3, 9, 0 !ADC ROC#3 Sl#7 Ch#4 SSCIN pl#3 [X2] id sig#9 [ADC+]
+  5, 3, 11, 0 !ADC ROC#3 Sl#7 Ch#5 SSCIN pl#3 [X2] id sig#11 [ADC+]
+  6, 3, 13, 0 !ADC ROC#3 Sl#7 Ch#6 SSCIN pl#3 [X2] id sig#13 [ADC+]
+  7, 3, 15, 0 !ADC ROC#3 Sl#7 Ch#7 SSCIN pl#3 [X2] id sig#15 [ADC+]
+  8, 3, 2, 0 !ADC ROC#3 Sl#7 Ch#8 SSCIN pl#3 [X2] id sig#2 [ADC+]
+  9, 3, 4, 0 !ADC ROC#3 Sl#7 Ch#9 SSCIN pl#3 [X2] id sig#4 [ADC+]
+  10, 3, 6, 0 !ADC ROC#3 Sl#7 Ch#10 SSCIN pl#3 [X2] id sig#6 [ADC+]
+  11, 3, 8, 0 !ADC ROC#3 Sl#7 Ch#11 SSCIN pl#3 [X2] id sig#8 [ADC+]
+  12, 3, 10, 0 !ADC ROC#3 Sl#7 Ch#12 SSCIN pl#3 [X2] id sig#10 [ADC+]
+  13, 3, 12, 0 !ADC ROC#3 Sl#7 Ch#13 SSCIN pl#3 [X2] id sig#12 [ADC+]
+  14, 3, 14, 0 !ADC ROC#3 Sl#7 Ch#14 SSCIN pl#3 [X2] id sig#14 [ADC+]
+  15, 3, 16, 0 !ADC ROC#3 Sl#7 Ch#15 SSCIN pl#3 [X2] id sig#16 [ADC+]
+  16, 3, 1, 1 !ADC ROC#3 Sl#7 Ch#16 SSCIN pl#3 [X2] id sig#1 [ADC-]
+  17, 3, 3, 1 !ADC ROC#3 Sl#7 Ch#17 SSCIN pl#3 [X2] id sig#3 [ADC-]
+  18, 3, 5, 1 !ADC ROC#3 Sl#7 Ch#18 SSCIN pl#3 [X2] id sig#5 [ADC-]
+  19, 3, 7, 1 !ADC ROC#3 Sl#7 Ch#19 SSCIN pl#3 [X2] id sig#7 [ADC-]
+  20, 3, 9, 1 !ADC ROC#3 Sl#7 Ch#20 SSCIN pl#3 [X2] id sig#9 [ADC-]
+  21, 3, 11, 1 !ADC ROC#3 Sl#7 Ch#21 SSCIN pl#3 [X2] id sig#11 [ADC-]
+  22, 3, 13, 1 !ADC ROC#3 Sl#7 Ch#22 SSCIN pl#3 [X2] id sig#13 [ADC-]
+  23, 3, 15, 1 !ADC ROC#3 Sl#7 Ch#23 SSCIN pl#3 [X2] id sig#15 [ADC-]
+  24, 3, 2, 1 !ADC ROC#3 Sl#7 Ch#24 SSCIN pl#3 [X2] id sig#2 [ADC-]
+  25, 3, 4, 1 !ADC ROC#3 Sl#7 Ch#25 SSCIN pl#3 [X2] id sig#4 [ADC-]
+  26, 3, 6, 1 !ADC ROC#3 Sl#7 Ch#26 SSCIN pl#3 [X2] id sig#6 [ADC-]
+  27, 3, 8, 1 !ADC ROC#3 Sl#7 Ch#27 SSCIN pl#3 [X2] id sig#8 [ADC-]
+  28, 3, 10, 1 !ADC ROC#3 Sl#7 Ch#28 SSCIN pl#3 [X2] id sig#10 [ADC-]
+  29, 3, 12, 1 !ADC ROC#3 Sl#7 Ch#29 SSCIN pl#3 [X2] id sig#12 [ADC-]
+  30, 3, 14, 1 !ADC ROC#3 Sl#7 Ch#30 SSCIN pl#3 [X2] id sig#14 [ADC-]
+  31, 3, 16, 1 !ADC ROC#3 Sl#7 Ch#31 SSCIN pl#3 [X2] id sig#16 [ADC-]
+  32, 4, 1, 0 !ADC ROC#3 Sl#7 Ch#32 SSCIN pl#4 [Y2] id sig#1 [ADC+]
+  33, 4, 3, 0 !ADC ROC#3 Sl#7 Ch#33 SSCIN pl#4 [Y2] id sig#3 [ADC+]
+  34, 4, 5, 0 !ADC ROC#3 Sl#7 Ch#34 SSCIN pl#4 [Y2] id sig#5 [ADC+]
+  35, 4, 7, 0 !ADC ROC#3 Sl#7 Ch#35 SSCIN pl#4 [Y2] id sig#7 [ADC+]
+  36, 4, 9, 0 !ADC ROC#3 Sl#7 Ch#36 SSCIN pl#4 [Y2] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#7 Ch#37 unused
+!  38 !ADC ROC#3 Sl#7 Ch#38 unused
+!  39 !ADC ROC#3 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#3 Sl#7 Ch#40 SSCIN pl#4 [Y2] id sig#2 [ADC+]
+  41, 4, 4, 0 !ADC ROC#3 Sl#7 Ch#41 SSCIN pl#4 [Y2] id sig#4 [ADC+]
+  42, 4, 6, 0 !ADC ROC#3 Sl#7 Ch#42 SSCIN pl#4 [Y2] id sig#6 [ADC+]
+!  43, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+] DEAD CH!
+!  44 !ADC ROC#3 Sl#7 Ch#44 unused
+!  45 !ADC ROC#3 Sl#7 Ch#45 unused
+!  46 !ADC ROC#3 Sl#7 Ch#46 unused
+  47, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+]
+  48, 4, 1, 1 !ADC ROC#3 Sl#7 Ch#48 SSCIN pl#4 [Y2] id sig#1 [ADC-]
+  49, 4, 3, 1 !ADC ROC#3 Sl#7 Ch#49 SSCIN pl#4 [Y2] id sig#3 [ADC-]
+  50, 4, 5, 1 !ADC ROC#3 Sl#7 Ch#50 SSCIN pl#4 [Y2] id sig#5 [ADC-]
+  51, 4, 7, 1 !ADC ROC#3 Sl#7 Ch#51 SSCIN pl#4 [Y2] id sig#7 [ADC-]
+  52, 4, 9, 1 !ADC ROC#3 Sl#7 Ch#52 SSCIN pl#4 [Y2] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#7 Ch#53 unused
+!  54 !ADC ROC#3 Sl#7 Ch#54 unused
+!  55 !ADC ROC#3 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#3 Sl#7 Ch#56 SSCIN pl#4 [Y2] id sig#2 [ADC-]
+  57, 4, 4, 1 !ADC ROC#3 Sl#7 Ch#57 SSCIN pl#4 [Y2] id sig#4 [ADC-]
+  58, 4, 6, 1 !ADC ROC#3 Sl#7 Ch#58 SSCIN pl#4 [Y2] id sig#6 [ADC-]
+  59, 4, 8, 1 !ADC ROC#3 Sl#7 Ch#59 SSCIN pl#4 [Y2] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#7 Ch#60 unused
+!  61 !ADC ROC#3 Sl#7 Ch#61 unused
+!  62 !ADC ROC#3 Sl#7 Ch#62 unused
+!  63 !ADC ROC#3 Sl#7 Ch#63 unused
+!
+    detector= 14 !SCAL
+!
+ Slot= 1 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#1 Ch#0 SCAL column#1 row#1
+  1, 1, 2 !ADC ROC#3 Sl#1 Ch#1 SCAL column#1 row#2
+  2, 1, 3 !ADC ROC#3 Sl#1 Ch#2 SCAL column#1 row#3
+  3, 1, 4 !ADC ROC#3 Sl#1 Ch#3 SCAL column#1 row#4
+  4, 1, 5 !ADC ROC#3 Sl#1 Ch#4 SCAL column#1 row#5
+  5, 1, 6 !ADC ROC#3 Sl#1 Ch#5 SCAL column#1 row#6
+  6, 1, 7 !ADC ROC#3 Sl#1 Ch#6 SCAL column#1 row#7
+  7, 1, 8 !ADC ROC#3 Sl#1 Ch#7 SCAL column#1 row#8
+  8, 1, 9 !ADC ROC#3 Sl#1 Ch#8 SCAL column#1 row#9
+  9, 1, 10 !ADC ROC#3 Sl#1 Ch#9 SCAL column#1 row#10
+  10, 1, 11 !ADC ROC#3 Sl#1 Ch#10 SCAL column#1 row#11
+!  11 !ADC ROC#3 Sl#1 Ch#11 unused
+!  12 !ADC ROC#3 Sl#1 Ch#12 unused
+!  13 !ADC ROC#3 Sl#1 Ch#13 unused
+!  14 !ADC ROC#3 Sl#1 Ch#14 unused
+!  15 !ADC ROC#3 Sl#1 Ch#15 unused
+  16, 2, 1 !ADC ROC#3 Sl#1 Ch#16 SCAL column#2 row#1
+  17, 2, 2 !ADC ROC#3 Sl#1 Ch#17 SCAL column#2 row#2
+  18, 2, 3 !ADC ROC#3 Sl#1 Ch#18 SCAL column#2 row#3
+  19, 2, 4 !ADC ROC#3 Sl#1 Ch#19 SCAL column#2 row#4
+  20, 2, 5 !ADC ROC#3 Sl#1 Ch#20 SCAL column#2 row#5
+  21, 2, 6 !ADC ROC#3 Sl#1 Ch#21 SCAL column#2 row#6
+  22, 2, 7 !ADC ROC#3 Sl#1 Ch#22 SCAL column#2 row#7
+  23, 2, 8 !ADC ROC#3 Sl#1 Ch#23 SCAL column#2 row#8
+  24, 2, 9 !ADC ROC#3 Sl#1 Ch#24 SCAL column#2 row#9
+  25, 2, 10 !ADC ROC#3 Sl#1 Ch#25 SCAL column#2 row#10
+  26, 2, 11 !ADC ROC#3 Sl#1 Ch#26 SCAL column#2 row#11
+!  27 !ADC ROC#3 Sl#1 Ch#27 unused
+!  28 !ADC ROC#3 Sl#1 Ch#28 unused
+!  29 !ADC ROC#3 Sl#1 Ch#29 unused
+!  30 !ADC ROC#3 Sl#1 Ch#30 unused
+!  31 !ADC ROC#3 Sl#1 Ch#31 unused
+!  32, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1  
+  44, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1
+  33, 3, 2 !ADC ROC#3 Sl#1 Ch#33 SCAL column#3 row#2
+  34, 3, 3 !ADC ROC#3 Sl#1 Ch#34 SCAL column#3 row#3
+  35, 3, 4 !ADC ROC#3 Sl#1 Ch#35 SCAL column#3 row#4
+  36, 3, 5 !ADC ROC#3 Sl#1 Ch#36 SCAL column#3 row#5
+  37, 3, 6 !ADC ROC#3 Sl#1 Ch#37 SCAL column#3 row#6
+  38, 3, 7 !ADC ROC#3 Sl#1 Ch#38 SCAL column#3 row#7
+  39, 3, 8 !ADC ROC#3 Sl#1 Ch#39 SCAL column#3 row#8
+  40, 3, 9 !ADC ROC#3 Sl#1 Ch#40 SCAL column#3 row#9
+  41, 3, 10 !ADC ROC#3 Sl#1 Ch#41 SCAL column#3 row#10
+  42, 3, 11 !ADC ROC#3 Sl#1 Ch#42 SCAL column#3 row#11
+!  43 !ADC ROC#3 Sl#1 Ch#43 unused
+!  44 !ADC ROC#3 Sl#1 Ch#44 unused
+!  45 !ADC ROC#3 Sl#1 Ch#45 unused
+!  46 !ADC ROC#3 Sl#1 Ch#46 unused
+!  47 !ADC ROC#3 Sl#1 Ch#47 unused
+
+!sD1 was being lost in the ADC delay lines.  Move to channel #15.
+!  48, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!
+  49, 4, 2 !ADC ROC#3 Sl#1 Ch#49 SCAL column#4 row#2
+  50, 4, 3 !ADC ROC#3 Sl#1 Ch#50 SCAL column#4 row#3
+  51, 4, 4 !ADC ROC#3 Sl#1 Ch#51 SCAL column#4 row#4
+  52, 4, 5 !ADC ROC#3 Sl#1 Ch#52 SCAL column#4 row#5
+  53, 4, 6 !ADC ROC#3 Sl#1 Ch#53 SCAL column#4 row#6
+  54, 4, 7 !ADC ROC#3 Sl#1 Ch#54 SCAL column#4 row#7
+  55, 4, 8 !ADC ROC#3 Sl#1 Ch#55 SCAL column#4 row#8
+  56, 4, 9 !ADC ROC#3 Sl#1 Ch#56 SCAL column#4 row#9
+  57, 4, 10 !ADC ROC#3 Sl#1 Ch#57 SCAL column#4 row#10
+  58, 4, 11 !ADC ROC#3 Sl#1 Ch#58 SCAL column#4 row#11
+!  59 !ADC ROC#3 Sl#1 Ch#59 unused
+!  60 !ADC ROC#3 Sl#1 Ch#60 unused
+!  61 !ADC ROC#3 Sl#1 Ch#61 unused
+!  62 !ADC ROC#3 Sl#1 Ch#62 unused
+  62, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!  63 !ADC ROC#3 Sl#1 Ch#63 unused
+ detector= 15   !smisc  -  photodiode for laser gain calibration system.
+ 63, 2, 1, 0    !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+!
+detector= 14 !SCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+!  0, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  12, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#3 Sl#5 Ch#1 SCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#3 Sl#5 Ch#2 SCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#3 Sl#5 Ch#3 SCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#3 Sl#5 Ch#4 SCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#3 Sl#5 Ch#5 SCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#3 Sl#5 Ch#6 SCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#3 Sl#5 Ch#7 SCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#3 Sl#5 Ch#8 SCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#3 Sl#5 Ch#9 SCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#3 Sl#5 Ch#10 SCAL col#1 row#11 (10 An-11)
+!   11 !ADC ROC#3 Sl#5 Ch#11 unused
+!   12 !ADC ROC#3 Sl#5 Ch#12 unused
+!   13 !ADC ROC#3 Sl#5 Ch#13 unused
+!   14 !ADC ROC#3 Sl#5 Ch#14 unused
+!   15 !ADC ROC#3 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#3 Sl#5 Ch#16 SCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#3 Sl#5 Ch#17 SCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#3 Sl#5 Ch#18 SCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#3 Sl#5 Ch#19 SCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#3 Sl#5 Ch#20 SCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#3 Sl#5 Ch#21 SCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#3 Sl#5 Ch#22 SCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#3 Sl#5 Ch#23 SCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#3 Sl#5 Ch#24 SCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#3 Sl#5 Ch#25 SCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#3 Sl#5 Ch#26 SCAL col#2 row#11 (26 Bn-11)
+!  27 !ADC ROC#3 Sl#5 Ch#27 unused
+!  28 !ADC ROC#3 Sl#5 Ch#28 unused
+!  29 !ADC ROC#3 Sl#5 Ch#29 unused
+!  30 !ADC ROC#3 Sl#5 Ch#30 unused
+!  31 !ADC ROC#3 Sl#5 Ch#31 unused
+!
+    detector= 13 !SCER
+!
+ Slot= 3 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#3 Ch#0 SCER tube#1
+  1, 1, 2 !ADC ROC#3 Sl#3 Ch#1 SCER tube#2
+  2, 1, 3 !ADC ROC#3 Sl#3 Ch#2 SCER tube#3
+  3, 1, 4 !ADC ROC#3 Sl#3 Ch#3 SCER tube#4
+detector=15 ! SMISC helicity stuff mkj 5/15/03
+!           ! muon det added 6/17/03
+  4, 2, 5,0 !  4 !ADC ROC#3 Sl#3 Ch#4 unused
+  5, 2, 6,0 !  5 !ADC ROC#3 Sl#3 Ch#5 unused
+!  6 !ADC ROC#3 Sl#3 Ch#6 unused
+!  7 !ADC ROC#3 Sl#3 Ch#7 unused
+!  8 !ADC ROC#3 Sl#3 Ch#8 unused
+8,2,2,0  ! mps  clock
+!  9 !ADC ROC#3 Sl#3 Ch#9 unused
+!  10 !ADC ROC#3 Sl#3 Ch#10 unused
+!  11 !ADC ROC#3 Sl#3 Ch#11 unused
+!  12 !ADC ROC#3 Sl#3 Ch#12 unused
+12,2,3,0  ! H+ signal
+15,2,4,0  ! H- signal
+!  13 !ADC ROC#3 Sl#3 Ch#13 unused
+!  14 !ADC ROC#3 Sl#3 Ch#14 unused
+!  15 !ADC ROC#3 Sl#3 Ch#15 unused
+  ! 16 !ADC ROC#3 Sl#3 Ch#16 signal {A01}
+  ! 17 !ADC ROC#3 Sl#3 Ch#17 signal {A02}
+  ! 18 !ADC ROC#3 Sl#3 Ch#18 signal {A03}
+  ! 19 !ADC ROC#3 Sl#3 Ch#19 signal {A04}
+  ! 20 !ADC ROC#3 Sl#3 Ch#20 signal {A05}
+  ! 21 !ADC ROC#3 Sl#3 Ch#21 signal {A06}
+  ! 22 !ADC ROC#3 Sl#3 Ch#22 signal {A07}
+  ! 23 !ADC ROC#3 Sl#3 Ch#23 signal {A08}
+  ! 24 !ADC ROC#3 Sl#3 Ch#24 signal {A09}
+  ! 25 !ADC ROC#3 Sl#3 Ch#25 signal {A10}
+  ! 26 !ADC ROC#3 Sl#3 Ch#26 signal {A11}
+  ! 27 !ADC ROC#3 Sl#3 Ch#27 signal {A12}
+  ! 28 !ADC ROC#3 Sl#3 Ch#28 signal {A13}
+  ! 29 !ADC ROC#3 Sl#3 Ch#29 signal {A14}
+  ! 30 !ADC ROC#3 Sl#3 Ch#30 signal {A15}
+  ! 31 !ADC ROC#3 Sl#3 Ch#31 signal {A16}
+!
+!........................................................
+! SAER took out from SOS detector hut (Hamlet, 21 Dec'02)
+!
+!    detector= 16 !SAER
+!
+!  32 !ADC ROC#3 Sl#3 Ch#32 DEAD!!!!
+!  33 !ADC ROC#3 Sl#3 Ch#33 unused spare
+! 34, 1, 1, 0 !ADC ROC#3 Sl#3 Ch#34 signal pos 1
+! 35, 1, 2, 0 !ADC ROC#3 Sl#3 Ch#35 signal pos 2
+! 36, 1, 3, 0 !ADC ROC#3 Sl#3 Ch#36 signal pos 3
+! 37, 1, 4, 0 !ADC ROC#3 Sl#3 Ch#37 signal pos 4
+! 38, 1, 5, 0 !ADC ROC#3 Sl#3 Ch#38 signal pos 5
+! 39, 1, 6, 0 !ADC ROC#3 Sl#3 Ch#39 signal pos 6
+! 40, 1, 7, 0 !ADC ROC#3 Sl#3 Ch#40 signal pos 7
+! 41, 1, 1, 1 !ADC ROC#3 Sl#3 Ch#41 signal neg 1
+! 42, 1, 2, 1 !ADC ROC#3 Sl#3 Ch#42 signal neg 2
+! 43, 1, 3, 1 !ADC ROC#3 Sl#3 Ch#43 signal neg 3
+! 44, 1, 4, 1 !ADC ROC#3 Sl#3 Ch#44 signal neg 4
+! 45, 1, 5, 1 !ADC ROC#3 Sl#3 Ch#45 signal neg 5
+! 46, 1, 6, 1 !ADC ROC#3 Sl#3 Ch#46 signal neg 6
+! 47, 1, 7, 1 !ADC ROC#3 Sl#3 Ch#47 signal neg 7 
+! 48, 1, 8, 0 !ADC ROC#3 Sl#3 Ch#48 amplified signal pos 1
+! 49, 1, 9, 0 !ADC ROC#3 Sl#3 Ch#49 amplified signal pos 2
+! 50, 1, 10, 0 !ADC ROC#3 Sl#3 Ch#50 amplified signal pos 3
+! 51, 1, 11, 0 !ADC ROC#3 Sl#3 Ch#51 amplified signal pos 4
+! 52, 1, 12, 0 !ADC ROC#3 Sl#3 Ch#52 amplified signal pos 5
+! 53, 1, 13, 0 !ADC ROC#3 Sl#3 Ch#53 amplified signal pos 6
+! 54, 1, 14, 0 !ADC ROC#3 Sl#3 Ch#54 amplified signal pos 7
+! 55, 1, 15, 0 !ADC ROC#3 Sl#3 Ch#62 amplified signal sum 1-7
+! 56, 1, 8, 1 !ADC ROC#3 Sl#3 Ch#55 amplified signal neg 1
+! 57, 1, 9, 1 !ADC ROC#3 Sl#3 Ch#56 amplified signal neg 2
+! 58, 1, 10, 1 !ADC ROC#3 Sl#3 Ch#57 amplified signal neg 3
+! 59, 1, 11, 1 !ADC ROC#3 Sl#3 Ch#58 amplified signal neg 4
+! 60, 1, 12, 1 !ADC ROC#3 Sl#3 Ch#59 amplified signal neg 5
+! 61, 1, 13, 1 !ADC ROC#3 Sl#3 Ch#60 amplified signal neg 6
+! 62, 1, 14, 1 !ADC ROC#3 Sl#3 Ch#61 amplified signal neg 7
+! 63, 1, 15, 1 !ADC ROC#3 Sl#3 Ch#63 amplified signal sum 8-14
+!
+
+
+
+
+
+
+
+
diff --git a/examples/MAPS/raster_july04.map b/examples/MAPS/raster_july04.map
new file mode 100644
index 0000000000000000000000000000000000000000..4109dd4af8029b2944015d1d6edb598fe433d660
--- /dev/null
+++ b/examples/MAPS/raster_july04.map
@@ -0,0 +1,3261 @@
+! Updated to reflect new TDC for HMS aerogel and proper mapping of misc
+! trigger signals in SOS.  Dave G (5/5/2003)
+!
+!
+       help       !lists available keywords
+       NOecho     !copies input lines to tty output
+       NOdebug    !turn on input debugging
+       override   !skip over errors
+!
+! hall C encode/decode configuration file
+! giving the FASTBUS geographical to standard
+! hall C COMMONs location as described by
+! "gen_data_structures.cmn"      K.B.Beard 13jun94
+!      10/19/94 (jra) Change ch1 roc to 8 (from 1), hms roc to 7 (from 2).
+!
+!       6/24/94 (SAW) Turn on lines for miscleaneous TDC's
+!                     Change ch1 roc to 1 (from 0), hms roc to 2 (from 1).
+!		      Disable last 16 channels of miscleaneous TDC
+!    
+!       1/23/2014 (buddhini) Added a new IDs for raster and BPMs.
+!		  	     Added the detector ID = 18 before raster channel information.
+!			     Changed the raster plane, counter and signal columns to enable hit readout via the C++ anakysis
+!			     hit handling method. Under this, the raster has plane NO 1, counter numbers 13 to 15 and signals
+!			     1 - X sync, 2- X-sig, 3- Y-sync, 4-Y-sig
+!
+! standard id numbers
+!                       signals
+!HMS:
+! HDC_ID= 1               TDC
+! HSCIN_ID= 2             ADC+,ADC-,TDC+,TDC-
+! HCER_ID= 3              ADC
+! HCAL_ID= 4              ADC
+! HMISC_ID= 5             TDC,(ADC)
+!GEN:
+! GMISC_ID= 6             (TDC),ADC
+! HAERO_ID= 7             (TDC),ADC
+!SOS:
+! SDC_ID= 11              TDC
+! SSCIN_ID= 12            ADC+,ADC-,TDC+,TDC-
+! SCER_ID= 13             ADC
+! SCAL_ID= 14             ADC
+! SMISC_ID= 15            TDC,(ADC)
+! SAER_ID= 16             ADC
+! SLUC_ID=17		 ADC
+!BEAM:
+! RASTER_ID= 18          ADC
+! BPM_ID= 19             ADC
+! 
+!
+!   consider subadd equiv. to channel
+!
+!  specify: subadd, plane, element, signal
+!            a,      p,     e,       s
+!            0-      1-     1-       0-3
+![if there is only signal 0 (DC,CER,CAL) it may be ommitted]
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!     HMS upstairs and downstairs map    K.B.Beard 13-Jun-1994
+!         for Jun94 run
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!      HMS downstairs (HDC) map           K.B.Beard & S.Avery 13-Jun-1994
+!					  revised by A. Johnson 4-Feb-1999	
+!   								
+! vvvvvvvvvvvvvvvvvvvvvv Wire chambers start here vvvvvvvvvvvvvvvvvvvvvvvvv
+  ROC= 2             !ReadOutController (crate) for HMS wire chambers
+!
+!
+!         TDC modules are Lecroy 1877
+    Nsubadd= 96               
+    MASK= FFFFx       !hex mask 
+    BSUB= 17           !start channel in bit#17
+!
+  detector= 1       !HDC
+!
+!                             1st HDC chamber - (2nd in position) - planes7-12  
+Slot= 2
+0, 8, 1	             !TDC ROC#2 Sl#2 Ch#0 HDC pl#8 [Y1] wire#1
+1, 8, 2              !TDC ROC#2 Sl#2 Ch#1 HDC pl#8 [Y1] wire#2
+2, 8, 3	             !TDC ROC#2 Sl#2 Ch#2 HDC pl#8 [Y1] wire#3
+3, 8, 4	             !TDC ROC#2 Sl#2 Ch#3 HDC pl#8 [Y1] wire#4
+4, 8, 5	             !TDC ROC#2 Sl#2 Ch#4 HDC pl#8 [Y1] wire#5
+5, 8, 6	             !TDC ROC#2 Sl#2 Ch#5 HDC pl#8 [Y1] wire#6
+6, 8, 7	             !TDC ROC#2 Sl#2 Ch#6 HDC pl#8 [Y1] wire#7
+7, 8, 8	             !TDC ROC#2 Sl#2 Ch#7 HDC pl#8 [Y1] wire#8
+8, 8, 9	             !TDC ROC#2 Sl#2 Ch#8 HDC pl#8 [Y1] wire#9
+9, 8, 10             !TDC ROC#2 Sl#2 Ch#9 HDC pl#8 [Y1] wire#10
+10, 8, 11            !TDC ROC#2 Sl#2 Ch#10 HDC pl#8 [Y1] wire#11
+11, 8, 12            !TDC ROC#2 Sl#2 Ch#11 HDC pl#8 [Y1] wire#12
+12, 8, 13            !TDC ROC#2 Sl#2 Ch#12 HDC pl#8 [Y1] wire#13
+!13 !TDC ROC#2 Sl#2 Ch#13 unused
+!14 !TDC ROC#2 Sl#2 Ch#14 unused
+!15 !TDC ROC#2 Sl#2 Ch#15 unused
+16, 11, 40           !TDC ROC#2 Sl#2 Ch#16 HDC pl#11 [Y2] wire#40
+17, 11, 41           !TDC ROC#2 Sl#2 Ch#17 HDC pl#11 [Y2] wire#41
+18, 11, 42           !TDC ROC#2 Sl#2 Ch#18 HDC pl#11 [Y2] wire#42
+19, 11, 43           !TDC ROC#2 Sl#2 Ch#19 HDC pl#11 [Y2] wire#43
+20, 11, 44           !TDC ROC#2 Sl#2 Ch#20 HDC pl#11 [Y2] wire#44
+21, 11, 45           !TDC ROC#2 Sl#2 Ch#21 HDC pl#11 [Y2] wire#45
+22, 11, 46           !TDC ROC#2 Sl#2 Ch#22 HDC pl#11 [Y2] wire#46
+23, 11, 47           !TDC ROC#2 Sl#2 Ch#23 HDC pl#11 [Y2] wire#47
+24, 11, 48           !TDC ROC#2 Sl#2 Ch#24 HDC pl#11 [Y2] wire#48
+25, 11, 49           !TDC ROC#2 Sl#2 Ch#25 HDC pl#11 [Y2] wire#49
+26, 11, 50           !TDC ROC#2 Sl#2 Ch#26 HDC pl#11 [Y2] wire#50
+27, 11, 51           !TDC ROC#2 Sl#2 Ch#27 HDC pl#11 [Y2] wire#51
+28, 11, 52           !TDC ROC#2 Sl#2 Ch#28 HDC pl#11 [Y2] wire#52
+!29 !TDC ROC#2 Sl#2 Ch#29 unused
+!30 !TDC ROC#2 Sl#2 Ch#30 unused
+!31 !TDC ROC#2 Sl#2 Ch#31 unused
+32, 8, 14            !TDC ROC#2 Sl#2 Ch#32 HDC pl#8 [Y1] wire#14
+33, 8, 15            !TDC ROC#2 Sl#2 Ch#33 HDC pl#8 [Y1] wire#15
+34, 8, 16            !TDC ROC#2 Sl#2 Ch#34 HDC pl#8 [Y1] wire#16
+35, 8, 17            !TDC ROC#2 Sl#2 Ch#35 HDC pl#8 [Y1] wire#17
+36, 8, 18            !TDC ROC#2 Sl#2 Ch#36 HDC pl#8 [Y1] wire#18
+37, 8, 19            !TDC ROC#2 Sl#2 Ch#37 HDC pl#8 [Y1] wire#19
+38, 8, 20            !TDC ROC#2 Sl#2 Ch#38 HDC pl#8 [Y1] wire#20
+39, 8, 21            !TDC ROC#2 Sl#2 Ch#39 HDC pl#8 [Y1] wire#21
+40, 8, 22            !TDC ROC#2 Sl#2 Ch#40 HDC pl#8 [Y1] wire#22
+41, 8, 23            !TDC ROC#2 Sl#2 Ch#41 HDC pl#8 [Y1] wire#23
+42, 8, 24            !TDC ROC#2 Sl#2 Ch#42 HDC pl#8 [Y1] wire#24
+43, 8, 25            !TDC ROC#2 Sl#2 Ch#43 HDC pl#8 [Y1] wire#25
+44, 8, 26            !TDC ROC#2 Sl#2 Ch#44 HDC pl#8 [Y1] wire#26
+!45 !TDC ROC#2 Sl#2 Ch#45 unused
+!46 !TDC ROC#2 Sl#2 Ch#46 unused
+!47 !TDC ROC#2 Sl#2 Ch#47 unused
+48, 11, 27           !TDC ROC#2 Sl#2 Ch#48 HDC pl#11 [Y2] wire#27
+49, 11, 28           !TDC ROC#2 Sl#2 Ch#49 HDC pl#11 [Y2] wire#28
+50, 11, 29           !TDC ROC#2 Sl#2 Ch#50 HDC pl#11 [Y2] wire#29
+51, 11, 30           !TDC ROC#2 Sl#2 Ch#51 HDC pl#11 [Y2] wire#30
+52, 11, 31           !TDC ROC#2 Sl#2 Ch#52 HDC pl#11 [Y2] wire#31
+53, 11, 32           !TDC ROC#2 Sl#2 Ch#53 HDC pl#11 [Y2] wire#32
+54, 11, 33           !TDC ROC#2 Sl#2 Ch#54 HDC pl#11 [Y2] wire#33
+55, 11, 34           !TDC ROC#2 Sl#2 Ch#55 HDC pl#11 [Y2] wire#34
+56, 11, 35           !TDC ROC#2 Sl#2 Ch#56 HDC pl#11 [Y2] wire#35
+57, 11, 36           !TDC ROC#2 Sl#2 Ch#57 HDC pl#11 [Y2] wire#36
+58, 11, 37           !TDC ROC#2 Sl#2 Ch#58 HDC pl#11 [Y2] wire#37
+59, 11, 38           !TDC ROC#2 Sl#2 Ch#59 HDC pl#11 [Y2] wire#38
+60, 11, 39           !TDC ROC#2 Sl#2 Ch#60 HDC pl#11 [Y2] wire#39
+!61 !TDC ROC#2 Sl#2 Ch#61 unused
+!62 !TDC ROC#2 Sl#2 Ch#62 unused
+!63 !TDC ROC#2 Sl#2 Ch#63 unused
+64, 8, 27            !TDC ROC#2 Sl#2 Ch#64 HDC pl#8 [Y1] wire#27
+65, 8, 28            !TDC ROC#2 Sl#2 Ch#65 HDC pl#8 [Y1] wire#28
+66, 8, 29            !TDC ROC#2 Sl#2 Ch#66 HDC pl#8 [Y1] wire#29
+67, 8, 30            !TDC ROC#2 Sl#2 Ch#67 HDC pl#8 [Y1] wire#30
+68, 8, 31            !TDC ROC#2 Sl#2 Ch#68 HDC pl#8 [Y1] wire#31
+69, 8, 32            !TDC ROC#2 Sl#2 Ch#69 HDC pl#8 [Y1] wire#32
+70, 8, 33            !TDC ROC#2 Sl#2 Ch#70 HDC pl#8 [Y1] wire#33
+71, 8, 34            !TDC ROC#2 Sl#2 Ch#71 HDC pl#8 [Y1] wire#34
+72, 8, 35            !TDC ROC#2 Sl#2 Ch#72 HDC pl#8 [Y1] wire#35
+73, 8, 36            !TDC ROC#2 Sl#2 Ch#73 HDC pl#8 [Y1] wire#36
+74, 8, 37            !TDC ROC#2 Sl#2 Ch#74 HDC pl#8 [Y1] wire#37
+75, 8, 38            !TDC ROC#2 Sl#2 Ch#75 HDC pl#8 [Y1] wire#38
+76, 8, 39            !TDC ROC#2 Sl#2 Ch#76 HDC pl#8 [Y1] wire#39
+!77 !TDC ROC#2 Sl#2 Ch#77 unused
+!78 !TDC ROC#2 Sl#2 Ch#78 unused
+!79 !TDC ROC#2 Sl#2 Ch#79 unused
+80, 11, 14           !TDC ROC#2 Sl#2 Ch#80 HDC pl#11 [Y2] wire#14
+81, 11, 15           !TDC ROC#2 Sl#2 Ch#81 HDC pl#11 [Y2] wire#15
+82, 11, 16           !TDC ROC#2 Sl#2 Ch#82 HDC pl#11 [Y2] wire#16
+83, 11, 17           !TDC ROC#2 Sl#2 Ch#83 HDC pl#11 [Y2] wire#17
+84, 11, 18           !TDC ROC#2 Sl#2 Ch#84 HDC pl#11 [Y2] wire#18
+85, 11, 19           !TDC ROC#2 Sl#2 Ch#85 HDC pl#11 [Y2] wire#19
+86, 11, 20           !TDC ROC#2 Sl#2 Ch#86 HDC pl#11 [Y2] wire#20
+87, 11, 21           !TDC ROC#2 Sl#2 Ch#87 HDC pl#11 [Y2] wire#21
+88, 11, 22           !TDC ROC#2 Sl#2 Ch#88 HDC pl#11 [Y2] wire#22
+89, 11, 23           !TDC ROC#2 Sl#2 Ch#89 HDC pl#11 [Y2] wire#23
+90, 11, 24           !TDC ROC#2 Sl#2 Ch#90 HDC pl#11 [Y2] wire#24
+91, 11, 25           !TDC ROC#2 Sl#2 Ch#91 HDC pl#11 [Y2] wire#25
+92, 11, 26           !TDC ROC#2 Sl#2 Ch#92 HDC pl#11 [Y2] wire#26
+!93 !TDC ROC#2 Sl#2 Ch#93 unused
+!94 !TDC ROC#2 Sl#2 Ch#94 unused
+!95 !TDC ROC#2 Sl#2 Ch#95 unused
+
+Slot= 3
+0, 8, 40             !TDC ROC#2 Sl#3 Ch#0 HDC pl#8 [Y1] wire#40
+1, 8, 41             !TDC ROC#2 Sl#3 Ch#1 HDC pl#8 [Y1] wire#41
+2, 8, 42             !TDC ROC#2 Sl#3 Ch#2 HDC pl#8 [Y1] wire#42
+3, 8, 43             !TDC ROC#2 Sl#3 Ch#3 HDC pl#8 [Y1] wire#43
+4, 8, 44             !TDC ROC#2 Sl#3 Ch#4 HDC pl#8 [Y1] wire#44
+5, 8, 45             !TDC ROC#2 Sl#3 Ch#5 HDC pl#8 [Y1] wire#45
+6, 8, 46             !TDC ROC#2 Sl#3 Ch#6 HDC pl#8 [Y1] wire#46
+7, 8, 47             !TDC ROC#2 Sl#3 Ch#7 HDC pl#8 [Y1] wire#47
+8, 8, 48             !TDC ROC#2 Sl#3 Ch#8 HDC pl#8 [Y1] wire#48
+9, 8, 49             !TDC ROC#2 Sl#3 Ch#9 HDC pl#8 [Y1] wire#49
+10, 8, 50            !TDC ROC#2 Sl#3 Ch#10 HDC pl#8 [Y1] wire#50
+11, 8, 51            !TDC ROC#2 Sl#3 Ch#11 HDC pl#8 [Y1] wire#51
+12, 8, 52            !TDC ROC#2 Sl#3 Ch#12 HDC pl#8 [Y1] wire#52
+!13 !TDC ROC#2 Sl#3 Ch#13 
+!14 !TDC ROC#2 Sl#3 Ch#14 
+!15 !TDC ROC#2 Sl#3 Ch#15 
+16, 11, 1            !TDC ROC#2 Sl#3 Ch#16 HDC pl#11 [Y2] wire#1
+17, 11, 2            !TDC ROC#2 Sl#3 Ch#17 HDC pl#11 [Y2] wire#2
+18, 11, 3            !TDC ROC#2 Sl#3 Ch#18 HDC pl#11 [Y2] wire#3
+19, 11, 4            !TDC ROC#2 Sl#3 Ch#19 HDC pl#11 [Y2] wire#4
+20, 11, 5            !TDC ROC#2 Sl#3 Ch#20 HDC pl#11 [Y2] wire#5
+21, 11, 6            !TDC ROC#2 Sl#3 Ch#21 HDC pl#11 [Y2] wire#6
+22, 11, 7            !TDC ROC#2 Sl#3 Ch#22 HDC pl#11 [Y2] wire#7
+23, 11, 8            !TDC ROC#2 Sl#3 Ch#23 HDC pl#11 [Y2] wire#8
+24, 11, 9            !TDC ROC#2 Sl#3 Ch#24 HDC pl#11 [Y2] wire#9
+25, 11, 10           !TDC ROC#2 Sl#3 Ch#25 HDC pl#11 [Y2] wire#10
+26, 11, 11           !TDC ROC#2 Sl#3 Ch#26 HDC pl#11 [Y2] wire#11
+27, 11, 12           !TDC ROC#2 Sl#3 Ch#27 HDC pl#11 [Y2] wire#12
+28, 11, 13           !TDC ROC#2 Sl#3 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#3 Ch#29 unused
+! 30 !TDC ROC#2 Sl#3 Ch#30 unused
+! 31 !TDC ROC#2 Sl#3 Ch#31 unused
+32, 10, 92           !TDC ROC#2 Sl#3 Ch#32 HDC pl#10 [V] wire#92
+33, 10, 93           !TDC ROC#2 Sl#3 Ch#33 HDC pl#10 [V] wire#93
+34, 10, 94           !TDC ROC#2 Sl#3 Ch#34 HDC pl#10 [V] wire#94
+35, 10, 95           !TDC ROC#2 Sl#3 Ch#35 HDC pl#10 [V] wire#95
+36, 10, 96           !TDC ROC#2 Sl#3 Ch#36 HDC pl#10 [V] wire#96
+37, 10, 97           !TDC ROC#2 Sl#3 Ch#37 HDC pl#10 [V] wire#97
+38, 10, 98           !TDC ROC#2 Sl#3 Ch#38 HDC pl#10 [V] wire#98
+39, 10, 99           !TDC ROC#2 Sl#3 Ch#39 HDC pl#10 [V] wire#99
+40, 10, 100          !TDC ROC#2 Sl#3 Ch#40 HDC pl#10 [V] wire#100
+41, 10, 101          !TDC ROC#2 Sl#3 Ch#41 HDC pl#10 [V] wire#101
+42, 10, 102          !TDC ROC#2 Sl#3 Ch#42 HDC pl#10 [V] wire#102
+43, 10, 103          !TDC ROC#2 Sl#3 Ch#43 HDC pl#10 [V] wire#103
+44, 10, 104          !TDC ROC#2 Sl#3 Ch#44 HDC pl#10 [V] wire#104
+45, 10, 105	     !TDC ROC#2 Sl#3 Ch#45 HDC pl#10 [V] wire#105
+46, 10, 106          !TDC ROC#2 Sl#3 Ch#46 HDC pl#10 [V] wire#106
+47, 10, 107	     !TDC ROC#2 Sl#3 Ch#47 HDC pl#10 [V] wire#107
+48, 7, 97            !TDC ROC#2 Sl#3 Ch#48 HDC pl#7 [X1] wire#97
+49, 7, 98            !TDC ROC#2 Sl#3 Ch#49 HDC pl#7 [X1] wire#98
+50, 7, 99            !TDC ROC#2 Sl#3 Ch#50 HDC pl#7 [X1] wire#99
+51, 7, 100           !TDC ROC#2 Sl#3 Ch#51 HDC pl#7 [X1] wire#100
+52, 7, 101           !TDC ROC#2 Sl#3 Ch#52 HDC pl#7 [X1] wire#101
+53, 7, 102           !TDC ROC#2 Sl#3 Ch#53 HDC pl#7 [X1] wire#102
+54, 7, 103           !TDC ROC#2 Sl#3 Ch#54 HDC pl#7 [X1] wire#103
+55, 7, 104           !TDC ROC#2 Sl#3 Ch#55 HDC pl#7 [X1] wire#104
+56, 7, 105           !TDC ROC#2 Sl#3 Ch#56 HDC pl#7 [X1] wire#105
+57, 7, 106           !TDC ROC#2 Sl#3 Ch#57 HDC pl#7 [X1] wire#106
+58, 7, 107           !TDC ROC#2 Sl#3 Ch#58 HDC pl#7 [X1] wire#107
+59, 7, 108           !TDC ROC#2 Sl#3 Ch#59 HDC pl#7 [X1] wire#108
+60, 7, 109           !TDC ROC#2 Sl#3 Ch#60 HDC pl#7 [X1] wire#109
+61, 7, 110           !TDC ROC#2 Sl#3 Ch#61 HDC pl#7 [X1] wire#110
+62, 7, 111           !TDC ROC#2 Sl#3 Ch#62 HDC pl#7 [X1] wire#111
+63, 7, 112           !TDC ROC#2 Sl#3 Ch#63 HDC pl#7 [X1] wire#112
+64, 12, 1            !TDC ROC#2 Sl#3 Ch#64 HDC pl#12 [X2] wire#1
+65, 12, 2            !TDC ROC#2 Sl#3 Ch#65 HDC pl#12 [X2] wire#2
+66, 12, 3            !TDC ROC#2 Sl#3 Ch#66 HDC pl#12 [X2] wire#3
+67, 12, 4            !TDC ROC#2 Sl#3 Ch#67 HDC pl#12 [X2] wire#4
+68, 12, 5            !TDC ROC#2 Sl#3 Ch#68 HDC pl#12 [X2] wire#5
+69, 12, 6            !TDC ROC#2 Sl#3 Ch#69 HDC pl#12 [X2] wire#6
+70, 12, 7            !TDC ROC#2 Sl#3 Ch#70 HDC pl#12 [X2] wire#7
+71, 12, 8            !TDC ROC#2 Sl#3 Ch#71 HDC pl#12 [X2] wire#8
+72, 12, 9            !TDC ROC#2 Sl#3 Ch#72 HDC pl#12 [X2] wire#9
+73, 12, 10           !TDC ROC#2 Sl#3 Ch#73 HDC pl#12 [X2] wire#10
+74, 12, 11           !TDC ROC#2 Sl#3 Ch#74 HDC pl#12 [X2] wire#11
+75, 12, 12           !TDC ROC#2 Sl#3 Ch#75 HDC pl#12 [X2] wire#12
+76, 12, 13           !TDC ROC#2 Sl#3 Ch#76 HDC pl#12 [X2] wire#13
+77, 12, 14           !TDC ROC#2 Sl#3 Ch#77 HDC pl#12 [X2] wire#14
+78, 12, 15           !TDC ROC#2 Sl#3 Ch#78 HDC pl#12 [X2] wire#15
+79, 12, 16           !TDC ROC#2 Sl#3 Ch#79 HDC pl#12 [X2] wire#16
+80, 7, 113           !TDC ROC#2 Sl#3 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#3 Ch#81 unused
+82, 9, 1             !TDC ROC#2 Sl#3 Ch#82 HDC pl#9 [U] wire#1
+83, 9, 2             !TDC ROC#2 Sl#3 Ch#83 HDC pl#9 [U] wire#2
+84, 9, 3             !TDC ROC#2 Sl#3 Ch#84 HDC pl#9 [U] wire#3
+85, 9, 4             !TDC ROC#2 Sl#3 Ch#85 HDC pl#9 [U] wire#4
+86, 9, 5             !TDC ROC#2 Sl#3 Ch#86 HDC pl#9 [U] wire#5
+87, 9, 6             !TDC ROC#2 Sl#3 Ch#87 HDC pl#9 [U] wire#6
+88, 9, 7             !TDC ROC#2 Sl#3 Ch#88 HDC pl#9 [U] wire#7
+89, 9, 8             !TDC ROC#2 Sl#3 Ch#89 HDC pl#9 [U] wire#8
+90, 9, 9             !TDC ROC#2 Sl#3 Ch#90 HDC pl#9 [U] wire#9
+91, 9, 10            !TDC ROC#2 Sl#3 Ch#91 HDC pl#9 [U] wire#10
+92, 9, 11            !TDC ROC#2 Sl#3 Ch#92 HDC pl#9 [U] wire#11
+93, 9, 12            !TDC ROC#2 Sl#3 Ch#93 HDC pl#9 [U] wire#12
+94, 9, 13            !TDC ROC#2 Sl#3 Ch#94 HDC pl#9 [U] wire#13
+95, 9, 14            !TDC ROC#2 Sl#3 Ch#95 HDC pl#9 [U] wire#14
+Slot= 5
+0, 10, 77            !TDC ROC#2 Sl#5 Ch#0 HDC pl#10 [V] wire#77
+1, 10, 78            !TDC ROC#2 Sl#5 Ch#1 HDC pl#10 [V] wire#78
+2, 10, 79            !TDC ROC#2 Sl#5 Ch#2 HDC pl#10 [V] wire#79
+3, 10, 80            !TDC ROC#2 Sl#5 Ch#3 HDC pl#10 [V] wire#80
+4, 10, 81            !TDC ROC#2 Sl#5 Ch#4 HDC pl#10 [V] wire#81
+5, 10, 82            !TDC ROC#2 Sl#5 Ch#5 HDC pl#10 [V] wire#82
+6, 10, 83            !TDC ROC#2 Sl#5 Ch#6 HDC pl#10 [V] wire#83
+7, 10, 84            !TDC ROC#2 Sl#5 Ch#7 HDC pl#10 [V] wire#84
+8, 10, 85            !TDC ROC#2 Sl#5 Ch#8 HDC pl#10 [V] wire#85
+9, 10, 86            !TDC ROC#2 Sl#5 Ch#9 HDC pl#10 [V] wire#86
+10, 10, 87           !TDC ROC#2 Sl#5 Ch#10 HDC pl#10 [V] wire#87
+11, 10, 88           !TDC ROC#2 Sl#5 Ch#11 HDC pl#10 [V] wire#88
+12, 10, 89           !TDC ROC#2 Sl#5 Ch#12 HDC pl#10 [V] wire#89
+13, 10, 90           !TDC ROC#2 Sl#5 Ch#13 HDC pl#10 [V] wire#90
+14, 10, 91           !TDC ROC#2 Sl#5 Ch#14 HDC pl#10 [V] wire#91
+! 15 !TDC ROC#2 Sl#5 Ch#15 unused
+16, 7, 81            !TDC ROC#2 Sl#5 Ch#16 HDC pl#7 [X1] wire#81
+17, 7, 82            !TDC ROC#2 Sl#5 Ch#17 HDC pl#7 [X1] wire#82
+18, 7, 83            !TDC ROC#2 Sl#5 Ch#18 HDC pl#7 [X1] wire#83
+19, 7, 84            !TDC ROC#2 Sl#5 Ch#19 HDC pl#7 [X1] wire#84
+20, 7, 85            !TDC ROC#2 Sl#5 Ch#20 HDC pl#7 [X1] wire#85
+21, 7, 86            !TDC ROC#2 Sl#5 Ch#21 HDC pl#7 [X1] wire#86
+22, 7, 87            !TDC ROC#2 Sl#5 Ch#22 HDC pl#7 [X1] wire#87
+23, 7, 88            !TDC ROC#2 Sl#5 Ch#23 HDC pl#7 [X1] wire#88
+24, 7, 89            !TDC ROC#2 Sl#5 Ch#24 HDC pl#7 [X1] wire#89
+25, 7, 90            !TDC ROC#2 Sl#5 Ch#25 HDC pl#7 [X1] wire#90
+26, 7, 91            !TDC ROC#2 Sl#5 Ch#26 HDC pl#7 [X1] wire#91
+27, 7, 92            !TDC ROC#2 Sl#5 Ch#27 HDC pl#7 [X1] wire#92
+28, 7, 93            !TDC ROC#2 Sl#5 Ch#28 HDC pl#7 [X1] wire#93
+29, 7, 94            !TDC ROC#2 Sl#5 Ch#29 HDC pl#7 [X1] wire#94
+30, 7, 95            !TDC ROC#2 Sl#5 Ch#30 HDC pl#7 [X1] wire#95
+31, 7, 96            !TDC ROC#2 Sl#5 Ch#31 HDC pl#7 [X1] wire#96
+32, 12, 17           !TDC ROC#2 Sl#5 Ch#32 HDC pl#12 [X2] wire#17
+33, 12, 18           !TDC ROC#2 Sl#5 Ch#33 HDC pl#12 [X2] wire#18
+34, 12, 19           !TDC ROC#2 Sl#5 Ch#34 HDC pl#12 [X2] wire#19
+35, 12, 20           !TDC ROC#2 Sl#5 Ch#35 HDC pl#12 [X2] wire#20
+36, 12, 21           !TDC ROC#2 Sl#5 Ch#36 HDC pl#12 [X2] wire#21
+37, 12, 22           !TDC ROC#2 Sl#5 Ch#37 HDC pl#12 [X2] wire#22
+38, 12, 23           !TDC ROC#2 Sl#5 Ch#38 HDC pl#12 [X2] wire#23
+39, 12, 24           !TDC ROC#2 Sl#5 Ch#39 HDC pl#12 [X2] wire#24
+40, 12, 25           !TDC ROC#2 Sl#5 Ch#40 HDC pl#12 [X2] wire#25
+41, 12, 26           !TDC ROC#2 Sl#5 Ch#41 HDC pl#12 [X2] wire#26
+42, 12, 27           !TDC ROC#2 Sl#5 Ch#42 HDC pl#12 [X2] wire#27
+43, 12, 28           !TDC ROC#2 Sl#5 Ch#43 HDC pl#12 [X2] wire#28
+44, 12, 29           !TDC ROC#2 Sl#5 Ch#44 HDC pl#12 [X2] wire#29
+45, 12, 30           !TDC ROC#2 Sl#5 Ch#45 HDC pl#12 [X2] wire#30
+46, 12, 31           !TDC ROC#2 Sl#5 Ch#46 HDC pl#12 [X2] wire#31
+47, 12, 32           !TDC ROC#2 Sl#5 Ch#47 HDC pl#12 [X2] wire#32
+48, 9, 15            !TDC ROC#2 Sl#5 Ch#48 HDC pl#9 [U] wire#15
+49, 9, 16            !TDC ROC#2 Sl#5 Ch#49 HDC pl#9 [U] wire#16
+50, 9, 17            !TDC ROC#2 Sl#5 Ch#50 HDC pl#9 [U] wire#17
+51, 9, 18            !TDC ROC#2 Sl#5 Ch#51 HDC pl#9 [U] wire#18
+52, 9, 19            !TDC ROC#2 Sl#5 Ch#52 HDC pl#9 [U] wire#19
+53, 9, 20            !TDC ROC#2 Sl#5 Ch#53 HDC pl#9 [U] wire#20
+54, 9, 21            !TDC ROC#2 Sl#5 Ch#54 HDC pl#9 [U] wire#21
+55, 9, 22            !TDC ROC#2 Sl#5 Ch#55 HDC pl#9 [U] wire#22
+56, 9, 23            !TDC ROC#2 Sl#5 Ch#56 HDC pl#9 [U] wire#23
+57, 9, 24            !TDC ROC#2 Sl#5 Ch#57 HDC pl#9 [U] wire#24
+58, 9, 25            !TDC ROC#2 Sl#5 Ch#58 HDC pl#9 [U] wire#25
+59, 9, 26            !TDC ROC#2 Sl#5 Ch#59 HDC pl#9 [U] wire#26
+60, 9, 27            !TDC ROC#2 Sl#5 Ch#60 HDC pl#9 [U] wire#27
+61, 9, 28            !TDC ROC#2 Sl#5 Ch#61 HDC pl#9 [U] wire#28
+62, 9, 29            !TDC ROC#2 Sl#5 Ch#62 HDC pl#9 [U] wire#29
+!63 !TDC ROC#2 Sl#5 Ch#63 unused
+64, 10, 61           !TDC ROC#2 Sl#5 Ch#64 HDC pl#10 [V] wire#61
+65, 10, 62           !TDC ROC#2 Sl#5 Ch#65 HDC pl#10 [V] wire#62
+66, 10, 63           !TDC ROC#2 Sl#5 Ch#66 HDC pl#10 [V] wire#63
+67, 10, 64           !TDC ROC#2 Sl#5 Ch#67 HDC pl#10 [V] wire#64
+68, 10, 65           !TDC ROC#2 Sl#5 Ch#68 HDC pl#10 [V] wire#65
+69, 10, 66           !TDC ROC#2 Sl#5 Ch#69 HDC pl#10 [V] wire#66
+70, 10, 67           !TDC ROC#2 Sl#5 Ch#70 HDC pl#10 [V] wire#67
+71, 10, 68           !TDC ROC#2 Sl#5 Ch#71 HDC pl#10 [V] wire#68
+72, 10, 69           !TDC ROC#2 Sl#5 Ch#72 HDC pl#10 [V] wire#69
+73, 10, 70           !TDC ROC#2 Sl#5 Ch#73 HDC pl#10 [V] wire#70
+74, 10, 71           !TDC ROC#2 Sl#5 Ch#74 HDC pl#10 [V] wire#71
+75, 10, 72           !TDC ROC#2 Sl#5 Ch#75 HDC pl#10 [V] wire#72
+76, 10, 73           !TDC ROC#2 Sl#5 Ch#76 HDC pl#10 [V] wire#73
+77, 10, 74           !TDC ROC#2 Sl#5 Ch#77 HDC pl#10 [V] wire#74
+78, 10, 75           !TDC ROC#2 Sl#5 Ch#78 HDC pl#10 [V] wire#75
+79, 10, 76           !TDC ROC#2 Sl#5 Ch#79 HDC pl#10 [V] wire#76
+80, 7, 65            !TDC ROC#2 Sl#5 Ch#80 HDC pl#7 [X1] wire#65
+81, 7, 66            !TDC ROC#2 Sl#5 Ch#81 HDC pl#7 [X1] wire#66
+82, 7, 67            !TDC ROC#2 Sl#5 Ch#82 HDC pl#7 [X1] wire#67
+83, 7, 68            !TDC ROC#2 Sl#5 Ch#83 HDC pl#7 [X1] wire#68
+84, 7, 69            !TDC ROC#2 Sl#5 Ch#84 HDC pl#7 [X1] wire#69
+85, 7, 70	     !TDC ROC#2 Sl#5 Ch#85 HDC pl#7 [X1] wire#70
+86, 7, 71            !TDC ROC#2 Sl#5 Ch#86 HDC pl#7 [X1] wire#71
+87, 7, 72            !TDC ROC#2 Sl#5 Ch#87 HDC pl#7 [X1] wire#72
+88, 7, 73            !TDC ROC#2 Sl#5 Ch#88 HDC pl#7 [X1] wire#73
+89, 7, 74            !TDC ROC#2 Sl#5 Ch#89 HDC pl#7 [X1] wire#74
+90, 7, 75            !TDC ROC#2 Sl#5 Ch#90 HDC pl#7 [X1] wire#75
+91, 7, 76	     !TDC ROC#2 Sl#5 Ch#91 HDC pl#7 [X1] wire#76
+92, 7, 77            !TDC ROC#2 Sl#5 Ch#92 HDC pl#7 [X1] wire#77
+93, 7, 78            !TDC ROC#2 Sl#5 Ch#93 HDC pl#7 [X1] wire#78
+94, 7, 79            !TDC ROC#2 Sl#5 Ch#94 HDC pl#7 [X1] wire#79
+95, 7, 80            !TDC ROC#2 Sl#5 Ch#95 HDC pl#7 [X1] wire#80
+Slot= 6
+0, 12, 33            !TDC ROC#2 Sl#6 Ch#0 HDC pl#12 [X2] wire#33
+1, 12, 34 	     !TDC ROC#2 Sl#6 Ch#1 HDC pl#12 [X2] wire#34
+2, 12, 35            !TDC ROC#2 Sl#6 Ch#2 HDC pl#12 [X2] wire#35
+3, 12, 36            !TDC ROC#2 Sl#6 Ch#3 HDC pl#12 [X2] wire#36
+4, 12, 37            !TDC ROC#2 Sl#6 Ch#4 HDC pl#12 [X2] wire#37
+5, 12, 38            !TDC ROC#2 Sl#6 Ch#5 HDC pl#12 [X2] wire#38
+6, 12, 39            !TDC ROC#2 Sl#6 Ch#6 HDC pl#12 [X2] wire#39
+7, 12, 40            !TDC ROC#2 Sl#6 Ch#7 HDC pl#12 [X2] wire#40
+8, 12, 41            !TDC ROC#2 Sl#6 Ch#8 HDC pl#12 [X2] wire#41
+9, 12, 42            !TDC ROC#2 Sl#6 Ch#9 HDC pl#12 [X2] wire#42
+10, 12, 43           !TDC ROC#2 Sl#6 Ch#10 HDC pl#12 [X2] wire#43
+11, 12, 44           !TDC ROC#2 Sl#6 Ch#11 HDC pl#12 [X2] wire#44
+12, 12, 45           !TDC ROC#2 Sl#6 Ch#12 HDC pl#12 [X2] wire#45
+13, 12, 46           !TDC ROC#2 Sl#6 Ch#13 HDC pl#12 [X2] wire#46
+14, 12, 47           !TDC ROC#2 Sl#6 Ch#14 HDC pl#12 [X2] wire#47
+15, 12, 48           !TDC ROC#2 Sl#6 Ch#15 HDC pl#12 [X2] wire#48
+16, 9, 30            !TDC ROC#2 Sl#6 Ch#16 HDC pl#9 [U] wire#30
+17, 9, 31            !TDC ROC#2 Sl#6 Ch#17 HDC pl#9 [U] wire#31
+18, 9, 32            !TDC ROC#2 Sl#6 Ch#18 HDC pl#9 [U] wire#32
+19, 9, 33            !TDC ROC#2 Sl#6 Ch#19 HDC pl#9 [U] wire#33
+20, 9, 34            !TDC ROC#2 Sl#6 Ch#20 HDC pl#9 [U] wire#34
+21, 9, 35            !TDC ROC#2 Sl#6 Ch#21 HDC pl#9 [U] wire#35
+22, 9, 36            !TDC ROC#2 Sl#6 Ch#22 HDC pl#9 [U] wire#36
+23, 9, 37            !TDC ROC#2 Sl#6 Ch#23 HDC pl#9 [U] wire#37
+24, 9, 38            !TDC ROC#2 Sl#6 Ch#24 HDC pl#9 [U] wire#38
+25, 9, 39            !TDC ROC#2 Sl#6 Ch#25 HDC pl#9 [U] wire#39
+26, 9, 40            !TDC ROC#2 Sl#6 Ch#26 HDC pl#9 [U] wire#40
+27, 9, 41            !TDC ROC#2 Sl#6 Ch#27 HDC pl#9 [U] wire#41
+28, 9, 42            !TDC ROC#2 Sl#6 Ch#28 HDC pl#9 [U] wire#42
+29, 9, 43            !TDC ROC#2 Sl#6 Ch#29 HDC pl#9 [U] wire#43
+30, 9, 44            !TDC ROC#2 Sl#6 Ch#30 HDC pl#9 [U] wire#44
+31, 9, 45            !TDC ROC#2 Sl#6 Ch#31 HDC pl#9 [U] wire#45
+32, 10, 46           !TDC ROC#2 Sl#6 Ch#32 HDC pl#10 [V] wire#46
+33, 10, 47           !TDC ROC#2 Sl#6 Ch#33 HDC pl#10 [V] wire#47
+34, 10, 48           !TDC ROC#2 Sl#6 Ch#34 HDC pl#10 [V] wire#48
+35, 10, 49           !TDC ROC#2 Sl#6 Ch#35 HDC pl#10 [V] wire#49
+36, 10, 50           !TDC ROC#2 Sl#6 Ch#36 HDC pl#10 [V] wire#50
+37, 10, 51           !TDC ROC#2 Sl#6 Ch#37 HDC pl#10 [V] wire#51
+38, 10, 52           !TDC ROC#2 Sl#6 Ch#38 HDC pl#10 [V] wire#52
+39, 10, 53           !TDC ROC#2 Sl#6 Ch#39 HDC pl#10 [V] wire#53
+40, 10, 54           !TDC ROC#2 Sl#6 Ch#40 HDC pl#10 [V] wire#54
+41, 10, 55           !TDC ROC#2 Sl#6 Ch#41 HDC pl#10 [V] wire#55
+42, 10, 56           !TDC ROC#2 Sl#6 Ch#42 HDC pl#10 [V] wire#56
+43, 10, 57           !TDC ROC#2 Sl#6 Ch#43 HDC pl#10 [V] wire#57
+44, 10, 58           !TDC ROC#2 Sl#6 Ch#44 HDC pl#10 [V] wire#58
+45, 10, 59           !TDC ROC#2 Sl#6 Ch#45 HDC pl#10 [V] wire#59
+46, 10, 60           !TDC ROC#2 Sl#6 Ch#46 HDC pl#10 [V] wire#60
+!47 !TDC ROC#2 Sl#6 Ch#47 HDC unused
+48, 7, 49           !TDC ROC#2 Sl#6 Ch#48 HDC pl#7 [X1] wire#49
+49, 7, 50           !TDC ROC#2 Sl#6 Ch#49 HDC pl#7 [X1] wire#50
+50, 7, 51           !TDC ROC#2 Sl#6 Ch#50 HDC pl#7 [X1] wire#51
+51, 7, 52           !TDC ROC#2 Sl#6 Ch#51 HDC pl#7 [X1] wire#52
+52, 7, 53           !TDC ROC#2 Sl#6 Ch#52 HDC pl#7 [X1] wire#53
+53, 7, 54           !TDC ROC#2 Sl#6 Ch#53 HDC pl#7 [X1] wire#54
+54, 7, 55           !TDC ROC#2 Sl#6 Ch#54 HDC pl#7 [X1] wire#55
+55, 7, 56           !TDC ROC#2 Sl#6 Ch#55 HDC pl#7 [X1] wire#56
+56, 7, 57           !TDC ROC#2 Sl#6 Ch#56 HDC pl#7 [X1] wire#57
+57, 7, 58           !TDC ROC#2 Sl#6 Ch#57 HDC pl#7 [X1] wire#58
+58, 7, 59           !TDC ROC#2 Sl#6 Ch#58 HDC pl#7 [X1] wire#59
+59, 7, 60           !TDC ROC#2 Sl#6 Ch#59 HDC pl#7 [X1] wire#60
+60, 7, 61           !TDC ROC#2 Sl#6 Ch#60 HDC pl#7 [X1] wire#61
+61, 7, 62           !TDC ROC#2 Sl#6 Ch#61 HDC pl#7 [X1] wire#62
+62, 7, 63           !TDC ROC#2 Sl#6 Ch#62 HDC pl#7 [X1] wire#63
+63, 7, 64           !TDC ROC#2 Sl#6 Ch#63 HDC pl#7 [X1] wire#64
+64, 12, 49          !TDC ROC#2 Sl#6 Ch#64 HDC pl#12 [X2] wire#49
+65, 12, 50          !TDC ROC#2 Sl#6 Ch#65 HDC pl#12 [X2] wire#50
+66, 12, 51          !TDC ROC#2 Sl#6 Ch#66 HDC pl#12 [X2] wire#51
+67, 12, 52          !TDC ROC#2 Sl#6 Ch#67 HDC pl#12 [X2] wire#52
+68, 12, 53          !TDC ROC#2 Sl#6 Ch#68 HDC pl#12 [X2] wire#53
+69, 12, 54          !TDC ROC#2 Sl#6 Ch#69 HDC pl#12 [X2] wire#54
+70, 12, 55          !TDC ROC#2 Sl#6 Ch#70 HDC pl#12 [X2] wire#55
+71, 12, 56          !TDC ROC#2 Sl#6 Ch#71 HDC pl#12 [X2] wire#56
+72, 12, 57          !TDC ROC#2 Sl#6 Ch#72 HDC pl#12 [X2] wire#57
+73, 12, 58          !TDC ROC#2 Sl#6 Ch#73 HDC pl#12 [X2] wire#58
+74, 12, 59          !TDC ROC#2 Sl#6 Ch#74 HDC pl#12 [X2] wire#59
+75, 12, 60          !TDC ROC#2 Sl#6 Ch#75 HDC pl#12 [X2] wire#60
+76, 12, 61          !TDC ROC#2 Sl#6 Ch#76 HDC pl#12 [X2] wire#61
+77, 12, 62          !TDC ROC#2 Sl#6 Ch#77 HDC pl#12 [X2] wire#62
+78, 12, 63          !TDC ROC#2 Sl#6 Ch#78 HDC pl#12 [X2] wire#63
+79, 12, 64          !TDC ROC#2 Sl#6 Ch#79 HDC pl#12 [X2] wire#64
+80, 10, 30          !TDC ROC#2 Sl#6 Ch#80 HDC pl#10 [V] wire#30
+81, 10, 31          !TDC ROC#2 Sl#6 Ch#81 HDC pl#10 [V] wire#31
+82, 10, 32          !TDC ROC#2 Sl#6 Ch#82 HDC pl#10 [V] wire#32
+83, 10, 33          !TDC ROC#2 Sl#6 Ch#83 HDC pl#10 [V] wire#33
+84, 10, 34          !TDC ROC#2 Sl#6 Ch#84 HDC pl#10 [V] wire#34
+85, 10, 35          !TDC ROC#2 Sl#6 Ch#85 HDC pl#10 [V] wire#35
+86, 10, 36          !TDC ROC#2 Sl#6 Ch#86 HDC pl#10 [V] wire#36
+87, 10, 37          !TDC ROC#2 Sl#6 Ch#87 HDC pl#10 [V] wire#37
+88, 10, 38          !TDC ROC#2 Sl#6 Ch#88 HDC pl#10 [V] wire#38
+89, 10, 39          !TDC ROC#2 Sl#6 Ch#89 HDC pl#10 [V] wire#39
+90, 10, 40          !TDC ROC#2 Sl#6 Ch#90 HDC pl#10 [V] wire#40
+91, 10, 41          !TDC ROC#2 Sl#6 Ch#91 HDC pl#10 [V] wire#41
+92, 10, 42          !TDC ROC#2 Sl#6 Ch#92 HDC pl#10 [V] wire#42
+93, 10, 43          !TDC ROC#2 Sl#6 Ch#93 HDC pl#10 [V] wire#43
+94, 10, 44          !TDC ROC#2 Sl#6 Ch#94 HDC pl#10 [V] wire#44
+95, 10, 45          !TDC ROC#2 Sl#6 Ch#95 HDC pl#10 [V] wire#45
+Slot= 8
+0, 9, 46            !TDC ROC#2 Sl#8 Ch#0 HDC pl#9 [U] wire#46
+1, 9, 47            !TDC ROC#2 Sl#8 Ch#1 HDC pl#9 [U] wire#47
+2, 9, 48            !TDC ROC#2 Sl#8 Ch#2 HDC pl#9 [U] wire#48
+3, 9, 49            !TDC ROC#2 Sl#8 Ch#3 HDC pl#9 [U] wire#49
+4, 9, 50            !TDC ROC#2 Sl#8 Ch#4 HDC pl#9 [U] wire#50
+5, 9, 51            !TDC ROC#2 Sl#8 Ch#5 HDC pl#9 [U] wire#51
+6, 9, 52            !TDC ROC#2 Sl#8 Ch#6 HDC pl#9 [U] wire#52
+7, 9, 53            !TDC ROC#2 Sl#8 Ch#7 HDC pl#9 [U] wire#53
+8, 9, 54            !TDC ROC#2 Sl#8 Ch#8 HDC pl#9 [U] wire#54
+9, 9, 55            !TDC ROC#2 Sl#8 Ch#9 HDC pl#9 [U] wire#55
+10, 9, 56           !TDC ROC#2 Sl#8 Ch#10 HDC pl#9 [U] wire#56
+11, 9, 57           !TDC ROC#2 Sl#8 Ch#11 HDC pl#9 [U] wire#57
+12, 9, 58           !TDC ROC#2 Sl#8 Ch#12 HDC pl#9 [U] wire#58
+13, 9, 59           !TDC ROC#2 Sl#8 Ch#13 HDC pl#9 [U] wire#59
+14, 9, 60           !TDC ROC#2 Sl#8 Ch#14 HDC pl#9 [U] wire#60
+!15 !TDC ROC#2 Sl#8 Ch#15 unused
+16, 7, 33           !TDC ROC#2 Sl#8 Ch#16 HDC pl#7 [X1] wire#33
+17, 7, 34           !TDC ROC#2 Sl#8 Ch#17 HDC pl#7 [X1] wire#34
+18, 7, 35           !TDC ROC#2 Sl#8 Ch#18 HDC pl#7 [X1] wire#35
+19, 7, 36           !TDC ROC#2 Sl#8 Ch#19 HDC pl#7 [X1] wire#36
+20, 7, 37           !TDC ROC#2 Sl#8 Ch#20 HDC pl#7 [X1] wire#37
+21, 7, 38           !TDC ROC#2 Sl#8 Ch#21 HDC pl#7 [X1] wire#38
+22, 7, 39           !TDC ROC#2 Sl#8 Ch#22 HDC pl#7 [X1] wire#39
+23, 7, 40           !TDC ROC#2 Sl#8 Ch#23 HDC pl#7 [X1] wire#40
+24, 7, 41           !TDC ROC#2 Sl#8 Ch#24 HDC pl#7 [X1] wire#41
+25, 7, 42           !TDC ROC#2 Sl#8 Ch#25 HDC pl#7 [X1] wire#42
+26, 7, 43           !TDC ROC#2 Sl#8 Ch#26 HDC pl#7 [X1] wire#43
+27, 7, 44           !TDC ROC#2 Sl#8 Ch#27 HDC pl#7 [X1] wire#44
+28, 7, 45           !TDC ROC#2 Sl#8 Ch#28 HDC pl#7 [X1] wire#45
+29, 7, 46           !TDC ROC#2 Sl#8 Ch#29 HDC pl#7 [X1] wire#46
+30, 7, 47           !TDC ROC#2 Sl#8 Ch#30 HDC pl#7 [X1] wire#47
+31, 7, 48           !TDC ROC#2 Sl#8 Ch#31 HDC pl#7 [X1] wire#48
+32, 12, 65          !TDC ROC#2 Sl#8 Ch#32 HDC pl#12 [X2] wire#65
+33, 12, 66          !TDC ROC#2 Sl#8 Ch#33 HDC pl#12 [X2] wire#66
+34, 12, 67          !TDC ROC#2 Sl#8 Ch#34 HDC pl#12 [X2] wire#67
+35, 12, 68          !TDC ROC#2 Sl#8 Ch#35 HDC pl#12 [X2] wire#68
+36, 12, 69          !TDC ROC#2 Sl#8 Ch#36 HDC pl#12 [X2] wire#69
+37, 12, 70          !TDC ROC#2 Sl#8 Ch#37 HDC pl#12 [X2] wire#70
+38, 12, 71          !TDC ROC#2 Sl#8 Ch#38 HDC pl#12 [X2] wire#71
+39, 12, 72          !TDC ROC#2 Sl#8 Ch#39 HDC pl#12 [X2] wire#72
+40, 12, 73          !TDC ROC#2 Sl#8 Ch#40 HDC pl#12 [X2] wire#73
+41, 12, 74          !TDC ROC#2 Sl#8 Ch#41 HDC pl#12 [X2] wire#74
+42, 12, 75          !TDC ROC#2 Sl#8 Ch#42 HDC pl#12 [X2] wire#75
+43, 12, 76          !TDC ROC#2 Sl#8 Ch#43 HDC pl#12 [X2] wire#76
+44, 12, 77          !TDC ROC#2 Sl#8 Ch#44 HDC pl#12 [X2] wire#77
+45, 12, 78          !TDC ROC#2 Sl#8 Ch#45 HDC pl#12 [X2] wire#78
+46, 12, 79          !TDC ROC#2 Sl#8 Ch#46 HDC pl#12 [X2] wire#79
+47, 12, 80	    !TDC ROC#2 Sl#8 Ch#47 HDC pl#12 [X2] wire#80
+48, 9, 61           !TDC ROC#2 Sl#8 Ch#48 HDC pl#9 [U] wire#61
+49, 9, 62           !TDC ROC#2 Sl#8 Ch#49 HDC pl#9 [U] wire#62
+50, 9, 63           !TDC ROC#2 Sl#8 Ch#50 HDC pl#9 [U] wire#63
+51, 9, 64           !TDC ROC#2 Sl#8 Ch#51 HDC pl#9 [U] wire#64
+52, 9, 65           !TDC ROC#2 Sl#8 Ch#52 HDC pl#9 [U] wire#65
+53, 9, 66           !TDC ROC#2 Sl#8 Ch#53 HDC pl#9 [U] wire#66
+54, 9, 67           !TDC ROC#2 Sl#8 Ch#54 HDC pl#9 [U] wire#67
+55, 9, 68           !TDC ROC#2 Sl#8 Ch#55 HDC pl#9 [U] wire#68
+56, 9, 69           !TDC ROC#2 Sl#8 Ch#56 HDC pl#9 [U] wire#69
+57, 9, 70           !TDC ROC#2 Sl#8 Ch#57 HDC pl#9 [U] wire#70
+58, 9, 71           !TDC ROC#2 Sl#8 Ch#58 HDC pl#9 [U] wire#71
+59, 9, 72           !TDC ROC#2 Sl#8 Ch#59 HDC pl#9 [U] wire#72
+60, 9, 73           !TDC ROC#2 Sl#8 Ch#60 HDC pl#9 [U] wire#73
+61, 9, 74           !TDC ROC#2 Sl#8 Ch#61 HDC pl#9 [U] wire#74
+62, 9, 75           !TDC ROC#2 Sl#8 Ch#62 HDC pl#9 [U] wire#75
+63, 9, 76           !TDC ROC#2 Sl#8 Ch#63 HDC pl#9 [U] wire#76
+64, 10, 15          !TDC ROC#2 Sl#8 Ch#64 HDC pl#10 [V] wire#15
+65, 10, 16          !TDC ROC#2 Sl#8 Ch#65 HDC pl#10 [V] wire#16
+66, 10, 17          !TDC ROC#2 Sl#8 Ch#66 HDC pl#10 [V] wire#17
+67, 10, 18          !TDC ROC#2 Sl#8 Ch#67 HDC pl#10 [V] wire#18
+68, 10, 19          !TDC ROC#2 Sl#8 Ch#68 HDC pl#10 [V] wire#19
+69, 10, 20          !TDC ROC#2 Sl#8 Ch#69 HDC pl#10 [V] wire#20
+70, 10, 21          !TDC ROC#2 Sl#8 Ch#70 HDC pl#10 [V] wire#21
+71, 10, 22          !TDC ROC#2 Sl#8 Ch#71 HDC pl#10 [V] wire#22
+72, 10, 23          !TDC ROC#2 Sl#8 Ch#72 HDC pl#10 [V] wire#23
+73, 10, 24          !TDC ROC#2 Sl#8 Ch#73 HDC pl#10 [V] wire#24
+74, 10, 25          !TDC ROC#2 Sl#8 Ch#74 HDC pl#10 [V] wire#25
+75, 10, 26          !TDC ROC#2 Sl#8 Ch#75 HDC pl#10 [V] wire#26
+76, 10, 27          !TDC ROC#2 Sl#8 Ch#76 HDC pl#10 [V] wire#27
+77, 10, 28          !TDC ROC#2 Sl#8 Ch#77 HDC pl#10 [V] wire#28
+78, 10, 29          !TDC ROC#2 Sl#8 Ch#78 HDC pl#10 [V] wire#29
+! 79 !TDC ROC#2 Sl#8 Ch#79 unused
+80, 7, 17           !TDC ROC#2 Sl#8 Ch#80 HDC pl#7 [X1] wire#17
+81, 7, 18           !TDC ROC#2 Sl#8 Ch#81 HDC pl#7 [X1] wire#18
+82, 7, 19           !TDC ROC#2 Sl#8 Ch#82 HDC pl#7 [X1] wire#19
+83, 7, 20           !TDC ROC#2 Sl#8 Ch#83 HDC pl#7 [X1] wire#20
+84, 7, 21           !TDC ROC#2 Sl#8 Ch#84 HDC pl#7 [X1] wire#21
+85, 7, 22           !TDC ROC#2 Sl#8 Ch#85 HDC pl#7 [X1] wire#22
+86, 7, 23           !TDC ROC#2 Sl#8 Ch#86 HDC pl#7 [X1] wire#23
+87, 7, 24           !TDC ROC#2 Sl#8 Ch#87 HDC pl#7 [X1] wire#24
+88, 7, 25           !TDC ROC#2 Sl#8 Ch#88 HDC pl#7 [X1] wire#25
+89, 7, 26           !TDC ROC#2 Sl#8 Ch#89 HDC pl#7 [X1] wire#26
+90, 7, 27           !TDC ROC#2 Sl#8 Ch#90 HDC pl#7 [X1] wire#27
+91, 7, 28           !TDC ROC#2 Sl#8 Ch#91 HDC pl#7 [X1] wire#28
+92, 7, 29           !TDC ROC#2 Sl#8 Ch#92 HDC pl#7 [X1] wire#29
+93, 7, 30           !TDC ROC#2 Sl#8 Ch#93 HDC pl#7 [X1] wire#30
+94, 7, 31           !TDC ROC#2 Sl#8 Ch#94 HDC pl#7 [X1] wire#31
+95, 7, 32           !TDC ROC#2 Sl#8 Ch#95 HDC pl#7 [X1] wire#32
+Slot= 9
+0, 12, 81           !TDC ROC#2 Sl#9 Ch#0 HDC pl#12 [X2] wire#81
+1, 12, 82           !TDC ROC#2 Sl#9 Ch#1 HDC pl#12 [X2] wire#82
+2, 12, 83           !TDC ROC#2 Sl#9 Ch#2 HDC pl#12 [X2] wire#83
+3, 12, 84           !TDC ROC#2 Sl#9 Ch#3 HDC pl#12 [X2] wire#84
+4, 12, 85           !TDC ROC#2 Sl#9 Ch#4 HDC pl#12 [X2] wire#85
+5, 12, 86           !TDC ROC#2 Sl#9 Ch#5 HDC pl#12 [X2] wire#86
+6, 12, 87           !TDC ROC#2 Sl#9 Ch#6 HDC pl#12 [X2] wire#87
+7, 12, 88           !TDC ROC#2 Sl#9 Ch#7 HDC pl#12 [X2] wire#88
+8, 12, 89           !TDC ROC#2 Sl#9 Ch#8 HDC pl#12 [X2] wire#89
+9, 12, 90           !TDC ROC#2 Sl#9 Ch#9 HDC pl#12 [X2] wire#90
+10, 12, 91          !TDC ROC#2 Sl#9 Ch#10 HDC pl#12 [X2] wire#91
+11, 12, 92          !TDC ROC#2 Sl#9 Ch#11 HDC pl#12 [X2] wire#92
+12, 12, 93          !TDC ROC#2 Sl#9 Ch#12 HDC pl#12 [X2] wire#93
+13, 12, 94          !TDC ROC#2 Sl#9 Ch#13 HDC pl#12 [X2] wire#94
+14, 12, 95          !TDC ROC#2 Sl#9 Ch#14 HDC pl#12 [X2] wire#95
+15, 12, 96          !TDC ROC#2 Sl#9 Ch#15 HDC pl#12 [X2] wire#96
+16, 9, 77           !TDC ROC#2 Sl#9 Ch#16 HDC pl#9 [U] wire#77
+17, 9, 78           !TDC ROC#2 Sl#9 Ch#17 HDC pl#9 [U] wire#78
+18, 9, 79           !TDC ROC#2 Sl#9 Ch#18 HDC pl#9 [U] wire#79
+19, 9, 80           !TDC ROC#2 Sl#9 Ch#19 HDC pl#9 [U] wire#80
+20, 9, 81           !TDC ROC#2 Sl#9 Ch#20 HDC pl#9 [U] wire#81
+21, 9, 82           !TDC ROC#2 Sl#9 Ch#21 HDC pl#9 [U] wire#82
+22, 9, 83           !TDC ROC#2 Sl#9 Ch#22 HDC pl#9 [U] wire#83
+23, 9, 84           !TDC ROC#2 Sl#9 Ch#23 HDC pl#9 [U] wire#84
+24, 9, 85           !TDC ROC#2 Sl#9 Ch#24 HDC pl#9 [U] wire#85
+25, 9, 86           !TDC ROC#2 Sl#9 Ch#25 HDC pl#9 [U] wire#86
+26, 9, 87           !TDC ROC#2 Sl#9 Ch#26 HDC pl#9 [U] wire#87
+27, 9, 88           !TDC ROC#2 Sl#9 Ch#27 HDC pl#9 [U] wire#88
+28, 9, 89           !TDC ROC#2 Sl#9 Ch#28 HDC pl#9 [U] wire#89
+29, 9, 90           !TDC ROC#2 Sl#9 Ch#29 HDC pl#9 [U] wire#90
+30, 9, 91           !TDC ROC#2 Sl#9 Ch#30 HDC pl#9 [U] wire#91
+!31 !TDC ROC#2 Sl#9 Ch#31 unused
+32, 12, 113         !TDC ROC#2 Sl#9 Ch#32 HDC pl#12 [X2] wire#113
+!33 !TDC ROC#2 Sl#9 Ch#33 unused
+34, 10, 1           !TDC ROC#2 Sl#9 Ch#34 HDC pl#10 [V] wire#1
+35, 10, 2           !TDC ROC#2 Sl#9 Ch#35 HDC pl#10 [V] wire#2
+36, 10, 3           !TDC ROC#2 Sl#9 Ch#36 HDC pl#10 [V] wire#3
+37, 10, 4           !TDC ROC#2 Sl#9 Ch#37 HDC pl#10 [V] wire#4
+38, 10, 5           !TDC ROC#2 Sl#9 Ch#38 HDC pl#10 [V] wire#5
+39, 10, 6           !TDC ROC#2 Sl#9 Ch#39 HDC pl#10 [V] wire#6
+40, 10, 7           !TDC ROC#2 Sl#9 Ch#40 HDC pl#10 [V] wire#7
+41, 10, 8           !TDC ROC#2 Sl#9 Ch#41 HDC pl#10 [V] wire#8
+42, 10, 9           !TDC ROC#2 Sl#9 Ch#42 HDC pl#10 [V] wire#9
+43, 10, 10          !TDC ROC#2 Sl#9 Ch#43 HDC pl#10 [V] wire#10
+44, 10, 11          !TDC ROC#2 Sl#9 Ch#44 HDC pl#10 [V] wire#11
+45, 10, 12          !TDC ROC#2 Sl#9 Ch#45 HDC pl#10 [V] wire#12
+46, 10, 13          !TDC ROC#2 Sl#9 Ch#46 HDC pl#10 [V] wire#13
+47, 10, 14          !TDC ROC#2 Sl#9 Ch#47 HDC pl#10 [V] wire#14
+48, 7, 1            !TDC ROC#2 Sl#9 Ch#48 HDC pl#7 [X1] wire#1
+49, 7, 2            !TDC ROC#2 Sl#9 Ch#49 HDC pl#7 [X1] wire#2
+50, 7, 3            !TDC ROC#2 Sl#9 Ch#50 HDC pl#7 [X1] wire#3
+51, 7, 4            !TDC ROC#2 Sl#9 Ch#51 HDC pl#7 [X1] wire#4
+52, 7, 5            !TDC ROC#2 Sl#9 Ch#52 HDC pl#7 [X1] wire#5
+53, 7, 6            !TDC ROC#2 Sl#9 Ch#53 HDC pl#7 [X1] wire#6
+54, 7, 7            !TDC ROC#2 Sl#9 Ch#54 HDC pl#7 [X1] wire#7
+55, 7, 8            !TDC ROC#2 Sl#9 Ch#55 HDC pl#7 [X1] wire#8
+56, 7, 9            !TDC ROC#2 Sl#9 Ch#56 HDC pl#7 [X1] wire#9
+57, 7, 10           !TDC ROC#2 Sl#9 Ch#57 HDC pl#7 [X1] wire#10
+58, 7, 11           !TDC ROC#2 Sl#9 Ch#58 HDC pl#7 [X1] wire#11
+59, 7, 12           !TDC ROC#2 Sl#9 Ch#59 HDC pl#7 [X1] wire#12
+60, 7, 13           !TDC ROC#2 Sl#9 Ch#60 HDC pl#7 [X1] wire#13
+61, 7, 14           !TDC ROC#2 Sl#9 Ch#61 HDC pl#7 [X1] wire#14
+62, 7, 15           !TDC ROC#2 Sl#9 Ch#62 HDC pl#7 [X1] wire#15
+63, 7, 16           !TDC ROC#2 Sl#9 Ch#63 HDC pl#7 [X1] wire#16
+64, 12, 97          !TDC ROC#2 Sl#9 Ch#64 HDC pl#12 [X2] wire#97
+65, 12, 98          !TDC ROC#2 Sl#9 Ch#65 HDC pl#12 [X2] wire#98
+66, 12, 99          !TDC ROC#2 Sl#9 Ch#66 HDC pl#12 [X2] wire#99
+67, 12, 100         !TDC ROC#2 Sl#9 Ch#67 HDC pl#12 [X2] wire#100
+68, 12, 101         !TDC ROC#2 Sl#9 Ch#68 HDC pl#12 [X2] wire#101
+69, 12, 102         !TDC ROC#2 Sl#9 Ch#69 HDC pl#12 [X2] wire#102
+70, 12, 103         !TDC ROC#2 Sl#9 Ch#70 HDC pl#12 [X2] wire#103
+71, 12, 104         !TDC ROC#2 Sl#9 Ch#71 HDC pl#12 [X2] wire#104
+72, 12, 105         !TDC ROC#2 Sl#9 Ch#72 HDC pl#12 [X2] wire#105
+73, 12, 106         !TDC ROC#2 Sl#9 Ch#73 HDC pl#12 [X2] wire#106
+74, 12, 107         !TDC ROC#2 Sl#9 Ch#74 HDC pl#12 [X2] wire#107
+75, 12, 108         !TDC ROC#2 Sl#9 Ch#75 HDC pl#12 [X2] wire#108
+76, 12, 109         !TDC ROC#2 Sl#9 Ch#76 HDC pl#12 [X2] wire#109
+77, 12, 110         !TDC ROC#2 Sl#9 Ch#77 HDC pl#12 [X2] wire#110
+78, 12, 111         !TDC ROC#2 Sl#9 Ch#78 HDC pl#12 [X2] wire#111
+79, 12, 112         !TDC ROC#2 Sl#9 Ch#79 HDC pl#12 [X2] wire#112
+80, 9, 92           !TDC ROC#2 Sl#9 Ch#80 HDC pl#9 [U] wire#92
+81, 9, 93           !TDC ROC#2 Sl#9 Ch#81 HDC pl#9 [U] wire#93
+82, 9, 94           !TDC ROC#2 Sl#9 Ch#82 HDC pl#9 [U] wire#94
+83, 9, 95           !TDC ROC#2 Sl#9 Ch#83 HDC pl#9 [U] wire#95
+84, 9, 96           !TDC ROC#2 Sl#9 Ch#84 HDC pl#9 [U] wire#96
+85, 9, 97           !TDC ROC#2 Sl#9 Ch#85 HDC pl#9 [U] wire#97
+86, 9, 98           !TDC ROC#2 Sl#9 Ch#86 HDC pl#9 [U] wire#98
+87, 9, 99           !TDC ROC#2 Sl#9 Ch#87 HDC pl#9 [U] wire#99
+88, 9, 100          !TDC ROC#2 Sl#9 Ch#88 HDC pl#9 [U] wire#100
+89, 9, 101          !TDC ROC#2 Sl#9 Ch#89 HDC pl#9 [U] wire#101
+90, 9, 102          !TDC ROC#2 Sl#9 Ch#90 HDC pl#9 [U] wire#102
+91, 9, 103          !TDC ROC#2 Sl#9 Ch#91 HDC pl#9 [U] wire#103
+92, 9, 104          !TDC ROC#2 Sl#9 Ch#92 HDC pl#9 [U] wire#104
+93, 9, 105          !TDC ROC#2 Sl#9 Ch#93 HDC pl#9 [U] wire#105
+94, 9, 106          !TDC ROC#2 Sl#9 Ch#94 HDC pl#9 [U] wire#106
+95, 9, 107          !TDC ROC#2 Sl#9 Ch#95 HDC pl#9 [U] wire#107
+!
+!
+!                               2nd HDC chamber  planes1-6     
+Slot= 15
+0, 1, 1            !TDC ROC#2 Sl#11 Ch#0 HDC pl#7 [X1] wire#1
+1, 1, 2            !TDC ROC#2 Sl#11 Ch#1 HDC pl#7 [X1] wire#2
+2, 1, 3            !TDC ROC#2 Sl#11 Ch#2 HDC pl#7 [X1] wire#3
+3, 1, 4            !TDC ROC#2 Sl#11 Ch#3 HDC pl#7 [X1] wire#4
+4, 1, 5            !TDC ROC#2 Sl#11 Ch#4 HDC pl#7 [X1] wire#5
+5, 1, 6            !TDC ROC#2 Sl#11 Ch#5 HDC pl#7 [X1] wire#6
+6, 1, 7            !TDC ROC#2 Sl#11 Ch#6 HDC pl#7 [X1] wire#7
+7, 1, 8            !TDC ROC#2 Sl#11 Ch#7 HDC pl#7 [X1] wire#8
+8, 1, 9            !TDC ROC#2 Sl#11 Ch#8 HDC pl#7 [X1] wire#9
+9, 1, 10           !TDC ROC#2 Sl#11 Ch#9 HDC pl#7 [X1] wire#10
+10, 1, 11          !TDC ROC#2 Sl#11 Ch#10 HDC pl#7 [X1] wire#11
+11, 1, 12          !TDC ROC#2 Sl#11 Ch#11 HDC pl#7 [X1] wire#12
+12, 1, 13          !TDC ROC#2 Sl#11 Ch#12 HDC pl#7 [X1] wire#13
+13, 1, 14          !TDC ROC#2 Sl#11 Ch#13 HDC pl#7 [X1] wire#14
+14, 1, 15          !TDC ROC#2 Sl#11 Ch#14 HDC pl#7 [X1] wire#15
+15, 1, 16          !TDC ROC#2 Sl#11 Ch#15 HDC pl#7 [X1] wire#16
+16, 1, 17          !TDC ROC#2 Sl#11 Ch#16 HDC pl#7 [X1] wire#17
+17, 1, 18          !TDC ROC#2 Sl#11 Ch#17 HDC pl#7 [X1] wire#18
+18, 1, 19          !TDC ROC#2 Sl#11 Ch#18 HDC pl#7 [X1] wire#19
+19, 1, 20          !TDC ROC#2 Sl#11 Ch#19 HDC pl#7 [X1] wire#20
+20, 1, 21          !TDC ROC#2 Sl#11 Ch#20 HDC pl#7 [X1] wire#21
+21, 1, 22          !TDC ROC#2 Sl#11 Ch#21 HDC pl#7 [X1] wire#22
+22, 1, 23          !TDC ROC#2 Sl#11 Ch#22 HDC pl#7 [X1] wire#23
+23, 1, 24          !TDC ROC#2 Sl#11 Ch#23 HDC pl#7 [X1] wire#24
+24, 1, 25          !TDC ROC#2 Sl#11 Ch#24 HDC pl#7 [X1] wire#25
+25, 1, 26          !TDC ROC#2 Sl#11 Ch#25 HDC pl#7 [X1] wire#26
+26, 1, 27          !TDC ROC#2 Sl#11 Ch#26 HDC pl#7 [X1] wire#27
+27, 1, 28          !TDC ROC#2 Sl#11 Ch#27 HDC pl#7 [X1] wire#28
+28, 1, 29          !TDC ROC#2 Sl#11 Ch#28 HDC pl#7 [X1] wire#29
+29, 1, 30          !TDC ROC#2 Sl#11 Ch#29 HDC pl#7 [X1] wire#30
+30, 1, 31          !TDC ROC#2 Sl#11 Ch#30 HDC pl#7 [X1] wire#31
+31, 1, 32          !TDC ROC#2 Sl#11 Ch#31 HDC pl#7 [X1] wire#32
+32, 1, 33          !TDC ROC#2 Sl#11 Ch#32 HDC pl#7 [X1] wire#33
+33, 1, 34          !TDC ROC#2 Sl#11 Ch#33 HDC pl#7 [X1] wire#34
+34, 1, 35          !TDC ROC#2 Sl#11 Ch#34 HDC pl#7 [X1] wire#35
+35, 1, 36          !TDC ROC#2 Sl#11 Ch#35 HDC pl#7 [X1] wire#36
+36, 1, 37          !TDC ROC#2 Sl#11 Ch#36 HDC pl#7 [X1] wire#37
+37, 1, 38          !TDC ROC#2 Sl#11 Ch#37 HDC pl#7 [X1] wire#38
+38, 1, 39          !TDC ROC#2 Sl#11 Ch#38 HDC pl#7 [X1] wire#39
+39, 1, 40          !TDC ROC#2 Sl#11 Ch#39 HDC pl#7 [X1] wire#40
+40, 1, 41          !TDC ROC#2 Sl#11 Ch#40 HDC pl#7 [X1] wire#41
+41, 1, 42          !TDC ROC#2 Sl#11 Ch#41 HDC pl#7 [X1] wire#42
+42, 1, 43          !TDC ROC#2 Sl#11 Ch#42 HDC pl#7 [X1] wire#43
+43, 1, 44          !TDC ROC#2 Sl#11 Ch#43 HDC pl#7 [X1] wire#44
+44, 1, 45          !TDC ROC#2 Sl#11 Ch#44 HDC pl#7 [X1] wire#45
+45, 1, 46          !TDC ROC#2 Sl#11 Ch#45 HDC pl#7 [X1] wire#46
+46, 1, 47          !TDC ROC#2 Sl#11 Ch#46 HDC pl#7 [X1] wire#47
+47, 1, 48          !TDC ROC#2 Sl#11 Ch#47 HDC pl#7 [X1] wire#48
+48, 1, 49          !TDC ROC#2 Sl#11 Ch#48 HDC pl#7 [X1] wire#49
+49, 1, 50          !TDC ROC#2 Sl#11 Ch#49 HDC pl#7 [X1] wire#50
+50, 1, 51          !TDC ROC#2 Sl#11 Ch#50 HDC pl#7 [X1] wire#51
+51, 1, 52          !TDC ROC#2 Sl#11 Ch#51 HDC pl#7 [X1] wire#52
+52, 1, 53          !TDC ROC#2 Sl#11 Ch#52 HDC pl#7 [X1] wire#53
+53, 1, 54          !TDC ROC#2 Sl#11 Ch#53 HDC pl#7 [X1] wire#54
+54, 1, 55          !TDC ROC#2 Sl#11 Ch#54 HDC pl#7 [X1] wire#55
+55, 1, 56          !TDC ROC#2 Sl#11 Ch#55 HDC pl#7 [X1] wire#56
+56, 1, 57          !TDC ROC#2 Sl#11 Ch#56 HDC pl#7 [X1] wire#57
+57, 1, 58          !TDC ROC#2 Sl#11 Ch#57 HDC pl#7 [X1] wire#58
+58, 1, 59          !TDC ROC#2 Sl#11 Ch#58 HDC pl#7 [X1] wire#59
+59, 1, 60          !TDC ROC#2 Sl#11 Ch#59 HDC pl#7 [X1] wire#60
+60, 1, 61          !TDC ROC#2 Sl#11 Ch#60 HDC pl#7 [X1] wire#61
+61, 1, 62          !TDC ROC#2 Sl#11 Ch#61 HDC pl#7 [X1] wire#62
+62, 1, 63          !TDC ROC#2 Sl#11 Ch#62 HDC pl#7 [X1] wire#63
+63, 1, 64          !TDC ROC#2 Sl#11 Ch#63 HDC pl#7 [X1] wire#64
+64, 1, 65          !TDC ROC#2 Sl#11 Ch#64 HDC pl#7 [X1] wire#65
+65, 1, 66          !TDC ROC#2 Sl#11 Ch#65 HDC pl#7 [X1] wire#66
+66, 1, 67          !TDC ROC#2 Sl#11 Ch#66 HDC pl#7 [X1] wire#67
+67, 1, 68          !TDC ROC#2 Sl#11 Ch#67 HDC pl#7 [X1] wire#68
+68, 1, 69          !TDC ROC#2 Sl#11 Ch#68 HDC pl#7 [X1] wire#69
+69, 1, 70          !TDC ROC#2 Sl#11 Ch#69 HDC pl#7 [X1] wire#70
+70, 1, 71          !TDC ROC#2 Sl#11 Ch#70 HDC pl#7 [X1] wire#71
+71, 1, 72          !TDC ROC#2 Sl#11 Ch#71 HDC pl#7 [X1] wire#72
+72, 1, 73          !TDC ROC#2 Sl#11 Ch#72 HDC pl#7 [X1] wire#73
+73, 1, 74          !TDC ROC#2 Sl#11 Ch#73 HDC pl#7 [X1] wire#74
+74, 1, 75          !TDC ROC#2 Sl#11 Ch#74 HDC pl#7 [X1] wire#75
+75, 1, 76          !TDC ROC#2 Sl#11 Ch#75 HDC pl#7 [X1] wire#76
+76, 1, 77          !TDC ROC#2 Sl#11 Ch#76 HDC pl#7 [X1] wire#77
+77, 1, 78          !TDC ROC#2 Sl#11 Ch#77 HDC pl#7 [X1] wire#78
+78, 1, 79          !TDC ROC#2 Sl#11 Ch#78 HDC pl#7 [X1] wire#79
+79, 1, 80          !TDC ROC#2 Sl#11 Ch#79 HDC pl#7 [X1] wire#80
+80, 1, 81          !TDC ROC#2 Sl#11 Ch#80 HDC pl#7 [X1] wire#81
+81, 1, 82          !TDC ROC#2 Sl#11 Ch#81 HDC pl#7 [X1] wire#82
+82, 1, 83          !TDC ROC#2 Sl#11 Ch#82 HDC pl#7 [X1] wire#83
+83, 1, 84          !TDC ROC#2 Sl#11 Ch#83 HDC pl#7 [X1] wire#84
+84, 1, 85          !TDC ROC#2 Sl#11 Ch#84 HDC pl#7 [X1] wire#85
+85, 1, 86          !TDC ROC#2 Sl#11 Ch#85 HDC pl#7 [X1] wire#86
+86, 1, 87          !TDC ROC#2 Sl#11 Ch#86 HDC pl#7 [X1] wire#87
+87, 1, 88          !TDC ROC#2 Sl#11 Ch#87 HDC pl#7 [X1] wire#88
+88, 1, 89          !TDC ROC#2 Sl#11 Ch#88 HDC pl#7 [X1] wire#89
+89, 1, 90          !TDC ROC#2 Sl#11 Ch#89 HDC pl#7 [X1] wire#90
+90, 1, 91          !TDC ROC#2 Sl#11 Ch#90 HDC pl#7 [X1] wire#91
+91, 1, 92          !TDC ROC#2 Sl#11 Ch#91 HDC pl#7 [X1] wire#92
+92, 1, 93          !TDC ROC#2 Sl#11 Ch#92 HDC pl#7 [X1] wire#93
+93, 1, 94          !TDC ROC#2 Sl#11 Ch#93 HDC pl#7 [X1] wire#94
+94, 1, 95          !TDC ROC#2 Sl#11 Ch#94 HDC pl#7 [X1] wire#95
+95, 1, 96          !TDC ROC#2 Sl#11 Ch#95 HDC pl#7 [X1] wire#96
+Slot= 16
+0, 1, 97           !TDC ROC#2 Sl#12 Ch#0 HDC pl#7 [X1] wire#97
+1, 1, 98           !TDC ROC#2 Sl#12 Ch#1 HDC pl#7 [X1] wire#98
+2, 1, 99           !TDC ROC#2 Sl#12 Ch#2 HDC pl#7 [X1] wire#99
+3, 1, 100          !TDC ROC#2 Sl#12 Ch#3 HDC pl#7 [X1] wire#100
+4, 1, 101          !TDC ROC#2 Sl#12 Ch#4 HDC pl#7 [X1] wire#101
+5, 1, 102          !TDC ROC#2 Sl#12 Ch#5 HDC pl#7 [X1] wire#102
+6, 1, 103          !TDC ROC#2 Sl#12 Ch#6 HDC pl#7 [X1] wire#103
+7, 1, 104          !TDC ROC#2 Sl#12 Ch#7 HDC pl#7 [X1] wire#104
+8, 1, 105          !TDC ROC#2 Sl#12 Ch#8 HDC pl#7 [X1] wire#105
+9, 1, 106          !TDC ROC#2 Sl#12 Ch#9 HDC pl#7 [X1] wire#106
+10, 1, 107         !TDC ROC#2 Sl#12 Ch#10 HDC pl#7 [X1] wire#107
+11, 1, 108         !TDC ROC#2 Sl#12 Ch#11 HDC pl#7 [X1] wire#108
+12, 1, 109         !TDC ROC#2 Sl#12 Ch#12 HDC pl#7 [X1] wire#109
+13, 1, 110         !TDC ROC#2 Sl#12 Ch#13 HDC pl#7 [X1] wire#110
+14, 1, 111         !TDC ROC#2 Sl#12 Ch#14 HDC pl#7 [X1] wire#111
+15, 1, 112         !TDC ROC#2 Sl#12 Ch#15 HDC pl#7 [X1] wire#112
+16, 2, 1           !TDC ROC#2 Sl#12 Ch#16 HDC pl#8 [Y1] wire#1
+17, 2, 2           !TDC ROC#2 Sl#12 Ch#17 HDC pl#8 [Y1] wire#2
+18, 2, 3           !TDC ROC#2 Sl#12 Ch#18 HDC pl#8 [Y1] wire#3
+19, 2, 4           !TDC ROC#2 Sl#12 Ch#19 HDC pl#8 [Y1] wire#4
+20, 2, 5           !TDC ROC#2 Sl#12 Ch#20 HDC pl#8 [Y1] wire#5
+21, 2, 6           !TDC ROC#2 Sl#12 Ch#21 HDC pl#8 [Y1] wire#6
+22, 2, 7           !TDC ROC#2 Sl#12 Ch#22 HDC pl#8 [Y1] wire#7
+23, 2, 8           !TDC ROC#2 Sl#12 Ch#23 HDC pl#8 [Y1] wire#8
+24, 2, 9           !TDC ROC#2 Sl#12 Ch#24 HDC pl#8 [Y1] wire#9
+25, 2, 10          !TDC ROC#2 Sl#12 Ch#25 HDC pl#8 [Y1] wire#10
+26, 2, 11          !TDC ROC#2 Sl#12 Ch#26 HDC pl#8 [Y1] wire#11
+27, 2, 12          !TDC ROC#2 Sl#12 Ch#27 HDC pl#8 [Y1] wire#12
+28, 2, 13          !TDC ROC#2 Sl#12 Ch#28 HDC pl#8 [Y1] wire#13
+! 29  !TDC ROC#2 Sl#12 Ch#29 unused
+! 30  !TDC ROC#2 Sl#12 Ch#30 unused
+! 31  !TDC ROC#2 Sl#12 Ch#31 unused
+32, 2, 14          !TDC ROC#2 Sl#12 Ch#32 HDC pl#8 [Y1] wire#14
+33, 2, 15          !TDC ROC#2 Sl#12 Ch#33 HDC pl#8 [Y1] wire#15
+34, 2, 16          !TDC ROC#2 Sl#12 Ch#34 HDC pl#8 [Y1] wire#16
+35, 2, 17          !TDC ROC#2 Sl#12 Ch#35 HDC pl#8 [Y1] wire#17
+36, 2, 18          !TDC ROC#2 Sl#12 Ch#36 HDC pl#8 [Y1] wire#18
+37, 2, 19          !TDC ROC#2 Sl#12 Ch#37 HDC pl#8 [Y1] wire#19
+38, 2, 20          !TDC ROC#2 Sl#12 Ch#38 HDC pl#8 [Y1] wire#20
+39, 2, 21          !TDC ROC#2 Sl#12 Ch#39 HDC pl#8 [Y1] wire#21
+40, 2, 22          !TDC ROC#2 Sl#12 Ch#40 HDC pl#8 [Y1] wire#22
+41, 2, 23          !TDC ROC#2 Sl#12 Ch#41 HDC pl#8 [Y1] wire#23
+42, 2, 24          !TDC ROC#2 Sl#12 Ch#42 HDC pl#8 [Y1] wire#24
+43, 2, 25          !TDC ROC#2 Sl#12 Ch#43 HDC pl#8 [Y1] wire#25
+44, 2, 26          !TDC ROC#2 Sl#12 Ch#44 HDC pl#8 [Y1] wire#26
+! 45 !TDC ROC#2 Sl#12 Ch#45 unused
+! 46 !TDC ROC#2 Sl#12 Ch#46 unused
+! 47 !TDC ROC#2 Sl#12 Ch#47 unused
+48, 2, 27          !TDC ROC#2 Sl#12 Ch#48 HDC pl#8 [Y1] wire#27
+49, 2, 28          !TDC ROC#2 Sl#12 Ch#49 HDC pl#8 [Y1] wire#28
+50, 2, 29          !TDC ROC#2 Sl#12 Ch#50 HDC pl#8 [Y1] wire#29
+51, 2, 30          !TDC ROC#2 Sl#12 Ch#51 HDC pl#8 [Y1] wire#30
+52, 2, 31          !TDC ROC#2 Sl#12 Ch#52 HDC pl#8 [Y1] wire#31
+53, 2, 32          !TDC ROC#2 Sl#12 Ch#53 HDC pl#8 [Y1] wire#32
+54, 2, 33          !TDC ROC#2 Sl#12 Ch#54 HDC pl#8 [Y1] wire#33
+55, 2, 34          !TDC ROC#2 Sl#12 Ch#55 HDC pl#8 [Y1] wire#34
+56, 2, 35          !TDC ROC#2 Sl#12 Ch#56 HDC pl#8 [Y1] wire#35
+57, 2, 36          !TDC ROC#2 Sl#12 Ch#57 HDC pl#8 [Y1] wire#36
+58, 2, 37          !TDC ROC#2 Sl#12 Ch#58 HDC pl#8 [Y1] wire#37
+59, 2, 38          !TDC ROC#2 Sl#12 Ch#59 HDC pl#8 [Y1] wire#38
+60, 2, 39          !TDC ROC#2 Sl#12 Ch#60 HDC pl#8 [Y1] wire#39
+! 61 !TDC ROC#2 Sl#12 Ch#61 unused
+! 62 !TDC ROC#2 Sl#12 Ch#62 unused
+! 63 !TDC ROC#2 Sl#12 Ch#63 unused
+64, 2, 40          !TDC ROC#2 Sl#12 Ch#64 HDC pl#8 [Y1] wire#40
+65, 2, 41          !TDC ROC#2 Sl#12 Ch#65 HDC pl#8 [Y1] wire#41
+66, 2, 42          !TDC ROC#2 Sl#12 Ch#66 HDC pl#8 [Y1] wire#42
+67, 2, 43          !TDC ROC#2 Sl#12 Ch#67 HDC pl#8 [Y1] wire#43
+68, 2, 44          !TDC ROC#2 Sl#12 Ch#68 HDC pl#8 [Y1] wire#44
+69, 2, 45          !TDC ROC#2 Sl#12 Ch#69 HDC pl#8 [Y1] wire#45
+70, 2, 46          !TDC ROC#2 Sl#12 Ch#70 HDC pl#8 [Y1] wire#46
+71, 2, 47          !TDC ROC#2 Sl#12 Ch#71 HDC pl#8 [Y1] wire#47
+72, 2, 48          !TDC ROC#2 Sl#12 Ch#72 HDC pl#8 [Y1] wire#48
+73, 2, 49          !TDC ROC#2 Sl#12 Ch#73 HDC pl#8 [Y1] wire#49
+74, 2, 50          !TDC ROC#2 Sl#12 Ch#74 HDC pl#8 [Y1] wire#50
+75, 2, 51          !TDC ROC#2 Sl#12 Ch#75 HDC pl#8 [Y1] wire#51
+76, 2, 52          !TDC ROC#2 Sl#12 Ch#76 HDC pl#8 [Y1] wire#52
+! 77 !TDC ROC#2 Sl#12 Ch#77 unused
+! 78 !TDC ROC#2 Sl#12 Ch#78 unused
+! 79 !TDC ROC#2 Sl#12 Ch#79 unused
+80, 1, 113         !TDC ROC#2 Sl#12 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#12 Ch#81 unused
+82, 3, 1           !TDC ROC#2 Sl#12 Ch#82 HDC pl#9 [U] wire#1
+83, 3, 2           !TDC ROC#2 Sl#12 Ch#83 HDC pl#9 [U] wire#2
+84, 3, 3           !TDC ROC#2 Sl#12 Ch#84 HDC pl#9 [U] wire#3
+85, 3, 4           !TDC ROC#2 Sl#12 Ch#85 HDC pl#9 [U] wire#4
+86, 3, 5           !TDC ROC#2 Sl#12 Ch#86 HDC pl#9 [U] wire#5
+87, 3, 6           !TDC ROC#2 Sl#12 Ch#87 HDC pl#9 [U] wire#6
+88, 3, 7           !TDC ROC#2 Sl#12 Ch#88 HDC pl#9 [U] wire#7
+89, 3, 8           !TDC ROC#2 Sl#12 Ch#89 HDC pl#9 [U] wire#8
+90, 3, 9           !TDC ROC#2 Sl#12 Ch#90 HDC pl#9 [U] wire#9
+91, 3, 10          !TDC ROC#2 Sl#12 Ch#91 HDC pl#9 [U] wire#10
+92, 3, 11          !TDC ROC#2 Sl#12 Ch#92 HDC pl#9 [U] wire#11
+93, 3, 12          !TDC ROC#2 Sl#12 Ch#93 HDC pl#9 [U] wire#12
+94, 3, 13          !TDC ROC#2 Sl#12 Ch#94 HDC pl#9 [U] wire#13
+95, 3, 14          !TDC ROC#2 Sl#12 Ch#95 HDC pl#9 [U] wire#14
+Slot= 18
+0, 3, 15           !TDC ROC#2 Sl#14 Ch#0 HDC pl#9 [U] wire#15
+1, 3, 16           !TDC ROC#2 Sl#14 Ch#1 HDC pl#9 [U] wire#16
+2, 3, 17           !TDC ROC#2 Sl#14 Ch#2 HDC pl#9 [U] wire#17
+3, 3, 18           !TDC ROC#2 Sl#14 Ch#3 HDC pl#9 [U] wire#18
+4, 3, 19           !TDC ROC#2 Sl#14 Ch#4 HDC pl#9 [U] wire#19
+5, 3, 20           !TDC ROC#2 Sl#14 Ch#5 HDC pl#9 [U] wire#20
+6, 3, 21           !TDC ROC#2 Sl#14 Ch#6 HDC pl#9 [U] wire#21
+7, 3, 22           !TDC ROC#2 Sl#14 Ch#7 HDC pl#9 [U] wire#22
+8, 3, 23           !TDC ROC#2 Sl#14 Ch#8 HDC pl#9 [U] wire#23
+9, 3, 24           !TDC ROC#2 Sl#14 Ch#9 HDC pl#9 [U] wire#24
+10, 3, 25          !TDC ROC#2 Sl#14 Ch#10 HDC pl#9 [U] wire#25
+11, 3, 26          !TDC ROC#2 Sl#14 Ch#11 HDC pl#9 [U] wire#26
+12, 3, 27          !TDC ROC#2 Sl#14 Ch#12 HDC pl#9 [U] wire#27
+13, 3, 28          !TDC ROC#2 Sl#14 Ch#13 HDC pl#9 [U] wire#28
+14, 3, 29          !TDC ROC#2 Sl#14 Ch#14 HDC pl#9 [U] wire#29
+! 15 !TDC ROC#2 Sl#14 Ch#15 unused
+16, 3, 30          !TDC ROC#2 Sl#14 Ch#16 HDC pl#9 [U] wire#30
+17, 3, 31          !TDC ROC#2 Sl#14 Ch#17 HDC pl#9 [U] wire#31
+18, 3, 32          !TDC ROC#2 Sl#14 Ch#18 HDC pl#9 [U] wire#32
+19, 3, 33          !TDC ROC#2 Sl#14 Ch#19 HDC pl#9 [U] wire#33
+20, 3, 34          !TDC ROC#2 Sl#14 Ch#20 HDC pl#9 [U] wire#34
+21, 3, 35          !TDC ROC#2 Sl#14 Ch#21 HDC pl#9 [U] wire#35
+22, 3, 36          !TDC ROC#2 Sl#14 Ch#22 HDC pl#9 [U] wire#36
+23, 3, 37          !TDC ROC#2 Sl#14 Ch#23 HDC pl#9 [U] wire#37
+24, 3, 38          !TDC ROC#2 Sl#14 Ch#24 HDC pl#9 [U] wire#38
+25, 3, 39          !TDC ROC#2 Sl#14 Ch#25 HDC pl#9 [U] wire#39
+26, 3, 40          !TDC ROC#2 Sl#14 Ch#26 HDC pl#9 [U] wire#40
+27, 3, 41          !TDC ROC#2 Sl#14 Ch#27 HDC pl#9 [U] wire#41
+28, 3, 42          !TDC ROC#2 Sl#14 Ch#28 HDC pl#9 [U] wire#42
+29, 3, 43          !TDC ROC#2 Sl#14 Ch#29 HDC pl#9 [U] wire#43
+30, 3, 44          !TDC ROC#2 Sl#14 Ch#30 HDC pl#9 [U] wire#44
+31, 3, 45          !TDC ROC#2 Sl#14 Ch#31 HDC pl#9 [U] wire#45
+32, 3, 46          !TDC ROC#2 Sl#14 Ch#32 HDC pl#9 [U] wire#46
+33, 3, 47          !TDC ROC#2 Sl#14 Ch#33 HDC pl#9 [U] wire#47
+34, 3, 48          !TDC ROC#2 Sl#14 Ch#34 HDC pl#9 [U] wire#48
+35, 3, 49          !TDC ROC#2 Sl#14 Ch#35 HDC pl#9 [U] wire#49
+36, 3, 50          !TDC ROC#2 Sl#14 Ch#36 HDC pl#9 [U] wire#50
+37, 3, 51          !TDC ROC#2 Sl#14 Ch#37 HDC pl#9 [U] wire#51
+38, 3, 52          !TDC ROC#2 Sl#14 Ch#38 HDC pl#9 [U] wire#52
+39, 3, 53          !TDC ROC#2 Sl#14 Ch#39 HDC pl#9 [U] wire#53
+40, 3, 54          !TDC ROC#2 Sl#14 Ch#40 HDC pl#9 [U] wire#54
+41, 3, 55          !TDC ROC#2 Sl#14 Ch#41 HDC pl#9 [U] wire#55
+42, 3, 56          !TDC ROC#2 Sl#14 Ch#42 HDC pl#9 [U] wire#56
+43, 3, 57          !TDC ROC#2 Sl#14 Ch#43 HDC pl#9 [U] wire#57
+44, 3, 58          !TDC ROC#2 Sl#14 Ch#44 HDC pl#9 [U] wire#58
+45, 3, 59          !TDC ROC#2 Sl#14 Ch#45 HDC pl#9 [U] wire#59
+46, 3, 60          !TDC ROC#2 Sl#14 Ch#46 HDC pl#9 [U] wire#60
+! 47 !TDC ROC#2 Sl#14 Ch#47 unused
+48, 3, 61          !TDC ROC#2 Sl#14 Ch#48 HDC pl#9 [U] wire#61
+49, 3, 62          !TDC ROC#2 Sl#14 Ch#49 HDC pl#9 [U] wire#62
+50, 3, 63          !TDC ROC#2 Sl#14 Ch#50 HDC pl#9 [U] wire#63
+51, 3, 64          !TDC ROC#2 Sl#14 Ch#51 HDC pl#9 [U] wire#64
+52, 3, 65          !TDC ROC#2 Sl#14 Ch#52 HDC pl#9 [U] wire#65
+53, 3, 66          !TDC ROC#2 Sl#14 Ch#53 HDC pl#9 [U] wire#66
+54, 3, 67          !TDC ROC#2 Sl#14 Ch#54 HDC pl#9 [U] wire#67
+55, 3, 68          !TDC ROC#2 Sl#14 Ch#55 HDC pl#9 [U] wire#68
+56, 3, 69          !TDC ROC#2 Sl#14 Ch#56 HDC pl#9 [U] wire#69
+57, 3, 70          !TDC ROC#2 Sl#14 Ch#57 HDC pl#9 [U] wire#70
+58, 3, 71          !TDC ROC#2 Sl#14 Ch#58 HDC pl#9 [U] wire#71
+59, 3, 72          !TDC ROC#2 Sl#14 Ch#59 HDC pl#9 [U] wire#72
+60, 3, 73          !TDC ROC#2 Sl#14 Ch#60 HDC pl#9 [U] wire#73
+61, 3, 74          !TDC ROC#2 Sl#14 Ch#61 HDC pl#9 [U] wire#74
+62, 3, 75          !TDC ROC#2 Sl#14 Ch#62 HDC pl#9 [U] wire#75
+63, 3, 76          !TDC ROC#2 Sl#14 Ch#63 HDC pl#9 [U] wire#76
+64, 3, 77          !TDC ROC#2 Sl#14 Ch#64 HDC pl#9 [U] wire#77
+65, 3, 78          !TDC ROC#2 Sl#14 Ch#65 HDC pl#9 [U] wire#78
+66, 3, 79          !TDC ROC#2 Sl#14 Ch#66 HDC pl#9 [U] wire#79
+67, 3, 80          !TDC ROC#2 Sl#14 Ch#67 HDC pl#9 [U] wire#80
+68, 3, 81          !TDC ROC#2 Sl#14 Ch#68 HDC pl#9 [U] wire#81
+69, 3, 82          !TDC ROC#2 Sl#14 Ch#69 HDC pl#9 [U] wire#82
+70, 3, 83          !TDC ROC#2 Sl#14 Ch#70 HDC pl#9 [U] wire#83
+71, 3, 84          !TDC ROC#2 Sl#14 Ch#71 HDC pl#9 [U] wire#84
+72, 3, 85          !TDC ROC#2 Sl#14 Ch#72 HDC pl#9 [U] wire#85
+73, 3, 86          !TDC ROC#2 Sl#14 Ch#73 HDC pl#9 [U] wire#86
+74, 3, 87          !TDC ROC#2 Sl#14 Ch#74 HDC pl#9 [U] wire#87
+75, 3, 88          !TDC ROC#2 Sl#14 Ch#75 HDC pl#9 [U] wire#88
+76, 3, 89          !TDC ROC#2 Sl#14 Ch#76 HDC pl#9 [U] wire#89
+77, 3, 90          !TDC ROC#2 Sl#14 Ch#77 HDC pl#9 [U] wire#90
+78, 3, 91          !TDC ROC#2 Sl#14 Ch#78 HDC pl#9 [U] wire#91
+!79, !unused
+80, 3, 92          !TDC ROC#2 Sl#14 Ch#80 HDC pl#9 [U] wire#92
+81, 3, 93          !TDC ROC#2 Sl#14 Ch#81 HDC pl#9 [U] wire#93
+82, 3, 94          !TDC ROC#2 Sl#14 Ch#82 HDC pl#9 [U] wire#94
+83, 3, 95          !TDC ROC#2 Sl#14 Ch#83 HDC pl#9 [U] wire#95
+84, 3, 96          !TDC ROC#2 Sl#14 Ch#84 HDC pl#9 [U] wire#96
+85, 3, 97          !TDC ROC#2 Sl#14 Ch#85 HDC pl#9 [U] wire#97
+86, 3, 98          !TDC ROC#2 Sl#14 Ch#86 HDC pl#9 [U] wire#98
+87, 3, 99          !TDC ROC#2 Sl#14 Ch#87 HDC pl#9 [U] wire#99
+88, 3, 100         !TDC ROC#2 Sl#14 Ch#88 HDC pl#9 [U] wire#100
+89, 3, 101         !TDC ROC#2 Sl#14 Ch#89 HDC pl#9 [U] wire#101
+90, 3, 102         !TDC ROC#2 Sl#14 Ch#90 HDC pl#9 [U] wire#102
+91, 3, 103         !TDC ROC#2 Sl#14 Ch#91 HDC pl#9 [U] wire#103
+92, 3, 104         !TDC ROC#2 Sl#14 Ch#92 HDC pl#9 [U] wire#104
+93, 3, 105         !TDC ROC#2 Sl#14 Ch#93 HDC pl#9 [U] wire#105
+94, 3, 106         !TDC ROC#2 Sl#14 Ch#94 HDC pl#9 [U] wire#106
+95, 3, 107         !TDC ROC#2 Sl#14 Ch#95 HDC pl#9 [U] wire#107
+Slot= 19
+0, 6, 113           !TDC ROC#2 Sl#15 Ch#0 HDC pl#12 [X2] wire#113
+!1,  !unused
+2, 4, 1           !TDC ROC#2 Sl#15 Ch#2 HDC pl#10 [V] wire#1
+3, 4, 2           !TDC ROC#2 Sl#15 Ch#3 HDC pl#10 [V] wire#2
+4, 4, 3           !TDC ROC#2 Sl#15 Ch#4 HDC pl#10 [V] wire#3
+5, 4, 4           !TDC ROC#2 Sl#15 Ch#5 HDC pl#10 [V] wire#4
+6, 4, 5           !TDC ROC#2 Sl#15 Ch#6 HDC pl#10 [V] wire#5
+7, 4, 6           !TDC ROC#2 Sl#15 Ch#7 HDC pl#10 [V] wire#6
+8, 4, 7           !TDC ROC#2 Sl#15 Ch#8 HDC pl#10 [V] wire#7
+9, 4, 8          !TDC ROC#2 Sl#15 Ch#9 HDC pl#10 [V] wire#8
+10, 4, 9          !TDC ROC#2 Sl#15 Ch#10 HDC pl#10 [V] wire#9
+11, 4, 10          !TDC ROC#2 Sl#15 Ch#11 HDC pl#10 [V] wire#10
+12, 4, 11          !TDC ROC#2 Sl#15 Ch#12 HDC pl#10 [V] wire#11
+13, 4, 12          !TDC ROC#2 Sl#15 Ch#13 HDC pl#10 [V] wire#12
+14, 4, 13          !TDC ROC#2 Sl#15 Ch#14 HDC pl#10 [V] wire#13
+15, 4, 14          !TDC ROC#2 Sl#15 Ch#15 HDC pl#10 [V] wire#14
+16, 4, 15          !TDC ROC#2 Sl#15 Ch#16 HDC pl#10 [V] wire#15
+17, 4, 16          !TDC ROC#2 Sl#15 Ch#17 HDC pl#10 [V] wire#16
+18, 4, 17          !TDC ROC#2 Sl#15 Ch#18 HDC pl#10 [V] wire#17
+19, 4, 18          !TDC ROC#2 Sl#15 Ch#19 HDC pl#10 [V] wire#18
+20, 4, 19          !TDC ROC#2 Sl#15 Ch#20 HDC pl#10 [V] wire#19
+21, 4, 20          !TDC ROC#2 Sl#15 Ch#21 HDC pl#10 [V] wire#20
+22, 4, 21          !TDC ROC#2 Sl#15 Ch#22 HDC pl#10 [V] wire#21
+23, 4, 22          !TDC ROC#2 Sl#15 Ch#23 HDC pl#10 [V] wire#22
+24, 4, 23          !TDC ROC#2 Sl#15 Ch#24 HDC pl#10 [V] wire#23
+25, 4, 24          !TDC ROC#2 Sl#15 Ch#25 HDC pl#10 [V] wire#24
+26, 4, 25          !TDC ROC#2 Sl#15 Ch#26 HDC pl#10 [V] wire#25
+27, 4, 26          !TDC ROC#2 Sl#15 Ch#27 HDC pl#10 [V] wire#26
+28, 4, 27          !TDC ROC#2 Sl#15 Ch#28 HDC pl#10 [V] wire#27
+29, 4, 28          !TDC ROC#2 Sl#15 Ch#29 HDC pl#10 [V] wire#28
+30, 4, 29          !TDC ROC#2 Sl#15 Ch#30 HDC pl#10 [V] wire#29
+! 31 !TDC ROC#2 Sl#15 Ch#31 unused
+32, 4, 30          !TDC ROC#2 Sl#15 Ch#32 HDC pl#10 [V] wire#30
+33, 4, 31          !TDC ROC#2 Sl#15 Ch#33 HDC pl#10 [V] wire#31
+34, 4, 32          !TDC ROC#2 Sl#15 Ch#34 HDC pl#10 [V] wire#32
+35, 4, 33          !TDC ROC#2 Sl#15 Ch#35 HDC pl#10 [V] wire#33
+36, 4, 34          !TDC ROC#2 Sl#15 Ch#36 HDC pl#10 [V] wire#34
+37, 4, 35          !TDC ROC#2 Sl#15 Ch#37 HDC pl#10 [V] wire#35
+38, 4, 36          !TDC ROC#2 Sl#15 Ch#38 HDC pl#10 [V] wire#36
+39, 4, 37          !TDC ROC#2 Sl#15 Ch#39 HDC pl#10 [V] wire#37
+40, 4, 38          !TDC ROC#2 Sl#15 Ch#40 HDC pl#10 [V] wire#38
+41, 4, 39          !TDC ROC#2 Sl#15 Ch#41 HDC pl#10 [V] wire#39
+42, 4, 40          !TDC ROC#2 Sl#15 Ch#42 HDC pl#10 [V] wire#40
+43, 4, 41          !TDC ROC#2 Sl#15 Ch#43 HDC pl#10 [V] wire#41
+44, 4, 42          !TDC ROC#2 Sl#15 Ch#44 HDC pl#10 [V] wire#42
+45, 4, 43          !TDC ROC#2 Sl#15 Ch#45 HDC pl#10 [V] wire#43
+46, 4, 44          !TDC ROC#2 Sl#15 Ch#46 HDC pl#10 [V] wire#44
+47, 4, 45          !TDC ROC#2 Sl#15 Ch#47 HDC pl#10 [V] wire#45
+48, 4, 46          !TDC ROC#2 Sl#15 Ch#48 HDC pl#10 [V] wire#46
+49, 4, 47          !TDC ROC#2 Sl#15 Ch#49 HDC pl#10 [V] wire#47
+50, 4, 48          !TDC ROC#2 Sl#15 Ch#50 HDC pl#10 [V] wire#48
+51, 4, 49          !TDC ROC#2 Sl#15 Ch#51 HDC pl#10 [V] wire#49
+52, 4, 50          !TDC ROC#2 Sl#15 Ch#52 HDC pl#10 [V] wire#50
+53, 4, 51          !TDC ROC#2 Sl#15 Ch#53 HDC pl#10 [V] wire#51
+54, 4, 52          !TDC ROC#2 Sl#15 Ch#54 HDC pl#10 [V] wire#52
+55, 4, 53          !TDC ROC#2 Sl#15 Ch#55 HDC pl#10 [V] wire#53
+56, 4, 54          !TDC ROC#2 Sl#15 Ch#56 HDC pl#10 [V] wire#54
+57, 4, 55          !TDC ROC#2 Sl#15 Ch#57 HDC pl#10 [V] wire#55
+58, 4, 56          !TDC ROC#2 Sl#15 Ch#58 HDC pl#10 [V] wire#56
+59, 4, 57          !TDC ROC#2 Sl#15 Ch#59 HDC pl#10 [V] wire#57
+60, 4, 58          !TDC ROC#2 Sl#15 Ch#60 HDC pl#10 [V] wire#58
+61, 4, 59          !TDC ROC#2 Sl#15 Ch#61 HDC pl#10 [V] wire#59
+62, 4, 60          !TDC ROC#2 Sl#15 Ch#62 HDC pl#10 [V] wire#60
+! 63 !TDC ROC#2 Sl#15 Ch#63 unused
+64, 4, 61          !TDC ROC#2 Sl#15 Ch#64 HDC pl#10 [V] wire#61
+65, 4, 62          !TDC ROC#2 Sl#15 Ch#65 HDC pl#10 [V] wire#62
+66, 4, 63          !TDC ROC#2 Sl#15 Ch#66 HDC pl#10 [V] wire#63
+67, 4, 64          !TDC ROC#2 Sl#15 Ch#67 HDC pl#10 [V] wire#64
+68, 4, 65          !TDC ROC#2 Sl#15 Ch#68 HDC pl#10 [V] wire#65
+69, 4, 66          !TDC ROC#2 Sl#15 Ch#69 HDC pl#10 [V] wire#66
+70, 4, 67          !TDC ROC#2 Sl#15 Ch#70 HDC pl#10 [V] wire#67
+71, 4, 68          !TDC ROC#2 Sl#15 Ch#71 HDC pl#10 [V] wire#68
+72, 4, 69          !TDC ROC#2 Sl#15 Ch#72 HDC pl#10 [V] wire#69
+73, 4, 70          !TDC ROC#2 Sl#15 Ch#73 HDC pl#10 [V] wire#70
+74, 4, 71          !TDC ROC#2 Sl#15 Ch#74 HDC pl#10 [V] wire#71
+75, 4, 72          !TDC ROC#2 Sl#15 Ch#75 HDC pl#10 [V] wire#72
+76, 4, 73          !TDC ROC#2 Sl#15 Ch#76 HDC pl#10 [V] wire#73
+77, 4, 74          !TDC ROC#2 Sl#15 Ch#77 HDC pl#10 [V] wire#74
+78, 4, 75          !TDC ROC#2 Sl#15 Ch#78 HDC pl#10 [V] wire#75
+79, 4, 76          !TDC ROC#2 Sl#15 Ch#79 HDC pl#10 [V] wire#76
+80, 4, 77          !TDC ROC#2 Sl#15 Ch#80 HDC pl#10 [V] wire#77
+81, 4, 78          !TDC ROC#2 Sl#15 Ch#81 HDC pl#10 [V] wire#78
+82, 4, 79          !TDC ROC#2 Sl#15 Ch#82 HDC pl#10 [V] wire#79
+83, 4, 80          !TDC ROC#2 Sl#15 Ch#83 HDC pl#10 [V] wire#80
+84, 4, 81          !TDC ROC#2 Sl#15 Ch#84 HDC pl#10 [V] wire#81
+85, 4, 82          !TDC ROC#2 Sl#15 Ch#85 HDC pl#10 [V] wire#82
+86, 4, 83          !TDC ROC#2 Sl#15 Ch#86 HDC pl#10 [V] wire#83
+87, 4, 84          !TDC ROC#2 Sl#15 Ch#87 HDC pl#10 [V] wire#84
+88, 4, 85          !TDC ROC#2 Sl#15 Ch#88 HDC pl#10 [V] wire#85
+89, 4, 86          !TDC ROC#2 Sl#15 Ch#89 HDC pl#10 [V] wire#86
+90, 4, 87          !TDC ROC#2 Sl#15 Ch#90 HDC pl#10 [V] wire#87
+91, 4, 88          !TDC ROC#2 Sl#15 Ch#91 HDC pl#10 [V] wire#88
+92, 4, 89          !TDC ROC#2 Sl#15 Ch#92 HDC pl#10 [V] wire#89
+93, 4, 90          !TDC ROC#2 Sl#15 Ch#93 HDC pl#10 [V] wire#90
+94, 4, 91          !TDC ROC#2 Sl#15 Ch#94 HDC pl#10 [V] wire#91
+! 95 !TDC ROC#2 Sl#15 Ch#95 unused
+Slot= 21
+0, 4, 92           !TDC ROC#2 Sl#17 Ch#0 HDC pl#10 [V] wire#92
+1, 4, 93           !TDC ROC#2 Sl#17 Ch#1 HDC pl#10 [V] wire#93
+2, 4, 94           !TDC ROC#2 Sl#17 Ch#2 HDC pl#10 [V] wire#94
+3, 4, 95           !TDC ROC#2 Sl#17 Ch#3 HDC pl#10 [V] wire#95
+4, 4, 96           !TDC ROC#2 Sl#17 Ch#4 HDC pl#10 [V] wire#96
+5, 4, 97           !TDC ROC#2 Sl#17 Ch#5 HDC pl#10 [V] wire#97
+6, 4, 98           !TDC ROC#2 Sl#17 Ch#6 HDC pl#10 [V] wire#98
+7, 4, 99           !TDC ROC#2 Sl#17 Ch#7 HDC pl#10 [V] wire#99
+8, 4, 100          !TDC ROC#2 Sl#17 Ch#8 HDC pl#10 [V] wire#100
+9, 4, 101          !TDC ROC#2 Sl#17 Ch#9 HDC pl#10 [V] wire#101
+10, 4, 102         !TDC ROC#2 Sl#17 Ch#10 HDC pl#10 [V] wire#102
+11, 4, 103         !TDC ROC#2 Sl#17 Ch#11 HDC pl#10 [V] wire#103
+12, 4, 104         !TDC ROC#2 Sl#17 Ch#12 HDC pl#10 [V] wire#104
+13, 4, 105         !TDC ROC#2 Sl#17 Ch#13 HDC pl#10 [V] wire#105
+14, 4, 106         !TDC ROC#2 Sl#17 Ch#14 HDC pl#10 [V] wire#106
+15, 4, 107         !TDC ROC#2 Sl#17 Ch#15 HDC pl#10 [V] wire#107
+16, 5, 1           !TDC ROC#2 Sl#17 Ch#16 HDC pl#11 [Y2] wire#1
+17, 5, 2           !TDC ROC#2 Sl#17 Ch#17 HDC pl#11 [Y2] wire#2
+18, 5, 3           !TDC ROC#2 Sl#17 Ch#18 HDC pl#11 [Y2] wire#3
+19, 5, 4           !TDC ROC#2 Sl#17 Ch#19 HDC pl#11 [Y2] wire#4
+20, 5, 5           !TDC ROC#2 Sl#17 Ch#20 HDC pl#11 [Y2] wire#5
+21, 5, 6           !TDC ROC#2 Sl#17 Ch#21 HDC pl#11 [Y2] wire#6
+22, 5, 7           !TDC ROC#2 Sl#17 Ch#22 HDC pl#11 [Y2] wire#7
+23, 5, 8           !TDC ROC#2 Sl#17 Ch#23 HDC pl#11 [Y2] wire#8
+24, 5, 9           !TDC ROC#2 Sl#17 Ch#24 HDC pl#11 [Y2] wire#9
+25, 5, 10          !TDC ROC#2 Sl#17 Ch#25 HDC pl#11 [Y2] wire#10
+26, 5, 11          !TDC ROC#2 Sl#17 Ch#26 HDC pl#11 [Y2] wire#11
+27, 5, 12          !TDC ROC#2 Sl#17 Ch#27 HDC pl#11 [Y2] wire#12
+28, 5, 13          !TDC ROC#2 Sl#17 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#17 Ch#29 unused
+! 30 !TDC ROC#2 Sl#17 Ch#30 unused
+! 31 !TDC ROC#2 Sl#17 Ch#31 unused
+32, 5, 14          !TDC ROC#2 Sl#17 Ch#32 HDC pl#11 [Y2] wire#14
+33, 5, 15          !TDC ROC#2 Sl#17 Ch#33 HDC pl#11 [Y2] wire#15
+34, 5, 16          !TDC ROC#2 Sl#17 Ch#34 HDC pl#11 [Y2] wire#16
+35, 5, 17          !TDC ROC#2 Sl#17 Ch#35 HDC pl#11 [Y2] wire#17
+36, 5, 18          !TDC ROC#2 Sl#17 Ch#36 HDC pl#11 [Y2] wire#18
+37, 5, 19          !TDC ROC#2 Sl#17 Ch#37 HDC pl#11 [Y2] wire#19
+38, 5, 20          !TDC ROC#2 Sl#17 Ch#38 HDC pl#11 [Y2] wire#20
+39, 5, 21          !TDC ROC#2 Sl#17 Ch#39 HDC pl#11 [Y2] wire#21
+40, 5, 22          !TDC ROC#2 Sl#17 Ch#40 HDC pl#11 [Y2] wire#22
+41, 5, 23          !TDC ROC#2 Sl#17 Ch#41 HDC pl#11 [Y2] wire#23
+42, 5, 24          !TDC ROC#2 Sl#17 Ch#42 HDC pl#11 [Y2] wire#24
+43, 5, 25          !TDC ROC#2 Sl#17 Ch#43 HDC pl#11 [Y2] wire#25
+44, 5, 26          !TDC ROC#2 Sl#17 Ch#44 HDC pl#11 [Y2] wire#26
+! 45 !TDC ROC#2 Sl#17 Ch#45 unused
+! 46 !TDC ROC#2 Sl#17 Ch#46 unused
+! 47 !TDC ROC#2 Sl#17 Ch#47 unused
+48, 5, 27          !TDC ROC#2 Sl#17 Ch#48 HDC pl#11 [Y2] wire#27
+49, 5, 28          !TDC ROC#2 Sl#17 Ch#49 HDC pl#11 [Y2] wire#28
+50, 5, 29          !TDC ROC#2 Sl#17 Ch#50 HDC pl#11 [Y2] wire#29
+51, 5, 30          !TDC ROC#2 Sl#17 Ch#51 HDC pl#11 [Y2] wire#30
+52, 5, 31          !TDC ROC#2 Sl#17 Ch#52 HDC pl#11 [Y2] wire#31
+53, 5, 32          !TDC ROC#2 Sl#17 Ch#53 HDC pl#11 [Y2] wire#32
+54, 5, 33          !TDC ROC#2 Sl#17 Ch#54 HDC pl#11 [Y2] wire#33
+55, 5, 34          !TDC ROC#2 Sl#17 Ch#55 HDC pl#11 [Y2] wire#34
+56, 5, 35          !TDC ROC#2 Sl#17 Ch#56 HDC pl#11 [Y2] wire#35
+57, 5, 36          !TDC ROC#2 Sl#17 Ch#57 HDC pl#11 [Y2] wire#36
+58, 5, 37          !TDC ROC#2 Sl#17 Ch#58 HDC pl#11 [Y2] wire#37
+59, 5, 38          !TDC ROC#2 Sl#17 Ch#59 HDC pl#11 [Y2] wire#38
+60, 5, 39          !TDC ROC#2 Sl#17 Ch#60 HDC pl#11 [Y2] wire#39
+! 61 !TDC ROC#2 Sl#17 Ch#61 unused
+! 62 !TDC ROC#2 Sl#17 Ch#62 unused
+! 63 !TDC ROC#2 Sl#17 Ch#63 unused
+! 64 !TDC ROC#2 Sl#17 Ch#64 unused?????   JV 11/11/97
+65, 5, 40          !TDC ROC#2 Sl#17 Ch#64 HDC pl#11 [Y2] wire#40
+66, 5, 41          !TDC ROC#2 Sl#17 Ch#65 HDC pl#11 [Y2] wire#41
+67, 5, 42          !TDC ROC#2 Sl#17 Ch#66 HDC pl#11 [Y2] wire#42
+68, 5, 43          !TDC ROC#2 Sl#17 Ch#67 HDC pl#11 [Y2] wire#43
+69, 5, 44          !TDC ROC#2 Sl#17 Ch#68 HDC pl#11 [Y2] wire#44
+70, 5, 45          !TDC ROC#2 Sl#17 Ch#69 HDC pl#11 [Y2] wire#45
+71, 5, 46          !TDC ROC#2 Sl#17 Ch#70 HDC pl#11 [Y2] wire#46
+72, 5, 47          !TDC ROC#2 Sl#17 Ch#71 HDC pl#11 [Y2] wire#47
+73, 5, 48          !TDC ROC#2 Sl#17 Ch#72 HDC pl#11 [Y2] wire#48
+74, 5, 49          !TDC ROC#2 Sl#17 Ch#73 HDC pl#11 [Y2] wire#49
+75, 5, 50          !TDC ROC#2 Sl#17 Ch#74 HDC pl#11 [Y2] wire#50
+76, 5, 51          !TDC ROC#2 Sl#17 Ch#75 HDC pl#11 [Y2] wire#51
+77, 5, 52          !TDC ROC#2 Sl#17 Ch#76 HDC pl#11 [Y2] wire#52
+! 77 !TDC ROC#2 Sl#17 Ch#77 unused
+! 78 !TDC ROC#2 Sl#17 Ch#78 unused
+! 79 !TDC ROC#2 Sl#17 Ch#79 unused
+80, 6, 1           !TDC ROC#2 Sl#17 Ch#80 HDC pl#12 [X2] wire#1
+81, 6, 2           !TDC ROC#2 Sl#17 Ch#81 HDC pl#12 [X2] wire#2
+82, 6, 3           !TDC ROC#2 Sl#17 Ch#82 HDC pl#12 [X2] wire#3
+83, 6, 4           !TDC ROC#2 Sl#17 Ch#83 HDC pl#12 [X2] wire#4
+84, 6, 5           !TDC ROC#2 Sl#17 Ch#84 HDC pl#12 [X2] wire#5
+85, 6, 6           !TDC ROC#2 Sl#17 Ch#85 HDC pl#12 [X2] wire#6
+86, 6, 7           !TDC ROC#2 Sl#17 Ch#86 HDC pl#12 [X2] wire#7
+87, 6, 8           !TDC ROC#2 Sl#17 Ch#87 HDC pl#12 [X2] wire#8
+88, 6, 9           !TDC ROC#2 Sl#17 Ch#88 HDC pl#12 [X2] wire#9
+89, 6, 10          !TDC ROC#2 Sl#17 Ch#89 HDC pl#12 [X2] wire#10
+90, 6, 11          !TDC ROC#2 Sl#17 Ch#90 HDC pl#12 [X2] wire#11
+91, 6, 12          !TDC ROC#2 Sl#17 Ch#91 HDC pl#12 [X2] wire#12
+92, 6, 13          !TDC ROC#2 Sl#17 Ch#92 HDC pl#12 [X2] wire#13
+93, 6, 14          !TDC ROC#2 Sl#17 Ch#93 HDC pl#12 [X2] wire#14
+94, 6, 15          !TDC ROC#2 Sl#17 Ch#94 HDC pl#12 [X2] wire#15
+95, 6, 16          !TDC ROC#2 Sl#17 Ch#95 HDC pl#12 [X2] wire#16
+Slot= 22
+0, 6, 17           !TDC ROC#2 Sl#18 Ch#0 HDC pl#12 [X2] wire#17
+1, 6, 18           !TDC ROC#2 Sl#18 Ch#1 HDC pl#12 [X2] wire#18
+2, 6, 19           !TDC ROC#2 Sl#18 Ch#2 HDC pl#12 [X2] wire#19
+3, 6, 20           !TDC ROC#2 Sl#18 Ch#3 HDC pl#12 [X2] wire#20
+4, 6, 21           !TDC ROC#2 Sl#18 Ch#4 HDC pl#12 [X2] wire#21
+5, 6, 22           !TDC ROC#2 Sl#18 Ch#5 HDC pl#12 [X2] wire#22
+6, 6, 23           !TDC ROC#2 Sl#18 Ch#6 HDC pl#12 [X2] wire#23
+7, 6, 24           !TDC ROC#2 Sl#18 Ch#7 HDC pl#12 [X2] wire#24
+8, 6, 25           !TDC ROC#2 Sl#18 Ch#8 HDC pl#12 [X2] wire#25
+9, 6, 26           !TDC ROC#2 Sl#18 Ch#9 HDC pl#12 [X2] wire#26
+10, 6, 27          !TDC ROC#2 Sl#18 Ch#10 HDC pl#12 [X2] wire#27
+11, 6, 28          !TDC ROC#2 Sl#18 Ch#11 HDC pl#12 [X2] wire#28
+12, 6, 29          !TDC ROC#2 Sl#18 Ch#12 HDC pl#12 [X2] wire#29
+13, 6, 30          !TDC ROC#2 Sl#18 Ch#13 HDC pl#12 [X2] wire#30
+14, 6, 31          !TDC ROC#2 Sl#18 Ch#14 HDC pl#12 [X2] wire#31
+15, 6, 32          !TDC ROC#2 Sl#18 Ch#15 HDC pl#12 [X2] wire#32
+16, 6, 33          !TDC ROC#2 Sl#18 Ch#16 HDC pl#12 [X2] wire#33
+17, 6, 34          !TDC ROC#2 Sl#18 Ch#17 HDC pl#12 [X2] wire#34
+18, 6, 35          !TDC ROC#2 Sl#18 Ch#18 HDC pl#12 [X2] wire#35
+19, 6, 36          !TDC ROC#2 Sl#18 Ch#19 HDC pl#12 [X2] wire#36
+20, 6, 37          !TDC ROC#2 Sl#18 Ch#20 HDC pl#12 [X2] wire#37
+21, 6, 38          !TDC ROC#2 Sl#18 Ch#21 HDC pl#12 [X2] wire#38
+22, 6, 39          !TDC ROC#2 Sl#18 Ch#22 HDC pl#12 [X2] wire#39
+23, 6, 40          !TDC ROC#2 Sl#18 Ch#23 HDC pl#12 [X2] wire#40
+24, 6, 41          !TDC ROC#2 Sl#18 Ch#24 HDC pl#12 [X2] wire#41
+25, 6, 42          !TDC ROC#2 Sl#18 Ch#25 HDC pl#12 [X2] wire#42
+26, 6, 43          !TDC ROC#2 Sl#18 Ch#26 HDC pl#12 [X2] wire#43
+27, 6, 44          !TDC ROC#2 Sl#18 Ch#27 HDC pl#12 [X2] wire#44
+28, 6, 45          !TDC ROC#2 Sl#18 Ch#28 HDC pl#12 [X2] wire#45
+29, 6, 46          !TDC ROC#2 Sl#18 Ch#29 HDC pl#12 [X2] wire#46
+30, 6, 47          !TDC ROC#2 Sl#18 Ch#30 HDC pl#12 [X2] wire#47
+31, 6, 48          !TDC ROC#2 Sl#18 Ch#31 HDC pl#12 [X2] wire#48
+32, 6, 49          !TDC ROC#2 Sl#18 Ch#32 HDC pl#12 [X2] wire#49
+33, 6, 50          !TDC ROC#2 Sl#18 Ch#33 HDC pl#12 [X2] wire#50
+34, 6, 51          !TDC ROC#2 Sl#18 Ch#34 HDC pl#12 [X2] wire#51
+35, 6, 52          !TDC ROC#2 Sl#18 Ch#35 HDC pl#12 [X2] wire#52
+36, 6, 53          !TDC ROC#2 Sl#18 Ch#36 HDC pl#12 [X2] wire#53
+37, 6, 54          !TDC ROC#2 Sl#18 Ch#37 HDC pl#12 [X2] wire#54
+38, 6, 55          !TDC ROC#2 Sl#18 Ch#38 HDC pl#12 [X2] wire#55
+39, 6, 56          !TDC ROC#2 Sl#18 Ch#39 HDC pl#12 [X2] wire#56
+40, 6, 57          !TDC ROC#2 Sl#18 Ch#40 HDC pl#12 [X2] wire#57
+41, 6, 58          !TDC ROC#2 Sl#18 Ch#41 HDC pl#12 [X2] wire#58
+42, 6, 59          !TDC ROC#2 Sl#18 Ch#42 HDC pl#12 [X2] wire#59
+43, 6, 60          !TDC ROC#2 Sl#18 Ch#43 HDC pl#12 [X2] wire#60
+44, 6, 61          !TDC ROC#2 Sl#18 Ch#44 HDC pl#12 [X2] wire#61
+45, 6, 62          !TDC ROC#2 Sl#18 Ch#45 HDC pl#12 [X2] wire#62
+46, 6, 63          !TDC ROC#2 Sl#18 Ch#46 HDC pl#12 [X2] wire#63
+47, 6, 64          !TDC ROC#2 Sl#18 Ch#47 HDC pl#12 [X2] wire#64
+48, 6, 65          !TDC ROC#2 Sl#18 Ch#48 HDC pl#12 [X2] wire#65
+49, 6, 66          !TDC ROC#2 Sl#18 Ch#49 HDC pl#12 [X2] wire#66
+50, 6, 67          !TDC ROC#2 Sl#18 Ch#50 HDC pl#12 [X2] wire#67
+51, 6, 68          !TDC ROC#2 Sl#18 Ch#51 HDC pl#12 [X2] wire#68
+52, 6, 69          !TDC ROC#2 Sl#18 Ch#52 HDC pl#12 [X2] wire#69
+53, 6, 70          !TDC ROC#2 Sl#18 Ch#53 HDC pl#12 [X2] wire#70
+54, 6, 71          !TDC ROC#2 Sl#18 Ch#54 HDC pl#12 [X2] wire#71
+55, 6, 72          !TDC ROC#2 Sl#18 Ch#55 HDC pl#12 [X2] wire#72
+56, 6, 73          !TDC ROC#2 Sl#18 Ch#56 HDC pl#12 [X2] wire#73
+57, 6, 74          !TDC ROC#2 Sl#18 Ch#57 HDC pl#12 [X2] wire#74
+58, 6, 75          !TDC ROC#2 Sl#18 Ch#58 HDC pl#12 [X2] wire#75
+59, 6, 76          !TDC ROC#2 Sl#18 Ch#59 HDC pl#12 [X2] wire#76
+60, 6, 77          !TDC ROC#2 Sl#18 Ch#60 HDC pl#12 [X2] wire#77
+61, 6, 78          !TDC ROC#2 Sl#18 Ch#61 HDC pl#12 [X2] wire#78
+62, 6, 79          !TDC ROC#2 Sl#18 Ch#62 HDC pl#12 [X2] wire#79
+63, 6, 80          !TDC ROC#2 Sl#18 Ch#63 HDC pl#12 [X2] wire#80
+64, 6, 81          !TDC ROC#2 Sl#18 Ch#64 HDC pl#12 [X2] wire#81
+65, 6, 82          !TDC ROC#2 Sl#18 Ch#65 HDC pl#12 [X2] wire#82
+66, 6, 83          !TDC ROC#2 Sl#18 Ch#66 HDC pl#12 [X2] wire#83
+67, 6, 84          !TDC ROC#2 Sl#18 Ch#67 HDC pl#12 [X2] wire#84
+68, 6, 85          !TDC ROC#2 Sl#18 Ch#68 HDC pl#12 [X2] wire#85
+69, 6, 86          !TDC ROC#2 Sl#18 Ch#69 HDC pl#12 [X2] wire#86
+70, 6, 87          !TDC ROC#2 Sl#18 Ch#70 HDC pl#12 [X2] wire#87
+71, 6, 88          !TDC ROC#2 Sl#18 Ch#71 HDC pl#12 [X2] wire#88
+72, 6, 89          !TDC ROC#2 Sl#18 Ch#72 HDC pl#12 [X2] wire#89
+73, 6, 90          !TDC ROC#2 Sl#18 Ch#73 HDC pl#12 [X2] wire#90
+74, 6, 91          !TDC ROC#2 Sl#18 Ch#74 HDC pl#12 [X2] wire#91
+75, 6, 92          !TDC ROC#2 Sl#18 Ch#75 HDC pl#12 [X2] wire#92
+76, 6, 93          !TDC ROC#2 Sl#18 Ch#76 HDC pl#12 [X2] wire#93
+77, 6, 94          !TDC ROC#2 Sl#18 Ch#77 HDC pl#12 [X2] wire#94
+78, 6, 95          !TDC ROC#2 Sl#18 Ch#78 HDC pl#12 [X2] wire#95
+79, 6, 96          !TDC ROC#2 Sl#18 Ch#79 HDC pl#12 [X2] wire#96
+80, 6, 97          !TDC ROC#2 Sl#18 Ch#80 HDC pl#12 [X2] wire#97
+81, 6, 98          !TDC ROC#2 Sl#18 Ch#81 HDC pl#12 [X2] wire#98
+82, 6, 99          !TDC ROC#2 Sl#18 Ch#82 HDC pl#12 [X2] wire#99
+83, 6, 100         !TDC ROC#2 Sl#18 Ch#83 HDC pl#12 [X2] wire#100
+84, 6, 101         !TDC ROC#2 Sl#18 Ch#84 HDC pl#12 [X2] wire#101
+85, 6, 102         !TDC ROC#2 Sl#18 Ch#85 HDC pl#12 [X2] wire#102
+86, 6, 103         !TDC ROC#2 Sl#18 Ch#86 HDC pl#12 [X2] wire#103
+87, 6, 104         !TDC ROC#2 Sl#18 Ch#87 HDC pl#12 [X2] wire#104
+88, 6, 105         !TDC ROC#2 Sl#18 Ch#88 HDC pl#12 [X2] wire#105
+89, 6, 106         !TDC ROC#2 Sl#18 Ch#89 HDC pl#12 [X2] wire#106
+90, 6, 107         !TDC ROC#2 Sl#18 Ch#90 HDC pl#12 [X2] wire#107
+91, 6, 108         !TDC ROC#2 Sl#18 Ch#91 HDC pl#12 [X2] wire#108
+92, 6, 109         !TDC ROC#2 Sl#18 Ch#92 HDC pl#12 [X2] wire#109
+93, 6, 110         !TDC ROC#2 Sl#18 Ch#93 HDC pl#12 [X2] wire#110
+94, 6, 111         !TDC ROC#2 Sl#18 Ch#94 HDC pl#12 [X2] wire#111
+95, 6, 112         !TDC ROC#2 Sl#18 Ch#95 HDC pl#12 [X2] wire#112
+!
+!
+!   HMS upstairs (HSCIN+HCAL+HCER) map     K.B.Beard 13-Jun-1994
+!
+
+! ^^^^^^^^^^^^^^^^^^^^^ Wire chambers end here ^^^^^^^^^^^^^^^^^^^^^^
+!=============================================================================
+    ROC= 1               !upstairs HMS crate
+!
+    detector= 2 !HSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 23 ! TDC  
+  0, 1, 1, 2 !TDC ROC#1 Sl#23 Ch#0 HSCIN pl#1 [X1] id#1 sig#2 [TDC+] (0 X1P-01)
+  1, 1, 3, 2 !TDC ROC#1 Sl#23 Ch#1 HSCIN pl#1 [X1] id#3 sig#2 [TDC+] (1 X1P-03)
+  2, 1, 5, 2 !TDC ROC#1 Sl#23 Ch#2 HSCIN pl#1 [X1] id#5 sig#2 [TDC+] (2 X1P-05)
+  3, 1, 7, 2 !TDC ROC#1 Sl#23 Ch#3 HSCIN pl#1 [X1] id#7 sig#2 [TDC+] (3 X1P-07)
+  4, 1, 9, 2 !TDC ROC#1 Sl#23 Ch#4 HSCIN pl#1 [X1] id#9 sig#2 [TDC+] (4 X1P-09)
+  5, 1, 11, 2 !TDC ROC#1 Sl#23 Ch#5 HSCIN pl#1 [X1] id#11 sig#2 [TDC+] (5 X1P-11)
+  6, 1, 13, 2 !TDC ROC#1 Sl#23 Ch#6 HSCIN pl#1 [X1] id#13 sig#2 [TDC+] (6 X1P-13)
+  7, 1, 15, 2 !TDC ROC#1 Sl#23 Ch#7 HSCIN pl#1 [X1] id#15 sig#2 [TDC+] (7 X1P-15)
+  8, 1, 2, 2 !TDC ROC#1 Sl#23 Ch#8 HSCIN pl#1 [X1] id#2 sig#2 [TDC+] (8 X1P-02)
+  9, 1, 4, 2 !TDC ROC#1 Sl#23 Ch#9 HSCIN pl#1 [X1] id#4 sig#2 [TDC+] (9 X1P-04)
+  10, 1, 6, 2 !TDC ROC#1 Sl#23 Ch#10 HSCIN pl#1 [X1] id#6 sig#2 [TDC+] (10 X1P-06)
+  11, 1, 8, 2 !TDC ROC#1 Sl#23 Ch#11 HSCIN pl#1 [X1] id#8 sig#2 [TDC+] (11 X1P-08)
+  12, 1, 10, 2 !TDC ROC#1 Sl#23 Ch#12 HSCIN pl#1 [X1] id#10 sig#2 [TDC+] (12 X1P-10)
+  13, 1, 12, 2 !TDC ROC#1 Sl#23 Ch#13 HSCIN pl#1 [X1] id#12 sig#2 [TDC+] (13 X1P-12)
+  14, 1, 14, 2 !TDC ROC#1 Sl#23 Ch#14 HSCIN pl#1 [X1] id#14 sig#2 [TDC+] (14 X1P-14)
+  15, 1, 16, 2 !TDC ROC#1 Sl#23 Ch#15 HSCIN pl#1 [X1] id#16 sig#2 [TDC+] (15 X1P-16)
+  16, 1, 1, 3 !TDC ROC#1 Sl#23 Ch#16 HSCIN pl#1 [X1] id#1 sig#3 [TDC-] (16 X1N-01)
+  17, 1, 3, 3 !TDC ROC#1 Sl#23 Ch#17 HSCIN pl#1 [X1] id#3 sig#3 [TDC-] (17 X1N-03)
+  18, 1, 5, 3 !TDC ROC#1 Sl#23 Ch#18 HSCIN pl#1 [X1] id#5 sig#3 [TDC-] (18 X1N-05)
+  19, 1, 7, 3 !TDC ROC#1 Sl#23 Ch#19 HSCIN pl#1 [X1] id#7 sig#3 [TDC-] (19 X1N-07)
+  20, 1, 9, 3 !TDC ROC#1 Sl#23 Ch#20 HSCIN pl#1 [X1] id#9 sig#3 [TDC-] (20 X1N-09)
+  21, 1, 11, 3 !TDC ROC#1 Sl#23 Ch#21 HSCIN pl#1 [X1] id#11 sig#3 [TDC-] (21 X1N-11)
+  22, 1, 13, 3 !TDC ROC#1 Sl#23 Ch#22 HSCIN pl#1 [X1] id#13 sig#3 [TDC-] (22 X1N-13)
+  23, 1, 15, 3 !TDC ROC#1 Sl#23 Ch#23 HSCIN pl#1 [X1] id#15 sig#3 [TDC-] (23 X1N-15)
+  24, 1, 2, 3 !TDC ROC#1 Sl#23 Ch#24 HSCIN pl#1 [X1] id#2 sig#3 [TDC-] (24 X1N-02)
+  25, 1, 4, 3 !TDC ROC#1 Sl#23 Ch#25 HSCIN pl#1 [X1] id#4 sig#3 [TDC-] (25 X1N-04)
+  26, 1, 6, 3 !TDC ROC#1 Sl#23 Ch#26 HSCIN pl#1 [X1] id#6 sig#3 [TDC-] (26 X1N-06)
+  27, 1, 8, 3 !TDC ROC#1 Sl#23 Ch#27 HSCIN pl#1 [X1] id#8 sig#3 [TDC-] (27 X1N-08)
+  28, 1, 10, 3 !TDC ROC#1 Sl#23 Ch#28 HSCIN pl#1 [X1] id#10 sig#3 [TDC-] (28 X1N-10)
+  29, 1, 12, 3 !TDC ROC#1 Sl#23 Ch#29 HSCIN pl#1 [X1] id#12 sig#3 [TDC-] (29 X1N-12)
+  30, 1, 14, 3 !TDC ROC#1 Sl#23 Ch#30 HSCIN pl#1 [X1] id#14 sig#3 [TDC-] (30 X1N-14)
+  31, 1, 16, 3 !TDC ROC#1 Sl#23 Ch#31 HSCIN pl#1 [X1] id#16 sig#3 [TDC-] (31 X1N-16)
+  32, 2, 1, 2 !TDC ROC#1 Sl#23 Ch#32 HSCIN pl#2 [Y1] id#1 sig#2 [TDC+] (32 Y1P-01)
+  33, 2, 3, 2 !TDC ROC#1 Sl#23 Ch#33 HSCIN pl#2 [Y1] id#3 sig#2 [TDC+] (33 Y1P-03)
+  34, 2, 5, 2 !TDC ROC#1 Sl#23 Ch#34 HSCIN pl#2 [Y1] id#5 sig#2 [TDC+] (34 Y1P-05)
+  35, 2, 7, 2 !TDC ROC#1 Sl#23 Ch#35 HSCIN pl#2 [Y1] id#7 sig#2 [TDC+] (35 Y1P-07)
+  36, 2, 9, 2 !TDC ROC#1 Sl#23 Ch#36 HSCIN pl#2 [Y1] id#9 sig#2 [TDC+] (36 Y1P-09)
+!  37 !TDC ROC#1 Sl#23 Ch#37 unused
+!  38 !TDC ROC#1 Sl#23 Ch#38 unused
+!  39 !TDC ROC#1 Sl#23 Ch#39 unused
+!!!  40, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+  41, 2, 4, 2 !TDC ROC#1 Sl#23 Ch#41 HSCIN pl#2 [Y1] id#4 sig#2 [TDC+] (41 Y1P-04)
+  42, 2, 6, 2 !TDC ROC#1 Sl#23 Ch#42 HSCIN pl#2 [Y1] id#6 sig#2 [TDC+] (42 Y1P-06)
+  43, 2, 8, 2 !TDC ROC#1 Sl#23 Ch#43 HSCIN pl#2 [Y1] id#8 sig#2 [TDC+] (43 Y1P-08)
+  44, 2, 10, 2 !TDC ROC#1 Sl#23 Ch#44 HSCIN pl#2 [Y1] id#10 sig#2 [TDC+] (44 Y1P-10)
+  45, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#45 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (45 Y1P-02)
+!   h1y2+ was moved from channel 47 to 45 on 1/29/1999
+!  46 !TDC ROC#1 Sl#23 Ch#46 unused
+!  47, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+!   h1y2+ was moved from channel 40 to 47 at run 6168
+  48, 2, 1, 3 !TDC ROC#1 Sl#23 Ch#48 HSCIN pl#2 [Y1] id#1 sig#3 [TDC-] (48 Y1N-01)
+  49, 2, 3, 3 !TDC ROC#1 Sl#23 Ch#49 HSCIN pl#2 [Y1] id#3 sig#3 [TDC-] (49 Y1N-03)
+  50, 2, 5, 3 !TDC ROC#1 Sl#23 Ch#50 HSCIN pl#2 [Y1] id#5 sig#3 [TDC-] (50 Y1N-05)
+  51, 2, 7, 3 !TDC ROC#1 Sl#23 Ch#51 HSCIN pl#2 [Y1] id#7 sig#3 [TDC-] (51 Y1N-07)
+  52, 2, 9, 3 !TDC ROC#1 Sl#23 Ch#52 HSCIN pl#2 [Y1] id#9 sig#3 [TDC-] (52 Y1N-09)
+!  53 !TDC ROC#1 Sl#23 Ch#53 unused
+!  54 !TDC ROC#1 Sl#23 Ch#54 unused
+!  55 !TDC ROC#1 Sl#23 Ch#55 unused
+  56, 2, 2, 3 !TDC ROC#1 Sl#23 Ch#56 HSCIN pl#2 [Y1] id#2 sig#3 [TDC-] (56 Y1N-02)
+  57, 2, 4, 3 !TDC ROC#1 Sl#23 Ch#57 HSCIN pl#2 [Y1] id#4 sig#3 [TDC-] (57 Y1N-04)
+  58, 2, 6, 3 !TDC ROC#1 Sl#23 Ch#58 HSCIN pl#2 [Y1] id#6 sig#3 [TDC-] (58 Y1N-06)
+  59, 2, 8, 3 !TDC ROC#1 Sl#23 Ch#59 HSCIN pl#2 [Y1] id#8 sig#3 [TDC-] (59 Y1N-08)
+!  60, 2, 10, 3 !TDC ROC#1 Sl#23 Ch#60 HSCIN pl#2 [Y1] id#10 sig#3 [TDC-] (60 Y1N-10)
+  61 , 2, 10, 3 !TDC ROC#1 Sl#23 Ch#61 swap location for h1y10-
+!  62 !TDC ROC#1 Sl#23 Ch#62 unused
+!  63 !TDC ROC#1 Sl#23 Ch#63 unused
+!
+ Slot= 21 ! TDC  
+! 
+  0, 3, 1, 2 !TDC ROC#1 Sl#21 Ch#0 HSCIN pl#3 [X2] id#1 sig#2 [TDC+] (0 X2P-01)
+  1, 3, 3, 2 !TDC ROC#1 Sl#21 Ch#1 HSCIN pl#3 [X2] id#3 sig#2 [TDC+] (1 X2P-03)
+  2, 3, 5, 2 !TDC ROC#1 Sl#21 Ch#2 HSCIN pl#3 [X2] id#5 sig#2 [TDC+] (2 X2P-05)
+  3, 3, 7, 2 !TDC ROC#1 Sl#21 Ch#3 HSCIN pl#3 [X2] id#7 sig#2 [TDC+] (3 X2P-07)
+  4, 3, 9, 2 !TDC ROC#1 Sl#21 Ch#4 HSCIN pl#3 [X2] id#9 sig#2 [TDC+] (4 X2P-09)
+  5, 3, 11, 2 !TDC ROC#1 Sl#21 Ch#5 HSCIN pl#3 [X2] id#11 sig#2 [TDC+] (5 X2P-11)
+  6, 3, 13, 2 !TDC ROC#1 Sl#21 Ch#6 HSCIN pl#3 [X2] id#13 sig#2 [TDC+] (6 X2P-13)
+  7, 3, 15, 2 !TDC ROC#1 Sl#21 Ch#7 HSCIN pl#3 [X2] id#15 sig#2 [TDC+] (7 X2P-15)
+!
+  8, 3, 2, 2 !TDC ROC#1 Sl#21 Ch#8 HSCIN pl#3 [X2] id#2 sig#2 [TDC+] (8 X2P-02)
+  9, 3, 4, 2 !TDC ROC#1 Sl#21 Ch#9 HSCIN pl#3 [X2] id#4 sig#2 [TDC+] (9 X2P-04)
+  10, 3, 6, 2 !TDC ROC#1 Sl#21 Ch#10 HSCIN pl#3 [X2] id#6 sig#2 [TDC+] (10 X2P-06)
+  11, 3, 8, 2 !TDC ROC#1 Sl#21 Ch#11 HSCIN pl#3 [X2] id#8 sig#2 [TDC+] (11 X2P-08)
+  12, 3, 10, 2 !TDC ROC#1 Sl#21 Ch#12 HSCIN pl#3 [X2] id#10 sig#2 [TDC+] (12 X2P-10)
+  13, 3, 12, 2 !TDC ROC#1 Sl#21 Ch#13 HSCIN pl#3 [X2] id#12 sig#2 [TDC+] (13 X2P-12)
+  14, 3, 14, 2 !TDC ROC#1 Sl#21 Ch#14 HSCIN pl#3 [X2] id#14 sig#2 [TDC+] (14 X2P-14)
+  15, 3, 16, 2 !TDC ROC#1 Sl#21 Ch#15 HSCIN pl#3 [X2] id#16 sig#2 [TDC+] (15 X2P-16)
+!
+! swapped s2x- with s2y+
+!
+  16, 4, 1, 2 !TDC ROC#1 Sl#21 Ch#32 HSCIN pl#4 [Y2] id#1 sig#2 [TDC+] (32 Y2P-01)
+  17, 4, 3, 2 !TDC ROC#1 Sl#21 Ch#33 HSCIN pl#4 [Y2] id#3 sig#2 [TDC+] (33 Y2P-03)
+  18, 4, 5, 2 !TDC ROC#1 Sl#21 Ch#34 HSCIN pl#4 [Y2] id#5 sig#2 [TDC+] (34 Y2P-05)
+  19, 4, 7, 2 !TDC ROC#1 Sl#21 Ch#35 HSCIN pl#4 [Y2] id#7 sig#2 [TDC+] (35 Y2P-07)
+  20, 4, 9, 2 !TDC ROC#1 Sl#21 Ch#36 HSCIN pl#4 [Y2] id#9 sig#2 [TDC+] (36 Y2P-09)
+!  21 !TDC ROC#1 Sl#21 Ch#37 unused
+!  22 !TDC ROC#1 Sl#21 Ch#38 unused
+!  23 !TDC ROC#1 Sl#21 Ch#39 unused
+  24, 4, 2, 2 !TDC ROC#1 Sl#21 Ch#40 HSCIN pl#4 [Y2] id#2 sig#2 [TDC+] (40 Y2P-02)
+  25, 4, 4, 2 !TDC ROC#1 Sl#21 Ch#41 HSCIN pl#4 [Y2] id#4 sig#2 [TDC+] (41 Y2P-04)
+  26, 4, 6, 2 !TDC ROC#1 Sl#21 Ch#42 HSCIN pl#4 [Y2] id#6 sig#2 [TDC+] (42 Y2P-06)
+  27, 4, 8, 2 !TDC ROC#1 Sl#21 Ch#43 HSCIN pl#4 [Y2] id#8 sig#2 [TDC+] (43 Y2P-08)
+  28, 4, 10, 2 !TDC ROC#1 Sl#21 Ch#44 HSCIN pl#4 [Y2] id#10 sig#2 [TDC+] (44 Y2P-10)
+!  29 !TDC ROC#1 Sl#21 Ch#45 unused
+!  30 !TDC ROC#1 Sl#21 Ch#46 unused
+!  31 !TDC ROC#1 Sl#21 Ch#47 unused
+!
+  32, 3, 1, 3 !TDC ROC#1 Sl#21 Ch#16 HSCIN pl#3 [X2] id#1 sig#3 [TDC-] (16 X2N-01)
+  33, 3, 3, 3 !TDC ROC#1 Sl#21 Ch#17 HSCIN pl#3 [X2] id#3 sig#3 [TDC-] (17 X2N-03)
+  34, 3, 5, 3 !TDC ROC#1 Sl#21 Ch#18 HSCIN pl#3 [X2] id#5 sig#3 [TDC-] (18 X2N-05)
+  35, 3, 7, 3 !TDC ROC#1 Sl#21 Ch#19 HSCIN pl#3 [X2] id#7 sig#3 [TDC-] (19 X2N-07)
+  36, 3, 9, 3 !TDC ROC#1 Sl#21 Ch#20 HSCIN pl#3 [X2] id#9 sig#3 [TDC-] (20 X2N-09)
+  37, 3, 11, 3 !TDC ROC#1 Sl#21 Ch#21 HSCIN pl#3 [X2] id#11 sig#3 [TDC-] (21 X2N-11)
+  38, 3, 13, 3 !TDC ROC#1 Sl#21 Ch#22 HSCIN pl#3 [X2] id#13 sig#3 [TDC-] (22 X2N-13)
+  39, 3, 15, 3 !TDC ROC#1 Sl#21 Ch#23 HSCIN pl#3 [X2] id#15 sig#3 [TDC-] (23 X2N-15)
+!
+  40, 3, 2, 3 !TDC ROC#1 Sl#21 Ch#24 HSCIN pl#3 [X2] id#2 sig#3 [TDC-] (24 X2N-02)
+  41, 3, 4, 3 !TDC ROC#1 Sl#21 Ch#25 HSCIN pl#3 [X2] id#4 sig#3 [TDC-] (25 X2N-04)
+  42, 3, 6, 3 !TDC ROC#1 Sl#21 Ch#26 HSCIN pl#3 [X2] id#6 sig#3 [TDC-] (26 X2N-06)
+  43, 3, 8, 3 !TDC ROC#1 Sl#21 Ch#27 HSCIN pl#3 [X2] id#8 sig#3 [TDC-] (27 X2N-08)
+  44, 3, 10, 3 !TDC ROC#1 Sl#21 Ch#28 HSCIN pl#3 [X2] id#10 sig#3 [TDC-] (28 X2N-10)
+  45, 3, 12, 3 !TDC ROC#1 Sl#21 Ch#29 HSCIN pl#3 [X2] id#12 sig#3 [TDC-] (29 X2N-12)
+  46, 3, 14, 3 !TDC ROC#1 Sl#21 Ch#30 HSCIN pl#3 [X2] id#14 sig#3 [TDC-] (30 X2N-14)
+  47, 3, 16, 3 !TDC ROC#1 Sl#21 Ch#31 HSCIN pl#3 [X2] id#16 sig#3 [TDC-] (31 X2N-16)
+!
+  48, 4, 1, 3 !TDC ROC#1 Sl#21 Ch#48 HSCIN pl#4 [Y2] id#1 sig#3 [TDC-] (48 Y2N-01)
+  49, 4, 3, 3 !TDC ROC#1 Sl#21 Ch#49 HSCIN pl#4 [Y2] id#3 sig#3 [TDC-] (49 Y2N-03)
+  50, 4, 5, 3 !TDC ROC#1 Sl#21 Ch#50 HSCIN pl#4 [Y2] id#5 sig#3 [TDC-] (50 Y2N-05)
+  51, 4, 7, 3 !TDC ROC#1 Sl#21 Ch#51 HSCIN pl#4 [Y2] id#7 sig#3 [TDC-] (51 Y2N-07)
+  52, 4, 9, 3 !TDC ROC#1 Sl#21 Ch#52 HSCIN pl#4 [Y2] id#9 sig#3 [TDC-] (52 Y2N-09)
+!  53 !TDC ROC#1 Sl#21 Ch#53 unused
+!  54 !TDC ROC#1 Sl#21 Ch#54 unused
+!  55 !TDC ROC#1 Sl#21 Ch#55 unused
+  56, 4, 2, 3 !TDC ROC#1 Sl#21 Ch#56 HSCIN pl#4 [Y2] id#2 sig#3 [TDC-] (56 Y2N-02)
+  57, 4, 4, 3 !TDC ROC#1 Sl#21 Ch#57 HSCIN pl#4 [Y2] id#4 sig#3 [TDC-] (57 Y2N-04)
+  58, 4, 6, 3 !TDC ROC#1 Sl#21 Ch#58 HSCIN pl#4 [Y2] id#6 sig#3 [TDC-] (58 Y2N-06)
+  59, 4, 8, 3 !TDC ROC#1 Sl#21 Ch#59 HSCIN pl#4 [Y2] id#8 sig#3 [TDC-] (59 Y2N-08)
+  60, 4, 10, 3 !TDC ROC#1 Sl#21 Ch#60 HSCIN pl#4 [Y2] id#10 sig#3 [TDC-] (60 Y2N-10)
+!  61 !TDC ROC#1 Sl#21 Ch#61 unused
+!  62 !TDC ROC#1 Sl#21 Ch#62 unused
+!  63 !TDC ROC#1 Sl#21 Ch#63 unused
+!
+!!!======================================================================
+    detector= 5 !HMISC
+
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 19 ! TDC  
+
+0, 1, 1, 0  ! 0 !TDC ROC#1 Sl#19 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#1 Sl#19 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#1 Sl#19 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#1 Sl#19 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#1 Sl#19 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#1 Sl#19 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#1 Sl#19 Ch#6 empty
+7, 1, 8, 0  ! 7 !TDC ROC#1 Sl#19 Ch#7 unused
+8, 1, 9, 0  ! 8 !TDC ROC#1 Sl#19 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#1 Sl#19 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#1 Sl#19 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#1 Sl#19 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#1 Sl#19 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#1 Sl#19 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#1 Sl#19 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#1 Sl#19 Ch#15 signal {PEDTRG}
+16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 signal {hS1}                       
+17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 signal {hPRE50}                    
+18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 signal {hS2X}                      
+19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 signal {hPRE150}                   
+20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 signal {hS1X}                      
+21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 signal {hS2Y}                      
+22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 signal {hPRE100}                   
+23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 signal {hS1Y}                      
+24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 signal {hS2}                       
+25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 signal {hCERHI}                   
+26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 signal {hSTOF}                     
+27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 signal {hSCIN}                     
+28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 signal {hELREAL}                   
+29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 signal {hPIPRE}                    
+30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 signal {hELCLEAN}                  
+31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 signal {hPRETRG}                   
+32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 signal {PION}                      
+33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 signal {CER}                       
+34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 signal {hPIONHI}                  
+35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 signal {hPRE200}                  
+36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 signal {??}                        
+37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 signal {UNSER}                     
+38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 signal {BCM1}                      
+39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 signal {BCM2}                      
+40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 signal {hELHI}                     
+41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 signal {hELLO}                     
+42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 signal {hPRHI}                     
+43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 signal {hPRLO}                     
+44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 signal {hSHLO}                     
+45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 signal {CLOCK}                     
+46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 signal {BEAMGATES}                 
+47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 signal {hADCGATES ? PEDS and TRIGS}
+48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 RF no delay
+49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 RF + 10 ns
+53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!
+!=============================================================================
+!                     AEROGEL TDC
+!..............................................................................
+! For aerogel: 0-->ADC_POS
+!	       1-->ADC_NEG
+!              2-->TDC_POS      ! Check one more time (Hamlet, 2002/10/01)
+!              3-->TDC_NEG
+
+    detector= 7 ! Temporary for HAERO
+
+!       TDC module LeCroy 1872a
+
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!!
+! S. Wood have problem to read additional TDC in Slot =18 (2002/10/18, Hamlet)
+!
+! For now I will use some other tdc channels for Aerogel
+!.......................>
+!
+ Slot= 18 ! TDC channels for HMS Aero 
+! Changed May 5, 2003 DJG
+!
+!
+! Slot= 18 !TDC
+!
+! TDC chan  for aerogel (Hamlet, 2002/10/17)
+!
+0, 1, 1, 2 !TDC ROC#1 Sl#18 Ch#0  signal pos 1
+1, 1, 2, 2 !TDC ROC#1 Sl#18 Ch#1  signal pos 2
+2, 1, 3, 2 !TDC ROC#1 Sl#18 Ch#2  signal pos 3
+3, 1, 4, 2 !TDC ROC#1 Sl#18 Ch#3  signal pos 4
+4, 1, 5, 2 !TDC ROC#1 Sl#18 Ch#4  signal pos 5
+5, 1, 6, 2 !TDC ROC#1 Sl#18 Ch#5  signal pos 6
+6, 1, 7, 2 !TDC ROC#1 Sl#18 Ch#6  signal pos 7
+7, 1, 8, 2 !TDC ROC#1 Sl#18 Ch#7  signal pos 8
+8, 1, 1, 3 !TDC ROC#1 Sl#18 Ch#8  signal neg 1
+9, 1, 2, 3 !TDC ROC#1 Sl#18 Ch#9  signal neg 2
+10, 1, 3, 3 !TDC ROC#1 Sl#18 Ch#10  signal neg 3
+11, 1, 4, 3 !TDC ROC#1 Sl#18 Ch#11  signal neg 4
+12, 1, 5, 3 !TDC ROC#1 Sl#18 Ch#12  signal neg 5
+13, 1, 6, 3 !TDC ROC#1 Sl#18 Ch#13  signal neg 6
+14, 1, 7, 3 !TDC ROC#1 Sl#18 Ch#14  signal neg 7
+15, 1, 8, 3 !TDC ROC#1 Sl#18 Ch#15  signal neg 8
+!!
+!16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 unused
+!17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 unused
+!18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 unused
+!19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 unused
+!20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 unused
+!21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 unused
+!22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 unused
+!23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 unused
+!24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 unused
+!25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 unused
+!26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 unused
+!27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 unused
+!28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 unused
+!29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 unused
+!30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 unused
+!31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 unused
+!32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 unused
+!33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 unused
+!34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 unused
+!35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 unused
+!36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 unused
+!37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 unused
+!38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 unused
+!39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 unused
+!40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 unused
+!41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 unused
+!42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 unused
+!43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 unused
+!44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 unused 
+!45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 unused 
+!46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 unused 
+!47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 unused 
+!48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 unused
+!49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+!50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+!51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+!52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 unused
+!53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+!54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+!55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+!56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+!57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+!58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+!59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+!60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+!61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+!62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+!63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!=============================================================================
+!       ADC module LeCroy 1881M
+    detector = 2
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#1 Sl#9 Ch#0 HSCIN pl#1 [X1] id#1 sig#0 [ADC+] (0 X1P-01)
+  1, 1, 3, 0 !ADC ROC#1 Sl#9 Ch#1 HSCIN pl#1 [X1] id#3 sig#0 [ADC+] (1 X1P-03)
+  2, 1, 5, 0 !ADC ROC#1 Sl#9 Ch#2 HSCIN pl#1 [X1] id#5 sig#0 [ADC+] (2 X1P-05)
+  3, 1, 7, 0 !ADC ROC#1 Sl#9 Ch#3 HSCIN pl#1 [X1] id#7 sig#0 [ADC+] (3 X1P-07)
+  4, 1, 9, 0 !ADC ROC#1 Sl#9 Ch#4 HSCIN pl#1 [X1] id#9 sig#0 [ADC+] (4 X1P-09)
+  5, 1, 11, 0 !ADC ROC#1 Sl#9 Ch#5 HSCIN pl#1 [X1] id#11 sig#0 [ADC+] (5 X1P-11)
+  6, 1, 13, 0 !ADC ROC#1 Sl#9 Ch#6 HSCIN pl#1 [X1] id#13 sig#0 [ADC+] (6 X1P-13)
+  7, 1, 15, 0 !ADC ROC#1 Sl#9 Ch#7 HSCIN pl#1 [X1] id#15 sig#0 [ADC+] (7 X1P-15)
+  8, 1, 2, 0 !ADC ROC#1 Sl#9 Ch#8 HSCIN pl#1 [X1] id#2 sig#0 [ADC+] (8 X1P-02)
+  9, 1, 4, 0 !ADC ROC#1 Sl#9 Ch#9 HSCIN pl#1 [X1] id#4 sig#0 [ADC+] (9 X1P-04)
+  10, 1, 6, 0 !ADC ROC#1 Sl#9 Ch#10 HSCIN pl#1 [X1] id#6 sig#0 [ADC+] (10 X1P-06)
+  11, 1, 8, 0 !ADC ROC#1 Sl#9 Ch#11 HSCIN pl#1 [X1] id#8 sig#0 [ADC+] (11 X1P-08)
+  12, 1, 10, 0 !ADC ROC#1 Sl#9 Ch#12 HSCIN pl#1 [X1] id#10 sig#0 [ADC+] (12 X1P-10)
+  13, 1, 12, 0 !ADC ROC#1 Sl#9 Ch#13 HSCIN pl#1 [X1] id#12 sig#0 [ADC+] (13 X1P-12)
+  14, 1, 14, 0 !ADC ROC#1 Sl#9 Ch#14 HSCIN pl#1 [X1] id#14 sig#0 [ADC+] (14 X1P-14)
+  15, 1, 16, 0 !ADC ROC#1 Sl#9 Ch#15 HSCIN pl#1 [X1] id#16 sig#0 [ADC+] (15 X1P-16)
+!
+  16, 1, 1, 1 !ADC ROC#1 Sl#9 Ch#16 HSCIN pl#1 [X1] id#1 sig#1 [ADC-] (16 X1N-01)
+  17, 1, 3, 1 !ADC ROC#1 Sl#9 Ch#17 HSCIN pl#1 [X1] id#3 sig#1 [ADC-] (17 X1N-03)
+  18, 1, 5, 1 !ADC ROC#1 Sl#9 Ch#18 HSCIN pl#1 [X1] id#5 sig#1 [ADC-] (18 X1N-05)
+  19, 1, 7, 1 !ADC ROC#1 Sl#9 Ch#19 HSCIN pl#1 [X1] id#7 sig#1 [ADC-] (19 X1N-07)
+  20, 1, 9, 1 !ADC ROC#1 Sl#9 Ch#20 HSCIN pl#1 [X1] id#9 sig#1 [ADC-] (20 X1N-09)
+  21, 1, 11, 1 !ADC ROC#1 Sl#9 Ch#21 HSCIN pl#1 [X1] id#11 sig#1 [ADC-] (21 X1N-11)
+  22, 1, 13, 1 !ADC ROC#1 Sl#9 Ch#22 HSCIN pl#1 [X1] id#13 sig#1 [ADC-] (22 X1N-13)
+  23, 1, 15, 1 !ADC ROC#1 Sl#9 Ch#23 HSCIN pl#1 [X1] id#15 sig#1 [ADC-] (23 X1N-15)
+  24, 1, 2, 1 !ADC ROC#1 Sl#9 Ch#24 HSCIN pl#1 [X1] id#2 sig#1 [ADC-] (24 X1N-02)
+  25, 1, 4, 1 !ADC ROC#1 Sl#9 Ch#25 HSCIN pl#1 [X1] id#4 sig#1 [ADC-] (25 X1N-04)
+  26, 1, 6, 1 !ADC ROC#1 Sl#9 Ch#26 HSCIN pl#1 [X1] id#6 sig#1 [ADC-] (26 X1N-06)
+  27, 1, 8, 1 !ADC ROC#1 Sl#9 Ch#27 HSCIN pl#1 [X1] id#8 sig#1 [ADC-] (27 X1N-08)
+  28, 1, 10, 1 !ADC ROC#1 Sl#9 Ch#28 HSCIN pl#1 [X1] id#10 sig#1 [ADC-] (28 X1N-10)
+  29, 1, 12, 1 !ADC ROC#1 Sl#9 Ch#29 HSCIN pl#1 [X1] id#12 sig#1 [ADC-] (29 X1N-12)
+  30, 1, 14, 1 !ADC ROC#1 Sl#9 Ch#30 HSCIN pl#1 [X1] id#14 sig#1 [ADC-] (30 X1N-14)
+  31, 1, 16, 1 !ADC ROC#1 Sl#9 Ch#31 HSCIN pl#1 [X1] id#16 sig#1 [ADC-] (31 X1N-16)
+! 
+  32, 2, 1, 0 !ADC ROC#1 Sl#9 Ch#32 HSCIN pl#2 [Y1] id#1 sig#0 [ADC+] (32 Y1P-01)
+  33, 2, 3, 0 !ADC ROC#1 Sl#9 Ch#33 HSCIN pl#2 [Y1] id#3 sig#0 [ADC+] (33 Y1P-03)
+  34, 2, 5, 0 !ADC ROC#1 Sl#9 Ch#34 HSCIN pl#2 [Y1] id#5 sig#0 [ADC+] (34 Y1P-05)
+  35, 2, 7, 0 !ADC ROC#1 Sl#9 Ch#35 HSCIN pl#2 [Y1] id#7 sig#0 [ADC+] (35 Y1P-07)
+  36, 2, 9, 0 !ADC ROC#1 Sl#9 Ch#36 HSCIN pl#2 [Y1] id#9 sig#0 [ADC+] (36 Y1P-09)
+!  37 !ADC ROC#1 Sl#9 Ch#37 unused
+!  38 !ADC ROC#1 Sl#9 Ch#38 unused
+!  39 !ADC ROC#1 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#1 Sl#9 Ch#40 HSCIN pl#2 [Y1] id#2 sig#0 [ADC+] (40 Y1P-02)
+  41, 2, 4, 0 !ADC ROC#1 Sl#9 Ch#41 HSCIN pl#2 [Y1] id#4 sig#0 [ADC+] (41 Y1P-04)
+  42, 2, 6, 0 !ADC ROC#1 Sl#9 Ch#42 HSCIN pl#2 [Y1] id#6 sig#0 [ADC+] (42 Y1P-06)
+  43, 2, 8, 0 !ADC ROC#1 Sl#9 Ch#43 HSCIN pl#2 [Y1] id#8 sig#0 [ADC+] (43 Y1P-08)
+  44, 2, 10, 0 !ADC ROC#1 Sl#9 Ch#44 HSCIN pl#2 [Y1] id#10 sig#0 [ADC+] (44 Y1P-10)
+!  45 !ADC ROC#1 Sl#9 Ch#45 unused
+!  46 !ADC ROC#1 Sl#9 Ch#46 unused
+!  47 !ADC ROC#1 Sl#9 Ch#47 unused
+!
+  48, 2, 1, 1 !ADC ROC#1 Sl#9 Ch#48 HSCIN pl#2 [Y1] id#1 sig#1 [ADC-] (48 Y1N-01)
+  49, 2, 3, 1 !ADC ROC#1 Sl#9 Ch#49 HSCIN pl#2 [Y1] id#3 sig#1 [ADC-] (49 Y1N-03)
+  50, 2, 5, 1 !ADC ROC#1 Sl#9 Ch#50 HSCIN pl#2 [Y1] id#5 sig#1 [ADC-] (50 Y1N-05)
+  51, 2, 7, 1 !ADC ROC#1 Sl#9 Ch#51 HSCIN pl#2 [Y1] id#7 sig#1 [ADC-] (51 Y1N-07)
+  52, 2, 9, 1 !ADC ROC#1 Sl#9 Ch#52 HSCIN pl#2 [Y1] id#9 sig#1 [ADC-] (52 Y1N-09)
+!  53 !ADC ROC#1 Sl#9 Ch#53 unused
+!  54 !ADC ROC#1 Sl#9 Ch#54 unused
+!  55 !ADC ROC#1 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#1 Sl#9 Ch#56 HSCIN pl#2 [Y1] id#2 sig#1 [ADC-] (56 Y1N-02)
+  57, 2, 4, 1 !ADC ROC#1 Sl#9 Ch#57 HSCIN pl#2 [Y1] id#4 sig#1 [ADC-] (57 Y1N-04)
+  58, 2, 6, 1 !ADC ROC#1 Sl#9 Ch#58 HSCIN pl#2 [Y1] id#6 sig#1 [ADC-] (58 Y1N-06)
+  59, 2, 8, 1 !ADC ROC#1 Sl#9 Ch#59 HSCIN pl#2 [Y1] id#8 sig#1 [ADC-] (59 Y1N-08)
+  60, 2, 10, 1 !ADC ROC#1 Sl#9 Ch#60 HSCIN pl#2 [Y1] id#10 sig#1 [ADC-] (60 Y1N-10)
+!  61 !ADC ROC#1 Sl#9 Ch#62 unused
+!  62 !ADC ROC#1 Sl#9 Ch#62 unused
+!  63 !ADC ROC#1 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#1 Sl#7 Ch#0 HSCIN pl#3 [X2] id#1 sig#0 [ADC+] (0 X2P-01)
+  1, 3, 3, 0 !ADC ROC#1 Sl#7 Ch#1 HSCIN pl#3 [X2] id#3 sig#0 [ADC+] (1 X2P-03)
+  2, 3, 5, 0 !ADC ROC#1 Sl#7 Ch#2 HSCIN pl#3 [X2] id#5 sig#0 [ADC+] (2 X2P-05)
+  3, 3, 7, 0 !ADC ROC#1 Sl#7 Ch#3 HSCIN pl#3 [X2] id#7 sig#0 [ADC+] (3 X2P-07)
+  4, 3, 9, 0 !ADC ROC#1 Sl#7 Ch#4 HSCIN pl#3 [X2] id#9 sig#0 [ADC+] (4 X2P-09)
+  5, 3, 11, 0 !ADC ROC#1 Sl#7 Ch#5 HSCIN pl#3 [X2] id#11 sig#0 [ADC+] (5 X2P-11)
+  6, 3, 13, 0 !ADC ROC#1 Sl#7 Ch#6 HSCIN pl#3 [X2] id#13 sig#0 [ADC+] (6 X2P-13)
+  7, 3, 15, 0 !ADC ROC#1 Sl#7 Ch#7 HSCIN pl#3 [X2] id#15 sig#0 [ADC+] (7 X2P-15)
+  8, 3, 2, 0 !ADC ROC#1 Sl#7 Ch#8 HSCIN pl#3 [X2] id#2 sig#0 [ADC+] (8 X2P-02)
+  9, 3, 4, 0 !ADC ROC#1 Sl#7 Ch#9 HSCIN pl#3 [X2] id#4 sig#0 [ADC+] (9 X2P-04)
+  10, 3, 6, 0 !ADC ROC#1 Sl#7 Ch#10 HSCIN pl#3 [X2] id#6 sig#0 [ADC+] (10 X2P-06)
+  11, 3, 8, 0 !ADC ROC#1 Sl#7 Ch#11 HSCIN pl#3 [X2] id#8 sig#0 [ADC+] (11 X2P-08)
+  12, 3, 10, 0 !ADC ROC#1 Sl#7 Ch#12 HSCIN pl#3 [X2] id#10 sig#0 [ADC+] (12 X2P-10)
+  13, 3, 12, 0 !ADC ROC#1 Sl#7 Ch#13 HSCIN pl#3 [X2] id#12 sig#0 [ADC+] (13 X2P-12)
+  14, 3, 14, 0 !ADC ROC#1 Sl#7 Ch#14 HSCIN pl#3 [X2] id#14 sig#0 [ADC+] (14 X2P-14)
+  15, 3, 16, 0 !ADC ROC#1 Sl#7 Ch#15 HSCIN pl#3 [X2] id#16 sig#0 [ADC+] (15 X2P-16)
+! 
+  16, 3, 1, 1 !ADC ROC#1 Sl#7 Ch#16 HSCIN pl#3 [X2] id#1 sig#1 [ADC-] (16 X2N-01)
+  17, 3, 3, 1 !ADC ROC#1 Sl#7 Ch#17 HSCIN pl#3 [X2] id#3 sig#1 [ADC-] (17 X2N-03)
+  18, 3, 5, 1 !ADC ROC#1 Sl#7 Ch#18 HSCIN pl#3 [X2] id#5 sig#1 [ADC-] (18 X2N-05)
+  19, 3, 7, 1 !ADC ROC#1 Sl#7 Ch#19 HSCIN pl#3 [X2] id#7 sig#1 [ADC-] (19 X2N-07)
+  20, 3, 9, 1 !ADC ROC#1 Sl#7 Ch#20 HSCIN pl#3 [X2] id#9 sig#1 [ADC-] (20 X2N-09)
+  21, 3, 11, 1 !ADC ROC#1 Sl#7 Ch#21 HSCIN pl#3 [X2] id#11 sig#1 [ADC-] (21 X2N-11)
+  22, 3, 13, 1 !ADC ROC#1 Sl#7 Ch#22 HSCIN pl#3 [X2] id#13 sig#1 [ADC-] (22 X2N-13)
+  23, 3, 15, 1 !ADC ROC#1 Sl#7 Ch#23 HSCIN pl#3 [X2] id#15 sig#1 [ADC-] (23 X2N-15)
+!
+  24, 3, 2, 1 !ADC ROC#1 Sl#7 Ch#24 HSCIN pl#3 [X2] id#2 sig#1 [ADC-] (24 X2N-02)
+  25, 3, 4, 1 !ADC ROC#1 Sl#7 Ch#25 HSCIN pl#3 [X2] id#4 sig#1 [ADC-] (25 X2N-04)
+  26, 3, 6, 1 !ADC ROC#1 Sl#7 Ch#26 HSCIN pl#3 [X2] id#6 sig#1 [ADC-] (26 X2N-06)
+  27, 3, 8, 1 !ADC ROC#1 Sl#7 Ch#27 HSCIN pl#3 [X2] id#8 sig#1 [ADC-] (27 X2N-08)
+  28, 3, 10, 1 !ADC ROC#1 Sl#7 Ch#28 HSCIN pl#3 [X2] id#10 sig#1 [ADC-] (28 X2N-10)
+  29, 3, 12, 1 !ADC ROC#1 Sl#7 Ch#29 HSCIN pl#3 [X2] id#12 sig#1 [ADC-] (29 X2N-12)
+  30, 3, 14, 1 !ADC ROC#1 Sl#7 Ch#30 HSCIN pl#3 [X2] id#14 sig#1 [ADC-] (30 X2N-14)
+  31, 3, 16, 1 !ADC ROC#1 Sl#7 Ch#31 HSCIN pl#3 [X2] id#16 sig#1 [ADC-] (31 X2N-16)
+  32, 4, 1, 0 !ADC ROC#1 Sl#7 Ch#32 HSCIN pl#4 [Y2] id#1 sig#0 [ADC+] (32 Y2P-01)
+  33, 4, 3, 0 !ADC ROC#1 Sl#7 Ch#33 HSCIN pl#4 [Y2] id#3 sig#0 [ADC+] (33 Y2P-03)
+  34, 4, 5, 0 !ADC ROC#1 Sl#7 Ch#34 HSCIN pl#4 [Y2] id#5 sig#0 [ADC+] (34 Y2P-05)
+  35, 4, 7, 0 !ADC ROC#1 Sl#7 Ch#35 HSCIN pl#4 [Y2] id#7 sig#0 [ADC+] (35 Y2P-07)
+  36, 4, 9, 0 !ADC ROC#1 Sl#7 Ch#36 HSCIN pl#4 [Y2] id#9 sig#0 [ADC+] (36 Y2P-09)
+!  37 !ADC ROC#1 Sl#7 Ch#37 unused
+!  38 !ADC ROC#1 Sl#7 Ch#38 unused
+!  39 !ADC ROC#1 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#1 Sl#7 Ch#40 HSCIN pl#4 [Y2] id#2 sig#0 [ADC+] (40 Y2P-02)
+  41, 4, 4, 0 !ADC ROC#1 Sl#7 Ch#41 HSCIN pl#4 [Y2] id#4 sig#0 [ADC+] (41 Y2P-04)
+  42, 4, 6, 0 !ADC ROC#1 Sl#7 Ch#42 HSCIN pl#4 [Y2] id#6 sig#0 [ADC+] (42 Y2P-06)
+  43, 4, 8, 0 !ADC ROC#1 Sl#7 Ch#43 HSCIN pl#4 [Y2] id#8 sig#0 [ADC+] (43 Y2P-08)
+  44, 4, 10, 0 !ADC ROC#1 Sl#7 Ch#44 HSCIN pl#4 [Y2] id#10 sig#0 [ADC+] (44 Y2P-10)
+!  45 !ADC ROC#1 Sl#7 Ch#45 unused
+!  46 !ADC ROC#1 Sl#7 Ch#46 unused
+!  47 !ADC ROC#1 Sl#7 Ch#47 unused
+  48, 4, 1, 1 !ADC ROC#1 Sl#7 Ch#48 HSCIN pl#4 [Y2] id#1 sig#1 [ADC-] (48 Y2N-01)
+  49, 4, 3, 1 !ADC ROC#1 Sl#7 Ch#49 HSCIN pl#4 [Y2] id#3 sig#1 [ADC-] (49 Y2N-03)
+  50, 4, 5, 1 !ADC ROC#1 Sl#7 Ch#50 HSCIN pl#4 [Y2] id#5 sig#1 [ADC-] (50 Y2N-05)
+  51, 4, 7, 1 !ADC ROC#1 Sl#7 Ch#51 HSCIN pl#4 [Y2] id#7 sig#1 [ADC-] (51 Y2N-07)
+  52, 4, 9, 1 !ADC ROC#1 Sl#7 Ch#52 HSCIN pl#4 [Y2] id#9 sig#1 [ADC-] (52 Y2N-09)
+!  53 !ADC ROC#1 Sl#7 Ch#53 unused
+!  54 !ADC ROC#1 Sl#7 Ch#54 unused
+!  55 !ADC ROC#1 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#1 Sl#7 Ch#56 HSCIN pl#4 [Y2] id#2 sig#1 [ADC-] (56 Y2N-02)
+  57, 4, 4, 1 !ADC ROC#1 Sl#7 Ch#57 HSCIN pl#4 [Y2] id#4 sig#1 [ADC-] (57 Y2N-04)
+  58, 4, 6, 1 !ADC ROC#1 Sl#7 Ch#58 HSCIN pl#4 [Y2] id#6 sig#1 [ADC-] (58 Y2N-06)
+  59, 4, 8, 1 !ADC ROC#1 Sl#7 Ch#59 HSCIN pl#4 [Y2] id#8 sig#1 [ADC-] (59 Y2N-08)
+  60, 4, 10, 1 !ADC ROC#1 Sl#7 Ch#60 HSCIN pl#4 [Y2] id#10 sig#1 [ADC-] (60 Y2N-10)
+!  61 !ADC ROC#1 Sl#7 Ch#61 unused
+!  62 !ADC ROC#1 Sl#7 Ch#62 unused
+!  63 !ADC ROC#1 Sl#7 Ch#63 unused
+!
+!---------------------------------------------------------------------------------
+    detector= 4 !HCAL
+!
+ Slot= 1 ! ADC  
+   0, 1, 1  !ADC ROC#1 Sl#1 Ch#0 HCAL col#1 row#1 (0 A-01)
+   1, 1, 2  !ADC ROC#1 Sl#1 Ch#1 HCAL col#1 row#2 (1 A-02)
+   2, 1, 3  !ADC ROC#1 Sl#1 Ch#2 HCAL col#1 row#3 (2 A-03)
+   3, 1, 4  !ADC ROC#1 Sl#1 Ch#3 HCAL col#1 row#4 (3 A-04)
+   4, 1, 5  !ADC ROC#1 Sl#1 Ch#4 HCAL col#1 row#5 (4 A-05)
+   5, 1, 6  !ADC ROC#1 Sl#1 Ch#5 HCAL col#1 row#6 (5 A-06)
+   6, 1, 7  !ADC ROC#1 Sl#1 Ch#6 HCAL col#1 row#7 (6 A-07)
+   7, 1, 8  !ADC ROC#1 Sl#1 Ch#7 HCAL col#1 row#8 (7 A-08)
+   8, 1, 9  !ADC ROC#1 Sl#1 Ch#8 HCAL col#1 row#9 (8 A-09)
+   9, 1, 10 !ADC ROC#1 Sl#1 Ch#9 HCAL col#1 row#10 (9 A-10)
+  10, 1, 11 !ADC ROC#1 Sl#1 Ch#10 HCAL col#1 row#11 (10 A-11)
+  11, 1, 12 !ADC ROC#1 Sl#1 Ch#11 HCAL col#1 row#12 (11 A-12)
+  12, 1, 13 !ADC ROC#1 Sl#1 Ch#12 HCAL col#1 row#13 (12 A-13)
+!   13 !ADC ROC#1 Sl#1 Ch#13 unused
+!   14 !ADC ROC#1 Sl#1 Ch#14 unused
+!   15 !ADC ROC#1 Sl#1 Ch#15 unused
+  16, 2, 1  !ADC ROC#1 Sl#1 Ch#16 HCAL col#2 row#1 (16 B-01)
+  17, 2, 2  !ADC ROC#1 Sl#1 Ch#17 HCAL col#2 row#2 (17 B-02)
+  18, 2, 3  !ADC ROC#1 Sl#1 Ch#18 HCAL col#2 row#3 (18 B-03)
+  19, 2, 4  !ADC ROC#1 Sl#1 Ch#19 HCAL col#2 row#4 (19 B-04)
+  20, 2, 5  !ADC ROC#1 Sl#1 Ch#20 HCAL col#2 row#5 (20 B-05)
+  21, 2, 6  !ADC ROC#1 Sl#1 Ch#21 HCAL col#2 row#6 (21 B-06)
+  22, 2, 7  !ADC ROC#1 Sl#1 Ch#22 HCAL col#2 row#7 (22 B-07)
+  23, 2, 8  !ADC ROC#1 Sl#1 Ch#23 HCAL col#2 row#8 (23 B-08)
+  24, 2, 9  !ADC ROC#1 Sl#1 Ch#24 HCAL col#2 row#9 (24 B-09)
+  25, 2, 10 !ADC ROC#1 Sl#1 Ch#25 HCAL col#2 row#10 (25 B-10)
+  26, 2, 11 !ADC ROC#1 Sl#1 Ch#26 HCAL col#2 row#11 (26 B-11)
+  27, 2, 12 !ADC ROC#1 Sl#1 Ch#27 HCAL col#2 row#12 (27 B-12)
+  28, 2, 13 !ADC ROC#1 Sl#1 Ch#28 HCAL col#2 row#13 (28 B-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+  32, 3, 1  !ADC ROC#1 Sl#1 Ch#32 HCAL col#3 row#1 (32 C-01)
+  33, 3, 2  !ADC ROC#1 Sl#1 Ch#33 HCAL col#3 row#2 (33 C-02)
+  34, 3, 3  !ADC ROC#1 Sl#1 Ch#34 HCAL col#3 row#3 (34 C-03)
+  35, 3, 4  !ADC ROC#1 Sl#1 Ch#35 HCAL col#3 row#4 (35 C-04)
+  36, 3, 5  !ADC ROC#1 Sl#1 Ch#36 HCAL col#3 row#5 (36 C-05)
+  37, 3, 6  !ADC ROC#1 Sl#1 Ch#37 HCAL col#3 row#6 (37 C-06)
+  38, 3, 7  !ADC ROC#1 Sl#1 Ch#38 HCAL col#3 row#7 (38 C-07)
+  39, 3, 8  !ADC ROC#1 Sl#1 Ch#39 HCAL col#3 row#8 (39 C-08)
+  40, 3, 9  !ADC ROC#1 Sl#1 Ch#40 HCAL col#3 row#9 (40 C-09)
+  41, 3, 10 !ADC ROC#1 Sl#1 Ch#41 HCAL col#3 row#10 (41 C-10)
+  42, 3, 11 !ADC ROC#1 Sl#1 Ch#42 HCAL col#3 row#11 (42 C-11)
+  43, 3, 12 !ADC ROC#1 Sl#1 Ch#43 HCAL col#3 row#12 (43 C-12)
+  44, 3, 13 !ADC ROC#1 Sl#1 Ch#44 HCAL col#3 row#13 (44 C-13)
+!  45 !ADC ROC#1 Sl#1 Ch#45 unused
+!  46 !ADC ROC#1 Sl#1 Ch#46 unused
+!  47 !ADC ROC#1 Sl#1 Ch#47 unused
+  48, 4, 1  !ADC ROC#1 Sl#1 Ch#48 HCAL col#4 row#1 (48 D-01)
+  49, 4, 2  !ADC ROC#1 Sl#1 Ch#49 HCAL col#4 row#2 (49 D-02)
+  50, 4, 3  !ADC ROC#1 Sl#1 Ch#50 HCAL col#4 row#3 (50 D-03)
+  51, 4, 4  !ADC ROC#1 Sl#1 Ch#51 HCAL col#4 row#4 (51 D-04)
+  52, 4, 5  !ADC ROC#1 Sl#1 Ch#52 HCAL col#4 row#5 (52 D-05)
+  53, 4, 6  !ADC ROC#1 Sl#1 Ch#53 HCAL col#4 row#6 (53 D-06)
+  54, 4, 7  !ADC ROC#1 Sl#1 Ch#54 HCAL col#4 row#7 (54 D-07)
+  55, 4, 8  !ADC ROC#1 Sl#1 Ch#55 HCAL col#4 row#8 (55 D-08)
+  56, 4, 9  !ADC ROC#1 Sl#1 Ch#56 HCAL col#4 row#9 (56 D-09)
+  57, 4, 10 !ADC ROC#1 Sl#1 Ch#57 HCAL col#4 row#10 (57 D-10)
+  58, 4, 11 !ADC ROC#1 Sl#1 Ch#58 HCAL col#4 row#11 (58 D-11)
+  59, 4, 12 !ADC ROC#1 Sl#1 Ch#59 HCAL col#4 row#12 (59 D-12)
+  60, 4, 13 !ADC ROC#1 Sl#1 Ch#60 HCAL col#4 row#13 (60 D-13)
+!
+!  61 !ADC ROC#1 Sl#1 Ch#61 unused
+
+    detector= 5    !HMISC - scintillator (ADCs) - behind calorimeter
+  62, 2, 1, 0 !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+  63, 2, 2, 0 !
+!
+detector= 4 !HCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+  0, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#0 HCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#1 HCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#2 HCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#3 HCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#4 HCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#5 HCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#6 HCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#7 HCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#1 Sl#5 Ch#8 HCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#1 Sl#5 Ch#9 HCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#1 Sl#5 Ch#10 HCAL col#1 row#11 (10 An-11)
+  11, 1, 12, 1 !ADC ROC#1 Sl#5 Ch#11 HCAL col#1 row#12 (11 An-112)
+  12, 1, 13, 1 !ADC ROC#1 Sl#5 Ch#12 HCAL col#1 row#13 (12 An-13)
+!  13 !ADC ROC#1 Sl#5 Ch#13 unused
+!  14 !ADC ROC#1 Sl#5 Ch#14 unused
+!  15 !ADC ROC#1 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#1 Sl#5 Ch#16 HCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#1 Sl#5 Ch#17 HCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#1 Sl#5 Ch#18 HCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#1 Sl#5 Ch#19 HCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#1 Sl#5 Ch#20 HCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#1 Sl#5 Ch#21 HCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#1 Sl#5 Ch#22 HCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#1 Sl#5 Ch#23 HCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#1 Sl#5 Ch#24 HCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#1 Sl#5 Ch#25 HCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#1 Sl#5 Ch#26 HCAL col#2 row#11 (26 Bn-11)
+  27, 2, 12, 1 !ADC ROC#1 Sl#5 Ch#27 HCAL col#2 row#12 (27 Bn-12)
+  28, 2, 13, 1 !ADC ROC#1 Sl#5 Ch#28 HCAL col#2 row#13 (28 Bn-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+!
+!==================================================================
+!!!!!!!!!!!!!!!!!!!!!!! AEROGEL ADC !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+    detector = 7
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+!Slot= 5 ! ADC  
+! May be will use spare channels HCAL ADC for aerogel (Hamlet, 2002/10/16)
+!48, 1, 1, 0 !ADC ROC#1 Sl#5 Ch#48 signal pos 1
+!49, 1, 2, 0 !ADC ROC#1 Sl#5 Ch#48signal pos 2
+!50, 1, 3, 0 !ADC ROC#1 Sl#5 Ch#50 signal pos 3
+!51, 1, 4, 0 !ADC ROC#1 Sl#5 Ch#51 signal pos 4
+!52, 1, 5, 0 !ADC ROC#1 Sl#5 Ch#52 signal pos 5
+!53, 1, 6, 0 !ADC ROC#1 Sl#5 Ch#53 signal pos 6
+!54, 1, 7, 0 !ADC ROC#1 Sl#5 Ch#54 signal pos 7
+!55, 1, 8, 0 !ADC ROC#1 Sl#5 Ch#55 signal pos 8
+!56, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#56  signal neg 1
+!57, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#57  signal neg 2
+!58, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#58  signal neg 3
+!59, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#59  signal neg 4
+!60, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#60  signal neg 5
+!61, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#61  signal neg 6
+!62, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#62  signal neg 7
+!63, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#63  signal neg 8
+!
+!   detector = 7
+!    Nsubadd= 64
+!    MASK= 3FFFx
+!    BSUB= 17
+
+  Slot= 11 ! ADC  
+! Additional new ADC for aerogel (Hamlet, 2002/10/17)
+   0, 1, 1, 0 !ADC ROC#1 Sl#11 Ch#0 signal pos 1
+   1, 1, 2, 0 !ADC ROC#1 Sl#11 Ch#1 signal pos 2
+   2, 1, 3, 0 !ADC ROC#1 Sl#11 Ch#2 signal pos 3
+   3, 1, 4, 0 !ADC ROC#1 Sl#11 Ch#3 signal pos 4
+   4, 1, 5, 0 !ADC ROC#1 Sl#11 Ch#4 signal pos 5
+   5, 1, 6, 0 !ADC ROC#1 Sl#11 Ch#5 signal pos 6
+   6, 1, 7, 0 !ADC ROC#1 Sl#11 Ch#6 signal pos 7
+   7, 1, 8, 0 !ADC ROC#1 Sl#11 Ch#7 signal pos 8
+   8, 1, 1, 1 !ADC ROC#1 Sl#11 Ch#8  signal neg 1
+   9, 1, 2, 1 !ADC ROC#1 Sl#11 Ch#9  signal neg 2
+  10, 1, 3, 1 !ADC ROC#1 Sl#11 Ch#10  signal neg 3
+  11, 1, 4, 1 !ADC ROC#1 Sl#11 Ch#11  signal neg 4
+  12, 1, 5, 1 !ADC ROC#1 Sl#11 Ch#12  signal neg 5
+  13, 1, 6, 1 !ADC ROC#1 Sl#11 Ch#13  signal neg 6
+  14, 1, 7, 1 !ADC ROC#1 Sl#11 Ch#14  signal neg 7
+  15, 1, 8, 1 !ADC ROC#1 Sl#11 Ch#15  signal neg 8
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!-----------------------------------------------------------------
+    detector= 3   !HCER
+!
+  Slot= 3
+   0, 1, 1 !ADC  ROC#1 Sl#3 Ch#0 HCER tube#1 (C1)
+   1, 1, 2 !ADC  ROC#1 Sl#3 Ch#1 HCER tube#2 (C2)
+!   2 !ADC ROC#1 Sl#3 Ch#2 unused
+!   3 !ADC ROC#1 Sl#3 Ch#3 unused
+!   4 !ADC ROC#1 Sl#3 Ch#4 unused
+!   5 !ADC ROC#1 Sl#3 Ch#5 unused
+!   6 !ADC ROC#1 Sl#3 Ch#6 unused
+!   7 !ADC ROC#1 Sl#3 Ch#7 unused
+!   8 !ADC ROC#1 Sl#3 Ch#8 unused
+!   9 !ADC ROC#1 Sl#3 Ch#9 unused
+!   10 !ADC ROC#1 Sl#3 Ch#10 unused
+!   11 !ADC ROC#1 Sl#3 Ch#11 unused
+!   12 !ADC ROC#1 Sl#3 Ch#12 unused
+!   13 !ADC ROC#1 Sl#3 Ch#13 unused
+!   14 !ADC ROC#1 Sl#3 Ch#14 unused
+!   15 !ADC ROC#1 Sl#3 Ch#15 unused
+!   16 !ADC ROC#1 Sl#3 Ch#16 unused
+!   17 !ADC ROC#1 Sl#3 Ch#17 unused
+!   18 !ADC ROC#1 Sl#3 Ch#18 unused
+!   19 !ADC ROC#1 Sl#3 Ch#19 unused
+!   20 !ADC ROC#1 Sl#3 Ch#20 unused
+!   21 !ADC ROC#1 Sl#3 Ch#21 unused
+!   22 !ADC ROC#1 Sl#3 Ch#22 unused
+!   23 !ADC ROC#1 Sl#3 Ch#23 unused
+!   24 !ADC ROC#1 Sl#3 Ch#24 unused
+!   25 !ADC ROC#1 Sl#3 Ch#25 unused
+!   26 !ADC ROC#1 Sl#3 Ch#26 unused
+!   27 !ADC ROC#1 Sl#3 Ch#27 unused
+!   28 !ADC ROC#1 Sl#3 Ch#28 unused
+!   29 !ADC ROC#1 Sl#3 Ch#29 unused
+!   30 !ADC ROC#1 Sl#3 Ch#30 unused
+!   31 !ADC ROC#1 Sl#3 Ch#31 unused
+!   32 !ADC ROC#1 Sl#3 Ch#32 unused
+!   33 !ADC ROC#1 Sl#3 Ch#33 unused
+!   34 !ADC ROC#1 Sl#3 Ch#34 unused
+!   35 !ADC ROC#1 Sl#3 Ch#35 unused
+!   36 !ADC ROC#1 Sl#3 Ch#36 unused
+!   37 !ADC ROC#1 Sl#3 Ch#37 unused
+!   38 !ADC ROC#1 Sl#3 Ch#38 unused
+!   39 !ADC ROC#1 Sl#3 Ch#39 unused
+!   40 !ADC ROC#1 Sl#3 Ch#40 unused
+!   41 !ADC ROC#1 Sl#3 Ch#41 unused
+!   42 !ADC ROC#1 Sl#3 Ch#42 unused
+!   43 !ADC ROC#1 Sl#3 Ch#43 unused
+!   44 !ADC ROC#1 Sl#3 Ch#44 unused
+!   45 !ADC ROC#1 Sl#3 Ch#45 unused
+!   46 !ADC ROC#1 Sl#3 Ch#46 unused
+!   47 !ADC ROC#1 Sl#3 Ch#47 unused
+!detector= 6 ! GMISC 
+!!! Use "plane" 2 for the PMT's on the floor (BLM's)
+!48, 2, 1, 0 ! Special PMT signal ch #1
+!49, 2, 2, 0 ! Special PMT signal ch #1
+!50, 2, 3, 0 ! Special PMT signal ch #1
+!51, 2, 4, 0 ! Special PMT signal ch #1
+!52, 2, 5, 0 ! Special PMT signal ch #1
+!53, 2, 6, 0 ! Special PMT signal ch #1
+!54, 2, 7, 0 ! Special PMT signal ch #1
+!55, 2, 8, 0 ! Special PMT signal ch #1
+!   48 !ADC ROC#1 Sl#3 Ch#48 unused
+!   49 !ADC ROC#1 Sl#3 Ch#49 unused
+!   50 !ADC ROC#1 Sl#3 Ch#50 unused
+!   51 !ADC ROC#1 Sl#3 Ch#51 unused
+!   52 !ADC ROC#1 Sl#3 Ch#52 unused
+!   53 !ADC ROC#1 Sl#3 Ch#53 unused
+!   54 !ADC ROC#1 Sl#3 Ch#54 unused
+!   55 !ADC ROC#1 Sl#3 Ch#55 unused
+!   56 !ADC ROC#1 Sl#3 Ch#56 unused
+!   57 !ADC ROC#1 Sl#3 Ch#57 unused
+!   58 !ADC ROC#1 Sl#3 Ch#58 unused
+!   59 !ADC ROC#1 Sl#3 Ch#59 unused
+!   60 !ADC ROC#1 Sl#3 Ch#60 unused
+!   61 !ADC ROC#1 Sl#3 Ch#61 unused
+!   62 !ADC ROC#1 Sl#3 Ch#62 unused
+!   63 !ADC ROC#1 Sl#3 Ch#63 unused
+!
+!
+  detector= 6 ! GMISC
+!
+  Slot= 13
+!
+!  0, 2, 1, 0 !ADC ROC#1 Sl#15 Ch#0
+!  1, 2, 2, 0 !ADC ROC#1 Sl#15 Ch#1
+!  2, 2, 3, 0 !ADC ROC#1 Sl#15 Ch#2
+!  3, 2, 4, 0 !ADC ROC#1 Sl#15 Ch#3
+  4, 2, 5, 0 !ADC ROC#1 Sl#15 Ch#4 H00A X+
+  5, 2, 6, 0 !ADC ROC#1 Sl#15 Ch#5 H00A X-
+  6, 2, 7, 0 !ADC ROC#1 Sl#15 Ch#6 H00A Y+
+  7, 2, 8, 0 !ADC ROC#1 Sl#15 Ch#7 H00A Y-
+  8, 2, 9, 0 !ADC ROC#1 Sl#15 Ch#8 H00B X+
+  9, 2, 10, 0 !ADC ROC#1 Sl#15 Ch#9 H00B X-
+  10, 2, 11, 0 !ADC ROC#1 Sl#15 Ch#10 H00B Y+
+  11, 2, 12, 0 !ADC ROC#1 Sl#15 Ch#11 H00B Y-
+!  12, 2, 13, 0 !ADC ROC#1 Sl#15 Ch#12 Fast Raster X-sync
+!  13, 2, 14, 0 !ADC ROC#1 Sl#15 Ch#13 Fast Raster X-signal
+!  14, 2, 15, 0 !ADC ROC#1 Sl#15 Ch#14 Fast Raster Y-sync
+!  15, 2, 16, 0 !ADC ROC#1 Sl#15 Ch#15 Fast Raster Y-signal
+! bpw added the new ID for raster 01-23-2014
+!
+  detector= 18 ! RASTER
+!
+! buddhini-w :To make things easier and consistent between detectors, we now use the plane and signal to identify the different raster signals 02-12-2014
+!..............................................................................
+! For raster : 0-->ADC X-sync
+!	       1-->ADC Y-signal
+!              2-->ADC Y-sync
+!              3-->ADC Y-signal
+
+  14, 1, 1, 0 !ADC ROC#1 Sl#13 Ch#12 Fast Raster X-sync
+  15, 1, 1, 1 !ADC ROC#1 Sl#13 Ch#13 Fast Raster X-signal
+  12, 1, 1, 2 !ADC ROC#1 Sl#13 Ch#14 Fast Raster Y-sync
+  13, 1, 1, 3 !ADC ROC#1 Sl#13 Ch#15 Fast Raster Y-signal
+!
+  detector= 6 ! GMISC
+!  16, 2, 17, 0  !ADC ROC#1 Sl#15 Ch#16 H00C X+
+  17, 2, 18, 0  !ADC ROC#1 Sl#15 Ch#17 H00C X-
+  18, 2, 19, 0  !ADC ROC#1 Sl#15 Ch#18 H00C Y+
+  19, 2, 20, 0  !ADC ROC#1 Sl#15 Ch#19 H00C Y-
+!   20 !ADC ROC#1 Sl#15 Ch#20 unused
+!   21 !ADC ROC#1 Sl#15 Ch#21 unused
+  22, 2, 23, 0  !ADC ROC#1 Sl#15 Ch#22 Raster gate
+!   23 !ADC ROC#1 Sl#15 Ch#23 unused
+!   24 !ADC ROC#1 Sl#15 Ch#24 unused
+!   25 !ADC ROC#1 Sl#15 Ch#25 unused
+!   26 !ADC ROC#1 Sl#15 Ch#26 unused
+!   27 !ADC ROC#1 Sl#15 Ch#27 unused
+!   28 !ADC ROC#1 Sl#15 Ch#28 unused
+!   29 !ADC ROC#1 Sl#15 Ch#29 unused
+!   30 !ADC ROC#1 Sl#15 Ch#30 unused
+!   31 !ADC ROC#1 Sl#15 Ch#31 unused
+   32, 2, 32, 0  ! Paul Gueye
+   33, 2, 33, 0  ! Paul Gueye
+   34, 2, 34, 0  ! Paul Gueye
+   35, 2, 35, 0  ! Paul Gueye
+   36, 2, 36, 0  ! Paul Gueye
+   37, 2, 37, 0  ! Paul Gueye
+   38, 2, 38, 0  ! Paul Gueye
+   39, 2, 39, 0  ! Paul Gueye
+   40, 2, 40, 0  ! Paul Gueye
+   41, 2, 41, 0  ! Paul Gueye
+   42, 2, 42, 0  ! Paul Gueye
+   43, 2, 43, 0  ! Paul Gueye
+   44, 2, 44, 0  ! Paul Gueye
+   45, 2, 45, 0  ! Paul Gueye
+   46, 2, 46, 0  ! Paul Gueye
+   47, 2, 47, 0  ! Paul Gueye
+!   32 !ADC ROC#1 Sl#15 Ch#32 unused
+!   33 !ADC ROC#1 Sl#15 Ch#33 unused
+!   34 !ADC ROC#1 Sl#15 Ch#34 unused
+!   35 !ADC ROC#1 Sl#15 Ch#35 unused
+!   36 !ADC ROC#1 Sl#15 Ch#36 unused
+!   37 !ADC ROC#1 Sl#15 Ch#37 unused
+!   38 !ADC ROC#1 Sl#15 Ch#38 unused
+!   39 !ADC ROC#1 Sl#15 Ch#39 unused
+!   40 !ADC ROC#1 Sl#15 Ch#40 unused
+!   41 !ADC ROC#1 Sl#15 Ch#41 unused
+!   42 !ADC ROC#1 Sl#15 Ch#42 unused
+!   43 !ADC ROC#1 Sl#15 Ch#43 unused
+!   44 !ADC ROC#1 Sl#15 Ch#44 unused
+!   45 !ADC ROC#1 Sl#15 Ch#45 unused
+!   46 !ADC ROC#1 Sl#15 Ch#46 unused
+!   47 !ADC ROC#1 Sl#15 Ch#47 unused
+!   48 !ADC ROC#1 Sl#15 Ch#48 unused
+!   49 !ADC ROC#1 Sl#15 Ch#49 unused
+!   50 !ADC ROC#1 Sl#15 Ch#50 unused
+!   51 !ADC ROC#1 Sl#15 Ch#51 unused
+!   52 !ADC ROC#1 Sl#15 Ch#52 unused
+!   53 !ADC ROC#1 Sl#15 Ch#53 unused
+!   54 !ADC ROC#1 Sl#15 Ch#54 unused
+!   55 !ADC ROC#1 Sl#15 Ch#55 unused
+!   56 !ADC ROC#1 Sl#15 Ch#56 unused
+!   57 !ADC ROC#1 Sl#15 Ch#57 unused
+!   58 !ADC ROC#1 Sl#15 Ch#58 unused
+!   59 !ADC ROC#1 Sl#15 Ch#59 unused
+!   60 !ADC ROC#1 Sl#15 Ch#60 unused
+!   61 !ADC ROC#1 Sl#15 Ch#61 unused
+!   62 !ADC ROC#1 Sl#15 Ch#62 unused
+!   63 !ADC ROC#1 Sl#15 Ch#63 unused
+!
+!---------------------------------------------------------------------
+!=============================== SOS MAP =============================
+!............ This part copy from replay99 (Hamlet,19 Dec'02)............
+!
+!  REAL map for SOS Drift Chambers (SDC); J.R.Arrington 20-Mar-1995
+!                                               
+     ROC= 4   !ReadOutController (crate) for SOS (fbsos)
+!
+       Nsubadd= 96	!assume 96 channel modules
+       MASK= FFFFx      !hex mask - assume LeCroy masking (lowest 13 bits)
+       BSUB= 17         !begin channel info with bit#17
+!
+       detector= 11     !SDC
+!
+       slot= 1          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 1, 1	!chamber 1, U plane, 48 wires.
+ 1, 1, 2
+ 2, 1, 3
+ 3, 1, 4
+ 4, 1, 5
+ 5, 1, 6
+ 6, 1, 7
+ 7, 1, 8
+ 8, 1, 9
+ 9, 1, 10
+ 10, 1, 11
+ 11, 1, 12
+ 12, 1, 13
+ 13, 1, 14
+ 14, 1, 15
+ 15, 1, 16
+ 16, 1, 17
+ 17, 1, 18
+ 18, 1, 19
+ 19, 1, 20
+ 20, 1, 21
+ 21, 1, 22
+ 22, 1, 23
+ 23, 1, 24
+ 24, 1, 25
+ 25, 1, 26
+ 26, 1, 27
+ 27, 1, 28
+ 28, 1, 29
+ 29, 1, 30
+ 30, 1, 31
+ 31, 1, 32
+ 32, 1, 33
+ 33, 1, 34
+ 34, 1, 35
+ 35, 1, 36
+ 36, 1, 37
+ 37, 1, 38
+ 38, 1, 39
+ 39, 1, 40
+ 40, 1, 41
+ 41, 1, 42
+ 42, 1, 43
+ 43, 1, 44
+ 44, 1, 45
+ 45, 1, 46
+ 46, 1, 47
+ 47, 1, 48
+ 48, 2, 1	!chamber 1, U' plane, 48 wires.
+ 49, 2, 2
+ 50, 2, 3
+ 51, 2, 4
+ 52, 2, 5
+ 53, 2, 6
+ 54, 2, 7
+ 55, 2, 8
+ 56, 2, 9
+ 57, 2, 10
+ 58, 2, 11
+ 59, 2, 12
+ 60, 2, 13
+ 61, 2, 14
+ 62, 2, 15
+ 63, 2, 16
+ 64, 2, 17
+ 65, 2, 18
+ 66, 2, 19
+ 67, 2, 20
+ 68, 2, 21
+ 69, 2, 22
+ 70, 2, 23
+ 71, 2, 24
+ 72, 2, 25
+ 73, 2, 26
+ 74, 2, 27
+ 75, 2, 28
+ 76, 2, 29
+ 77, 2, 30
+ 78, 2, 31
+ 79, 2, 32
+ 80, 2, 33
+ 81, 2, 34
+ 82, 2, 35
+ 83, 2, 36
+ 84, 2, 37
+ 85, 2, 38
+ 86, 2, 39
+ 87, 2, 40
+ 88, 2, 41
+ 89, 2, 42
+ 90, 2, 43
+ 91, 2, 44
+ 92, 2, 45
+ 93, 2, 46
+ 94, 2, 47
+ 95, 2, 48
+!
+       slot= 2          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 5, 1	!chamber 1, V plane, 48 wires.
+ 1, 5, 2
+ 2, 5, 3
+ 3, 5, 4
+ 4, 5, 5
+ 5, 5, 6
+ 6, 5, 7
+ 7, 5, 8
+ 8, 5, 9
+ 9, 5, 10
+ 10, 5, 11
+ 11, 5, 12
+ 12, 5, 13
+ 13, 5, 14
+ 14, 5, 15
+ 15, 5, 16
+ 16, 5, 17
+ 17, 5, 18
+ 18, 5, 19
+ 19, 5, 20
+ 20, 5, 21
+ 21, 5, 22
+ 22, 5, 23
+ 23, 5, 24
+ 24, 5, 25
+ 25, 5, 26
+ 26, 5, 27
+ 27, 5, 28
+ 28, 5, 29
+ 29, 5, 30
+ 30, 5, 31
+ 31, 5, 32
+ 32, 5, 33
+ 33, 5, 34
+ 34, 5, 35
+ 35, 5, 36
+ 36, 5, 37
+ 37, 5, 38
+ 38, 5, 39
+ 39, 5, 40
+ 40, 5, 41
+ 41, 5, 42
+ 42, 5, 43
+ 43, 5, 44
+ 44, 5, 45
+ 45, 5, 46
+ 46, 5, 47
+ 47, 5, 48
+ 48, 6, 1	!chamber 1, V' plane, 48 wires.
+ 49, 6, 2
+ 50, 6, 3
+ 51, 6, 4
+ 52, 6, 5
+ 53, 6, 6
+ 54, 6, 7
+ 55, 6, 8
+ 56, 6, 9
+ 57, 6, 10
+ 58, 6, 11
+ 59, 6, 12
+ 60, 6, 13
+ 61, 6, 14
+ 62, 6, 15
+ 63, 6, 16
+ 64, 6, 17
+ 65, 6, 18
+ 66, 6, 19
+ 67, 6, 20
+ 68, 6, 21
+ 69, 6, 22
+ 70, 6, 23
+ 71, 6, 24
+ 72, 6, 25
+ 73, 6, 26
+ 74, 6, 27
+ 75, 6, 28
+ 76, 6, 29
+ 77, 6, 30
+ 78, 6, 31
+ 79, 6, 32
+ 80, 6, 33
+ 81, 6, 34
+ 82, 6, 35
+ 83, 6, 36
+ 84, 6, 37
+ 85, 6, 38
+ 86, 6, 39
+ 87, 6, 40
+ 88, 6, 41
+ 89, 6, 42
+ 90, 6, 43
+ 91, 6, 44
+ 92, 6, 45
+ 93, 6, 46
+ 94, 6, 47
+ 95, 6, 48
+!
+       slot= 4          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 3, 1	!chamber 1, X plane, 64 wires.
+ 1, 3, 2
+ 2, 3, 3
+ 3, 3, 4
+ 4, 3, 5
+ 5, 3, 6
+ 6, 3, 7
+ 7, 3, 8
+ 8, 3, 9
+ 9, 3, 10
+ 10, 3, 11
+ 11, 3, 12
+ 12, 3, 13
+ 13, 3, 14
+ 14, 3, 15
+ 15, 3, 16
+ 16, 3, 17
+ 17, 3, 18
+ 18, 3, 19
+ 19, 3, 20
+ 20, 3, 21
+ 21, 3, 22
+ 22, 3, 23
+ 23, 3, 24
+ 24, 3, 25
+ 25, 3, 26
+ 26, 3, 27
+ 27, 3, 28
+ 28, 3, 29
+ 29, 3, 30
+ 30, 3, 31
+ 31, 3, 32
+ 32, 3, 33
+ 33, 3, 34
+ 34, 3, 35
+ 35, 3, 36
+ 36, 3, 37
+ 37, 3, 38
+ 38, 3, 39
+ 39, 3, 40
+ 40, 3, 41
+ 41, 3, 42
+ 42, 3, 43
+ 43, 3, 44
+ 44, 3, 45
+ 45, 3, 46
+ 46, 3, 47
+ 47, 3, 48
+ 48, 3, 49
+ 49, 3, 50
+ 50, 3, 51
+ 51, 3, 52
+ 52, 3, 53
+ 53, 3, 54
+ 54, 3, 55
+ 55, 3, 56
+ 56, 3, 57
+ 57, 3, 58
+ 58, 3, 59
+ 59, 3, 60
+ 60, 3, 61
+ 61, 3, 62
+ 62, 3, 63
+ 63, 3, 64
+!
+       slot= 5          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 4, 1	!chamber 1, X' plane, 64 wires.
+ 1, 4, 2
+ 2, 4, 3
+ 3, 4, 4
+ 4, 4, 5
+ 5, 4, 6
+ 6, 4, 7
+ 7, 4, 8
+ 8, 4, 9
+ 9, 4, 10
+ 10, 4, 11
+ 11, 4, 12
+ 12, 4, 13
+ 13, 4, 14
+ 14, 4, 15
+ 15, 4, 16
+ 16, 4, 17
+ 17, 4, 18
+ 18, 4, 19
+ 19, 4, 20
+ 20, 4, 21
+ 21, 4, 22
+ 22, 4, 23
+ 23, 4, 24
+ 24, 4, 25
+ 25, 4, 26
+ 26, 4, 27
+ 27, 4, 28
+ 28, 4, 29
+ 29, 4, 30
+ 30, 4, 31
+ 31, 4, 32
+ 32, 4, 33
+ 33, 4, 34
+ 34, 4, 35
+ 35, 4, 36
+ 36, 4, 37
+ 37, 4, 38
+ 38, 4, 39
+ 39, 4, 40
+ 40, 4, 41
+ 41, 4, 42
+ 42, 4, 43
+ 43, 4, 44
+ 44, 4, 45
+ 45, 4, 46
+ 46, 4, 47
+ 47, 4, 48
+ 48, 4, 49
+ 49, 4, 50
+ 50, 4, 51
+ 51, 4, 52
+ 52, 4, 53
+ 53, 4, 54
+ 54, 4, 55
+ 55, 4, 56
+ 56, 4, 57
+ 57, 4, 58
+ 58, 4, 59
+ 59, 4, 60
+ 60, 4, 61
+ 61, 4, 62
+ 62, 4, 63
+ 63, 4, 64
+!
+       slot= 8          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 7, 1	!chamber 2, U plane, 48 wires.
+ 1, 7, 2
+ 2, 7, 3
+ 3, 7, 4
+ 4, 7, 5
+ 5, 7, 6
+ 6, 7, 7
+ 7, 7, 8
+ 8, 7, 9
+ 9, 7, 10
+ 10, 7, 11
+ 11, 7, 12
+ 12, 7, 13
+ 13, 7, 14
+ 14, 7, 15
+ 15, 7, 16
+ 16, 7, 17
+ 17, 7, 18
+ 18, 7, 19
+ 19, 7, 20
+ 20, 7, 21
+ 21, 7, 22
+ 22, 7, 23
+ 23, 7, 24
+ 24, 7, 25
+ 25, 7, 26
+ 26, 7, 27
+ 27, 7, 28
+ 28, 7, 29
+ 29, 7, 30
+ 30, 7, 31
+ 31, 7, 32
+ 32, 7, 33
+ 33, 7, 34
+ 34, 7, 35
+ 35, 7, 36
+ 36, 7, 37
+ 37, 7, 38
+ 38, 7, 39
+ 39, 7, 40
+ 40, 7, 41
+ 41, 7, 42
+ 42, 7, 43
+ 43, 7, 44
+ 44, 7, 45
+ 45, 7, 46
+ 46, 7, 47
+ 47, 7, 48
+ 48, 8, 1	!chamber 2, U' plane, 48 wires.
+ 49, 8, 2
+ 50, 8, 3
+ 51, 8, 4
+ 52, 8, 5
+ 53, 8, 6
+ 54, 8, 7
+ 55, 8, 8
+ 56, 8, 9
+ 57, 8, 10
+ 58, 8, 11
+ 59, 8, 12
+ 60, 8, 13
+ 61, 8, 14
+ 62, 8, 15
+ 63, 8, 16
+ 64, 8, 17
+ 65, 8, 18
+ 66, 8, 19
+ 67, 8, 20
+ 68, 8, 21
+ 69, 8, 22
+ 70, 8, 23
+ 71, 8, 24
+ 72, 8, 25
+ 73, 8, 26
+ 74, 8, 27
+ 75, 8, 28
+ 76, 8, 29
+ 77, 8, 30
+ 78, 8, 31
+ 79, 8, 32
+ 80, 8, 33
+ 81, 8, 34
+ 82, 8, 35
+ 83, 8, 36
+ 84, 8, 37
+ 85, 8, 38
+ 86, 8, 39
+ 87, 8, 40
+ 88, 8, 41
+ 89, 8, 42
+ 90, 8, 43
+ 91, 8, 44
+ 92, 8, 45
+ 93, 8, 46
+ 94, 8, 47
+ 95, 8, 48
+!
+       slot= 9          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 11, 1	!chamber 2, V plane, 48 wires.
+ 1, 11, 2
+ 2, 11, 3
+ 3, 11, 4
+ 4, 11, 5
+ 5, 11, 6
+ 6, 11, 7
+ 7, 11, 8
+ 8, 11, 9
+ 9, 11, 10
+ 10, 11, 11
+ 11, 11, 12
+ 12, 11, 13
+ 13, 11, 14
+ 14, 11, 15
+ 15, 11, 16
+ 16, 11, 17
+ 17, 11, 18
+ 18, 11, 19
+ 19, 11, 20
+ 20, 11, 21
+ 21, 11, 22
+ 22, 11, 23
+ 23, 11, 24
+ 24, 11, 25
+ 25, 11, 26
+ 26, 11, 27
+ 27, 11, 28
+ 28, 11, 29
+ 29, 11, 30
+ 30, 11, 31
+ 31, 11, 32
+ 32, 11, 33
+ 33, 11, 34
+ 34, 11, 35
+ 35, 11, 36
+ 36, 11, 37
+ 37, 11, 38
+ 38, 11, 39
+ 39, 11, 40
+ 40, 11, 41
+ 41, 11, 42
+ 42, 11, 43
+ 43, 11, 44
+ 44, 11, 45
+ 45, 11, 46
+ 46, 11, 47
+ 47, 11, 48
+ 48, 12, 1	!chamber 2, V' plane, 48 wires.
+ 49, 12, 2
+ 50, 12, 3
+ 51, 12, 4
+ 52, 12, 5
+ 53, 12, 6
+ 54, 12, 7
+ 55, 12, 8
+ 56, 12, 9
+ 57, 12, 10
+ 58, 12, 11
+ 59, 12, 12
+ 60, 12, 13
+ 61, 12, 14
+ 62, 12, 15
+ 63, 12, 16
+ 64, 12, 17
+ 65, 12, 18
+ 66, 12, 19
+ 67, 12, 20
+ 68, 12, 21
+ 69, 12, 22
+ 70, 12, 23
+ 71, 12, 24
+ 72, 12, 25
+ 73, 12, 26
+ 74, 12, 27
+ 75, 12, 28
+ 76, 12, 29
+ 77, 12, 30
+ 78, 12, 31
+ 79, 12, 32
+ 80, 12, 33
+ 81, 12, 34
+ 82, 12, 35
+ 83, 12, 36
+ 84, 12, 37
+ 85, 12, 38
+ 86, 12, 39
+ 87, 12, 40
+ 88, 12, 41
+ 89, 12, 42
+ 90, 12, 43
+ 91, 12, 44
+ 92, 12, 45
+ 93, 12, 46
+ 94, 12, 47
+ 95, 12, 48
+!
+       slot= 11          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 9, 1	!chamber 2, X plane, 64 wires.
+ 1, 9, 2
+ 2, 9, 3
+ 3, 9, 4
+ 4, 9, 5
+ 5, 9, 6
+ 6, 9, 7
+ 7, 9, 8
+ 8, 9, 9
+ 9, 9, 10
+ 10, 9, 11
+ 11, 9, 12
+ 12, 9, 13
+ 13, 9, 14
+ 14, 9, 15
+ 15, 9, 16
+ 16, 9, 17
+ 17, 9, 18
+ 18, 9, 19
+ 19, 9, 20
+ 20, 9, 21
+ 21, 9, 22
+ 22, 9, 23
+ 23, 9, 24
+ 24, 9, 25
+ 25, 9, 26
+ 26, 9, 27
+ 27, 9, 28
+ 28, 9, 29
+ 29, 9, 30
+ 30, 9, 31
+ 31, 9, 32
+ 32, 9, 33
+ 33, 9, 34
+ 34, 9, 35
+ 35, 9, 36
+ 36, 9, 37
+ 37, 9, 38
+ 38, 9, 39
+ 39, 9, 40
+ 40, 9, 41
+ 41, 9, 42
+ 42, 9, 43
+ 43, 9, 44
+ 44, 9, 45
+ 45, 9, 46
+ 46, 9, 47
+ 47, 9, 48
+ 48, 9, 49
+ 49, 9, 50
+ 50, 9, 51
+ 51, 9, 52
+ 52, 9, 53
+ 53, 9, 54
+ 54, 9, 55
+ 55, 9, 56
+ 56, 9, 57
+ 57, 9, 58
+ 58, 9, 59
+ 59, 9, 60
+ 60, 9, 61
+ 61, 9, 62
+ 62, 9, 63
+ 63, 9, 64
+!
+       slot= 12          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 10, 1	!chamber 2, X' plane, 64 wires.
+ 1, 10, 2
+ 2, 10, 3
+ 3, 10, 4
+ 4, 10, 5
+ 5, 10, 6
+ 6, 10, 7
+ 7, 10, 8
+ 8, 10, 9
+ 9, 10, 10
+ 10, 10, 11
+ 11, 10, 12
+ 12, 10, 13
+ 13, 10, 14
+ 14, 10, 15
+ 15, 10, 16
+ 16, 10, 17
+ 17, 10, 18
+ 18, 10, 19
+ 19, 10, 20
+ 20, 10, 21
+ 21, 10, 22
+ 22, 10, 23
+ 23, 10, 24
+ 24, 10, 25
+ 25, 10, 26
+ 26, 10, 27
+ 27, 10, 28
+ 28, 10, 29
+ 29, 10, 30
+ 30, 10, 31
+ 31, 10, 32
+ 32, 10, 33
+ 33, 10, 34
+ 34, 10, 35
+ 35, 10, 36
+ 36, 10, 37
+ 37, 10, 38
+ 38, 10, 39
+ 39, 10, 40
+ 40, 10, 41
+ 41, 10, 42
+ 42, 10, 43
+ 43, 10, 44
+ 44, 10, 45
+ 45, 10, 46
+ 46, 10, 47
+ 47, 10, 48
+ 48, 10, 49
+ 49, 10, 50
+ 50, 10, 51
+ 51, 10, 52
+ 52, 10, 53
+ 53, 10, 54
+ 54, 10, 55
+ 55, 10, 56
+ 56, 10, 57
+ 57, 10, 58
+ 58, 10, 59
+ 59, 10, 60
+ 60, 10, 61
+ 61, 10, 62
+ 62, 10, 63
+ 63, 10, 64
+!
+!   SOS upstairs (SSCIN+SCAL+SCER) map    K.B.Beard 13-Jun-1994
+!
+    ROC= 3               !upstairs SOS crate (fbch2)
+!
+    detector= 12 !SSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 22 ! TDC  
+  0, 1, 3, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#3 [TDC+]
+  1, 1, 5, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#5 [TDC+]
+  2, 1, 7, 2 !TDC ROC#3 Sl#23 Ch#2 SSCIN pl#1 [X1] id sig#7 [TDC+]
+  3, 1, 9, 2 !TDC ROC#3 Sl#23 Ch#3 SSCIN pl#1 [X1] id sig#9 [TDC+]
+  4, 1, 2, 2 !TDC ROC#3 Sl#23 Ch#4 SSCIN pl#1 [X1] id sig#2 [TDC+]
+  5, 1, 4, 2 !TDC ROC#3 Sl#23 Ch#5 SSCIN pl#1 [X1] id sig#4 [TDC+]
+  6, 1, 6, 2 !TDC ROC#3 Sl#23 Ch#6 SSCIN pl#1 [X1] id sig#6 [TDC+]
+  7, 1, 8, 2 !TDC ROC#3 Sl#23 Ch#7 SSCIN pl#1 [X1] id sig#8 [TDC+]
+  8, 1, 3, 3 !TDC ROC#3 Sl#23 Ch#8 SSCIN pl#1 [X1] id sig#3 [TDC-]
+  9, 1, 5, 3 !TDC ROC#3 Sl#23 Ch#9 SSCIN pl#1 [X1] id sig#5 [TDC-]
+  10, 1, 7, 3 !TDC ROC#3 Sl#23 Ch#10 SSCIN pl#1 [X1] id sig#7 [TDC-]
+  11, 1, 9, 3 !TDC ROC#3 Sl#23 Ch#11 SSCIN pl#1 [X1] id sig#9 [TDC-]
+  12, 1, 2, 3 !TDC ROC#3 Sl#23 Ch#12 SSCIN pl#1 [X1] id sig#2 [TDC-]
+  13, 1, 4, 3 !TDC ROC#3 Sl#23 Ch#13 SSCIN pl#1 [X1] id sig#4 [TDC-]
+  14, 1, 6, 3 !TDC ROC#3 Sl#23 Ch#14 SSCIN pl#1 [X1] id sig#6 [TDC-]
+  15, 1, 8, 3 !TDC ROC#3 Sl#23 Ch#15 SSCIN pl#1 [X1] id sig#8 [TDC-]
+  16, 2, 3, 2 !TDC ROC#3 Sl#23 Ch#16 SSCIN pl#2 [Y1] id sig#3 [TDC+]
+  17, 2, 5, 2 !TDC ROC#3 Sl#23 Ch#17 SSCIN pl#2 [Y1] id sig#5 [TDC+]
+  18, 2, 7, 2 !TDC ROC#3 Sl#23 Ch#18 SSCIN pl#2 [Y1] id sig#7 [TDC+]
+  19, 2, 9, 2 !TDC ROC#3 Sl#23 Ch#19 SSCIN pl#2 [Y1] id sig#9 [TDC+]
+  20, 2, 2, 2 !TDC ROC#3 Sl#23 Ch#20 SSCIN pl#2 [Y1] id sig#2 [TDC+]
+  21, 2, 4, 2 !TDC ROC#3 Sl#23 Ch#21 SSCIN pl#2 [Y1] id sig#4 [TDC+]
+  22, 2, 6, 2 !TDC ROC#3 Sl#23 Ch#22 SSCIN pl#2 [Y1] id sig#6 [TDC+]
+  23, 2, 8, 2 !TDC ROC#3 Sl#23 Ch#23 SSCIN pl#2 [Y1] id sig#8 [TDC+]
+  24, 2, 3, 3 !TDC ROC#3 Sl#23 Ch#24 SSCIN pl#2 [Y1] id sig#3 [TDC-]
+  25, 2, 5, 3 !TDC ROC#3 Sl#23 Ch#25 SSCIN pl#2 [Y1] id sig#5 [TDC-]
+  26, 2, 7, 3 !TDC ROC#3 Sl#23 Ch#26 SSCIN pl#2 [Y1] id sig#7 [TDC-]
+  27, 2, 9, 3 !TDC ROC#3 Sl#23 Ch#27 SSCIN pl#2 [Y1] id sig#9 [TDC-]
+  28, 2, 2, 3 !TDC ROC#3 Sl#23 Ch#28 SSCIN pl#2 [Y1] id sig#2 [TDC-]
+  29, 2, 4, 3 !TDC ROC#3 Sl#23 Ch#29 SSCIN pl#2 [Y1] id sig#4 [TDC-]
+  30, 2, 6, 3 !TDC ROC#3 Sl#23 Ch#30 SSCIN pl#2 [Y1] id sig#6 [TDC-]
+  31, 2, 8, 3 !TDC ROC#3 Sl#23 Ch#31 SSCIN pl#2 [Y1] id sig#8 [TDC-]
+  32, 4, 3, 2 !TDC ROC#3 Sl#23 Ch#32 SSCIN pl#4 [Y2] id sig#3 [TDC+]
+  33, 4, 5, 2 !TDC ROC#3 Sl#23 Ch#33 SSCIN pl#4 [Y2] id sig#5 [TDC+]
+  34, 4, 7, 2 !TDC ROC#3 Sl#23 Ch#34 SSCIN pl#4 [Y2] id sig#7 [TDC+]
+  35, 4, 9, 2 !TDC ROC#3 Sl#23 Ch#35 SSCIN pl#4 [Y2] id sig#9 [TDC+]
+  36, 4, 2, 2 !TDC ROC#3 Sl#23 Ch#36 SSCIN pl#4 [Y2] id sig#2 [TDC+]
+  37, 4, 4, 2 !TDC ROC#3 Sl#23 Ch#37 SSCIN pl#4 [Y2] id sig#4 [TDC+]
+  38, 4, 6, 2 !TDC ROC#3 Sl#23 Ch#38 SSCIN pl#4 [Y2] id sig#6 [TDC+]
+  39, 4, 8, 2 !TDC ROC#3 Sl#23 Ch#39 SSCIN pl#4 [Y2] id sig#8 [TDC+]
+  40, 4, 3, 3 !TDC ROC#3 Sl#23 Ch#40 SSCIN pl#4 [Y2] id sig#3 [TDC-]
+  41, 4, 5, 3 !TDC ROC#3 Sl#23 Ch#41 SSCIN pl#4 [Y2] id sig#5 [TDC-]
+  42, 4, 7, 3 !TDC ROC#3 Sl#23 Ch#42 SSCIN pl#4 [Y2] id sig#7 [TDC-]
+  43, 4, 9, 3 !TDC ROC#3 Sl#23 Ch#43 SSCIN pl#4 [Y2] id sig#9 [TDC-]
+  44, 4, 2, 3 !TDC ROC#3 Sl#23 Ch#44 SSCIN pl#4 [Y2] id sig#2 [TDC-]
+  45, 4, 4, 3 !TDC ROC#3 Sl#23 Ch#45 SSCIN pl#4 [Y2] id sig#4 [TDC-]
+  46, 4, 6, 3 !TDC ROC#3 Sl#23 Ch#46 SSCIN pl#4 [Y2] id sig#6 [TDC-]
+  47, 4, 8, 3 !TDC ROC#3 Sl#23 Ch#47 SSCIN pl#4 [Y2] id sig#8 [TDC-]
+  48, 1, 1, 2 !TDC ROC#3 Sl#23 Ch#48 SSCIN pl#1 [X1] id sig#1 [TDC+]
+  49, 1, 1, 3 !TDC ROC#3 Sl#23 Ch#49 SSCIN pl#1 [X1] id sig#1 [TDC-]
+  50, 2, 1, 2 !TDC ROC#3 Sl#23 Ch#50 SSCIN pl#2 [Y1] id sig#1 [TDC+]
+  51, 2, 1, 3 !TDC ROC#3 Sl#23 Ch#51 SSCIN pl#2 [Y1] id sig#1 [TDC-]
+  52, 4, 1, 2 !TDC ROC#3 Sl#23 Ch#52 SSCIN pl#4 [Y2] id sig#1 [TDC+]
+  53, 4, 1, 3 !TDC ROC#3 Sl#23 Ch#53 SSCIN pl#4 [Y2] id sig#1 [TDC-]
+!  54 !TDC ROC#3 Sl#23 Ch#54 unused
+!  55 !TDC ROC#3 Sl#23 Ch#55 unused
+!  56 !TDC ROC#3 Sl#23 Ch#56 unused
+!  57 !TDC ROC#3 Sl#23 Ch#57 unused
+!  58 !TDC ROC#3 Sl#23 Ch#58 unused
+!  59 !TDC ROC#3 Sl#23 Ch#59 unused
+!  60 !TDC ROC#3 Sl#23 Ch#60 unused
+!  61 !TDC ROC#3 Sl#23 Ch#61 unused
+!  62 !TDC ROC#3 Sl#23 Ch#62 unused
+!  63 !TDC ROC#3 Sl#23 Ch#63 unused
+!
+!for run 8023, swapped HMS and SOS TDC so that TDC with first 8
+!channels dead would be here.  Moved connectors 1 and 2 to position
+!3 and 4.  Moved 3 singles channels (in connector3) to connector 2.
+
+ Slot= 20 ! TDC  
+  32, 3, 1, 2 !TDC ROC#3 Sl#21 Ch#0 SSCIN pl#3 [X2] id sig#1 [TDC+]
+  33, 3, 3, 2 !TDC ROC#3 Sl#21 Ch#1 SSCIN pl#3 [X2] id sig#3 [TDC+]
+  34, 3, 5, 2 !TDC ROC#3 Sl#21 Ch#2 SSCIN pl#3 [X2] id sig#5 [TDC+]
+  35, 3, 7, 2 !TDC ROC#3 Sl#21 Ch#3 SSCIN pl#3 [X2] id sig#7 [TDC+]
+  36, 3, 9, 2 !TDC ROC#3 Sl#21 Ch#4 SSCIN pl#3 [X2] id sig#9 [TDC+]
+  37, 3, 11, 2 !TDC ROC#3 Sl#21 Ch#5 SSCIN pl#3 [X2] id sig#11 [TDC+]
+  38, 3, 13, 2 !TDC ROC#3 Sl#21 Ch#6 SSCIN pl#3 [X2] id sig#13 [TDC+]
+  39, 3, 15, 2 !TDC ROC#3 Sl#21 Ch#7 SSCIN pl#3 [X2] id sig#15 [TDC+]
+  40, 3, 2, 2 !TDC ROC#3 Sl#21 Ch#8 SSCIN pl#3 [X2] id sig#2 [TDC+]
+  41, 3, 4, 2 !TDC ROC#3 Sl#21 Ch#9 SSCIN pl#3 [X2] id sig#4 [TDC+]
+  42, 3, 6, 2 !TDC ROC#3 Sl#21 Ch#10 SSCIN pl#3 [X2] id sig#6 [TDC+]
+  43, 3, 8, 2 !TDC ROC#3 Sl#21 Ch#11 SSCIN pl#3 [X2] id sig#8 [TDC+]
+  44, 3, 10, 2 !TDC ROC#3 Sl#21 Ch#12 SSCIN pl#3 [X2] id sig#10 [TDC+]
+  45, 3, 12, 2 !TDC ROC#3 Sl#21 Ch#13 SSCIN pl#3 [X2] id sig#12 [TDC+]
+  46, 3, 14, 2 !TDC ROC#3 Sl#21 Ch#14 SSCIN pl#3 [X2] id sig#14 [TDC+]
+  47, 3, 16, 2 !TDC ROC#3 Sl#21 Ch#15 SSCIN pl#3 [X2] id sig#16 [TDC+]
+  48, 3, 1, 3 !TDC ROC#3 Sl#21 Ch#16 SSCIN pl#3 [X2] id sig#1 [TDC-]
+  49, 3, 3, 3 !TDC ROC#3 Sl#21 Ch#17 SSCIN pl#3 [X2] id sig#3 [TDC-]
+  50, 3, 5, 3 !TDC ROC#3 Sl#21 Ch#18 SSCIN pl#3 [X2] id sig#5 [TDC-]
+  51, 3, 7, 3 !TDC ROC#3 Sl#21 Ch#19 SSCIN pl#3 [X2] id sig#7 [TDC-]
+  52, 3, 9, 3 !TDC ROC#3 Sl#21 Ch#20 SSCIN pl#3 [X2] id sig#9 [TDC-]
+  53, 3, 11, 3 !TDC ROC#3 Sl#21 Ch#21 SSCIN pl#3 [X2] id sig#11 [TDC-]
+  54, 3, 13, 3 !TDC ROC#3 Sl#21 Ch#22 SSCIN pl#3 [X2] id sig#13 [TDC-]
+  55, 3, 15, 3 !TDC ROC#3 Sl#21 Ch#23 SSCIN pl#3 [X2] id sig#15 [TDC-]
+  56, 3, 2, 3 !TDC ROC#3 Sl#21 Ch#24 SSCIN pl#3 [X2] id sig#2 [TDC-]
+  57, 3, 4, 3 !TDC ROC#3 Sl#21 Ch#25 SSCIN pl#3 [X2] id sig#4 [TDC-]
+  58, 3, 6, 3 !TDC ROC#3 Sl#21 Ch#26 SSCIN pl#3 [X2] id sig#6 [TDC-]
+  59, 3, 8, 3 !TDC ROC#3 Sl#21 Ch#27 SSCIN pl#3 [X2] id sig#8 [TDC-]
+  60, 3, 10, 3 !TDC ROC#3 Sl#21 Ch#28 SSCIN pl#3 [X2] id sig#10 [TDC-]
+  61, 3, 12, 3 !TDC ROC#3 Sl#21 Ch#29 SSCIN pl#3 [X2] id sig#12 [TDC-]
+  62, 3, 14, 3 !TDC ROC#3 Sl#21 Ch#30 SSCIN pl#3 [X2] id sig#14 [TDC-]
+  63, 3, 16, 3 !TDC ROC#3 Sl#21 Ch#31 SSCIN pl#3 [X2] id sig#16  [TDC-]
+!
+    detector= 15 !SMISC
+!
+  16, 1, 65, 0  ! 0 !TDC ROC#3 Sl#21 Ch#32 RF TDC.
+!
+    detector= 15 !SMISC
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 18 ! TDC  
+0, 1, 1, 0  ! 0 !TDC ROC#3 Sl#20 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#3 Sl#20 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#3 Sl#20 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#3 Sl#20 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#3 Sl#20 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#3 Sl#20 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#3 Sl#20 Ch#6 unused     {MuonL}
+7, 1, 8, 0  ! 7 !TDC ROC#3 Sl#20 Ch#7 unused     {MuonR}
+8, 1, 9, 0  ! 8 !TDC ROC#3 Sl#20 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#3 Sl#20 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#3 Sl#20 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#3 Sl#20 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#3 Sl#20 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#3 Sl#20 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#3 Sl#20 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#3 Sl#20 Ch#15 signal {PEDTRG}
+
+  Slot= 18! TDC
+16, 1, 17, 0  ! 16 !TDC ROC#3 Sl#18 Ch#16 signal {sS1}           
+17, 1, 18, 0  ! 17 !TDC ROC#3 Sl#18 Ch#17 signal {sPRE50}        
+18, 1, 19, 0  ! 18 !TDC ROC#3 Sl#18 Ch#18 signal {sS2X}          
+19, 1, 20, 0  ! 19 !TDC ROC#3 Sl#18 Ch#19 signal {sPRE150}       
+20, 1, 21, 0  ! 20 !TDC ROC#3 Sl#18 Ch#20 signal {sS1X}          
+21, 1, 22, 0  ! 21 !TDC ROC#3 Sl#18 Ch#21 signal {sS2Y}          
+22, 1, 23, 0  ! 22 !TDC ROC#3 Sl#18 Ch#22 signal {sPRE100}       
+23, 1, 24, 0  ! 23 !TDC ROC#3 Sl#18 Ch#23 signal {sS1Y}          
+24, 1, 25, 0  ! 24 !TDC ROC#3 Sl#18 Ch#24 signal {sS2}           
+25, 1, 26, 0  ! 25 !TDC ROC#3 Sl#18 Ch#25 signal {sPRE200}       
+26, 1, 27, 0  ! 26 !TDC ROC#3 Sl#18 Ch#26 signal {sSTOF}         
+27, 1, 28, 0  ! 27 !TDC ROC#3 Sl#18 Ch#27 signal {sSCIN}         
+28, 1, 29, 0  ! 28 !TDC ROC#3 Sl#18 Ch#28 signal {sELREAL}       
+29, 1, 30, 0  ! 29 !TDC ROC#3 Sl#18 Ch#29 signal {sPIPRE}        
+30, 1, 31, 0  ! 30 !TDC ROC#3 Sl#18 Ch#30 signal {sELCLEAN}      
+31, 1, 32, 0  ! 31 !TDC ROC#3 Sl#18 Ch#31 signal {sPRETRG}       
+32, 1, 33, 0  ! 32 !TDC ROC#3 Sl#18 Ch#32 signal {BCM1}          
+33, 1, 34, 0  ! 33 !TDC ROC#3 Sl#18 Ch#33 signal {BCM2}          
+34, 1, 35, 0  ! 34 !TDC ROC#3 Sl#18 Ch#34 signal {BCM3}          
+35, 1, 36, 0  ! 35 !TDC ROC#3 Sl#18 Ch#35 signal {UNSER}         
+36, 1, 37, 0  ! 36 !TDC ROC#3 Sl#18 Ch#36 signal {CLOCK}         
+37, 1, 38, 0  ! 37 !TDC ROC#3 Sl#18 Ch#37 signal {1 MHz * 36??}  
+38, 1, 39, 0  ! 38 !TDC ROC#3 Sl#18 Ch#38 signal {sPICLEAN}      
+39, 1, 40, 0  ! 39 !TDC ROC#3 Sl#18 Ch#39 signal {sELCLEAN}      
+40, 1, 41, 0  ! 40 !TDC ROC#3 Sl#18 Ch#40 signal {sPION}         
+41, 1, 42, 0  ! 41 !TDC ROC#3 Sl#18 Ch#41 signal {sCER}          
+42, 1, 43, 0  ! 42 !TDC ROC#3 Sl#18 Ch#42 signal {sELHI}         
+43, 1, 44, 0  ! 43 !TDC ROC#3 Sl#18 Ch#43 signal {sELLO}         
+44, 1, 45, 0  ! 44 !TDC ROC#3 Sl#18 Ch#44 signal {sPRHI}         
+45, 1, 46, 0  ! 45 !TDC ROC#3 Sl#18 Ch#45 signal {sPRLO}         
+46, 1, 47, 0  ! 46 !TDC ROC#3 Sl#18 Ch#46 signal {sSHLO}         
+47, 1, 48, 0  ! 47 !TDC ROC#3 Sl#18 Ch#47 signal {PEDS+TRIGS?}   
+!
+!       ADC module LeCroy 1881M
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+    detector= 12 !SSCIN
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#3 Sl#9 Ch#0 SSCIN pl#1 [X1] id sig#1 [ADC+]
+  1, 1, 3, 0 !ADC ROC#3 Sl#9 Ch#1 SSCIN pl#1 [X1] id sig#3 [ADC+]
+  2, 1, 5, 0 !ADC ROC#3 Sl#9 Ch#2 SSCIN pl#1 [X1] id sig#5 [ADC+]
+  3, 1, 7, 0 !ADC ROC#3 Sl#9 Ch#3 SSCIN pl#1 [X1] id sig#7 [ADC+]
+  4, 1, 9, 0 !ADC ROC#3 Sl#9 Ch#4 SSCIN pl#1 [X1] id sig#9 [ADC+]
+!  5 !ADC ROC#3 Sl#9 Ch#5 unused
+!  6 !ADC ROC#3 Sl#9 Ch#6 unused
+!  7 !ADC ROC#3 Sl#9 Ch#7 unused
+  8, 1, 2, 0 !ADC ROC#3 Sl#9 Ch#8 SSCIN pl#1 [X1] id sig#2 [ADC+]
+  9, 1, 4, 0 !ADC ROC#3 Sl#9 Ch#9 SSCIN pl#1 [X1] id sig#4 [ADC+]
+  10, 1, 6, 0 !ADC ROC#3 Sl#9 Ch#10 SSCIN pl#1 [X1] id sig#6 [ADC+]
+  11, 1, 8, 0 !ADC ROC#3 Sl#9 Ch#11 SSCIN pl#1 [X1] id sig#8 [ADC+]
+!  12 !ADC ROC#3 Sl#9 Ch#12 unused
+!  13 !ADC ROC#3 Sl#9 Ch#13 unused
+!  14 !ADC ROC#3 Sl#9 Ch#14 unused
+!  15 !ADC ROC#3 Sl#9 Ch#15 unused
+  16, 1, 1, 1 !ADC ROC#3 Sl#9 Ch#16 SSCIN pl#1 [X1] id sig#1 [ADC-]
+  17, 1, 3, 1 !ADC ROC#3 Sl#9 Ch#17 SSCIN pl#1 [X1] id sig#3 [ADC-]
+  18, 1, 5, 1 !ADC ROC#3 Sl#9 Ch#18 SSCIN pl#1 [X1] id sig#5 [ADC-]
+  19, 1, 7, 1 !ADC ROC#3 Sl#9 Ch#19 SSCIN pl#1 [X1] id sig#7 [ADC-]
+  20, 1, 9, 1 !ADC ROC#3 Sl#9 Ch#20 SSCIN pl#1 [X1] id sig#9 [ADC-]
+!  21 !ADC ROC#3 Sl#9 Ch#21 unused
+!  22 !ADC ROC#3 Sl#9 Ch#22 unused
+!  23 !ADC ROC#3 Sl#9 Ch#23 unused
+  24, 1, 2, 1 !ADC ROC#3 Sl#9 Ch#24 SSCIN pl#1 [X1] id sig#2 [ADC-]
+  25, 1, 4, 1 !ADC ROC#3 Sl#9 Ch#25 SSCIN pl#1 [X1] id sig#4 [ADC-]
+  26, 1, 6, 1 !ADC ROC#3 Sl#9 Ch#26 SSCIN pl#1 [X1] id sig#6 [ADC-]
+  27, 1, 8, 1 !ADC ROC#3 Sl#9 Ch#27 SSCIN pl#1 [X1] id sig#8 [ADC-]
+!  28 !ADC ROC#3 Sl#9 Ch#28 unused
+!  29 !ADC ROC#3 Sl#9 Ch#29 unused
+!  30 !ADC ROC#3 Sl#9 Ch#30 unused
+!  31 !ADC ROC#3 Sl#9 Ch#31 unused
+  32, 2, 1, 0 !ADC ROC#3 Sl#9 Ch#32 SSCIN pl#2 [Y1] id sig#1 [ADC+]
+  33, 2, 3, 0 !ADC ROC#3 Sl#9 Ch#33 SSCIN pl#2 [Y1] id sig#3 [ADC+]
+  34, 2, 5, 0 !ADC ROC#3 Sl#9 Ch#34 SSCIN pl#2 [Y1] id sig#5 [ADC+]
+  35, 2, 7, 0 !ADC ROC#3 Sl#9 Ch#35 SSCIN pl#2 [Y1] id sig#7 [ADC+]
+  36, 2, 9, 0 !ADC ROC#3 Sl#9 Ch#36 SSCIN pl#2 [Y1] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#9 Ch#37 unused
+!  38 !ADC ROC#3 Sl#9 Ch#38 unused
+!  39 !ADC ROC#3 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#3 Sl#9 Ch#40 SSCIN pl#2 [Y1] id sig#2 [ADC+]
+  41, 2, 4, 0 !ADC ROC#3 Sl#9 Ch#41 SSCIN pl#2 [Y1] id sig#4 [ADC+]
+  42, 2, 6, 0 !ADC ROC#3 Sl#9 Ch#42 SSCIN pl#2 [Y1] id sig#6 [ADC+]
+  43, 2, 8, 0 !ADC ROC#3 Sl#9 Ch#43 SSCIN pl#2 [Y1] id sig#8 [ADC+]
+!  44 !ADC ROC#3 Sl#9 Ch#44 unused
+!  45 !ADC ROC#3 Sl#9 Ch#45 unused
+!  46 !ADC ROC#3 Sl#9 Ch#46 unused
+!  47 !ADC ROC#3 Sl#9 Ch#47 unused
+  48, 2, 1, 1 !ADC ROC#3 Sl#9 Ch#48 SSCIN pl#2 [Y1] id sig#1 [ADC-]
+  49, 2, 3, 1 !ADC ROC#3 Sl#9 Ch#49 SSCIN pl#2 [Y1] id sig#3 [ADC-]
+  50, 2, 5, 1 !ADC ROC#3 Sl#9 Ch#50 SSCIN pl#2 [Y1] id sig#5 [ADC-]
+  51, 2, 7, 1 !ADC ROC#3 Sl#9 Ch#51 SSCIN pl#2 [Y1] id sig#7 [ADC-]
+  52, 2, 9, 1 !ADC ROC#3 Sl#9 Ch#52 SSCIN pl#2 [Y1] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#9 Ch#53 unused
+!  54 !ADC ROC#3 Sl#9 Ch#54 unused
+!  55 !ADC ROC#3 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#3 Sl#9 Ch#56 SSCIN pl#2 [Y1] id sig#2 [ADC-]
+  57, 2, 4, 1 !ADC ROC#3 Sl#9 Ch#57 SSCIN pl#2 [Y1] id sig#4 [ADC-]
+  58, 2, 6, 1 !ADC ROC#3 Sl#9 Ch#58 SSCIN pl#2 [Y1] id sig#6 [ADC-]
+  59, 2, 8, 1 !ADC ROC#3 Sl#9 Ch#59 SSCIN pl#2 [Y1] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#9 Ch#60 unused
+!  61 !ADC ROC#3 Sl#9 Ch#61 unused
+!  62 !ADC ROC#3 Sl#9 Ch#62 unused
+!  63 !ADC ROC#3 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#3 Sl#7 Ch#0 SSCIN pl#3 [X2] id sig#1 [ADC+]
+  1, 3, 3, 0 !ADC ROC#3 Sl#7 Ch#1 SSCIN pl#3 [X2] id sig#3 [ADC+]
+  2, 3, 5, 0 !ADC ROC#3 Sl#7 Ch#2 SSCIN pl#3 [X2] id sig#5 [ADC+]
+  3, 3, 7, 0 !ADC ROC#3 Sl#7 Ch#3 SSCIN pl#3 [X2] id sig#7 [ADC+]
+  4, 3, 9, 0 !ADC ROC#3 Sl#7 Ch#4 SSCIN pl#3 [X2] id sig#9 [ADC+]
+  5, 3, 11, 0 !ADC ROC#3 Sl#7 Ch#5 SSCIN pl#3 [X2] id sig#11 [ADC+]
+  6, 3, 13, 0 !ADC ROC#3 Sl#7 Ch#6 SSCIN pl#3 [X2] id sig#13 [ADC+]
+  7, 3, 15, 0 !ADC ROC#3 Sl#7 Ch#7 SSCIN pl#3 [X2] id sig#15 [ADC+]
+  8, 3, 2, 0 !ADC ROC#3 Sl#7 Ch#8 SSCIN pl#3 [X2] id sig#2 [ADC+]
+  9, 3, 4, 0 !ADC ROC#3 Sl#7 Ch#9 SSCIN pl#3 [X2] id sig#4 [ADC+]
+  10, 3, 6, 0 !ADC ROC#3 Sl#7 Ch#10 SSCIN pl#3 [X2] id sig#6 [ADC+]
+  11, 3, 8, 0 !ADC ROC#3 Sl#7 Ch#11 SSCIN pl#3 [X2] id sig#8 [ADC+]
+  12, 3, 10, 0 !ADC ROC#3 Sl#7 Ch#12 SSCIN pl#3 [X2] id sig#10 [ADC+]
+  13, 3, 12, 0 !ADC ROC#3 Sl#7 Ch#13 SSCIN pl#3 [X2] id sig#12 [ADC+]
+  14, 3, 14, 0 !ADC ROC#3 Sl#7 Ch#14 SSCIN pl#3 [X2] id sig#14 [ADC+]
+  15, 3, 16, 0 !ADC ROC#3 Sl#7 Ch#15 SSCIN pl#3 [X2] id sig#16 [ADC+]
+  16, 3, 1, 1 !ADC ROC#3 Sl#7 Ch#16 SSCIN pl#3 [X2] id sig#1 [ADC-]
+  17, 3, 3, 1 !ADC ROC#3 Sl#7 Ch#17 SSCIN pl#3 [X2] id sig#3 [ADC-]
+  18, 3, 5, 1 !ADC ROC#3 Sl#7 Ch#18 SSCIN pl#3 [X2] id sig#5 [ADC-]
+  19, 3, 7, 1 !ADC ROC#3 Sl#7 Ch#19 SSCIN pl#3 [X2] id sig#7 [ADC-]
+  20, 3, 9, 1 !ADC ROC#3 Sl#7 Ch#20 SSCIN pl#3 [X2] id sig#9 [ADC-]
+  21, 3, 11, 1 !ADC ROC#3 Sl#7 Ch#21 SSCIN pl#3 [X2] id sig#11 [ADC-]
+  22, 3, 13, 1 !ADC ROC#3 Sl#7 Ch#22 SSCIN pl#3 [X2] id sig#13 [ADC-]
+  23, 3, 15, 1 !ADC ROC#3 Sl#7 Ch#23 SSCIN pl#3 [X2] id sig#15 [ADC-]
+  24, 3, 2, 1 !ADC ROC#3 Sl#7 Ch#24 SSCIN pl#3 [X2] id sig#2 [ADC-]
+  25, 3, 4, 1 !ADC ROC#3 Sl#7 Ch#25 SSCIN pl#3 [X2] id sig#4 [ADC-]
+  26, 3, 6, 1 !ADC ROC#3 Sl#7 Ch#26 SSCIN pl#3 [X2] id sig#6 [ADC-]
+  27, 3, 8, 1 !ADC ROC#3 Sl#7 Ch#27 SSCIN pl#3 [X2] id sig#8 [ADC-]
+  28, 3, 10, 1 !ADC ROC#3 Sl#7 Ch#28 SSCIN pl#3 [X2] id sig#10 [ADC-]
+  29, 3, 12, 1 !ADC ROC#3 Sl#7 Ch#29 SSCIN pl#3 [X2] id sig#12 [ADC-]
+  30, 3, 14, 1 !ADC ROC#3 Sl#7 Ch#30 SSCIN pl#3 [X2] id sig#14 [ADC-]
+  31, 3, 16, 1 !ADC ROC#3 Sl#7 Ch#31 SSCIN pl#3 [X2] id sig#16 [ADC-]
+  32, 4, 1, 0 !ADC ROC#3 Sl#7 Ch#32 SSCIN pl#4 [Y2] id sig#1 [ADC+]
+  33, 4, 3, 0 !ADC ROC#3 Sl#7 Ch#33 SSCIN pl#4 [Y2] id sig#3 [ADC+]
+  34, 4, 5, 0 !ADC ROC#3 Sl#7 Ch#34 SSCIN pl#4 [Y2] id sig#5 [ADC+]
+  35, 4, 7, 0 !ADC ROC#3 Sl#7 Ch#35 SSCIN pl#4 [Y2] id sig#7 [ADC+]
+  36, 4, 9, 0 !ADC ROC#3 Sl#7 Ch#36 SSCIN pl#4 [Y2] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#7 Ch#37 unused
+!  38 !ADC ROC#3 Sl#7 Ch#38 unused
+!  39 !ADC ROC#3 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#3 Sl#7 Ch#40 SSCIN pl#4 [Y2] id sig#2 [ADC+]
+  41, 4, 4, 0 !ADC ROC#3 Sl#7 Ch#41 SSCIN pl#4 [Y2] id sig#4 [ADC+]
+  42, 4, 6, 0 !ADC ROC#3 Sl#7 Ch#42 SSCIN pl#4 [Y2] id sig#6 [ADC+]
+!  43, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+] DEAD CH!
+!  44 !ADC ROC#3 Sl#7 Ch#44 unused
+!  45 !ADC ROC#3 Sl#7 Ch#45 unused
+!  46 !ADC ROC#3 Sl#7 Ch#46 unused
+  47, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+]
+  48, 4, 1, 1 !ADC ROC#3 Sl#7 Ch#48 SSCIN pl#4 [Y2] id sig#1 [ADC-]
+  49, 4, 3, 1 !ADC ROC#3 Sl#7 Ch#49 SSCIN pl#4 [Y2] id sig#3 [ADC-]
+  50, 4, 5, 1 !ADC ROC#3 Sl#7 Ch#50 SSCIN pl#4 [Y2] id sig#5 [ADC-]
+  51, 4, 7, 1 !ADC ROC#3 Sl#7 Ch#51 SSCIN pl#4 [Y2] id sig#7 [ADC-]
+  52, 4, 9, 1 !ADC ROC#3 Sl#7 Ch#52 SSCIN pl#4 [Y2] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#7 Ch#53 unused
+!  54 !ADC ROC#3 Sl#7 Ch#54 unused
+!  55 !ADC ROC#3 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#3 Sl#7 Ch#56 SSCIN pl#4 [Y2] id sig#2 [ADC-]
+  57, 4, 4, 1 !ADC ROC#3 Sl#7 Ch#57 SSCIN pl#4 [Y2] id sig#4 [ADC-]
+  58, 4, 6, 1 !ADC ROC#3 Sl#7 Ch#58 SSCIN pl#4 [Y2] id sig#6 [ADC-]
+  59, 4, 8, 1 !ADC ROC#3 Sl#7 Ch#59 SSCIN pl#4 [Y2] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#7 Ch#60 unused
+!  61 !ADC ROC#3 Sl#7 Ch#61 unused
+!  62 !ADC ROC#3 Sl#7 Ch#62 unused
+!  63 !ADC ROC#3 Sl#7 Ch#63 unused
+!
+    detector= 14 !SCAL
+!
+ Slot= 1 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#1 Ch#0 SCAL column#1 row#1
+  1, 1, 2 !ADC ROC#3 Sl#1 Ch#1 SCAL column#1 row#2
+  2, 1, 3 !ADC ROC#3 Sl#1 Ch#2 SCAL column#1 row#3
+  3, 1, 4 !ADC ROC#3 Sl#1 Ch#3 SCAL column#1 row#4
+  4, 1, 5 !ADC ROC#3 Sl#1 Ch#4 SCAL column#1 row#5
+  5, 1, 6 !ADC ROC#3 Sl#1 Ch#5 SCAL column#1 row#6
+  6, 1, 7 !ADC ROC#3 Sl#1 Ch#6 SCAL column#1 row#7
+  7, 1, 8 !ADC ROC#3 Sl#1 Ch#7 SCAL column#1 row#8
+  8, 1, 9 !ADC ROC#3 Sl#1 Ch#8 SCAL column#1 row#9
+  9, 1, 10 !ADC ROC#3 Sl#1 Ch#9 SCAL column#1 row#10
+  10, 1, 11 !ADC ROC#3 Sl#1 Ch#10 SCAL column#1 row#11
+!  11 !ADC ROC#3 Sl#1 Ch#11 unused
+!  12 !ADC ROC#3 Sl#1 Ch#12 unused
+!  13 !ADC ROC#3 Sl#1 Ch#13 unused
+!  14 !ADC ROC#3 Sl#1 Ch#14 unused
+!  15 !ADC ROC#3 Sl#1 Ch#15 unused
+  16, 2, 1 !ADC ROC#3 Sl#1 Ch#16 SCAL column#2 row#1
+  17, 2, 2 !ADC ROC#3 Sl#1 Ch#17 SCAL column#2 row#2
+  18, 2, 3 !ADC ROC#3 Sl#1 Ch#18 SCAL column#2 row#3
+  19, 2, 4 !ADC ROC#3 Sl#1 Ch#19 SCAL column#2 row#4
+  20, 2, 5 !ADC ROC#3 Sl#1 Ch#20 SCAL column#2 row#5
+  21, 2, 6 !ADC ROC#3 Sl#1 Ch#21 SCAL column#2 row#6
+  22, 2, 7 !ADC ROC#3 Sl#1 Ch#22 SCAL column#2 row#7
+  23, 2, 8 !ADC ROC#3 Sl#1 Ch#23 SCAL column#2 row#8
+  24, 2, 9 !ADC ROC#3 Sl#1 Ch#24 SCAL column#2 row#9
+  25, 2, 10 !ADC ROC#3 Sl#1 Ch#25 SCAL column#2 row#10
+  26, 2, 11 !ADC ROC#3 Sl#1 Ch#26 SCAL column#2 row#11
+!  27 !ADC ROC#3 Sl#1 Ch#27 unused
+!  28 !ADC ROC#3 Sl#1 Ch#28 unused
+!  29 !ADC ROC#3 Sl#1 Ch#29 unused
+!  30 !ADC ROC#3 Sl#1 Ch#30 unused
+!  31 !ADC ROC#3 Sl#1 Ch#31 unused
+!  32, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1  
+  44, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1
+  33, 3, 2 !ADC ROC#3 Sl#1 Ch#33 SCAL column#3 row#2
+  34, 3, 3 !ADC ROC#3 Sl#1 Ch#34 SCAL column#3 row#3
+  35, 3, 4 !ADC ROC#3 Sl#1 Ch#35 SCAL column#3 row#4
+  36, 3, 5 !ADC ROC#3 Sl#1 Ch#36 SCAL column#3 row#5
+  37, 3, 6 !ADC ROC#3 Sl#1 Ch#37 SCAL column#3 row#6
+  38, 3, 7 !ADC ROC#3 Sl#1 Ch#38 SCAL column#3 row#7
+  39, 3, 8 !ADC ROC#3 Sl#1 Ch#39 SCAL column#3 row#8
+  40, 3, 9 !ADC ROC#3 Sl#1 Ch#40 SCAL column#3 row#9
+  41, 3, 10 !ADC ROC#3 Sl#1 Ch#41 SCAL column#3 row#10
+  42, 3, 11 !ADC ROC#3 Sl#1 Ch#42 SCAL column#3 row#11
+!  43 !ADC ROC#3 Sl#1 Ch#43 unused
+!  44 !ADC ROC#3 Sl#1 Ch#44 unused
+!  45 !ADC ROC#3 Sl#1 Ch#45 unused
+!  46 !ADC ROC#3 Sl#1 Ch#46 unused
+!  47 !ADC ROC#3 Sl#1 Ch#47 unused
+
+!sD1 was being lost in the ADC delay lines.  Move to channel #15.
+!  48, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!
+  49, 4, 2 !ADC ROC#3 Sl#1 Ch#49 SCAL column#4 row#2
+  50, 4, 3 !ADC ROC#3 Sl#1 Ch#50 SCAL column#4 row#3
+  51, 4, 4 !ADC ROC#3 Sl#1 Ch#51 SCAL column#4 row#4
+  52, 4, 5 !ADC ROC#3 Sl#1 Ch#52 SCAL column#4 row#5
+  53, 4, 6 !ADC ROC#3 Sl#1 Ch#53 SCAL column#4 row#6
+  54, 4, 7 !ADC ROC#3 Sl#1 Ch#54 SCAL column#4 row#7
+  55, 4, 8 !ADC ROC#3 Sl#1 Ch#55 SCAL column#4 row#8
+  56, 4, 9 !ADC ROC#3 Sl#1 Ch#56 SCAL column#4 row#9
+  57, 4, 10 !ADC ROC#3 Sl#1 Ch#57 SCAL column#4 row#10
+  58, 4, 11 !ADC ROC#3 Sl#1 Ch#58 SCAL column#4 row#11
+!  59 !ADC ROC#3 Sl#1 Ch#59 unused
+!  60 !ADC ROC#3 Sl#1 Ch#60 unused
+!  61 !ADC ROC#3 Sl#1 Ch#61 unused
+!  62 !ADC ROC#3 Sl#1 Ch#62 unused
+  62, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!  63 !ADC ROC#3 Sl#1 Ch#63 unused
+ detector= 15   !smisc  -  photodiode for laser gain calibration system.
+ 63, 2, 1, 0    !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+!
+detector= 14 !SCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+!  0, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  12, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#3 Sl#5 Ch#1 SCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#3 Sl#5 Ch#2 SCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#3 Sl#5 Ch#3 SCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#3 Sl#5 Ch#4 SCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#3 Sl#5 Ch#5 SCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#3 Sl#5 Ch#6 SCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#3 Sl#5 Ch#7 SCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#3 Sl#5 Ch#8 SCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#3 Sl#5 Ch#9 SCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#3 Sl#5 Ch#10 SCAL col#1 row#11 (10 An-11)
+!   11 !ADC ROC#3 Sl#5 Ch#11 unused
+!   12 !ADC ROC#3 Sl#5 Ch#12 unused
+!   13 !ADC ROC#3 Sl#5 Ch#13 unused
+!   14 !ADC ROC#3 Sl#5 Ch#14 unused
+!   15 !ADC ROC#3 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#3 Sl#5 Ch#16 SCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#3 Sl#5 Ch#17 SCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#3 Sl#5 Ch#18 SCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#3 Sl#5 Ch#19 SCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#3 Sl#5 Ch#20 SCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#3 Sl#5 Ch#21 SCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#3 Sl#5 Ch#22 SCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#3 Sl#5 Ch#23 SCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#3 Sl#5 Ch#24 SCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#3 Sl#5 Ch#25 SCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#3 Sl#5 Ch#26 SCAL col#2 row#11 (26 Bn-11)
+!  27 !ADC ROC#3 Sl#5 Ch#27 unused
+!  28 !ADC ROC#3 Sl#5 Ch#28 unused
+!  29 !ADC ROC#3 Sl#5 Ch#29 unused
+!  30 !ADC ROC#3 Sl#5 Ch#30 unused
+!  31 !ADC ROC#3 Sl#5 Ch#31 unused
+!
+    detector= 13 !SCER
+!
+ Slot= 3 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#3 Ch#0 SCER tube#1
+  1, 1, 2 !ADC ROC#3 Sl#3 Ch#1 SCER tube#2
+  2, 1, 3 !ADC ROC#3 Sl#3 Ch#2 SCER tube#3
+  3, 1, 4 !ADC ROC#3 Sl#3 Ch#3 SCER tube#4
+detector=15 ! SMISC helicity stuff mkj 5/15/03
+!           ! muon det added 6/17/03
+  4, 2, 5,0 !  4 !ADC ROC#3 Sl#3 Ch#4 unused
+  5, 2, 6,0 !  5 !ADC ROC#3 Sl#3 Ch#5 unused
+!  6 !ADC ROC#3 Sl#3 Ch#6 unused
+!  7 !ADC ROC#3 Sl#3 Ch#7 unused
+!  8 !ADC ROC#3 Sl#3 Ch#8 unused
+8,2,2,0  ! mps  clock
+!  9 !ADC ROC#3 Sl#3 Ch#9 unused
+!  10 !ADC ROC#3 Sl#3 Ch#10 unused
+!  11 !ADC ROC#3 Sl#3 Ch#11 unused
+!  12 !ADC ROC#3 Sl#3 Ch#12 unused
+12,2,3,0  ! H+ signal
+15,2,4,0  ! H- signal
+!  13 !ADC ROC#3 Sl#3 Ch#13 unused
+!  14 !ADC ROC#3 Sl#3 Ch#14 unused
+!  15 !ADC ROC#3 Sl#3 Ch#15 unused
+  ! 16 !ADC ROC#3 Sl#3 Ch#16 signal {A01}
+  ! 17 !ADC ROC#3 Sl#3 Ch#17 signal {A02}
+  ! 18 !ADC ROC#3 Sl#3 Ch#18 signal {A03}
+  ! 19 !ADC ROC#3 Sl#3 Ch#19 signal {A04}
+  ! 20 !ADC ROC#3 Sl#3 Ch#20 signal {A05}
+  ! 21 !ADC ROC#3 Sl#3 Ch#21 signal {A06}
+  ! 22 !ADC ROC#3 Sl#3 Ch#22 signal {A07}
+  ! 23 !ADC ROC#3 Sl#3 Ch#23 signal {A08}
+  ! 24 !ADC ROC#3 Sl#3 Ch#24 signal {A09}
+  ! 25 !ADC ROC#3 Sl#3 Ch#25 signal {A10}
+  ! 26 !ADC ROC#3 Sl#3 Ch#26 signal {A11}
+  ! 27 !ADC ROC#3 Sl#3 Ch#27 signal {A12}
+  ! 28 !ADC ROC#3 Sl#3 Ch#28 signal {A13}
+  ! 29 !ADC ROC#3 Sl#3 Ch#29 signal {A14}
+  ! 30 !ADC ROC#3 Sl#3 Ch#30 signal {A15}
+  ! 31 !ADC ROC#3 Sl#3 Ch#31 signal {A16}
+!
+!........................................................
+! SAER took out from SOS detector hut (Hamlet, 21 Dec'02)
+!
+!    detector= 16 !SAER
+!
+!  32 !ADC ROC#3 Sl#3 Ch#32 DEAD!!!!
+!  33 !ADC ROC#3 Sl#3 Ch#33 unused spare
+! 34, 1, 1, 0 !ADC ROC#3 Sl#3 Ch#34 signal pos 1
+! 35, 1, 2, 0 !ADC ROC#3 Sl#3 Ch#35 signal pos 2
+! 36, 1, 3, 0 !ADC ROC#3 Sl#3 Ch#36 signal pos 3
+! 37, 1, 4, 0 !ADC ROC#3 Sl#3 Ch#37 signal pos 4
+! 38, 1, 5, 0 !ADC ROC#3 Sl#3 Ch#38 signal pos 5
+! 39, 1, 6, 0 !ADC ROC#3 Sl#3 Ch#39 signal pos 6
+! 40, 1, 7, 0 !ADC ROC#3 Sl#3 Ch#40 signal pos 7
+! 41, 1, 1, 1 !ADC ROC#3 Sl#3 Ch#41 signal neg 1
+! 42, 1, 2, 1 !ADC ROC#3 Sl#3 Ch#42 signal neg 2
+! 43, 1, 3, 1 !ADC ROC#3 Sl#3 Ch#43 signal neg 3
+! 44, 1, 4, 1 !ADC ROC#3 Sl#3 Ch#44 signal neg 4
+! 45, 1, 5, 1 !ADC ROC#3 Sl#3 Ch#45 signal neg 5
+! 46, 1, 6, 1 !ADC ROC#3 Sl#3 Ch#46 signal neg 6
+! 47, 1, 7, 1 !ADC ROC#3 Sl#3 Ch#47 signal neg 7 
+! 48, 1, 8, 0 !ADC ROC#3 Sl#3 Ch#48 amplified signal pos 1
+! 49, 1, 9, 0 !ADC ROC#3 Sl#3 Ch#49 amplified signal pos 2
+! 50, 1, 10, 0 !ADC ROC#3 Sl#3 Ch#50 amplified signal pos 3
+! 51, 1, 11, 0 !ADC ROC#3 Sl#3 Ch#51 amplified signal pos 4
+! 52, 1, 12, 0 !ADC ROC#3 Sl#3 Ch#52 amplified signal pos 5
+! 53, 1, 13, 0 !ADC ROC#3 Sl#3 Ch#53 amplified signal pos 6
+! 54, 1, 14, 0 !ADC ROC#3 Sl#3 Ch#54 amplified signal pos 7
+! 55, 1, 15, 0 !ADC ROC#3 Sl#3 Ch#62 amplified signal sum 1-7
+! 56, 1, 8, 1 !ADC ROC#3 Sl#3 Ch#55 amplified signal neg 1
+! 57, 1, 9, 1 !ADC ROC#3 Sl#3 Ch#56 amplified signal neg 2
+! 58, 1, 10, 1 !ADC ROC#3 Sl#3 Ch#57 amplified signal neg 3
+! 59, 1, 11, 1 !ADC ROC#3 Sl#3 Ch#58 amplified signal neg 4
+! 60, 1, 12, 1 !ADC ROC#3 Sl#3 Ch#59 amplified signal neg 5
+! 61, 1, 13, 1 !ADC ROC#3 Sl#3 Ch#60 amplified signal neg 6
+! 62, 1, 14, 1 !ADC ROC#3 Sl#3 Ch#61 amplified signal neg 7
+! 63, 1, 15, 1 !ADC ROC#3 Sl#3 Ch#63 amplified signal sum 8-14
+!
+
+
+
+
+
+
+
+
diff --git a/examples/MAPS/raster_jun04.map b/examples/MAPS/raster_jun04.map
new file mode 100644
index 0000000000000000000000000000000000000000..73773271badd70c9b374b63b0a3ddde7ed94448c
--- /dev/null
+++ b/examples/MAPS/raster_jun04.map
@@ -0,0 +1,3262 @@
+! Updated to reflect new TDC for HMS aerogel and proper mapping of misc
+! trigger signals in SOS.  Dave G (5/5/2003)
+!
+!
+       help       !lists available keywords
+       NOecho     !copies input lines to tty output
+       NOdebug    !turn on input debugging
+       override   !skip over errors
+!
+! hall C encode/decode configuration file
+! giving the FASTBUS geographical to standard
+! hall C COMMONs location as described by
+! "gen_data_structures.cmn"      K.B.Beard 13jun94
+!      10/19/94 (jra) Change ch1 roc to 8 (from 1), hms roc to 7 (from 2).
+!
+!       6/24/94 (SAW) Turn on lines for miscleaneous TDC's
+!                     Change ch1 roc to 1 (from 0), hms roc to 2 (from 1).
+!		      Disable last 16 channels of miscleaneous TDC
+!    
+!       1/23/2014 (buddhini) Added a new IDs for raster and BPMs.
+!		  	     Added the detector ID = 18 before raster channel information.
+!			     Changed the raster plane, counter and signal columns to enable hit readout via the C++ anakysis
+!			     hit handling method. Under this, the raster has plane NO 1, counter numbers 13 to 15 and signals
+!			     1 - X sync, 2- X-sig, 3- Y-sync, 4-Y-sig
+! standard id numbers
+!                       signals
+!HMS:
+! HDC_ID= 1               TDC
+! HSCIN_ID= 2             ADC+,ADC-,TDC+,TDC-
+! HCER_ID= 3              ADC
+! HCAL_ID= 4              ADC
+! HMISC_ID= 5             TDC,(ADC)
+!GEN:
+! GMISC_ID= 6             (TDC),ADC
+! HAERO_ID= 7             (TDC),ADC
+!SOS:
+! SDC_ID= 11              TDC
+! SSCIN_ID= 12            ADC+,ADC-,TDC+,TDC-
+! SCER_ID= 13             ADC
+! SCAL_ID= 14             ADC
+! SMISC_ID= 15            TDC,(ADC)
+! SAER_ID= 16             ADC
+! SLUC_ID=17		 ADC
+!BEAM:
+! RASTER_ID= 18          ADC
+! BPM_ID= 19             ADC
+!
+!   consider subadd equiv. to channel
+!
+!  specify: subadd, plane, element, signal
+!            a,      p,     e,       s
+!            0-      1-     1-       0-3
+![if there is only signal 0 (DC,CER,CAL) it may be ommitted]
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!     HMS upstairs and downstairs map    K.B.Beard 13-Jun-1994
+!         for Jun94 run
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+!      HMS downstairs (HDC) map           K.B.Beard & S.Avery 13-Jun-1994
+!					  revised by A. Johnson 4-Feb-1999	
+!   								
+! vvvvvvvvvvvvvvvvvvvvvv Wire chambers start here vvvvvvvvvvvvvvvvvvvvvvvvv
+  ROC= 2             !ReadOutController (crate) for HMS wire chambers
+!
+!
+!         TDC modules are Lecroy 1877
+    Nsubadd= 96               
+    MASK= FFFFx       !hex mask 
+    BSUB= 17           !start channel in bit#17
+!
+  detector= 1       !HDC
+!
+!                             1st HDC chamber - (2nd in position) - planes7-12  
+Slot= 2
+0, 8, 1	             !TDC ROC#2 Sl#2 Ch#0 HDC pl#8 [Y1] wire#1
+1, 8, 2              !TDC ROC#2 Sl#2 Ch#1 HDC pl#8 [Y1] wire#2
+2, 8, 3	             !TDC ROC#2 Sl#2 Ch#2 HDC pl#8 [Y1] wire#3
+3, 8, 4	             !TDC ROC#2 Sl#2 Ch#3 HDC pl#8 [Y1] wire#4
+4, 8, 5	             !TDC ROC#2 Sl#2 Ch#4 HDC pl#8 [Y1] wire#5
+5, 8, 6	             !TDC ROC#2 Sl#2 Ch#5 HDC pl#8 [Y1] wire#6
+6, 8, 7	             !TDC ROC#2 Sl#2 Ch#6 HDC pl#8 [Y1] wire#7
+7, 8, 8	             !TDC ROC#2 Sl#2 Ch#7 HDC pl#8 [Y1] wire#8
+8, 8, 9	             !TDC ROC#2 Sl#2 Ch#8 HDC pl#8 [Y1] wire#9
+9, 8, 10             !TDC ROC#2 Sl#2 Ch#9 HDC pl#8 [Y1] wire#10
+10, 8, 11            !TDC ROC#2 Sl#2 Ch#10 HDC pl#8 [Y1] wire#11
+11, 8, 12            !TDC ROC#2 Sl#2 Ch#11 HDC pl#8 [Y1] wire#12
+12, 8, 13            !TDC ROC#2 Sl#2 Ch#12 HDC pl#8 [Y1] wire#13
+!13 !TDC ROC#2 Sl#2 Ch#13 unused
+!14 !TDC ROC#2 Sl#2 Ch#14 unused
+!15 !TDC ROC#2 Sl#2 Ch#15 unused
+16, 11, 40           !TDC ROC#2 Sl#2 Ch#16 HDC pl#11 [Y2] wire#40
+17, 11, 41           !TDC ROC#2 Sl#2 Ch#17 HDC pl#11 [Y2] wire#41
+18, 11, 42           !TDC ROC#2 Sl#2 Ch#18 HDC pl#11 [Y2] wire#42
+19, 11, 43           !TDC ROC#2 Sl#2 Ch#19 HDC pl#11 [Y2] wire#43
+20, 11, 44           !TDC ROC#2 Sl#2 Ch#20 HDC pl#11 [Y2] wire#44
+21, 11, 45           !TDC ROC#2 Sl#2 Ch#21 HDC pl#11 [Y2] wire#45
+22, 11, 46           !TDC ROC#2 Sl#2 Ch#22 HDC pl#11 [Y2] wire#46
+23, 11, 47           !TDC ROC#2 Sl#2 Ch#23 HDC pl#11 [Y2] wire#47
+24, 11, 48           !TDC ROC#2 Sl#2 Ch#24 HDC pl#11 [Y2] wire#48
+25, 11, 49           !TDC ROC#2 Sl#2 Ch#25 HDC pl#11 [Y2] wire#49
+26, 11, 50           !TDC ROC#2 Sl#2 Ch#26 HDC pl#11 [Y2] wire#50
+27, 11, 51           !TDC ROC#2 Sl#2 Ch#27 HDC pl#11 [Y2] wire#51
+28, 11, 52           !TDC ROC#2 Sl#2 Ch#28 HDC pl#11 [Y2] wire#52
+!29 !TDC ROC#2 Sl#2 Ch#29 unused
+!30 !TDC ROC#2 Sl#2 Ch#30 unused
+!31 !TDC ROC#2 Sl#2 Ch#31 unused
+32, 8, 14            !TDC ROC#2 Sl#2 Ch#32 HDC pl#8 [Y1] wire#14
+33, 8, 15            !TDC ROC#2 Sl#2 Ch#33 HDC pl#8 [Y1] wire#15
+34, 8, 16            !TDC ROC#2 Sl#2 Ch#34 HDC pl#8 [Y1] wire#16
+35, 8, 17            !TDC ROC#2 Sl#2 Ch#35 HDC pl#8 [Y1] wire#17
+36, 8, 18            !TDC ROC#2 Sl#2 Ch#36 HDC pl#8 [Y1] wire#18
+37, 8, 19            !TDC ROC#2 Sl#2 Ch#37 HDC pl#8 [Y1] wire#19
+38, 8, 20            !TDC ROC#2 Sl#2 Ch#38 HDC pl#8 [Y1] wire#20
+39, 8, 21            !TDC ROC#2 Sl#2 Ch#39 HDC pl#8 [Y1] wire#21
+40, 8, 22            !TDC ROC#2 Sl#2 Ch#40 HDC pl#8 [Y1] wire#22
+41, 8, 23            !TDC ROC#2 Sl#2 Ch#41 HDC pl#8 [Y1] wire#23
+42, 8, 24            !TDC ROC#2 Sl#2 Ch#42 HDC pl#8 [Y1] wire#24
+43, 8, 25            !TDC ROC#2 Sl#2 Ch#43 HDC pl#8 [Y1] wire#25
+44, 8, 26            !TDC ROC#2 Sl#2 Ch#44 HDC pl#8 [Y1] wire#26
+!45 !TDC ROC#2 Sl#2 Ch#45 unused
+!46 !TDC ROC#2 Sl#2 Ch#46 unused
+!47 !TDC ROC#2 Sl#2 Ch#47 unused
+48, 11, 27           !TDC ROC#2 Sl#2 Ch#48 HDC pl#11 [Y2] wire#27
+49, 11, 28           !TDC ROC#2 Sl#2 Ch#49 HDC pl#11 [Y2] wire#28
+50, 11, 29           !TDC ROC#2 Sl#2 Ch#50 HDC pl#11 [Y2] wire#29
+51, 11, 30           !TDC ROC#2 Sl#2 Ch#51 HDC pl#11 [Y2] wire#30
+52, 11, 31           !TDC ROC#2 Sl#2 Ch#52 HDC pl#11 [Y2] wire#31
+53, 11, 32           !TDC ROC#2 Sl#2 Ch#53 HDC pl#11 [Y2] wire#32
+54, 11, 33           !TDC ROC#2 Sl#2 Ch#54 HDC pl#11 [Y2] wire#33
+55, 11, 34           !TDC ROC#2 Sl#2 Ch#55 HDC pl#11 [Y2] wire#34
+56, 11, 35           !TDC ROC#2 Sl#2 Ch#56 HDC pl#11 [Y2] wire#35
+57, 11, 36           !TDC ROC#2 Sl#2 Ch#57 HDC pl#11 [Y2] wire#36
+58, 11, 37           !TDC ROC#2 Sl#2 Ch#58 HDC pl#11 [Y2] wire#37
+59, 11, 38           !TDC ROC#2 Sl#2 Ch#59 HDC pl#11 [Y2] wire#38
+60, 11, 39           !TDC ROC#2 Sl#2 Ch#60 HDC pl#11 [Y2] wire#39
+!61 !TDC ROC#2 Sl#2 Ch#61 unused
+!62 !TDC ROC#2 Sl#2 Ch#62 unused
+!63 !TDC ROC#2 Sl#2 Ch#63 unused
+64, 8, 27            !TDC ROC#2 Sl#2 Ch#64 HDC pl#8 [Y1] wire#27
+65, 8, 28            !TDC ROC#2 Sl#2 Ch#65 HDC pl#8 [Y1] wire#28
+66, 8, 29            !TDC ROC#2 Sl#2 Ch#66 HDC pl#8 [Y1] wire#29
+67, 8, 30            !TDC ROC#2 Sl#2 Ch#67 HDC pl#8 [Y1] wire#30
+68, 8, 31            !TDC ROC#2 Sl#2 Ch#68 HDC pl#8 [Y1] wire#31
+69, 8, 32            !TDC ROC#2 Sl#2 Ch#69 HDC pl#8 [Y1] wire#32
+70, 8, 33            !TDC ROC#2 Sl#2 Ch#70 HDC pl#8 [Y1] wire#33
+71, 8, 34            !TDC ROC#2 Sl#2 Ch#71 HDC pl#8 [Y1] wire#34
+72, 8, 35            !TDC ROC#2 Sl#2 Ch#72 HDC pl#8 [Y1] wire#35
+73, 8, 36            !TDC ROC#2 Sl#2 Ch#73 HDC pl#8 [Y1] wire#36
+74, 8, 37            !TDC ROC#2 Sl#2 Ch#74 HDC pl#8 [Y1] wire#37
+75, 8, 38            !TDC ROC#2 Sl#2 Ch#75 HDC pl#8 [Y1] wire#38
+76, 8, 39            !TDC ROC#2 Sl#2 Ch#76 HDC pl#8 [Y1] wire#39
+!77 !TDC ROC#2 Sl#2 Ch#77 unused
+!78 !TDC ROC#2 Sl#2 Ch#78 unused
+!79 !TDC ROC#2 Sl#2 Ch#79 unused
+80, 11, 14           !TDC ROC#2 Sl#2 Ch#80 HDC pl#11 [Y2] wire#14
+81, 11, 15           !TDC ROC#2 Sl#2 Ch#81 HDC pl#11 [Y2] wire#15
+82, 11, 16           !TDC ROC#2 Sl#2 Ch#82 HDC pl#11 [Y2] wire#16
+83, 11, 17           !TDC ROC#2 Sl#2 Ch#83 HDC pl#11 [Y2] wire#17
+84, 11, 18           !TDC ROC#2 Sl#2 Ch#84 HDC pl#11 [Y2] wire#18
+85, 11, 19           !TDC ROC#2 Sl#2 Ch#85 HDC pl#11 [Y2] wire#19
+86, 11, 20           !TDC ROC#2 Sl#2 Ch#86 HDC pl#11 [Y2] wire#20
+87, 11, 21           !TDC ROC#2 Sl#2 Ch#87 HDC pl#11 [Y2] wire#21
+88, 11, 22           !TDC ROC#2 Sl#2 Ch#88 HDC pl#11 [Y2] wire#22
+89, 11, 23           !TDC ROC#2 Sl#2 Ch#89 HDC pl#11 [Y2] wire#23
+90, 11, 24           !TDC ROC#2 Sl#2 Ch#90 HDC pl#11 [Y2] wire#24
+91, 11, 25           !TDC ROC#2 Sl#2 Ch#91 HDC pl#11 [Y2] wire#25
+92, 11, 26           !TDC ROC#2 Sl#2 Ch#92 HDC pl#11 [Y2] wire#26
+!93 !TDC ROC#2 Sl#2 Ch#93 unused
+!94 !TDC ROC#2 Sl#2 Ch#94 unused
+!95 !TDC ROC#2 Sl#2 Ch#95 unused
+
+Slot= 3
+0, 8, 40             !TDC ROC#2 Sl#3 Ch#0 HDC pl#8 [Y1] wire#40
+1, 8, 41             !TDC ROC#2 Sl#3 Ch#1 HDC pl#8 [Y1] wire#41
+2, 8, 42             !TDC ROC#2 Sl#3 Ch#2 HDC pl#8 [Y1] wire#42
+3, 8, 43             !TDC ROC#2 Sl#3 Ch#3 HDC pl#8 [Y1] wire#43
+4, 8, 44             !TDC ROC#2 Sl#3 Ch#4 HDC pl#8 [Y1] wire#44
+5, 8, 45             !TDC ROC#2 Sl#3 Ch#5 HDC pl#8 [Y1] wire#45
+6, 8, 46             !TDC ROC#2 Sl#3 Ch#6 HDC pl#8 [Y1] wire#46
+7, 8, 47             !TDC ROC#2 Sl#3 Ch#7 HDC pl#8 [Y1] wire#47
+8, 8, 48             !TDC ROC#2 Sl#3 Ch#8 HDC pl#8 [Y1] wire#48
+9, 8, 49             !TDC ROC#2 Sl#3 Ch#9 HDC pl#8 [Y1] wire#49
+10, 8, 50            !TDC ROC#2 Sl#3 Ch#10 HDC pl#8 [Y1] wire#50
+11, 8, 51            !TDC ROC#2 Sl#3 Ch#11 HDC pl#8 [Y1] wire#51
+12, 8, 52            !TDC ROC#2 Sl#3 Ch#12 HDC pl#8 [Y1] wire#52
+!13 !TDC ROC#2 Sl#3 Ch#13 
+!14 !TDC ROC#2 Sl#3 Ch#14 
+!15 !TDC ROC#2 Sl#3 Ch#15 
+16, 11, 1            !TDC ROC#2 Sl#3 Ch#16 HDC pl#11 [Y2] wire#1
+17, 11, 2            !TDC ROC#2 Sl#3 Ch#17 HDC pl#11 [Y2] wire#2
+18, 11, 3            !TDC ROC#2 Sl#3 Ch#18 HDC pl#11 [Y2] wire#3
+19, 11, 4            !TDC ROC#2 Sl#3 Ch#19 HDC pl#11 [Y2] wire#4
+20, 11, 5            !TDC ROC#2 Sl#3 Ch#20 HDC pl#11 [Y2] wire#5
+21, 11, 6            !TDC ROC#2 Sl#3 Ch#21 HDC pl#11 [Y2] wire#6
+22, 11, 7            !TDC ROC#2 Sl#3 Ch#22 HDC pl#11 [Y2] wire#7
+23, 11, 8            !TDC ROC#2 Sl#3 Ch#23 HDC pl#11 [Y2] wire#8
+24, 11, 9            !TDC ROC#2 Sl#3 Ch#24 HDC pl#11 [Y2] wire#9
+25, 11, 10           !TDC ROC#2 Sl#3 Ch#25 HDC pl#11 [Y2] wire#10
+26, 11, 11           !TDC ROC#2 Sl#3 Ch#26 HDC pl#11 [Y2] wire#11
+27, 11, 12           !TDC ROC#2 Sl#3 Ch#27 HDC pl#11 [Y2] wire#12
+28, 11, 13           !TDC ROC#2 Sl#3 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#3 Ch#29 unused
+! 30 !TDC ROC#2 Sl#3 Ch#30 unused
+! 31 !TDC ROC#2 Sl#3 Ch#31 unused
+32, 10, 92           !TDC ROC#2 Sl#3 Ch#32 HDC pl#10 [V] wire#92
+33, 10, 93           !TDC ROC#2 Sl#3 Ch#33 HDC pl#10 [V] wire#93
+34, 10, 94           !TDC ROC#2 Sl#3 Ch#34 HDC pl#10 [V] wire#94
+35, 10, 95           !TDC ROC#2 Sl#3 Ch#35 HDC pl#10 [V] wire#95
+36, 10, 96           !TDC ROC#2 Sl#3 Ch#36 HDC pl#10 [V] wire#96
+37, 10, 97           !TDC ROC#2 Sl#3 Ch#37 HDC pl#10 [V] wire#97
+38, 10, 98           !TDC ROC#2 Sl#3 Ch#38 HDC pl#10 [V] wire#98
+39, 10, 99           !TDC ROC#2 Sl#3 Ch#39 HDC pl#10 [V] wire#99
+40, 10, 100          !TDC ROC#2 Sl#3 Ch#40 HDC pl#10 [V] wire#100
+41, 10, 101          !TDC ROC#2 Sl#3 Ch#41 HDC pl#10 [V] wire#101
+42, 10, 102          !TDC ROC#2 Sl#3 Ch#42 HDC pl#10 [V] wire#102
+43, 10, 103          !TDC ROC#2 Sl#3 Ch#43 HDC pl#10 [V] wire#103
+44, 10, 104          !TDC ROC#2 Sl#3 Ch#44 HDC pl#10 [V] wire#104
+45, 10, 105	     !TDC ROC#2 Sl#3 Ch#45 HDC pl#10 [V] wire#105
+46, 10, 106          !TDC ROC#2 Sl#3 Ch#46 HDC pl#10 [V] wire#106
+47, 10, 107	     !TDC ROC#2 Sl#3 Ch#47 HDC pl#10 [V] wire#107
+48, 7, 97            !TDC ROC#2 Sl#3 Ch#48 HDC pl#7 [X1] wire#97
+49, 7, 98            !TDC ROC#2 Sl#3 Ch#49 HDC pl#7 [X1] wire#98
+50, 7, 99            !TDC ROC#2 Sl#3 Ch#50 HDC pl#7 [X1] wire#99
+51, 7, 100           !TDC ROC#2 Sl#3 Ch#51 HDC pl#7 [X1] wire#100
+52, 7, 101           !TDC ROC#2 Sl#3 Ch#52 HDC pl#7 [X1] wire#101
+53, 7, 102           !TDC ROC#2 Sl#3 Ch#53 HDC pl#7 [X1] wire#102
+54, 7, 103           !TDC ROC#2 Sl#3 Ch#54 HDC pl#7 [X1] wire#103
+55, 7, 104           !TDC ROC#2 Sl#3 Ch#55 HDC pl#7 [X1] wire#104
+56, 7, 105           !TDC ROC#2 Sl#3 Ch#56 HDC pl#7 [X1] wire#105
+57, 7, 106           !TDC ROC#2 Sl#3 Ch#57 HDC pl#7 [X1] wire#106
+58, 7, 107           !TDC ROC#2 Sl#3 Ch#58 HDC pl#7 [X1] wire#107
+59, 7, 108           !TDC ROC#2 Sl#3 Ch#59 HDC pl#7 [X1] wire#108
+60, 7, 109           !TDC ROC#2 Sl#3 Ch#60 HDC pl#7 [X1] wire#109
+61, 7, 110           !TDC ROC#2 Sl#3 Ch#61 HDC pl#7 [X1] wire#110
+62, 7, 111           !TDC ROC#2 Sl#3 Ch#62 HDC pl#7 [X1] wire#111
+63, 7, 112           !TDC ROC#2 Sl#3 Ch#63 HDC pl#7 [X1] wire#112
+64, 12, 1            !TDC ROC#2 Sl#3 Ch#64 HDC pl#12 [X2] wire#1
+65, 12, 2            !TDC ROC#2 Sl#3 Ch#65 HDC pl#12 [X2] wire#2
+66, 12, 3            !TDC ROC#2 Sl#3 Ch#66 HDC pl#12 [X2] wire#3
+67, 12, 4            !TDC ROC#2 Sl#3 Ch#67 HDC pl#12 [X2] wire#4
+68, 12, 5            !TDC ROC#2 Sl#3 Ch#68 HDC pl#12 [X2] wire#5
+69, 12, 6            !TDC ROC#2 Sl#3 Ch#69 HDC pl#12 [X2] wire#6
+70, 12, 7            !TDC ROC#2 Sl#3 Ch#70 HDC pl#12 [X2] wire#7
+71, 12, 8            !TDC ROC#2 Sl#3 Ch#71 HDC pl#12 [X2] wire#8
+72, 12, 9            !TDC ROC#2 Sl#3 Ch#72 HDC pl#12 [X2] wire#9
+73, 12, 10           !TDC ROC#2 Sl#3 Ch#73 HDC pl#12 [X2] wire#10
+74, 12, 11           !TDC ROC#2 Sl#3 Ch#74 HDC pl#12 [X2] wire#11
+75, 12, 12           !TDC ROC#2 Sl#3 Ch#75 HDC pl#12 [X2] wire#12
+76, 12, 13           !TDC ROC#2 Sl#3 Ch#76 HDC pl#12 [X2] wire#13
+77, 12, 14           !TDC ROC#2 Sl#3 Ch#77 HDC pl#12 [X2] wire#14
+78, 12, 15           !TDC ROC#2 Sl#3 Ch#78 HDC pl#12 [X2] wire#15
+79, 12, 16           !TDC ROC#2 Sl#3 Ch#79 HDC pl#12 [X2] wire#16
+80, 7, 113           !TDC ROC#2 Sl#3 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#3 Ch#81 unused
+82, 9, 1             !TDC ROC#2 Sl#3 Ch#82 HDC pl#9 [U] wire#1
+83, 9, 2             !TDC ROC#2 Sl#3 Ch#83 HDC pl#9 [U] wire#2
+84, 9, 3             !TDC ROC#2 Sl#3 Ch#84 HDC pl#9 [U] wire#3
+85, 9, 4             !TDC ROC#2 Sl#3 Ch#85 HDC pl#9 [U] wire#4
+86, 9, 5             !TDC ROC#2 Sl#3 Ch#86 HDC pl#9 [U] wire#5
+87, 9, 6             !TDC ROC#2 Sl#3 Ch#87 HDC pl#9 [U] wire#6
+88, 9, 7             !TDC ROC#2 Sl#3 Ch#88 HDC pl#9 [U] wire#7
+89, 9, 8             !TDC ROC#2 Sl#3 Ch#89 HDC pl#9 [U] wire#8
+90, 9, 9             !TDC ROC#2 Sl#3 Ch#90 HDC pl#9 [U] wire#9
+91, 9, 10            !TDC ROC#2 Sl#3 Ch#91 HDC pl#9 [U] wire#10
+92, 9, 11            !TDC ROC#2 Sl#3 Ch#92 HDC pl#9 [U] wire#11
+93, 9, 12            !TDC ROC#2 Sl#3 Ch#93 HDC pl#9 [U] wire#12
+94, 9, 13            !TDC ROC#2 Sl#3 Ch#94 HDC pl#9 [U] wire#13
+95, 9, 14            !TDC ROC#2 Sl#3 Ch#95 HDC pl#9 [U] wire#14
+Slot= 5
+0, 10, 77            !TDC ROC#2 Sl#5 Ch#0 HDC pl#10 [V] wire#77
+1, 10, 78            !TDC ROC#2 Sl#5 Ch#1 HDC pl#10 [V] wire#78
+2, 10, 79            !TDC ROC#2 Sl#5 Ch#2 HDC pl#10 [V] wire#79
+3, 10, 80            !TDC ROC#2 Sl#5 Ch#3 HDC pl#10 [V] wire#80
+4, 10, 81            !TDC ROC#2 Sl#5 Ch#4 HDC pl#10 [V] wire#81
+5, 10, 82            !TDC ROC#2 Sl#5 Ch#5 HDC pl#10 [V] wire#82
+6, 10, 83            !TDC ROC#2 Sl#5 Ch#6 HDC pl#10 [V] wire#83
+7, 10, 84            !TDC ROC#2 Sl#5 Ch#7 HDC pl#10 [V] wire#84
+8, 10, 85            !TDC ROC#2 Sl#5 Ch#8 HDC pl#10 [V] wire#85
+9, 10, 86            !TDC ROC#2 Sl#5 Ch#9 HDC pl#10 [V] wire#86
+10, 10, 87           !TDC ROC#2 Sl#5 Ch#10 HDC pl#10 [V] wire#87
+11, 10, 88           !TDC ROC#2 Sl#5 Ch#11 HDC pl#10 [V] wire#88
+12, 10, 89           !TDC ROC#2 Sl#5 Ch#12 HDC pl#10 [V] wire#89
+13, 10, 90           !TDC ROC#2 Sl#5 Ch#13 HDC pl#10 [V] wire#90
+14, 10, 91           !TDC ROC#2 Sl#5 Ch#14 HDC pl#10 [V] wire#91
+! 15 !TDC ROC#2 Sl#5 Ch#15 unused
+16, 7, 81            !TDC ROC#2 Sl#5 Ch#16 HDC pl#7 [X1] wire#81
+17, 7, 82            !TDC ROC#2 Sl#5 Ch#17 HDC pl#7 [X1] wire#82
+18, 7, 83            !TDC ROC#2 Sl#5 Ch#18 HDC pl#7 [X1] wire#83
+19, 7, 84            !TDC ROC#2 Sl#5 Ch#19 HDC pl#7 [X1] wire#84
+20, 7, 85            !TDC ROC#2 Sl#5 Ch#20 HDC pl#7 [X1] wire#85
+21, 7, 86            !TDC ROC#2 Sl#5 Ch#21 HDC pl#7 [X1] wire#86
+22, 7, 87            !TDC ROC#2 Sl#5 Ch#22 HDC pl#7 [X1] wire#87
+23, 7, 88            !TDC ROC#2 Sl#5 Ch#23 HDC pl#7 [X1] wire#88
+24, 7, 89            !TDC ROC#2 Sl#5 Ch#24 HDC pl#7 [X1] wire#89
+25, 7, 90            !TDC ROC#2 Sl#5 Ch#25 HDC pl#7 [X1] wire#90
+26, 7, 91            !TDC ROC#2 Sl#5 Ch#26 HDC pl#7 [X1] wire#91
+27, 7, 92            !TDC ROC#2 Sl#5 Ch#27 HDC pl#7 [X1] wire#92
+28, 7, 93            !TDC ROC#2 Sl#5 Ch#28 HDC pl#7 [X1] wire#93
+29, 7, 94            !TDC ROC#2 Sl#5 Ch#29 HDC pl#7 [X1] wire#94
+30, 7, 95            !TDC ROC#2 Sl#5 Ch#30 HDC pl#7 [X1] wire#95
+31, 7, 96            !TDC ROC#2 Sl#5 Ch#31 HDC pl#7 [X1] wire#96
+32, 12, 17           !TDC ROC#2 Sl#5 Ch#32 HDC pl#12 [X2] wire#17
+33, 12, 18           !TDC ROC#2 Sl#5 Ch#33 HDC pl#12 [X2] wire#18
+34, 12, 19           !TDC ROC#2 Sl#5 Ch#34 HDC pl#12 [X2] wire#19
+35, 12, 20           !TDC ROC#2 Sl#5 Ch#35 HDC pl#12 [X2] wire#20
+36, 12, 21           !TDC ROC#2 Sl#5 Ch#36 HDC pl#12 [X2] wire#21
+37, 12, 22           !TDC ROC#2 Sl#5 Ch#37 HDC pl#12 [X2] wire#22
+38, 12, 23           !TDC ROC#2 Sl#5 Ch#38 HDC pl#12 [X2] wire#23
+39, 12, 24           !TDC ROC#2 Sl#5 Ch#39 HDC pl#12 [X2] wire#24
+40, 12, 25           !TDC ROC#2 Sl#5 Ch#40 HDC pl#12 [X2] wire#25
+41, 12, 26           !TDC ROC#2 Sl#5 Ch#41 HDC pl#12 [X2] wire#26
+42, 12, 27           !TDC ROC#2 Sl#5 Ch#42 HDC pl#12 [X2] wire#27
+43, 12, 28           !TDC ROC#2 Sl#5 Ch#43 HDC pl#12 [X2] wire#28
+44, 12, 29           !TDC ROC#2 Sl#5 Ch#44 HDC pl#12 [X2] wire#29
+45, 12, 30           !TDC ROC#2 Sl#5 Ch#45 HDC pl#12 [X2] wire#30
+46, 12, 31           !TDC ROC#2 Sl#5 Ch#46 HDC pl#12 [X2] wire#31
+47, 12, 32           !TDC ROC#2 Sl#5 Ch#47 HDC pl#12 [X2] wire#32
+48, 9, 15            !TDC ROC#2 Sl#5 Ch#48 HDC pl#9 [U] wire#15
+49, 9, 16            !TDC ROC#2 Sl#5 Ch#49 HDC pl#9 [U] wire#16
+50, 9, 17            !TDC ROC#2 Sl#5 Ch#50 HDC pl#9 [U] wire#17
+51, 9, 18            !TDC ROC#2 Sl#5 Ch#51 HDC pl#9 [U] wire#18
+52, 9, 19            !TDC ROC#2 Sl#5 Ch#52 HDC pl#9 [U] wire#19
+53, 9, 20            !TDC ROC#2 Sl#5 Ch#53 HDC pl#9 [U] wire#20
+54, 9, 21            !TDC ROC#2 Sl#5 Ch#54 HDC pl#9 [U] wire#21
+55, 9, 22            !TDC ROC#2 Sl#5 Ch#55 HDC pl#9 [U] wire#22
+56, 9, 23            !TDC ROC#2 Sl#5 Ch#56 HDC pl#9 [U] wire#23
+57, 9, 24            !TDC ROC#2 Sl#5 Ch#57 HDC pl#9 [U] wire#24
+58, 9, 25            !TDC ROC#2 Sl#5 Ch#58 HDC pl#9 [U] wire#25
+59, 9, 26            !TDC ROC#2 Sl#5 Ch#59 HDC pl#9 [U] wire#26
+60, 9, 27            !TDC ROC#2 Sl#5 Ch#60 HDC pl#9 [U] wire#27
+61, 9, 28            !TDC ROC#2 Sl#5 Ch#61 HDC pl#9 [U] wire#28
+62, 9, 29            !TDC ROC#2 Sl#5 Ch#62 HDC pl#9 [U] wire#29
+!63 !TDC ROC#2 Sl#5 Ch#63 unused
+64, 10, 61           !TDC ROC#2 Sl#5 Ch#64 HDC pl#10 [V] wire#61
+65, 10, 62           !TDC ROC#2 Sl#5 Ch#65 HDC pl#10 [V] wire#62
+66, 10, 63           !TDC ROC#2 Sl#5 Ch#66 HDC pl#10 [V] wire#63
+67, 10, 64           !TDC ROC#2 Sl#5 Ch#67 HDC pl#10 [V] wire#64
+68, 10, 65           !TDC ROC#2 Sl#5 Ch#68 HDC pl#10 [V] wire#65
+69, 10, 66           !TDC ROC#2 Sl#5 Ch#69 HDC pl#10 [V] wire#66
+70, 10, 67           !TDC ROC#2 Sl#5 Ch#70 HDC pl#10 [V] wire#67
+71, 10, 68           !TDC ROC#2 Sl#5 Ch#71 HDC pl#10 [V] wire#68
+72, 10, 69           !TDC ROC#2 Sl#5 Ch#72 HDC pl#10 [V] wire#69
+73, 10, 70           !TDC ROC#2 Sl#5 Ch#73 HDC pl#10 [V] wire#70
+74, 10, 71           !TDC ROC#2 Sl#5 Ch#74 HDC pl#10 [V] wire#71
+75, 10, 72           !TDC ROC#2 Sl#5 Ch#75 HDC pl#10 [V] wire#72
+76, 10, 73           !TDC ROC#2 Sl#5 Ch#76 HDC pl#10 [V] wire#73
+77, 10, 74           !TDC ROC#2 Sl#5 Ch#77 HDC pl#10 [V] wire#74
+78, 10, 75           !TDC ROC#2 Sl#5 Ch#78 HDC pl#10 [V] wire#75
+79, 10, 76           !TDC ROC#2 Sl#5 Ch#79 HDC pl#10 [V] wire#76
+80, 7, 65            !TDC ROC#2 Sl#5 Ch#80 HDC pl#7 [X1] wire#65
+81, 7, 66            !TDC ROC#2 Sl#5 Ch#81 HDC pl#7 [X1] wire#66
+82, 7, 67            !TDC ROC#2 Sl#5 Ch#82 HDC pl#7 [X1] wire#67
+83, 7, 68            !TDC ROC#2 Sl#5 Ch#83 HDC pl#7 [X1] wire#68
+84, 7, 69            !TDC ROC#2 Sl#5 Ch#84 HDC pl#7 [X1] wire#69
+85, 7, 70	     !TDC ROC#2 Sl#5 Ch#85 HDC pl#7 [X1] wire#70
+86, 7, 71            !TDC ROC#2 Sl#5 Ch#86 HDC pl#7 [X1] wire#71
+87, 7, 72            !TDC ROC#2 Sl#5 Ch#87 HDC pl#7 [X1] wire#72
+88, 7, 73            !TDC ROC#2 Sl#5 Ch#88 HDC pl#7 [X1] wire#73
+89, 7, 74            !TDC ROC#2 Sl#5 Ch#89 HDC pl#7 [X1] wire#74
+90, 7, 75            !TDC ROC#2 Sl#5 Ch#90 HDC pl#7 [X1] wire#75
+91, 7, 76	     !TDC ROC#2 Sl#5 Ch#91 HDC pl#7 [X1] wire#76
+92, 7, 77            !TDC ROC#2 Sl#5 Ch#92 HDC pl#7 [X1] wire#77
+93, 7, 78            !TDC ROC#2 Sl#5 Ch#93 HDC pl#7 [X1] wire#78
+94, 7, 79            !TDC ROC#2 Sl#5 Ch#94 HDC pl#7 [X1] wire#79
+95, 7, 80            !TDC ROC#2 Sl#5 Ch#95 HDC pl#7 [X1] wire#80
+Slot= 6
+0, 12, 33            !TDC ROC#2 Sl#6 Ch#0 HDC pl#12 [X2] wire#33
+1, 12, 34 	     !TDC ROC#2 Sl#6 Ch#1 HDC pl#12 [X2] wire#34
+2, 12, 35            !TDC ROC#2 Sl#6 Ch#2 HDC pl#12 [X2] wire#35
+3, 12, 36            !TDC ROC#2 Sl#6 Ch#3 HDC pl#12 [X2] wire#36
+4, 12, 37            !TDC ROC#2 Sl#6 Ch#4 HDC pl#12 [X2] wire#37
+5, 12, 38            !TDC ROC#2 Sl#6 Ch#5 HDC pl#12 [X2] wire#38
+6, 12, 39            !TDC ROC#2 Sl#6 Ch#6 HDC pl#12 [X2] wire#39
+7, 12, 40            !TDC ROC#2 Sl#6 Ch#7 HDC pl#12 [X2] wire#40
+8, 12, 41            !TDC ROC#2 Sl#6 Ch#8 HDC pl#12 [X2] wire#41
+9, 12, 42            !TDC ROC#2 Sl#6 Ch#9 HDC pl#12 [X2] wire#42
+10, 12, 43           !TDC ROC#2 Sl#6 Ch#10 HDC pl#12 [X2] wire#43
+11, 12, 44           !TDC ROC#2 Sl#6 Ch#11 HDC pl#12 [X2] wire#44
+12, 12, 45           !TDC ROC#2 Sl#6 Ch#12 HDC pl#12 [X2] wire#45
+13, 12, 46           !TDC ROC#2 Sl#6 Ch#13 HDC pl#12 [X2] wire#46
+14, 12, 47           !TDC ROC#2 Sl#6 Ch#14 HDC pl#12 [X2] wire#47
+15, 12, 48           !TDC ROC#2 Sl#6 Ch#15 HDC pl#12 [X2] wire#48
+16, 9, 30            !TDC ROC#2 Sl#6 Ch#16 HDC pl#9 [U] wire#30
+17, 9, 31            !TDC ROC#2 Sl#6 Ch#17 HDC pl#9 [U] wire#31
+18, 9, 32            !TDC ROC#2 Sl#6 Ch#18 HDC pl#9 [U] wire#32
+19, 9, 33            !TDC ROC#2 Sl#6 Ch#19 HDC pl#9 [U] wire#33
+20, 9, 34            !TDC ROC#2 Sl#6 Ch#20 HDC pl#9 [U] wire#34
+21, 9, 35            !TDC ROC#2 Sl#6 Ch#21 HDC pl#9 [U] wire#35
+22, 9, 36            !TDC ROC#2 Sl#6 Ch#22 HDC pl#9 [U] wire#36
+23, 9, 37            !TDC ROC#2 Sl#6 Ch#23 HDC pl#9 [U] wire#37
+24, 9, 38            !TDC ROC#2 Sl#6 Ch#24 HDC pl#9 [U] wire#38
+25, 9, 39            !TDC ROC#2 Sl#6 Ch#25 HDC pl#9 [U] wire#39
+26, 9, 40            !TDC ROC#2 Sl#6 Ch#26 HDC pl#9 [U] wire#40
+27, 9, 41            !TDC ROC#2 Sl#6 Ch#27 HDC pl#9 [U] wire#41
+28, 9, 42            !TDC ROC#2 Sl#6 Ch#28 HDC pl#9 [U] wire#42
+29, 9, 43            !TDC ROC#2 Sl#6 Ch#29 HDC pl#9 [U] wire#43
+30, 9, 44            !TDC ROC#2 Sl#6 Ch#30 HDC pl#9 [U] wire#44
+31, 9, 45            !TDC ROC#2 Sl#6 Ch#31 HDC pl#9 [U] wire#45
+32, 10, 46           !TDC ROC#2 Sl#6 Ch#32 HDC pl#10 [V] wire#46
+33, 10, 47           !TDC ROC#2 Sl#6 Ch#33 HDC pl#10 [V] wire#47
+34, 10, 48           !TDC ROC#2 Sl#6 Ch#34 HDC pl#10 [V] wire#48
+35, 10, 49           !TDC ROC#2 Sl#6 Ch#35 HDC pl#10 [V] wire#49
+36, 10, 50           !TDC ROC#2 Sl#6 Ch#36 HDC pl#10 [V] wire#50
+37, 10, 51           !TDC ROC#2 Sl#6 Ch#37 HDC pl#10 [V] wire#51
+38, 10, 52           !TDC ROC#2 Sl#6 Ch#38 HDC pl#10 [V] wire#52
+39, 10, 53           !TDC ROC#2 Sl#6 Ch#39 HDC pl#10 [V] wire#53
+40, 10, 54           !TDC ROC#2 Sl#6 Ch#40 HDC pl#10 [V] wire#54
+41, 10, 55           !TDC ROC#2 Sl#6 Ch#41 HDC pl#10 [V] wire#55
+42, 10, 56           !TDC ROC#2 Sl#6 Ch#42 HDC pl#10 [V] wire#56
+43, 10, 57           !TDC ROC#2 Sl#6 Ch#43 HDC pl#10 [V] wire#57
+44, 10, 58           !TDC ROC#2 Sl#6 Ch#44 HDC pl#10 [V] wire#58
+45, 10, 59           !TDC ROC#2 Sl#6 Ch#45 HDC pl#10 [V] wire#59
+46, 10, 60           !TDC ROC#2 Sl#6 Ch#46 HDC pl#10 [V] wire#60
+!47 !TDC ROC#2 Sl#6 Ch#47 HDC unused
+48, 7, 49           !TDC ROC#2 Sl#6 Ch#48 HDC pl#7 [X1] wire#49
+49, 7, 50           !TDC ROC#2 Sl#6 Ch#49 HDC pl#7 [X1] wire#50
+50, 7, 51           !TDC ROC#2 Sl#6 Ch#50 HDC pl#7 [X1] wire#51
+51, 7, 52           !TDC ROC#2 Sl#6 Ch#51 HDC pl#7 [X1] wire#52
+52, 7, 53           !TDC ROC#2 Sl#6 Ch#52 HDC pl#7 [X1] wire#53
+53, 7, 54           !TDC ROC#2 Sl#6 Ch#53 HDC pl#7 [X1] wire#54
+54, 7, 55           !TDC ROC#2 Sl#6 Ch#54 HDC pl#7 [X1] wire#55
+55, 7, 56           !TDC ROC#2 Sl#6 Ch#55 HDC pl#7 [X1] wire#56
+56, 7, 57           !TDC ROC#2 Sl#6 Ch#56 HDC pl#7 [X1] wire#57
+57, 7, 58           !TDC ROC#2 Sl#6 Ch#57 HDC pl#7 [X1] wire#58
+58, 7, 59           !TDC ROC#2 Sl#6 Ch#58 HDC pl#7 [X1] wire#59
+59, 7, 60           !TDC ROC#2 Sl#6 Ch#59 HDC pl#7 [X1] wire#60
+60, 7, 61           !TDC ROC#2 Sl#6 Ch#60 HDC pl#7 [X1] wire#61
+61, 7, 62           !TDC ROC#2 Sl#6 Ch#61 HDC pl#7 [X1] wire#62
+62, 7, 63           !TDC ROC#2 Sl#6 Ch#62 HDC pl#7 [X1] wire#63
+63, 7, 64           !TDC ROC#2 Sl#6 Ch#63 HDC pl#7 [X1] wire#64
+64, 12, 49          !TDC ROC#2 Sl#6 Ch#64 HDC pl#12 [X2] wire#49
+65, 12, 50          !TDC ROC#2 Sl#6 Ch#65 HDC pl#12 [X2] wire#50
+66, 12, 51          !TDC ROC#2 Sl#6 Ch#66 HDC pl#12 [X2] wire#51
+67, 12, 52          !TDC ROC#2 Sl#6 Ch#67 HDC pl#12 [X2] wire#52
+68, 12, 53          !TDC ROC#2 Sl#6 Ch#68 HDC pl#12 [X2] wire#53
+69, 12, 54          !TDC ROC#2 Sl#6 Ch#69 HDC pl#12 [X2] wire#54
+70, 12, 55          !TDC ROC#2 Sl#6 Ch#70 HDC pl#12 [X2] wire#55
+71, 12, 56          !TDC ROC#2 Sl#6 Ch#71 HDC pl#12 [X2] wire#56
+72, 12, 57          !TDC ROC#2 Sl#6 Ch#72 HDC pl#12 [X2] wire#57
+73, 12, 58          !TDC ROC#2 Sl#6 Ch#73 HDC pl#12 [X2] wire#58
+74, 12, 59          !TDC ROC#2 Sl#6 Ch#74 HDC pl#12 [X2] wire#59
+75, 12, 60          !TDC ROC#2 Sl#6 Ch#75 HDC pl#12 [X2] wire#60
+76, 12, 61          !TDC ROC#2 Sl#6 Ch#76 HDC pl#12 [X2] wire#61
+77, 12, 62          !TDC ROC#2 Sl#6 Ch#77 HDC pl#12 [X2] wire#62
+78, 12, 63          !TDC ROC#2 Sl#6 Ch#78 HDC pl#12 [X2] wire#63
+79, 12, 64          !TDC ROC#2 Sl#6 Ch#79 HDC pl#12 [X2] wire#64
+80, 10, 30          !TDC ROC#2 Sl#6 Ch#80 HDC pl#10 [V] wire#30
+81, 10, 31          !TDC ROC#2 Sl#6 Ch#81 HDC pl#10 [V] wire#31
+82, 10, 32          !TDC ROC#2 Sl#6 Ch#82 HDC pl#10 [V] wire#32
+83, 10, 33          !TDC ROC#2 Sl#6 Ch#83 HDC pl#10 [V] wire#33
+84, 10, 34          !TDC ROC#2 Sl#6 Ch#84 HDC pl#10 [V] wire#34
+85, 10, 35          !TDC ROC#2 Sl#6 Ch#85 HDC pl#10 [V] wire#35
+86, 10, 36          !TDC ROC#2 Sl#6 Ch#86 HDC pl#10 [V] wire#36
+87, 10, 37          !TDC ROC#2 Sl#6 Ch#87 HDC pl#10 [V] wire#37
+88, 10, 38          !TDC ROC#2 Sl#6 Ch#88 HDC pl#10 [V] wire#38
+89, 10, 39          !TDC ROC#2 Sl#6 Ch#89 HDC pl#10 [V] wire#39
+90, 10, 40          !TDC ROC#2 Sl#6 Ch#90 HDC pl#10 [V] wire#40
+91, 10, 41          !TDC ROC#2 Sl#6 Ch#91 HDC pl#10 [V] wire#41
+92, 10, 42          !TDC ROC#2 Sl#6 Ch#92 HDC pl#10 [V] wire#42
+93, 10, 43          !TDC ROC#2 Sl#6 Ch#93 HDC pl#10 [V] wire#43
+94, 10, 44          !TDC ROC#2 Sl#6 Ch#94 HDC pl#10 [V] wire#44
+95, 10, 45          !TDC ROC#2 Sl#6 Ch#95 HDC pl#10 [V] wire#45
+Slot= 8
+0, 9, 46            !TDC ROC#2 Sl#8 Ch#0 HDC pl#9 [U] wire#46
+1, 9, 47            !TDC ROC#2 Sl#8 Ch#1 HDC pl#9 [U] wire#47
+2, 9, 48            !TDC ROC#2 Sl#8 Ch#2 HDC pl#9 [U] wire#48
+3, 9, 49            !TDC ROC#2 Sl#8 Ch#3 HDC pl#9 [U] wire#49
+4, 9, 50            !TDC ROC#2 Sl#8 Ch#4 HDC pl#9 [U] wire#50
+5, 9, 51            !TDC ROC#2 Sl#8 Ch#5 HDC pl#9 [U] wire#51
+6, 9, 52            !TDC ROC#2 Sl#8 Ch#6 HDC pl#9 [U] wire#52
+7, 9, 53            !TDC ROC#2 Sl#8 Ch#7 HDC pl#9 [U] wire#53
+8, 9, 54            !TDC ROC#2 Sl#8 Ch#8 HDC pl#9 [U] wire#54
+9, 9, 55            !TDC ROC#2 Sl#8 Ch#9 HDC pl#9 [U] wire#55
+10, 9, 56           !TDC ROC#2 Sl#8 Ch#10 HDC pl#9 [U] wire#56
+11, 9, 57           !TDC ROC#2 Sl#8 Ch#11 HDC pl#9 [U] wire#57
+12, 9, 58           !TDC ROC#2 Sl#8 Ch#12 HDC pl#9 [U] wire#58
+13, 9, 59           !TDC ROC#2 Sl#8 Ch#13 HDC pl#9 [U] wire#59
+14, 9, 60           !TDC ROC#2 Sl#8 Ch#14 HDC pl#9 [U] wire#60
+!15 !TDC ROC#2 Sl#8 Ch#15 unused
+16, 7, 33           !TDC ROC#2 Sl#8 Ch#16 HDC pl#7 [X1] wire#33
+17, 7, 34           !TDC ROC#2 Sl#8 Ch#17 HDC pl#7 [X1] wire#34
+18, 7, 35           !TDC ROC#2 Sl#8 Ch#18 HDC pl#7 [X1] wire#35
+19, 7, 36           !TDC ROC#2 Sl#8 Ch#19 HDC pl#7 [X1] wire#36
+20, 7, 37           !TDC ROC#2 Sl#8 Ch#20 HDC pl#7 [X1] wire#37
+21, 7, 38           !TDC ROC#2 Sl#8 Ch#21 HDC pl#7 [X1] wire#38
+22, 7, 39           !TDC ROC#2 Sl#8 Ch#22 HDC pl#7 [X1] wire#39
+23, 7, 40           !TDC ROC#2 Sl#8 Ch#23 HDC pl#7 [X1] wire#40
+24, 7, 41           !TDC ROC#2 Sl#8 Ch#24 HDC pl#7 [X1] wire#41
+25, 7, 42           !TDC ROC#2 Sl#8 Ch#25 HDC pl#7 [X1] wire#42
+26, 7, 43           !TDC ROC#2 Sl#8 Ch#26 HDC pl#7 [X1] wire#43
+27, 7, 44           !TDC ROC#2 Sl#8 Ch#27 HDC pl#7 [X1] wire#44
+28, 7, 45           !TDC ROC#2 Sl#8 Ch#28 HDC pl#7 [X1] wire#45
+29, 7, 46           !TDC ROC#2 Sl#8 Ch#29 HDC pl#7 [X1] wire#46
+30, 7, 47           !TDC ROC#2 Sl#8 Ch#30 HDC pl#7 [X1] wire#47
+31, 7, 48           !TDC ROC#2 Sl#8 Ch#31 HDC pl#7 [X1] wire#48
+32, 12, 65          !TDC ROC#2 Sl#8 Ch#32 HDC pl#12 [X2] wire#65
+33, 12, 66          !TDC ROC#2 Sl#8 Ch#33 HDC pl#12 [X2] wire#66
+34, 12, 67          !TDC ROC#2 Sl#8 Ch#34 HDC pl#12 [X2] wire#67
+35, 12, 68          !TDC ROC#2 Sl#8 Ch#35 HDC pl#12 [X2] wire#68
+36, 12, 69          !TDC ROC#2 Sl#8 Ch#36 HDC pl#12 [X2] wire#69
+37, 12, 70          !TDC ROC#2 Sl#8 Ch#37 HDC pl#12 [X2] wire#70
+38, 12, 71          !TDC ROC#2 Sl#8 Ch#38 HDC pl#12 [X2] wire#71
+39, 12, 72          !TDC ROC#2 Sl#8 Ch#39 HDC pl#12 [X2] wire#72
+40, 12, 73          !TDC ROC#2 Sl#8 Ch#40 HDC pl#12 [X2] wire#73
+41, 12, 74          !TDC ROC#2 Sl#8 Ch#41 HDC pl#12 [X2] wire#74
+42, 12, 75          !TDC ROC#2 Sl#8 Ch#42 HDC pl#12 [X2] wire#75
+43, 12, 76          !TDC ROC#2 Sl#8 Ch#43 HDC pl#12 [X2] wire#76
+44, 12, 77          !TDC ROC#2 Sl#8 Ch#44 HDC pl#12 [X2] wire#77
+45, 12, 78          !TDC ROC#2 Sl#8 Ch#45 HDC pl#12 [X2] wire#78
+46, 12, 79          !TDC ROC#2 Sl#8 Ch#46 HDC pl#12 [X2] wire#79
+47, 12, 80	    !TDC ROC#2 Sl#8 Ch#47 HDC pl#12 [X2] wire#80
+48, 9, 61           !TDC ROC#2 Sl#8 Ch#48 HDC pl#9 [U] wire#61
+49, 9, 62           !TDC ROC#2 Sl#8 Ch#49 HDC pl#9 [U] wire#62
+50, 9, 63           !TDC ROC#2 Sl#8 Ch#50 HDC pl#9 [U] wire#63
+51, 9, 64           !TDC ROC#2 Sl#8 Ch#51 HDC pl#9 [U] wire#64
+52, 9, 65           !TDC ROC#2 Sl#8 Ch#52 HDC pl#9 [U] wire#65
+53, 9, 66           !TDC ROC#2 Sl#8 Ch#53 HDC pl#9 [U] wire#66
+54, 9, 67           !TDC ROC#2 Sl#8 Ch#54 HDC pl#9 [U] wire#67
+55, 9, 68           !TDC ROC#2 Sl#8 Ch#55 HDC pl#9 [U] wire#68
+56, 9, 69           !TDC ROC#2 Sl#8 Ch#56 HDC pl#9 [U] wire#69
+57, 9, 70           !TDC ROC#2 Sl#8 Ch#57 HDC pl#9 [U] wire#70
+58, 9, 71           !TDC ROC#2 Sl#8 Ch#58 HDC pl#9 [U] wire#71
+59, 9, 72           !TDC ROC#2 Sl#8 Ch#59 HDC pl#9 [U] wire#72
+60, 9, 73           !TDC ROC#2 Sl#8 Ch#60 HDC pl#9 [U] wire#73
+61, 9, 74           !TDC ROC#2 Sl#8 Ch#61 HDC pl#9 [U] wire#74
+62, 9, 75           !TDC ROC#2 Sl#8 Ch#62 HDC pl#9 [U] wire#75
+63, 9, 76           !TDC ROC#2 Sl#8 Ch#63 HDC pl#9 [U] wire#76
+64, 10, 15          !TDC ROC#2 Sl#8 Ch#64 HDC pl#10 [V] wire#15
+65, 10, 16          !TDC ROC#2 Sl#8 Ch#65 HDC pl#10 [V] wire#16
+66, 10, 17          !TDC ROC#2 Sl#8 Ch#66 HDC pl#10 [V] wire#17
+67, 10, 18          !TDC ROC#2 Sl#8 Ch#67 HDC pl#10 [V] wire#18
+68, 10, 19          !TDC ROC#2 Sl#8 Ch#68 HDC pl#10 [V] wire#19
+69, 10, 20          !TDC ROC#2 Sl#8 Ch#69 HDC pl#10 [V] wire#20
+70, 10, 21          !TDC ROC#2 Sl#8 Ch#70 HDC pl#10 [V] wire#21
+71, 10, 22          !TDC ROC#2 Sl#8 Ch#71 HDC pl#10 [V] wire#22
+72, 10, 23          !TDC ROC#2 Sl#8 Ch#72 HDC pl#10 [V] wire#23
+73, 10, 24          !TDC ROC#2 Sl#8 Ch#73 HDC pl#10 [V] wire#24
+74, 10, 25          !TDC ROC#2 Sl#8 Ch#74 HDC pl#10 [V] wire#25
+75, 10, 26          !TDC ROC#2 Sl#8 Ch#75 HDC pl#10 [V] wire#26
+76, 10, 27          !TDC ROC#2 Sl#8 Ch#76 HDC pl#10 [V] wire#27
+77, 10, 28          !TDC ROC#2 Sl#8 Ch#77 HDC pl#10 [V] wire#28
+78, 10, 29          !TDC ROC#2 Sl#8 Ch#78 HDC pl#10 [V] wire#29
+! 79 !TDC ROC#2 Sl#8 Ch#79 unused
+80, 7, 17           !TDC ROC#2 Sl#8 Ch#80 HDC pl#7 [X1] wire#17
+81, 7, 18           !TDC ROC#2 Sl#8 Ch#81 HDC pl#7 [X1] wire#18
+82, 7, 19           !TDC ROC#2 Sl#8 Ch#82 HDC pl#7 [X1] wire#19
+83, 7, 20           !TDC ROC#2 Sl#8 Ch#83 HDC pl#7 [X1] wire#20
+84, 7, 21           !TDC ROC#2 Sl#8 Ch#84 HDC pl#7 [X1] wire#21
+85, 7, 22           !TDC ROC#2 Sl#8 Ch#85 HDC pl#7 [X1] wire#22
+86, 7, 23           !TDC ROC#2 Sl#8 Ch#86 HDC pl#7 [X1] wire#23
+87, 7, 24           !TDC ROC#2 Sl#8 Ch#87 HDC pl#7 [X1] wire#24
+88, 7, 25           !TDC ROC#2 Sl#8 Ch#88 HDC pl#7 [X1] wire#25
+89, 7, 26           !TDC ROC#2 Sl#8 Ch#89 HDC pl#7 [X1] wire#26
+90, 7, 27           !TDC ROC#2 Sl#8 Ch#90 HDC pl#7 [X1] wire#27
+91, 7, 28           !TDC ROC#2 Sl#8 Ch#91 HDC pl#7 [X1] wire#28
+92, 7, 29           !TDC ROC#2 Sl#8 Ch#92 HDC pl#7 [X1] wire#29
+93, 7, 30           !TDC ROC#2 Sl#8 Ch#93 HDC pl#7 [X1] wire#30
+94, 7, 31           !TDC ROC#2 Sl#8 Ch#94 HDC pl#7 [X1] wire#31
+95, 7, 32           !TDC ROC#2 Sl#8 Ch#95 HDC pl#7 [X1] wire#32
+Slot= 9
+0, 12, 81           !TDC ROC#2 Sl#9 Ch#0 HDC pl#12 [X2] wire#81
+1, 12, 82           !TDC ROC#2 Sl#9 Ch#1 HDC pl#12 [X2] wire#82
+2, 12, 83           !TDC ROC#2 Sl#9 Ch#2 HDC pl#12 [X2] wire#83
+3, 12, 84           !TDC ROC#2 Sl#9 Ch#3 HDC pl#12 [X2] wire#84
+4, 12, 85           !TDC ROC#2 Sl#9 Ch#4 HDC pl#12 [X2] wire#85
+5, 12, 86           !TDC ROC#2 Sl#9 Ch#5 HDC pl#12 [X2] wire#86
+6, 12, 87           !TDC ROC#2 Sl#9 Ch#6 HDC pl#12 [X2] wire#87
+7, 12, 88           !TDC ROC#2 Sl#9 Ch#7 HDC pl#12 [X2] wire#88
+8, 12, 89           !TDC ROC#2 Sl#9 Ch#8 HDC pl#12 [X2] wire#89
+9, 12, 90           !TDC ROC#2 Sl#9 Ch#9 HDC pl#12 [X2] wire#90
+10, 12, 91          !TDC ROC#2 Sl#9 Ch#10 HDC pl#12 [X2] wire#91
+11, 12, 92          !TDC ROC#2 Sl#9 Ch#11 HDC pl#12 [X2] wire#92
+12, 12, 93          !TDC ROC#2 Sl#9 Ch#12 HDC pl#12 [X2] wire#93
+13, 12, 94          !TDC ROC#2 Sl#9 Ch#13 HDC pl#12 [X2] wire#94
+14, 12, 95          !TDC ROC#2 Sl#9 Ch#14 HDC pl#12 [X2] wire#95
+15, 12, 96          !TDC ROC#2 Sl#9 Ch#15 HDC pl#12 [X2] wire#96
+16, 9, 77           !TDC ROC#2 Sl#9 Ch#16 HDC pl#9 [U] wire#77
+17, 9, 78           !TDC ROC#2 Sl#9 Ch#17 HDC pl#9 [U] wire#78
+18, 9, 79           !TDC ROC#2 Sl#9 Ch#18 HDC pl#9 [U] wire#79
+19, 9, 80           !TDC ROC#2 Sl#9 Ch#19 HDC pl#9 [U] wire#80
+20, 9, 81           !TDC ROC#2 Sl#9 Ch#20 HDC pl#9 [U] wire#81
+21, 9, 82           !TDC ROC#2 Sl#9 Ch#21 HDC pl#9 [U] wire#82
+22, 9, 83           !TDC ROC#2 Sl#9 Ch#22 HDC pl#9 [U] wire#83
+23, 9, 84           !TDC ROC#2 Sl#9 Ch#23 HDC pl#9 [U] wire#84
+24, 9, 85           !TDC ROC#2 Sl#9 Ch#24 HDC pl#9 [U] wire#85
+25, 9, 86           !TDC ROC#2 Sl#9 Ch#25 HDC pl#9 [U] wire#86
+26, 9, 87           !TDC ROC#2 Sl#9 Ch#26 HDC pl#9 [U] wire#87
+27, 9, 88           !TDC ROC#2 Sl#9 Ch#27 HDC pl#9 [U] wire#88
+28, 9, 89           !TDC ROC#2 Sl#9 Ch#28 HDC pl#9 [U] wire#89
+29, 9, 90           !TDC ROC#2 Sl#9 Ch#29 HDC pl#9 [U] wire#90
+30, 9, 91           !TDC ROC#2 Sl#9 Ch#30 HDC pl#9 [U] wire#91
+!31 !TDC ROC#2 Sl#9 Ch#31 unused
+32, 12, 113         !TDC ROC#2 Sl#9 Ch#32 HDC pl#12 [X2] wire#113
+!33 !TDC ROC#2 Sl#9 Ch#33 unused
+34, 10, 1           !TDC ROC#2 Sl#9 Ch#34 HDC pl#10 [V] wire#1
+35, 10, 2           !TDC ROC#2 Sl#9 Ch#35 HDC pl#10 [V] wire#2
+36, 10, 3           !TDC ROC#2 Sl#9 Ch#36 HDC pl#10 [V] wire#3
+37, 10, 4           !TDC ROC#2 Sl#9 Ch#37 HDC pl#10 [V] wire#4
+38, 10, 5           !TDC ROC#2 Sl#9 Ch#38 HDC pl#10 [V] wire#5
+39, 10, 6           !TDC ROC#2 Sl#9 Ch#39 HDC pl#10 [V] wire#6
+40, 10, 7           !TDC ROC#2 Sl#9 Ch#40 HDC pl#10 [V] wire#7
+41, 10, 8           !TDC ROC#2 Sl#9 Ch#41 HDC pl#10 [V] wire#8
+42, 10, 9           !TDC ROC#2 Sl#9 Ch#42 HDC pl#10 [V] wire#9
+43, 10, 10          !TDC ROC#2 Sl#9 Ch#43 HDC pl#10 [V] wire#10
+44, 10, 11          !TDC ROC#2 Sl#9 Ch#44 HDC pl#10 [V] wire#11
+45, 10, 12          !TDC ROC#2 Sl#9 Ch#45 HDC pl#10 [V] wire#12
+46, 10, 13          !TDC ROC#2 Sl#9 Ch#46 HDC pl#10 [V] wire#13
+47, 10, 14          !TDC ROC#2 Sl#9 Ch#47 HDC pl#10 [V] wire#14
+48, 7, 1            !TDC ROC#2 Sl#9 Ch#48 HDC pl#7 [X1] wire#1
+49, 7, 2            !TDC ROC#2 Sl#9 Ch#49 HDC pl#7 [X1] wire#2
+50, 7, 3            !TDC ROC#2 Sl#9 Ch#50 HDC pl#7 [X1] wire#3
+51, 7, 4            !TDC ROC#2 Sl#9 Ch#51 HDC pl#7 [X1] wire#4
+52, 7, 5            !TDC ROC#2 Sl#9 Ch#52 HDC pl#7 [X1] wire#5
+53, 7, 6            !TDC ROC#2 Sl#9 Ch#53 HDC pl#7 [X1] wire#6
+54, 7, 7            !TDC ROC#2 Sl#9 Ch#54 HDC pl#7 [X1] wire#7
+55, 7, 8            !TDC ROC#2 Sl#9 Ch#55 HDC pl#7 [X1] wire#8
+56, 7, 9            !TDC ROC#2 Sl#9 Ch#56 HDC pl#7 [X1] wire#9
+57, 7, 10           !TDC ROC#2 Sl#9 Ch#57 HDC pl#7 [X1] wire#10
+58, 7, 11           !TDC ROC#2 Sl#9 Ch#58 HDC pl#7 [X1] wire#11
+59, 7, 12           !TDC ROC#2 Sl#9 Ch#59 HDC pl#7 [X1] wire#12
+60, 7, 13           !TDC ROC#2 Sl#9 Ch#60 HDC pl#7 [X1] wire#13
+61, 7, 14           !TDC ROC#2 Sl#9 Ch#61 HDC pl#7 [X1] wire#14
+62, 7, 15           !TDC ROC#2 Sl#9 Ch#62 HDC pl#7 [X1] wire#15
+63, 7, 16           !TDC ROC#2 Sl#9 Ch#63 HDC pl#7 [X1] wire#16
+64, 12, 97          !TDC ROC#2 Sl#9 Ch#64 HDC pl#12 [X2] wire#97
+65, 12, 98          !TDC ROC#2 Sl#9 Ch#65 HDC pl#12 [X2] wire#98
+66, 12, 99          !TDC ROC#2 Sl#9 Ch#66 HDC pl#12 [X2] wire#99
+67, 12, 100         !TDC ROC#2 Sl#9 Ch#67 HDC pl#12 [X2] wire#100
+68, 12, 101         !TDC ROC#2 Sl#9 Ch#68 HDC pl#12 [X2] wire#101
+69, 12, 102         !TDC ROC#2 Sl#9 Ch#69 HDC pl#12 [X2] wire#102
+70, 12, 103         !TDC ROC#2 Sl#9 Ch#70 HDC pl#12 [X2] wire#103
+71, 12, 104         !TDC ROC#2 Sl#9 Ch#71 HDC pl#12 [X2] wire#104
+72, 12, 105         !TDC ROC#2 Sl#9 Ch#72 HDC pl#12 [X2] wire#105
+73, 12, 106         !TDC ROC#2 Sl#9 Ch#73 HDC pl#12 [X2] wire#106
+74, 12, 107         !TDC ROC#2 Sl#9 Ch#74 HDC pl#12 [X2] wire#107
+75, 12, 108         !TDC ROC#2 Sl#9 Ch#75 HDC pl#12 [X2] wire#108
+76, 12, 109         !TDC ROC#2 Sl#9 Ch#76 HDC pl#12 [X2] wire#109
+77, 12, 110         !TDC ROC#2 Sl#9 Ch#77 HDC pl#12 [X2] wire#110
+78, 12, 111         !TDC ROC#2 Sl#9 Ch#78 HDC pl#12 [X2] wire#111
+79, 12, 112         !TDC ROC#2 Sl#9 Ch#79 HDC pl#12 [X2] wire#112
+80, 9, 92           !TDC ROC#2 Sl#9 Ch#80 HDC pl#9 [U] wire#92
+81, 9, 93           !TDC ROC#2 Sl#9 Ch#81 HDC pl#9 [U] wire#93
+82, 9, 94           !TDC ROC#2 Sl#9 Ch#82 HDC pl#9 [U] wire#94
+83, 9, 95           !TDC ROC#2 Sl#9 Ch#83 HDC pl#9 [U] wire#95
+84, 9, 96           !TDC ROC#2 Sl#9 Ch#84 HDC pl#9 [U] wire#96
+85, 9, 97           !TDC ROC#2 Sl#9 Ch#85 HDC pl#9 [U] wire#97
+86, 9, 98           !TDC ROC#2 Sl#9 Ch#86 HDC pl#9 [U] wire#98
+87, 9, 99           !TDC ROC#2 Sl#9 Ch#87 HDC pl#9 [U] wire#99
+88, 9, 100          !TDC ROC#2 Sl#9 Ch#88 HDC pl#9 [U] wire#100
+89, 9, 101          !TDC ROC#2 Sl#9 Ch#89 HDC pl#9 [U] wire#101
+90, 9, 102          !TDC ROC#2 Sl#9 Ch#90 HDC pl#9 [U] wire#102
+91, 9, 103          !TDC ROC#2 Sl#9 Ch#91 HDC pl#9 [U] wire#103
+92, 9, 104          !TDC ROC#2 Sl#9 Ch#92 HDC pl#9 [U] wire#104
+93, 9, 105          !TDC ROC#2 Sl#9 Ch#93 HDC pl#9 [U] wire#105
+94, 9, 106          !TDC ROC#2 Sl#9 Ch#94 HDC pl#9 [U] wire#106
+95, 9, 107          !TDC ROC#2 Sl#9 Ch#95 HDC pl#9 [U] wire#107
+!
+!
+!                               2nd HDC chamber  planes1-6     
+Slot= 15
+0, 1, 1            !TDC ROC#2 Sl#11 Ch#0 HDC pl#7 [X1] wire#1
+1, 1, 2            !TDC ROC#2 Sl#11 Ch#1 HDC pl#7 [X1] wire#2
+2, 1, 3            !TDC ROC#2 Sl#11 Ch#2 HDC pl#7 [X1] wire#3
+3, 1, 4            !TDC ROC#2 Sl#11 Ch#3 HDC pl#7 [X1] wire#4
+4, 1, 5            !TDC ROC#2 Sl#11 Ch#4 HDC pl#7 [X1] wire#5
+5, 1, 6            !TDC ROC#2 Sl#11 Ch#5 HDC pl#7 [X1] wire#6
+6, 1, 7            !TDC ROC#2 Sl#11 Ch#6 HDC pl#7 [X1] wire#7
+7, 1, 8            !TDC ROC#2 Sl#11 Ch#7 HDC pl#7 [X1] wire#8
+8, 1, 9            !TDC ROC#2 Sl#11 Ch#8 HDC pl#7 [X1] wire#9
+9, 1, 10           !TDC ROC#2 Sl#11 Ch#9 HDC pl#7 [X1] wire#10
+10, 1, 11          !TDC ROC#2 Sl#11 Ch#10 HDC pl#7 [X1] wire#11
+11, 1, 12          !TDC ROC#2 Sl#11 Ch#11 HDC pl#7 [X1] wire#12
+12, 1, 13          !TDC ROC#2 Sl#11 Ch#12 HDC pl#7 [X1] wire#13
+13, 1, 14          !TDC ROC#2 Sl#11 Ch#13 HDC pl#7 [X1] wire#14
+14, 1, 15          !TDC ROC#2 Sl#11 Ch#14 HDC pl#7 [X1] wire#15
+15, 1, 16          !TDC ROC#2 Sl#11 Ch#15 HDC pl#7 [X1] wire#16
+16, 1, 17          !TDC ROC#2 Sl#11 Ch#16 HDC pl#7 [X1] wire#17
+17, 1, 18          !TDC ROC#2 Sl#11 Ch#17 HDC pl#7 [X1] wire#18
+18, 1, 19          !TDC ROC#2 Sl#11 Ch#18 HDC pl#7 [X1] wire#19
+19, 1, 20          !TDC ROC#2 Sl#11 Ch#19 HDC pl#7 [X1] wire#20
+20, 1, 21          !TDC ROC#2 Sl#11 Ch#20 HDC pl#7 [X1] wire#21
+21, 1, 22          !TDC ROC#2 Sl#11 Ch#21 HDC pl#7 [X1] wire#22
+22, 1, 23          !TDC ROC#2 Sl#11 Ch#22 HDC pl#7 [X1] wire#23
+23, 1, 24          !TDC ROC#2 Sl#11 Ch#23 HDC pl#7 [X1] wire#24
+24, 1, 25          !TDC ROC#2 Sl#11 Ch#24 HDC pl#7 [X1] wire#25
+25, 1, 26          !TDC ROC#2 Sl#11 Ch#25 HDC pl#7 [X1] wire#26
+26, 1, 27          !TDC ROC#2 Sl#11 Ch#26 HDC pl#7 [X1] wire#27
+27, 1, 28          !TDC ROC#2 Sl#11 Ch#27 HDC pl#7 [X1] wire#28
+28, 1, 29          !TDC ROC#2 Sl#11 Ch#28 HDC pl#7 [X1] wire#29
+29, 1, 30          !TDC ROC#2 Sl#11 Ch#29 HDC pl#7 [X1] wire#30
+30, 1, 31          !TDC ROC#2 Sl#11 Ch#30 HDC pl#7 [X1] wire#31
+31, 1, 32          !TDC ROC#2 Sl#11 Ch#31 HDC pl#7 [X1] wire#32
+32, 1, 33          !TDC ROC#2 Sl#11 Ch#32 HDC pl#7 [X1] wire#33
+33, 1, 34          !TDC ROC#2 Sl#11 Ch#33 HDC pl#7 [X1] wire#34
+34, 1, 35          !TDC ROC#2 Sl#11 Ch#34 HDC pl#7 [X1] wire#35
+35, 1, 36          !TDC ROC#2 Sl#11 Ch#35 HDC pl#7 [X1] wire#36
+36, 1, 37          !TDC ROC#2 Sl#11 Ch#36 HDC pl#7 [X1] wire#37
+37, 1, 38          !TDC ROC#2 Sl#11 Ch#37 HDC pl#7 [X1] wire#38
+38, 1, 39          !TDC ROC#2 Sl#11 Ch#38 HDC pl#7 [X1] wire#39
+39, 1, 40          !TDC ROC#2 Sl#11 Ch#39 HDC pl#7 [X1] wire#40
+40, 1, 41          !TDC ROC#2 Sl#11 Ch#40 HDC pl#7 [X1] wire#41
+41, 1, 42          !TDC ROC#2 Sl#11 Ch#41 HDC pl#7 [X1] wire#42
+42, 1, 43          !TDC ROC#2 Sl#11 Ch#42 HDC pl#7 [X1] wire#43
+43, 1, 44          !TDC ROC#2 Sl#11 Ch#43 HDC pl#7 [X1] wire#44
+44, 1, 45          !TDC ROC#2 Sl#11 Ch#44 HDC pl#7 [X1] wire#45
+45, 1, 46          !TDC ROC#2 Sl#11 Ch#45 HDC pl#7 [X1] wire#46
+46, 1, 47          !TDC ROC#2 Sl#11 Ch#46 HDC pl#7 [X1] wire#47
+47, 1, 48          !TDC ROC#2 Sl#11 Ch#47 HDC pl#7 [X1] wire#48
+48, 1, 49          !TDC ROC#2 Sl#11 Ch#48 HDC pl#7 [X1] wire#49
+49, 1, 50          !TDC ROC#2 Sl#11 Ch#49 HDC pl#7 [X1] wire#50
+50, 1, 51          !TDC ROC#2 Sl#11 Ch#50 HDC pl#7 [X1] wire#51
+51, 1, 52          !TDC ROC#2 Sl#11 Ch#51 HDC pl#7 [X1] wire#52
+52, 1, 53          !TDC ROC#2 Sl#11 Ch#52 HDC pl#7 [X1] wire#53
+53, 1, 54          !TDC ROC#2 Sl#11 Ch#53 HDC pl#7 [X1] wire#54
+54, 1, 55          !TDC ROC#2 Sl#11 Ch#54 HDC pl#7 [X1] wire#55
+55, 1, 56          !TDC ROC#2 Sl#11 Ch#55 HDC pl#7 [X1] wire#56
+56, 1, 57          !TDC ROC#2 Sl#11 Ch#56 HDC pl#7 [X1] wire#57
+57, 1, 58          !TDC ROC#2 Sl#11 Ch#57 HDC pl#7 [X1] wire#58
+58, 1, 59          !TDC ROC#2 Sl#11 Ch#58 HDC pl#7 [X1] wire#59
+59, 1, 60          !TDC ROC#2 Sl#11 Ch#59 HDC pl#7 [X1] wire#60
+60, 1, 61          !TDC ROC#2 Sl#11 Ch#60 HDC pl#7 [X1] wire#61
+61, 1, 62          !TDC ROC#2 Sl#11 Ch#61 HDC pl#7 [X1] wire#62
+62, 1, 63          !TDC ROC#2 Sl#11 Ch#62 HDC pl#7 [X1] wire#63
+63, 1, 64          !TDC ROC#2 Sl#11 Ch#63 HDC pl#7 [X1] wire#64
+64, 1, 65          !TDC ROC#2 Sl#11 Ch#64 HDC pl#7 [X1] wire#65
+65, 1, 66          !TDC ROC#2 Sl#11 Ch#65 HDC pl#7 [X1] wire#66
+66, 1, 67          !TDC ROC#2 Sl#11 Ch#66 HDC pl#7 [X1] wire#67
+67, 1, 68          !TDC ROC#2 Sl#11 Ch#67 HDC pl#7 [X1] wire#68
+68, 1, 69          !TDC ROC#2 Sl#11 Ch#68 HDC pl#7 [X1] wire#69
+69, 1, 70          !TDC ROC#2 Sl#11 Ch#69 HDC pl#7 [X1] wire#70
+70, 1, 71          !TDC ROC#2 Sl#11 Ch#70 HDC pl#7 [X1] wire#71
+71, 1, 72          !TDC ROC#2 Sl#11 Ch#71 HDC pl#7 [X1] wire#72
+72, 1, 73          !TDC ROC#2 Sl#11 Ch#72 HDC pl#7 [X1] wire#73
+73, 1, 74          !TDC ROC#2 Sl#11 Ch#73 HDC pl#7 [X1] wire#74
+74, 1, 75          !TDC ROC#2 Sl#11 Ch#74 HDC pl#7 [X1] wire#75
+75, 1, 76          !TDC ROC#2 Sl#11 Ch#75 HDC pl#7 [X1] wire#76
+76, 1, 77          !TDC ROC#2 Sl#11 Ch#76 HDC pl#7 [X1] wire#77
+77, 1, 78          !TDC ROC#2 Sl#11 Ch#77 HDC pl#7 [X1] wire#78
+78, 1, 79          !TDC ROC#2 Sl#11 Ch#78 HDC pl#7 [X1] wire#79
+79, 1, 80          !TDC ROC#2 Sl#11 Ch#79 HDC pl#7 [X1] wire#80
+80, 1, 81          !TDC ROC#2 Sl#11 Ch#80 HDC pl#7 [X1] wire#81
+81, 1, 82          !TDC ROC#2 Sl#11 Ch#81 HDC pl#7 [X1] wire#82
+82, 1, 83          !TDC ROC#2 Sl#11 Ch#82 HDC pl#7 [X1] wire#83
+83, 1, 84          !TDC ROC#2 Sl#11 Ch#83 HDC pl#7 [X1] wire#84
+84, 1, 85          !TDC ROC#2 Sl#11 Ch#84 HDC pl#7 [X1] wire#85
+85, 1, 86          !TDC ROC#2 Sl#11 Ch#85 HDC pl#7 [X1] wire#86
+86, 1, 87          !TDC ROC#2 Sl#11 Ch#86 HDC pl#7 [X1] wire#87
+87, 1, 88          !TDC ROC#2 Sl#11 Ch#87 HDC pl#7 [X1] wire#88
+88, 1, 89          !TDC ROC#2 Sl#11 Ch#88 HDC pl#7 [X1] wire#89
+89, 1, 90          !TDC ROC#2 Sl#11 Ch#89 HDC pl#7 [X1] wire#90
+90, 1, 91          !TDC ROC#2 Sl#11 Ch#90 HDC pl#7 [X1] wire#91
+91, 1, 92          !TDC ROC#2 Sl#11 Ch#91 HDC pl#7 [X1] wire#92
+92, 1, 93          !TDC ROC#2 Sl#11 Ch#92 HDC pl#7 [X1] wire#93
+93, 1, 94          !TDC ROC#2 Sl#11 Ch#93 HDC pl#7 [X1] wire#94
+94, 1, 95          !TDC ROC#2 Sl#11 Ch#94 HDC pl#7 [X1] wire#95
+95, 1, 96          !TDC ROC#2 Sl#11 Ch#95 HDC pl#7 [X1] wire#96
+Slot= 16
+0, 1, 97           !TDC ROC#2 Sl#12 Ch#0 HDC pl#7 [X1] wire#97
+1, 1, 98           !TDC ROC#2 Sl#12 Ch#1 HDC pl#7 [X1] wire#98
+2, 1, 99           !TDC ROC#2 Sl#12 Ch#2 HDC pl#7 [X1] wire#99
+3, 1, 100          !TDC ROC#2 Sl#12 Ch#3 HDC pl#7 [X1] wire#100
+4, 1, 101          !TDC ROC#2 Sl#12 Ch#4 HDC pl#7 [X1] wire#101
+5, 1, 102          !TDC ROC#2 Sl#12 Ch#5 HDC pl#7 [X1] wire#102
+6, 1, 103          !TDC ROC#2 Sl#12 Ch#6 HDC pl#7 [X1] wire#103
+7, 1, 104          !TDC ROC#2 Sl#12 Ch#7 HDC pl#7 [X1] wire#104
+8, 1, 105          !TDC ROC#2 Sl#12 Ch#8 HDC pl#7 [X1] wire#105
+9, 1, 106          !TDC ROC#2 Sl#12 Ch#9 HDC pl#7 [X1] wire#106
+10, 1, 107         !TDC ROC#2 Sl#12 Ch#10 HDC pl#7 [X1] wire#107
+11, 1, 108         !TDC ROC#2 Sl#12 Ch#11 HDC pl#7 [X1] wire#108
+12, 1, 109         !TDC ROC#2 Sl#12 Ch#12 HDC pl#7 [X1] wire#109
+13, 1, 110         !TDC ROC#2 Sl#12 Ch#13 HDC pl#7 [X1] wire#110
+14, 1, 111         !TDC ROC#2 Sl#12 Ch#14 HDC pl#7 [X1] wire#111
+15, 1, 112         !TDC ROC#2 Sl#12 Ch#15 HDC pl#7 [X1] wire#112
+16, 2, 1           !TDC ROC#2 Sl#12 Ch#16 HDC pl#8 [Y1] wire#1
+17, 2, 2           !TDC ROC#2 Sl#12 Ch#17 HDC pl#8 [Y1] wire#2
+18, 2, 3           !TDC ROC#2 Sl#12 Ch#18 HDC pl#8 [Y1] wire#3
+19, 2, 4           !TDC ROC#2 Sl#12 Ch#19 HDC pl#8 [Y1] wire#4
+20, 2, 5           !TDC ROC#2 Sl#12 Ch#20 HDC pl#8 [Y1] wire#5
+21, 2, 6           !TDC ROC#2 Sl#12 Ch#21 HDC pl#8 [Y1] wire#6
+22, 2, 7           !TDC ROC#2 Sl#12 Ch#22 HDC pl#8 [Y1] wire#7
+23, 2, 8           !TDC ROC#2 Sl#12 Ch#23 HDC pl#8 [Y1] wire#8
+24, 2, 9           !TDC ROC#2 Sl#12 Ch#24 HDC pl#8 [Y1] wire#9
+25, 2, 10          !TDC ROC#2 Sl#12 Ch#25 HDC pl#8 [Y1] wire#10
+26, 2, 11          !TDC ROC#2 Sl#12 Ch#26 HDC pl#8 [Y1] wire#11
+27, 2, 12          !TDC ROC#2 Sl#12 Ch#27 HDC pl#8 [Y1] wire#12
+28, 2, 13          !TDC ROC#2 Sl#12 Ch#28 HDC pl#8 [Y1] wire#13
+! 29  !TDC ROC#2 Sl#12 Ch#29 unused
+! 30  !TDC ROC#2 Sl#12 Ch#30 unused
+! 31  !TDC ROC#2 Sl#12 Ch#31 unused
+32, 2, 14          !TDC ROC#2 Sl#12 Ch#32 HDC pl#8 [Y1] wire#14
+33, 2, 15          !TDC ROC#2 Sl#12 Ch#33 HDC pl#8 [Y1] wire#15
+34, 2, 16          !TDC ROC#2 Sl#12 Ch#34 HDC pl#8 [Y1] wire#16
+35, 2, 17          !TDC ROC#2 Sl#12 Ch#35 HDC pl#8 [Y1] wire#17
+36, 2, 18          !TDC ROC#2 Sl#12 Ch#36 HDC pl#8 [Y1] wire#18
+37, 2, 19          !TDC ROC#2 Sl#12 Ch#37 HDC pl#8 [Y1] wire#19
+38, 2, 20          !TDC ROC#2 Sl#12 Ch#38 HDC pl#8 [Y1] wire#20
+39, 2, 21          !TDC ROC#2 Sl#12 Ch#39 HDC pl#8 [Y1] wire#21
+40, 2, 22          !TDC ROC#2 Sl#12 Ch#40 HDC pl#8 [Y1] wire#22
+41, 2, 23          !TDC ROC#2 Sl#12 Ch#41 HDC pl#8 [Y1] wire#23
+42, 2, 24          !TDC ROC#2 Sl#12 Ch#42 HDC pl#8 [Y1] wire#24
+43, 2, 25          !TDC ROC#2 Sl#12 Ch#43 HDC pl#8 [Y1] wire#25
+44, 2, 26          !TDC ROC#2 Sl#12 Ch#44 HDC pl#8 [Y1] wire#26
+! 45 !TDC ROC#2 Sl#12 Ch#45 unused
+! 46 !TDC ROC#2 Sl#12 Ch#46 unused
+! 47 !TDC ROC#2 Sl#12 Ch#47 unused
+48, 2, 27          !TDC ROC#2 Sl#12 Ch#48 HDC pl#8 [Y1] wire#27
+49, 2, 28          !TDC ROC#2 Sl#12 Ch#49 HDC pl#8 [Y1] wire#28
+50, 2, 29          !TDC ROC#2 Sl#12 Ch#50 HDC pl#8 [Y1] wire#29
+51, 2, 30          !TDC ROC#2 Sl#12 Ch#51 HDC pl#8 [Y1] wire#30
+52, 2, 31          !TDC ROC#2 Sl#12 Ch#52 HDC pl#8 [Y1] wire#31
+53, 2, 32          !TDC ROC#2 Sl#12 Ch#53 HDC pl#8 [Y1] wire#32
+54, 2, 33          !TDC ROC#2 Sl#12 Ch#54 HDC pl#8 [Y1] wire#33
+55, 2, 34          !TDC ROC#2 Sl#12 Ch#55 HDC pl#8 [Y1] wire#34
+56, 2, 35          !TDC ROC#2 Sl#12 Ch#56 HDC pl#8 [Y1] wire#35
+57, 2, 36          !TDC ROC#2 Sl#12 Ch#57 HDC pl#8 [Y1] wire#36
+58, 2, 37          !TDC ROC#2 Sl#12 Ch#58 HDC pl#8 [Y1] wire#37
+59, 2, 38          !TDC ROC#2 Sl#12 Ch#59 HDC pl#8 [Y1] wire#38
+60, 2, 39          !TDC ROC#2 Sl#12 Ch#60 HDC pl#8 [Y1] wire#39
+! 61 !TDC ROC#2 Sl#12 Ch#61 unused
+! 62 !TDC ROC#2 Sl#12 Ch#62 unused
+! 63 !TDC ROC#2 Sl#12 Ch#63 unused
+64, 2, 40          !TDC ROC#2 Sl#12 Ch#64 HDC pl#8 [Y1] wire#40
+65, 2, 41          !TDC ROC#2 Sl#12 Ch#65 HDC pl#8 [Y1] wire#41
+66, 2, 42          !TDC ROC#2 Sl#12 Ch#66 HDC pl#8 [Y1] wire#42
+67, 2, 43          !TDC ROC#2 Sl#12 Ch#67 HDC pl#8 [Y1] wire#43
+68, 2, 44          !TDC ROC#2 Sl#12 Ch#68 HDC pl#8 [Y1] wire#44
+69, 2, 45          !TDC ROC#2 Sl#12 Ch#69 HDC pl#8 [Y1] wire#45
+70, 2, 46          !TDC ROC#2 Sl#12 Ch#70 HDC pl#8 [Y1] wire#46
+71, 2, 47          !TDC ROC#2 Sl#12 Ch#71 HDC pl#8 [Y1] wire#47
+72, 2, 48          !TDC ROC#2 Sl#12 Ch#72 HDC pl#8 [Y1] wire#48
+73, 2, 49          !TDC ROC#2 Sl#12 Ch#73 HDC pl#8 [Y1] wire#49
+74, 2, 50          !TDC ROC#2 Sl#12 Ch#74 HDC pl#8 [Y1] wire#50
+75, 2, 51          !TDC ROC#2 Sl#12 Ch#75 HDC pl#8 [Y1] wire#51
+76, 2, 52          !TDC ROC#2 Sl#12 Ch#76 HDC pl#8 [Y1] wire#52
+! 77 !TDC ROC#2 Sl#12 Ch#77 unused
+! 78 !TDC ROC#2 Sl#12 Ch#78 unused
+! 79 !TDC ROC#2 Sl#12 Ch#79 unused
+80, 1, 113         !TDC ROC#2 Sl#12 Ch#80 HDC pl#7 [X1] wire#113
+! 81 !TDC ROC#2 Sl#12 Ch#81 unused
+82, 3, 1           !TDC ROC#2 Sl#12 Ch#82 HDC pl#9 [U] wire#1
+83, 3, 2           !TDC ROC#2 Sl#12 Ch#83 HDC pl#9 [U] wire#2
+84, 3, 3           !TDC ROC#2 Sl#12 Ch#84 HDC pl#9 [U] wire#3
+85, 3, 4           !TDC ROC#2 Sl#12 Ch#85 HDC pl#9 [U] wire#4
+86, 3, 5           !TDC ROC#2 Sl#12 Ch#86 HDC pl#9 [U] wire#5
+87, 3, 6           !TDC ROC#2 Sl#12 Ch#87 HDC pl#9 [U] wire#6
+88, 3, 7           !TDC ROC#2 Sl#12 Ch#88 HDC pl#9 [U] wire#7
+89, 3, 8           !TDC ROC#2 Sl#12 Ch#89 HDC pl#9 [U] wire#8
+90, 3, 9           !TDC ROC#2 Sl#12 Ch#90 HDC pl#9 [U] wire#9
+91, 3, 10          !TDC ROC#2 Sl#12 Ch#91 HDC pl#9 [U] wire#10
+92, 3, 11          !TDC ROC#2 Sl#12 Ch#92 HDC pl#9 [U] wire#11
+93, 3, 12          !TDC ROC#2 Sl#12 Ch#93 HDC pl#9 [U] wire#12
+94, 3, 13          !TDC ROC#2 Sl#12 Ch#94 HDC pl#9 [U] wire#13
+95, 3, 14          !TDC ROC#2 Sl#12 Ch#95 HDC pl#9 [U] wire#14
+Slot= 18
+0, 3, 15           !TDC ROC#2 Sl#14 Ch#0 HDC pl#9 [U] wire#15
+1, 3, 16           !TDC ROC#2 Sl#14 Ch#1 HDC pl#9 [U] wire#16
+2, 3, 17           !TDC ROC#2 Sl#14 Ch#2 HDC pl#9 [U] wire#17
+3, 3, 18           !TDC ROC#2 Sl#14 Ch#3 HDC pl#9 [U] wire#18
+4, 3, 19           !TDC ROC#2 Sl#14 Ch#4 HDC pl#9 [U] wire#19
+5, 3, 20           !TDC ROC#2 Sl#14 Ch#5 HDC pl#9 [U] wire#20
+6, 3, 21           !TDC ROC#2 Sl#14 Ch#6 HDC pl#9 [U] wire#21
+7, 3, 22           !TDC ROC#2 Sl#14 Ch#7 HDC pl#9 [U] wire#22
+8, 3, 23           !TDC ROC#2 Sl#14 Ch#8 HDC pl#9 [U] wire#23
+9, 3, 24           !TDC ROC#2 Sl#14 Ch#9 HDC pl#9 [U] wire#24
+10, 3, 25          !TDC ROC#2 Sl#14 Ch#10 HDC pl#9 [U] wire#25
+11, 3, 26          !TDC ROC#2 Sl#14 Ch#11 HDC pl#9 [U] wire#26
+12, 3, 27          !TDC ROC#2 Sl#14 Ch#12 HDC pl#9 [U] wire#27
+13, 3, 28          !TDC ROC#2 Sl#14 Ch#13 HDC pl#9 [U] wire#28
+14, 3, 29          !TDC ROC#2 Sl#14 Ch#14 HDC pl#9 [U] wire#29
+! 15 !TDC ROC#2 Sl#14 Ch#15 unused
+16, 3, 30          !TDC ROC#2 Sl#14 Ch#16 HDC pl#9 [U] wire#30
+17, 3, 31          !TDC ROC#2 Sl#14 Ch#17 HDC pl#9 [U] wire#31
+18, 3, 32          !TDC ROC#2 Sl#14 Ch#18 HDC pl#9 [U] wire#32
+19, 3, 33          !TDC ROC#2 Sl#14 Ch#19 HDC pl#9 [U] wire#33
+20, 3, 34          !TDC ROC#2 Sl#14 Ch#20 HDC pl#9 [U] wire#34
+21, 3, 35          !TDC ROC#2 Sl#14 Ch#21 HDC pl#9 [U] wire#35
+22, 3, 36          !TDC ROC#2 Sl#14 Ch#22 HDC pl#9 [U] wire#36
+23, 3, 37          !TDC ROC#2 Sl#14 Ch#23 HDC pl#9 [U] wire#37
+24, 3, 38          !TDC ROC#2 Sl#14 Ch#24 HDC pl#9 [U] wire#38
+25, 3, 39          !TDC ROC#2 Sl#14 Ch#25 HDC pl#9 [U] wire#39
+26, 3, 40          !TDC ROC#2 Sl#14 Ch#26 HDC pl#9 [U] wire#40
+27, 3, 41          !TDC ROC#2 Sl#14 Ch#27 HDC pl#9 [U] wire#41
+28, 3, 42          !TDC ROC#2 Sl#14 Ch#28 HDC pl#9 [U] wire#42
+29, 3, 43          !TDC ROC#2 Sl#14 Ch#29 HDC pl#9 [U] wire#43
+30, 3, 44          !TDC ROC#2 Sl#14 Ch#30 HDC pl#9 [U] wire#44
+31, 3, 45          !TDC ROC#2 Sl#14 Ch#31 HDC pl#9 [U] wire#45
+32, 3, 46          !TDC ROC#2 Sl#14 Ch#32 HDC pl#9 [U] wire#46
+33, 3, 47          !TDC ROC#2 Sl#14 Ch#33 HDC pl#9 [U] wire#47
+34, 3, 48          !TDC ROC#2 Sl#14 Ch#34 HDC pl#9 [U] wire#48
+35, 3, 49          !TDC ROC#2 Sl#14 Ch#35 HDC pl#9 [U] wire#49
+36, 3, 50          !TDC ROC#2 Sl#14 Ch#36 HDC pl#9 [U] wire#50
+37, 3, 51          !TDC ROC#2 Sl#14 Ch#37 HDC pl#9 [U] wire#51
+38, 3, 52          !TDC ROC#2 Sl#14 Ch#38 HDC pl#9 [U] wire#52
+39, 3, 53          !TDC ROC#2 Sl#14 Ch#39 HDC pl#9 [U] wire#53
+40, 3, 54          !TDC ROC#2 Sl#14 Ch#40 HDC pl#9 [U] wire#54
+41, 3, 55          !TDC ROC#2 Sl#14 Ch#41 HDC pl#9 [U] wire#55
+42, 3, 56          !TDC ROC#2 Sl#14 Ch#42 HDC pl#9 [U] wire#56
+43, 3, 57          !TDC ROC#2 Sl#14 Ch#43 HDC pl#9 [U] wire#57
+44, 3, 58          !TDC ROC#2 Sl#14 Ch#44 HDC pl#9 [U] wire#58
+45, 3, 59          !TDC ROC#2 Sl#14 Ch#45 HDC pl#9 [U] wire#59
+46, 3, 60          !TDC ROC#2 Sl#14 Ch#46 HDC pl#9 [U] wire#60
+! 47 !TDC ROC#2 Sl#14 Ch#47 unused
+48, 3, 61          !TDC ROC#2 Sl#14 Ch#48 HDC pl#9 [U] wire#61
+49, 3, 62          !TDC ROC#2 Sl#14 Ch#49 HDC pl#9 [U] wire#62
+50, 3, 63          !TDC ROC#2 Sl#14 Ch#50 HDC pl#9 [U] wire#63
+51, 3, 64          !TDC ROC#2 Sl#14 Ch#51 HDC pl#9 [U] wire#64
+52, 3, 65          !TDC ROC#2 Sl#14 Ch#52 HDC pl#9 [U] wire#65
+53, 3, 66          !TDC ROC#2 Sl#14 Ch#53 HDC pl#9 [U] wire#66
+54, 3, 67          !TDC ROC#2 Sl#14 Ch#54 HDC pl#9 [U] wire#67
+55, 3, 68          !TDC ROC#2 Sl#14 Ch#55 HDC pl#9 [U] wire#68
+56, 3, 69          !TDC ROC#2 Sl#14 Ch#56 HDC pl#9 [U] wire#69
+57, 3, 70          !TDC ROC#2 Sl#14 Ch#57 HDC pl#9 [U] wire#70
+58, 3, 71          !TDC ROC#2 Sl#14 Ch#58 HDC pl#9 [U] wire#71
+59, 3, 72          !TDC ROC#2 Sl#14 Ch#59 HDC pl#9 [U] wire#72
+60, 3, 73          !TDC ROC#2 Sl#14 Ch#60 HDC pl#9 [U] wire#73
+61, 3, 74          !TDC ROC#2 Sl#14 Ch#61 HDC pl#9 [U] wire#74
+62, 3, 75          !TDC ROC#2 Sl#14 Ch#62 HDC pl#9 [U] wire#75
+63, 3, 76          !TDC ROC#2 Sl#14 Ch#63 HDC pl#9 [U] wire#76
+64, 3, 77          !TDC ROC#2 Sl#14 Ch#64 HDC pl#9 [U] wire#77
+65, 3, 78          !TDC ROC#2 Sl#14 Ch#65 HDC pl#9 [U] wire#78
+66, 3, 79          !TDC ROC#2 Sl#14 Ch#66 HDC pl#9 [U] wire#79
+67, 3, 80          !TDC ROC#2 Sl#14 Ch#67 HDC pl#9 [U] wire#80
+68, 3, 81          !TDC ROC#2 Sl#14 Ch#68 HDC pl#9 [U] wire#81
+69, 3, 82          !TDC ROC#2 Sl#14 Ch#69 HDC pl#9 [U] wire#82
+70, 3, 83          !TDC ROC#2 Sl#14 Ch#70 HDC pl#9 [U] wire#83
+71, 3, 84          !TDC ROC#2 Sl#14 Ch#71 HDC pl#9 [U] wire#84
+72, 3, 85          !TDC ROC#2 Sl#14 Ch#72 HDC pl#9 [U] wire#85
+73, 3, 86          !TDC ROC#2 Sl#14 Ch#73 HDC pl#9 [U] wire#86
+74, 3, 87          !TDC ROC#2 Sl#14 Ch#74 HDC pl#9 [U] wire#87
+75, 3, 88          !TDC ROC#2 Sl#14 Ch#75 HDC pl#9 [U] wire#88
+76, 3, 89          !TDC ROC#2 Sl#14 Ch#76 HDC pl#9 [U] wire#89
+77, 3, 90          !TDC ROC#2 Sl#14 Ch#77 HDC pl#9 [U] wire#90
+78, 3, 91          !TDC ROC#2 Sl#14 Ch#78 HDC pl#9 [U] wire#91
+!79, !unused
+80, 3, 92          !TDC ROC#2 Sl#14 Ch#80 HDC pl#9 [U] wire#92
+81, 3, 93          !TDC ROC#2 Sl#14 Ch#81 HDC pl#9 [U] wire#93
+82, 3, 94          !TDC ROC#2 Sl#14 Ch#82 HDC pl#9 [U] wire#94
+83, 3, 95          !TDC ROC#2 Sl#14 Ch#83 HDC pl#9 [U] wire#95
+84, 3, 96          !TDC ROC#2 Sl#14 Ch#84 HDC pl#9 [U] wire#96
+85, 3, 97          !TDC ROC#2 Sl#14 Ch#85 HDC pl#9 [U] wire#97
+86, 3, 98          !TDC ROC#2 Sl#14 Ch#86 HDC pl#9 [U] wire#98
+87, 3, 99          !TDC ROC#2 Sl#14 Ch#87 HDC pl#9 [U] wire#99
+88, 3, 100         !TDC ROC#2 Sl#14 Ch#88 HDC pl#9 [U] wire#100
+89, 3, 101         !TDC ROC#2 Sl#14 Ch#89 HDC pl#9 [U] wire#101
+90, 3, 102         !TDC ROC#2 Sl#14 Ch#90 HDC pl#9 [U] wire#102
+91, 3, 103         !TDC ROC#2 Sl#14 Ch#91 HDC pl#9 [U] wire#103
+92, 3, 104         !TDC ROC#2 Sl#14 Ch#92 HDC pl#9 [U] wire#104
+93, 3, 105         !TDC ROC#2 Sl#14 Ch#93 HDC pl#9 [U] wire#105
+94, 3, 106         !TDC ROC#2 Sl#14 Ch#94 HDC pl#9 [U] wire#106
+95, 3, 107         !TDC ROC#2 Sl#14 Ch#95 HDC pl#9 [U] wire#107
+Slot= 19
+0, 6, 113           !TDC ROC#2 Sl#15 Ch#0 HDC pl#12 [X2] wire#113
+!1,  !unused
+2, 4, 1           !TDC ROC#2 Sl#15 Ch#2 HDC pl#10 [V] wire#1
+3, 4, 2           !TDC ROC#2 Sl#15 Ch#3 HDC pl#10 [V] wire#2
+4, 4, 3           !TDC ROC#2 Sl#15 Ch#4 HDC pl#10 [V] wire#3
+5, 4, 4           !TDC ROC#2 Sl#15 Ch#5 HDC pl#10 [V] wire#4
+6, 4, 5           !TDC ROC#2 Sl#15 Ch#6 HDC pl#10 [V] wire#5
+7, 4, 6           !TDC ROC#2 Sl#15 Ch#7 HDC pl#10 [V] wire#6
+8, 4, 7           !TDC ROC#2 Sl#15 Ch#8 HDC pl#10 [V] wire#7
+9, 4, 8          !TDC ROC#2 Sl#15 Ch#9 HDC pl#10 [V] wire#8
+10, 4, 9          !TDC ROC#2 Sl#15 Ch#10 HDC pl#10 [V] wire#9
+11, 4, 10          !TDC ROC#2 Sl#15 Ch#11 HDC pl#10 [V] wire#10
+12, 4, 11          !TDC ROC#2 Sl#15 Ch#12 HDC pl#10 [V] wire#11
+13, 4, 12          !TDC ROC#2 Sl#15 Ch#13 HDC pl#10 [V] wire#12
+14, 4, 13          !TDC ROC#2 Sl#15 Ch#14 HDC pl#10 [V] wire#13
+15, 4, 14          !TDC ROC#2 Sl#15 Ch#15 HDC pl#10 [V] wire#14
+16, 4, 15          !TDC ROC#2 Sl#15 Ch#16 HDC pl#10 [V] wire#15
+17, 4, 16          !TDC ROC#2 Sl#15 Ch#17 HDC pl#10 [V] wire#16
+18, 4, 17          !TDC ROC#2 Sl#15 Ch#18 HDC pl#10 [V] wire#17
+19, 4, 18          !TDC ROC#2 Sl#15 Ch#19 HDC pl#10 [V] wire#18
+20, 4, 19          !TDC ROC#2 Sl#15 Ch#20 HDC pl#10 [V] wire#19
+21, 4, 20          !TDC ROC#2 Sl#15 Ch#21 HDC pl#10 [V] wire#20
+22, 4, 21          !TDC ROC#2 Sl#15 Ch#22 HDC pl#10 [V] wire#21
+23, 4, 22          !TDC ROC#2 Sl#15 Ch#23 HDC pl#10 [V] wire#22
+24, 4, 23          !TDC ROC#2 Sl#15 Ch#24 HDC pl#10 [V] wire#23
+25, 4, 24          !TDC ROC#2 Sl#15 Ch#25 HDC pl#10 [V] wire#24
+26, 4, 25          !TDC ROC#2 Sl#15 Ch#26 HDC pl#10 [V] wire#25
+27, 4, 26          !TDC ROC#2 Sl#15 Ch#27 HDC pl#10 [V] wire#26
+28, 4, 27          !TDC ROC#2 Sl#15 Ch#28 HDC pl#10 [V] wire#27
+29, 4, 28          !TDC ROC#2 Sl#15 Ch#29 HDC pl#10 [V] wire#28
+30, 4, 29          !TDC ROC#2 Sl#15 Ch#30 HDC pl#10 [V] wire#29
+! 31 !TDC ROC#2 Sl#15 Ch#31 unused
+32, 4, 30          !TDC ROC#2 Sl#15 Ch#32 HDC pl#10 [V] wire#30
+33, 4, 31          !TDC ROC#2 Sl#15 Ch#33 HDC pl#10 [V] wire#31
+34, 4, 32          !TDC ROC#2 Sl#15 Ch#34 HDC pl#10 [V] wire#32
+35, 4, 33          !TDC ROC#2 Sl#15 Ch#35 HDC pl#10 [V] wire#33
+36, 4, 34          !TDC ROC#2 Sl#15 Ch#36 HDC pl#10 [V] wire#34
+37, 4, 35          !TDC ROC#2 Sl#15 Ch#37 HDC pl#10 [V] wire#35
+38, 4, 36          !TDC ROC#2 Sl#15 Ch#38 HDC pl#10 [V] wire#36
+39, 4, 37          !TDC ROC#2 Sl#15 Ch#39 HDC pl#10 [V] wire#37
+40, 4, 38          !TDC ROC#2 Sl#15 Ch#40 HDC pl#10 [V] wire#38
+41, 4, 39          !TDC ROC#2 Sl#15 Ch#41 HDC pl#10 [V] wire#39
+42, 4, 40          !TDC ROC#2 Sl#15 Ch#42 HDC pl#10 [V] wire#40
+43, 4, 41          !TDC ROC#2 Sl#15 Ch#43 HDC pl#10 [V] wire#41
+44, 4, 42          !TDC ROC#2 Sl#15 Ch#44 HDC pl#10 [V] wire#42
+45, 4, 43          !TDC ROC#2 Sl#15 Ch#45 HDC pl#10 [V] wire#43
+46, 4, 44          !TDC ROC#2 Sl#15 Ch#46 HDC pl#10 [V] wire#44
+47, 4, 45          !TDC ROC#2 Sl#15 Ch#47 HDC pl#10 [V] wire#45
+48, 4, 46          !TDC ROC#2 Sl#15 Ch#48 HDC pl#10 [V] wire#46
+49, 4, 47          !TDC ROC#2 Sl#15 Ch#49 HDC pl#10 [V] wire#47
+50, 4, 48          !TDC ROC#2 Sl#15 Ch#50 HDC pl#10 [V] wire#48
+51, 4, 49          !TDC ROC#2 Sl#15 Ch#51 HDC pl#10 [V] wire#49
+52, 4, 50          !TDC ROC#2 Sl#15 Ch#52 HDC pl#10 [V] wire#50
+53, 4, 51          !TDC ROC#2 Sl#15 Ch#53 HDC pl#10 [V] wire#51
+54, 4, 52          !TDC ROC#2 Sl#15 Ch#54 HDC pl#10 [V] wire#52
+55, 4, 53          !TDC ROC#2 Sl#15 Ch#55 HDC pl#10 [V] wire#53
+56, 4, 54          !TDC ROC#2 Sl#15 Ch#56 HDC pl#10 [V] wire#54
+57, 4, 55          !TDC ROC#2 Sl#15 Ch#57 HDC pl#10 [V] wire#55
+58, 4, 56          !TDC ROC#2 Sl#15 Ch#58 HDC pl#10 [V] wire#56
+59, 4, 57          !TDC ROC#2 Sl#15 Ch#59 HDC pl#10 [V] wire#57
+60, 4, 58          !TDC ROC#2 Sl#15 Ch#60 HDC pl#10 [V] wire#58
+61, 4, 59          !TDC ROC#2 Sl#15 Ch#61 HDC pl#10 [V] wire#59
+62, 4, 60          !TDC ROC#2 Sl#15 Ch#62 HDC pl#10 [V] wire#60
+! 63 !TDC ROC#2 Sl#15 Ch#63 unused
+64, 4, 61          !TDC ROC#2 Sl#15 Ch#64 HDC pl#10 [V] wire#61
+65, 4, 62          !TDC ROC#2 Sl#15 Ch#65 HDC pl#10 [V] wire#62
+66, 4, 63          !TDC ROC#2 Sl#15 Ch#66 HDC pl#10 [V] wire#63
+67, 4, 64          !TDC ROC#2 Sl#15 Ch#67 HDC pl#10 [V] wire#64
+68, 4, 65          !TDC ROC#2 Sl#15 Ch#68 HDC pl#10 [V] wire#65
+69, 4, 66          !TDC ROC#2 Sl#15 Ch#69 HDC pl#10 [V] wire#66
+70, 4, 67          !TDC ROC#2 Sl#15 Ch#70 HDC pl#10 [V] wire#67
+71, 4, 68          !TDC ROC#2 Sl#15 Ch#71 HDC pl#10 [V] wire#68
+72, 4, 69          !TDC ROC#2 Sl#15 Ch#72 HDC pl#10 [V] wire#69
+73, 4, 70          !TDC ROC#2 Sl#15 Ch#73 HDC pl#10 [V] wire#70
+74, 4, 71          !TDC ROC#2 Sl#15 Ch#74 HDC pl#10 [V] wire#71
+75, 4, 72          !TDC ROC#2 Sl#15 Ch#75 HDC pl#10 [V] wire#72
+76, 4, 73          !TDC ROC#2 Sl#15 Ch#76 HDC pl#10 [V] wire#73
+77, 4, 74          !TDC ROC#2 Sl#15 Ch#77 HDC pl#10 [V] wire#74
+78, 4, 75          !TDC ROC#2 Sl#15 Ch#78 HDC pl#10 [V] wire#75
+79, 4, 76          !TDC ROC#2 Sl#15 Ch#79 HDC pl#10 [V] wire#76
+80, 4, 77          !TDC ROC#2 Sl#15 Ch#80 HDC pl#10 [V] wire#77
+81, 4, 78          !TDC ROC#2 Sl#15 Ch#81 HDC pl#10 [V] wire#78
+82, 4, 79          !TDC ROC#2 Sl#15 Ch#82 HDC pl#10 [V] wire#79
+83, 4, 80          !TDC ROC#2 Sl#15 Ch#83 HDC pl#10 [V] wire#80
+84, 4, 81          !TDC ROC#2 Sl#15 Ch#84 HDC pl#10 [V] wire#81
+85, 4, 82          !TDC ROC#2 Sl#15 Ch#85 HDC pl#10 [V] wire#82
+86, 4, 83          !TDC ROC#2 Sl#15 Ch#86 HDC pl#10 [V] wire#83
+87, 4, 84          !TDC ROC#2 Sl#15 Ch#87 HDC pl#10 [V] wire#84
+88, 4, 85          !TDC ROC#2 Sl#15 Ch#88 HDC pl#10 [V] wire#85
+89, 4, 86          !TDC ROC#2 Sl#15 Ch#89 HDC pl#10 [V] wire#86
+90, 4, 87          !TDC ROC#2 Sl#15 Ch#90 HDC pl#10 [V] wire#87
+91, 4, 88          !TDC ROC#2 Sl#15 Ch#91 HDC pl#10 [V] wire#88
+92, 4, 89          !TDC ROC#2 Sl#15 Ch#92 HDC pl#10 [V] wire#89
+93, 4, 90          !TDC ROC#2 Sl#15 Ch#93 HDC pl#10 [V] wire#90
+94, 4, 91          !TDC ROC#2 Sl#15 Ch#94 HDC pl#10 [V] wire#91
+! 95 !TDC ROC#2 Sl#15 Ch#95 unused
+Slot= 21
+0, 4, 92           !TDC ROC#2 Sl#17 Ch#0 HDC pl#10 [V] wire#92
+1, 4, 93           !TDC ROC#2 Sl#17 Ch#1 HDC pl#10 [V] wire#93
+2, 4, 94           !TDC ROC#2 Sl#17 Ch#2 HDC pl#10 [V] wire#94
+3, 4, 95           !TDC ROC#2 Sl#17 Ch#3 HDC pl#10 [V] wire#95
+4, 4, 96           !TDC ROC#2 Sl#17 Ch#4 HDC pl#10 [V] wire#96
+5, 4, 97           !TDC ROC#2 Sl#17 Ch#5 HDC pl#10 [V] wire#97
+6, 4, 98           !TDC ROC#2 Sl#17 Ch#6 HDC pl#10 [V] wire#98
+7, 4, 99           !TDC ROC#2 Sl#17 Ch#7 HDC pl#10 [V] wire#99
+8, 4, 100          !TDC ROC#2 Sl#17 Ch#8 HDC pl#10 [V] wire#100
+9, 4, 101          !TDC ROC#2 Sl#17 Ch#9 HDC pl#10 [V] wire#101
+10, 4, 102         !TDC ROC#2 Sl#17 Ch#10 HDC pl#10 [V] wire#102
+11, 4, 103         !TDC ROC#2 Sl#17 Ch#11 HDC pl#10 [V] wire#103
+12, 4, 104         !TDC ROC#2 Sl#17 Ch#12 HDC pl#10 [V] wire#104
+13, 4, 105         !TDC ROC#2 Sl#17 Ch#13 HDC pl#10 [V] wire#105
+14, 4, 106         !TDC ROC#2 Sl#17 Ch#14 HDC pl#10 [V] wire#106
+15, 4, 107         !TDC ROC#2 Sl#17 Ch#15 HDC pl#10 [V] wire#107
+16, 5, 1           !TDC ROC#2 Sl#17 Ch#16 HDC pl#11 [Y2] wire#1
+17, 5, 2           !TDC ROC#2 Sl#17 Ch#17 HDC pl#11 [Y2] wire#2
+18, 5, 3           !TDC ROC#2 Sl#17 Ch#18 HDC pl#11 [Y2] wire#3
+19, 5, 4           !TDC ROC#2 Sl#17 Ch#19 HDC pl#11 [Y2] wire#4
+20, 5, 5           !TDC ROC#2 Sl#17 Ch#20 HDC pl#11 [Y2] wire#5
+21, 5, 6           !TDC ROC#2 Sl#17 Ch#21 HDC pl#11 [Y2] wire#6
+22, 5, 7           !TDC ROC#2 Sl#17 Ch#22 HDC pl#11 [Y2] wire#7
+23, 5, 8           !TDC ROC#2 Sl#17 Ch#23 HDC pl#11 [Y2] wire#8
+24, 5, 9           !TDC ROC#2 Sl#17 Ch#24 HDC pl#11 [Y2] wire#9
+25, 5, 10          !TDC ROC#2 Sl#17 Ch#25 HDC pl#11 [Y2] wire#10
+26, 5, 11          !TDC ROC#2 Sl#17 Ch#26 HDC pl#11 [Y2] wire#11
+27, 5, 12          !TDC ROC#2 Sl#17 Ch#27 HDC pl#11 [Y2] wire#12
+28, 5, 13          !TDC ROC#2 Sl#17 Ch#28 HDC pl#11 [Y2] wire#13
+! 29 !TDC ROC#2 Sl#17 Ch#29 unused
+! 30 !TDC ROC#2 Sl#17 Ch#30 unused
+! 31 !TDC ROC#2 Sl#17 Ch#31 unused
+32, 5, 14          !TDC ROC#2 Sl#17 Ch#32 HDC pl#11 [Y2] wire#14
+33, 5, 15          !TDC ROC#2 Sl#17 Ch#33 HDC pl#11 [Y2] wire#15
+34, 5, 16          !TDC ROC#2 Sl#17 Ch#34 HDC pl#11 [Y2] wire#16
+35, 5, 17          !TDC ROC#2 Sl#17 Ch#35 HDC pl#11 [Y2] wire#17
+36, 5, 18          !TDC ROC#2 Sl#17 Ch#36 HDC pl#11 [Y2] wire#18
+37, 5, 19          !TDC ROC#2 Sl#17 Ch#37 HDC pl#11 [Y2] wire#19
+38, 5, 20          !TDC ROC#2 Sl#17 Ch#38 HDC pl#11 [Y2] wire#20
+39, 5, 21          !TDC ROC#2 Sl#17 Ch#39 HDC pl#11 [Y2] wire#21
+40, 5, 22          !TDC ROC#2 Sl#17 Ch#40 HDC pl#11 [Y2] wire#22
+41, 5, 23          !TDC ROC#2 Sl#17 Ch#41 HDC pl#11 [Y2] wire#23
+42, 5, 24          !TDC ROC#2 Sl#17 Ch#42 HDC pl#11 [Y2] wire#24
+43, 5, 25          !TDC ROC#2 Sl#17 Ch#43 HDC pl#11 [Y2] wire#25
+44, 5, 26          !TDC ROC#2 Sl#17 Ch#44 HDC pl#11 [Y2] wire#26
+! 45 !TDC ROC#2 Sl#17 Ch#45 unused
+! 46 !TDC ROC#2 Sl#17 Ch#46 unused
+! 47 !TDC ROC#2 Sl#17 Ch#47 unused
+48, 5, 27          !TDC ROC#2 Sl#17 Ch#48 HDC pl#11 [Y2] wire#27
+49, 5, 28          !TDC ROC#2 Sl#17 Ch#49 HDC pl#11 [Y2] wire#28
+50, 5, 29          !TDC ROC#2 Sl#17 Ch#50 HDC pl#11 [Y2] wire#29
+51, 5, 30          !TDC ROC#2 Sl#17 Ch#51 HDC pl#11 [Y2] wire#30
+52, 5, 31          !TDC ROC#2 Sl#17 Ch#52 HDC pl#11 [Y2] wire#31
+53, 5, 32          !TDC ROC#2 Sl#17 Ch#53 HDC pl#11 [Y2] wire#32
+54, 5, 33          !TDC ROC#2 Sl#17 Ch#54 HDC pl#11 [Y2] wire#33
+55, 5, 34          !TDC ROC#2 Sl#17 Ch#55 HDC pl#11 [Y2] wire#34
+56, 5, 35          !TDC ROC#2 Sl#17 Ch#56 HDC pl#11 [Y2] wire#35
+57, 5, 36          !TDC ROC#2 Sl#17 Ch#57 HDC pl#11 [Y2] wire#36
+58, 5, 37          !TDC ROC#2 Sl#17 Ch#58 HDC pl#11 [Y2] wire#37
+59, 5, 38          !TDC ROC#2 Sl#17 Ch#59 HDC pl#11 [Y2] wire#38
+60, 5, 39          !TDC ROC#2 Sl#17 Ch#60 HDC pl#11 [Y2] wire#39
+! 61 !TDC ROC#2 Sl#17 Ch#61 unused
+! 62 !TDC ROC#2 Sl#17 Ch#62 unused
+! 63 !TDC ROC#2 Sl#17 Ch#63 unused
+! 64 !TDC ROC#2 Sl#17 Ch#64 unused?????   JV 11/11/97
+65, 5, 40          !TDC ROC#2 Sl#17 Ch#64 HDC pl#11 [Y2] wire#40
+66, 5, 41          !TDC ROC#2 Sl#17 Ch#65 HDC pl#11 [Y2] wire#41
+67, 5, 42          !TDC ROC#2 Sl#17 Ch#66 HDC pl#11 [Y2] wire#42
+68, 5, 43          !TDC ROC#2 Sl#17 Ch#67 HDC pl#11 [Y2] wire#43
+69, 5, 44          !TDC ROC#2 Sl#17 Ch#68 HDC pl#11 [Y2] wire#44
+70, 5, 45          !TDC ROC#2 Sl#17 Ch#69 HDC pl#11 [Y2] wire#45
+71, 5, 46          !TDC ROC#2 Sl#17 Ch#70 HDC pl#11 [Y2] wire#46
+72, 5, 47          !TDC ROC#2 Sl#17 Ch#71 HDC pl#11 [Y2] wire#47
+73, 5, 48          !TDC ROC#2 Sl#17 Ch#72 HDC pl#11 [Y2] wire#48
+74, 5, 49          !TDC ROC#2 Sl#17 Ch#73 HDC pl#11 [Y2] wire#49
+75, 5, 50          !TDC ROC#2 Sl#17 Ch#74 HDC pl#11 [Y2] wire#50
+76, 5, 51          !TDC ROC#2 Sl#17 Ch#75 HDC pl#11 [Y2] wire#51
+77, 5, 52          !TDC ROC#2 Sl#17 Ch#76 HDC pl#11 [Y2] wire#52
+! 77 !TDC ROC#2 Sl#17 Ch#77 unused
+! 78 !TDC ROC#2 Sl#17 Ch#78 unused
+! 79 !TDC ROC#2 Sl#17 Ch#79 unused
+80, 6, 1           !TDC ROC#2 Sl#17 Ch#80 HDC pl#12 [X2] wire#1
+81, 6, 2           !TDC ROC#2 Sl#17 Ch#81 HDC pl#12 [X2] wire#2
+82, 6, 3           !TDC ROC#2 Sl#17 Ch#82 HDC pl#12 [X2] wire#3
+83, 6, 4           !TDC ROC#2 Sl#17 Ch#83 HDC pl#12 [X2] wire#4
+84, 6, 5           !TDC ROC#2 Sl#17 Ch#84 HDC pl#12 [X2] wire#5
+85, 6, 6           !TDC ROC#2 Sl#17 Ch#85 HDC pl#12 [X2] wire#6
+86, 6, 7           !TDC ROC#2 Sl#17 Ch#86 HDC pl#12 [X2] wire#7
+87, 6, 8           !TDC ROC#2 Sl#17 Ch#87 HDC pl#12 [X2] wire#8
+88, 6, 9           !TDC ROC#2 Sl#17 Ch#88 HDC pl#12 [X2] wire#9
+89, 6, 10          !TDC ROC#2 Sl#17 Ch#89 HDC pl#12 [X2] wire#10
+90, 6, 11          !TDC ROC#2 Sl#17 Ch#90 HDC pl#12 [X2] wire#11
+91, 6, 12          !TDC ROC#2 Sl#17 Ch#91 HDC pl#12 [X2] wire#12
+92, 6, 13          !TDC ROC#2 Sl#17 Ch#92 HDC pl#12 [X2] wire#13
+93, 6, 14          !TDC ROC#2 Sl#17 Ch#93 HDC pl#12 [X2] wire#14
+94, 6, 15          !TDC ROC#2 Sl#17 Ch#94 HDC pl#12 [X2] wire#15
+95, 6, 16          !TDC ROC#2 Sl#17 Ch#95 HDC pl#12 [X2] wire#16
+Slot= 22
+0, 6, 17           !TDC ROC#2 Sl#18 Ch#0 HDC pl#12 [X2] wire#17
+1, 6, 18           !TDC ROC#2 Sl#18 Ch#1 HDC pl#12 [X2] wire#18
+2, 6, 19           !TDC ROC#2 Sl#18 Ch#2 HDC pl#12 [X2] wire#19
+3, 6, 20           !TDC ROC#2 Sl#18 Ch#3 HDC pl#12 [X2] wire#20
+4, 6, 21           !TDC ROC#2 Sl#18 Ch#4 HDC pl#12 [X2] wire#21
+5, 6, 22           !TDC ROC#2 Sl#18 Ch#5 HDC pl#12 [X2] wire#22
+6, 6, 23           !TDC ROC#2 Sl#18 Ch#6 HDC pl#12 [X2] wire#23
+7, 6, 24           !TDC ROC#2 Sl#18 Ch#7 HDC pl#12 [X2] wire#24
+8, 6, 25           !TDC ROC#2 Sl#18 Ch#8 HDC pl#12 [X2] wire#25
+9, 6, 26           !TDC ROC#2 Sl#18 Ch#9 HDC pl#12 [X2] wire#26
+10, 6, 27          !TDC ROC#2 Sl#18 Ch#10 HDC pl#12 [X2] wire#27
+11, 6, 28          !TDC ROC#2 Sl#18 Ch#11 HDC pl#12 [X2] wire#28
+12, 6, 29          !TDC ROC#2 Sl#18 Ch#12 HDC pl#12 [X2] wire#29
+13, 6, 30          !TDC ROC#2 Sl#18 Ch#13 HDC pl#12 [X2] wire#30
+14, 6, 31          !TDC ROC#2 Sl#18 Ch#14 HDC pl#12 [X2] wire#31
+15, 6, 32          !TDC ROC#2 Sl#18 Ch#15 HDC pl#12 [X2] wire#32
+16, 6, 33          !TDC ROC#2 Sl#18 Ch#16 HDC pl#12 [X2] wire#33
+17, 6, 34          !TDC ROC#2 Sl#18 Ch#17 HDC pl#12 [X2] wire#34
+18, 6, 35          !TDC ROC#2 Sl#18 Ch#18 HDC pl#12 [X2] wire#35
+19, 6, 36          !TDC ROC#2 Sl#18 Ch#19 HDC pl#12 [X2] wire#36
+20, 6, 37          !TDC ROC#2 Sl#18 Ch#20 HDC pl#12 [X2] wire#37
+21, 6, 38          !TDC ROC#2 Sl#18 Ch#21 HDC pl#12 [X2] wire#38
+22, 6, 39          !TDC ROC#2 Sl#18 Ch#22 HDC pl#12 [X2] wire#39
+23, 6, 40          !TDC ROC#2 Sl#18 Ch#23 HDC pl#12 [X2] wire#40
+24, 6, 41          !TDC ROC#2 Sl#18 Ch#24 HDC pl#12 [X2] wire#41
+25, 6, 42          !TDC ROC#2 Sl#18 Ch#25 HDC pl#12 [X2] wire#42
+26, 6, 43          !TDC ROC#2 Sl#18 Ch#26 HDC pl#12 [X2] wire#43
+27, 6, 44          !TDC ROC#2 Sl#18 Ch#27 HDC pl#12 [X2] wire#44
+28, 6, 45          !TDC ROC#2 Sl#18 Ch#28 HDC pl#12 [X2] wire#45
+29, 6, 46          !TDC ROC#2 Sl#18 Ch#29 HDC pl#12 [X2] wire#46
+30, 6, 47          !TDC ROC#2 Sl#18 Ch#30 HDC pl#12 [X2] wire#47
+31, 6, 48          !TDC ROC#2 Sl#18 Ch#31 HDC pl#12 [X2] wire#48
+32, 6, 49          !TDC ROC#2 Sl#18 Ch#32 HDC pl#12 [X2] wire#49
+33, 6, 50          !TDC ROC#2 Sl#18 Ch#33 HDC pl#12 [X2] wire#50
+34, 6, 51          !TDC ROC#2 Sl#18 Ch#34 HDC pl#12 [X2] wire#51
+35, 6, 52          !TDC ROC#2 Sl#18 Ch#35 HDC pl#12 [X2] wire#52
+36, 6, 53          !TDC ROC#2 Sl#18 Ch#36 HDC pl#12 [X2] wire#53
+37, 6, 54          !TDC ROC#2 Sl#18 Ch#37 HDC pl#12 [X2] wire#54
+38, 6, 55          !TDC ROC#2 Sl#18 Ch#38 HDC pl#12 [X2] wire#55
+39, 6, 56          !TDC ROC#2 Sl#18 Ch#39 HDC pl#12 [X2] wire#56
+40, 6, 57          !TDC ROC#2 Sl#18 Ch#40 HDC pl#12 [X2] wire#57
+41, 6, 58          !TDC ROC#2 Sl#18 Ch#41 HDC pl#12 [X2] wire#58
+42, 6, 59          !TDC ROC#2 Sl#18 Ch#42 HDC pl#12 [X2] wire#59
+43, 6, 60          !TDC ROC#2 Sl#18 Ch#43 HDC pl#12 [X2] wire#60
+44, 6, 61          !TDC ROC#2 Sl#18 Ch#44 HDC pl#12 [X2] wire#61
+45, 6, 62          !TDC ROC#2 Sl#18 Ch#45 HDC pl#12 [X2] wire#62
+46, 6, 63          !TDC ROC#2 Sl#18 Ch#46 HDC pl#12 [X2] wire#63
+47, 6, 64          !TDC ROC#2 Sl#18 Ch#47 HDC pl#12 [X2] wire#64
+48, 6, 65          !TDC ROC#2 Sl#18 Ch#48 HDC pl#12 [X2] wire#65
+49, 6, 66          !TDC ROC#2 Sl#18 Ch#49 HDC pl#12 [X2] wire#66
+50, 6, 67          !TDC ROC#2 Sl#18 Ch#50 HDC pl#12 [X2] wire#67
+51, 6, 68          !TDC ROC#2 Sl#18 Ch#51 HDC pl#12 [X2] wire#68
+52, 6, 69          !TDC ROC#2 Sl#18 Ch#52 HDC pl#12 [X2] wire#69
+53, 6, 70          !TDC ROC#2 Sl#18 Ch#53 HDC pl#12 [X2] wire#70
+54, 6, 71          !TDC ROC#2 Sl#18 Ch#54 HDC pl#12 [X2] wire#71
+55, 6, 72          !TDC ROC#2 Sl#18 Ch#55 HDC pl#12 [X2] wire#72
+56, 6, 73          !TDC ROC#2 Sl#18 Ch#56 HDC pl#12 [X2] wire#73
+57, 6, 74          !TDC ROC#2 Sl#18 Ch#57 HDC pl#12 [X2] wire#74
+58, 6, 75          !TDC ROC#2 Sl#18 Ch#58 HDC pl#12 [X2] wire#75
+59, 6, 76          !TDC ROC#2 Sl#18 Ch#59 HDC pl#12 [X2] wire#76
+60, 6, 77          !TDC ROC#2 Sl#18 Ch#60 HDC pl#12 [X2] wire#77
+61, 6, 78          !TDC ROC#2 Sl#18 Ch#61 HDC pl#12 [X2] wire#78
+62, 6, 79          !TDC ROC#2 Sl#18 Ch#62 HDC pl#12 [X2] wire#79
+63, 6, 80          !TDC ROC#2 Sl#18 Ch#63 HDC pl#12 [X2] wire#80
+64, 6, 81          !TDC ROC#2 Sl#18 Ch#64 HDC pl#12 [X2] wire#81
+65, 6, 82          !TDC ROC#2 Sl#18 Ch#65 HDC pl#12 [X2] wire#82
+66, 6, 83          !TDC ROC#2 Sl#18 Ch#66 HDC pl#12 [X2] wire#83
+67, 6, 84          !TDC ROC#2 Sl#18 Ch#67 HDC pl#12 [X2] wire#84
+68, 6, 85          !TDC ROC#2 Sl#18 Ch#68 HDC pl#12 [X2] wire#85
+69, 6, 86          !TDC ROC#2 Sl#18 Ch#69 HDC pl#12 [X2] wire#86
+70, 6, 87          !TDC ROC#2 Sl#18 Ch#70 HDC pl#12 [X2] wire#87
+71, 6, 88          !TDC ROC#2 Sl#18 Ch#71 HDC pl#12 [X2] wire#88
+72, 6, 89          !TDC ROC#2 Sl#18 Ch#72 HDC pl#12 [X2] wire#89
+73, 6, 90          !TDC ROC#2 Sl#18 Ch#73 HDC pl#12 [X2] wire#90
+74, 6, 91          !TDC ROC#2 Sl#18 Ch#74 HDC pl#12 [X2] wire#91
+75, 6, 92          !TDC ROC#2 Sl#18 Ch#75 HDC pl#12 [X2] wire#92
+76, 6, 93          !TDC ROC#2 Sl#18 Ch#76 HDC pl#12 [X2] wire#93
+77, 6, 94          !TDC ROC#2 Sl#18 Ch#77 HDC pl#12 [X2] wire#94
+78, 6, 95          !TDC ROC#2 Sl#18 Ch#78 HDC pl#12 [X2] wire#95
+79, 6, 96          !TDC ROC#2 Sl#18 Ch#79 HDC pl#12 [X2] wire#96
+80, 6, 97          !TDC ROC#2 Sl#18 Ch#80 HDC pl#12 [X2] wire#97
+81, 6, 98          !TDC ROC#2 Sl#18 Ch#81 HDC pl#12 [X2] wire#98
+82, 6, 99          !TDC ROC#2 Sl#18 Ch#82 HDC pl#12 [X2] wire#99
+83, 6, 100         !TDC ROC#2 Sl#18 Ch#83 HDC pl#12 [X2] wire#100
+84, 6, 101         !TDC ROC#2 Sl#18 Ch#84 HDC pl#12 [X2] wire#101
+85, 6, 102         !TDC ROC#2 Sl#18 Ch#85 HDC pl#12 [X2] wire#102
+86, 6, 103         !TDC ROC#2 Sl#18 Ch#86 HDC pl#12 [X2] wire#103
+87, 6, 104         !TDC ROC#2 Sl#18 Ch#87 HDC pl#12 [X2] wire#104
+88, 6, 105         !TDC ROC#2 Sl#18 Ch#88 HDC pl#12 [X2] wire#105
+89, 6, 106         !TDC ROC#2 Sl#18 Ch#89 HDC pl#12 [X2] wire#106
+90, 6, 107         !TDC ROC#2 Sl#18 Ch#90 HDC pl#12 [X2] wire#107
+91, 6, 108         !TDC ROC#2 Sl#18 Ch#91 HDC pl#12 [X2] wire#108
+92, 6, 109         !TDC ROC#2 Sl#18 Ch#92 HDC pl#12 [X2] wire#109
+93, 6, 110         !TDC ROC#2 Sl#18 Ch#93 HDC pl#12 [X2] wire#110
+94, 6, 111         !TDC ROC#2 Sl#18 Ch#94 HDC pl#12 [X2] wire#111
+95, 6, 112         !TDC ROC#2 Sl#18 Ch#95 HDC pl#12 [X2] wire#112
+!
+!
+!   HMS upstairs (HSCIN+HCAL+HCER) map     K.B.Beard 13-Jun-1994
+!
+
+! ^^^^^^^^^^^^^^^^^^^^^ Wire chambers end here ^^^^^^^^^^^^^^^^^^^^^^
+!=============================================================================
+    ROC= 1               !upstairs HMS crate
+!
+    detector= 2 !HSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 23 ! TDC  
+  0, 1, 1, 2 !TDC ROC#1 Sl#23 Ch#0 HSCIN pl#1 [X1] id#1 sig#2 [TDC+] (0 X1P-01)
+  1, 1, 3, 2 !TDC ROC#1 Sl#23 Ch#1 HSCIN pl#1 [X1] id#3 sig#2 [TDC+] (1 X1P-03)
+  2, 1, 5, 2 !TDC ROC#1 Sl#23 Ch#2 HSCIN pl#1 [X1] id#5 sig#2 [TDC+] (2 X1P-05)
+  3, 1, 7, 2 !TDC ROC#1 Sl#23 Ch#3 HSCIN pl#1 [X1] id#7 sig#2 [TDC+] (3 X1P-07)
+  4, 1, 9, 2 !TDC ROC#1 Sl#23 Ch#4 HSCIN pl#1 [X1] id#9 sig#2 [TDC+] (4 X1P-09)
+  5, 1, 11, 2 !TDC ROC#1 Sl#23 Ch#5 HSCIN pl#1 [X1] id#11 sig#2 [TDC+] (5 X1P-11)
+  6, 1, 13, 2 !TDC ROC#1 Sl#23 Ch#6 HSCIN pl#1 [X1] id#13 sig#2 [TDC+] (6 X1P-13)
+  7, 1, 15, 2 !TDC ROC#1 Sl#23 Ch#7 HSCIN pl#1 [X1] id#15 sig#2 [TDC+] (7 X1P-15)
+  8, 1, 2, 2 !TDC ROC#1 Sl#23 Ch#8 HSCIN pl#1 [X1] id#2 sig#2 [TDC+] (8 X1P-02)
+  9, 1, 4, 2 !TDC ROC#1 Sl#23 Ch#9 HSCIN pl#1 [X1] id#4 sig#2 [TDC+] (9 X1P-04)
+  10, 1, 6, 2 !TDC ROC#1 Sl#23 Ch#10 HSCIN pl#1 [X1] id#6 sig#2 [TDC+] (10 X1P-06)
+  11, 1, 8, 2 !TDC ROC#1 Sl#23 Ch#11 HSCIN pl#1 [X1] id#8 sig#2 [TDC+] (11 X1P-08)
+  12, 1, 10, 2 !TDC ROC#1 Sl#23 Ch#12 HSCIN pl#1 [X1] id#10 sig#2 [TDC+] (12 X1P-10)
+  13, 1, 12, 2 !TDC ROC#1 Sl#23 Ch#13 HSCIN pl#1 [X1] id#12 sig#2 [TDC+] (13 X1P-12)
+  14, 1, 14, 2 !TDC ROC#1 Sl#23 Ch#14 HSCIN pl#1 [X1] id#14 sig#2 [TDC+] (14 X1P-14)
+  15, 1, 16, 2 !TDC ROC#1 Sl#23 Ch#15 HSCIN pl#1 [X1] id#16 sig#2 [TDC+] (15 X1P-16)
+  16, 1, 1, 3 !TDC ROC#1 Sl#23 Ch#16 HSCIN pl#1 [X1] id#1 sig#3 [TDC-] (16 X1N-01)
+  17, 1, 3, 3 !TDC ROC#1 Sl#23 Ch#17 HSCIN pl#1 [X1] id#3 sig#3 [TDC-] (17 X1N-03)
+  18, 1, 5, 3 !TDC ROC#1 Sl#23 Ch#18 HSCIN pl#1 [X1] id#5 sig#3 [TDC-] (18 X1N-05)
+  19, 1, 7, 3 !TDC ROC#1 Sl#23 Ch#19 HSCIN pl#1 [X1] id#7 sig#3 [TDC-] (19 X1N-07)
+  20, 1, 9, 3 !TDC ROC#1 Sl#23 Ch#20 HSCIN pl#1 [X1] id#9 sig#3 [TDC-] (20 X1N-09)
+  21, 1, 11, 3 !TDC ROC#1 Sl#23 Ch#21 HSCIN pl#1 [X1] id#11 sig#3 [TDC-] (21 X1N-11)
+  22, 1, 13, 3 !TDC ROC#1 Sl#23 Ch#22 HSCIN pl#1 [X1] id#13 sig#3 [TDC-] (22 X1N-13)
+  23, 1, 15, 3 !TDC ROC#1 Sl#23 Ch#23 HSCIN pl#1 [X1] id#15 sig#3 [TDC-] (23 X1N-15)
+  24, 1, 2, 3 !TDC ROC#1 Sl#23 Ch#24 HSCIN pl#1 [X1] id#2 sig#3 [TDC-] (24 X1N-02)
+  25, 1, 4, 3 !TDC ROC#1 Sl#23 Ch#25 HSCIN pl#1 [X1] id#4 sig#3 [TDC-] (25 X1N-04)
+  26, 1, 6, 3 !TDC ROC#1 Sl#23 Ch#26 HSCIN pl#1 [X1] id#6 sig#3 [TDC-] (26 X1N-06)
+  27, 1, 8, 3 !TDC ROC#1 Sl#23 Ch#27 HSCIN pl#1 [X1] id#8 sig#3 [TDC-] (27 X1N-08)
+  28, 1, 10, 3 !TDC ROC#1 Sl#23 Ch#28 HSCIN pl#1 [X1] id#10 sig#3 [TDC-] (28 X1N-10)
+  29, 1, 12, 3 !TDC ROC#1 Sl#23 Ch#29 HSCIN pl#1 [X1] id#12 sig#3 [TDC-] (29 X1N-12)
+  30, 1, 14, 3 !TDC ROC#1 Sl#23 Ch#30 HSCIN pl#1 [X1] id#14 sig#3 [TDC-] (30 X1N-14)
+  31, 1, 16, 3 !TDC ROC#1 Sl#23 Ch#31 HSCIN pl#1 [X1] id#16 sig#3 [TDC-] (31 X1N-16)
+  32, 2, 1, 2 !TDC ROC#1 Sl#23 Ch#32 HSCIN pl#2 [Y1] id#1 sig#2 [TDC+] (32 Y1P-01)
+  33, 2, 3, 2 !TDC ROC#1 Sl#23 Ch#33 HSCIN pl#2 [Y1] id#3 sig#2 [TDC+] (33 Y1P-03)
+  34, 2, 5, 2 !TDC ROC#1 Sl#23 Ch#34 HSCIN pl#2 [Y1] id#5 sig#2 [TDC+] (34 Y1P-05)
+  35, 2, 7, 2 !TDC ROC#1 Sl#23 Ch#35 HSCIN pl#2 [Y1] id#7 sig#2 [TDC+] (35 Y1P-07)
+  36, 2, 9, 2 !TDC ROC#1 Sl#23 Ch#36 HSCIN pl#2 [Y1] id#9 sig#2 [TDC+] (36 Y1P-09)
+!  37 !TDC ROC#1 Sl#23 Ch#37 unused
+!  38 !TDC ROC#1 Sl#23 Ch#38 unused
+!  39 !TDC ROC#1 Sl#23 Ch#39 unused
+!!!  40, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+  41, 2, 4, 2 !TDC ROC#1 Sl#23 Ch#41 HSCIN pl#2 [Y1] id#4 sig#2 [TDC+] (41 Y1P-04)
+  42, 2, 6, 2 !TDC ROC#1 Sl#23 Ch#42 HSCIN pl#2 [Y1] id#6 sig#2 [TDC+] (42 Y1P-06)
+  43, 2, 8, 2 !TDC ROC#1 Sl#23 Ch#43 HSCIN pl#2 [Y1] id#8 sig#2 [TDC+] (43 Y1P-08)
+  44, 2, 10, 2 !TDC ROC#1 Sl#23 Ch#44 HSCIN pl#2 [Y1] id#10 sig#2 [TDC+] (44 Y1P-10)
+  45, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#45 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (45 Y1P-02)
+!   h1y2+ was moved from channel 47 to 45 on 1/29/1999
+!  46 !TDC ROC#1 Sl#23 Ch#46 unused
+!  47, 2, 2, 2 !TDC ROC#1 Sl#23 Ch#40 HSCIN pl#2 [Y1] id#2 sig#2 [TDC+] (40 Y1P-02)
+!   h1y2+ was moved from channel 40 to 47 at run 6168
+  48, 2, 1, 3 !TDC ROC#1 Sl#23 Ch#48 HSCIN pl#2 [Y1] id#1 sig#3 [TDC-] (48 Y1N-01)
+  49, 2, 3, 3 !TDC ROC#1 Sl#23 Ch#49 HSCIN pl#2 [Y1] id#3 sig#3 [TDC-] (49 Y1N-03)
+  50, 2, 5, 3 !TDC ROC#1 Sl#23 Ch#50 HSCIN pl#2 [Y1] id#5 sig#3 [TDC-] (50 Y1N-05)
+  51, 2, 7, 3 !TDC ROC#1 Sl#23 Ch#51 HSCIN pl#2 [Y1] id#7 sig#3 [TDC-] (51 Y1N-07)
+  52, 2, 9, 3 !TDC ROC#1 Sl#23 Ch#52 HSCIN pl#2 [Y1] id#9 sig#3 [TDC-] (52 Y1N-09)
+!  53 !TDC ROC#1 Sl#23 Ch#53 unused
+!  54 !TDC ROC#1 Sl#23 Ch#54 unused
+!  55 !TDC ROC#1 Sl#23 Ch#55 unused
+  56, 2, 2, 3 !TDC ROC#1 Sl#23 Ch#56 HSCIN pl#2 [Y1] id#2 sig#3 [TDC-] (56 Y1N-02)
+  57, 2, 4, 3 !TDC ROC#1 Sl#23 Ch#57 HSCIN pl#2 [Y1] id#4 sig#3 [TDC-] (57 Y1N-04)
+  58, 2, 6, 3 !TDC ROC#1 Sl#23 Ch#58 HSCIN pl#2 [Y1] id#6 sig#3 [TDC-] (58 Y1N-06)
+  59, 2, 8, 3 !TDC ROC#1 Sl#23 Ch#59 HSCIN pl#2 [Y1] id#8 sig#3 [TDC-] (59 Y1N-08)
+!  60, 2, 10, 3 !TDC ROC#1 Sl#23 Ch#60 HSCIN pl#2 [Y1] id#10 sig#3 [TDC-] (60 Y1N-10)
+  61 , 2, 10, 3 !TDC ROC#1 Sl#23 Ch#61 swap location for h1y10-
+!  62 !TDC ROC#1 Sl#23 Ch#62 unused
+!  63 !TDC ROC#1 Sl#23 Ch#63 unused
+!
+ Slot= 21 ! TDC  
+! 
+  0, 3, 1, 2 !TDC ROC#1 Sl#21 Ch#0 HSCIN pl#3 [X2] id#1 sig#2 [TDC+] (0 X2P-01)
+  1, 3, 3, 2 !TDC ROC#1 Sl#21 Ch#1 HSCIN pl#3 [X2] id#3 sig#2 [TDC+] (1 X2P-03)
+  2, 3, 5, 2 !TDC ROC#1 Sl#21 Ch#2 HSCIN pl#3 [X2] id#5 sig#2 [TDC+] (2 X2P-05)
+  3, 3, 7, 2 !TDC ROC#1 Sl#21 Ch#3 HSCIN pl#3 [X2] id#7 sig#2 [TDC+] (3 X2P-07)
+  4, 3, 9, 2 !TDC ROC#1 Sl#21 Ch#4 HSCIN pl#3 [X2] id#9 sig#2 [TDC+] (4 X2P-09)
+  5, 3, 11, 2 !TDC ROC#1 Sl#21 Ch#5 HSCIN pl#3 [X2] id#11 sig#2 [TDC+] (5 X2P-11)
+  6, 3, 13, 2 !TDC ROC#1 Sl#21 Ch#6 HSCIN pl#3 [X2] id#13 sig#2 [TDC+] (6 X2P-13)
+  7, 3, 15, 2 !TDC ROC#1 Sl#21 Ch#7 HSCIN pl#3 [X2] id#15 sig#2 [TDC+] (7 X2P-15)
+!
+  8, 3, 2, 2 !TDC ROC#1 Sl#21 Ch#8 HSCIN pl#3 [X2] id#2 sig#2 [TDC+] (8 X2P-02)
+  9, 3, 4, 2 !TDC ROC#1 Sl#21 Ch#9 HSCIN pl#3 [X2] id#4 sig#2 [TDC+] (9 X2P-04)
+  10, 3, 6, 2 !TDC ROC#1 Sl#21 Ch#10 HSCIN pl#3 [X2] id#6 sig#2 [TDC+] (10 X2P-06)
+  11, 3, 8, 2 !TDC ROC#1 Sl#21 Ch#11 HSCIN pl#3 [X2] id#8 sig#2 [TDC+] (11 X2P-08)
+  12, 3, 10, 2 !TDC ROC#1 Sl#21 Ch#12 HSCIN pl#3 [X2] id#10 sig#2 [TDC+] (12 X2P-10)
+  13, 3, 12, 2 !TDC ROC#1 Sl#21 Ch#13 HSCIN pl#3 [X2] id#12 sig#2 [TDC+] (13 X2P-12)
+  14, 3, 14, 2 !TDC ROC#1 Sl#21 Ch#14 HSCIN pl#3 [X2] id#14 sig#2 [TDC+] (14 X2P-14)
+  15, 3, 16, 2 !TDC ROC#1 Sl#21 Ch#15 HSCIN pl#3 [X2] id#16 sig#2 [TDC+] (15 X2P-16)
+!
+! swapped s2x- with s2y+
+!
+  16, 4, 1, 2 !TDC ROC#1 Sl#21 Ch#32 HSCIN pl#4 [Y2] id#1 sig#2 [TDC+] (32 Y2P-01)
+  17, 4, 3, 2 !TDC ROC#1 Sl#21 Ch#33 HSCIN pl#4 [Y2] id#3 sig#2 [TDC+] (33 Y2P-03)
+  18, 4, 5, 2 !TDC ROC#1 Sl#21 Ch#34 HSCIN pl#4 [Y2] id#5 sig#2 [TDC+] (34 Y2P-05)
+  19, 4, 7, 2 !TDC ROC#1 Sl#21 Ch#35 HSCIN pl#4 [Y2] id#7 sig#2 [TDC+] (35 Y2P-07)
+  20, 4, 9, 2 !TDC ROC#1 Sl#21 Ch#36 HSCIN pl#4 [Y2] id#9 sig#2 [TDC+] (36 Y2P-09)
+!  21 !TDC ROC#1 Sl#21 Ch#37 unused
+!  22 !TDC ROC#1 Sl#21 Ch#38 unused
+!  23 !TDC ROC#1 Sl#21 Ch#39 unused
+  24, 4, 2, 2 !TDC ROC#1 Sl#21 Ch#40 HSCIN pl#4 [Y2] id#2 sig#2 [TDC+] (40 Y2P-02)
+  25, 4, 4, 2 !TDC ROC#1 Sl#21 Ch#41 HSCIN pl#4 [Y2] id#4 sig#2 [TDC+] (41 Y2P-04)
+  26, 4, 6, 2 !TDC ROC#1 Sl#21 Ch#42 HSCIN pl#4 [Y2] id#6 sig#2 [TDC+] (42 Y2P-06)
+  27, 4, 8, 2 !TDC ROC#1 Sl#21 Ch#43 HSCIN pl#4 [Y2] id#8 sig#2 [TDC+] (43 Y2P-08)
+  28, 4, 10, 2 !TDC ROC#1 Sl#21 Ch#44 HSCIN pl#4 [Y2] id#10 sig#2 [TDC+] (44 Y2P-10)
+!  29 !TDC ROC#1 Sl#21 Ch#45 unused
+!  30 !TDC ROC#1 Sl#21 Ch#46 unused
+!  31 !TDC ROC#1 Sl#21 Ch#47 unused
+!
+  32, 3, 1, 3 !TDC ROC#1 Sl#21 Ch#16 HSCIN pl#3 [X2] id#1 sig#3 [TDC-] (16 X2N-01)
+  33, 3, 3, 3 !TDC ROC#1 Sl#21 Ch#17 HSCIN pl#3 [X2] id#3 sig#3 [TDC-] (17 X2N-03)
+  34, 3, 5, 3 !TDC ROC#1 Sl#21 Ch#18 HSCIN pl#3 [X2] id#5 sig#3 [TDC-] (18 X2N-05)
+  35, 3, 7, 3 !TDC ROC#1 Sl#21 Ch#19 HSCIN pl#3 [X2] id#7 sig#3 [TDC-] (19 X2N-07)
+  36, 3, 9, 3 !TDC ROC#1 Sl#21 Ch#20 HSCIN pl#3 [X2] id#9 sig#3 [TDC-] (20 X2N-09)
+  37, 3, 11, 3 !TDC ROC#1 Sl#21 Ch#21 HSCIN pl#3 [X2] id#11 sig#3 [TDC-] (21 X2N-11)
+  38, 3, 13, 3 !TDC ROC#1 Sl#21 Ch#22 HSCIN pl#3 [X2] id#13 sig#3 [TDC-] (22 X2N-13)
+  39, 3, 15, 3 !TDC ROC#1 Sl#21 Ch#23 HSCIN pl#3 [X2] id#15 sig#3 [TDC-] (23 X2N-15)
+!
+  40, 3, 2, 3 !TDC ROC#1 Sl#21 Ch#24 HSCIN pl#3 [X2] id#2 sig#3 [TDC-] (24 X2N-02)
+  41, 3, 4, 3 !TDC ROC#1 Sl#21 Ch#25 HSCIN pl#3 [X2] id#4 sig#3 [TDC-] (25 X2N-04)
+  42, 3, 6, 3 !TDC ROC#1 Sl#21 Ch#26 HSCIN pl#3 [X2] id#6 sig#3 [TDC-] (26 X2N-06)
+  43, 3, 8, 3 !TDC ROC#1 Sl#21 Ch#27 HSCIN pl#3 [X2] id#8 sig#3 [TDC-] (27 X2N-08)
+  44, 3, 10, 3 !TDC ROC#1 Sl#21 Ch#28 HSCIN pl#3 [X2] id#10 sig#3 [TDC-] (28 X2N-10)
+  45, 3, 12, 3 !TDC ROC#1 Sl#21 Ch#29 HSCIN pl#3 [X2] id#12 sig#3 [TDC-] (29 X2N-12)
+  46, 3, 14, 3 !TDC ROC#1 Sl#21 Ch#30 HSCIN pl#3 [X2] id#14 sig#3 [TDC-] (30 X2N-14)
+  47, 3, 16, 3 !TDC ROC#1 Sl#21 Ch#31 HSCIN pl#3 [X2] id#16 sig#3 [TDC-] (31 X2N-16)
+!
+  48, 4, 1, 3 !TDC ROC#1 Sl#21 Ch#48 HSCIN pl#4 [Y2] id#1 sig#3 [TDC-] (48 Y2N-01)
+  49, 4, 3, 3 !TDC ROC#1 Sl#21 Ch#49 HSCIN pl#4 [Y2] id#3 sig#3 [TDC-] (49 Y2N-03)
+  50, 4, 5, 3 !TDC ROC#1 Sl#21 Ch#50 HSCIN pl#4 [Y2] id#5 sig#3 [TDC-] (50 Y2N-05)
+  51, 4, 7, 3 !TDC ROC#1 Sl#21 Ch#51 HSCIN pl#4 [Y2] id#7 sig#3 [TDC-] (51 Y2N-07)
+  52, 4, 9, 3 !TDC ROC#1 Sl#21 Ch#52 HSCIN pl#4 [Y2] id#9 sig#3 [TDC-] (52 Y2N-09)
+!  53 !TDC ROC#1 Sl#21 Ch#53 unused
+!  54 !TDC ROC#1 Sl#21 Ch#54 unused
+!  55 !TDC ROC#1 Sl#21 Ch#55 unused
+  56, 4, 2, 3 !TDC ROC#1 Sl#21 Ch#56 HSCIN pl#4 [Y2] id#2 sig#3 [TDC-] (56 Y2N-02)
+  57, 4, 4, 3 !TDC ROC#1 Sl#21 Ch#57 HSCIN pl#4 [Y2] id#4 sig#3 [TDC-] (57 Y2N-04)
+  58, 4, 6, 3 !TDC ROC#1 Sl#21 Ch#58 HSCIN pl#4 [Y2] id#6 sig#3 [TDC-] (58 Y2N-06)
+  59, 4, 8, 3 !TDC ROC#1 Sl#21 Ch#59 HSCIN pl#4 [Y2] id#8 sig#3 [TDC-] (59 Y2N-08)
+  60, 4, 10, 3 !TDC ROC#1 Sl#21 Ch#60 HSCIN pl#4 [Y2] id#10 sig#3 [TDC-] (60 Y2N-10)
+!  61 !TDC ROC#1 Sl#21 Ch#61 unused
+!  62 !TDC ROC#1 Sl#21 Ch#62 unused
+!  63 !TDC ROC#1 Sl#21 Ch#63 unused
+!
+!!!======================================================================
+    detector= 5 !HMISC
+
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 19 ! TDC  
+
+0, 1, 1, 0  ! 0 !TDC ROC#1 Sl#19 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#1 Sl#19 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#1 Sl#19 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#1 Sl#19 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#1 Sl#19 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#1 Sl#19 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#1 Sl#19 Ch#6 empty
+7, 1, 8, 0  ! 7 !TDC ROC#1 Sl#19 Ch#7 unused
+8, 1, 9, 0  ! 8 !TDC ROC#1 Sl#19 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#1 Sl#19 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#1 Sl#19 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#1 Sl#19 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#1 Sl#19 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#1 Sl#19 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#1 Sl#19 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#1 Sl#19 Ch#15 signal {PEDTRG}
+16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 signal {hS1}                       
+17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 signal {hPRE50}                    
+18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 signal {hS2X}                      
+19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 signal {hPRE150}                   
+20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 signal {hS1X}                      
+21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 signal {hS2Y}                      
+22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 signal {hPRE100}                   
+23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 signal {hS1Y}                      
+24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 signal {hS2}                       
+25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 signal {hPRE200}                   
+26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 signal {hSTOF}                     
+27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 signal {hSCIN}                     
+28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 signal {hELREAL}                   
+29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 signal {hPIPRE}                    
+30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 signal {hELCLEAN}                  
+31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 signal {hPRETRG}                   
+32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 signal {PION}                      
+33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 signal {CER}                       
+34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 signal {hPIONHI}                  
+35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 signal {hCERHI}                  
+36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 signal {??}                        
+37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 signal {UNSER}                     
+38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 signal {BCM1}                      
+39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 signal {BCM2}                      
+40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 signal {hELHI}                     
+41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 signal {hELLO}                     
+42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 signal {hPRHI}                     
+43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 signal {hPRLO}                     
+44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 signal {hSHLO}                     
+45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 signal {CLOCK}                     
+46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 signal {BEAMGATES}                 
+47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 signal {hADCGATES ? PEDS and TRIGS}
+48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 RF no delay
+49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 RF + 10 ns
+53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!
+!=============================================================================
+!                     AEROGEL TDC
+!..............................................................................
+! For aerogel: 0-->ADC_POS
+!	       1-->ADC_NEG
+!              2-->TDC_POS      ! Check one more time (Hamlet, 2002/10/01)
+!              3-->TDC_NEG
+
+    detector= 7 ! Temporary for HAERO
+
+!       TDC module LeCroy 1872a
+
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!!
+! S. Wood have problem to read additional TDC in Slot =18 (2002/10/18, Hamlet)
+!
+! For now I will use some other tdc channels for Aerogel
+!.......................>
+!
+ Slot= 18 ! TDC channels for HMS Aero 
+! Changed May 5, 2003 DJG
+!
+!
+! Slot= 18 !TDC
+!
+! TDC chan  for aerogel (Hamlet, 2002/10/17)
+!
+0, 1, 1, 2 !TDC ROC#1 Sl#18 Ch#0  signal pos 1
+1, 1, 2, 2 !TDC ROC#1 Sl#18 Ch#1  signal pos 2
+2, 1, 3, 2 !TDC ROC#1 Sl#18 Ch#2  signal pos 3
+3, 1, 4, 2 !TDC ROC#1 Sl#18 Ch#3  signal pos 4
+4, 1, 5, 2 !TDC ROC#1 Sl#18 Ch#4  signal pos 5
+5, 1, 6, 2 !TDC ROC#1 Sl#18 Ch#5  signal pos 6
+6, 1, 7, 2 !TDC ROC#1 Sl#18 Ch#6  signal pos 7
+7, 1, 8, 2 !TDC ROC#1 Sl#18 Ch#7  signal pos 8
+8, 1, 1, 3 !TDC ROC#1 Sl#18 Ch#8  signal neg 1
+9, 1, 2, 3 !TDC ROC#1 Sl#18 Ch#9  signal neg 2
+10, 1, 3, 3 !TDC ROC#1 Sl#18 Ch#10  signal neg 3
+11, 1, 4, 3 !TDC ROC#1 Sl#18 Ch#11  signal neg 4
+12, 1, 5, 3 !TDC ROC#1 Sl#18 Ch#12  signal neg 5
+13, 1, 6, 3 !TDC ROC#1 Sl#18 Ch#13  signal neg 6
+14, 1, 7, 3 !TDC ROC#1 Sl#18 Ch#14  signal neg 7
+15, 1, 8, 3 !TDC ROC#1 Sl#18 Ch#15  signal neg 8
+!!
+!16, 1, 17, 0  ! 16 !TDC ROC#1 Sl#19 Ch#16 unused
+!17, 1, 18, 0  ! 17 !TDC ROC#1 Sl#19 Ch#17 unused
+!18, 1, 19, 0  ! 18 !TDC ROC#1 Sl#19 Ch#18 unused
+!19, 1, 20, 0  ! 19 !TDC ROC#1 Sl#19 Ch#19 unused
+!20, 1, 21, 0  ! 20 !TDC ROC#1 Sl#19 Ch#20 unused
+!21, 1, 22, 0  ! 21 !TDC ROC#1 Sl#19 Ch#21 unused
+!22, 1, 23, 0  ! 22 !TDC ROC#1 Sl#19 Ch#22 unused
+!23, 1, 24, 0  ! 23 !TDC ROC#1 Sl#19 Ch#23 unused
+!24, 1, 25, 0  ! 24 !TDC ROC#1 Sl#19 Ch#24 unused
+!25, 1, 26, 0  ! 25 !TDC ROC#1 Sl#19 Ch#25 unused
+!26, 1, 27, 0  ! 26 !TDC ROC#1 Sl#19 Ch#26 unused
+!27, 1, 28, 0  ! 27 !TDC ROC#1 Sl#19 Ch#27 unused
+!28, 1, 29, 0  ! 28 !TDC ROC#1 Sl#19 Ch#28 unused
+!29, 1, 30, 0  ! 29 !TDC ROC#1 Sl#19 Ch#29 unused
+!30, 1, 31, 0  ! 30 !TDC ROC#1 Sl#19 Ch#30 unused
+!31, 1, 32, 0  ! 31 !TDC ROC#1 Sl#19 Ch#31 unused
+!32, 1, 33, 0  ! 32 !TDC ROC#1 Sl#19 Ch#32 unused
+!33, 1, 34, 0  ! 33 !TDC ROC#1 Sl#19 Ch#33 unused
+!34, 1, 35, 0  ! 34 !TDC ROC#1 Sl#19 Ch#34 unused
+!35, 1, 36, 0  ! 35 !TDC ROC#1 Sl#19 Ch#35 unused
+!36, 1, 37, 0  ! 36 !TDC ROC#1 Sl#19 Ch#36 unused
+!37, 1, 38, 0  ! 37 !TDC ROC#1 Sl#19 Ch#37 unused
+!38, 1, 39, 0  ! 38 !TDC ROC#1 Sl#19 Ch#38 unused
+!39, 1, 40, 0  ! 39 !TDC ROC#1 Sl#19 Ch#39 unused
+!40, 1, 41, 0  ! 40 !TDC ROC#1 Sl#19 Ch#40 unused
+!41, 1, 42, 0  ! 41 !TDC ROC#1 Sl#19 Ch#41 unused
+!42, 1, 43, 0  ! 42 !TDC ROC#1 Sl#19 Ch#42 unused
+!43, 1, 44, 0  ! 43 !TDC ROC#1 Sl#19 Ch#43 unused
+!44, 1, 45, 0  ! 44 !TDC ROC#1 Sl#19 Ch#44 unused 
+!45, 1, 46, 0  ! 45 !TDC ROC#1 Sl#19 Ch#45 unused 
+!46, 1, 47, 0  ! 46 !TDC ROC#1 Sl#19 Ch#46 unused 
+!47, 1, 48, 0  ! 47 !TDC ROC#1 Sl#19 Ch#47 unused 
+!48, 1, 49, 0  ! 48 !TDC ROC#1 Sl#19 Ch#48 unused
+!49, 1, 50, 0  ! 49 !TDC ROC#1 Sl#19 Ch#49 unused
+!50, 1, 51, 0  ! 50 !TDC ROC#1 Sl#19 Ch#50 unused
+!51, 1, 52, 0  ! 51 !TDC ROC#1 Sl#19 Ch#51 unused
+!52, 1, 53, 0  ! 52 !TDC ROC#1 Sl#19 Ch#52 unused
+!53, 1, 54, 0  ! 53 !TDC ROC#1 Sl#19 Ch#53 unused
+!54, 1, 55, 0  ! 54 !TDC ROC#1 Sl#19 Ch#54 unused
+!55, 1, 56, 0  ! 55 !TDC ROC#1 Sl#19 Ch#55 unused
+!56, 1, 57, 0  ! 56 !TDC ROC#1 Sl#19 Ch#56 unused
+!57, 1, 58, 0  ! 57 !TDC ROC#1 Sl#19 Ch#57 unused
+!58, 1, 59, 0  ! 58 !TDC ROC#1 Sl#19 Ch#58 unused
+!59, 1, 60, 0  ! 59 !TDC ROC#1 Sl#19 Ch#59 unused
+!60, 1, 61, 0  ! 60 !TDC ROC#1 Sl#19 Ch#60 unused
+!61, 1, 62, 0  ! 61 !TDC ROC#1 Sl#19 Ch#61 unused 
+!62, 1, 63, 0  ! 62 !TDC ROC#1 Sl#19 Ch#62 unused
+!63, 1, 64, 0  ! 63 !TDC ROC#1 Sl#19 Ch#63 unused 
+!
+!=============================================================================
+!       ADC module LeCroy 1881M
+    detector = 2
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#1 Sl#9 Ch#0 HSCIN pl#1 [X1] id#1 sig#0 [ADC+] (0 X1P-01)
+  1, 1, 3, 0 !ADC ROC#1 Sl#9 Ch#1 HSCIN pl#1 [X1] id#3 sig#0 [ADC+] (1 X1P-03)
+  2, 1, 5, 0 !ADC ROC#1 Sl#9 Ch#2 HSCIN pl#1 [X1] id#5 sig#0 [ADC+] (2 X1P-05)
+  3, 1, 7, 0 !ADC ROC#1 Sl#9 Ch#3 HSCIN pl#1 [X1] id#7 sig#0 [ADC+] (3 X1P-07)
+  4, 1, 9, 0 !ADC ROC#1 Sl#9 Ch#4 HSCIN pl#1 [X1] id#9 sig#0 [ADC+] (4 X1P-09)
+  5, 1, 11, 0 !ADC ROC#1 Sl#9 Ch#5 HSCIN pl#1 [X1] id#11 sig#0 [ADC+] (5 X1P-11)
+  6, 1, 13, 0 !ADC ROC#1 Sl#9 Ch#6 HSCIN pl#1 [X1] id#13 sig#0 [ADC+] (6 X1P-13)
+  7, 1, 15, 0 !ADC ROC#1 Sl#9 Ch#7 HSCIN pl#1 [X1] id#15 sig#0 [ADC+] (7 X1P-15)
+  8, 1, 2, 0 !ADC ROC#1 Sl#9 Ch#8 HSCIN pl#1 [X1] id#2 sig#0 [ADC+] (8 X1P-02)
+  9, 1, 4, 0 !ADC ROC#1 Sl#9 Ch#9 HSCIN pl#1 [X1] id#4 sig#0 [ADC+] (9 X1P-04)
+  10, 1, 6, 0 !ADC ROC#1 Sl#9 Ch#10 HSCIN pl#1 [X1] id#6 sig#0 [ADC+] (10 X1P-06)
+  11, 1, 8, 0 !ADC ROC#1 Sl#9 Ch#11 HSCIN pl#1 [X1] id#8 sig#0 [ADC+] (11 X1P-08)
+  12, 1, 10, 0 !ADC ROC#1 Sl#9 Ch#12 HSCIN pl#1 [X1] id#10 sig#0 [ADC+] (12 X1P-10)
+  13, 1, 12, 0 !ADC ROC#1 Sl#9 Ch#13 HSCIN pl#1 [X1] id#12 sig#0 [ADC+] (13 X1P-12)
+  14, 1, 14, 0 !ADC ROC#1 Sl#9 Ch#14 HSCIN pl#1 [X1] id#14 sig#0 [ADC+] (14 X1P-14)
+  15, 1, 16, 0 !ADC ROC#1 Sl#9 Ch#15 HSCIN pl#1 [X1] id#16 sig#0 [ADC+] (15 X1P-16)
+!
+  16, 1, 1, 1 !ADC ROC#1 Sl#9 Ch#16 HSCIN pl#1 [X1] id#1 sig#1 [ADC-] (16 X1N-01)
+  17, 1, 3, 1 !ADC ROC#1 Sl#9 Ch#17 HSCIN pl#1 [X1] id#3 sig#1 [ADC-] (17 X1N-03)
+  18, 1, 5, 1 !ADC ROC#1 Sl#9 Ch#18 HSCIN pl#1 [X1] id#5 sig#1 [ADC-] (18 X1N-05)
+  19, 1, 7, 1 !ADC ROC#1 Sl#9 Ch#19 HSCIN pl#1 [X1] id#7 sig#1 [ADC-] (19 X1N-07)
+  20, 1, 9, 1 !ADC ROC#1 Sl#9 Ch#20 HSCIN pl#1 [X1] id#9 sig#1 [ADC-] (20 X1N-09)
+  21, 1, 11, 1 !ADC ROC#1 Sl#9 Ch#21 HSCIN pl#1 [X1] id#11 sig#1 [ADC-] (21 X1N-11)
+  22, 1, 13, 1 !ADC ROC#1 Sl#9 Ch#22 HSCIN pl#1 [X1] id#13 sig#1 [ADC-] (22 X1N-13)
+  23, 1, 15, 1 !ADC ROC#1 Sl#9 Ch#23 HSCIN pl#1 [X1] id#15 sig#1 [ADC-] (23 X1N-15)
+  24, 1, 2, 1 !ADC ROC#1 Sl#9 Ch#24 HSCIN pl#1 [X1] id#2 sig#1 [ADC-] (24 X1N-02)
+  25, 1, 4, 1 !ADC ROC#1 Sl#9 Ch#25 HSCIN pl#1 [X1] id#4 sig#1 [ADC-] (25 X1N-04)
+  26, 1, 6, 1 !ADC ROC#1 Sl#9 Ch#26 HSCIN pl#1 [X1] id#6 sig#1 [ADC-] (26 X1N-06)
+  27, 1, 8, 1 !ADC ROC#1 Sl#9 Ch#27 HSCIN pl#1 [X1] id#8 sig#1 [ADC-] (27 X1N-08)
+  28, 1, 10, 1 !ADC ROC#1 Sl#9 Ch#28 HSCIN pl#1 [X1] id#10 sig#1 [ADC-] (28 X1N-10)
+  29, 1, 12, 1 !ADC ROC#1 Sl#9 Ch#29 HSCIN pl#1 [X1] id#12 sig#1 [ADC-] (29 X1N-12)
+  30, 1, 14, 1 !ADC ROC#1 Sl#9 Ch#30 HSCIN pl#1 [X1] id#14 sig#1 [ADC-] (30 X1N-14)
+  31, 1, 16, 1 !ADC ROC#1 Sl#9 Ch#31 HSCIN pl#1 [X1] id#16 sig#1 [ADC-] (31 X1N-16)
+! 
+  32, 2, 1, 0 !ADC ROC#1 Sl#9 Ch#32 HSCIN pl#2 [Y1] id#1 sig#0 [ADC+] (32 Y1P-01)
+  33, 2, 3, 0 !ADC ROC#1 Sl#9 Ch#33 HSCIN pl#2 [Y1] id#3 sig#0 [ADC+] (33 Y1P-03)
+  34, 2, 5, 0 !ADC ROC#1 Sl#9 Ch#34 HSCIN pl#2 [Y1] id#5 sig#0 [ADC+] (34 Y1P-05)
+  35, 2, 7, 0 !ADC ROC#1 Sl#9 Ch#35 HSCIN pl#2 [Y1] id#7 sig#0 [ADC+] (35 Y1P-07)
+  36, 2, 9, 0 !ADC ROC#1 Sl#9 Ch#36 HSCIN pl#2 [Y1] id#9 sig#0 [ADC+] (36 Y1P-09)
+!  37 !ADC ROC#1 Sl#9 Ch#37 unused
+!  38 !ADC ROC#1 Sl#9 Ch#38 unused
+!  39 !ADC ROC#1 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#1 Sl#9 Ch#40 HSCIN pl#2 [Y1] id#2 sig#0 [ADC+] (40 Y1P-02)
+  41, 2, 4, 0 !ADC ROC#1 Sl#9 Ch#41 HSCIN pl#2 [Y1] id#4 sig#0 [ADC+] (41 Y1P-04)
+  42, 2, 6, 0 !ADC ROC#1 Sl#9 Ch#42 HSCIN pl#2 [Y1] id#6 sig#0 [ADC+] (42 Y1P-06)
+  43, 2, 8, 0 !ADC ROC#1 Sl#9 Ch#43 HSCIN pl#2 [Y1] id#8 sig#0 [ADC+] (43 Y1P-08)
+  44, 2, 10, 0 !ADC ROC#1 Sl#9 Ch#44 HSCIN pl#2 [Y1] id#10 sig#0 [ADC+] (44 Y1P-10)
+!  45 !ADC ROC#1 Sl#9 Ch#45 unused
+!  46 !ADC ROC#1 Sl#9 Ch#46 unused
+!  47 !ADC ROC#1 Sl#9 Ch#47 unused
+!
+  48, 2, 1, 1 !ADC ROC#1 Sl#9 Ch#48 HSCIN pl#2 [Y1] id#1 sig#1 [ADC-] (48 Y1N-01)
+  49, 2, 3, 1 !ADC ROC#1 Sl#9 Ch#49 HSCIN pl#2 [Y1] id#3 sig#1 [ADC-] (49 Y1N-03)
+  50, 2, 5, 1 !ADC ROC#1 Sl#9 Ch#50 HSCIN pl#2 [Y1] id#5 sig#1 [ADC-] (50 Y1N-05)
+  51, 2, 7, 1 !ADC ROC#1 Sl#9 Ch#51 HSCIN pl#2 [Y1] id#7 sig#1 [ADC-] (51 Y1N-07)
+  52, 2, 9, 1 !ADC ROC#1 Sl#9 Ch#52 HSCIN pl#2 [Y1] id#9 sig#1 [ADC-] (52 Y1N-09)
+!  53 !ADC ROC#1 Sl#9 Ch#53 unused
+!  54 !ADC ROC#1 Sl#9 Ch#54 unused
+!  55 !ADC ROC#1 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#1 Sl#9 Ch#56 HSCIN pl#2 [Y1] id#2 sig#1 [ADC-] (56 Y1N-02)
+  57, 2, 4, 1 !ADC ROC#1 Sl#9 Ch#57 HSCIN pl#2 [Y1] id#4 sig#1 [ADC-] (57 Y1N-04)
+  58, 2, 6, 1 !ADC ROC#1 Sl#9 Ch#58 HSCIN pl#2 [Y1] id#6 sig#1 [ADC-] (58 Y1N-06)
+  59, 2, 8, 1 !ADC ROC#1 Sl#9 Ch#59 HSCIN pl#2 [Y1] id#8 sig#1 [ADC-] (59 Y1N-08)
+  60, 2, 10, 1 !ADC ROC#1 Sl#9 Ch#60 HSCIN pl#2 [Y1] id#10 sig#1 [ADC-] (60 Y1N-10)
+!  61 !ADC ROC#1 Sl#9 Ch#62 unused
+!  62 !ADC ROC#1 Sl#9 Ch#62 unused
+!  63 !ADC ROC#1 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#1 Sl#7 Ch#0 HSCIN pl#3 [X2] id#1 sig#0 [ADC+] (0 X2P-01)
+  1, 3, 3, 0 !ADC ROC#1 Sl#7 Ch#1 HSCIN pl#3 [X2] id#3 sig#0 [ADC+] (1 X2P-03)
+  2, 3, 5, 0 !ADC ROC#1 Sl#7 Ch#2 HSCIN pl#3 [X2] id#5 sig#0 [ADC+] (2 X2P-05)
+  3, 3, 7, 0 !ADC ROC#1 Sl#7 Ch#3 HSCIN pl#3 [X2] id#7 sig#0 [ADC+] (3 X2P-07)
+  4, 3, 9, 0 !ADC ROC#1 Sl#7 Ch#4 HSCIN pl#3 [X2] id#9 sig#0 [ADC+] (4 X2P-09)
+  5, 3, 11, 0 !ADC ROC#1 Sl#7 Ch#5 HSCIN pl#3 [X2] id#11 sig#0 [ADC+] (5 X2P-11)
+  6, 3, 13, 0 !ADC ROC#1 Sl#7 Ch#6 HSCIN pl#3 [X2] id#13 sig#0 [ADC+] (6 X2P-13)
+  7, 3, 15, 0 !ADC ROC#1 Sl#7 Ch#7 HSCIN pl#3 [X2] id#15 sig#0 [ADC+] (7 X2P-15)
+  8, 3, 2, 0 !ADC ROC#1 Sl#7 Ch#8 HSCIN pl#3 [X2] id#2 sig#0 [ADC+] (8 X2P-02)
+  9, 3, 4, 0 !ADC ROC#1 Sl#7 Ch#9 HSCIN pl#3 [X2] id#4 sig#0 [ADC+] (9 X2P-04)
+  10, 3, 6, 0 !ADC ROC#1 Sl#7 Ch#10 HSCIN pl#3 [X2] id#6 sig#0 [ADC+] (10 X2P-06)
+  11, 3, 8, 0 !ADC ROC#1 Sl#7 Ch#11 HSCIN pl#3 [X2] id#8 sig#0 [ADC+] (11 X2P-08)
+  12, 3, 10, 0 !ADC ROC#1 Sl#7 Ch#12 HSCIN pl#3 [X2] id#10 sig#0 [ADC+] (12 X2P-10)
+  13, 3, 12, 0 !ADC ROC#1 Sl#7 Ch#13 HSCIN pl#3 [X2] id#12 sig#0 [ADC+] (13 X2P-12)
+  14, 3, 14, 0 !ADC ROC#1 Sl#7 Ch#14 HSCIN pl#3 [X2] id#14 sig#0 [ADC+] (14 X2P-14)
+  15, 3, 16, 0 !ADC ROC#1 Sl#7 Ch#15 HSCIN pl#3 [X2] id#16 sig#0 [ADC+] (15 X2P-16)
+! 
+  16, 3, 1, 1 !ADC ROC#1 Sl#7 Ch#16 HSCIN pl#3 [X2] id#1 sig#1 [ADC-] (16 X2N-01)
+  17, 3, 3, 1 !ADC ROC#1 Sl#7 Ch#17 HSCIN pl#3 [X2] id#3 sig#1 [ADC-] (17 X2N-03)
+  18, 3, 5, 1 !ADC ROC#1 Sl#7 Ch#18 HSCIN pl#3 [X2] id#5 sig#1 [ADC-] (18 X2N-05)
+  19, 3, 7, 1 !ADC ROC#1 Sl#7 Ch#19 HSCIN pl#3 [X2] id#7 sig#1 [ADC-] (19 X2N-07)
+  20, 3, 9, 1 !ADC ROC#1 Sl#7 Ch#20 HSCIN pl#3 [X2] id#9 sig#1 [ADC-] (20 X2N-09)
+  21, 3, 11, 1 !ADC ROC#1 Sl#7 Ch#21 HSCIN pl#3 [X2] id#11 sig#1 [ADC-] (21 X2N-11)
+  22, 3, 13, 1 !ADC ROC#1 Sl#7 Ch#22 HSCIN pl#3 [X2] id#13 sig#1 [ADC-] (22 X2N-13)
+  23, 3, 15, 1 !ADC ROC#1 Sl#7 Ch#23 HSCIN pl#3 [X2] id#15 sig#1 [ADC-] (23 X2N-15)
+!
+  24, 3, 2, 1 !ADC ROC#1 Sl#7 Ch#24 HSCIN pl#3 [X2] id#2 sig#1 [ADC-] (24 X2N-02)
+  25, 3, 4, 1 !ADC ROC#1 Sl#7 Ch#25 HSCIN pl#3 [X2] id#4 sig#1 [ADC-] (25 X2N-04)
+  26, 3, 6, 1 !ADC ROC#1 Sl#7 Ch#26 HSCIN pl#3 [X2] id#6 sig#1 [ADC-] (26 X2N-06)
+  27, 3, 8, 1 !ADC ROC#1 Sl#7 Ch#27 HSCIN pl#3 [X2] id#8 sig#1 [ADC-] (27 X2N-08)
+  28, 3, 10, 1 !ADC ROC#1 Sl#7 Ch#28 HSCIN pl#3 [X2] id#10 sig#1 [ADC-] (28 X2N-10)
+  29, 3, 12, 1 !ADC ROC#1 Sl#7 Ch#29 HSCIN pl#3 [X2] id#12 sig#1 [ADC-] (29 X2N-12)
+  30, 3, 14, 1 !ADC ROC#1 Sl#7 Ch#30 HSCIN pl#3 [X2] id#14 sig#1 [ADC-] (30 X2N-14)
+  31, 3, 16, 1 !ADC ROC#1 Sl#7 Ch#31 HSCIN pl#3 [X2] id#16 sig#1 [ADC-] (31 X2N-16)
+  32, 4, 1, 0 !ADC ROC#1 Sl#7 Ch#32 HSCIN pl#4 [Y2] id#1 sig#0 [ADC+] (32 Y2P-01)
+  33, 4, 3, 0 !ADC ROC#1 Sl#7 Ch#33 HSCIN pl#4 [Y2] id#3 sig#0 [ADC+] (33 Y2P-03)
+  34, 4, 5, 0 !ADC ROC#1 Sl#7 Ch#34 HSCIN pl#4 [Y2] id#5 sig#0 [ADC+] (34 Y2P-05)
+  35, 4, 7, 0 !ADC ROC#1 Sl#7 Ch#35 HSCIN pl#4 [Y2] id#7 sig#0 [ADC+] (35 Y2P-07)
+  36, 4, 9, 0 !ADC ROC#1 Sl#7 Ch#36 HSCIN pl#4 [Y2] id#9 sig#0 [ADC+] (36 Y2P-09)
+!  37 !ADC ROC#1 Sl#7 Ch#37 unused
+!  38 !ADC ROC#1 Sl#7 Ch#38 unused
+!  39 !ADC ROC#1 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#1 Sl#7 Ch#40 HSCIN pl#4 [Y2] id#2 sig#0 [ADC+] (40 Y2P-02)
+  41, 4, 4, 0 !ADC ROC#1 Sl#7 Ch#41 HSCIN pl#4 [Y2] id#4 sig#0 [ADC+] (41 Y2P-04)
+  42, 4, 6, 0 !ADC ROC#1 Sl#7 Ch#42 HSCIN pl#4 [Y2] id#6 sig#0 [ADC+] (42 Y2P-06)
+  43, 4, 8, 0 !ADC ROC#1 Sl#7 Ch#43 HSCIN pl#4 [Y2] id#8 sig#0 [ADC+] (43 Y2P-08)
+  44, 4, 10, 0 !ADC ROC#1 Sl#7 Ch#44 HSCIN pl#4 [Y2] id#10 sig#0 [ADC+] (44 Y2P-10)
+!  45 !ADC ROC#1 Sl#7 Ch#45 unused
+!  46 !ADC ROC#1 Sl#7 Ch#46 unused
+!  47 !ADC ROC#1 Sl#7 Ch#47 unused
+  48, 4, 1, 1 !ADC ROC#1 Sl#7 Ch#48 HSCIN pl#4 [Y2] id#1 sig#1 [ADC-] (48 Y2N-01)
+  49, 4, 3, 1 !ADC ROC#1 Sl#7 Ch#49 HSCIN pl#4 [Y2] id#3 sig#1 [ADC-] (49 Y2N-03)
+  50, 4, 5, 1 !ADC ROC#1 Sl#7 Ch#50 HSCIN pl#4 [Y2] id#5 sig#1 [ADC-] (50 Y2N-05)
+  51, 4, 7, 1 !ADC ROC#1 Sl#7 Ch#51 HSCIN pl#4 [Y2] id#7 sig#1 [ADC-] (51 Y2N-07)
+  52, 4, 9, 1 !ADC ROC#1 Sl#7 Ch#52 HSCIN pl#4 [Y2] id#9 sig#1 [ADC-] (52 Y2N-09)
+!  53 !ADC ROC#1 Sl#7 Ch#53 unused
+!  54 !ADC ROC#1 Sl#7 Ch#54 unused
+!  55 !ADC ROC#1 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#1 Sl#7 Ch#56 HSCIN pl#4 [Y2] id#2 sig#1 [ADC-] (56 Y2N-02)
+  57, 4, 4, 1 !ADC ROC#1 Sl#7 Ch#57 HSCIN pl#4 [Y2] id#4 sig#1 [ADC-] (57 Y2N-04)
+  58, 4, 6, 1 !ADC ROC#1 Sl#7 Ch#58 HSCIN pl#4 [Y2] id#6 sig#1 [ADC-] (58 Y2N-06)
+  59, 4, 8, 1 !ADC ROC#1 Sl#7 Ch#59 HSCIN pl#4 [Y2] id#8 sig#1 [ADC-] (59 Y2N-08)
+  60, 4, 10, 1 !ADC ROC#1 Sl#7 Ch#60 HSCIN pl#4 [Y2] id#10 sig#1 [ADC-] (60 Y2N-10)
+!  61 !ADC ROC#1 Sl#7 Ch#61 unused
+!  62 !ADC ROC#1 Sl#7 Ch#62 unused
+!  63 !ADC ROC#1 Sl#7 Ch#63 unused
+!
+!---------------------------------------------------------------------------------
+    detector= 4 !HCAL
+!
+ Slot= 1 ! ADC  
+   0, 1, 1  !ADC ROC#1 Sl#1 Ch#0 HCAL col#1 row#1 (0 A-01)
+   1, 1, 2  !ADC ROC#1 Sl#1 Ch#1 HCAL col#1 row#2 (1 A-02)
+   2, 1, 3  !ADC ROC#1 Sl#1 Ch#2 HCAL col#1 row#3 (2 A-03)
+   3, 1, 4  !ADC ROC#1 Sl#1 Ch#3 HCAL col#1 row#4 (3 A-04)
+   4, 1, 5  !ADC ROC#1 Sl#1 Ch#4 HCAL col#1 row#5 (4 A-05)
+   5, 1, 6  !ADC ROC#1 Sl#1 Ch#5 HCAL col#1 row#6 (5 A-06)
+   6, 1, 7  !ADC ROC#1 Sl#1 Ch#6 HCAL col#1 row#7 (6 A-07)
+   7, 1, 8  !ADC ROC#1 Sl#1 Ch#7 HCAL col#1 row#8 (7 A-08)
+   8, 1, 9  !ADC ROC#1 Sl#1 Ch#8 HCAL col#1 row#9 (8 A-09)
+   9, 1, 10 !ADC ROC#1 Sl#1 Ch#9 HCAL col#1 row#10 (9 A-10)
+  10, 1, 11 !ADC ROC#1 Sl#1 Ch#10 HCAL col#1 row#11 (10 A-11)
+  11, 1, 12 !ADC ROC#1 Sl#1 Ch#11 HCAL col#1 row#12 (11 A-12)
+  12, 1, 13 !ADC ROC#1 Sl#1 Ch#12 HCAL col#1 row#13 (12 A-13)
+!   13 !ADC ROC#1 Sl#1 Ch#13 unused
+!   14 !ADC ROC#1 Sl#1 Ch#14 unused
+!   15 !ADC ROC#1 Sl#1 Ch#15 unused
+  16, 2, 1  !ADC ROC#1 Sl#1 Ch#16 HCAL col#2 row#1 (16 B-01)
+  17, 2, 2  !ADC ROC#1 Sl#1 Ch#17 HCAL col#2 row#2 (17 B-02)
+  18, 2, 3  !ADC ROC#1 Sl#1 Ch#18 HCAL col#2 row#3 (18 B-03)
+  19, 2, 4  !ADC ROC#1 Sl#1 Ch#19 HCAL col#2 row#4 (19 B-04)
+  20, 2, 5  !ADC ROC#1 Sl#1 Ch#20 HCAL col#2 row#5 (20 B-05)
+  21, 2, 6  !ADC ROC#1 Sl#1 Ch#21 HCAL col#2 row#6 (21 B-06)
+  22, 2, 7  !ADC ROC#1 Sl#1 Ch#22 HCAL col#2 row#7 (22 B-07)
+  23, 2, 8  !ADC ROC#1 Sl#1 Ch#23 HCAL col#2 row#8 (23 B-08)
+  24, 2, 9  !ADC ROC#1 Sl#1 Ch#24 HCAL col#2 row#9 (24 B-09)
+  25, 2, 10 !ADC ROC#1 Sl#1 Ch#25 HCAL col#2 row#10 (25 B-10)
+  26, 2, 11 !ADC ROC#1 Sl#1 Ch#26 HCAL col#2 row#11 (26 B-11)
+  27, 2, 12 !ADC ROC#1 Sl#1 Ch#27 HCAL col#2 row#12 (27 B-12)
+  28, 2, 13 !ADC ROC#1 Sl#1 Ch#28 HCAL col#2 row#13 (28 B-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+  32, 3, 1  !ADC ROC#1 Sl#1 Ch#32 HCAL col#3 row#1 (32 C-01)
+  33, 3, 2  !ADC ROC#1 Sl#1 Ch#33 HCAL col#3 row#2 (33 C-02)
+  34, 3, 3  !ADC ROC#1 Sl#1 Ch#34 HCAL col#3 row#3 (34 C-03)
+  35, 3, 4  !ADC ROC#1 Sl#1 Ch#35 HCAL col#3 row#4 (35 C-04)
+  36, 3, 5  !ADC ROC#1 Sl#1 Ch#36 HCAL col#3 row#5 (36 C-05)
+  37, 3, 6  !ADC ROC#1 Sl#1 Ch#37 HCAL col#3 row#6 (37 C-06)
+  38, 3, 7  !ADC ROC#1 Sl#1 Ch#38 HCAL col#3 row#7 (38 C-07)
+  39, 3, 8  !ADC ROC#1 Sl#1 Ch#39 HCAL col#3 row#8 (39 C-08)
+  40, 3, 9  !ADC ROC#1 Sl#1 Ch#40 HCAL col#3 row#9 (40 C-09)
+  41, 3, 10 !ADC ROC#1 Sl#1 Ch#41 HCAL col#3 row#10 (41 C-10)
+  42, 3, 11 !ADC ROC#1 Sl#1 Ch#42 HCAL col#3 row#11 (42 C-11)
+  43, 3, 12 !ADC ROC#1 Sl#1 Ch#43 HCAL col#3 row#12 (43 C-12)
+  44, 3, 13 !ADC ROC#1 Sl#1 Ch#44 HCAL col#3 row#13 (44 C-13)
+!  45 !ADC ROC#1 Sl#1 Ch#45 unused
+!  46 !ADC ROC#1 Sl#1 Ch#46 unused
+!  47 !ADC ROC#1 Sl#1 Ch#47 unused
+  48, 4, 1  !ADC ROC#1 Sl#1 Ch#48 HCAL col#4 row#1 (48 D-01)
+  49, 4, 2  !ADC ROC#1 Sl#1 Ch#49 HCAL col#4 row#2 (49 D-02)
+  50, 4, 3  !ADC ROC#1 Sl#1 Ch#50 HCAL col#4 row#3 (50 D-03)
+  51, 4, 4  !ADC ROC#1 Sl#1 Ch#51 HCAL col#4 row#4 (51 D-04)
+  52, 4, 5  !ADC ROC#1 Sl#1 Ch#52 HCAL col#4 row#5 (52 D-05)
+  53, 4, 6  !ADC ROC#1 Sl#1 Ch#53 HCAL col#4 row#6 (53 D-06)
+  54, 4, 7  !ADC ROC#1 Sl#1 Ch#54 HCAL col#4 row#7 (54 D-07)
+  55, 4, 8  !ADC ROC#1 Sl#1 Ch#55 HCAL col#4 row#8 (55 D-08)
+  56, 4, 9  !ADC ROC#1 Sl#1 Ch#56 HCAL col#4 row#9 (56 D-09)
+  57, 4, 10 !ADC ROC#1 Sl#1 Ch#57 HCAL col#4 row#10 (57 D-10)
+  58, 4, 11 !ADC ROC#1 Sl#1 Ch#58 HCAL col#4 row#11 (58 D-11)
+  59, 4, 12 !ADC ROC#1 Sl#1 Ch#59 HCAL col#4 row#12 (59 D-12)
+  60, 4, 13 !ADC ROC#1 Sl#1 Ch#60 HCAL col#4 row#13 (60 D-13)
+!
+!  61 !ADC ROC#1 Sl#1 Ch#61 unused
+
+    detector= 5    !HMISC - scintillator (ADCs) - behind calorimeter
+  62, 2, 1, 0 !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+  63, 2, 2, 0 !
+!
+detector= 4 !HCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+  0, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#0 HCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#1 HCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#2 HCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#3 HCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#4 HCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#5 HCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#6 HCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#7 HCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#1 Sl#5 Ch#8 HCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#1 Sl#5 Ch#9 HCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#1 Sl#5 Ch#10 HCAL col#1 row#11 (10 An-11)
+  11, 1, 12, 1 !ADC ROC#1 Sl#5 Ch#11 HCAL col#1 row#12 (11 An-112)
+  12, 1, 13, 1 !ADC ROC#1 Sl#5 Ch#12 HCAL col#1 row#13 (12 An-13)
+!  13 !ADC ROC#1 Sl#5 Ch#13 unused
+!  14 !ADC ROC#1 Sl#5 Ch#14 unused
+!  15 !ADC ROC#1 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#1 Sl#5 Ch#16 HCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#1 Sl#5 Ch#17 HCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#1 Sl#5 Ch#18 HCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#1 Sl#5 Ch#19 HCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#1 Sl#5 Ch#20 HCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#1 Sl#5 Ch#21 HCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#1 Sl#5 Ch#22 HCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#1 Sl#5 Ch#23 HCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#1 Sl#5 Ch#24 HCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#1 Sl#5 Ch#25 HCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#1 Sl#5 Ch#26 HCAL col#2 row#11 (26 Bn-11)
+  27, 2, 12, 1 !ADC ROC#1 Sl#5 Ch#27 HCAL col#2 row#12 (27 Bn-12)
+  28, 2, 13, 1 !ADC ROC#1 Sl#5 Ch#28 HCAL col#2 row#13 (28 Bn-13)
+!  29 !ADC ROC#1 Sl#1 Ch#29 unused
+!  30 !ADC ROC#1 Sl#1 Ch#30 unused
+!  31 !ADC ROC#1 Sl#1 Ch#31 unused
+!
+!==================================================================
+!!!!!!!!!!!!!!!!!!!!!!! AEROGEL ADC !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!
+    detector = 7
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+!Slot= 5 ! ADC  
+! May be will use spare channels HCAL ADC for aerogel (Hamlet, 2002/10/16)
+!48, 1, 1, 0 !ADC ROC#1 Sl#5 Ch#48 signal pos 1
+!49, 1, 2, 0 !ADC ROC#1 Sl#5 Ch#48signal pos 2
+!50, 1, 3, 0 !ADC ROC#1 Sl#5 Ch#50 signal pos 3
+!51, 1, 4, 0 !ADC ROC#1 Sl#5 Ch#51 signal pos 4
+!52, 1, 5, 0 !ADC ROC#1 Sl#5 Ch#52 signal pos 5
+!53, 1, 6, 0 !ADC ROC#1 Sl#5 Ch#53 signal pos 6
+!54, 1, 7, 0 !ADC ROC#1 Sl#5 Ch#54 signal pos 7
+!55, 1, 8, 0 !ADC ROC#1 Sl#5 Ch#55 signal pos 8
+!56, 1, 1, 1 !ADC ROC#1 Sl#5 Ch#56  signal neg 1
+!57, 1, 2, 1 !ADC ROC#1 Sl#5 Ch#57  signal neg 2
+!58, 1, 3, 1 !ADC ROC#1 Sl#5 Ch#58  signal neg 3
+!59, 1, 4, 1 !ADC ROC#1 Sl#5 Ch#59  signal neg 4
+!60, 1, 5, 1 !ADC ROC#1 Sl#5 Ch#60  signal neg 5
+!61, 1, 6, 1 !ADC ROC#1 Sl#5 Ch#61  signal neg 6
+!62, 1, 7, 1 !ADC ROC#1 Sl#5 Ch#62  signal neg 7
+!63, 1, 8, 1 !ADC ROC#1 Sl#5 Ch#63  signal neg 8
+!
+!   detector = 7
+!    Nsubadd= 64
+!    MASK= 3FFFx
+!    BSUB= 17
+
+  Slot= 11 ! ADC  
+! Additional new ADC for aerogel (Hamlet, 2002/10/17)
+   0, 1, 1, 0 !ADC ROC#1 Sl#11 Ch#0 signal pos 1
+   1, 1, 2, 0 !ADC ROC#1 Sl#11 Ch#1 signal pos 2
+   2, 1, 3, 0 !ADC ROC#1 Sl#11 Ch#2 signal pos 3
+   3, 1, 4, 0 !ADC ROC#1 Sl#11 Ch#3 signal pos 4
+   4, 1, 5, 0 !ADC ROC#1 Sl#11 Ch#4 signal pos 5
+   5, 1, 6, 0 !ADC ROC#1 Sl#11 Ch#5 signal pos 6
+   6, 1, 7, 0 !ADC ROC#1 Sl#11 Ch#6 signal pos 7
+   7, 1, 8, 0 !ADC ROC#1 Sl#11 Ch#7 signal pos 8
+   8, 1, 1, 1 !ADC ROC#1 Sl#11 Ch#8  signal neg 1
+   9, 1, 2, 1 !ADC ROC#1 Sl#11 Ch#9  signal neg 2
+  10, 1, 3, 1 !ADC ROC#1 Sl#11 Ch#10  signal neg 3
+  11, 1, 4, 1 !ADC ROC#1 Sl#11 Ch#11  signal neg 4
+  12, 1, 5, 1 !ADC ROC#1 Sl#11 Ch#12  signal neg 5
+  13, 1, 6, 1 !ADC ROC#1 Sl#11 Ch#13  signal neg 6
+  14, 1, 7, 1 !ADC ROC#1 Sl#11 Ch#14  signal neg 7
+  15, 1, 8, 1 !ADC ROC#1 Sl#11 Ch#15  signal neg 8
+!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!-----------------------------------------------------------------
+    detector= 3   !HCER
+!
+  Slot= 3
+   0, 1, 1 !ADC  ROC#1 Sl#3 Ch#0 HCER tube#1 (C1)
+   1, 1, 2 !ADC  ROC#1 Sl#3 Ch#1 HCER tube#2 (C2)
+!   2 !ADC ROC#1 Sl#3 Ch#2 unused
+!   3 !ADC ROC#1 Sl#3 Ch#3 unused
+!   4 !ADC ROC#1 Sl#3 Ch#4 unused
+!   5 !ADC ROC#1 Sl#3 Ch#5 unused
+!   6 !ADC ROC#1 Sl#3 Ch#6 unused
+!   7 !ADC ROC#1 Sl#3 Ch#7 unused
+!   8 !ADC ROC#1 Sl#3 Ch#8 unused
+!   9 !ADC ROC#1 Sl#3 Ch#9 unused
+!   10 !ADC ROC#1 Sl#3 Ch#10 unused
+!   11 !ADC ROC#1 Sl#3 Ch#11 unused
+!   12 !ADC ROC#1 Sl#3 Ch#12 unused
+!   13 !ADC ROC#1 Sl#3 Ch#13 unused
+!   14 !ADC ROC#1 Sl#3 Ch#14 unused
+!   15 !ADC ROC#1 Sl#3 Ch#15 unused
+!   16 !ADC ROC#1 Sl#3 Ch#16 unused
+!   17 !ADC ROC#1 Sl#3 Ch#17 unused
+!   18 !ADC ROC#1 Sl#3 Ch#18 unused
+!   19 !ADC ROC#1 Sl#3 Ch#19 unused
+!   20 !ADC ROC#1 Sl#3 Ch#20 unused
+!   21 !ADC ROC#1 Sl#3 Ch#21 unused
+!   22 !ADC ROC#1 Sl#3 Ch#22 unused
+!   23 !ADC ROC#1 Sl#3 Ch#23 unused
+!   24 !ADC ROC#1 Sl#3 Ch#24 unused
+!   25 !ADC ROC#1 Sl#3 Ch#25 unused
+!   26 !ADC ROC#1 Sl#3 Ch#26 unused
+!   27 !ADC ROC#1 Sl#3 Ch#27 unused
+!   28 !ADC ROC#1 Sl#3 Ch#28 unused
+!   29 !ADC ROC#1 Sl#3 Ch#29 unused
+!   30 !ADC ROC#1 Sl#3 Ch#30 unused
+!   31 !ADC ROC#1 Sl#3 Ch#31 unused
+!   32 !ADC ROC#1 Sl#3 Ch#32 unused
+!   33 !ADC ROC#1 Sl#3 Ch#33 unused
+!   34 !ADC ROC#1 Sl#3 Ch#34 unused
+!   35 !ADC ROC#1 Sl#3 Ch#35 unused
+!   36 !ADC ROC#1 Sl#3 Ch#36 unused
+!   37 !ADC ROC#1 Sl#3 Ch#37 unused
+!   38 !ADC ROC#1 Sl#3 Ch#38 unused
+!   39 !ADC ROC#1 Sl#3 Ch#39 unused
+!   40 !ADC ROC#1 Sl#3 Ch#40 unused
+!   41 !ADC ROC#1 Sl#3 Ch#41 unused
+!   42 !ADC ROC#1 Sl#3 Ch#42 unused
+!   43 !ADC ROC#1 Sl#3 Ch#43 unused
+!   44 !ADC ROC#1 Sl#3 Ch#44 unused
+!   45 !ADC ROC#1 Sl#3 Ch#45 unused
+!   46 !ADC ROC#1 Sl#3 Ch#46 unused
+!   47 !ADC ROC#1 Sl#3 Ch#47 unused
+!detector= 6 ! GMISC 
+!!! Use "plane" 2 for the PMT's on the floor (BLM's)
+!48, 2, 1, 0 ! Special PMT signal ch #1
+!49, 2, 2, 0 ! Special PMT signal ch #1
+!50, 2, 3, 0 ! Special PMT signal ch #1
+!51, 2, 4, 0 ! Special PMT signal ch #1
+!52, 2, 5, 0 ! Special PMT signal ch #1
+!53, 2, 6, 0 ! Special PMT signal ch #1
+!54, 2, 7, 0 ! Special PMT signal ch #1
+!55, 2, 8, 0 ! Special PMT signal ch #1
+!   48 !ADC ROC#1 Sl#3 Ch#48 unused
+!   49 !ADC ROC#1 Sl#3 Ch#49 unused
+!   50 !ADC ROC#1 Sl#3 Ch#50 unused
+!   51 !ADC ROC#1 Sl#3 Ch#51 unused
+!   52 !ADC ROC#1 Sl#3 Ch#52 unused
+!   53 !ADC ROC#1 Sl#3 Ch#53 unused
+!   54 !ADC ROC#1 Sl#3 Ch#54 unused
+!   55 !ADC ROC#1 Sl#3 Ch#55 unused
+!   56 !ADC ROC#1 Sl#3 Ch#56 unused
+!   57 !ADC ROC#1 Sl#3 Ch#57 unused
+!   58 !ADC ROC#1 Sl#3 Ch#58 unused
+!   59 !ADC ROC#1 Sl#3 Ch#59 unused
+!   60 !ADC ROC#1 Sl#3 Ch#60 unused
+!   61 !ADC ROC#1 Sl#3 Ch#61 unused
+!   62 !ADC ROC#1 Sl#3 Ch#62 unused
+!   63 !ADC ROC#1 Sl#3 Ch#63 unused
+!
+!
+  detector= 6 ! GMISC
+!
+  Slot= 13
+!
+!  0, 2, 1, 0 !ADC ROC#1 Sl#15 Ch#0
+!  1, 2, 2, 0 !ADC ROC#1 Sl#15 Ch#1
+!  2, 2, 3, 0 !ADC ROC#1 Sl#15 Ch#2
+!  3, 2, 4, 0 !ADC ROC#1 Sl#15 Ch#3
+  4, 2, 5, 0 !ADC ROC#1 Sl#15 Ch#4 H00A X+
+  5, 2, 6, 0 !ADC ROC#1 Sl#15 Ch#5 H00A X-
+  6, 2, 7, 0 !ADC ROC#1 Sl#15 Ch#6 H00A Y+
+  7, 2, 8, 0 !ADC ROC#1 Sl#15 Ch#7 H00A Y-
+  8, 2, 9, 0 !ADC ROC#1 Sl#15 Ch#8 H00B X+
+  9, 2, 10, 0 !ADC ROC#1 Sl#15 Ch#9 H00B X-
+  10, 2, 11, 0 !ADC ROC#1 Sl#15 Ch#10 H00B Y+
+  11, 2, 12, 0 !ADC ROC#1 Sl#15 Ch#11 H00B Y-
+!  12, 2, 13, 0 !ADC ROC#1 Sl#15 Ch#12 Fast Raster X-sync
+!  13, 2, 14, 0 !ADC ROC#1 Sl#15 Ch#13 Fast Raster X-signal
+!  14, 2, 15, 0 !ADC ROC#1 Sl#15 Ch#14 Fast Raster Y-sync
+!  15, 2, 16, 0 !ADC ROC#1 Sl#15 Ch#15 Fast Raster Y-signal
+! mkj switch x and y Apr 9,2003
+! bpw added the new ID for raster 01-23-2014
+!
+  detector= 18 ! RASTER
+!
+! buddhini-w :To make things easier and consistent between detectors, 
+! we now use the plane and signal to identify the different raster signals 02-12-2014
+!..............................................................................
+! For raster : 0-->ADC X-sync
+!	       1-->ADC Y-signal
+!              2-->ADC Y-sync
+!              3-->ADC Y-signal
+
+  14, 1, 1, 0 !ADC ROC#1 Sl#13 Ch#12 Fast Raster X-sync
+  15, 1, 1, 1 !ADC ROC#1 Sl#13 Ch#13 Fast Raster X-signal
+  12, 1, 1, 2 !ADC ROC#1 Sl#13 Ch#14 Fast Raster Y-sync
+  13, 1, 1, 3 !ADC ROC#1 Sl#13 Ch#15 Fast Raster Y-signal
+!
+  detector= 6 ! GMISC
+!
+  16, 2, 17, 0  !ADC ROC#1 Sl#15 Ch#16 H00C X+
+  17, 2, 18, 0  !ADC ROC#1 Sl#15 Ch#17 H00C X-
+  18, 2, 19, 0  !ADC ROC#1 Sl#15 Ch#18 H00C Y+
+  19, 2, 20, 0  !ADC ROC#1 Sl#15 Ch#19 H00C Y-
+!   20 !ADC ROC#1 Sl#15 Ch#20 unused
+!   21 !ADC ROC#1 Sl#15 Ch#21 unused
+  22, 2, 23, 0  !ADC ROC#1 Sl#15 Ch#22 Raster gate
+!   23 !ADC ROC#1 Sl#15 Ch#23 unused
+!   24 !ADC ROC#1 Sl#15 Ch#24 unused
+!   25 !ADC ROC#1 Sl#15 Ch#25 unused
+!   26 !ADC ROC#1 Sl#15 Ch#26 unused
+!   27 !ADC ROC#1 Sl#15 Ch#27 unused
+!   28 !ADC ROC#1 Sl#15 Ch#28 unused
+!   29 !ADC ROC#1 Sl#15 Ch#29 unused
+!   30 !ADC ROC#1 Sl#15 Ch#30 unused
+!   31 !ADC ROC#1 Sl#15 Ch#31 unused
+   32, 2, 32, 0  ! Paul Gueye
+   33, 2, 33, 0  ! Paul Gueye
+   34, 2, 34, 0  ! Paul Gueye
+   35, 2, 35, 0  ! Paul Gueye
+   36, 2, 36, 0  ! Paul Gueye
+   37, 2, 37, 0  ! Paul Gueye
+   38, 2, 38, 0  ! Paul Gueye
+   39, 2, 39, 0  ! Paul Gueye
+   40, 2, 40, 0  ! Paul Gueye
+   41, 2, 41, 0  ! Paul Gueye
+   42, 2, 42, 0  ! Paul Gueye
+   43, 2, 43, 0  ! Paul Gueye
+   44, 2, 44, 0  ! Paul Gueye
+   45, 2, 45, 0  ! Paul Gueye
+   46, 2, 46, 0  ! Paul Gueye
+   47, 2, 47, 0  ! Paul Gueye
+!   32 !ADC ROC#1 Sl#15 Ch#32 unused
+!   33 !ADC ROC#1 Sl#15 Ch#33 unused
+!   34 !ADC ROC#1 Sl#15 Ch#34 unused
+!   35 !ADC ROC#1 Sl#15 Ch#35 unused
+!   36 !ADC ROC#1 Sl#15 Ch#36 unused
+!   37 !ADC ROC#1 Sl#15 Ch#37 unused
+!   38 !ADC ROC#1 Sl#15 Ch#38 unused
+!   39 !ADC ROC#1 Sl#15 Ch#39 unused
+!   40 !ADC ROC#1 Sl#15 Ch#40 unused
+!   41 !ADC ROC#1 Sl#15 Ch#41 unused
+!   42 !ADC ROC#1 Sl#15 Ch#42 unused
+!   43 !ADC ROC#1 Sl#15 Ch#43 unused
+!   44 !ADC ROC#1 Sl#15 Ch#44 unused
+!   45 !ADC ROC#1 Sl#15 Ch#45 unused
+!   46 !ADC ROC#1 Sl#15 Ch#46 unused
+!   47 !ADC ROC#1 Sl#15 Ch#47 unused
+!   48 !ADC ROC#1 Sl#15 Ch#48 unused
+!   49 !ADC ROC#1 Sl#15 Ch#49 unused
+!   50 !ADC ROC#1 Sl#15 Ch#50 unused
+!   51 !ADC ROC#1 Sl#15 Ch#51 unused
+!   52 !ADC ROC#1 Sl#15 Ch#52 unused
+!   53 !ADC ROC#1 Sl#15 Ch#53 unused
+!   54 !ADC ROC#1 Sl#15 Ch#54 unused
+!   55 !ADC ROC#1 Sl#15 Ch#55 unused
+!   56 !ADC ROC#1 Sl#15 Ch#56 unused
+!   57 !ADC ROC#1 Sl#15 Ch#57 unused
+!   58 !ADC ROC#1 Sl#15 Ch#58 unused
+!   59 !ADC ROC#1 Sl#15 Ch#59 unused
+!   60 !ADC ROC#1 Sl#15 Ch#60 unused
+!   61 !ADC ROC#1 Sl#15 Ch#61 unused
+!   62 !ADC ROC#1 Sl#15 Ch#62 unused
+!   63 !ADC ROC#1 Sl#15 Ch#63 unused
+!
+!---------------------------------------------------------------------
+!=============================== SOS MAP =============================
+!............ This part copy from replay99 (Hamlet,19 Dec'02)............
+!
+!  REAL map for SOS Drift Chambers (SDC); J.R.Arrington 20-Mar-1995
+!                                               
+     ROC= 4   !ReadOutController (crate) for SOS (fbsos)
+!
+       Nsubadd= 96	!assume 96 channel modules
+       MASK= FFFFx      !hex mask - assume LeCroy masking (lowest 13 bits)
+       BSUB= 17         !begin channel info with bit#17
+!
+       detector= 11     !SDC
+!
+       slot= 1          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 1, 1	!chamber 1, U plane, 48 wires.
+ 1, 1, 2
+ 2, 1, 3
+ 3, 1, 4
+ 4, 1, 5
+ 5, 1, 6
+ 6, 1, 7
+ 7, 1, 8
+ 8, 1, 9
+ 9, 1, 10
+ 10, 1, 11
+ 11, 1, 12
+ 12, 1, 13
+ 13, 1, 14
+ 14, 1, 15
+ 15, 1, 16
+ 16, 1, 17
+ 17, 1, 18
+ 18, 1, 19
+ 19, 1, 20
+ 20, 1, 21
+ 21, 1, 22
+ 22, 1, 23
+ 23, 1, 24
+ 24, 1, 25
+ 25, 1, 26
+ 26, 1, 27
+ 27, 1, 28
+ 28, 1, 29
+ 29, 1, 30
+ 30, 1, 31
+ 31, 1, 32
+ 32, 1, 33
+ 33, 1, 34
+ 34, 1, 35
+ 35, 1, 36
+ 36, 1, 37
+ 37, 1, 38
+ 38, 1, 39
+ 39, 1, 40
+ 40, 1, 41
+ 41, 1, 42
+ 42, 1, 43
+ 43, 1, 44
+ 44, 1, 45
+ 45, 1, 46
+ 46, 1, 47
+ 47, 1, 48
+ 48, 2, 1	!chamber 1, U' plane, 48 wires.
+ 49, 2, 2
+ 50, 2, 3
+ 51, 2, 4
+ 52, 2, 5
+ 53, 2, 6
+ 54, 2, 7
+ 55, 2, 8
+ 56, 2, 9
+ 57, 2, 10
+ 58, 2, 11
+ 59, 2, 12
+ 60, 2, 13
+ 61, 2, 14
+ 62, 2, 15
+ 63, 2, 16
+ 64, 2, 17
+ 65, 2, 18
+ 66, 2, 19
+ 67, 2, 20
+ 68, 2, 21
+ 69, 2, 22
+ 70, 2, 23
+ 71, 2, 24
+ 72, 2, 25
+ 73, 2, 26
+ 74, 2, 27
+ 75, 2, 28
+ 76, 2, 29
+ 77, 2, 30
+ 78, 2, 31
+ 79, 2, 32
+ 80, 2, 33
+ 81, 2, 34
+ 82, 2, 35
+ 83, 2, 36
+ 84, 2, 37
+ 85, 2, 38
+ 86, 2, 39
+ 87, 2, 40
+ 88, 2, 41
+ 89, 2, 42
+ 90, 2, 43
+ 91, 2, 44
+ 92, 2, 45
+ 93, 2, 46
+ 94, 2, 47
+ 95, 2, 48
+!
+       slot= 2          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 5, 1	!chamber 1, V plane, 48 wires.
+ 1, 5, 2
+ 2, 5, 3
+ 3, 5, 4
+ 4, 5, 5
+ 5, 5, 6
+ 6, 5, 7
+ 7, 5, 8
+ 8, 5, 9
+ 9, 5, 10
+ 10, 5, 11
+ 11, 5, 12
+ 12, 5, 13
+ 13, 5, 14
+ 14, 5, 15
+ 15, 5, 16
+ 16, 5, 17
+ 17, 5, 18
+ 18, 5, 19
+ 19, 5, 20
+ 20, 5, 21
+ 21, 5, 22
+ 22, 5, 23
+ 23, 5, 24
+ 24, 5, 25
+ 25, 5, 26
+ 26, 5, 27
+ 27, 5, 28
+ 28, 5, 29
+ 29, 5, 30
+ 30, 5, 31
+ 31, 5, 32
+ 32, 5, 33
+ 33, 5, 34
+ 34, 5, 35
+ 35, 5, 36
+ 36, 5, 37
+ 37, 5, 38
+ 38, 5, 39
+ 39, 5, 40
+ 40, 5, 41
+ 41, 5, 42
+ 42, 5, 43
+ 43, 5, 44
+ 44, 5, 45
+ 45, 5, 46
+ 46, 5, 47
+ 47, 5, 48
+ 48, 6, 1	!chamber 1, V' plane, 48 wires.
+ 49, 6, 2
+ 50, 6, 3
+ 51, 6, 4
+ 52, 6, 5
+ 53, 6, 6
+ 54, 6, 7
+ 55, 6, 8
+ 56, 6, 9
+ 57, 6, 10
+ 58, 6, 11
+ 59, 6, 12
+ 60, 6, 13
+ 61, 6, 14
+ 62, 6, 15
+ 63, 6, 16
+ 64, 6, 17
+ 65, 6, 18
+ 66, 6, 19
+ 67, 6, 20
+ 68, 6, 21
+ 69, 6, 22
+ 70, 6, 23
+ 71, 6, 24
+ 72, 6, 25
+ 73, 6, 26
+ 74, 6, 27
+ 75, 6, 28
+ 76, 6, 29
+ 77, 6, 30
+ 78, 6, 31
+ 79, 6, 32
+ 80, 6, 33
+ 81, 6, 34
+ 82, 6, 35
+ 83, 6, 36
+ 84, 6, 37
+ 85, 6, 38
+ 86, 6, 39
+ 87, 6, 40
+ 88, 6, 41
+ 89, 6, 42
+ 90, 6, 43
+ 91, 6, 44
+ 92, 6, 45
+ 93, 6, 46
+ 94, 6, 47
+ 95, 6, 48
+!
+       slot= 4          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 3, 1	!chamber 1, X plane, 64 wires.
+ 1, 3, 2
+ 2, 3, 3
+ 3, 3, 4
+ 4, 3, 5
+ 5, 3, 6
+ 6, 3, 7
+ 7, 3, 8
+ 8, 3, 9
+ 9, 3, 10
+ 10, 3, 11
+ 11, 3, 12
+ 12, 3, 13
+ 13, 3, 14
+ 14, 3, 15
+ 15, 3, 16
+ 16, 3, 17
+ 17, 3, 18
+ 18, 3, 19
+ 19, 3, 20
+ 20, 3, 21
+ 21, 3, 22
+ 22, 3, 23
+ 23, 3, 24
+ 24, 3, 25
+ 25, 3, 26
+ 26, 3, 27
+ 27, 3, 28
+ 28, 3, 29
+ 29, 3, 30
+ 30, 3, 31
+ 31, 3, 32
+ 32, 3, 33
+ 33, 3, 34
+ 34, 3, 35
+ 35, 3, 36
+ 36, 3, 37
+ 37, 3, 38
+ 38, 3, 39
+ 39, 3, 40
+ 40, 3, 41
+ 41, 3, 42
+ 42, 3, 43
+ 43, 3, 44
+ 44, 3, 45
+ 45, 3, 46
+ 46, 3, 47
+ 47, 3, 48
+ 48, 3, 49
+ 49, 3, 50
+ 50, 3, 51
+ 51, 3, 52
+ 52, 3, 53
+ 53, 3, 54
+ 54, 3, 55
+ 55, 3, 56
+ 56, 3, 57
+ 57, 3, 58
+ 58, 3, 59
+ 59, 3, 60
+ 60, 3, 61
+ 61, 3, 62
+ 62, 3, 63
+ 63, 3, 64
+!
+       slot= 5          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 4, 1	!chamber 1, X' plane, 64 wires.
+ 1, 4, 2
+ 2, 4, 3
+ 3, 4, 4
+ 4, 4, 5
+ 5, 4, 6
+ 6, 4, 7
+ 7, 4, 8
+ 8, 4, 9
+ 9, 4, 10
+ 10, 4, 11
+ 11, 4, 12
+ 12, 4, 13
+ 13, 4, 14
+ 14, 4, 15
+ 15, 4, 16
+ 16, 4, 17
+ 17, 4, 18
+ 18, 4, 19
+ 19, 4, 20
+ 20, 4, 21
+ 21, 4, 22
+ 22, 4, 23
+ 23, 4, 24
+ 24, 4, 25
+ 25, 4, 26
+ 26, 4, 27
+ 27, 4, 28
+ 28, 4, 29
+ 29, 4, 30
+ 30, 4, 31
+ 31, 4, 32
+ 32, 4, 33
+ 33, 4, 34
+ 34, 4, 35
+ 35, 4, 36
+ 36, 4, 37
+ 37, 4, 38
+ 38, 4, 39
+ 39, 4, 40
+ 40, 4, 41
+ 41, 4, 42
+ 42, 4, 43
+ 43, 4, 44
+ 44, 4, 45
+ 45, 4, 46
+ 46, 4, 47
+ 47, 4, 48
+ 48, 4, 49
+ 49, 4, 50
+ 50, 4, 51
+ 51, 4, 52
+ 52, 4, 53
+ 53, 4, 54
+ 54, 4, 55
+ 55, 4, 56
+ 56, 4, 57
+ 57, 4, 58
+ 58, 4, 59
+ 59, 4, 60
+ 60, 4, 61
+ 61, 4, 62
+ 62, 4, 63
+ 63, 4, 64
+!
+       slot= 8          !SDC TDC
+!
+!       SDC plane (1)
+ 0, 7, 1	!chamber 2, U plane, 48 wires.
+ 1, 7, 2
+ 2, 7, 3
+ 3, 7, 4
+ 4, 7, 5
+ 5, 7, 6
+ 6, 7, 7
+ 7, 7, 8
+ 8, 7, 9
+ 9, 7, 10
+ 10, 7, 11
+ 11, 7, 12
+ 12, 7, 13
+ 13, 7, 14
+ 14, 7, 15
+ 15, 7, 16
+ 16, 7, 17
+ 17, 7, 18
+ 18, 7, 19
+ 19, 7, 20
+ 20, 7, 21
+ 21, 7, 22
+ 22, 7, 23
+ 23, 7, 24
+ 24, 7, 25
+ 25, 7, 26
+ 26, 7, 27
+ 27, 7, 28
+ 28, 7, 29
+ 29, 7, 30
+ 30, 7, 31
+ 31, 7, 32
+ 32, 7, 33
+ 33, 7, 34
+ 34, 7, 35
+ 35, 7, 36
+ 36, 7, 37
+ 37, 7, 38
+ 38, 7, 39
+ 39, 7, 40
+ 40, 7, 41
+ 41, 7, 42
+ 42, 7, 43
+ 43, 7, 44
+ 44, 7, 45
+ 45, 7, 46
+ 46, 7, 47
+ 47, 7, 48
+ 48, 8, 1	!chamber 2, U' plane, 48 wires.
+ 49, 8, 2
+ 50, 8, 3
+ 51, 8, 4
+ 52, 8, 5
+ 53, 8, 6
+ 54, 8, 7
+ 55, 8, 8
+ 56, 8, 9
+ 57, 8, 10
+ 58, 8, 11
+ 59, 8, 12
+ 60, 8, 13
+ 61, 8, 14
+ 62, 8, 15
+ 63, 8, 16
+ 64, 8, 17
+ 65, 8, 18
+ 66, 8, 19
+ 67, 8, 20
+ 68, 8, 21
+ 69, 8, 22
+ 70, 8, 23
+ 71, 8, 24
+ 72, 8, 25
+ 73, 8, 26
+ 74, 8, 27
+ 75, 8, 28
+ 76, 8, 29
+ 77, 8, 30
+ 78, 8, 31
+ 79, 8, 32
+ 80, 8, 33
+ 81, 8, 34
+ 82, 8, 35
+ 83, 8, 36
+ 84, 8, 37
+ 85, 8, 38
+ 86, 8, 39
+ 87, 8, 40
+ 88, 8, 41
+ 89, 8, 42
+ 90, 8, 43
+ 91, 8, 44
+ 92, 8, 45
+ 93, 8, 46
+ 94, 8, 47
+ 95, 8, 48
+!
+       slot= 9          !SDC TDC
+!
+!       SDC  plane (2)
+ 0, 11, 1	!chamber 2, V plane, 48 wires.
+ 1, 11, 2
+ 2, 11, 3
+ 3, 11, 4
+ 4, 11, 5
+ 5, 11, 6
+ 6, 11, 7
+ 7, 11, 8
+ 8, 11, 9
+ 9, 11, 10
+ 10, 11, 11
+ 11, 11, 12
+ 12, 11, 13
+ 13, 11, 14
+ 14, 11, 15
+ 15, 11, 16
+ 16, 11, 17
+ 17, 11, 18
+ 18, 11, 19
+ 19, 11, 20
+ 20, 11, 21
+ 21, 11, 22
+ 22, 11, 23
+ 23, 11, 24
+ 24, 11, 25
+ 25, 11, 26
+ 26, 11, 27
+ 27, 11, 28
+ 28, 11, 29
+ 29, 11, 30
+ 30, 11, 31
+ 31, 11, 32
+ 32, 11, 33
+ 33, 11, 34
+ 34, 11, 35
+ 35, 11, 36
+ 36, 11, 37
+ 37, 11, 38
+ 38, 11, 39
+ 39, 11, 40
+ 40, 11, 41
+ 41, 11, 42
+ 42, 11, 43
+ 43, 11, 44
+ 44, 11, 45
+ 45, 11, 46
+ 46, 11, 47
+ 47, 11, 48
+ 48, 12, 1	!chamber 2, V' plane, 48 wires.
+ 49, 12, 2
+ 50, 12, 3
+ 51, 12, 4
+ 52, 12, 5
+ 53, 12, 6
+ 54, 12, 7
+ 55, 12, 8
+ 56, 12, 9
+ 57, 12, 10
+ 58, 12, 11
+ 59, 12, 12
+ 60, 12, 13
+ 61, 12, 14
+ 62, 12, 15
+ 63, 12, 16
+ 64, 12, 17
+ 65, 12, 18
+ 66, 12, 19
+ 67, 12, 20
+ 68, 12, 21
+ 69, 12, 22
+ 70, 12, 23
+ 71, 12, 24
+ 72, 12, 25
+ 73, 12, 26
+ 74, 12, 27
+ 75, 12, 28
+ 76, 12, 29
+ 77, 12, 30
+ 78, 12, 31
+ 79, 12, 32
+ 80, 12, 33
+ 81, 12, 34
+ 82, 12, 35
+ 83, 12, 36
+ 84, 12, 37
+ 85, 12, 38
+ 86, 12, 39
+ 87, 12, 40
+ 88, 12, 41
+ 89, 12, 42
+ 90, 12, 43
+ 91, 12, 44
+ 92, 12, 45
+ 93, 12, 46
+ 94, 12, 47
+ 95, 12, 48
+!
+       slot= 11          !SDC TDC
+!
+!       SDC  plane (3)
+ 0, 9, 1	!chamber 2, X plane, 64 wires.
+ 1, 9, 2
+ 2, 9, 3
+ 3, 9, 4
+ 4, 9, 5
+ 5, 9, 6
+ 6, 9, 7
+ 7, 9, 8
+ 8, 9, 9
+ 9, 9, 10
+ 10, 9, 11
+ 11, 9, 12
+ 12, 9, 13
+ 13, 9, 14
+ 14, 9, 15
+ 15, 9, 16
+ 16, 9, 17
+ 17, 9, 18
+ 18, 9, 19
+ 19, 9, 20
+ 20, 9, 21
+ 21, 9, 22
+ 22, 9, 23
+ 23, 9, 24
+ 24, 9, 25
+ 25, 9, 26
+ 26, 9, 27
+ 27, 9, 28
+ 28, 9, 29
+ 29, 9, 30
+ 30, 9, 31
+ 31, 9, 32
+ 32, 9, 33
+ 33, 9, 34
+ 34, 9, 35
+ 35, 9, 36
+ 36, 9, 37
+ 37, 9, 38
+ 38, 9, 39
+ 39, 9, 40
+ 40, 9, 41
+ 41, 9, 42
+ 42, 9, 43
+ 43, 9, 44
+ 44, 9, 45
+ 45, 9, 46
+ 46, 9, 47
+ 47, 9, 48
+ 48, 9, 49
+ 49, 9, 50
+ 50, 9, 51
+ 51, 9, 52
+ 52, 9, 53
+ 53, 9, 54
+ 54, 9, 55
+ 55, 9, 56
+ 56, 9, 57
+ 57, 9, 58
+ 58, 9, 59
+ 59, 9, 60
+ 60, 9, 61
+ 61, 9, 62
+ 62, 9, 63
+ 63, 9, 64
+!
+       slot= 12          !SDC TDC
+!
+!       SDC  plane (4)
+ 0, 10, 1	!chamber 2, X' plane, 64 wires.
+ 1, 10, 2
+ 2, 10, 3
+ 3, 10, 4
+ 4, 10, 5
+ 5, 10, 6
+ 6, 10, 7
+ 7, 10, 8
+ 8, 10, 9
+ 9, 10, 10
+ 10, 10, 11
+ 11, 10, 12
+ 12, 10, 13
+ 13, 10, 14
+ 14, 10, 15
+ 15, 10, 16
+ 16, 10, 17
+ 17, 10, 18
+ 18, 10, 19
+ 19, 10, 20
+ 20, 10, 21
+ 21, 10, 22
+ 22, 10, 23
+ 23, 10, 24
+ 24, 10, 25
+ 25, 10, 26
+ 26, 10, 27
+ 27, 10, 28
+ 28, 10, 29
+ 29, 10, 30
+ 30, 10, 31
+ 31, 10, 32
+ 32, 10, 33
+ 33, 10, 34
+ 34, 10, 35
+ 35, 10, 36
+ 36, 10, 37
+ 37, 10, 38
+ 38, 10, 39
+ 39, 10, 40
+ 40, 10, 41
+ 41, 10, 42
+ 42, 10, 43
+ 43, 10, 44
+ 44, 10, 45
+ 45, 10, 46
+ 46, 10, 47
+ 47, 10, 48
+ 48, 10, 49
+ 49, 10, 50
+ 50, 10, 51
+ 51, 10, 52
+ 52, 10, 53
+ 53, 10, 54
+ 54, 10, 55
+ 55, 10, 56
+ 56, 10, 57
+ 57, 10, 58
+ 58, 10, 59
+ 59, 10, 60
+ 60, 10, 61
+ 61, 10, 62
+ 62, 10, 63
+ 63, 10, 64
+!
+!   SOS upstairs (SSCIN+SCAL+SCER) map    K.B.Beard 13-Jun-1994
+!
+    ROC= 3               !upstairs SOS crate (fbch2)
+!
+    detector= 12 !SSCIN
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+!
+ Slot= 22 ! TDC  
+  0, 1, 3, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#3 [TDC+]
+  1, 1, 5, 2 !TDC ROC#3 Sl#23 Ch#1 SSCIN pl#1 [X1] id sig#5 [TDC+]
+  2, 1, 7, 2 !TDC ROC#3 Sl#23 Ch#2 SSCIN pl#1 [X1] id sig#7 [TDC+]
+  3, 1, 9, 2 !TDC ROC#3 Sl#23 Ch#3 SSCIN pl#1 [X1] id sig#9 [TDC+]
+  4, 1, 2, 2 !TDC ROC#3 Sl#23 Ch#4 SSCIN pl#1 [X1] id sig#2 [TDC+]
+  5, 1, 4, 2 !TDC ROC#3 Sl#23 Ch#5 SSCIN pl#1 [X1] id sig#4 [TDC+]
+  6, 1, 6, 2 !TDC ROC#3 Sl#23 Ch#6 SSCIN pl#1 [X1] id sig#6 [TDC+]
+  7, 1, 8, 2 !TDC ROC#3 Sl#23 Ch#7 SSCIN pl#1 [X1] id sig#8 [TDC+]
+  8, 1, 3, 3 !TDC ROC#3 Sl#23 Ch#8 SSCIN pl#1 [X1] id sig#3 [TDC-]
+  9, 1, 5, 3 !TDC ROC#3 Sl#23 Ch#9 SSCIN pl#1 [X1] id sig#5 [TDC-]
+  10, 1, 7, 3 !TDC ROC#3 Sl#23 Ch#10 SSCIN pl#1 [X1] id sig#7 [TDC-]
+  11, 1, 9, 3 !TDC ROC#3 Sl#23 Ch#11 SSCIN pl#1 [X1] id sig#9 [TDC-]
+  12, 1, 2, 3 !TDC ROC#3 Sl#23 Ch#12 SSCIN pl#1 [X1] id sig#2 [TDC-]
+  13, 1, 4, 3 !TDC ROC#3 Sl#23 Ch#13 SSCIN pl#1 [X1] id sig#4 [TDC-]
+  14, 1, 6, 3 !TDC ROC#3 Sl#23 Ch#14 SSCIN pl#1 [X1] id sig#6 [TDC-]
+  15, 1, 8, 3 !TDC ROC#3 Sl#23 Ch#15 SSCIN pl#1 [X1] id sig#8 [TDC-]
+  16, 2, 3, 2 !TDC ROC#3 Sl#23 Ch#16 SSCIN pl#2 [Y1] id sig#3 [TDC+]
+  17, 2, 5, 2 !TDC ROC#3 Sl#23 Ch#17 SSCIN pl#2 [Y1] id sig#5 [TDC+]
+  18, 2, 7, 2 !TDC ROC#3 Sl#23 Ch#18 SSCIN pl#2 [Y1] id sig#7 [TDC+]
+  19, 2, 9, 2 !TDC ROC#3 Sl#23 Ch#19 SSCIN pl#2 [Y1] id sig#9 [TDC+]
+  20, 2, 2, 2 !TDC ROC#3 Sl#23 Ch#20 SSCIN pl#2 [Y1] id sig#2 [TDC+]
+  21, 2, 4, 2 !TDC ROC#3 Sl#23 Ch#21 SSCIN pl#2 [Y1] id sig#4 [TDC+]
+  22, 2, 6, 2 !TDC ROC#3 Sl#23 Ch#22 SSCIN pl#2 [Y1] id sig#6 [TDC+]
+  23, 2, 8, 2 !TDC ROC#3 Sl#23 Ch#23 SSCIN pl#2 [Y1] id sig#8 [TDC+]
+  24, 2, 3, 3 !TDC ROC#3 Sl#23 Ch#24 SSCIN pl#2 [Y1] id sig#3 [TDC-]
+  25, 2, 5, 3 !TDC ROC#3 Sl#23 Ch#25 SSCIN pl#2 [Y1] id sig#5 [TDC-]
+  26, 2, 7, 3 !TDC ROC#3 Sl#23 Ch#26 SSCIN pl#2 [Y1] id sig#7 [TDC-]
+  27, 2, 9, 3 !TDC ROC#3 Sl#23 Ch#27 SSCIN pl#2 [Y1] id sig#9 [TDC-]
+  28, 2, 2, 3 !TDC ROC#3 Sl#23 Ch#28 SSCIN pl#2 [Y1] id sig#2 [TDC-]
+  29, 2, 4, 3 !TDC ROC#3 Sl#23 Ch#29 SSCIN pl#2 [Y1] id sig#4 [TDC-]
+  30, 2, 6, 3 !TDC ROC#3 Sl#23 Ch#30 SSCIN pl#2 [Y1] id sig#6 [TDC-]
+  31, 2, 8, 3 !TDC ROC#3 Sl#23 Ch#31 SSCIN pl#2 [Y1] id sig#8 [TDC-]
+  32, 4, 3, 2 !TDC ROC#3 Sl#23 Ch#32 SSCIN pl#4 [Y2] id sig#3 [TDC+]
+  33, 4, 5, 2 !TDC ROC#3 Sl#23 Ch#33 SSCIN pl#4 [Y2] id sig#5 [TDC+]
+  34, 4, 7, 2 !TDC ROC#3 Sl#23 Ch#34 SSCIN pl#4 [Y2] id sig#7 [TDC+]
+  35, 4, 9, 2 !TDC ROC#3 Sl#23 Ch#35 SSCIN pl#4 [Y2] id sig#9 [TDC+]
+  36, 4, 2, 2 !TDC ROC#3 Sl#23 Ch#36 SSCIN pl#4 [Y2] id sig#2 [TDC+]
+  37, 4, 4, 2 !TDC ROC#3 Sl#23 Ch#37 SSCIN pl#4 [Y2] id sig#4 [TDC+]
+  38, 4, 6, 2 !TDC ROC#3 Sl#23 Ch#38 SSCIN pl#4 [Y2] id sig#6 [TDC+]
+  39, 4, 8, 2 !TDC ROC#3 Sl#23 Ch#39 SSCIN pl#4 [Y2] id sig#8 [TDC+]
+  40, 4, 3, 3 !TDC ROC#3 Sl#23 Ch#40 SSCIN pl#4 [Y2] id sig#3 [TDC-]
+  41, 4, 5, 3 !TDC ROC#3 Sl#23 Ch#41 SSCIN pl#4 [Y2] id sig#5 [TDC-]
+  42, 4, 7, 3 !TDC ROC#3 Sl#23 Ch#42 SSCIN pl#4 [Y2] id sig#7 [TDC-]
+  43, 4, 9, 3 !TDC ROC#3 Sl#23 Ch#43 SSCIN pl#4 [Y2] id sig#9 [TDC-]
+  44, 4, 2, 3 !TDC ROC#3 Sl#23 Ch#44 SSCIN pl#4 [Y2] id sig#2 [TDC-]
+  45, 4, 4, 3 !TDC ROC#3 Sl#23 Ch#45 SSCIN pl#4 [Y2] id sig#4 [TDC-]
+  46, 4, 6, 3 !TDC ROC#3 Sl#23 Ch#46 SSCIN pl#4 [Y2] id sig#6 [TDC-]
+  47, 4, 8, 3 !TDC ROC#3 Sl#23 Ch#47 SSCIN pl#4 [Y2] id sig#8 [TDC-]
+  48, 1, 1, 2 !TDC ROC#3 Sl#23 Ch#48 SSCIN pl#1 [X1] id sig#1 [TDC+]
+  49, 1, 1, 3 !TDC ROC#3 Sl#23 Ch#49 SSCIN pl#1 [X1] id sig#1 [TDC-]
+  50, 2, 1, 2 !TDC ROC#3 Sl#23 Ch#50 SSCIN pl#2 [Y1] id sig#1 [TDC+]
+  51, 2, 1, 3 !TDC ROC#3 Sl#23 Ch#51 SSCIN pl#2 [Y1] id sig#1 [TDC-]
+  52, 4, 1, 2 !TDC ROC#3 Sl#23 Ch#52 SSCIN pl#4 [Y2] id sig#1 [TDC+]
+  53, 4, 1, 3 !TDC ROC#3 Sl#23 Ch#53 SSCIN pl#4 [Y2] id sig#1 [TDC-]
+!  54 !TDC ROC#3 Sl#23 Ch#54 unused
+!  55 !TDC ROC#3 Sl#23 Ch#55 unused
+!  56 !TDC ROC#3 Sl#23 Ch#56 unused
+!  57 !TDC ROC#3 Sl#23 Ch#57 unused
+!  58 !TDC ROC#3 Sl#23 Ch#58 unused
+!  59 !TDC ROC#3 Sl#23 Ch#59 unused
+!  60 !TDC ROC#3 Sl#23 Ch#60 unused
+!  61 !TDC ROC#3 Sl#23 Ch#61 unused
+!  62 !TDC ROC#3 Sl#23 Ch#62 unused
+!  63 !TDC ROC#3 Sl#23 Ch#63 unused
+!
+!for run 8023, swapped HMS and SOS TDC so that TDC with first 8
+!channels dead would be here.  Moved connectors 1 and 2 to position
+!3 and 4.  Moved 3 singles channels (in connector3) to connector 2.
+
+ Slot= 20 ! TDC  
+  32, 3, 1, 2 !TDC ROC#3 Sl#21 Ch#0 SSCIN pl#3 [X2] id sig#1 [TDC+]
+  33, 3, 3, 2 !TDC ROC#3 Sl#21 Ch#1 SSCIN pl#3 [X2] id sig#3 [TDC+]
+  34, 3, 5, 2 !TDC ROC#3 Sl#21 Ch#2 SSCIN pl#3 [X2] id sig#5 [TDC+]
+  35, 3, 7, 2 !TDC ROC#3 Sl#21 Ch#3 SSCIN pl#3 [X2] id sig#7 [TDC+]
+  36, 3, 9, 2 !TDC ROC#3 Sl#21 Ch#4 SSCIN pl#3 [X2] id sig#9 [TDC+]
+  37, 3, 11, 2 !TDC ROC#3 Sl#21 Ch#5 SSCIN pl#3 [X2] id sig#11 [TDC+]
+  38, 3, 13, 2 !TDC ROC#3 Sl#21 Ch#6 SSCIN pl#3 [X2] id sig#13 [TDC+]
+  39, 3, 15, 2 !TDC ROC#3 Sl#21 Ch#7 SSCIN pl#3 [X2] id sig#15 [TDC+]
+  40, 3, 2, 2 !TDC ROC#3 Sl#21 Ch#8 SSCIN pl#3 [X2] id sig#2 [TDC+]
+  41, 3, 4, 2 !TDC ROC#3 Sl#21 Ch#9 SSCIN pl#3 [X2] id sig#4 [TDC+]
+  42, 3, 6, 2 !TDC ROC#3 Sl#21 Ch#10 SSCIN pl#3 [X2] id sig#6 [TDC+]
+  43, 3, 8, 2 !TDC ROC#3 Sl#21 Ch#11 SSCIN pl#3 [X2] id sig#8 [TDC+]
+  44, 3, 10, 2 !TDC ROC#3 Sl#21 Ch#12 SSCIN pl#3 [X2] id sig#10 [TDC+]
+  45, 3, 12, 2 !TDC ROC#3 Sl#21 Ch#13 SSCIN pl#3 [X2] id sig#12 [TDC+]
+  46, 3, 14, 2 !TDC ROC#3 Sl#21 Ch#14 SSCIN pl#3 [X2] id sig#14 [TDC+]
+  47, 3, 16, 2 !TDC ROC#3 Sl#21 Ch#15 SSCIN pl#3 [X2] id sig#16 [TDC+]
+  48, 3, 1, 3 !TDC ROC#3 Sl#21 Ch#16 SSCIN pl#3 [X2] id sig#1 [TDC-]
+  49, 3, 3, 3 !TDC ROC#3 Sl#21 Ch#17 SSCIN pl#3 [X2] id sig#3 [TDC-]
+  50, 3, 5, 3 !TDC ROC#3 Sl#21 Ch#18 SSCIN pl#3 [X2] id sig#5 [TDC-]
+  51, 3, 7, 3 !TDC ROC#3 Sl#21 Ch#19 SSCIN pl#3 [X2] id sig#7 [TDC-]
+  52, 3, 9, 3 !TDC ROC#3 Sl#21 Ch#20 SSCIN pl#3 [X2] id sig#9 [TDC-]
+  53, 3, 11, 3 !TDC ROC#3 Sl#21 Ch#21 SSCIN pl#3 [X2] id sig#11 [TDC-]
+  54, 3, 13, 3 !TDC ROC#3 Sl#21 Ch#22 SSCIN pl#3 [X2] id sig#13 [TDC-]
+  55, 3, 15, 3 !TDC ROC#3 Sl#21 Ch#23 SSCIN pl#3 [X2] id sig#15 [TDC-]
+  56, 3, 2, 3 !TDC ROC#3 Sl#21 Ch#24 SSCIN pl#3 [X2] id sig#2 [TDC-]
+  57, 3, 4, 3 !TDC ROC#3 Sl#21 Ch#25 SSCIN pl#3 [X2] id sig#4 [TDC-]
+  58, 3, 6, 3 !TDC ROC#3 Sl#21 Ch#26 SSCIN pl#3 [X2] id sig#6 [TDC-]
+  59, 3, 8, 3 !TDC ROC#3 Sl#21 Ch#27 SSCIN pl#3 [X2] id sig#8 [TDC-]
+  60, 3, 10, 3 !TDC ROC#3 Sl#21 Ch#28 SSCIN pl#3 [X2] id sig#10 [TDC-]
+  61, 3, 12, 3 !TDC ROC#3 Sl#21 Ch#29 SSCIN pl#3 [X2] id sig#12 [TDC-]
+  62, 3, 14, 3 !TDC ROC#3 Sl#21 Ch#30 SSCIN pl#3 [X2] id sig#14 [TDC-]
+  63, 3, 16, 3 !TDC ROC#3 Sl#21 Ch#31 SSCIN pl#3 [X2] id sig#16  [TDC-]
+!
+    detector= 15 !SMISC
+!
+  18, 1, 65, 0  ! 0 !TDC ROC#3 Sl#20 Ch#32 RF TDC.
+!
+    detector= 15 !SMISC
+!
+!       TDC module LeCroy 1872a
+    Nsubadd= 64
+    MASK= FFFx
+    BSUB= 16
+
+ Slot= 18 ! TDC  
+0, 1, 1, 0  ! 0 !TDC ROC#3 Sl#20 Ch#0 signal     {S1X}
+1, 1, 2, 0  ! 1 !TDC ROC#3 Sl#20 Ch#1 signal     {S1Y}
+2, 1, 3, 0  ! 2 !TDC ROC#3 Sl#20 Ch#2 signal     {S2X}
+3, 1, 4, 0  ! 3 !TDC ROC#3 Sl#20 Ch#3 signal     {S2Y}
+4, 1, 5, 0  ! 4 !TDC ROC#3 Sl#20 Ch#4 signal     {S1}
+5, 1, 6 ,0  ! 5 !TDC ROC#3 Sl#20 Ch#5 signal     {S2}
+6, 1, 7, 0  ! 6 !TDC ROC#3 Sl#20 Ch#6 unused     {MuonL}
+7, 1, 8, 0  ! 7 !TDC ROC#3 Sl#20 Ch#7 unused     {MuonR}
+8, 1, 9, 0  ! 8 !TDC ROC#3 Sl#20 Ch#8 signal     {HMSPRE}
+9, 1, 10, 0  ! 9 !TDC ROC#3 Sl#20 Ch#9 signal    {SOSPRE}
+10, 1, 11, 0  ! 10 !TDC ROC#3 Sl#20 Ch#10 signal {COINPRE}
+11, 1, 12, 0  ! 11 !TDC ROC#3 Sl#20 Ch#11 signal {PEDPRE}
+12, 1, 13, 0  ! 12 !TDC ROC#3 Sl#20 Ch#12 signal {HMSTRG}
+13, 1, 14, 0  ! 13 !TDC ROC#3 Sl#20 Ch#13 signal {SOSTRG}
+14, 1, 15, 0  ! 14 !TDC ROC#3 Sl#20 Ch#14 signal {COINTRG}
+15, 1, 16, 0  ! 15 !TDC ROC#3 Sl#20 Ch#15 signal {PEDTRG}
+
+  Slot= 18! TDC
+16, 1, 17, 0  ! 16 !TDC ROC#3 Sl#18 Ch#16 signal {sS1}           
+17, 1, 18, 0  ! 17 !TDC ROC#3 Sl#18 Ch#17 signal {sPRE50}        
+18, 1, 19, 0  ! 18 !TDC ROC#3 Sl#18 Ch#18 signal {sS2X}          
+19, 1, 20, 0  ! 19 !TDC ROC#3 Sl#18 Ch#19 signal {sPRE150}       
+20, 1, 21, 0  ! 20 !TDC ROC#3 Sl#18 Ch#20 signal {sS1X}          
+21, 1, 22, 0  ! 21 !TDC ROC#3 Sl#18 Ch#21 signal {sS2Y}          
+22, 1, 23, 0  ! 22 !TDC ROC#3 Sl#18 Ch#22 signal {sPRE100}       
+23, 1, 24, 0  ! 23 !TDC ROC#3 Sl#18 Ch#23 signal {sS1Y}          
+24, 1, 25, 0  ! 24 !TDC ROC#3 Sl#18 Ch#24 signal {sS2}           
+25, 1, 26, 0  ! 25 !TDC ROC#3 Sl#18 Ch#25 signal {sPRE200}       
+26, 1, 27, 0  ! 26 !TDC ROC#3 Sl#18 Ch#26 signal {sSTOF}         
+27, 1, 28, 0  ! 27 !TDC ROC#3 Sl#18 Ch#27 signal {sSCIN}         
+28, 1, 29, 0  ! 28 !TDC ROC#3 Sl#18 Ch#28 signal {sELREAL}       
+29, 1, 30, 0  ! 29 !TDC ROC#3 Sl#18 Ch#29 signal {sPIPRE}        
+30, 1, 31, 0  ! 30 !TDC ROC#3 Sl#18 Ch#30 signal {sELCLEAN}      
+31, 1, 32, 0  ! 31 !TDC ROC#3 Sl#18 Ch#31 signal {sPRETRG}       
+32, 1, 33, 0  ! 32 !TDC ROC#3 Sl#18 Ch#32 signal {BCM1}          
+33, 1, 34, 0  ! 33 !TDC ROC#3 Sl#18 Ch#33 signal {BCM2}          
+34, 1, 35, 0  ! 34 !TDC ROC#3 Sl#18 Ch#34 signal {BCM3}          
+35, 1, 36, 0  ! 35 !TDC ROC#3 Sl#18 Ch#35 signal {UNSER}         
+36, 1, 37, 0  ! 36 !TDC ROC#3 Sl#18 Ch#36 signal {CLOCK}         
+37, 1, 38, 0  ! 37 !TDC ROC#3 Sl#18 Ch#37 signal {1 MHz * 36??}  
+38, 1, 39, 0  ! 38 !TDC ROC#3 Sl#18 Ch#38 signal {sPICLEAN}      
+39, 1, 40, 0  ! 39 !TDC ROC#3 Sl#18 Ch#39 signal {sELCLEAN}      
+40, 1, 41, 0  ! 40 !TDC ROC#3 Sl#18 Ch#40 signal {sPION}         
+41, 1, 42, 0  ! 41 !TDC ROC#3 Sl#18 Ch#41 signal {sCER}          
+42, 1, 43, 0  ! 42 !TDC ROC#3 Sl#18 Ch#42 signal {sELHI}         
+43, 1, 44, 0  ! 43 !TDC ROC#3 Sl#18 Ch#43 signal {sELLO}         
+44, 1, 45, 0  ! 44 !TDC ROC#3 Sl#18 Ch#44 signal {sPRHI}         
+45, 1, 46, 0  ! 45 !TDC ROC#3 Sl#18 Ch#45 signal {sPRLO}         
+46, 1, 47, 0  ! 46 !TDC ROC#3 Sl#18 Ch#46 signal {sSHLO}         
+47, 1, 48, 0  ! 47 !TDC ROC#3 Sl#18 Ch#47 signal {PEDS+TRIGS?}   
+!
+!       ADC module LeCroy 1881M
+    Nsubadd= 64
+    MASK= 3FFFx
+    BSUB= 17
+!
+    detector= 12 !SSCIN
+ Slot= 9 ! ADC  
+  0, 1, 1, 0 !ADC ROC#3 Sl#9 Ch#0 SSCIN pl#1 [X1] id sig#1 [ADC+]
+  1, 1, 3, 0 !ADC ROC#3 Sl#9 Ch#1 SSCIN pl#1 [X1] id sig#3 [ADC+]
+  2, 1, 5, 0 !ADC ROC#3 Sl#9 Ch#2 SSCIN pl#1 [X1] id sig#5 [ADC+]
+  3, 1, 7, 0 !ADC ROC#3 Sl#9 Ch#3 SSCIN pl#1 [X1] id sig#7 [ADC+]
+  4, 1, 9, 0 !ADC ROC#3 Sl#9 Ch#4 SSCIN pl#1 [X1] id sig#9 [ADC+]
+!  5 !ADC ROC#3 Sl#9 Ch#5 unused
+!  6 !ADC ROC#3 Sl#9 Ch#6 unused
+!  7 !ADC ROC#3 Sl#9 Ch#7 unused
+  8, 1, 2, 0 !ADC ROC#3 Sl#9 Ch#8 SSCIN pl#1 [X1] id sig#2 [ADC+]
+  9, 1, 4, 0 !ADC ROC#3 Sl#9 Ch#9 SSCIN pl#1 [X1] id sig#4 [ADC+]
+  10, 1, 6, 0 !ADC ROC#3 Sl#9 Ch#10 SSCIN pl#1 [X1] id sig#6 [ADC+]
+  11, 1, 8, 0 !ADC ROC#3 Sl#9 Ch#11 SSCIN pl#1 [X1] id sig#8 [ADC+]
+!  12 !ADC ROC#3 Sl#9 Ch#12 unused
+!  13 !ADC ROC#3 Sl#9 Ch#13 unused
+!  14 !ADC ROC#3 Sl#9 Ch#14 unused
+!  15 !ADC ROC#3 Sl#9 Ch#15 unused
+  16, 1, 1, 1 !ADC ROC#3 Sl#9 Ch#16 SSCIN pl#1 [X1] id sig#1 [ADC-]
+  17, 1, 3, 1 !ADC ROC#3 Sl#9 Ch#17 SSCIN pl#1 [X1] id sig#3 [ADC-]
+  18, 1, 5, 1 !ADC ROC#3 Sl#9 Ch#18 SSCIN pl#1 [X1] id sig#5 [ADC-]
+  19, 1, 7, 1 !ADC ROC#3 Sl#9 Ch#19 SSCIN pl#1 [X1] id sig#7 [ADC-]
+  20, 1, 9, 1 !ADC ROC#3 Sl#9 Ch#20 SSCIN pl#1 [X1] id sig#9 [ADC-]
+!  21 !ADC ROC#3 Sl#9 Ch#21 unused
+!  22 !ADC ROC#3 Sl#9 Ch#22 unused
+!  23 !ADC ROC#3 Sl#9 Ch#23 unused
+  24, 1, 2, 1 !ADC ROC#3 Sl#9 Ch#24 SSCIN pl#1 [X1] id sig#2 [ADC-]
+  25, 1, 4, 1 !ADC ROC#3 Sl#9 Ch#25 SSCIN pl#1 [X1] id sig#4 [ADC-]
+  26, 1, 6, 1 !ADC ROC#3 Sl#9 Ch#26 SSCIN pl#1 [X1] id sig#6 [ADC-]
+  27, 1, 8, 1 !ADC ROC#3 Sl#9 Ch#27 SSCIN pl#1 [X1] id sig#8 [ADC-]
+!  28 !ADC ROC#3 Sl#9 Ch#28 unused
+!  29 !ADC ROC#3 Sl#9 Ch#29 unused
+!  30 !ADC ROC#3 Sl#9 Ch#30 unused
+!  31 !ADC ROC#3 Sl#9 Ch#31 unused
+  32, 2, 1, 0 !ADC ROC#3 Sl#9 Ch#32 SSCIN pl#2 [Y1] id sig#1 [ADC+]
+  33, 2, 3, 0 !ADC ROC#3 Sl#9 Ch#33 SSCIN pl#2 [Y1] id sig#3 [ADC+]
+  34, 2, 5, 0 !ADC ROC#3 Sl#9 Ch#34 SSCIN pl#2 [Y1] id sig#5 [ADC+]
+  35, 2, 7, 0 !ADC ROC#3 Sl#9 Ch#35 SSCIN pl#2 [Y1] id sig#7 [ADC+]
+  36, 2, 9, 0 !ADC ROC#3 Sl#9 Ch#36 SSCIN pl#2 [Y1] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#9 Ch#37 unused
+!  38 !ADC ROC#3 Sl#9 Ch#38 unused
+!  39 !ADC ROC#3 Sl#9 Ch#39 unused
+  40, 2, 2, 0 !ADC ROC#3 Sl#9 Ch#40 SSCIN pl#2 [Y1] id sig#2 [ADC+]
+  41, 2, 4, 0 !ADC ROC#3 Sl#9 Ch#41 SSCIN pl#2 [Y1] id sig#4 [ADC+]
+  42, 2, 6, 0 !ADC ROC#3 Sl#9 Ch#42 SSCIN pl#2 [Y1] id sig#6 [ADC+]
+  43, 2, 8, 0 !ADC ROC#3 Sl#9 Ch#43 SSCIN pl#2 [Y1] id sig#8 [ADC+]
+!  44 !ADC ROC#3 Sl#9 Ch#44 unused
+!  45 !ADC ROC#3 Sl#9 Ch#45 unused
+!  46 !ADC ROC#3 Sl#9 Ch#46 unused
+!  47 !ADC ROC#3 Sl#9 Ch#47 unused
+  48, 2, 1, 1 !ADC ROC#3 Sl#9 Ch#48 SSCIN pl#2 [Y1] id sig#1 [ADC-]
+  49, 2, 3, 1 !ADC ROC#3 Sl#9 Ch#49 SSCIN pl#2 [Y1] id sig#3 [ADC-]
+  50, 2, 5, 1 !ADC ROC#3 Sl#9 Ch#50 SSCIN pl#2 [Y1] id sig#5 [ADC-]
+  51, 2, 7, 1 !ADC ROC#3 Sl#9 Ch#51 SSCIN pl#2 [Y1] id sig#7 [ADC-]
+  52, 2, 9, 1 !ADC ROC#3 Sl#9 Ch#52 SSCIN pl#2 [Y1] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#9 Ch#53 unused
+!  54 !ADC ROC#3 Sl#9 Ch#54 unused
+!  55 !ADC ROC#3 Sl#9 Ch#55 unused
+  56, 2, 2, 1 !ADC ROC#3 Sl#9 Ch#56 SSCIN pl#2 [Y1] id sig#2 [ADC-]
+  57, 2, 4, 1 !ADC ROC#3 Sl#9 Ch#57 SSCIN pl#2 [Y1] id sig#4 [ADC-]
+  58, 2, 6, 1 !ADC ROC#3 Sl#9 Ch#58 SSCIN pl#2 [Y1] id sig#6 [ADC-]
+  59, 2, 8, 1 !ADC ROC#3 Sl#9 Ch#59 SSCIN pl#2 [Y1] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#9 Ch#60 unused
+!  61 !ADC ROC#3 Sl#9 Ch#61 unused
+!  62 !ADC ROC#3 Sl#9 Ch#62 unused
+!  63 !ADC ROC#3 Sl#9 Ch#63 unused
+!
+ Slot= 7 ! ADC  
+  0, 3, 1, 0 !ADC ROC#3 Sl#7 Ch#0 SSCIN pl#3 [X2] id sig#1 [ADC+]
+  1, 3, 3, 0 !ADC ROC#3 Sl#7 Ch#1 SSCIN pl#3 [X2] id sig#3 [ADC+]
+  2, 3, 5, 0 !ADC ROC#3 Sl#7 Ch#2 SSCIN pl#3 [X2] id sig#5 [ADC+]
+  3, 3, 7, 0 !ADC ROC#3 Sl#7 Ch#3 SSCIN pl#3 [X2] id sig#7 [ADC+]
+  4, 3, 9, 0 !ADC ROC#3 Sl#7 Ch#4 SSCIN pl#3 [X2] id sig#9 [ADC+]
+  5, 3, 11, 0 !ADC ROC#3 Sl#7 Ch#5 SSCIN pl#3 [X2] id sig#11 [ADC+]
+  6, 3, 13, 0 !ADC ROC#3 Sl#7 Ch#6 SSCIN pl#3 [X2] id sig#13 [ADC+]
+  7, 3, 15, 0 !ADC ROC#3 Sl#7 Ch#7 SSCIN pl#3 [X2] id sig#15 [ADC+]
+  8, 3, 2, 0 !ADC ROC#3 Sl#7 Ch#8 SSCIN pl#3 [X2] id sig#2 [ADC+]
+  9, 3, 4, 0 !ADC ROC#3 Sl#7 Ch#9 SSCIN pl#3 [X2] id sig#4 [ADC+]
+  10, 3, 6, 0 !ADC ROC#3 Sl#7 Ch#10 SSCIN pl#3 [X2] id sig#6 [ADC+]
+  11, 3, 8, 0 !ADC ROC#3 Sl#7 Ch#11 SSCIN pl#3 [X2] id sig#8 [ADC+]
+  12, 3, 10, 0 !ADC ROC#3 Sl#7 Ch#12 SSCIN pl#3 [X2] id sig#10 [ADC+]
+  13, 3, 12, 0 !ADC ROC#3 Sl#7 Ch#13 SSCIN pl#3 [X2] id sig#12 [ADC+]
+  14, 3, 14, 0 !ADC ROC#3 Sl#7 Ch#14 SSCIN pl#3 [X2] id sig#14 [ADC+]
+  15, 3, 16, 0 !ADC ROC#3 Sl#7 Ch#15 SSCIN pl#3 [X2] id sig#16 [ADC+]
+  16, 3, 1, 1 !ADC ROC#3 Sl#7 Ch#16 SSCIN pl#3 [X2] id sig#1 [ADC-]
+  17, 3, 3, 1 !ADC ROC#3 Sl#7 Ch#17 SSCIN pl#3 [X2] id sig#3 [ADC-]
+  18, 3, 5, 1 !ADC ROC#3 Sl#7 Ch#18 SSCIN pl#3 [X2] id sig#5 [ADC-]
+  19, 3, 7, 1 !ADC ROC#3 Sl#7 Ch#19 SSCIN pl#3 [X2] id sig#7 [ADC-]
+  20, 3, 9, 1 !ADC ROC#3 Sl#7 Ch#20 SSCIN pl#3 [X2] id sig#9 [ADC-]
+  21, 3, 11, 1 !ADC ROC#3 Sl#7 Ch#21 SSCIN pl#3 [X2] id sig#11 [ADC-]
+  22, 3, 13, 1 !ADC ROC#3 Sl#7 Ch#22 SSCIN pl#3 [X2] id sig#13 [ADC-]
+  23, 3, 15, 1 !ADC ROC#3 Sl#7 Ch#23 SSCIN pl#3 [X2] id sig#15 [ADC-]
+  24, 3, 2, 1 !ADC ROC#3 Sl#7 Ch#24 SSCIN pl#3 [X2] id sig#2 [ADC-]
+  25, 3, 4, 1 !ADC ROC#3 Sl#7 Ch#25 SSCIN pl#3 [X2] id sig#4 [ADC-]
+  26, 3, 6, 1 !ADC ROC#3 Sl#7 Ch#26 SSCIN pl#3 [X2] id sig#6 [ADC-]
+  27, 3, 8, 1 !ADC ROC#3 Sl#7 Ch#27 SSCIN pl#3 [X2] id sig#8 [ADC-]
+  28, 3, 10, 1 !ADC ROC#3 Sl#7 Ch#28 SSCIN pl#3 [X2] id sig#10 [ADC-]
+  29, 3, 12, 1 !ADC ROC#3 Sl#7 Ch#29 SSCIN pl#3 [X2] id sig#12 [ADC-]
+  30, 3, 14, 1 !ADC ROC#3 Sl#7 Ch#30 SSCIN pl#3 [X2] id sig#14 [ADC-]
+  31, 3, 16, 1 !ADC ROC#3 Sl#7 Ch#31 SSCIN pl#3 [X2] id sig#16 [ADC-]
+  32, 4, 1, 0 !ADC ROC#3 Sl#7 Ch#32 SSCIN pl#4 [Y2] id sig#1 [ADC+]
+  33, 4, 3, 0 !ADC ROC#3 Sl#7 Ch#33 SSCIN pl#4 [Y2] id sig#3 [ADC+]
+  34, 4, 5, 0 !ADC ROC#3 Sl#7 Ch#34 SSCIN pl#4 [Y2] id sig#5 [ADC+]
+  35, 4, 7, 0 !ADC ROC#3 Sl#7 Ch#35 SSCIN pl#4 [Y2] id sig#7 [ADC+]
+  36, 4, 9, 0 !ADC ROC#3 Sl#7 Ch#36 SSCIN pl#4 [Y2] id sig#9 [ADC+]
+!  37 !ADC ROC#3 Sl#7 Ch#37 unused
+!  38 !ADC ROC#3 Sl#7 Ch#38 unused
+!  39 !ADC ROC#3 Sl#7 Ch#39 unused
+  40, 4, 2, 0 !ADC ROC#3 Sl#7 Ch#40 SSCIN pl#4 [Y2] id sig#2 [ADC+]
+  41, 4, 4, 0 !ADC ROC#3 Sl#7 Ch#41 SSCIN pl#4 [Y2] id sig#4 [ADC+]
+  42, 4, 6, 0 !ADC ROC#3 Sl#7 Ch#42 SSCIN pl#4 [Y2] id sig#6 [ADC+]
+!  43, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+] DEAD CH!
+!  44 !ADC ROC#3 Sl#7 Ch#44 unused
+!  45 !ADC ROC#3 Sl#7 Ch#45 unused
+!  46 !ADC ROC#3 Sl#7 Ch#46 unused
+  47, 4, 8, 0 !ADC ROC#3 Sl#7 Ch#43 SSCIN pl#4 [Y2] id sig#8 [ADC+]
+  48, 4, 1, 1 !ADC ROC#3 Sl#7 Ch#48 SSCIN pl#4 [Y2] id sig#1 [ADC-]
+  49, 4, 3, 1 !ADC ROC#3 Sl#7 Ch#49 SSCIN pl#4 [Y2] id sig#3 [ADC-]
+  50, 4, 5, 1 !ADC ROC#3 Sl#7 Ch#50 SSCIN pl#4 [Y2] id sig#5 [ADC-]
+  51, 4, 7, 1 !ADC ROC#3 Sl#7 Ch#51 SSCIN pl#4 [Y2] id sig#7 [ADC-]
+  52, 4, 9, 1 !ADC ROC#3 Sl#7 Ch#52 SSCIN pl#4 [Y2] id sig#9 [ADC-]
+!  53 !ADC ROC#3 Sl#7 Ch#53 unused
+!  54 !ADC ROC#3 Sl#7 Ch#54 unused
+!  55 !ADC ROC#3 Sl#7 Ch#55 unused
+  56, 4, 2, 1 !ADC ROC#3 Sl#7 Ch#56 SSCIN pl#4 [Y2] id sig#2 [ADC-]
+  57, 4, 4, 1 !ADC ROC#3 Sl#7 Ch#57 SSCIN pl#4 [Y2] id sig#4 [ADC-]
+  58, 4, 6, 1 !ADC ROC#3 Sl#7 Ch#58 SSCIN pl#4 [Y2] id sig#6 [ADC-]
+  59, 4, 8, 1 !ADC ROC#3 Sl#7 Ch#59 SSCIN pl#4 [Y2] id sig#8 [ADC-]
+!  60 !ADC ROC#3 Sl#7 Ch#60 unused
+!  61 !ADC ROC#3 Sl#7 Ch#61 unused
+!  62 !ADC ROC#3 Sl#7 Ch#62 unused
+!  63 !ADC ROC#3 Sl#7 Ch#63 unused
+!
+    detector= 14 !SCAL
+!
+ Slot= 1 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#1 Ch#0 SCAL column#1 row#1
+  1, 1, 2 !ADC ROC#3 Sl#1 Ch#1 SCAL column#1 row#2
+  2, 1, 3 !ADC ROC#3 Sl#1 Ch#2 SCAL column#1 row#3
+  3, 1, 4 !ADC ROC#3 Sl#1 Ch#3 SCAL column#1 row#4
+  4, 1, 5 !ADC ROC#3 Sl#1 Ch#4 SCAL column#1 row#5
+  5, 1, 6 !ADC ROC#3 Sl#1 Ch#5 SCAL column#1 row#6
+  6, 1, 7 !ADC ROC#3 Sl#1 Ch#6 SCAL column#1 row#7
+  7, 1, 8 !ADC ROC#3 Sl#1 Ch#7 SCAL column#1 row#8
+  8, 1, 9 !ADC ROC#3 Sl#1 Ch#8 SCAL column#1 row#9
+  9, 1, 10 !ADC ROC#3 Sl#1 Ch#9 SCAL column#1 row#10
+  10, 1, 11 !ADC ROC#3 Sl#1 Ch#10 SCAL column#1 row#11
+!  11 !ADC ROC#3 Sl#1 Ch#11 unused
+!  12 !ADC ROC#3 Sl#1 Ch#12 unused
+!  13 !ADC ROC#3 Sl#1 Ch#13 unused
+!  14 !ADC ROC#3 Sl#1 Ch#14 unused
+!  15 !ADC ROC#3 Sl#1 Ch#15 unused
+  16, 2, 1 !ADC ROC#3 Sl#1 Ch#16 SCAL column#2 row#1
+  17, 2, 2 !ADC ROC#3 Sl#1 Ch#17 SCAL column#2 row#2
+  18, 2, 3 !ADC ROC#3 Sl#1 Ch#18 SCAL column#2 row#3
+  19, 2, 4 !ADC ROC#3 Sl#1 Ch#19 SCAL column#2 row#4
+  20, 2, 5 !ADC ROC#3 Sl#1 Ch#20 SCAL column#2 row#5
+  21, 2, 6 !ADC ROC#3 Sl#1 Ch#21 SCAL column#2 row#6
+  22, 2, 7 !ADC ROC#3 Sl#1 Ch#22 SCAL column#2 row#7
+  23, 2, 8 !ADC ROC#3 Sl#1 Ch#23 SCAL column#2 row#8
+  24, 2, 9 !ADC ROC#3 Sl#1 Ch#24 SCAL column#2 row#9
+  25, 2, 10 !ADC ROC#3 Sl#1 Ch#25 SCAL column#2 row#10
+  26, 2, 11 !ADC ROC#3 Sl#1 Ch#26 SCAL column#2 row#11
+!  27 !ADC ROC#3 Sl#1 Ch#27 unused
+!  28 !ADC ROC#3 Sl#1 Ch#28 unused
+!  29 !ADC ROC#3 Sl#1 Ch#29 unused
+!  30 !ADC ROC#3 Sl#1 Ch#30 unused
+!  31 !ADC ROC#3 Sl#1 Ch#31 unused
+!  32, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1  
+  44, 3, 1 !ADC ROC#3 Sl#1 Ch#32 SCAL column#3 row#1
+  33, 3, 2 !ADC ROC#3 Sl#1 Ch#33 SCAL column#3 row#2
+  34, 3, 3 !ADC ROC#3 Sl#1 Ch#34 SCAL column#3 row#3
+  35, 3, 4 !ADC ROC#3 Sl#1 Ch#35 SCAL column#3 row#4
+  36, 3, 5 !ADC ROC#3 Sl#1 Ch#36 SCAL column#3 row#5
+  37, 3, 6 !ADC ROC#3 Sl#1 Ch#37 SCAL column#3 row#6
+  38, 3, 7 !ADC ROC#3 Sl#1 Ch#38 SCAL column#3 row#7
+  39, 3, 8 !ADC ROC#3 Sl#1 Ch#39 SCAL column#3 row#8
+  40, 3, 9 !ADC ROC#3 Sl#1 Ch#40 SCAL column#3 row#9
+  41, 3, 10 !ADC ROC#3 Sl#1 Ch#41 SCAL column#3 row#10
+  42, 3, 11 !ADC ROC#3 Sl#1 Ch#42 SCAL column#3 row#11
+!  43 !ADC ROC#3 Sl#1 Ch#43 unused
+!  44 !ADC ROC#3 Sl#1 Ch#44 unused
+!  45 !ADC ROC#3 Sl#1 Ch#45 unused
+!  46 !ADC ROC#3 Sl#1 Ch#46 unused
+!  47 !ADC ROC#3 Sl#1 Ch#47 unused
+
+!sD1 was being lost in the ADC delay lines.  Move to channel #15.
+!  48, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!
+  49, 4, 2 !ADC ROC#3 Sl#1 Ch#49 SCAL column#4 row#2
+  50, 4, 3 !ADC ROC#3 Sl#1 Ch#50 SCAL column#4 row#3
+  51, 4, 4 !ADC ROC#3 Sl#1 Ch#51 SCAL column#4 row#4
+  52, 4, 5 !ADC ROC#3 Sl#1 Ch#52 SCAL column#4 row#5
+  53, 4, 6 !ADC ROC#3 Sl#1 Ch#53 SCAL column#4 row#6
+  54, 4, 7 !ADC ROC#3 Sl#1 Ch#54 SCAL column#4 row#7
+  55, 4, 8 !ADC ROC#3 Sl#1 Ch#55 SCAL column#4 row#8
+  56, 4, 9 !ADC ROC#3 Sl#1 Ch#56 SCAL column#4 row#9
+  57, 4, 10 !ADC ROC#3 Sl#1 Ch#57 SCAL column#4 row#10
+  58, 4, 11 !ADC ROC#3 Sl#1 Ch#58 SCAL column#4 row#11
+!  59 !ADC ROC#3 Sl#1 Ch#59 unused
+!  60 !ADC ROC#3 Sl#1 Ch#60 unused
+!  61 !ADC ROC#3 Sl#1 Ch#61 unused
+!  62 !ADC ROC#3 Sl#1 Ch#62 unused
+  62, 4, 1 !ADC ROC#3 Sl#1 Ch#48 SCAL column#4 row#1
+!  63 !ADC ROC#3 Sl#1 Ch#63 unused
+ detector= 15   !smisc  -  photodiode for laser gain calibration system.
+ 63, 2, 1, 0    !2,1,0 stands for: 2=adc,channel#1,0=dummy(pos vs. neg).
+!
+detector= 14 !SCAL
+Slot= 5 ! ADC  Second set of tubes on first two layers
+!  0, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  12, 1, 1, 1 !ADC ROC#3 Sl#5 Ch#0 SCAL col#1 row#1 (0 An-01)
+  1, 1, 2, 1 !ADC ROC#3 Sl#5 Ch#1 SCAL col#1 row#2 (1 An-02)
+  2, 1, 3, 1 !ADC ROC#3 Sl#5 Ch#2 SCAL col#1 row#3 (2 An-03)
+  3, 1, 4, 1 !ADC ROC#3 Sl#5 Ch#3 SCAL col#1 row#4 (3 An-04)
+  4, 1, 5, 1 !ADC ROC#3 Sl#5 Ch#4 SCAL col#1 row#5 (4 An-05)
+  5, 1, 6, 1 !ADC ROC#3 Sl#5 Ch#5 SCAL col#1 row#6 (5 An-06)
+  6, 1, 7, 1 !ADC ROC#3 Sl#5 Ch#6 SCAL col#1 row#7 (6 An-07)
+  7, 1, 8, 1 !ADC ROC#3 Sl#5 Ch#7 SCAL col#1 row#8 (7 An-08)
+  8, 1, 9, 1 !ADC ROC#3 Sl#5 Ch#8 SCAL col#1 row#9 (8 An-09)
+  9, 1, 10, 1 !ADC ROC#3 Sl#5 Ch#9 SCAL col#1 row#10 (9 An-10)
+  10, 1, 11, 1 !ADC ROC#3 Sl#5 Ch#10 SCAL col#1 row#11 (10 An-11)
+!   11 !ADC ROC#3 Sl#5 Ch#11 unused
+!   12 !ADC ROC#3 Sl#5 Ch#12 unused
+!   13 !ADC ROC#3 Sl#5 Ch#13 unused
+!   14 !ADC ROC#3 Sl#5 Ch#14 unused
+!   15 !ADC ROC#3 Sl#5 Ch#15 unused
+  16, 2, 1, 1 !ADC ROC#3 Sl#5 Ch#16 SCAL col#2 row#1 (16 Bn-01)
+  17, 2, 2, 1 !ADC ROC#3 Sl#5 Ch#17 SCAL col#2 row#2 (17 Bn-02)
+  18, 2, 3, 1 !ADC ROC#3 Sl#5 Ch#18 SCAL col#2 row#3 (18 Bn-03)
+  19, 2, 4, 1 !ADC ROC#3 Sl#5 Ch#19 SCAL col#2 row#4 (19 Bn-04)
+  20, 2, 5, 1 !ADC ROC#3 Sl#5 Ch#20 SCAL col#2 row#5 (20 Bn-05)
+  21, 2, 6, 1 !ADC ROC#3 Sl#5 Ch#21 SCAL col#2 row#6 (21 Bn-06)
+  22, 2, 7, 1 !ADC ROC#3 Sl#5 Ch#22 SCAL col#2 row#7 (22 Bn-07)
+  23, 2, 8, 1 !ADC ROC#3 Sl#5 Ch#23 SCAL col#2 row#8 (23 Bn-08)
+  24, 2, 9, 1 !ADC ROC#3 Sl#5 Ch#24 SCAL col#2 row#9 (24 Bn-09)
+  25, 2, 10, 1 !ADC ROC#3 Sl#5 Ch#25 SCAL col#2 row#10 (25 Bn-10)
+  26, 2, 11, 1 !ADC ROC#3 Sl#5 Ch#26 SCAL col#2 row#11 (26 Bn-11)
+!  27 !ADC ROC#3 Sl#5 Ch#27 unused
+!  28 !ADC ROC#3 Sl#5 Ch#28 unused
+!  29 !ADC ROC#3 Sl#5 Ch#29 unused
+!  30 !ADC ROC#3 Sl#5 Ch#30 unused
+!  31 !ADC ROC#3 Sl#5 Ch#31 unused
+!
+    detector= 13 !SCER
+!
+ Slot= 3 ! ADC  
+  0, 1, 1 !ADC ROC#3 Sl#3 Ch#0 SCER tube#1
+  1, 1, 2 !ADC ROC#3 Sl#3 Ch#1 SCER tube#2
+  2, 1, 3 !ADC ROC#3 Sl#3 Ch#2 SCER tube#3
+  3, 1, 4 !ADC ROC#3 Sl#3 Ch#3 SCER tube#4
+detector=15 ! SMISC helicity stuff mkj 5/15/03
+!           ! muon det added 6/17/03
+  4, 2, 5,0 !  4 !ADC ROC#3 Sl#3 Ch#4 unused
+  5, 2, 6,0 !  5 !ADC ROC#3 Sl#3 Ch#5 unused
+!  6 !ADC ROC#3 Sl#3 Ch#6 unused
+!  7 !ADC ROC#3 Sl#3 Ch#7 unused
+!  8 !ADC ROC#3 Sl#3 Ch#8 unused
+8,2,2,0  ! mps  clock
+!  9 !ADC ROC#3 Sl#3 Ch#9 unused
+!  10 !ADC ROC#3 Sl#3 Ch#10 unused
+!  11 !ADC ROC#3 Sl#3 Ch#11 unused
+!  12 !ADC ROC#3 Sl#3 Ch#12 unused
+12,2,3,0  ! H+ signal
+15,2,4,0  ! H- signal
+!  13 !ADC ROC#3 Sl#3 Ch#13 unused
+!  14 !ADC ROC#3 Sl#3 Ch#14 unused
+!  15 !ADC ROC#3 Sl#3 Ch#15 unused
+  ! 16 !ADC ROC#3 Sl#3 Ch#16 signal {A01}
+  ! 17 !ADC ROC#3 Sl#3 Ch#17 signal {A02}
+  ! 18 !ADC ROC#3 Sl#3 Ch#18 signal {A03}
+  ! 19 !ADC ROC#3 Sl#3 Ch#19 signal {A04}
+  ! 20 !ADC ROC#3 Sl#3 Ch#20 signal {A05}
+  ! 21 !ADC ROC#3 Sl#3 Ch#21 signal {A06}
+  ! 22 !ADC ROC#3 Sl#3 Ch#22 signal {A07}
+  ! 23 !ADC ROC#3 Sl#3 Ch#23 signal {A08}
+  ! 24 !ADC ROC#3 Sl#3 Ch#24 signal {A09}
+  ! 25 !ADC ROC#3 Sl#3 Ch#25 signal {A10}
+  ! 26 !ADC ROC#3 Sl#3 Ch#26 signal {A11}
+  ! 27 !ADC ROC#3 Sl#3 Ch#27 signal {A12}
+  ! 28 !ADC ROC#3 Sl#3 Ch#28 signal {A13}
+  ! 29 !ADC ROC#3 Sl#3 Ch#29 signal {A14}
+  ! 30 !ADC ROC#3 Sl#3 Ch#30 signal {A15}
+  ! 31 !ADC ROC#3 Sl#3 Ch#31 signal {A16}
+!
+!........................................................
+! SAER took out from SOS detector hut (Hamlet, 21 Dec'02)
+!
+!    detector= 16 !SAER
+!
+!  32 !ADC ROC#3 Sl#3 Ch#32 DEAD!!!!
+!  33 !ADC ROC#3 Sl#3 Ch#33 unused spare
+! 34, 1, 1, 0 !ADC ROC#3 Sl#3 Ch#34 signal pos 1
+! 35, 1, 2, 0 !ADC ROC#3 Sl#3 Ch#35 signal pos 2
+! 36, 1, 3, 0 !ADC ROC#3 Sl#3 Ch#36 signal pos 3
+! 37, 1, 4, 0 !ADC ROC#3 Sl#3 Ch#37 signal pos 4
+! 38, 1, 5, 0 !ADC ROC#3 Sl#3 Ch#38 signal pos 5
+! 39, 1, 6, 0 !ADC ROC#3 Sl#3 Ch#39 signal pos 6
+! 40, 1, 7, 0 !ADC ROC#3 Sl#3 Ch#40 signal pos 7
+! 41, 1, 1, 1 !ADC ROC#3 Sl#3 Ch#41 signal neg 1
+! 42, 1, 2, 1 !ADC ROC#3 Sl#3 Ch#42 signal neg 2
+! 43, 1, 3, 1 !ADC ROC#3 Sl#3 Ch#43 signal neg 3
+! 44, 1, 4, 1 !ADC ROC#3 Sl#3 Ch#44 signal neg 4
+! 45, 1, 5, 1 !ADC ROC#3 Sl#3 Ch#45 signal neg 5
+! 46, 1, 6, 1 !ADC ROC#3 Sl#3 Ch#46 signal neg 6
+! 47, 1, 7, 1 !ADC ROC#3 Sl#3 Ch#47 signal neg 7 
+! 48, 1, 8, 0 !ADC ROC#3 Sl#3 Ch#48 amplified signal pos 1
+! 49, 1, 9, 0 !ADC ROC#3 Sl#3 Ch#49 amplified signal pos 2
+! 50, 1, 10, 0 !ADC ROC#3 Sl#3 Ch#50 amplified signal pos 3
+! 51, 1, 11, 0 !ADC ROC#3 Sl#3 Ch#51 amplified signal pos 4
+! 52, 1, 12, 0 !ADC ROC#3 Sl#3 Ch#52 amplified signal pos 5
+! 53, 1, 13, 0 !ADC ROC#3 Sl#3 Ch#53 amplified signal pos 6
+! 54, 1, 14, 0 !ADC ROC#3 Sl#3 Ch#54 amplified signal pos 7
+! 55, 1, 15, 0 !ADC ROC#3 Sl#3 Ch#62 amplified signal sum 1-7
+! 56, 1, 8, 1 !ADC ROC#3 Sl#3 Ch#55 amplified signal neg 1
+! 57, 1, 9, 1 !ADC ROC#3 Sl#3 Ch#56 amplified signal neg 2
+! 58, 1, 10, 1 !ADC ROC#3 Sl#3 Ch#57 amplified signal neg 3
+! 59, 1, 11, 1 !ADC ROC#3 Sl#3 Ch#58 amplified signal neg 4
+! 60, 1, 12, 1 !ADC ROC#3 Sl#3 Ch#59 amplified signal neg 5
+! 61, 1, 13, 1 !ADC ROC#3 Sl#3 Ch#60 amplified signal neg 6
+! 62, 1, 14, 1 !ADC ROC#3 Sl#3 Ch#61 amplified signal neg 7
+! 63, 1, 15, 1 !ADC ROC#3 Sl#3 Ch#63 amplified signal sum 8-14
+!
+
+
+
+
+
+
+
+
diff --git a/examples/PARAM/52949/gbeam.param b/examples/PARAM/52949/gbeam.param
new file mode 100644
index 0000000000000000000000000000000000000000..fb15048b10b2aaa5944c300671dd6b0a24bbeb55
--- /dev/null
+++ b/examples/PARAM/52949/gbeam.param
@@ -0,0 +1,96 @@
+;                    BPM calibration constants
+;                    =========================
+  guse_bpm_in_recon  = 0   ; if 1 use bpm information for reconstruction
+  guse_bpmc = 1  ; if 1 use all 3 bpm info, if 0 use bpm A and B 
+  gbpm_sample  = 500 ; number of events, which are used for average 
+                     ; beam position ( <5000 ). Optimal value dep. on rate
+
+; the names are based on Paul Gueye's 'Status of the actual Beam Position
+;                   Monitors in the Hall C Beamline', December 1, 1995.
+; (mkj) apr-4-03 kappa,alpha and off for 3rd bpm are guesses,
+; need to find right values.
+;
+;  gbpm_kappa    = 1.85 ,1.85,1.85     ; sensitivity in cm
+gbpm_kappa    = 2.00 ,1.95,1.85  ; modified mkj 4/9/03
+  gbpm_alpha_x = 1.8192,0.7330 ,0.7   ; calibration gain: we may get them from the
+  gbpm_alpha_y = 1.0063,0.8935 ,0.7   ;  EPICS events, right now that's according to Paul's note
+
+; the following offsets get added to the calculated positions
+;  gbpm_x_off = -0.011,-0.004,0.      ; in cm: survey according to Paul's note
+;  gbpm_y_off = +0.052,+0.056,0.
+; From Dahlberg survey DT_C853 Apr 7, 2003
+gbpm_x_off = 0.017+.412,0.061-.353,0.037
+gbpm_y_off = 0.037+.381,-0.04-.211,0.028
+
+; average beam positions: only used if 'guse_bpm_in_recon=0' 
+;  gbeam_xoff  = +0.18
+  gbeam_xoff  = +0.00
+  gbeam_xpoff = +0.00
+  gbeam_yoff  = +0.00
+  gbeam_ypoff = +0.00
+
+; spectrometers would like to see this positions (from optics studies) 
+; we treat SOS and HMS the same, however, we may change this if necessary
+;  gspec_xoff  = +0.18
+  gspec_xoff  = +0.00
+  gspec_xpoff = +0.00
+  gspec_yoff  = +0.00
+  gspec_ypoff = +0.00
+
+; Pedestals for BPM ADCs: from cosmic run #10933, 10/3/96, book XI-137
+  gbpm_xp_ped = 431.9,331.0,0.  ; these pedestals have to be determined
+  gbpm_xm_ped = 514.7,350.6,0.  ; from runs with no beam in the cavities,
+  gbpm_yp_ped = 406.9,358.8,0.  ; e.g. cosmic runs.
+  gbpm_ym_ped = 499.7,292.7,0. ;
+
+; positions of BPMs relative to target (from Paul's note)
+  gbpm_zpos = 345.5,166.3,0.   ; cm
+
+
+;             Fast Raster calibration constants
+;             =================================
+
+; Various fast raster quantities: gUse* are flags
+
+  gusefr               = 1  ; if 1 correct for FRY in reconstruction
+
+  guse_frdefault       = 1  ; if 1 do no phase correction (default)
+                                ;if 0 apply phase correction 
+;      gfr_cal_mom      = 3.245  ; = beam momnetum during calibration run 
+;      gfrx_adcpercm    = 11328. ; = FR channels per cm deflection on target
+;      gfry_adcpercm    = 10708. ; from run 9981, August 25, 1996, book X-22
+
+      gfr_cal_mom      = 2.038  ; = beam momnetum during calibration run 
+      gfrx_adcpercm    = 4364.7 ; = FR channels per cm deflection on target
+      gfry_adcpercm    = 5471.9 ; from harp scan (H00A), June 19, 2004
+
+
+      gfrx_dphase      = 0.0    ; phase shift (never measured for x so far) 
+      gFrx_synccut     = 0.     ; should be zero if applied on centered distr.
+      gfrx_adcmax      = 1000   ; ADC amplitude in channels.
+      gfrx_maxsize     = 0.1    ; fast raster amplitude in centimeter.
+
+      gfry_dphase      = 5.8    ; phase shift 
+      gFry_synccut     = 0.     ; should be zero if applied on centered distr.
+      gfry_adcmax      = 1000   ; ADC amplitude in channels.
+      gfry_maxsize     = 0.1    ; fast raster amplitude in centimeter.
+
+; The latest FR phase analysis from spring '96 showed, that there is no
+; measurable phase shift. During early running (E91-13, E89-12) the FRY-phase
+; was determined to be 5.8 degree.
+
+; positions of FR magnets relative to target
+  gfrx_dist  = 2111   ; cm
+  gfry_dist  = 2071   ; cm
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/PARAM/52949/gdebug.param b/examples/PARAM/52949/gdebug.param
new file mode 100644
index 0000000000000000000000000000000000000000..7ac0e0193b088c6ff2b8c5fd039ebfa81736a445
--- /dev/null
+++ b/examples/PARAM/52949/gdebug.param
@@ -0,0 +1,3 @@
+  gmisc_min_peds = 500
+
+  gelossdebug = 0	;eloss debug (0=off,1=on)
diff --git a/examples/PARAM/52949/general.param b/examples/PARAM/52949/general.param
new file mode 100644
index 0000000000000000000000000000000000000000..dbede2c5760c343c5382f0ff79e5cf7cf96769c4
--- /dev/null
+++ b/examples/PARAM/52949/general.param
@@ -0,0 +1,40 @@
+#real raddeg
+raddeg=3.14159265/180
+part_mass=0.000511
+
+; hms/sosflags.param include spectrometer offsets and options.
+#include "PARAM/52949/hcana.param"
+#include "PARAM/52949/genflags.param"
+#include "PARAM/52949/hmsflags.param"
+#include "PARAM/52949/sosflags.param"
+
+#include "PARAM/52949/gdebug.param"
+#include "PARAM/52949/hdebug.param"
+#include "PARAM/52949/sdebug.param"
+#include "PARAM/52949/htracking.param"
+#include "PARAM/52949/stracking.param"
+
+#include "PARAM/52949/gscalers.param"
+#include "PARAM/52949/gbeam.param"
+#include "PARAM/52949/gtarget.param"
+#include "PARAM/52949/hdc_offsets.param"
+#include "PARAM/52949/hdc.pos"
+#include "PARAM/52949/hhodo.pos"
+#include "PARAM/52949/hcal.pos"
+#include "PARAM/52949/sdc_offsets.param"
+#include "PARAM/52949/sdc.pos"
+#include "PARAM/52949/shodo.pos"
+#include "PARAM/52949/scal.pos"
+
+#include "PARAM/52949/hdeadwires.param"
+#include "PARAM/52949/hdc.param.vt.52927"
+#include "PARAM/52949/hms.driftmap.vt.52949"
+#include "PARAM/52949/hhodo.param.vt"
+#include "PARAM/52949/hcal.param.vt.52949"
+#include "PARAM/52949/hcer.param.vt"
+#include "PARAM/52949/haero.param"
+#include "PARAM/52949/sdc.param.vt.53000"
+#include "PARAM/52949/sos.driftmap.vt.52930"
+#include "PARAM/52949/shodo.param.vt"
+#include "PARAM/52949/scal.param.vt.52843"
+#include "PARAM/52949/scer.param.vt"
diff --git a/examples/PARAM/52949/genflags.param b/examples/PARAM/52949/genflags.param
new file mode 100644
index 0000000000000000000000000000000000000000..c9853a82e8f04d4e5a250cf3a6ac2fcd9fe26154
--- /dev/null
+++ b/examples/PARAM/52949/genflags.param
@@ -0,0 +1,12 @@
+;default settings for general option flags.
+  gen_run_starting_event = 1
+  gen_run_stopping_event = 0
+  gen_run_hist_dump_interval = 40000
+
+; hack_enable             run hack_anal if .ne. 0
+  hack_enable = 0
+
+; gen_eloss_enable         (0=disabled) total_eloss.f
+  gen_eloss_enable = 1
+
+
diff --git a/examples/PARAM/52949/gscalers.param b/examples/PARAM/52949/gscalers.param
new file mode 100644
index 0000000000000000000000000000000000000000..af6a9bb38d852fd7b571ab8c9beb100254c3987f
--- /dev/null
+++ b/examples/PARAM/52949/gscalers.param
@@ -0,0 +1,30 @@
+; These BCM's (1 and 2) numbers are from Jan 05 experiments (VT)
+ 
+
+;point to scaler indices for BCM's
+  gbcm1_index = 321
+  gbcm2_index = 322
+  gbcm3_index = 323
+  gunser_index = 324
+
+
+gbcm1_gain = 0.000328449              ; microA/Hz (New Value)
+gbcm2_gain = 0.000381451              ; microA/Hz (New Value)
+gbcm3_gain = 0.00043343               ; microA/Hz (Old, Value)
+
+gbcm1_offset =  250403.               ; Hz (New Value)
+gbcm2_offset =  250123.               ; Hz (New Value)
+gbcm3_offset =  245437.               ; Hz (Old, Value)
+
+gunser_offset =  514529.              ; Hz (Old, Value)
+gunser_gain = 0.00025001              ; microA/Hz (New Value)
+
+
+;define the threshold current at which beam is "on". (in microamps)
+g_beam_on_thresh_cur = 1.5, 1.5
+ bcm_for_threshold_cut = 1
+
+;point to hardware clock (1MHz scaler, scaler channel 325)
+  gclock_index = 325
+  gclock_rate = 1.e+6
+ 
diff --git a/examples/PARAM/52949/gtarget.param b/examples/PARAM/52949/gtarget.param
new file mode 100644
index 0000000000000000000000000000000000000000..847e801cad1bcb27c39097d2757c813870982422
--- /dev/null
+++ b/examples/PARAM/52949/gtarget.param
@@ -0,0 +1,170 @@
+; MEC - updated for E02-109/E04-001  1/8/05
+;
+; This is the target parameter file.  Numbers 1-10 are solid targets,
+; 11-16 are cryotargets, and 17-20 are dummy/optics.
+;
+;The target order is:
+;
+;       Au_1%         C_2%        Fe_1%
+;       C_1%          C_5%        C_6%
+;       Cu_6%         Be_3%       Au_6%
+;       ---
+;       H (4cm)       ---
+;       ---           ---
+;       D (4cm)       ---
+;       Dummy (4cm)
+;       optics (8cm)
+;       optics (4 foil)
+;       NO target
+
+
+; non-existant targets have A=Z=M=...=0
+; dummy targets have A=Z=M=...=0
+; empty/dummy cells have A=Z=M=...= AS ALUMINUM (MAY NEED TO CHANGE FOR DUMMY DATA!!!)
+;
+;
+; 1=tuna can, 2=beer can, 21=solid
+ gtarg_type   =  21.     ,    21.     ,   21.
+	         21.     ,    21.     ,   21.
+                 21.     ,    21.     ,   21.
+                 21.
+                 1.      ,     1.
+                 1.      ,     1.
+                 1.      ,     1.
+                 21.     ,    21.
+                 21.     ,    21.
+
+  gtarg_z     = 79.0     ,     6.0    ,   26.0
+                 6.0     ,     6.0    ,    6.0
+                29.0     ,     0.0    ,   79.0
+                 0.0
+                 1.0     ,     0.0
+                 0.0     ,     0.0
+                 1.0     ,     0.0
+                 13.0    ,     0.0
+		 0.0     ,     0.0
+
+  gtarg_a     = 197.0    ,    12.0    ,    57.0
+                12.0     ,    12.0    ,    12.0
+                64.0     ,     0.0    ,   197.0
+                 0.0
+                 1.0     ,     0.0
+                 0.0     ,     0.0
+                 2.0     ,     0.0
+                 27.0    ,     0.0
+		 0.0     ,     0.0
+
+  gtarg_mass  = 196.9237    ,   12.0107   ,    56.85
+                12.0107     ,   12.0107   ,    12.0107 
+                63.546      ,   0.0  ,        196.9237    
+                 0.0
+                 1.00727647 ,    0.0 
+                 0.0   ,    0.0
+                 2.01355322,     0.0
+                 26.98       ,   0.0
+                 0.0        ,    0.0
+
+
+; Next is the radiation length in percent...  SOLID=APPROXIMATE, CRYO=GUESSES!!!!!
+  gtarg_lrad  =  1.0      ,    2.0     ,     1.0
+                 1.0      ,    5.2     ,     6.4
+                 6.0      ,    3.0     ,     6.0
+                 0.0 
+                 0.46     ,    0.0
+                 0.0      ,    0.0
+                 0.55     ,    0.0
+                 2.2      ,    0.0
+                 0.0      ,    0.0
+
+
+; Next is the thickness of the target in g/cm^2...
+; NOTE THE 3HE,4HE USE THICKNESS FROM KAON EXPERIMENT, WHICH HAD DIFFERENT CELLS!!!
+
+  gtarg_thick =  0.0417 ,    0.6706    ,     0.119
+                 0.346  ,    1.79      ,     2.735
+                 0.7986 ,    0.5       ,     0.3795
+                 0.0
+                 0.289  ,    0.0
+                 0.0    ,    0.0
+                 0.648  ,    0.0
+                 0.526  ,    0.0
+		 0.0    ,    0.0
+
+
+; Finally, the density of the target in g/cm^3.
+
+; Densities taken from http://pdg.lbl.gov/AtomicNuclearProperties
+;  used "Carbon (compact)" for Carbon - could be way off
+;  3He and 4He come from taking the total thickness (above) / 4cm - thickness could be way off
+
+  gtarg_dens  =  19.320    ,  2.265   ,     7.87
+                 2.265     ,  2.265   ,     2.265
+                 8.960     ,  0.0     ,     19.320
+                 0.0
+                 0.0723    ,  0.0
+                 0.0       ,  0.0
+                 0.167     ,  0.0
+		 2.265     ,  0.0
+                 0.0       ,  0.0
+
+; Target angle:  =90 deg. is perpendicluar to beam
+;                <90 deg. is face towards HMS
+;                >90 deg. is face towards SOS 
+; for E99118 target was rotated 20.3deg. to face HMS =>69.7deg. = 1.2164945rad
+  gtarg_theta =  1.570796327 
+
+
+;general target energy loss parameters. Vansyoc Mar.98
+
+;target cell****************
+; JRA: 09/19/04: Updated based on Meekins' report, June 30, 2004
+; 		gcell_radius was 1.0 - don't know why.  Changed to 2.0
+;  DID NOT UPDATED WALL/END/FRONT THICKNESSES - Don't know the units :(
+
+      gcell_radius = 2.008
+      gz_cell 	 =  13.0
+      ga_cell 	 =  27.0
+      gcell_den 	=   2.7
+      gwall_thk	 =  0.03429
+      gend_thk  	=   0.03429
+      gfront_thk  =  0.020574   
+
+;Air gap between the chamber and the entrance window
+      gair_dens 	=   0.00121
+      gair_thk 	=   0.018
+      gair_a 	=   14.68
+      gair _z 	=   7.32
+
+
+;HMS********
+;    HMS scattering chamber window specs.********** 
+      hscat_win_thk  = 0.109728
+      hscat_win_den =  2.70
+      hscat_win_z   =  13.0
+      hscat_win_a   =  27.0
+;    HMS entrance window specs.********************
+      hdet_ent_thk  =  0.049098
+      hdet_ent_den  =  0.878636
+      hdet_ent_z    =  2.67
+      hdet_ent_a    =  4.67
+;SOS********
+;    SOS scattering chamber window specs.**********
+      sscat_win_thk =  0.054864
+      sscat_win_den =  2.70
+      sscat_win_z   =  13.0
+      sscat_win_a   =  27.0
+;    SOS entrance window specs.********************
+      sdet_ent_thk  =  0.016421
+      sdet_ent_den  =  0.862
+      sdet_ent_z    =  2.67
+      sdet_ent_a    =  4.67
+;eloss debug   0 = off,1 = on
+;      gelossdebug = 0
+;use old cryo geometry? (1)
+;      old_tgeom = 1
+
+;
+
+
+
+
diff --git a/examples/PARAM/52949/haero.param b/examples/PARAM/52949/haero.param
new file mode 100644
index 0000000000000000000000000000000000000000..d815c484829023756c3c449e0f5e42c50a1fb7be
--- /dev/null
+++ b/examples/PARAM/52949/haero.param
@@ -0,0 +1,12 @@
+     haero_pos_gain   = 1/168.3, 1/233.9, 1/181.3, 1/169.2,
+                        1/177.6, 1/155.0, 1/169.5, 1/149.7,
+
+     haero_neg_gain   = 1/248.8, 1/186.4, 1/236.4, 1/172.0,
+                        1/205.3, 1/198.1, 1/227.9, 1/229.2,
+
+     haero_pos_ped_limit =  1000., 1000., 1000., 1000.,
+                            1000., 1000., 1000., 1000.,
+
+     haero_neg_ped_limit =  1000., 1000., 1000., 1000.,
+                            1000., 1000., 1000., 1000.,
+
diff --git a/examples/PARAM/52949/hcal.param.vt.52949 b/examples/PARAM/52949/hcal.param.vt.52949
new file mode 100644
index 0000000000000000000000000000000000000000..3970fb3c358fdc38f4f883f2d8ab5276b27a2c1b
--- /dev/null
+++ b/examples/PARAM/52949/hcal.param.vt.52949
@@ -0,0 +1,57 @@
+; Slop in x position.  Allowed distance between track and edge of block (in cm)
+; too tight djm hcal_slop = 7.5
+hcal_slop = 7.5
+
+;Turn on HMS cal. fiducial volume cut. 0="no cut"
+;Default hcal_fv_test=0
+hcal_fv_test = 1
+
+hcal_pos_cal_const =0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+
+hcal_neg_cal_const =0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+
+hcal_pos_gain_ini  =1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+hcal_neg_gain_ini  =1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+hcal_neg_gain_cur  =1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+
+hcal_pos_ped_limit =1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+
+hcal_neg_ped_limit =1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+
+;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ 
+; Calibration constants for run   52949, 435527 events processed
+
+hcal_pos_gain_cor= 0.425, 0.355, 0.416, 0.385, 0.247, 0.512, 0.552, 0.378, 0.502, 0.345, 0.379, 0.390, 0.000,
+                   0.375, 0.428, 0.340, 0.387, 0.449, 0.485, 0.225, 0.445, 0.303, 0.269, 0.332, 0.653, 0.558,
+                   0.609, 0.630, 0.605, 0.857, 0.631, 0.658, 0.466, 0.547, 0.714, 0.733, 0.523, 0.636, 0.000,
+                   0.802, 0.600, 0.573, 0.720, 0.724, 0.822, 0.851, 0.744, 0.832, 0.614, 0.699, 0.738, 0.000,
+hcal_neg_gain_cor= 0.422, 0.269, 0.288, 0.367, 0.353, 0.050, 0.184, 0.449, 0.235, 0.334, 0.203, 0.170, 0.000,
+                   0.401, 0.353, 0.389, 0.511, 0.332, 0.337, 0.454, 0.304, 0.470, 0.363, 0.338, 0.371, 1.156,
+                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
diff --git a/examples/PARAM/52949/hcal.pos b/examples/PARAM/52949/hcal.pos
new file mode 100644
index 0000000000000000000000000000000000000000..9906aae80eb08d93ab5a4d746c9f34cda05d20e4
--- /dev/null
+++ b/examples/PARAM/52949/hcal.pos
@@ -0,0 +1,81 @@
+; neglect extra tubes for now.
+hcal_num_neg_columns = 2
+
+; Z position of front of shower counter layers
+; guesses, based on the fact that the back scin plane is supposedly at 322.0
+;  (add 25 to each from original value) - JRA
+      hcal_1pr_zpos = (350.0-11.31)
+      hcal_2ta_zpos = (361.0-11.31)
+      hcal_3ta_zpos = (372.0-11.31)
+      hcal_4ta_zpos = (383.0-11.31)
+; Thickness of shower counter blocks, blocks are 10 * 10 * 70 cm^3
+      hcal_1pr_thick = 10.0
+      hcal_2ta_thick = 10.0
+      hcal_3ta_thick = 10.0
+      hcal_4ta_thick = 10.0
+; Number of shower counter blocks per layer
+      hcal_1pr_nr = 13
+      hcal_2ta_nr = 13
+      hcal_3ta_nr = 13
+      hcal_4ta_nr = 13
+; X,Y positions of shower counter blocks
+      hcal_1pr_left  =  35.0
+      hcal_1pr_right = -35.0
+      hcal_1pr_top   = (-69.0-1.4)
+                       (-59.0-1.4)
+                       (-49.0-1.4)
+                       (-39.0-1.4)
+                       (-29.0-1.4)
+                       (-19.0-1.4)
+                       ( -9.0-1.4)
+                       (  1.0-1.4)
+                       ( 11.0-1.4)
+                       ( 21.0-1.4)
+                       ( 31.0-1.4)
+                       ( 41.0-1.4)
+                       ( 51.0-1.4)
+      hcal_2ta_left  =  35.0
+      hcal_2ta_right = -35.0
+      hcal_2ta_top   = (-69.0-1.4)
+                       (-59.0-1.4)
+                       (-49.0-1.4)
+                       (-39.0-1.4)
+                       (-29.0-1.4)
+                       (-19.0-1.4)
+                       ( -9.0-1.4)
+                       (  1.0-1.4)
+                       ( 11.0-1.4)
+                       ( 21.0-1.4)
+                       ( 31.0-1.4)
+                       ( 41.0-1.4)
+                       ( 51.0-1.4)
+      hcal_3ta_left  =  35.0
+      hcal_3ta_right = -35.0
+      hcal_3ta_top   = (-69.0-1.4)
+                       (-59.0-1.4)
+                       (-49.0-1.4)
+                       (-39.0-1.4)
+                       (-29.0-1.4)
+                       (-19.0-1.4)
+                       ( -9.0-1.4)
+                       (  1.0-1.4)
+                       ( 11.0-1.4)
+                       ( 21.0-1.4)
+                       ( 31.0-1.4)
+                       ( 41.0-1.4)
+                       ( 51.0-1.4)
+      hcal_4ta_left  =  35.0
+      hcal_4ta_right = -35.0
+      hcal_4ta_top   = (-69.0-1.4)
+                       (-59.0-1.4)
+                       (-49.0-1.4)
+                       (-39.0-1.4)
+                       (-29.0-1.4)
+                       (-19.0-1.4)
+                       ( -9.0-1.4)
+                       (  1.0-1.4)
+                       ( 11.0-1.4)
+                       ( 21.0-1.4)
+                       ( 31.0-1.4)
+                       ( 41.0-1.4)
+                       ( 51.0-1.4)
diff --git a/examples/PARAM/52949/hcana.param b/examples/PARAM/52949/hcana.param
new file mode 100644
index 0000000000000000000000000000000000000000..5f0d147a16055f1e62fafc1d6003dc1d2f798a0a
--- /dev/null
+++ b/examples/PARAM/52949/hcana.param
@@ -0,0 +1,4 @@
+#include "PARAM/hcana.param"
+
+# New calorimeter debug parameter.
+hdbg_init_cal = 0
diff --git a/examples/PARAM/52949/hcer.param.vt b/examples/PARAM/52949/hcer.param.vt
new file mode 100644
index 0000000000000000000000000000000000000000..a23df2e88a63dadc8da5b0eb0ab04e0f557acb6c
--- /dev/null
+++ b/examples/PARAM/52949/hcer.param.vt
@@ -0,0 +1,24 @@
+hcer_width = 50, 50
+
+hcer_adc_to_npe = 1/145.0, 1/122.0
+
+
+hcer_chi2max = 50.
+hcer_beta_min = 0.8
+hcer_beta_max = 1.2
+hcer_et_min = 0.95
+hcer_et_max = 5.0
+hcer_mirror_zpos = 230
+; hcer_region: 8 values for each region (1 per mirror + sum)
+; central x,y,dx,dy values and x,y,dx,dy half widths.
+hcer_region =   30,  -30,   0,
+                 0,    0,   0,
+                 0,    0,   0,
+                 0,    0,   0,
+                20,   20,  60,
+                30,   30,  30,
+                .1,   .1,  .1,
+                .1,   .1,  .1
+
+hcer_ped_limit =  1000,1000
+	       
diff --git a/examples/PARAM/52949/hdc.param.vt.52927 b/examples/PARAM/52949/hdc.param.vt.52927
new file mode 100644
index 0000000000000000000000000000000000000000..becfff97a3db76c5f7f45575ea703c7e6e9aed2c
--- /dev/null
+++ b/examples/PARAM/52949/hdc.param.vt.52927
@@ -0,0 +1,44 @@
+;---------------------------------------------------------------------
+; HMS_TRACKING
+; CTP parameter file containing all tracking parameters for the HMS
+;----------------------------------------------------------------------
+; sigma of wire chamber resolution for each plane
+      hdc_sigma = 0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+; hms dc tdc minimum tdc value array allowed for a good hit
+    hdc_tdc_min_win = 2750, 2750, 2750, 2750, 2750, 2750
+                      2750, 2750, 2750, 2750, 2750, 2750
+; hms dc tdc maximum tdc value array allowed for a good hit
+    hdc_tdc_max_win = 3500, 3500, 3500, 3500, 3500, 3500
+                      3500, 3500, 3500, 3500, 3500, 3500
+; hms drift chamber tdc's time per channel
+        hdc_tdc_time_per_channel = 0.50
+; hms zero time for drift chambers	!DECREASING this number moves the hdtime plots to LOWER time.
+        hdc_plane_time_zero = (1670+14+18-2-0)
+                              (1670+12+20-2-0)
+                              (1670+13+18-0-2)
+                              (1670+13+20-2-0)
+                              (1670+12+20-4-0)
+                              (1670+14+16-0+2-2)
+                              (1670+15+16+2-4)
+                              (1670+11.5+16)
+                              (1670+13+12+2-2)
+                              (1670+13+12+2-0)
+                              (1670+10.5+16-0)
+                              (1670+13+18-0-2)
+
+; Dave Abbott's wire velocity correction
+hdc_wire_velocity = 12.0
+hdc_central_time = 7,9,3,4,6,5
+                   7,5,3,4,6,6
+  
diff --git a/examples/PARAM/52949/hdc.pos b/examples/PARAM/52949/hdc.pos
new file mode 100644
index 0000000000000000000000000000000000000000..fdbf2aed0ca8f75f5c8bd1d3d3d9fe7bb709d152
--- /dev/null
+++ b/examples/PARAM/52949/hdc.pos
@@ -0,0 +1,183 @@
+; Number of planes installed in HMS detector setup
+      hdc_num_planes = 12
+; Number of chambers installed in HMS detector setup
+      hdc_num_chambers = 2
+; Names of each wire plane
+;
+; Z positions of various planes in HMS chambers
+; hdc_n_zpos is the surveyed Z position of the center of chamber n.
+      hdc_1_zpos = (-40.611-11.312+0.003)
+      hdc_2_zpos = (+40.611-11.312-0.008)
+      
+      hdc_zpos   = hdc_1_zpos - 3.6000
+                   hdc_1_zpos - 1.8000
+                   hdc_1_zpos - 0.0000
+                   hdc_1_zpos + 1.8000
+                   hdc_1_zpos + 3.6000
+                   hdc_1_zpos + 5.4000
+                   hdc_2_zpos - 3.6000
+                   hdc_2_zpos - 1.8000
+                   hdc_2_zpos - 0.0000
+                   hdc_2_zpos + 1.8000
+                   hdc_2_zpos + 3.6000
+                   hdc_2_zpos + 5.4000
+; Angle alpha of wires in wire chamber planes
+        hdc_alpha_angle =  (90. - 0.071)*raddeg
+                           (0.0 - 0.071)*raddeg
+                           (74.925 - 0.071)*raddeg
+                           (105.075 - 0.071)*raddeg
+                           (0.0 - 0.071)*raddeg
+                           (90.0 - 0.071)*raddeg
+                           (89.90814 - 0.153)*raddeg
+                           (0.01611 - 0.153)*raddeg
+                           (74.85 - 0.153)*raddeg
+                           (105.05 - 0.153)*raddeg
+                           (0.01611 - 0.153)*raddeg
+                           (89.90814 - 0.153)*raddeg
+;        hdc_alpha_angle = ( 90.1541 - 0.071)*raddeg
+;                          ( -0.0408 - 0.071)*raddeg
+;                          ( 75.1267 - 0.071)*raddeg
+;                          (105.1267 - 0.071)*raddeg
+;                          ( -0.0408 - 0.071)*raddeg
+;                          ( 90.1541 - 0.071)*raddeg
+;                          ( 90.1095 - 0.153)*raddeg
+;                          ( -0.0370 - 0.153)*raddeg
+;                          ( 75.0904 - 0.153)*raddeg
+;                          (105.0904 - 0.153)*raddeg
+;                          ( -0.0370 - 0.153)*raddeg
+;                          ( 90.1095 - 0.153)*raddeg
+;
+; Angle beta of wires in wire chamber planes
+      hdc_beta_angle =    -0.041*raddeg
+                          -0.041*raddeg
+                          -0.041*raddeg
+                          -0.041*raddeg
+                          -0.041*raddeg
+                          -0.041*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+; Angle gamma of wires in wire chamber planes
+      hdc_gamma_angle =   +0.0376*raddeg
+                          +0.0376*raddeg
+                          +0.0376*raddeg
+                          +0.0376*raddeg
+                          +0.0376*raddeg
+                          +0.0376*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+; Pitch
+      hdc_pitch = 1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+; Number of wires per plane
+      hdc_nrwire = 113
+                    52
+                   107
+                   107
+                    52
+                   113
+                   113
+                    52
+                   107
+                   107
+                    52
+                   113
+; X,Y position of center of wire chamber
+; increasing dc2 coordinates decreases dpos histograms.
+; new values according to henk and rolf
+      hdc_xcenter = (1.670 - 0.0155 - 0.020)
+                    (2.758 - 0.0155 + 0.040)
+;      hdc_xcenter = (1.670 - 0.0155)
+;                    (2.758 - 0.0155)
+;      hdc_xcenter = 1.670 + 0.15 + 0.0155
+;                    2.758 + 0.16 + 0.0155
+;  Y CENTER CHANGED TO MATCH OPTICS DATA(offset of 1.1 cm in y)
+; new values included according to henk and rolf
+      hdc_ycenter = (1.443 - 0.1699 - 0.0279 - 0.04)
+                    (2.753 - 0.1699 + 0.0279 + 0.04)
+;      hdc_ycenter = (1.443 - 0.1699 - 0.0279 - 0.035)
+;                    (2.753 - 0.1699 + 0.0279 + 0.035)
+;      hdc_ycenter = (1.443 - 0.1699 - 0.0279)
+;                    (2.753 - 0.1699 + 0.0279)
+
+;      hdc_ycenter = 0.343 + 1.1 - 0.12 + 0.1699 + 0.0279
+;                    1.653 + 1.1 - 0.22 + 0.1699 - 0.0279
+;      hdc_ycenter = 0.343  THESE ARE THE ORIGINAL Y CENTERS FROM SURVEY DATA
+;                    1.653
+;      hdc_xcenter = 0.0
+;                    1.22
+;      hdc_ycenter = 0.0
+;                    1.24
+
+; Wire number of center of wire chamber
+; assume 1st wire of 1st dc of a set is closest to edge where counting starts
+       hdc_central_wire = 57.257, 26.240, 54.001, 53.999, 26.760 , 56.743
+                          57.244, 26.242, 53.998, 54.002, 26.758 , 56.756
+
+;       hdc_central_wire = 57.25, 26.245, 54.0, 54.0, 26.755 , 56.75
+;                          57.24, 26.245, 54.0, 54.0, 26.755 , 56.76
+;       hdc_central_wire = 57.25, 26.25, 54.0, 54.0, 26.75 , 56.75
+;                          57.24, 26.25, 54.0, 54.0, 26.75 , 56.76
+; hdc_chamber_planes    array giving the chamber number for each plane
+      hdc_chamber_planes = 1
+                           1
+                           1
+                           1
+                           1
+                           1
+                           2
+                           2
+                           2
+                           2
+                           2
+                           2
+; The hms readout numbers some planes in reverse order.
+; The following array is a flag on the order number.
+; If hdc_wire_counting(plane) = 0
+;  the wire center is at (wire - hdc_central_wire) * pitch
+; If hdc_wire_counting(plane) = 1
+;  the wire center is at ( hdc_nrwire + 1 - wire - hdc_central_wire) * pitch
+        hdc_wire_counting = 1
+                            1
+                            0
+                            1
+                            0
+                            0
+                            1
+                            1
+                            0
+                            1
+                            0
+                            0
+; The velocity correction is the distance from the center of the wire divided
+; by the velocity of propagation times hdc_drifttime_sign(pln).  +/-1
+; for disc. card at +/- coord. (i.e. top = -x direction, so top readout is +1)
+       hdc_drifttime_sign = -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
diff --git a/examples/PARAM/52949/hdc_offsets.param b/examples/PARAM/52949/hdc_offsets.param
new file mode 100644
index 0000000000000000000000000000000000000000..a5561b2786ad3925d00ea1545b5f213828b8cf4f
--- /dev/null
+++ b/examples/PARAM/52949/hdc_offsets.param
@@ -0,0 +1,125 @@
+; cable id's for HMS Drift Chambers
+; array is 113,12 (wires,planes) but most planes have less than 113 wires)
+
+hdc_card_no=
+; Plane 1, wires 1-113, 16 per card (+one extra wire)
+              1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
+              2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
+              3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3
+              4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4
+              5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5
+              6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6
+              7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7
+             12
+; plane 2, wires 1-52, 13 per card
+              8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8
+              9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9
+             10,10,10,10,10,10,10,10,10,10,10,10,10
+             11,11,11,11,11,11,11,11,11,11,11,11,11
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; plane 3, wires 1-107, 15 or 16 per card (12 has one x wire)
+             12,12,12,12,12,12,12,12,12,12,12,12,12,12
+             13,13,13,13,13,13,13,13,13,13,13,13,13,13,13
+             14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14
+             15,15,15,15,15,15,15,15,15,15,15,15,15,15,15
+             16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16
+             17,17,17,17,17,17,17,17,17,17,17,17,17,17,17
+             18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18
+             -1,-1,-1,-1,-1,-1
+; plane 4, wires 1-107, 15 or 16 per card (19 has one x' wire)
+             19,19,19,19,19,19,19,19,19,19,19,19,19,19
+             20,20,20,20,20,20,20,20,20,20,20,20,20,20,20
+             21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21
+             22,22,22,22,22,22,22,22,22,22,22,22,22,22,22
+             23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23
+             24,24,24,24,24,24,24,24,24,24,24,24,24,24,24
+             25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25
+             -1,-1,-1,-1,-1,-1
+; plane 5, wires 1-52, 13 per card
+             26,26,26,26,26,26,26,26,26,26,26,26,26
+             27,27,27,27,27,27,27,27,27,27,27,27,27
+             28,28,28,28,28,28,28,28,28,28,28,28,28
+             29,29,29,29,29,29,29,29,29,29,29,29,29
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 6, wires 1-113, 16 per card (+one extra wire)
+             30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
+             31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31
+             32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32
+             33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33
+             34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34
+             35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35
+             36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36
+             19
+; Chamber 2
+; Plane 7, wires 1-113, 16 per card (+one extra wire)
+             37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37
+             38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38
+             39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39
+             40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40
+             41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41
+             42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42
+             43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43
+             48
+; plane 8, wires 1-52, 13 per card
+             44,44,44,44,44,44,44,44,44,44,44,44,44
+             45,45,45,45,45,45,45,45,45,45,45,45,45
+             46,46,46,46,46,46,46,46,46,46,46,46,46
+             47,47,47,47,47,47,47,47,47,47,47,47,47
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; plane 9, wires 1-107, 15 or 16 per card (48 has one x wire)
+             48,48,48,48,48,48,48,48,48,48,48,48,48,48
+             49,49,49,49,49,49,49,49,49,49,49,49,49,49,49
+             50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50
+             51,51,51,51,51,51,51,51,51,51,51,51,51,51,51
+             52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52
+             53,53,53,53,53,53,53,53,53,53,53,53,53,53,53
+             54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54
+             -1,-1,-1,-1,-1,-1
+; plane 10, wires 1-107, 15 or 16 per card (55 has one x' wire)
+             55,55,55,55,55,55,55,55,55,55,55,55,55,55
+             56,56,56,56,56,56,56,56,56,56,56,56,56,56,56
+             57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57
+             58,58,58,58,58,58,58,58,58,58,58,58,58,58,58
+             59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59
+             60,60,60,60,60,60,60,60,60,60,60,60,60,60,60
+             61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61
+             -1,-1,-1,-1,-1,-1
+; plane 11, wires 1-52, 13 per card
+             62,62,62,62,62,62,62,62,62,62,62,62,62
+             63,63,63,63,63,63,63,63,63,63,63,63,63
+             64,64,64,64,64,64,64,64,64,64,64,64,64
+             65,65,65,65,65,65,65,65,65,65,65,65,65
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 12, wires 1-113, 16 per card (+one extra wire)
+             66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66
+             67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67
+             68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68
+             69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69
+             70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70
+             71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71
+             72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72
+             55
+;
+;       Cable Delays on a per/card basys
+;
+hdc_card_delay =  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0
+
diff --git a/examples/PARAM/52949/hdeadwires.param b/examples/PARAM/52949/hdeadwires.param
new file mode 100644
index 0000000000000000000000000000000000000000..9d8b527ef661f2c2921224d140fea49d2d53927c
--- /dev/null
+++ b/examples/PARAM/52949/hdeadwires.param
@@ -0,0 +1,10 @@
+; list of dead wires in the HMS (plane,wire).  Dead means <20% efficiency.
+hdc_num_deadwires = 6
+
+hdc_deadwire_plane =  2,   6,   6,   7,   9,  10
+
+hdc_deadwire_num =   43,  18,  60,  97,  30,   8
+
+; rough efficiency  22%,  3%, .4%,  0%,  0%,  7%
+
+; pln9,wire99 is HOT (used to be that 9/#100 was DEAD)?
diff --git a/examples/PARAM/52949/hdebug.param b/examples/PARAM/52949/hdebug.param
new file mode 100644
index 0000000000000000000000000000000000000000..5049718cca59482e958788652ea0eaafd5477656
--- /dev/null
+++ b/examples/PARAM/52949/hdebug.param
@@ -0,0 +1,117 @@
+; hms tracking code debug flags. 
+; when these flags are non-zero, dump routines are called to 
+; print out the data banks for each event.
+;
+;  hluno     fortran lun for output
+      hluno = 66
+; hdebugdumptof           Dump timing information for fitting offsets
+      hdebugdumptof = 0
+; hdebugdumpcal           Dump calorimeter information for fitting gains
+      hdebugdumpcal = 0
+; number of pedestal events required to overwrite orig. peds.
+  hhodo_min_peds = 500
+  hcal_min_peds  = 500
+  hcer_min_peds  = 500
+  haero_min_peds  = 500
+  hmisc_min_peds  = 500
+
+; DEBUGGING OUTPUT FLAGS
+; ----------------------
+; hdebugprintrawdc        Dump HMS_RAW_DC Bank
+      hdebugprintrawdc = 0
+; hdebugprintdecodeddc    Dump HMS_DECODED_DC BAnk
+      hdebugprintdecodeddc = 0
+; hdebugflagpsi               Dump calculated coordinate positions
+      hdebugflagpsi =  0
+; hdebugflaggeoemtry          Dump calculated geometrical parameters
+      hdebugflaggeometry = 0
+; hdebugflagpr                Dump intermediate pattern recognition results
+      hdebugflagpr = 0
+; hdebugflagstubchisq         Dump chi2 of left-right fits
+      hdebugstubchisq = 0
+; hdebugflagstubs             Dump stub fit       
+      hdebugflagstubs = 0
+; hdebuglinkstubs             Dump linked hits
+      hdebuglinkstubs = 0
+; hdebugtrackprint            Dump focal plane track fit results
+      hdebugtrackprint = 0
+; hdebugtartrackprint         Dump tracks at target
+      hdebugtartrackprint = 0
+; tof debuging 
+;
+;  hdebugprintscinraw         Dump HMS_RAW_SCIN
+    hdebugprintscinraw = 0
+;  hdebugprintscindec         Dump HMS_DECODED_SCIN
+    hdebugprintscindec = 0
+;  hdebugprinttoftracks       Dump  hms_scin_tof
+    hdebugprinttoftracks = 0
+;  hdebugprinttracktests      Dump HMS_TRACK_TESTS
+    hdebugprinttracktests = 0
+;
+;  hms calorimeter debug flags
+;  hlun_dbg_cal                lun
+   hlun_dbg_cal    = hluno
+;  hdbg_raw_cal        call h_prt_cal_raw
+   hdbg_raw_cal = 0
+;  hdbg_sparsified_cal call h_prt_cal_sparsified
+   hdbg_sparsified_cal = 0
+;  hdbg_decoded_cal    call h_prt_cal_decoded
+   hdbg_decoded_cal = 0
+;  hdbg_clusters_cal   call h_prt_cal_clusters
+   hdbg_clusters_cal = 0
+;  hdbg_tracks_cal     call h_prt_cal_tracks
+   hdbg_tracks_cal = 0
+;  hdbg_tests_cal      call h_prt_cal_tests    HMS_TRACK_TESTS
+   hdbg_tests_cal = 0
+;
+;  hard wired histograms. If these flags .ne. 0 then the histogram
+;     blocks are filled
+;
+; hturnon_scin_raw_hist       Histogram HMS raw hodoscope data (each block)
+  hturnon_scin_raw_hist = 1
+; hturnon_decoded_dc_hist     Histogram HMS_DECODED_DC
+  hturnon_decoded_dc_hist = 1
+; hturnon_focal_plane_hist    Histogram HMS_FOCAL_PLANE 
+  hturnon_focal_plane_hist = 1
+; hturnon_target_hist         HISTOGRAM HMS_TARGET
+  hturnon_target_hist = 1
+;
+; Bypass paramters to bypass code elementes in h_reconstruction
+;      Stored in hmsbypass_switches.cmn
+;      Code element is bypassed if switch .ne. 0
+; hbypass_trans_dc         bypass h_trans_dc
+  hbypass_trans_dc   = 0 
+; hbypass_track            bypass h_track
+  hbypass_track      = 0
+; hbypass_targ_trans       bypass h_targ_trans
+  hbypass_targ_trans = 0
+; hbypass_dc_eff           bypass h_dc_eff and h_dc_eff_shutdown
+  hbypass_dc_eff     = 0
+; hbypass_track_eff        bypass h_tracking efficiency code
+  hbypass_track_eff  = 0
+; hbypass_track_eff_files  bypass h_tracking efficiency output files
+  hbypass_track_eff_files  = 1
+
+; hbypass_trans_scin       bypass h_trans_scin
+  hbypass_trans_scin = 0
+; hbypass_tof              bypass h_tof
+  hbypass_tof        = 0
+; hbypass_scin_eff         bypass h_scin_eff and h_scin_eff_shutdown
+  hbypass_scin_eff   = 0
+
+; hbypass_trans_cer        bypass h_trans_cer
+  hbypass_trans_cer  = 0
+; hbypass_cer              bypass h_cer
+  hbypass_cer        = 0
+; hbypass_cer_eff          bypass h_cer_eff and h_cer_eff_shutdown
+  hbypass_cer_eff    = 0
+
+; hbypass_trans_cal        bypass h_trans_cal
+  hbypass_trans_cal  = 0
+; hbypass_cal              bypass h_cal
+  hbypass_cal        = 0
+; hbypass_cal_eff          bypass h_cal_eff and h_cal_eff_shutdown
+  hbypass_cal_eff    = 0
+
+; hbypass_physics          bypass h_physics
+  hbypass_physics    = 0
diff --git a/examples/PARAM/52949/hhodo.param.vt b/examples/PARAM/52949/hhodo.param.vt
new file mode 100644
index 0000000000000000000000000000000000000000..bb261605b7f0960a872cd251401414aabd8462de
--- /dev/null
+++ b/examples/PARAM/52949/hhodo.param.vt
@@ -0,0 +1,185 @@
+; hstart_time_center  center of allowed time window                             
+   hstart_time_center = 32.                                                     
+; hstart_time_slop    1/2 width of time window                                  
+   hstart_time_slop = 25.                                                       
+; hscin_tdc_min       minimum tdc value in hms scin                             
+    hscin_tdc_min = 0                                                           
+; hscin_tdc_max       maximum allowed tdc value                                 
+   hscin_tdc_max = 4000                                                         
+; hscin_tdc_to_time   scin tdc time per channel                                 
+   hscin_tdc_to_time = 0.0259                                                   
+; new variable for picking good hits for tof fitting
+; this should not be set tight until you are ready to fit
+; tof and you figured out good values
+   htof_tolerance = 100.0
+;                                                                               
+; hms_tof_params                                                                
+; hnum_scin_counters, hhodo_zpos, hhodo_center_coord, hhodo_width               
+; are all calculated within h_init_scin                                         
+;    hhodo_pos_coord and hhodo_neg_coord are not yet used                       
+;                                                                               
+     hhodo_slop     =    2.,  2.,  4.,  4.                                      
+;                                                                               
+     hhodo_vel_light =  14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+;                                                                               
+      hhodo_pos_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+;                                                                               
+      hhodo_neg_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                                                                                
+  hhodo_pos_minph = 125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                                                                                
+  hhodo_neg_minph = 125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+  hhodo_pos_phc_coeff = -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                        -1.45,-1.1,-1.,-1.2                                     
+                                                                                
+  hhodo_neg_phc_coeff = -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                        -1.3,-1.1,-1.2,-1.4                                     
+                                                                                
+                                                                                
+; csa 9/8/98 -- I had to hand-twaddle a few of the values                       
+; based on (relative) offsets of older hhodo.param                              
+                                                                                
+                                                                                
+hhodo_pos_time_offset =   6.7992,   0.0000,  -7.1126,   4.7475
+                         -1.1436,   0.4026,  -0.1443,   8.8108
+                          5.1911,   1.7935,  -7.0357,   7.7590
+                          5.6115,   0.1231,  -4.3477,  12.8552
+                          1.2354,  -6.4896,   8.6617,   9.3857
+                          1.8675,  -0.3651,  -4.7731,   7.9034
+                          6.4738,  -1.0463,   1.1786,   8.9740
+                          4.5395,   2.3368,  -4.4623,   4.5968
+                          2.6241,  -2.4480,  -6.4964,   6.2390
+                          4.2056,   0.0000,  -0.8924,  -1.2482
+                          6.1303,   0.0000,  -7.9503,   0.0000
+                          5.5326,   0.0000,  -0.3564,   0.0000
+                          4.3238,   0.0000,   0.8133,   0.0000
+                          1.7467,   0.0000,   1.9021,   0.0000
+                          4.1333,   0.0000,  -5.4523,   0.0000
+                          0.9416,   0.0000,   1.0158,   0.0000
+hhodo_neg_time_offset =  -2.1515,   0.0000,   2.5771,  11.2323
+                         -1.6547,  -2.2888,  10.1063,  13.3595
+                         -3.8050,  -4.1933,   3.4133,  15.0118
+                          0.7925,  -1.9592,  10.9311,  15.1057
+                         -1.2621,  -4.6538,   2.3474,  10.2752
+                         -2.9459,   1.2711,   9.6479,   7.8567
+                          1.2439,  -3.4946,   3.7283,  10.7897
+                         -4.8205,   1.1743,   8.5908,  11.1753
+                         -6.3324,  -5.2290,   0.2444,  14.7184
+                          1.8168,   0.0000,  11.2387,  15.5869
+                          0.4240,   0.0000,   8.2657,   0.0000
+                         -0.9945,   0.0000,   9.2381,   0.0000
+                         -2.3217,   0.0000,   5.1855,   0.0000
+                         -5.1166,   0.0000,  10.0781,   0.0000
+                          0.2537,   0.0000,   6.2455,   0.0000
+                          7.0554,   0.0000,  12.8714,   0.0000
+                                                                                
+;                                                                               
+hhodo_pos_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+;                                                                               
+hhodo_neg_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+; use htofusinginvadc=1 if want invadc_offset
+;  invadc_linear, and invadc_adc to be used
+htofusinginvadc=0
+
+                                                                                
diff --git a/examples/PARAM/52949/hhodo.pos b/examples/PARAM/52949/hhodo.pos
new file mode 100644
index 0000000000000000000000000000000000000000..2e37fd06ea8c5ce715c0b9b61cc24ce182c8f989
--- /dev/null
+++ b/examples/PARAM/52949/hhodo.pos
@@ -0,0 +1,88 @@
+      hpathlength_central = 2500
+; Z positions of hodoscopes
+      hscin_1x_zpos =  (89.14-11.31)
+      hscin_1y_zpos =  (108.83-11.31)
+      hscin_2x_zpos =  (310.13-11.31)
+      hscin_2y_zpos =  (329.82-11.31)
+      hscin_1x_dzpos = 2.12
+      hscin_1y_dzpos = 2.12
+      hscin_2x_dzpos = 2.12
+      hscin_2y_dzpos = 2.12
+      hscin_1x_size = 8.0
+      hscin_1y_size = 8.0
+      hscin_2x_size = 8.0
+      hscin_2y_size = 8.0
+      hscin_1x_spacing = 7.5
+      hscin_1y_spacing = 7.5
+      hscin_2x_spacing = 7.5
+      hscin_2y_spacing = 7.5
+; Number of hodoscope paddles per layer
+      hscin_1x_nr = 16
+      hscin_1y_nr = 10
+      hscin_2x_nr = 16
+      hscin_2y_nr = 10
+; X,Y positions of hodoscope paddles
+      hscin_1x_left  =  37.750
+      hscin_1x_right = -37.750
+      hscin_1x_offset=  -1.3
+      hscin_1x_center= -56.250
+                       -48.750
+                       -41.250
+                       -33.750
+                       -26.250
+                       -18.750
+                       -11.250
+                        -3.750
+                         3.750
+                        11.250
+                        18.750
+                        26.250
+                        33.750
+                        41.250
+                        48.750
+                        56.250
+      hscin_1y_top   = -60.250
+      hscin_1y_bot   =  60.250
+      hscin_1y_offset=  -1.3
+      hscin_1y_center=  33.750
+                        26.250
+                        18.750
+                        11.250
+                         3.750
+                        -3.750
+                       -11.250
+                       -18.750
+                       -26.250
+                       -33.750
+      hscin_2x_left  =  37.750
+      hscin_2x_right = -37.750
+      hscin_2x_offset=  -0.6
+      hscin_2x_center= -56.250
+                       -48.750
+                       -41.250
+                       -33.750
+                       -26.250
+                       -18.750
+                       -11.250
+                        -3.750
+                         3.750
+                        11.250
+                        18.750
+                        26.250
+                        33.750
+                        41.250
+                        48.750
+                        56.250
+      hscin_2y_top   = -60.250
+      hscin_2y_bot   =  60.250
+      hscin_2y_offset=  -2.4
+      hscin_2y_center=  33.750
+                        26.250
+                        18.750
+                        11.250
+                         3.750
+                        -3.750
+                       -11.250
+                       -18.750
+                       -26.250
+                       -33.750
diff --git a/examples/PARAM/52949/hms.driftmap.vt.52949 b/examples/PARAM/52949/hms.driftmap.vt.52949
new file mode 100644
index 0000000000000000000000000000000000000000..d5d90b5cf1bd86be940506d17a91b5f3b5fcbd15
--- /dev/null
+++ b/examples/PARAM/52949/hms.driftmap.vt.52949
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+hdriftbins=138
+;number of 1st bin in Meek's table in ns
+hdrift1stbin=-24
+;bin size in ns of Meek's table
+hdriftbinsz=2
+hwc1x1fract=0.0000,0.0001,0.0001,0.0002,0.0002,0.0003,0.0003,0.0004
+0.0005,0.0006,0.0007,0.0008,0.0009,0.0011,0.0013,0.0015,0.0019,0.0027
+0.0038,0.0056,0.0087,0.0138,0.0212,0.0309,0.0423,0.0554,0.0697,0.0853
+0.1022,0.1201,0.1384,0.1581,0.1781,0.1987,0.2200,0.2417,0.2637,0.2863
+0.3088,0.3318,0.3544,0.3769,0.3993,0.4219,0.4444,0.4669,0.4888,0.5107
+0.5325,0.5543,0.5757,0.5972,0.6182,0.6393,0.6595,0.6796,0.6995,0.7191
+0.7382,0.7569,0.7750,0.7929,0.8099,0.8266,0.8422,0.8571,0.8706,0.8831
+0.8946,0.9055,0.9156,0.9247,0.9332,0.9410,0.9480,0.9546,0.9606,0.9662
+0.9709,0.9754,0.9793,0.9826,0.9854,0.9879,0.9897,0.9914,0.9928,0.9939
+0.9947,0.9953,0.9959,0.9965,0.9969,0.9972,0.9975,0.9977,0.9980,0.9982
+0.9984,0.9985,0.9986,0.9988,0.9988,0.9990,0.9991,0.9992,0.9993,0.9994
+0.9994,0.9995,0.9995,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y1fract=0.0000,0.0001,0.0001,0.0001,0.0002,0.0002,0.0002,0.0003
+0.0003,0.0004,0.0004,0.0005,0.0006,0.0008,0.0010,0.0012,0.0017,0.0025
+0.0038,0.0061,0.0104,0.0175,0.0276,0.0408,0.0571,0.0754,0.0952,0.1165
+0.1384,0.1614,0.1845,0.2080,0.2315,0.2549,0.2786,0.3018,0.3247,0.3479
+0.3706,0.3928,0.4148,0.4366,0.4583,0.4795,0.5006,0.5214,0.5419,0.5623
+0.5825,0.6026,0.6225,0.6423,0.6619,0.6818,0.7011,0.7200,0.7388,0.7571
+0.7751,0.7926,0.8096,0.8258,0.8414,0.8561,0.8701,0.8828,0.8946,0.9054
+0.9150,0.9238,0.9320,0.9390,0.9455,0.9513,0.9564,0.9612,0.9654,0.9692
+0.9728,0.9760,0.9789,0.9815,0.9838,0.9856,0.9874,0.9888,0.9901,0.9912
+0.9923,0.9932,0.9939,0.9946,0.9951,0.9956,0.9961,0.9965,0.9969,0.9972
+0.9975,0.9978,0.9980,0.9982,0.9984,0.9986,0.9987,0.9989,0.9990,0.9991
+0.9992,0.9993,0.9994,0.9995,0.9995,0.9996,0.9996,0.9997,0.9997,0.9997
+0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1u1fract=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0001,0.0001
+0.0001,0.0001,0.0001,0.0001,0.0002,0.0002,0.0003,0.0004,0.0007,0.0013
+0.0026,0.0055,0.0108,0.0194,0.0312,0.0457,0.0623,0.0806,0.0999,0.1202
+0.1415,0.1638,0.1860,0.2089,0.2316,0.2545,0.2774,0.3004,0.3229,0.3456
+0.3680,0.3908,0.4128,0.4349,0.4565,0.4777,0.4988,0.5197,0.5403,0.5609
+0.5812,0.6012,0.6212,0.6410,0.6605,0.6798,0.6987,0.7180,0.7364,0.7547
+0.7726,0.7902,0.8071,0.8233,0.8388,0.8536,0.8672,0.8799,0.8915,0.9022
+0.9115,0.9202,0.9278,0.9348,0.9411,0.9470,0.9526,0.9575,0.9621,0.9665
+0.9705,0.9742,0.9775,0.9804,0.9829,0.9850,0.9868,0.9884,0.9898,0.9910
+0.9920,0.9928,0.9936,0.9943,0.9949,0.9954,0.9959,0.9963,0.9966,0.9970
+0.9973,0.9976,0.9978,0.9980,0.9982,0.9984,0.9985,0.9987,0.9988,0.9989
+0.9990,0.9991,0.9992,0.9993,0.9994,0.9994,0.9995,0.9995,0.9996,0.9996
+0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1v1fract=0.0000,0.0000,0.0000,0.0000,0.0001,0.0001,0.0001,0.0001
+0.0001,0.0002,0.0002,0.0002,0.0003,0.0003,0.0004,0.0006,0.0009,0.0016
+0.0031,0.0058,0.0107,0.0192,0.0308,0.0454,0.0621,0.0808,0.1007,0.1217
+0.1434,0.1654,0.1878,0.2105,0.2331,0.2558,0.2784,0.3009,0.3237,0.3462
+0.3682,0.3905,0.4120,0.4341,0.4555,0.4764,0.4976,0.5184,0.5391,0.5596
+0.5801,0.6000,0.6198,0.6397,0.6591,0.6785,0.6980,0.7173,0.7362,0.7548
+0.7729,0.7907,0.8078,0.8243,0.8402,0.8552,0.8691,0.8820,0.8936,0.9040
+0.9135,0.9220,0.9297,0.9367,0.9431,0.9489,0.9541,0.9591,0.9635,0.9677
+0.9716,0.9750,0.9783,0.9810,0.9834,0.9855,0.9874,0.9890,0.9903,0.9915
+0.9926,0.9934,0.9941,0.9947,0.9953,0.9957,0.9962,0.9965,0.9969,0.9972
+0.9974,0.9977,0.9979,0.9981,0.9983,0.9984,0.9986,0.9987,0.9988,0.9990
+0.9991,0.9992,0.9993,0.9994,0.9994,0.9995,0.9995,0.9996,0.9996,0.9997
+0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y2fract=0.0000,0.0000,0.0000,0.0000,0.0001,0.0001,0.0001,0.0001
+0.0001,0.0001,0.0002,0.0002,0.0002,0.0003,0.0004,0.0007,0.0011,0.0021
+0.0040,0.0074,0.0132,0.0216,0.0329,0.0468,0.0632,0.0815,0.1011,0.1225
+0.1446,0.1673,0.1904,0.2143,0.2375,0.2607,0.2840,0.3071,0.3298,0.3528
+0.3752,0.3971,0.4190,0.4410,0.4628,0.4846,0.5053,0.5261,0.5466,0.5673
+0.5872,0.6074,0.6272,0.6469,0.6662,0.6854,0.7043,0.7231,0.7413,0.7598
+0.7773,0.7949,0.8118,0.8279,0.8432,0.8575,0.8711,0.8837,0.8951,0.9053
+0.9147,0.9231,0.9307,0.9376,0.9438,0.9495,0.9547,0.9596,0.9639,0.9681
+0.9717,0.9750,0.9779,0.9805,0.9829,0.9848,0.9865,0.9880,0.9893,0.9905
+0.9916,0.9925,0.9933,0.9940,0.9947,0.9952,0.9957,0.9962,0.9965,0.9969
+0.9973,0.9975,0.9978,0.9980,0.9982,0.9984,0.9985,0.9987,0.9989,0.9990
+0.9991,0.9992,0.9993,0.9994,0.9994,0.9995,0.9996,0.9996,0.9997,0.9997
+0.9997,0.9997,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1x2fract=0.0000,0.0000,0.0000,0.0001,0.0001,0.0001,0.0001,0.0002
+0.0002,0.0003,0.0003,0.0004,0.0005,0.0006,0.0008,0.0011,0.0017,0.0028
+0.0047,0.0080,0.0133,0.0208,0.0308,0.0422,0.0554,0.0700,0.0858,0.1025
+0.1206,0.1393,0.1592,0.1795,0.2005,0.2220,0.2439,0.2661,0.2886,0.3108
+0.3336,0.3564,0.3790,0.4013,0.4233,0.4457,0.4682,0.4904,0.5123,0.5342
+0.5555,0.5772,0.5985,0.6195,0.6404,0.6609,0.6814,0.7012,0.7212,0.7401
+0.7589,0.7771,0.7948,0.8116,0.8279,0.8437,0.8581,0.8715,0.8840,0.8957
+0.9064,0.9163,0.9252,0.9335,0.9413,0.9483,0.9549,0.9607,0.9661,0.9709
+0.9752,0.9792,0.9826,0.9855,0.9878,0.9897,0.9913,0.9927,0.9937,0.9946
+0.9954,0.9960,0.9965,0.9969,0.9972,0.9975,0.9977,0.9979,0.9981,0.9983
+0.9985,0.9986,0.9987,0.9988,0.9989,0.9990,0.9991,0.9992,0.9993,0.9993
+0.9994,0.9995,0.9995,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x1fract=0.0001,0.0001,0.0002,0.0002,0.0003,0.0004,0.0005,0.0006
+0.0008,0.0010,0.0012,0.0014,0.0016,0.0021,0.0028,0.0041,0.0069,0.0119
+0.0191,0.0288,0.0403,0.0533,0.0678,0.0835,0.0999,0.1171,0.1352,0.1539
+0.1733,0.1935,0.2140,0.2350,0.2565,0.2785,0.3007,0.3228,0.3450,0.3673
+0.3896,0.4125,0.4350,0.4576,0.4801,0.5030,0.5252,0.5475,0.5698,0.5914
+0.6130,0.6344,0.6553,0.6764,0.6972,0.7179,0.7381,0.7575,0.7769,0.7958
+0.8139,0.8310,0.8474,0.8625,0.8765,0.8892,0.9008,0.9113,0.9205,0.9292
+0.9368,0.9440,0.9505,0.9565,0.9622,0.9674,0.9721,0.9763,0.9799,0.9832
+0.9860,0.9884,0.9904,0.9918,0.9932,0.9942,0.9950,0.9956,0.9962,0.9966
+0.9970,0.9974,0.9977,0.9979,0.9981,0.9983,0.9985,0.9986,0.9988,0.9989
+0.9990,0.9991,0.9992,0.9993,0.9994,0.9994,0.9995,0.9995,0.9995,0.9996
+0.9996,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y1fract=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0001,0.0001
+0.0001,0.0001,0.0001,0.0002,0.0002,0.0002,0.0003,0.0004,0.0006,0.0011
+0.0021,0.0042,0.0082,0.0153,0.0258,0.0396,0.0562,0.0754,0.0967,0.1193
+0.1428,0.1670,0.1909,0.2151,0.2392,0.2632,0.2869,0.3104,0.3344,0.3577
+0.3805,0.4031,0.4250,0.4469,0.4682,0.4896,0.5107,0.5315,0.5522,0.5724
+0.5926,0.6129,0.6331,0.6529,0.6726,0.6922,0.7115,0.7305,0.7490,0.7675
+0.7853,0.8027,0.8195,0.8354,0.8507,0.8654,0.8792,0.8918,0.9034,0.9138
+0.9231,0.9315,0.9388,0.9451,0.9510,0.9562,0.9609,0.9651,0.9689,0.9723
+0.9754,0.9783,0.9807,0.9828,0.9847,0.9864,0.9878,0.9891,0.9903,0.9914
+0.9923,0.9931,0.9938,0.9944,0.9949,0.9954,0.9959,0.9963,0.9966,0.9969
+0.9973,0.9975,0.9977,0.9979,0.9981,0.9983,0.9985,0.9986,0.9988,0.9989
+0.9990,0.9991,0.9992,0.9993,0.9994,0.9994,0.9995,0.9996,0.9996,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2u1fract=0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0001,0.0001
+0.0001,0.0001,0.0001,0.0002,0.0002,0.0003,0.0004,0.0005,0.0009,0.0019
+0.0042,0.0094,0.0188,0.0315,0.0476,0.0664,0.0872,0.1095,0.1325,0.1561
+0.1801,0.2041,0.2281,0.2519,0.2757,0.2990,0.3222,0.3453,0.3678,0.3899
+0.4119,0.4341,0.4556,0.4766,0.4975,0.5186,0.5393,0.5597,0.5796,0.5994
+0.6193,0.6391,0.6585,0.6778,0.6971,0.7159,0.7345,0.7528,0.7709,0.7888
+0.8061,0.8230,0.8390,0.8546,0.8690,0.8827,0.8951,0.9061,0.9161,0.9249
+0.9328,0.9396,0.9458,0.9514,0.9562,0.9608,0.9649,0.9687,0.9721,0.9753
+0.9782,0.9806,0.9829,0.9848,0.9866,0.9882,0.9894,0.9905,0.9916,0.9924
+0.9931,0.9938,0.9943,0.9949,0.9954,0.9958,0.9961,0.9965,0.9968,0.9971
+0.9973,0.9976,0.9978,0.9980,0.9982,0.9984,0.9986,0.9987,0.9989,0.9990
+0.9991,0.9992,0.9993,0.9993,0.9994,0.9995,0.9996,0.9996,0.9997,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2v1fract=0.0000,0.0000,0.0000,0.0000,0.0000,0.0001,0.0001,0.0001
+0.0001,0.0002,0.0002,0.0002,0.0003,0.0004,0.0005,0.0007,0.0010,0.0017
+0.0032,0.0065,0.0131,0.0235,0.0372,0.0542,0.0733,0.0947,0.1164,0.1394
+0.1622,0.1857,0.2091,0.2328,0.2560,0.2793,0.3025,0.3253,0.3477,0.3703
+0.3922,0.4141,0.4355,0.4566,0.4778,0.4986,0.5189,0.5396,0.5598,0.5801
+0.6002,0.6199,0.6393,0.6589,0.6780,0.6969,0.7159,0.7343,0.7529,0.7711
+0.7888,0.8059,0.8226,0.8388,0.8544,0.8687,0.8820,0.8941,0.9051,0.9147
+0.9233,0.9310,0.9377,0.9438,0.9493,0.9543,0.9590,0.9631,0.9669,0.9704
+0.9737,0.9767,0.9793,0.9818,0.9838,0.9856,0.9872,0.9886,0.9898,0.9909
+0.9919,0.9927,0.9934,0.9940,0.9945,0.9951,0.9955,0.9959,0.9963,0.9967
+0.9970,0.9973,0.9976,0.9978,0.9980,0.9982,0.9984,0.9986,0.9987,0.9989
+0.9990,0.9991,0.9992,0.9993,0.9994,0.9995,0.9995,0.9996,0.9996,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y2fract=0.0000,0.0000,0.0000,0.0000,0.0000,0.0001,0.0001,0.0001
+0.0001,0.0001,0.0002,0.0002,0.0002,0.0003,0.0004,0.0005,0.0007,0.0013
+0.0023,0.0045,0.0088,0.0163,0.0271,0.0410,0.0578,0.0769,0.0977,0.1203
+0.1436,0.1676,0.1916,0.2161,0.2403,0.2638,0.2876,0.3108,0.3342,0.3572
+0.3804,0.4032,0.4254,0.4470,0.4686,0.4898,0.5111,0.5318,0.5525,0.5731
+0.5936,0.6138,0.6339,0.6536,0.6735,0.6929,0.7122,0.7309,0.7495,0.7679
+0.7860,0.8037,0.8205,0.8368,0.8524,0.8667,0.8803,0.8929,0.9044,0.9146
+0.9240,0.9320,0.9394,0.9458,0.9516,0.9569,0.9614,0.9656,0.9694,0.9728
+0.9759,0.9787,0.9812,0.9833,0.9850,0.9867,0.9882,0.9894,0.9906,0.9916
+0.9925,0.9932,0.9939,0.9945,0.9950,0.9955,0.9959,0.9964,0.9967,0.9970
+0.9973,0.9976,0.9978,0.9979,0.9981,0.9983,0.9984,0.9986,0.9987,0.9989
+0.9990,0.9991,0.9992,0.9993,0.9994,0.9995,0.9995,0.9996,0.9996,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x2fract=0.0000,0.0000,0.0001,0.0001,0.0001,0.0002,0.0002,0.0003
+0.0003,0.0004,0.0005,0.0006,0.0007,0.0008,0.0010,0.0012,0.0017,0.0027
+0.0042,0.0071,0.0121,0.0198,0.0299,0.0422,0.0564,0.0724,0.0892,0.1078
+0.1270,0.1471,0.1677,0.1893,0.2112,0.2336,0.2564,0.2794,0.3021,0.3253
+0.3481,0.3711,0.3937,0.4163,0.4389,0.4611,0.4829,0.5048,0.5266,0.5482
+0.5697,0.5904,0.6112,0.6321,0.6523,0.6727,0.6927,0.7125,0.7317,0.7508
+0.7695,0.7877,0.8050,0.8222,0.8385,0.8539,0.8682,0.8814,0.8936,0.9047
+0.9147,0.9239,0.9322,0.9399,0.9468,0.9531,0.9588,0.9640,0.9690,0.9732
+0.9770,0.9803,0.9832,0.9858,0.9879,0.9897,0.9910,0.9923,0.9934,0.9942
+0.9949,0.9956,0.9961,0.9965,0.9969,0.9972,0.9975,0.9978,0.9980,0.9982
+0.9984,0.9985,0.9987,0.9988,0.9989,0.9990,0.9991,0.9992,0.9993,0.9994
+0.9994,0.9995,0.9995,0.9996,0.9996,0.9997,0.9997,0.9997,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
diff --git a/examples/PARAM/52949/hmsflags.param b/examples/PARAM/52949/hmsflags.param
new file mode 100644
index 0000000000000000000000000000000000000000..382ed6da441655828912677767fd8f1cf5db6141
--- /dev/null
+++ b/examples/PARAM/52949/hmsflags.param
@@ -0,0 +1,52 @@
+; Offset in the spectrometer momentum.
+  hmomentum_factor = 0.000 ; leave 0 so it will have no effect
+                           ; use hpcentral_offset if one needs to offset central momentum
+;
+; The hdelta_offset,htheta_offset,hphi_offset effect the
+; reconstructed target quantities. Used in h_targ_trans.f 
+; For transport x is in the dispersive direction with + down
+;               y is in the horizontal + towards small angles.
+;               z is along the central optics axis.
+; In transport coordinates phi = hyptar = dy/dz and theta = hxptar = dx/dz 
+;    but for unknown reasons the yp offset is named  htheta_offset
+;    and  the xp offset is named  hphi_offset
+; Do not to change these values, since these are the zero order
+;  CMOP matrix elements. If you do change then your hms sieve
+;  plots will be screwed up.
+  hdelta_offset = 0.       ; (%)   hdelta_tar = hdelta_tar + hdelta_offset
+  htheta_offset = 4.83e-5  ; (rad) hyp_tar = hyp_tar + htheta_offset
+  hphi_offset   = -4.73e-3 ; (rad) hxp_tar = hxp_tar + hphi_offset
+;
+
+;saturation correction flag
+  genable_hms_satcorr = 2000 ;(0=disabled) - h_satcorr.f
+                          ; a correction to hsdelta event by event
+                          ; for a problem in setting Q3 current.
+                          ; There was an unknown zero offset in the Q3 current.
+                          ; The magnet setting code field00.f partially 
+                          ; fixes this problem. T. Horn in 2003 determined
+                          ; the corrections to delta.
+                          ; Data taken with fields set by field99.f or earlier should set to 1999.
+                          ; Data taken with fields set by field00.f or later should set to 2000.
+; central field  correction
+  genable_hms_fieldcorr = 1 ; (1=disabled) - h_fieldcorr.f 
+                            ; Need to enable for experiments before Jan 2002 .
+			    ; experiments using field02 and field03 should disable. 
+;
+; The following offsets are applied to the central kinematic variables
+;  in h_apply_offsets.f  . These might be modified by an experiment
+;  after doing calibration with elastic ep.
+; The values below are from T. Horn 2003 analysis
+  hpcentral_offset = -0.25   ; sets hpcentral = hpcentral * ( 1. + hpcentral_offset / 100. )
+		    ; experiments earlier than April 2003 
+                    ; should use  about -0.3 which is the best
+                    ; estimate based on several previous experiments.
+  hthetacentral_offset = 0.0002 ; (rad) 
+                         ;htheta_lab=htheta_lab + hthetacentral_offset/degree 
+; This offset is determined from elastic ep data.
+; Must be added to ssxptar when used in calculating lab angles.
+; Example is in h_physics.f
+;
+  h_oopcentral_offset = 0.0011  ; (rad)
+
+
diff --git a/examples/PARAM/52949/htracking.param b/examples/PARAM/52949/htracking.param
new file mode 100644
index 0000000000000000000000000000000000000000..99b502a69f6dcf31d4ff079ffe72c0f887f10e34
--- /dev/null
+++ b/examples/PARAM/52949/htracking.param
@@ -0,0 +1,94 @@
+; hms pattern recognition and tracking code parameters
+; hmax_pr_hits is the maximum number of decoded hits allowed in a chamber for
+;              pattern recognition to proceed. This protexts against unusual
+;              kami kaze events which hang the analyzer to a long time.
+;
+        hmax_pr_hits =    35, 35
+; maximum number of possible focal plane tracks, must be <= 20
+        hntracks_max_fp = 10
+; if h_remove_sppt_if_one_y_plane=1 then remove space point if space point
+;    contains only one y plane.
+; Recommend h_remove_sppt_if_one_y_plane=0.  
+        h_remove_sppt_if_one_y_plane=0
+; hminhit(i)   minimum number of hits in each space point (one for each chamber)
+	hmin_hit =     5, 5
+; hmin_combos(i) minimum number of pairs in each space point ( one per chamber)
+; should be 3/3 for 4/6 tracking, and 4/4 for 5/6 tracking (JRA)
+	hmin_combos = 4, 4 
+; hspace_point_criterion(i) minimum separation of distinct space points
+; recommended value for hspace_point_criterion ( based on meeting
+; Feb 2003) 
+       hspace_point_criterion = 1.0, 1.0
+
+        hstub_max_xpdiff = .05
+;
+; The following four criteria are applied to the stub fit results at the
+; focal plane position to link stubs to tracks
+; hxt_track_criterion  
+; hyt_track_criterion
+; hxpt_track_criterion
+; hypt_track_criterion
+; recommended value for hspace_point_criterion ( based on meeting
+; Feb 2003) 
+       hxt_track_criterion  = 10.
+       hyt_track_criterion  = 4.
+       hxpt_track_criterion = 0.2
+       hypt_track_criterion = 0.5
+;
+; hsingle_stub            If .ne. 0 make a track of each single stub
+  hsingle_stub = 0
+; turn on/off small angle approximation to left/right decision for y
+  hSmallAngleApprox = 1
+
+; Crude track selection criteria in h_physics
+; hsel_chi2_fpperdegmax   maximum chi2 per degree of freedom for track
+  hsel_chi2_fpperdegmax = 2000000.
+; hsel_dedx1min           minimum dedx to chose best track in scin 1
+  hsel_dedx1min = -100000
+; hsel_dedx1max           maximum dedx to chose best track in scin 1
+  hsel_dedx1max = 1000000.
+; hsel_betamin            minimum track beta to chose best track 
+  hsel_betamin  = -100000
+; hsel_betamax            maximum track beta to chose best track 
+  hsel_betamax  = 100000.
+; hsel_etmin              minimum track et to chose best track 
+  hsel_etmin = 0.05
+; hsel_etmax              maximum track et to chose best track 
+  hsel_etmax = 100000.
+; hsel_ndegreesmin        minimum number of degrees of freedom for track
+  hsel_ndegreesmin = 1
+
+
+; hstat_maxchisq          chisquared limit for tracks used to measure hodo. eff.
+  hstat_maxchisq = 10.
+; hsel_using_scin         uses scintillator for track selection
+  hsel_using_scin = 1
+; hstat_slop              distance from center of scin. to count as expecting hit
+  hstat_slop = 2.
+; hstat_mineff            warning level for scin. effic.
+  hstat_mineff = .95
+; hstat_cal_maxchisq      chisquared limit for tracks used to measure cal. eff.
+  hstat_cal_maxchisq = 10.
+; hstat_cal_slop          distance from center of block to count as expecting hit
+  hstat_cal_slop = 2.
+; hcer_min_eff            warning level for cerenkov effic.
+  hcer_min_eff = .98
+; hcer_threshold          threshold for good hit (for measureing effic.)
+  hcer_threshold = 0.5
+; hdc_min_eff             warning level for dc raw effic.(1 per plane)
+  hdc_min_eff = .96,.98,.96,.98,.98,.94
+                .96,.98,.98,.98,.98,.96
+; hdc_min_wire_eff        warning level for wire effic, measured using tracking
+  hdc_min_wire_eff = .85
+; hdc_min_plane_eff        warning level for plane effic, measured using tracking
+  hdc_min_plane_eff = .95,.95,.95,.95,.95,.95
+                      .95,.95,.95,.95,.95,.95
+;Derek added this for scintillator based fiducial cuts.  Everything from
+;loscin to hiscin inclusive will be included as "good" scintillator hits.
+  hxloscin  = 4, 4
+  hxhiscin  = 13, 13
+  hyloscin  = 4, 4
+  hyhiscin  = 7, 7
+;  htrack_eff_test_scin_planes is the number of planes nec needed to 
+;  set sweet spot to true. 4 is extra clean, 3 is good enough for e-'s.
+  htrack_eff_test_num_scin_planes = 3
diff --git a/examples/PARAM/52949/scal.param.vt.52843 b/examples/PARAM/52949/scal.param.vt.52843
new file mode 100644
index 0000000000000000000000000000000000000000..c0ec9ee74fa2fc38013401322997a44324b4b5e8
--- /dev/null
+++ b/examples/PARAM/52949/scal.param.vt.52843
@@ -0,0 +1,58 @@
+; Slop in x position.  Allowed distance between track and edge of block (in cm)
+; probably too tight djm scal_slop = 7.5
+scal_slop = 10.0
+
+scal_pos_cal_const =0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+
+scal_neg_cal_const =0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+
+scal_pos_gain_ini=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+scal_neg_gain_ini=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+scal_pos_gain_cur=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+scal_neg_gain_cur=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+
+
+; Calibration constants for run   52843,   2166 events processed p=1.2
+
+scal_pos_gain_cor= 0.913, 0.238, 0.526, 0.307, 0.293, 0.383, 0.509, 0.570, 0.327, 0.494, 0.940,
+                   0.399, 0.601, 0.296, 0.398, 0.419, 0.192, 0.634, 0.514, 0.674, 0.368, 0.821,
+                   0.546, 0.727, 0.922, 0.685, 0.655, 0.624, 1.129, 0.793, 0.838, 0.768, 0.905,
+                   0.735, 0.876, 0.821, 1.022, 0.885, 0.965, 1.015, 0.783, 1.096, 0.788, 1.110,
+scal_neg_gain_cor= 0.126, 0.661, 0.610, 0.532, 0.626, 0.454, 0.554, 0.513, 0.603, 0.781, 0.173,
+                   0.829, 0.300, 0.596, 0.513, 0.551, 0.788, 0.563, 0.314, 0.698, 0.463, 0.486,
+                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+
+scal_pos_ped_limit =1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+
+scal_neg_ped_limit =1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+
+
diff --git a/examples/PARAM/52949/scal.pos b/examples/PARAM/52949/scal.pos
new file mode 100644
index 0000000000000000000000000000000000000000..4289ec1f26fcfd949d9aae7d4be4898bcf73dca5
--- /dev/null
+++ b/examples/PARAM/52949/scal.pos
@@ -0,0 +1,72 @@
+; neglect extra tubes for now
+scal_num_neg_columns = 2
+
+; Z position of front of shower counter layers
+      scal_1pr_zpos = (282.0+31.01)
+      scal_2ta_zpos = (293.0+31.01)
+      scal_3ta_zpos = (304.0+31.01)
+      scal_4ta_zpos = (315.0+31.01)
+; Thickness of shower counter blocks, blocks are 10 * 10 * 70 cm^3
+      scal_1pr_thick = 10.0
+      scal_2ta_thick = 10.0
+      scal_3ta_thick = 10.0
+      scal_4ta_thick = 10.0
+; Number of shower counter blocks per layer
+      scal_1pr_nr = 11
+      scal_2ta_nr = 11
+      scal_3ta_nr = 11
+      scal_4ta_nr = 11
+; X,Y positions of shower counter blocks
+      scal_1pr_left  =  35.0
+      scal_1pr_right = -35.0
+      scal_1pr_top   = (-55.0-5.64)
+                       (-45.0-5.64)
+                       (-35.0-5.64)
+                       (-25.0-5.64)
+                       (-15.0-5.64)
+                       ( -5.0-5.64)
+                       (  5.0-5.64)
+                       ( 15.0-5.64)
+                       ( 25.0-5.64)
+                       ( 35.0-5.64)
+                       ( 45.0-5.64)
+      scal_2ta_left  =  35.0
+      scal_2ta_right = -35.0
+      scal_2ta_top   = (-55.0-5.64)
+                       (-45.0-5.64)
+                       (-35.0-5.64)
+                       (-25.0-5.64)
+                       (-15.0-5.64)
+                       ( -5.0-5.64)
+                       (  5.0-5.64)
+                       ( 15.0-5.64)
+                       ( 25.0-5.64)
+                       ( 35.0-5.64)
+                       ( 45.0-5.64)
+      scal_3ta_left  =  35.0
+      scal_3ta_right = -35.0
+      scal_3ta_top   = (-55.0-5.64)
+                       (-45.0-5.64)
+                       (-35.0-5.64)
+                       (-25.0-5.64)
+                       (-15.0-5.64)
+                       ( -5.0-5.64)
+                       (  5.0-5.64)
+                       ( 15.0-5.64)
+                       ( 25.0-5.64)
+                       ( 35.0-5.64)
+                       ( 45.0-5.64)
+      scal_4ta_left  =  35.0
+      scal_4ta_right = -35.0
+      scal_4ta_top   = (-55.0-5.64)
+                       (-45.0-5.64)
+                       (-35.0-5.64)
+                       (-25.0-5.64)
+                       (-15.0-5.64)
+                       ( -5.0-5.64)
+                       (  5.0-5.64)
+                       ( 15.0-5.64)
+                       ( 25.0-5.64)
+                       ( 35.0-5.64)
+                       ( 45.0-5.64)
+
diff --git a/examples/PARAM/52949/scer.param.vt b/examples/PARAM/52949/scer.param.vt
new file mode 100644
index 0000000000000000000000000000000000000000..6f9666e1327a45c9e5f5dc61b9b40fe1d8e43ba3
--- /dev/null
+++ b/examples/PARAM/52949/scer.param.vt
@@ -0,0 +1,23 @@
+;Values for Peter's new Cerenkov (BC 12/20/04)
+scer_width = -3000, -3000, -30, -30
+
+scer_adc_to_npe = -1/19.6819, 1/19.6819, 1/999999.9, 1/999999.9
+
+scer_chi2max = 50.
+scer_beta_min = 0.8
+scer_beta_max = 1.2
+scer_et_min = .95
+scer_et_max = 2.0
+
+scer_mirror_zpos = 180
+
+scer_region =    7,   7,  -15,  -15,   7.
+                 0,   0,   -8,    8,   0.
+                 0,   0,    0,    0,   0.
+                 0,   0,    0,    0,   0.
+                45,  45,   25,   25,  45.
+                15,  15,   10,   10,  15.
+               .15, .15,  .15,  .15,  .15
+               .05, .05,  .05,  .05,  .05
+
+scer_ped_limit =  1000,1000,1000,1000
diff --git a/examples/PARAM/52949/sdc.param.vt.53000 b/examples/PARAM/52949/sdc.param.vt.53000
new file mode 100644
index 0000000000000000000000000000000000000000..7185a8b2413191835ee928e16f52a590281a46e1
--- /dev/null
+++ b/examples/PARAM/52949/sdc.param.vt.53000
@@ -0,0 +1,55 @@
+;---------------------------------------------------------------------
+; SOS_TRACKING
+; CTP parameter file containing all tracking parameters for the SOS
+;----------------------------------------------------------------------
+; Names of each wire plane
+;      sdc_plane_names = 'sos1u1'
+;                        'sos1u2'
+;                        'sos1x1'
+;                        'sos1x2'
+;                        'sos1v1'
+;                        'sos1v2'
+;                        'sos2u1'
+;                        'sos2u2'
+;                        'sos2x1'
+;                        'sos2x2'
+;                        'sos2v1'
+;                        'sos2v2'
+; sigma of wire chamber resolution for each plane
+      sdc_sigma = 0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+; sos dc tdc minimum tdc value array allowed for a good hit
+    sdc_tdc_min_win = 2600, 2600, 2600, 2600, 2600, 2600
+                      2600, 2600, 2600, 2600, 2600, 2600
+; sos dc tdc maximum tdc value array allowed for a good hit
+    sdc_tdc_max_win = 3200, 3200, 3200, 3200, 3200, 3200
+                      3200, 3200, 3200, 3200, 3200, 3200
+; sos drift chamber tdc's time per channel
+        sdc_tdc_time_per_channel = 0.5
+; sos zero time for drift chambers	!DECREASING this number moves the sdtime plots to LOWER time.
+       sdc_plane_time_zero = (1440-10+26+86+30+2+4)
+                             (1440-9.5+22+90+30+4)
+                             (1440-9.25+22+94+30+4-2)
+                             (1440-12+28+84+30+4+2)
+                             (1440-11+24+86+30+2+2+4)
+                             (1440-11+26+86+30+4)
+                             (1440-11.5+24+86+30+6)
+                             (1440-14+22+90+30+4)
+                             (1440-13.5+22+84+30+4)
+                             (1440-13.5+24+74+30+4+2)
+                             (1440-11.5+22+82+30+4)
+                             (1440-13.25+24+80+30+4)
+; Dave Abbott's wire velocity correction
+sdc_wire_velocity = 13.0
+sdc_central_time = 2.8,2.8,1.5,1.5,2.8,2.8
+                   2.8,2.8,1.5,1.5,2.8,2.8
diff --git a/examples/PARAM/52949/sdc.pos b/examples/PARAM/52949/sdc.pos
new file mode 100644
index 0000000000000000000000000000000000000000..015bb095b00e962a5384f0794b242c5a86450525
--- /dev/null
+++ b/examples/PARAM/52949/sdc.pos
@@ -0,0 +1,216 @@
+; Number of planes installed in SOS detector setup
+      sdc_num_planes = 12
+; Number of chambers installed in SOS detector setup
+      sdc_num_chambers = 2
+; Z positions of various planes in SOS chambers
+; sdc_n_zpos is the surveyed Z position of the center of chamber n.
+      sdc_1_zpos = (-24.76+31.01)
+      sdc_2_zpos = ( 24.76+31.01)
+;      sdc_3_zpos =(247.50+31.01)
+      sdc_zpos   = sdc_1_zpos - 1.5875
+                   sdc_1_zpos - 0.9525
+                   sdc_1_zpos - 0.3175
+                   sdc_1_zpos + 0.3175
+                   sdc_1_zpos + 0.9525
+                   sdc_1_zpos + 1.5875
+                   sdc_2_zpos - 1.5875
+                   sdc_2_zpos - 0.9525
+                   sdc_2_zpos - 0.3175
+                   sdc_2_zpos + 0.3175
+                   sdc_2_zpos + 0.9525
+                   sdc_2_zpos + 1.5875
+; Angle alpha of wires in wire chamber planes (.051,.045 degrees roll in dc1,2)
+      sdc_alpha_angle = ( 30-.051)*raddeg
+                        ( 30-.051)*raddeg
+                        ( 90-.051)*raddeg
+                        ( 90-.051)*raddeg
+                        (150-.051)*raddeg
+                        (150-.051)*raddeg
+                        ( 30-.045)*raddeg
+                        ( 30-.045)*raddeg
+                        ( 90-.045)*raddeg
+                        ( 90-.045)*raddeg
+                        (150-.045)*raddeg
+                        (150-.045)*raddeg
+; Angle beta of wires in wire chamber planes
+      sdc_beta_angle =   -0.052*raddeg
+                         -0.052*raddeg
+                         -0.052*raddeg
+                         -0.052*raddeg
+                         -0.052*raddeg
+                         -0.052*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+; Angle gamma of wires in wire chamber planes
+      sdc_gamma_angle = -0.070*raddeg
+                        -0.070*raddeg
+                        -0.070*raddeg
+                        -0.070*raddeg
+                        -0.070*raddeg
+                        -0.070*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+; Pitch
+      sdc_pitch = 1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+; Number of wires per plane
+      sdc_nrwire = 48
+                   48
+                   64
+                   64
+                   48
+                   48
+                   48
+                   48
+                   64
+                   64
+                   48
+                   48
+; X,Y position of center of wire chamber
+; The given value is subtracted from the position of the wire (i.e.
+; the sign is opposite of the actual center position of the chamber).
+; Increasing dc2 coordinates increases dpos histograms.
+; Values are from jan17, 1996 survey memo.  values ARE corrected for
+; 18 degree (optical axis) vs 17.85 degree (survey axis) discrepensy.
+      sdc_xcenter = (8.488-3.982)
+                    (-1.822+1.825+0.35)
+      sdc_ycenter =(+0.007+.388+0.2)
+                   (-0.197+0.379+0.2)
+;;      sdc_xcenter = 8.488
+;;                   -1.822
+;;      sdc_ycenter =+0.007
+;;                   -0.197
+;
+;  sdc_ycenter(2) was -.197 from survey.  -.087 is DD's correction 
+;   based on (e,e'p) data (centering Em,Pm).
+;
+
+; Wire number of center of wire chamber
+; Note the convention : x : low number =  -x , u,v : low number = "-x"
+; x1 and x2, u1 and u2, v1 and v2 are offset by half a cell length
+; assume 1st wire of 1st dc of a set is closest to edge where counting starts
+      sdc_central_wire = (24.75+.008+.0019)
+                         (24.25-.008+.0064)
+                         (32.75-.001-.0105)
+                         (32.25+.001+.0021)
+                         (24.25+.003+.0019)
+                         (24.75-.003+.0075)
+                         (24.75-.001-.0019)
+                         (24.25+.001-.0078+.0120)
+                         (32.75+.002-.0104-.0067)
+                         (32.25-.002-.0007-.0053)
+                         (24.25-.003-.0008-.0015)
+                         (24.75+.003-.0081+.0131)
+; with shifts to make resiudals line up with each other.
+;      sdc_central_wire = (24.75+.008)
+;                         (24.25-.008)
+;                         32.75
+;                         32.25
+;                         (24.25+.002)
+;                         (24.75-.002)
+;                         24.75
+;                         24.25
+;                         (32.75+.003)
+;                         (32.25-.003)
+;                         (24.25-.003)
+;                         (24.75+.003)
+; nov95 online values
+;      sdc_central_wire = (24.75+.008)
+;                         (24.25-.008)
+;                         (32.75-.009)
+;                         (32.25+.009)
+;                         24.25
+;                         24.75
+;                         (24.75-.005)
+;                         (24.25+.005)
+;                         32.75
+;                         32.25
+;                         (24.25-.006)
+;                         (24.75+.006)
+; s_chamber_planes    array giving the chamber number for each plane
+      sdc_chamber_planes = 1
+                           1
+                           1
+                           1
+                           1
+                           1
+                           2
+                           2
+                           2
+                           2
+                           2
+                           2
+; The hms readout numbers some planes in reverse order.
+; I (SAW) think that the SOS readout numbers are always in forward order
+; The following array is a flag on the order number.
+; If sdc_wire_counting(plane) = 0
+;  the wire center is at (wire - sdc_central_wire) * pitch
+; If sdc_wire_counting(plane) = 1
+;  the wire center is at ( sdc_nrwire + 1 - wire - sdc_central_wire) * pitch
+        sdc_wire_counting = 1
+                            0
+                            1
+                            0
+                            0
+                            1
+                            1
+                            0
+                            1
+                            0
+                            0
+                            1
+; The velocity correction is the distance from the center of the wire divided
+; by the velocity of propagation times sdc_drifttime_sign(pln).  +/-1
+; for disc. card at +/- coord. (i.e. top = -x direction, so top readout is +1)
+;
+; THESE ARE NOTHING BUT BAD GUESSES AT THE MOMENT!!!!
+;
+       sdc_drifttime_sign =  +1
+                             -1
+                             -1
+                             +1
+                             +1
+                             -1
+                             +1
+                             -1
+                             -1
+                             +1
+                             +1
+                             -1
+; Names of each wire plane
+;      sdc_plane_names = 'sos1u1'
+;                        'sos1u2'
+;                        'sos1x1'
+;                        'sos1x2'
+;                        'sos1v1'
+;                        'sos1v2'
+;                        'sos2u1'
+;                        'sos2u2'
+;                        'sos2x1'
+;                        'sos2x2'
+;                        'sos2v1'
+;                        'sos2v2'
+;                        'sos3u1'
+;                        'sos3u2'
+;                        'sos3x1'
+;                        'sos3x2'
+;                        'sos3v1'
+;                        'sos3v2'
diff --git a/examples/PARAM/52949/sdc_offsets.param b/examples/PARAM/52949/sdc_offsets.param
new file mode 100644
index 0000000000000000000000000000000000000000..596e78025531045597ed372bdcea6764a00563a8
--- /dev/null
+++ b/examples/PARAM/52949/sdc_offsets.param
@@ -0,0 +1,71 @@
+; cable id's for SOS Drift Chambers
+; array is 64,12 (wires,planes)), but u and v planes have only 48/64 used.
+
+sdc_card_no=
+; Plane 1, wires 1-48, 16 per card
+              1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
+              2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
+              3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 2, wires 1-48, 16 per card
+              4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4
+              5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5
+              6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 3, wires 1-64, 16 per card
+              7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7
+              8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8
+              9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9
+             10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10
+; Plane 4, wires 1-64, 16 per card
+             11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11
+             12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12
+             13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13
+             14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14
+; Plane 5, wires 1-48, 16 per card
+             15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15
+             16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16
+             17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 6, wires 1-48, 16 per card
+             18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18
+             19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19
+             20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 1, wires 1-48, 16 per card
+             21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21
+             22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22
+             23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 2, wires 1-48, 16 per card
+             24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24
+             25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25
+             26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 3, wires 1-64, 16 per card
+             27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27
+             28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28
+             29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29
+             30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
+; Plane 4, wires 1-64, 16 per card
+             31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31
+             32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32
+             33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33
+             34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34
+; Plane 5, wires 1-48, 16 per card
+             35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35
+             36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36
+             37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 6, wires 1-48, 16 per card
+             38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38
+             39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39
+             40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+;
+;       Cable Delays on a per/card basys
+;
+sdc_card_delay =  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
diff --git a/examples/PARAM/52949/sdebug.param b/examples/PARAM/52949/sdebug.param
new file mode 100644
index 0000000000000000000000000000000000000000..285818c5af3f50db8ca69d71ad846d9d0e036b7e
--- /dev/null
+++ b/examples/PARAM/52949/sdebug.param
@@ -0,0 +1,122 @@
+; sos tracking code debug flags.
+; when these flags are non-zero, dump routines are called to
+; print out the data banks for each event.
+;
+;  sluno     fortran lun for output
+      sluno = 6
+; sdebugdumptof           Dump timing information for fitting offsets
+      sdebugdumptof = 0
+; sdebugdumpcal           Dump calorimeter information for fitting gains
+      sdebugdumpcal = 0
+; number of pedestal events required to overwrite orig. peds.
+  shodo_min_peds = 500
+  scal_min_peds  = 500
+  scer_min_peds  = 500
+  saer_min_peds = 500
+  sluc_min_peds = 500
+
+
+; DEBUGGING OUTPUT FLAGS
+; ----------------------
+; sdebugprintrawdc        Dump SDC_RAW_DC bank
+      sdebugprintrawdc = 0
+; sdebugprintdecodeddc    DUMP SDC_DECODED_DC bank
+      sdebugprintdecodeddc = 0
+; sdebugflagpsi               Dump calculated coordinate positions
+      sdebugflagpsi =  0
+; sdebugflaggeoemtry          Dump calculated geometrical parameters
+      sdebugflaggeometry = 0
+; sdebugflagpr                Dump intermediate pattern recognition results
+      sdebugflagpr = 0
+; sdebugflagstubchisq         Dump chi2 of left-right fits
+      sdebugstubchisq = 0
+; sdebugflagstubs             Dump stub fit results
+      sdebugflagstubs = 0
+; sdebuglinkstubs             Dump link stub results
+      sdebuglinkstubs = 0
+; sdebugtrackprint            Dump focal plane track fit results
+      sdebugtrackprint = 0
+; sdebugtartrackprint         Dump tracks at target
+      sdebugtartrackprint = 0
+; tof debuging
+;
+;  sdebugprintscinraw         Dump SOS_RAW_SCIN
+    sdebugprintscinraw = 0
+;  sdebugprintscindec         Dump SOS_DECODED_SCIN
+    sdebugprintscindec = 0
+;  sdebugprinttoftracks       Dump  sos_scin_tof
+    sdebugprinttoftracks = 0
+;  sdebugprinttracktests      Dump SOS_TRACK_TESTS
+    sdebugprinttracktests = 0
+;
+;
+;  sos calorimeter debug flags
+;  slun_dbg_cal        lun for output
+   slun_dbg_cal   = sluno
+;  sdbg_raw_cal        call s_prt_cal_raw
+   sdbg_raw_cal = 0
+;  sdbg_sparsified_cal call s_prt_cal_sparsified
+   sdbg_sparsified_cal = 0
+;  sdbg_decoded_cal    call s_prt_cal_decoded
+   sdbg_decoded_cal = 0
+;  sdbg_clusters_cal   call s_prt_cal_clusters
+   sdbg_clusters_cal = 0
+;  sdbg_tracks_cal     call s_prt_cal_tracks
+   sdbg_tracks_cal = 0
+;  sdbg_tests_cal      call s_prt_cal_tests    SOS_TRACK_TESTS
+   sdbg_tests_cal = 0
+;
+;  hard wired histograms. If these flags .ne. 0 then the histogram
+;     blocks are filled
+;
+; sturnon_scin_raw_hist       Histogram SOS raw hodoscope data (all blocks)
+  sturnon_scin_raw_hist = 1
+; sturnon_decoded_dc_hist     Histogram SOS_DECODED_DC
+  sturnon_decoded_dc_hist = 1
+; sturnon_focal_plane_hist    Histogram SOS_FOCAL_PLANE
+  sturnon_focal_plane_hist = 1
+; sturnon_target_hist         HISTOGRAM SOS_TARGET
+  sturnon_target_hist = 1
+;
+; Bypass paramters to bypass code elementes in s_reconstruction
+;      Stored in sosbypass_switches.cmn
+;      Code element is bypassed if switch .ne. 0
+; sbypass_trans_dc         bypass s_trans_dc
+  sbypass_trans_dc   = 0
+; sbypass_track            bypass s_track
+  sbypass_track      = 0
+; sbypass_targ_trans       bypass s_targ_trans
+  sbypass_targ_trans = 0
+; sbypass_dc_eff           bypass s_dc_eff and s_dc_eff_shutdown
+  sbypass_dc_eff     = 0
+; sbypass_track_eff        bypass s_tracking efficiency code
+  sbypass_track_eff  = 0
+; sbypass_track_eff_files  bypass s_tracking efficiency output files
+  sbypass_track_eff_files  = 1
+
+; sbypass_trans_scin       bypass s_trans_scin
+  sbypass_trans_scin = 0
+; sbypass_tof              bypass s_tof
+  sbypass_tof        = 0
+; sbypass_scin_eff         bypass s_scin_eff and s_scin_eff_shutdown
+  sbypass_scin_eff   = 0
+
+; sbypass_trans_cer        bypass s_trans_cer
+  sbypass_trans_cer  = 0
+; sbypass_cer              bypass s_cer, (a dummy routine)
+  sbypass_cer        = 1
+; sbypass_cer_eff          bypass s_cer_eff and s_cer_eff_shutdown
+  sbypass_cer_eff    = 0
+
+; sbypass_aero              bypass s_aero
+  sbypass_aero        = 0
+
+; sbypass_trans_cal        bypass s_trans_cal
+  sbypass_trans_cal  = 0
+; sbypass_cal              bypass s_cal
+  sbypass_cal        = 0
+; sbypass_cal_eff          bypass s_cal_eff and s_cal_eff_shutdown
+  sbypass_cal_eff    = 0
+
+; sbypass_physics          bypass s_physics
+  sbypass_physics    = 0
diff --git a/examples/PARAM/52949/shodo.param.vt b/examples/PARAM/52949/shodo.param.vt
new file mode 100644
index 0000000000000000000000000000000000000000..3d367ac9980faf72ea9c889ba991d8587061cd82
--- /dev/null
+++ b/examples/PARAM/52949/shodo.param.vt
@@ -0,0 +1,190 @@
+; sstart_time_center  center of allowed time window                             
+   sstart_time_center = 32.                                                     
+; sstart_time_slop    1/2 width of time window                                  
+   sstart_time_slop = 25.                                                       
+; sscin_tdc_min       minimum tdc value in sos scin                             
+   sscin_tdc_min = 0                                                            
+; sscin_tdc_max       maximum allowed tdc value                                 
+;   sscin_tdc_max = 9000                                                        
+; 19.08.1999 At suggestion of Mack, reduce to 4000 to get rid of                
+; bad beta values.                                                              
+                                                                                
+   sscin_tdc_max = 4000                                                         
+ ; sscin_tdc_to_time   scin tdc time per channel                                
+   sscin_tdc_to_time = 0.0247                     ; Monte Carlo Value           
+                                                                                
+;;; All the following taken from hhodo.param                                    
+; sos_tof_params                                                                
+; snum_scin_counters, shodo_zpos, shodo_center_coord, shodo_width               
+; are all calculated within s_init_scin                                         
+;    shodo_pos_coord and shodo_neg_coord are not yet used                       
+;                                                                               
+     shodo_slop     =    2.,  2.,  4.,  4.                                      
+;                                                                               
+     shodo_vel_light =  14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+;                                                                               
+      shodo_pos_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+;                                                                               
+      shodo_neg_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                                                                                
+                                                                                
+  shodo_pos_minph = 145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                                                                                
+  shodo_neg_minph = 145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                                                                                
+;  shodo_pos_phc_coeff = -.9,-.764,-.9,-.952                                    
+;  shodo_pos_phc_coeff = -.9,-.820,-.95,-1.0                                    
+;  shodo_pos_phc_coeff = -1.1,-1.2,-1.0,-1.1                                    
+  shodo_pos_phc_coeff = -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                                                                                
+;  shodo_neg_phc_coeff = -.9,-.764,-.9,-.952                                    
+;  shodo_neg_phc_coeff = -.9,-.820,-.95,-1.0                                    
+;  shodo_neg_phc_coeff = -1.1,-1.2,-1.0,-101                                    
+  shodo_neg_phc_coeff = -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                                                                                
+                                                                                
+;order = 1x, 1y, 2x, 2y?       Yes.                                             
+;                                                                               
+;i changed s2x pos, 6th from bottom (11), from -34.4628 to -33.4628             
+                                                                                
+shodo_pos_time_offset = -11.1561,  -8.2512, -20.8399, -22.1478
+                         -4.9220,  -6.1990, -17.2972, -20.6541
+                         -6.5630,  -6.5562, -17.2113, -25.0076
+                          2.0654,  -5.2586, -21.0289, -23.7117
+                         -2.3622,  -2.7236, -16.4206, -23.6527
+                         -1.7189,  -3.5400, -19.5546, -25.5267
+                         -5.8419,  -9.0256, -20.5453, -20.3712
+                         -3.0988,  -7.5451, -18.7901, -19.9287
+                         -1.5768,  -4.2217, -21.4121, -19.8550
+                          0.0000,  -1.9975, -17.1522,   0.0000
+                          0.0000,   0.0000, -18.5695,  -1.9975
+                          0.0000,   0.0000, -17.0718,   0.0000
+                          0.0000,   0.0000, -22.3547,   0.0000
+                          0.0000,   0.0000, -14.7852,   0.0000
+                          0.0000,   0.0000, -18.4089,   0.0000
+                          0.0000,   0.0000, -10.5723,   0.0000
+shodo_neg_time_offset =  -4.3414,  -4.2570,   5.1140, -22.1772
+                          3.9469,  -7.2221, -12.6892, -23.5859
+                          6.2738,  -5.4030,  -3.5626, -21.8087
+                         -1.2458,  -4.2156, -12.7788, -22.9824
+                          2.3585,  -1.7379,  -8.9527, -17.2679
+                          6.4054,  -6.1500, -15.9257, -24.4995
+                          4.7343,  -5.9226,  -2.0483, -19.6460
+                          8.0788,  -1.1443, -16.5313, -18.6606
+                          1.9380,  -4.3016,  -2.5992, -24.3681
+                          0.0000,  -1.9975, -17.5387,   0.0000
+                          0.0000,   0.0000,  -0.7155,   0.0000
+                          0.0000,   0.0000, -14.6707,  -1.9975
+                          0.0000,   0.0000,  -1.2884,   0.0000
+                          0.0000,   0.0000, -10.0645,   0.0000
+                          0.0000,   0.0000,   0.9972,   0.0000
+                          0.0000,   0.0000,  -9.2349,   0.0000
+                                                                                
+;                                                                               
+  shodo_pos_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+;                                                                               
+  shodo_neg_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                                                                                
diff --git a/examples/PARAM/52949/shodo.pos b/examples/PARAM/52949/shodo.pos
new file mode 100644
index 0000000000000000000000000000000000000000..48a656addb0ce0689898b60810796cbaf56df15e
--- /dev/null
+++ b/examples/PARAM/52949/shodo.pos
@@ -0,0 +1,103 @@
+      spathlength_central = 750
+; Z positions of hodoscopes
+      sscin_1y_zpos = ( 42.6+31.01)
+      sscin_1x_zpos = ( 66.1+31.01+0.9)
+      sscin_2y_zpos = (218.5+31.01-1.4)
+      sscin_2x_zpos = (242.0+31.01+17.8-1.4)
+      sscin_1x_dzpos = 1.12
+      sscin_1y_dzpos = 1.12
+      sscin_2x_dzpos = 1.12
+      sscin_2y_dzpos = 1.12
+; Sizes of hodoscope paddles
+      sscin_1x_size = 7.303
+      sscin_1y_size = 4.445
+      sscin_2x_size = 7.303
+      sscin_2y_size = 4.445
+      sscin_1x_spacing = 7.025
+      sscin_1y_spacing = 4.050
+      sscin_2x_spacing = 7.025
+      sscin_2y_spacing = 4.050
+; Number of hodoscope paddles per layer
+      sscin_1x_nr =  9
+      sscin_1y_nr =  9
+      sscin_2x_nr = 16
+      sscin_2y_nr =  9
+; X,Y positions of hodoscope paddles
+      sscin_1x_left  =  23.5
+      sscin_1x_right = -23.5
+      sscin_1x_offset=   -0.25
+      sscin_1x_center= -28.100
+                       -21.075
+                       -14.050
+                        -7.025
+                         0.000
+                         7.025
+                        14.050
+                        21.075
+                        28.100
+      sscin_1y_top   = -36.8
+      sscin_1y_bot   =  36.8
+; increasing offset moves "delta y" histogram move to larger y.
+      sscin_1y_offset=   0.0
+
+      sscin_1y_center=  16.20
+                        12.15
+                         8.10
+                         4.05
+                         0.00
+                        -4.05
+                        -8.10
+                       -12.15
+                       -16.20
+      sscin_2x_left  =  34.00
+      sscin_2x_right = -34.00
+      sscin_2x_offset=   4.57
+      sscin_2x_center=  -55.700
+                        -48.675
+                        -41.650
+                        -34.625
+                        -27.600
+                        -20.575
+                        -13.550
+                         -6.525
+                          0.500
+                          7.525
+                         14.550
+                         21.575
+                         28.600
+                         35.625
+                         42.650
+                         49.675
+
+
+;                       -60.25   ; Values from old variable "top"
+;                       -52.75
+;                       -45.25
+;                       -37.75
+;                       -30.25
+;                       -22.75
+;                       -15.25
+;                        -7.75
+;                        -0.25
+;                         7.25
+;                        14.75
+;                        22.25
+;                        29.75
+;                        37.25
+;                        44.75
+;                        52.25
+
+
+      sscin_2y_top   = -57.15
+      sscin_2y_bot   =  57.15
+; increasing offset moves "delta y" histogram move to larger y.
+      sscin_2y_offset=   0.8
+      sscin_2y_center=  16.20
+                        12.15
+                         8.10
+                         4.05
+                         0.00
+                        -4.05
+                        -8.10
+                       -12.15
+                       -16.20
diff --git a/examples/PARAM/52949/sos.driftmap.vt.52930 b/examples/PARAM/52949/sos.driftmap.vt.52930
new file mode 100644
index 0000000000000000000000000000000000000000..48e704906f074889bda84261cca05a9048198991
--- /dev/null
+++ b/examples/PARAM/52949/sos.driftmap.vt.52930
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+sdriftbins=138
+;number of 1st bin in Meek's table in ns
+sdrift1stbin=-24
+;bin size in ns of Meek's table
+sdriftbinsz=2
+swc1u1fract=0.0003,0.0006,0.0009,0.0012,0.0015,0.0018,0.0022,0.0026
+0.0029,0.0032,0.0035,0.0038,0.0042,0.0049,0.0057,0.0072,0.0095,0.0129
+0.0180,0.0244,0.0322,0.0415,0.0517,0.0638,0.0781,0.0936,0.1097,0.1280
+0.1483,0.1701,0.1922,0.2155,0.2397,0.2644,0.2902,0.3157,0.3421,0.3675
+0.3944,0.4199,0.4453,0.4718,0.4963,0.5215,0.5461,0.5696,0.5930,0.6155
+0.6377,0.6585,0.6787,0.6985,0.7179,0.7375,0.7552,0.7728,0.7906,0.8071
+0.8229,0.8390,0.8542,0.8679,0.8804,0.8915,0.9015,0.9106,0.9184,0.9256
+0.9317,0.9371,0.9420,0.9464,0.9507,0.9542,0.9573,0.9601,0.9630,0.9653
+0.9679,0.9701,0.9722,0.9739,0.9758,0.9773,0.9787,0.9801,0.9813,0.9824
+0.9832,0.9842,0.9849,0.9856,0.9862,0.9867,0.9873,0.9880,0.9884,0.9888
+0.9893,0.9897,0.9902,0.9906,0.9910,0.9915,0.9918,0.9921,0.9925,0.9928
+0.9931,0.9934,0.9937,0.9941,0.9947,0.9950,0.9952,0.9956,0.9959,0.9963
+0.9965,0.9968,0.9971,0.9972,0.9975,0.9977,0.9980,0.9984,0.9987,0.9989
+0.9991,0.9993,0.9995,0.9997,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+swc1u2fract=0.0002,0.0006,0.0008,0.0011,0.0014,0.0018,0.0022,0.0026
+0.0030,0.0033,0.0036,0.0039,0.0042,0.0045,0.0050,0.0058,0.0070,0.0087
+0.0118,0.0163,0.0223,0.0295,0.0377,0.0481,0.0609,0.0742,0.0887,0.1057
+0.1244,0.1442,0.1652,0.1879,0.2111,0.2351,0.2608,0.2867,0.3121,0.3379
+0.3641,0.3902,0.4150,0.4403,0.4653,0.4908,0.5151,0.5382,0.5612,0.5847
+0.6064,0.6286,0.6504,0.6704,0.6900,0.7098,0.7294,0.7480,0.7666,0.7845
+0.8015,0.8188,0.8340,0.8479,0.8627,0.8752,0.8872,0.8976,0.9069,0.9151
+0.9223,0.9289,0.9347,0.9399,0.9448,0.9491,0.9529,0.9562,0.9593,0.9623
+0.9648,0.9671,0.9691,0.9712,0.9731,0.9750,0.9765,0.9779,0.9792,0.9803
+0.9815,0.9825,0.9835,0.9842,0.9850,0.9859,0.9865,0.9872,0.9876,0.9881
+0.9886,0.9891,0.9897,0.9900,0.9904,0.9908,0.9911,0.9915,0.9918,0.9922
+0.9926,0.9932,0.9936,0.9939,0.9942,0.9945,0.9948,0.9951,0.9954,0.9957
+0.9958,0.9959,0.9962,0.9965,0.9968,0.9972,0.9975,0.9978,0.9981,0.9983
+0.9986,0.9988,0.9991,0.9994,0.9996,0.9997,0.9999,1.0000,1.0000,1.0000
+swc1x1fract=0.0002,0.0004,0.0008,0.0009,0.0011,0.0013,0.0015,0.0018
+0.0021,0.0024,0.0026,0.0029,0.0033,0.0037,0.0042,0.0049,0.0058,0.0074
+0.0107,0.0144,0.0207,0.0285,0.0378,0.0480,0.0607,0.0748,0.0913,0.1094
+0.1286,0.1499,0.1715,0.1943,0.2181,0.2425,0.2673,0.2929,0.3185,0.3434
+0.3678,0.3929,0.4177,0.4434,0.4680,0.4919,0.5156,0.5388,0.5626,0.5858
+0.6083,0.6303,0.6509,0.6706,0.6897,0.7089,0.7287,0.7484,0.7662,0.7831
+0.8000,0.8166,0.8329,0.8481,0.8628,0.8765,0.8884,0.8995,0.9088,0.9173
+0.9247,0.9310,0.9370,0.9419,0.9468,0.9509,0.9548,0.9584,0.9614,0.9638
+0.9665,0.9690,0.9711,0.9730,0.9746,0.9762,0.9777,0.9790,0.9801,0.9812
+0.9822,0.9830,0.9839,0.9846,0.9854,0.9861,0.9867,0.9874,0.9879,0.9885
+0.9889,0.9895,0.9898,0.9902,0.9907,0.9910,0.9915,0.9919,0.9922,0.9925
+0.9928,0.9931,0.9934,0.9937,0.9941,0.9943,0.9946,0.9949,0.9953,0.9955
+0.9959,0.9962,0.9964,0.9967,0.9969,0.9972,0.9976,0.9977,0.9979,0.9981
+0.9983,0.9985,0.9987,0.9991,0.9992,0.9993,0.9995,0.9997,0.9999,1.0000
+swc1x2fract=0.0003,0.0006,0.0009,0.0012,0.0015,0.0018,0.0021,0.0025
+0.0027,0.0030,0.0032,0.0037,0.0041,0.0048,0.0057,0.0074,0.0097,0.0135
+0.0176,0.0233,0.0300,0.0385,0.0489,0.0610,0.0749,0.0902,0.1067,0.1253
+0.1448,0.1653,0.1873,0.2102,0.2341,0.2586,0.2832,0.3086,0.3343,0.3597
+0.3860,0.4122,0.4373,0.4632,0.4891,0.5140,0.5391,0.5630,0.5857,0.6086
+0.6300,0.6511,0.6721,0.6917,0.7121,0.7308,0.7502,0.7684,0.7862,0.8032
+0.8191,0.8352,0.8500,0.8642,0.8770,0.8885,0.8992,0.9082,0.9170,0.9243
+0.9312,0.9368,0.9421,0.9471,0.9513,0.9551,0.9585,0.9617,0.9646,0.9672
+0.9695,0.9715,0.9735,0.9752,0.9766,0.9780,0.9794,0.9804,0.9816,0.9824
+0.9833,0.9841,0.9848,0.9853,0.9860,0.9867,0.9872,0.9879,0.9884,0.9888
+0.9892,0.9896,0.9900,0.9904,0.9908,0.9913,0.9915,0.9919,0.9922,0.9925
+0.9930,0.9934,0.9938,0.9942,0.9945,0.9949,0.9953,0.9955,0.9959,0.9961
+0.9965,0.9968,0.9970,0.9972,0.9975,0.9977,0.9980,0.9983,0.9984,0.9986
+0.9989,0.9992,0.9995,0.9996,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000
+swc1v1fract=0.0003,0.0006,0.0008,0.0012,0.0015,0.0019,0.0021,0.0024
+0.0027,0.0031,0.0035,0.0040,0.0043,0.0049,0.0056,0.0069,0.0088,0.0119
+0.0165,0.0227,0.0299,0.0386,0.0493,0.0610,0.0746,0.0891,0.1053,0.1241
+0.1445,0.1648,0.1861,0.2087,0.2333,0.2575,0.2830,0.3087,0.3344,0.3612
+0.3881,0.4143,0.4389,0.4642,0.4898,0.5151,0.5397,0.5641,0.5879,0.6102
+0.6317,0.6520,0.6728,0.6932,0.7131,0.7321,0.7507,0.7690,0.7866,0.8044
+0.8210,0.8359,0.8508,0.8643,0.8772,0.8889,0.8994,0.9087,0.9171,0.9245
+0.9311,0.9367,0.9419,0.9463,0.9507,0.9543,0.9576,0.9605,0.9633,0.9659
+0.9682,0.9704,0.9722,0.9741,0.9756,0.9770,0.9784,0.9796,0.9809,0.9819
+0.9828,0.9837,0.9847,0.9854,0.9862,0.9870,0.9875,0.9881,0.9885,0.9891
+0.9896,0.9901,0.9905,0.9910,0.9913,0.9916,0.9920,0.9924,0.9928,0.9931
+0.9935,0.9938,0.9940,0.9943,0.9946,0.9950,0.9953,0.9955,0.9959,0.9963
+0.9966,0.9968,0.9972,0.9974,0.9977,0.9980,0.9982,0.9986,0.9988,0.9991
+0.9993,0.9995,0.9997,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+swc1v2fract=0.0002,0.0004,0.0009,0.0012,0.0015,0.0018,0.0022,0.0025
+0.0028,0.0032,0.0035,0.0040,0.0043,0.0048,0.0054,0.0063,0.0083,0.0109
+0.0148,0.0198,0.0264,0.0340,0.0440,0.0559,0.0698,0.0840,0.1000,0.1183
+0.1380,0.1587,0.1807,0.2035,0.2277,0.2523,0.2784,0.3023,0.3278,0.3530
+0.3794,0.4062,0.4309,0.4571,0.4822,0.5079,0.5316,0.5552,0.5783,0.6019
+0.6246,0.6465,0.6674,0.6866,0.7064,0.7247,0.7443,0.7625,0.7805,0.7978
+0.8145,0.8303,0.8454,0.8599,0.8726,0.8844,0.8953,0.9042,0.9126,0.9202
+0.9265,0.9326,0.9379,0.9428,0.9469,0.9507,0.9539,0.9570,0.9603,0.9628
+0.9654,0.9679,0.9700,0.9719,0.9736,0.9755,0.9770,0.9784,0.9797,0.9808
+0.9820,0.9830,0.9840,0.9848,0.9854,0.9862,0.9869,0.9875,0.9880,0.9885
+0.9890,0.9893,0.9897,0.9901,0.9904,0.9908,0.9913,0.9917,0.9921,0.9925
+0.9928,0.9932,0.9936,0.9938,0.9942,0.9944,0.9948,0.9951,0.9954,0.9956
+0.9959,0.9962,0.9965,0.9968,0.9972,0.9975,0.9978,0.9980,0.9984,0.9986
+0.9989,0.9990,0.9993,0.9995,0.9997,0.9999,1.0000,1.0000,1.0000,1.0000
+swc2u1fract=0.0003,0.0004,0.0006,0.0008,0.0011,0.0014,0.0016,0.0019
+0.0023,0.0025,0.0027,0.0032,0.0034,0.0038,0.0042,0.0046,0.0055,0.0073
+0.0109,0.0157,0.0218,0.0296,0.0395,0.0499,0.0634,0.0788,0.0953,0.1139
+0.1328,0.1539,0.1753,0.1990,0.2233,0.2479,0.2729,0.2982,0.3240,0.3493
+0.3758,0.4000,0.4259,0.4503,0.4749,0.4997,0.5229,0.5458,0.5676,0.5900
+0.6115,0.6331,0.6535,0.6740,0.6946,0.7143,0.7334,0.7525,0.7710,0.7883
+0.8050,0.8223,0.8380,0.8534,0.8691,0.8821,0.8939,0.9048,0.9144,0.9223
+0.9291,0.9354,0.9413,0.9463,0.9511,0.9550,0.9589,0.9623,0.9651,0.9678
+0.9702,0.9725,0.9743,0.9764,0.9782,0.9799,0.9812,0.9826,0.9835,0.9845
+0.9855,0.9866,0.9875,0.9882,0.9888,0.9895,0.9899,0.9903,0.9907,0.9911
+0.9916,0.9920,0.9922,0.9926,0.9930,0.9933,0.9936,0.9939,0.9941,0.9945
+0.9946,0.9949,0.9952,0.9955,0.9958,0.9961,0.9964,0.9966,0.9967,0.9970
+0.9973,0.9975,0.9977,0.9979,0.9981,0.9983,0.9985,0.9988,0.9990,0.9992
+0.9993,0.9995,0.9997,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+swc2u2fract=0.0003,0.0006,0.0009,0.0011,0.0013,0.0016,0.0019,0.0022
+0.0025,0.0028,0.0031,0.0033,0.0037,0.0042,0.0046,0.0054,0.0066,0.0085
+0.0121,0.0173,0.0233,0.0315,0.0408,0.0523,0.0655,0.0802,0.0962,0.1150
+0.1347,0.1562,0.1783,0.2008,0.2245,0.2495,0.2744,0.2998,0.3252,0.3511
+0.3766,0.4014,0.4260,0.4522,0.4767,0.5012,0.5246,0.5472,0.5693,0.5918
+0.6134,0.6347,0.6555,0.6760,0.6967,0.7166,0.7353,0.7538,0.7717,0.7896
+0.8059,0.8224,0.8377,0.8532,0.8672,0.8798,0.8914,0.9018,0.9113,0.9196
+0.9268,0.9329,0.9384,0.9436,0.9482,0.9524,0.9563,0.9595,0.9623,0.9652
+0.9678,0.9701,0.9725,0.9743,0.9763,0.9780,0.9795,0.9809,0.9822,0.9836
+0.9846,0.9856,0.9865,0.9872,0.9881,0.9887,0.9894,0.9900,0.9905,0.9909
+0.9913,0.9918,0.9922,0.9925,0.9928,0.9932,0.9935,0.9939,0.9943,0.9945
+0.9947,0.9950,0.9953,0.9956,0.9959,0.9962,0.9965,0.9967,0.9969,0.9971
+0.9974,0.9976,0.9978,0.9979,0.9982,0.9983,0.9985,0.9988,0.9989,0.9992
+0.9994,0.9995,0.9997,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+swc2x1fract=0.0002,0.0003,0.0005,0.0007,0.0009,0.0012,0.0015,0.0017
+0.0019,0.0022,0.0024,0.0027,0.0030,0.0034,0.0037,0.0042,0.0053,0.0076
+0.0114,0.0164,0.0230,0.0321,0.0425,0.0559,0.0713,0.0874,0.1053,0.1244
+0.1453,0.1671,0.1904,0.2138,0.2379,0.2626,0.2880,0.3134,0.3387,0.3635
+0.3898,0.4143,0.4396,0.4637,0.4877,0.5117,0.5354,0.5587,0.5817,0.6041
+0.6259,0.6462,0.6672,0.6861,0.7055,0.7247,0.7439,0.7620,0.7804,0.7972
+0.8143,0.8301,0.8461,0.8608,0.8747,0.8879,0.8991,0.9100,0.9185,0.9266
+0.9339,0.9400,0.9456,0.9504,0.9546,0.9586,0.9621,0.9651,0.9680,0.9707
+0.9729,0.9752,0.9771,0.9787,0.9802,0.9817,0.9830,0.9844,0.9854,0.9864
+0.9872,0.9879,0.9887,0.9893,0.9900,0.9904,0.9909,0.9913,0.9917,0.9920
+0.9924,0.9928,0.9931,0.9934,0.9937,0.9940,0.9944,0.9946,0.9949,0.9952
+0.9955,0.9958,0.9960,0.9963,0.9966,0.9968,0.9969,0.9971,0.9973,0.9975
+0.9977,0.9979,0.9981,0.9983,0.9985,0.9987,0.9989,0.9991,0.9993,0.9995
+0.9997,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+swc2x2fract=0.0003,0.0005,0.0007,0.0009,0.0012,0.0015,0.0017,0.0020
+0.0023,0.0026,0.0028,0.0031,0.0035,0.0038,0.0042,0.0049,0.0062,0.0086
+0.0124,0.0181,0.0260,0.0356,0.0472,0.0604,0.0755,0.0926,0.1114,0.1316
+0.1528,0.1752,0.1988,0.2231,0.2482,0.2736,0.2986,0.3234,0.3485,0.3740
+0.3994,0.4241,0.4486,0.4723,0.4957,0.5198,0.5425,0.5660,0.5881,0.6100
+0.6308,0.6520,0.6720,0.6924,0.7125,0.7307,0.7488,0.7666,0.7842,0.8018
+0.8182,0.8336,0.8491,0.8628,0.8764,0.8891,0.9004,0.9107,0.9196,0.9272
+0.9336,0.9400,0.9452,0.9502,0.9544,0.9582,0.9618,0.9644,0.9672,0.9698
+0.9724,0.9748,0.9766,0.9785,0.9803,0.9815,0.9828,0.9840,0.9849,0.9858
+0.9870,0.9880,0.9887,0.9894,0.9899,0.9906,0.9911,0.9916,0.9921,0.9925
+0.9928,0.9932,0.9936,0.9939,0.9942,0.9944,0.9947,0.9950,0.9953,0.9955
+0.9959,0.9962,0.9965,0.9968,0.9970,0.9973,0.9976,0.9978,0.9980,0.9982
+0.9985,0.9987,0.9990,0.9992,0.9993,0.9995,0.9998,0.9998,0.9999,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+swc2v1fract=0.0002,0.0004,0.0007,0.0008,0.0011,0.0013,0.0016,0.0018
+0.0022,0.0025,0.0027,0.0030,0.0033,0.0036,0.0040,0.0045,0.0054,0.0072
+0.0103,0.0149,0.0206,0.0278,0.0366,0.0478,0.0604,0.0752,0.0912,0.1092
+0.1283,0.1490,0.1710,0.1948,0.2179,0.2425,0.2677,0.2934,0.3202,0.3454
+0.3710,0.3971,0.4227,0.4478,0.4730,0.4979,0.5215,0.5450,0.5682,0.5898
+0.6132,0.6347,0.6550,0.6756,0.6962,0.7152,0.7330,0.7526,0.7705,0.7881
+0.8045,0.8209,0.8363,0.8516,0.8660,0.8794,0.8920,0.9027,0.9126,0.9207
+0.9279,0.9339,0.9398,0.9449,0.9495,0.9537,0.9576,0.9609,0.9642,0.9672
+0.9697,0.9719,0.9739,0.9758,0.9777,0.9792,0.9807,0.9822,0.9833,0.9845
+0.9858,0.9867,0.9876,0.9885,0.9892,0.9897,0.9903,0.9909,0.9913,0.9917
+0.9921,0.9925,0.9930,0.9932,0.9937,0.9940,0.9943,0.9946,0.9950,0.9953
+0.9956,0.9958,0.9961,0.9964,0.9966,0.9969,0.9970,0.9973,0.9975,0.9978
+0.9980,0.9983,0.9984,0.9986,0.9988,0.9990,0.9992,0.9994,0.9995,0.9997
+0.9998,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+swc2v2fract=0.0003,0.0005,0.0008,0.0011,0.0014,0.0017,0.0021,0.0023
+0.0026,0.0030,0.0033,0.0037,0.0040,0.0044,0.0048,0.0058,0.0072,0.0100
+0.0142,0.0202,0.0277,0.0370,0.0483,0.0618,0.0772,0.0943,0.1129,0.1334
+0.1548,0.1765,0.2008,0.2243,0.2486,0.2732,0.2983,0.3233,0.3499,0.3751
+0.4002,0.4256,0.4508,0.4746,0.4984,0.5220,0.5460,0.5690,0.5898,0.6111
+0.6320,0.6528,0.6725,0.6925,0.7121,0.7307,0.7492,0.7669,0.7837,0.8005
+0.8178,0.8339,0.8496,0.8639,0.8780,0.8898,0.9007,0.9104,0.9191,0.9264
+0.9328,0.9387,0.9438,0.9483,0.9525,0.9562,0.9600,0.9633,0.9659,0.9690
+0.9714,0.9736,0.9756,0.9772,0.9788,0.9804,0.9818,0.9831,0.9843,0.9853
+0.9861,0.9871,0.9880,0.9889,0.9896,0.9902,0.9907,0.9913,0.9917,0.9921
+0.9924,0.9928,0.9932,0.9935,0.9938,0.9942,0.9945,0.9948,0.9950,0.9953
+0.9956,0.9958,0.9961,0.9964,0.9966,0.9969,0.9973,0.9976,0.9980,0.9981
+0.9983,0.9985,0.9987,0.9989,0.9991,0.9993,0.9994,0.9995,0.9997,0.9999
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
diff --git a/examples/PARAM/52949/sosflags.param b/examples/PARAM/52949/sosflags.param
new file mode 100644
index 0000000000000000000000000000000000000000..b6044a54bc4022090ae1a0b87747335b33282d34
--- /dev/null
+++ b/examples/PARAM/52949/sosflags.param
@@ -0,0 +1,42 @@
+; Offset in the spectrometer momentum.
+  smomentum_factor = 0.000 ; leave 0 so it will have no effect
+                           ; use spcentral_offset if one needs to offset central momentum
+;
+; The sdelta_offset,stheta_offset,sphi_offset effect the
+; reconstructed target quantities. Used in s_targ_trans.f 
+; For transport x is in the dispersive direction with + down
+;               y is in the horizontal + towards large angles.
+;               z is along the central optics axis.
+; In transport coordinates phi = syptar = dy/dz and theta = sxptar = dx/dz 
+;    but for unknown reasons the yp offset is named  stheta_offset
+;    and  the xp offset is named  sphi_offset
+; Do not to change these values, since these are the zero order
+;  CMOP matrix elements. If you do change then your soss sieve
+;  plots will be screwed up.
+  sdelta_offset = 0.       ; (%) sdelta_tar = sdelta_tar + sdelta_offset
+  stheta_offset = 0.  	   ; (rad) syp_tar = syp_tar + stheta_offset
+  sphi_offset   = 0.       ; (rad) sxp_tar = sxp_tar + sphi_offset
+
+;saturation correction enable
+   genable_sos_satcorr = 1 ;(0=disabled) - STRACKING/s_satcorr.f
+                           ; event by event correction to ssdelta
+;central field saturation  correction enable
+   genable_sos_fieldcorr = 2003 ;(0=disabled) - ENGINE/s_fieldcorr.f
+;  genable_sos_fieldcorr = 2003 means using  C. Xu's parametrization 
+;  genable_sos_fieldcorr = 1999 means using  J. Volmer's parametrization
+;  either one determines sosp0corr which effects spcentral =   spcentral*(1+sosp0corr/100.)
+;
+; The following offsets are applied to the central kinematic variables
+;  in s_apply_offsets.f  . These might be modified by an experiment
+;  after doing calibration with elastic ep
+;
+  spcentral_offset = 0.0 ; sets  spcentral = spcentral * ( 1. + spcentral_offset / 100. )
+  sthetacentral_offset = 0.00 ; (rad)
+                       ;stheta_lab=stheta_lab + sthetacentral_offset/degree
+; This offset is determined from elastic ep data.
+; Must be added to ssxptar when used in calculating lab angles.
+; Example is in s_physics.f
+; 
+  s_oopcentral_offset = 0.0032  ; (rad)
+
+
diff --git a/examples/PARAM/52949/stracking.param b/examples/PARAM/52949/stracking.param
new file mode 100644
index 0000000000000000000000000000000000000000..6005ea75085d6c1cbd08c5fabdd64923769a0bc4
--- /dev/null
+++ b/examples/PARAM/52949/stracking.param
@@ -0,0 +1,76 @@
+; sos pattern recognition and tracking code parameters
+; sminhit(i)   minimum number of hits in each space point (one for each chamber)
+; smin_combos(i) minimum number of pairs in each space point ( one per chamber)
+; sspace_point_criterion(i) minimum separation of distinct space points
+;
+	smax_pr_hits = 25, 25
+        smin_hit =      5, 5
+        smin_combos =   6, 6
+        sspace_point_criterion = 1.2, 1.2 
+;
+; The following four criteria are applied to the stub fit results at the
+; focal plane position to link stubs to tracks
+; sxt_track_criterion  
+; syt_track_criterion
+; sxpt_track_criterion
+; sypt_track_criterion
+       sxt_track_criterion  = 100.
+       syt_track_criterion  = 20.
+       sxpt_track_criterion = 1.0
+       sypt_track_criterion = 1.0
+; ssingle_stub            If .ne. 0 make a track of all single stubs
+  ssingle_stub = 0
+; turn on/off small angle approximation to left/right decision for y
+  sSmallAngleApprox = 1
+;
+; Crude track selection criteria in s_physics
+; ssel_chi2_fpperdegmax   maximum chi2 per degree of freedom for track
+  ssel_chi2_fpperdegmax = 9999999.
+; ssel_dedx1min           minimum dedx to chose best track in scin 1
+  ssel_dedx1min = -1000000.
+; ssel_dedx1max           maximum dedx to chose best track in scin 1
+  ssel_dedx1max = 1000000.
+; ssel_betamin            minimum track beta to chose best track 
+  ssel_betamin  = -1000000.
+; ssel_betamax            maximum track beta to chose best track 
+  ssel_betamax  = 1000000.
+; ssel_etmin              minimum track et to chose best track 
+  ssel_etmin = -1000000.
+; ssel_etmax              maximum track et to chose best track 
+  ssel_etmax = 1000000.
+; ssel_ndegreesmin        minimum number of degrees of freedom for track
+  ssel_ndegreesmin = 1
+
+; ssel_using_scin         uses scintillator for track selection
+  ssel_using_scin = 1
+
+; sstat_maxchisq          chisquared limit for tracks used to measure hodo. eff.
+  sstat_maxchisq = 10.
+; sstat_slop              distance from center of scin. to count as expecting hit
+;              must be < 2 cm. since s1y and s2y scins. are only +/- 2cm in size.
+  sstat_slop = 1.
+; sstat_mineff            warning level for scin. effic.
+  sstat_mineff = .95
+; sstat_cal_maxchisq      chisquared limit for tracks used to measure cal. eff.
+  sstat_cal_maxchisq = 10.
+; sstat_cal_slop          distance from center of block to count as expecting hit
+  sstat_cal_slop = 2.
+; scer_min_eff            warning level for cerenkov effic.
+  scer_min_eff = .90
+; scer_threshold          threshold for good hit (for measureing effic.)
+  scer_threshold = 0.5
+; sdc_min_eff             warning level for dc raw effic.(1 per plane)
+  sdc_min_eff = .96,.96,.96,.96,.96,.96
+                .96,.96,.96,.96,.96,.96
+; sdc_min_wire_eff        warning level for wire effic, measured using tracking
+  sdc_min_wire_eff = .85
+; sdc_min_plane_eff       warning level for plane effic, measured using tracking
+  sdc_min_plane_eff = .95,.95,.95,.95,.95,.95
+                      .95,.95,.95,.95,.95,.95
+  sxloscin  = 2, 3
+  sxhiscin  = 8, 14
+  syloscin  = 2, 2
+  syhiscin  = 8, 8
+;  strack_eff_test_scin_planes is the number of planes nec needed to 
+;  set sweet spot to true. 4 is extra clean, 3 is good enough for e-'s.
+  strack_eff_test_num_scin_planes = 4
diff --git a/examples/PARAM/gbeam.param b/examples/PARAM/gbeam.param
new file mode 100644
index 0000000000000000000000000000000000000000..a2a6aa537420fc77e47d69bd20be2fe45f3b538a
--- /dev/null
+++ b/examples/PARAM/gbeam.param
@@ -0,0 +1,96 @@
+;                    BPM calibration constants
+;                    =========================
+  guse_bpm_in_recon  = 0   ; if 1 use bpm information for reconstruction
+  guse_bpmc = 1  ; if 1 use all 3 bpm info, if 0 use bpm A and B 
+  gbpm_sample  = 500 ; number of events, which are used for average 
+                     ; beam position ( <5000 ). Optimal value dep. on rate
+
+; the names are based on Paul Gueye's 'Status of the actual Beam Position
+;                   Monitors in the Hall C Beamline', December 1, 1995.
+; (mkj) apr-4-03 kappa,alpha and off for 3rd bpm are guesses,
+; need to find right values.
+;
+;  gbpm_kappa    = 1.85 ,1.85,1.85     ; sensitivity in cm
+gbpm_kappa    = 2.00 ,1.95,1.85  ; modified mkj 4/9/03
+  gbpm_alpha_x = 1.8192,0.7330 ,0.7   ; calibration gain: we may get them from the
+  gbpm_alpha_y = 1.0063,0.8935 ,0.7   ;  EPICS events, right now that's according to Paul's note
+
+; the following offsets get added to the calculated positions
+;  gbpm_x_off = -0.011,-0.004,0.      ; in cm: survey according to Paul's note
+;  gbpm_y_off = +0.052,+0.056,0.
+; From Dahlberg survey DT_C853 Apr 7, 2003
+gbpm_x_off = 0.017+.412-.094 , 0.061-.353-.055 ,0.037-0.09
+gbpm_y_off = 0.037+.381+.003 ,-0.040-.211-.033 ,0.028+.219
+
+; average beam positions: only used if 'guse_bpm_in_recon=0' 
+;  gbeam_xoff  = +0.18
+  gbeam_xoff  = +0.00
+  gbeam_xpoff = +0.00
+  gbeam_yoff  = +0.00
+  gbeam_ypoff = +0.00
+
+; spectrometers would like to see this positions (from optics studies) 
+; we treat SOS and HMS the same, however, we may change this if necessary
+;  gspec_xoff  = +0.18
+  gspec_xoff  = +0.00
+  gspec_xpoff = +0.00
+  gspec_yoff  = +0.00
+  gspec_ypoff = +0.00
+
+; Pedestals for BPM ADCs: from cosmic run #10933, 10/3/96, book XI-137
+  gbpm_xp_ped = 431.9,331.0,0.  ; these pedestals have to be determined
+  gbpm_xm_ped = 514.7,350.6,0.  ; from runs with no beam in the cavities,
+  gbpm_yp_ped = 406.9,358.8,0.  ; e.g. cosmic runs.
+  gbpm_ym_ped = 499.7,292.7,0. ;
+
+; positions of BPMs relative to target (from Paul's note)
+  gbpm_zpos = 345.5,166.3,0.   ; cm
+
+
+;             Fast Raster calibration constants
+;             =================================
+
+; Various fast raster quantities: gUse* are flags
+
+  gusefr               = 1  ; if 1 correct for FRY in reconstruction
+
+  guse_frdefault       = 1  ; if 1 do no phase correction (default)
+;      gfr_cal_mom      = 3.245  ; = beam momnetum during calibration run 
+;      gfrx_adcpercm    = 11328. ; = FR channels per cm deflection on target
+;      gfry_adcpercm    = 10708. ; from run 9981, August 25, 1996, book X-22
+
+      gfr_cal_mom      = 2.038  ; = beam momnetum during calibration run 
+      gfrx_adcpercm    = 4364.7 ; = FR channels per cm deflection on target
+      gfry_adcpercm    = 5471.9 ; from harp scan (H00A), June 19, 2004
+
+
+                            ;if 0 apply phase correction 
+      gfrx_dphase      = 0.0    ; phase shift (never measured for x so far) 
+      gFrx_synccut     = 0.     ; should be zero if applied on centered distr.
+      gfrx_adcmax      = 1000   ; ADC amplitude in channels.
+      gfrx_maxsize     = 0.1    ; fast raster amplitude in centimeter.
+
+      gfry_dphase      = 5.8    ; phase shift 
+      gFry_synccut     = 0.     ; should be zero if applied on centered distr.
+      gfry_adcmax      = 1000   ; ADC amplitude in channels.
+      gfry_maxsize     = 0.1    ; fast raster amplitude in centimeter.
+
+; The latest FR phase analysis from spring '96 showed, that there is no
+; measurable phase shift. During early running (E91-13, E89-12) the FRY-phase
+; was determined to be 5.8 degree.
+
+; positions of FR magnets relative to target
+  gfrx_dist  = 2111   ; cm
+  gfry_dist  = 2071   ; cm
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/PARAM/gbeam.param.bak b/examples/PARAM/gbeam.param.bak
new file mode 100644
index 0000000000000000000000000000000000000000..27ca6fb17d8086c29c1e1f50881a3c918dabdc9d
--- /dev/null
+++ b/examples/PARAM/gbeam.param.bak
@@ -0,0 +1,96 @@
+;                    BPM calibration constants
+;                    =========================
+  guse_bpm_in_recon  = 0   ; if 1 use bpm information for reconstruction
+  guse_bpmc = 1  ; if 1 use all 3 bpm info, if 0 use bpm A and B 
+  gbpm_sample  = 500 ; number of events, which are used for average 
+                     ; beam position ( <5000 ). Optimal value dep. on rate
+
+; the names are based on Paul Gueye's 'Status of the actual Beam Position
+;                   Monitors in the Hall C Beamline', December 1, 1995.
+; (mkj) apr-4-03 kappa,alpha and off for 3rd bpm are guesses,
+; need to find right values.
+;
+;  gbpm_kappa    = 1.85 ,1.85,1.85     ; sensitivity in cm
+gbpm_kappa    = 2.00 ,1.95,1.85  ; modified mkj 4/9/03
+  gbpm_alpha_x = 1.8192,0.7330 ,0.7   ; calibration gain: we may get them from the
+  gbpm_alpha_y = 1.0063,0.8935 ,0.7   ;  EPICS events, right now that's according to Paul's note
+
+; the following offsets get added to the calculated positions
+;  gbpm_x_off = -0.011,-0.004,0.      ; in cm: survey according to Paul's note
+;  gbpm_y_off = +0.052,+0.056,0.
+; From Dahlberg survey DT_C853 Apr 7, 2003
+gbpm_x_off = 0.017+.412,0.061-.353,0.037
+gbpm_y_off = 0.037+.381,-0.04-.211,0.028
+
+; average beam positions: only used if 'guse_bpm_in_recon=0' 
+;  gbeam_xoff  = +0.18
+  gbeam_xoff  = +0.00
+  gbeam_xpoff = +0.00
+  gbeam_yoff  = +0.00
+  gbeam_ypoff = +0.00
+
+; spectrometers would like to see this positions (from optics studies) 
+; we treat SOS and HMS the same, however, we may change this if necessary
+;  gspec_xoff  = +0.18
+  gspec_xoff  = +0.00
+  gspec_xpoff = +0.00
+  gspec_yoff  = +0.00
+  gspec_ypoff = +0.00
+
+; Pedestals for BPM ADCs: from cosmic run #10933, 10/3/96, book XI-137
+  gbpm_xp_ped = 431.9,331.0,0.  ; these pedestals have to be determined
+  gbpm_xm_ped = 514.7,350.6,0.  ; from runs with no beam in the cavities,
+  gbpm_yp_ped = 406.9,358.8,0.  ; e.g. cosmic runs.
+  gbpm_ym_ped = 499.7,292.7,0. ;
+
+; positions of BPMs relative to target (from Paul's note)
+  gbpm_zpos = 345.5,166.3,0.   ; cm
+
+
+;             Fast Raster calibration constants
+;             =================================
+
+; Various fast raster quantities: gUse* are flags
+
+  gusefr               = 1  ; if 1 correct for FRY in reconstruction
+
+  guse_frdefault       = 1  ; if 1 do no phase correction (default)
+;      gfr_cal_mom      = 3.245  ; = beam momnetum during calibration run 
+;      gfrx_adcpercm    = 11328. ; = FR channels per cm deflection on target
+;      gfry_adcpercm    = 10708. ; from run 9981, August 25, 1996, book X-22
+
+      gfr_cal_mom      = 2.038  ; = beam momnetum during calibration run 
+      gfrx_adcpercm    = 4364.7 ; = FR channels per cm deflection on target
+      gfry_adcpercm    = 5471.9 ; from harp scan (H00A), June 19, 2004
+
+
+                            ;if 0 apply phase correction 
+      gfrx_dphase      = 0.0    ; phase shift (never measured for x so far) 
+      gFrx_synccut     = 0.     ; should be zero if applied on centered distr.
+      gfrx_adcmax      = 1000   ; ADC amplitude in channels.
+      gfrx_maxsize     = 0.1    ; fast raster amplitude in centimeter.
+
+      gfry_dphase      = 5.8    ; phase shift 
+      gFry_synccut     = 0.     ; should be zero if applied on centered distr.
+      gfry_adcmax      = 1000   ; ADC amplitude in channels.
+      gfry_maxsize     = 0.1    ; fast raster amplitude in centimeter.
+
+; The latest FR phase analysis from spring '96 showed, that there is no
+; measurable phase shift. During early running (E91-13, E89-12) the FRY-phase
+; was determined to be 5.8 degree.
+
+; positions of FR magnets relative to target
+  gfrx_dist  = 2111   ; cm
+  gfry_dist  = 2071   ; cm
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/PARAM/gbeam.param.pre62812 b/examples/PARAM/gbeam.param.pre62812
new file mode 100644
index 0000000000000000000000000000000000000000..27ca6fb17d8086c29c1e1f50881a3c918dabdc9d
--- /dev/null
+++ b/examples/PARAM/gbeam.param.pre62812
@@ -0,0 +1,96 @@
+;                    BPM calibration constants
+;                    =========================
+  guse_bpm_in_recon  = 0   ; if 1 use bpm information for reconstruction
+  guse_bpmc = 1  ; if 1 use all 3 bpm info, if 0 use bpm A and B 
+  gbpm_sample  = 500 ; number of events, which are used for average 
+                     ; beam position ( <5000 ). Optimal value dep. on rate
+
+; the names are based on Paul Gueye's 'Status of the actual Beam Position
+;                   Monitors in the Hall C Beamline', December 1, 1995.
+; (mkj) apr-4-03 kappa,alpha and off for 3rd bpm are guesses,
+; need to find right values.
+;
+;  gbpm_kappa    = 1.85 ,1.85,1.85     ; sensitivity in cm
+gbpm_kappa    = 2.00 ,1.95,1.85  ; modified mkj 4/9/03
+  gbpm_alpha_x = 1.8192,0.7330 ,0.7   ; calibration gain: we may get them from the
+  gbpm_alpha_y = 1.0063,0.8935 ,0.7   ;  EPICS events, right now that's according to Paul's note
+
+; the following offsets get added to the calculated positions
+;  gbpm_x_off = -0.011,-0.004,0.      ; in cm: survey according to Paul's note
+;  gbpm_y_off = +0.052,+0.056,0.
+; From Dahlberg survey DT_C853 Apr 7, 2003
+gbpm_x_off = 0.017+.412,0.061-.353,0.037
+gbpm_y_off = 0.037+.381,-0.04-.211,0.028
+
+; average beam positions: only used if 'guse_bpm_in_recon=0' 
+;  gbeam_xoff  = +0.18
+  gbeam_xoff  = +0.00
+  gbeam_xpoff = +0.00
+  gbeam_yoff  = +0.00
+  gbeam_ypoff = +0.00
+
+; spectrometers would like to see this positions (from optics studies) 
+; we treat SOS and HMS the same, however, we may change this if necessary
+;  gspec_xoff  = +0.18
+  gspec_xoff  = +0.00
+  gspec_xpoff = +0.00
+  gspec_yoff  = +0.00
+  gspec_ypoff = +0.00
+
+; Pedestals for BPM ADCs: from cosmic run #10933, 10/3/96, book XI-137
+  gbpm_xp_ped = 431.9,331.0,0.  ; these pedestals have to be determined
+  gbpm_xm_ped = 514.7,350.6,0.  ; from runs with no beam in the cavities,
+  gbpm_yp_ped = 406.9,358.8,0.  ; e.g. cosmic runs.
+  gbpm_ym_ped = 499.7,292.7,0. ;
+
+; positions of BPMs relative to target (from Paul's note)
+  gbpm_zpos = 345.5,166.3,0.   ; cm
+
+
+;             Fast Raster calibration constants
+;             =================================
+
+; Various fast raster quantities: gUse* are flags
+
+  gusefr               = 1  ; if 1 correct for FRY in reconstruction
+
+  guse_frdefault       = 1  ; if 1 do no phase correction (default)
+;      gfr_cal_mom      = 3.245  ; = beam momnetum during calibration run 
+;      gfrx_adcpercm    = 11328. ; = FR channels per cm deflection on target
+;      gfry_adcpercm    = 10708. ; from run 9981, August 25, 1996, book X-22
+
+      gfr_cal_mom      = 2.038  ; = beam momnetum during calibration run 
+      gfrx_adcpercm    = 4364.7 ; = FR channels per cm deflection on target
+      gfry_adcpercm    = 5471.9 ; from harp scan (H00A), June 19, 2004
+
+
+                            ;if 0 apply phase correction 
+      gfrx_dphase      = 0.0    ; phase shift (never measured for x so far) 
+      gFrx_synccut     = 0.     ; should be zero if applied on centered distr.
+      gfrx_adcmax      = 1000   ; ADC amplitude in channels.
+      gfrx_maxsize     = 0.1    ; fast raster amplitude in centimeter.
+
+      gfry_dphase      = 5.8    ; phase shift 
+      gFry_synccut     = 0.     ; should be zero if applied on centered distr.
+      gfry_adcmax      = 1000   ; ADC amplitude in channels.
+      gfry_maxsize     = 0.1    ; fast raster amplitude in centimeter.
+
+; The latest FR phase analysis from spring '96 showed, that there is no
+; measurable phase shift. During early running (E91-13, E89-12) the FRY-phase
+; was determined to be 5.8 degree.
+
+; positions of FR magnets relative to target
+  gfrx_dist  = 2111   ; cm
+  gfry_dist  = 2071   ; cm
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/PARAM/gdebug.param b/examples/PARAM/gdebug.param
new file mode 100644
index 0000000000000000000000000000000000000000..7ac0e0193b088c6ff2b8c5fd039ebfa81736a445
--- /dev/null
+++ b/examples/PARAM/gdebug.param
@@ -0,0 +1,3 @@
+  gmisc_min_peds = 500
+
+  gelossdebug = 0	;eloss debug (0=off,1=on)
diff --git a/examples/PARAM/general.param b/examples/PARAM/general.param
new file mode 100644
index 0000000000000000000000000000000000000000..5383e6c1028e2cd9b610b1f215cabc03f070d692
--- /dev/null
+++ b/examples/PARAM/general.param
@@ -0,0 +1,35 @@
+#real raddeg
+raddeg=3.14159265/180
+
+; hms/sosflags.param include spectrometer offsets and options.
+#include "PARAM/genflags.param"
+#include "PARAM/hmsflags.param"
+#include "PARAM/sosflags.param"
+
+#include "PARAM/gdebug.param"
+#include "PARAM/hdebug.param"
+#include "PARAM/sdebug.param"
+#include "PARAM/htracking.param"
+#include "PARAM/stracking.param"
+
+#include "PARAM/gtarget.param"
+#include "PARAM/gbeam.param"
+;  Can't quite handle this one
+#include "PARAM/hdc_offsets.param"
+#include "PARAM/hdc.pos"
+#include "PARAM/hhodo.pos"
+#include "PARAM/hcal.pos"
+#include "PARAM/sdc_offsets.param"
+#include "PARAM/sdc.pos"
+#include "PARAM/shodo.pos"
+#include "PARAM/scal.pos"
+#include "PARAM/hhodo.param"
+#include "PARAM/haero.param"
+#include "PARAM/hdc.param"
+#include "PARAM/hdriftmap.param"
+#include "PARAM/hcal.param"
+#include "PARAM/hcer.param"
+#include "PARAM/shodo.param"
+#include "PARAM/scal.param"
+#include "PARAM/sdc.param"
+#include "PARAM/sdriftmap.param"
diff --git a/examples/PARAM/genflags.param b/examples/PARAM/genflags.param
new file mode 100644
index 0000000000000000000000000000000000000000..122ba177a5270305bac9e10a934637c4f644552f
--- /dev/null
+++ b/examples/PARAM/genflags.param
@@ -0,0 +1,12 @@
+;default settings for general option flags.
+  gen_run_starting_event = 1
+  gen_run_stopping_event = 0
+  gen_run_hist_dump_interval = 25000
+
+; hack_enable             run hack_anal if .ne. 0
+  hack_enable = 0
+
+; gen_eloss_enable         (0=disabled) total_eloss.f
+  gen_eloss_enable = 1
+
+
diff --git a/examples/PARAM/gscalers.param b/examples/PARAM/gscalers.param
new file mode 100644
index 0000000000000000000000000000000000000000..d8b4920c17500d07f6c06211de3bed6ecfc90ccd
--- /dev/null
+++ b/examples/PARAM/gscalers.param
@@ -0,0 +1,98 @@
+; Add ability to write out the scaler rate at each scaler read
+;  for up to 10 scalers 
+; When g_writeout_scaler_filename is commented out then file
+;  is not written and other info not used.
+; To get scaler indices look in TEMPLATE/hreport.template
+;   and sreport.template .
+; In output file for each scaler read is the number of the scaler read and the
+;   time between scaler reads and then the rates for each scaler.
+ g_writeout_scaler_filename = outfiles/%d.scal
+ INDEX_WRITEOUT_SCALERS = 146,165,148,164,160,174
+ NUM_WRITEOUT_SCALERS = 6
+; Old charge calibrations from Run 16707; BCM1 in gain pos 1, BCM2 in
+; gain position 2
+
+;point to scaler indices for BCM's fro SOS scalers
+;  gbcm1_index = 321
+;  gbcm2_index = 322
+;  gbcm3_index = 323
+;  gunser_index = 324
+;point to scaler indices for BCM's for HMS scalers
+  gbcm1_index = 167
+  gbcm2_index = 168
+  gbcm3_index = 323
+  gunser_index = 166
+
+;gain factors for three cavity monitors
+; numbers from I. Albayrak - 5/11/07
+gbcm1_gain = 0.000334137            ; microA/Hz
+gbcm2_gain = 0.000373754                   ; microA/Hz
+gbcm3_gain = 0.00043343               ; microA/Hz
+gunser_gain = 0.00024980              ; microA/Hz
+; note, gbcm3_gain from: 
+; JRA - adjust calibration factors by hand
+; to get semi-sensible values (apr03)
+
+; numbers from  I. Albayrak - 5/11/07
+gbcm1_offset =  251226.              ; Hz
+gbcm2_offset =  250816.              ; Hz
+gbcm3_offset =  245437.              ; Hz
+gunser_offset = 250000.              ; TEST
+; gbcm3_offset and gunser_offset from: 
+; VALUES FROM BEAM OFF (starting point for jan99)
+
+;define the threshold current at which beam is "on". (in microamps)
+ g_beam_on_thresh_cur = 5.,5.
+ bcm_for_threshold_cut = 1
+
+
+;point to hardware clock (1MHz scaler, scaler channel 174 in HMS scalers)
+; for SOS scalers 325
+;  gclock_index = 174
+  gclock_index = 325
+  gclock_rate = 1.e+6
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; everything below this line is old js 6.22.4
+
+;gain factors for three cavity monitors
+; gbcm1_gain =  .0009435               ; microA/Hz
+; gbcm2_gain =  .0002849               ; microA/Hz
+; gbcm3_gain =  .0002537               ; microA/Hz
+; gunser_gain =  .00025000              ; microA/Hz
+;
+; From Feb99 BCM cal:
+; gbcm1_gain =  .00004811               ; microA/Hz
+; gbcm2_gain =  .00026421               ; microA/Hz
+; gbcm3_gain =  .00043343               ; microA/Hz
+; gunser_gain =  .00025000              ; microA/Hz
+
+; JRA - adjust calibration factors by hand to get semi-sensible values (apr03)
+; gbcm1_gain =  .00008685               ; microA/Hz
+; gbcm2_gain =  .00029148               ; microA/Hz
+;  gbcm3_gain =  .00043343               ; microA/Hz
+; gunser_gain =  .0002501              ; microA/Hz
+
+; BCM1 and BCM2 values updated to match what Gaskell put into the
+; ratemon code [based on hclog 70221, Dec 8, 2003]
+;gbcm1_gain =  0.001101
+;gbcm2_gain =  0.0012963
+
+;zero offsets for BCM s
+; VALUES FROM REAL FIT:
+; gbcm1_offset =  250632.              ; Hz
+; gbcm2_offset =  251195.              ; Hz
+; gbcm3_offset =  249543.              ; Hz
+;
+; VALUES FROM BEAM OFF (starting point for jan99)
+; gbcm1_offset =  244795.              ; Hz
+; gbcm2_offset =  253647.              ; Hz
+; gbcm3_offset =  245437.              ; Hz
+; gunser_offset = 250000.              ; TEST
+; gunser_offset = 545693.              ; Hz
+
+; BCM1 and BCM2 values updated to match what Gaskell put into the
+; ratemon code [based on hclog 70221, Dec 8, 2003]
+;gbcm1_offset =  250513
+;gbcm2_offset =  250463
+
diff --git a/examples/PARAM/gscalers.param.bak b/examples/PARAM/gscalers.param.bak
new file mode 100644
index 0000000000000000000000000000000000000000..38c1f9c97813cda508cf92e1c4618100b7d66c1a
--- /dev/null
+++ b/examples/PARAM/gscalers.param.bak
@@ -0,0 +1,95 @@
+; Add ability to write out the scaler rate at each scaler read
+;  for up to 10 scalers 
+; When g_writeout_scaler_filename is commented out then file
+;  is not written and other info not used.
+; To get scaler indices look in TEMPLATE/hreport.template
+;   and sreport.template .
+; In output file for each scaler read is the number of the scaler read and the
+;   time between scaler reads and then the rates for each scaler.
+ g_writeout_scaler_filename = outfiles/%d.scal
+ INDEX_WRITEOUT_SCALERS = 146,165,148,164,160,174
+ NUM_WRITEOUT_SCALERS = 6
+; Old charge calibrations from Run 16707; BCM1 in gain pos 1, BCM2 in
+; gain position 2
+
+;point to scaler indices for BCM's fro SOS scalers
+;  gbcm1_index = 321
+;  gbcm2_index = 322
+;  gbcm3_index = 323
+;  gunser_index = 324
+;point to scaler indices for BCM's for HMS scalers
+  gbcm1_index = 167
+  gbcm2_index = 168
+  gbcm3_index = 323
+  gunser_index = 166
+
+;gain factors for three cavity monitors
+; numbers from D. Mack, 6.22.4
+gbcm1_gain = 0.00108902              ; microA/Hz
+gbcm2_gain = 0.00127300              ; microA/Hz
+gbcm3_gain = 0.00043343               ; microA/Hz
+gunser_gain = 0.00024980              ; microA/Hz
+; note, gbcm3_gain from: 
+; JRA - adjust calibration factors by hand
+; to get semi-sensible values (apr03)
+
+; numbers from D. Mack, 6.22.4
+gbcm1_offset =  250346.              ; Hz
+gbcm2_offset =  250258.              ; Hz
+gbcm3_offset =  245437.              ; Hz
+gunser_offset = 250000.              ; TEST
+; gbcm3_offset and gunser_offset from: 
+; VALUES FROM BEAM OFF (starting point for jan99)
+
+;define the threshold current at which beam is "on". (in microamps)
+ g_beam_on_thresh_cur = 5.
+
+;point to hardware clock (1MHz scaler, scaler channel 174 in HMS scalers)
+; for SOS scalers 325
+  gclock_index = 174
+  gclock_rate = 1.e+6
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; everything below this line is old js 6.22.4
+
+;gain factors for three cavity monitors
+; gbcm1_gain =  .0009435               ; microA/Hz
+; gbcm2_gain =  .0002849               ; microA/Hz
+; gbcm3_gain =  .0002537               ; microA/Hz
+; gunser_gain =  .00025000              ; microA/Hz
+;
+; From Feb99 BCM cal:
+; gbcm1_gain =  .00004811               ; microA/Hz
+; gbcm2_gain =  .00026421               ; microA/Hz
+; gbcm3_gain =  .00043343               ; microA/Hz
+; gunser_gain =  .00025000              ; microA/Hz
+
+; JRA - adjust calibration factors by hand to get semi-sensible values (apr03)
+; gbcm1_gain =  .00008685               ; microA/Hz
+; gbcm2_gain =  .00029148               ; microA/Hz
+;  gbcm3_gain =  .00043343               ; microA/Hz
+; gunser_gain =  .00025000              ; microA/Hz
+
+; BCM1 and BCM2 values updated to match what Gaskell put into the
+; ratemon code [based on hclog 70221, Dec 8, 2003]
+;gbcm1_gain =  0.001101
+;gbcm2_gain =  0.0012963
+
+;zero offsets for BCM s
+; VALUES FROM REAL FIT:
+; gbcm1_offset =  250632.              ; Hz
+; gbcm2_offset =  251195.              ; Hz
+; gbcm3_offset =  249543.              ; Hz
+;
+; VALUES FROM BEAM OFF (starting point for jan99)
+; gbcm1_offset =  244795.              ; Hz
+; gbcm2_offset =  253647.              ; Hz
+; gbcm3_offset =  245437.              ; Hz
+; gunser_offset = 250000.              ; TEST
+; gunser_offset = 545693.              ; Hz
+
+; BCM1 and BCM2 values updated to match what Gaskell put into the
+; ratemon code [based on hclog 70221, Dec 8, 2003]
+;gbcm1_offset =  250513
+;gbcm2_offset =  250463
+
diff --git a/examples/PARAM/gtarget.param b/examples/PARAM/gtarget.param
new file mode 100644
index 0000000000000000000000000000000000000000..f43b67f6a456f0631fc4d1fbbb5cfdf26ff86e80
--- /dev/null
+++ b/examples/PARAM/gtarget.param
@@ -0,0 +1,169 @@
+; modified for e04-001/e06-009 NucR
+;
+; This is the target parameter file.  Numbers 1-9 are solid targets,
+; and 11-16 will always be the cryotargets(H 4.5cm and 12.4cm, He 4cm and 15 cm,
+; and D 4.4 cm and 12.4cm). Some of the solid targets don't exist any more (one
+; of the Fe, the C_sl and Au_6%, the dummy-15)
+;The target order is:
+;
+;    Au_3%         Cu_2%      Fe_1%
+;    C_1%          C_3%       BeO
+;    C_0.5% (z=0)  Be         ---
+;
+;    dummy-15
+;    H  4.5cm      H  12.4cm
+;    He 4cm        He 15cm
+;    LD2  4.4cm    LD2  12.4cm
+;    dummy-4
+;    quintar(all layers)
+;    quintar     z=0cm, z=+6cm, z=+3cm, z=-3cm, z=-6cm
+;
+; non-existant targets have A=Z=M=...=0
+; empty/dummy cells have A=Z=M=...= SAME AS DEUTERIUM.
+;
+; As of now (7/13/96) the values for the BeO are guesses
+
+; 1=tuna can, 2=beer can, 21=solid
+ gtarg_type   =  21.     ,    21.     ,   21.
+	         21.     ,    21.     ,   21.
+                 21.     ,    21.     ,   21.
+                 21.
+                 1.      ,     1.
+                 1.      ,     1.
+                 1.      ,     1.
+                 21.
+                 21.
+
+  gtarg_z     = 79.0     ,    29.0    ,   26.0
+                 6.0     ,     6.0    ,   12.0
+                 6.0     ,     4.0    ,   0.0
+                 13.0
+                 1.0     ,     1.0
+                 1.0     ,     1.0
+                 1.0     ,     1.0
+                 13.0
+		 8.8
+;this is averaged z: 2x Al, 3x C
+		 6.0     ,     6.0    ,    13.0  ,  13.0  ,  6.0
+
+  gtarg_a     = 197.0     ,    64.0    ,    56.0
+                12.0     ,    12.0    ,    25.0
+                12.0     ,     9.0    ,    0.0
+                 27.0
+                 1.0     ,     1.0
+                 2.0     ,     2.0
+                 2.0     ,     2.0
+                 27.0
+		 18.0
+;this is averaged z: 2x Al, 3x C
+		 12.0    ,    12.0    ,   27.0  ,  27.0  ,  12.0
+
+  gtarg_mass  = 196.96655   ,   63.546   ,    55.845
+                12.0107   ,   12.0107   ,    25.0  
+                12.0107     ,  9.012182     ,   0.0    
+                 26.98
+                 1.00727647 ,    1.00727647 
+                 2.01355322 ,    2.01355322
+                 2.01355322 ,    2.01355322
+                 26.98
+		17.9986
+;this is averaged z: 2x Al, 3x C
+		12.011   ,   12.011   ,  26.98  ,  26.98  ,  12.011
+
+; Next is the radiation length in percent...
+  gtarg_lrad  =  3.72    ,    1.81    ,     1.0
+                 1.06     ,    2.92    ,     1.0
+                 0.50     ,    0.0     ,     0.0
+                 2.2472 
+                 0.48 ,    1.43353
+                 0.528   ,    1.982
+                 0.56 ,    1.63804
+                 2.11
+		 3.8429
+;added the radiation lengths of all five layers
+		 0.53191 , 0.53191, 1.1236 , 1.1236 , 0.53191
+		 
+
+; Next is the thickness of the target in g/cm^2...
+  gtarg_thick =  0.240  ,    0.233  ,     0.1187
+                 0.452  , 1.2454  ,     0.2
+                 0.227  ,   1.2454     ,     0.0
+                 0.529
+                 0.295   ,    0.9016
+                 0.648   ,    2.430
+                 0.681  ,    2.0808
+                 0.507
+		 1.215
+		 0.225  ,  0.225  ,  0.27  ,  0.27  ,  0.225
+
+; Finally, the density of the target in g/cm^3.  These are estimates based
+; on the nominal thickness (cm) of the targets which can be off by ~5% ...
+
+  gtarg_dens  =  19.3    ,  8.96    ,     1.3
+                 2.18   ,    2.18   ,     2.0
+                 2.0     ,   2.0     ,    0.0
+                 2.7
+                 0.0723   ,    0.0723
+                 0.167   ,    0.167
+                 0.167   ,    0.167
+                 2.68
+		 2.7
+		 2.25  ,  2.25  ,  2.7  ,  2.7  ,  2.25
+
+; Target angle:  =90 deg. is perpendicluar to beam
+;                <90 deg. is face towards HMS
+;                >90 deg. is face towards SOS 
+; for E99118 target was rotated 20.3deg. to face HMS =>69.7deg. = 1.2164945rad
+  gtarg_theta =  1.5707936 
+
+;general target energy loss parameters. Vansyoc Mar.98
+
+
+;target cell****************
+
+      gcell_radius = 1.0
+      gz_cell 	 =  13.0
+      ga_cell 	 =  27.0
+      gcell_den 	=   2.70
+      gwall_thk	 =  0.03429
+      gend_thk  	=   0.03429
+      gfront_thk  =  0.020574            
+;Air cap between the chamber and the entrance window
+      gair_dens 	=   0.00121
+      gair_thk 	=   0.018
+      gair_a 	=   14.68
+      gair _z 	=   7.32
+
+
+;HMS********
+;    HMS scattering chamber window specs.********** 
+      hscat_win_thk  = 0.109728
+      hscat_win_den =  2.70
+      hscat_win_z   =  13.0
+      hscat_win_a   =  27.0
+;    HMS entrance window specs.********************
+      hdet_ent_thk  =  0.049098
+      hdet_ent_den  =  0.878636
+      hdet_ent_z    =  2.67
+      hdet_ent_a    =  4.67
+;SOS********
+;    SOS scattering chamber window specs.**********
+      sscat_win_thk =  0.054864
+      sscat_win_den =  2.70
+      sscat_win_z   =  13.0
+      sscat_win_a   =  27.0
+;    SOS entrance window specs.********************
+      sdet_ent_thk  =  0.016421
+      sdet_ent_den  =  0.862
+      sdet_ent_z    =  2.67
+      sdet_ent_a    =  4.67
+;eloss debug   0 = off,1 = on
+;      gelossdebug = 0
+;use old cryo geometry? (1)
+;      old_tgeom = 1
+
+;
+
+
+
+
diff --git a/examples/PARAM/haero.param b/examples/PARAM/haero.param
new file mode 100644
index 0000000000000000000000000000000000000000..734565eec427d15137654be2789aaa2f3f17e392
--- /dev/null
+++ b/examples/PARAM/haero.param
@@ -0,0 +1,27 @@
+; Gain cor constant estimated from cosmic test run #44628
+;
+; POS PMT HV:  	 1570  1690  1580  1680
+;	      	 1690  1620  1700  1660
+;
+; NEG PMT HV:
+;		 1640  1590  1750  2040
+;		 1910  1900  1840  1750 
+;............................................................................
+
+; JS 7.9.4, fit single electron peak using cosmics (run 49872).  
+; the value below is the pedestal-subtracted position of the spe peak
+	haero_pos_gain   =  1/179., 1/226., 1/184., 1/182.
+                            1/188., 1/163., 1/184., 1/154. 
+
+	haero_neg_gain   =  1/244., 1/206., 1/217., 1/206.
+                            1/219., 1/206., 1/238., 1/228.
+
+        haero_pos_ped_limit = 1000., 1000., 1000., 1000.
+                              1000., 1000., 1000., 1000.
+
+        haero_neg_ped_limit = 1000., 1000., 1000., 1000.
+                              1000., 1000., 1000., 1000.
+
+
+
+
diff --git a/examples/PARAM/hcal.param b/examples/PARAM/hcal.param
new file mode 100644
index 0000000000000000000000000000000000000000..dc33822ba77233f8ec3428809a212fd1e7f4bba3
--- /dev/null
+++ b/examples/PARAM/hcal.param
@@ -0,0 +1,67 @@
+; Slop in x position.  Allowed distance between track and edge of block (in cm)
+; too tight djm hcal_slop = 7.5
+hcal_slop = 7.5
+
+;Turn on HMS cal. fiducial volume cut. 0="no cut"
+;Default hcal_fv_test=0
+
+hcal_fv_test = 0
+
+hcal_pos_cal_const =0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+
+hcal_neg_cal_const =0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+
+hcal_pos_gain_ini  =1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+hcal_neg_gain_ini  =1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+hcal_pos_gain_cur  =1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+hcal_neg_gain_cur  =1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                    1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+
+hcal_pos_ped_limit =1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+
+hcal_neg_ped_limit =1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+
+;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+
+
+; the following lines are from calibration file
+; written by the perlscript mkcalpar.prl
+
+hcal_pos_gain_cor= 0.000, 0.328, 0.240, 0.482, 0.202, 0.397, 0.279, 0.327, 0.270, 0.299, 0.297, 0.309, 0.000,
+                   0.000, 0.375, 0.317, 0.389, 0.390, 0.171, 0.274, 0.383, 0.310, 0.323, 0.297, 0.606, 1.168,
+                   0.000, 0.744, 0.618, 0.853, 0.732, 0.674, 0.532, 0.646, 0.710, 0.714, 0.484, 0.773, 0.000,
+                   0.000, 0.000, 0.684, 0.596, 0.716, 0.692, 0.694, 0.595, 0.806, 0.640, 0.841, 0.000, 0.000,
+hcal_neg_gain_cor= 0.000, 0.167, 0.372, 0.317, 0.255, 0.279, 0.376, 0.338, 0.336, 0.315, 0.295, 0.277, 0.000,
+                   0.000, 0.246, 0.366, 0.471, 0.359, 0.549, 0.435, 0.427, 0.399, 0.298, 0.313, 0.342, 0.000,
+                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+
+
diff --git a/examples/PARAM/hcal.pos b/examples/PARAM/hcal.pos
new file mode 100644
index 0000000000000000000000000000000000000000..9906aae80eb08d93ab5a4d746c9f34cda05d20e4
--- /dev/null
+++ b/examples/PARAM/hcal.pos
@@ -0,0 +1,81 @@
+; neglect extra tubes for now.
+hcal_num_neg_columns = 2
+
+; Z position of front of shower counter layers
+; guesses, based on the fact that the back scin plane is supposedly at 322.0
+;  (add 25 to each from original value) - JRA
+      hcal_1pr_zpos = (350.0-11.31)
+      hcal_2ta_zpos = (361.0-11.31)
+      hcal_3ta_zpos = (372.0-11.31)
+      hcal_4ta_zpos = (383.0-11.31)
+; Thickness of shower counter blocks, blocks are 10 * 10 * 70 cm^3
+      hcal_1pr_thick = 10.0
+      hcal_2ta_thick = 10.0
+      hcal_3ta_thick = 10.0
+      hcal_4ta_thick = 10.0
+; Number of shower counter blocks per layer
+      hcal_1pr_nr = 13
+      hcal_2ta_nr = 13
+      hcal_3ta_nr = 13
+      hcal_4ta_nr = 13
+; X,Y positions of shower counter blocks
+      hcal_1pr_left  =  35.0
+      hcal_1pr_right = -35.0
+      hcal_1pr_top   = (-69.0-1.4)
+                       (-59.0-1.4)
+                       (-49.0-1.4)
+                       (-39.0-1.4)
+                       (-29.0-1.4)
+                       (-19.0-1.4)
+                       ( -9.0-1.4)
+                       (  1.0-1.4)
+                       ( 11.0-1.4)
+                       ( 21.0-1.4)
+                       ( 31.0-1.4)
+                       ( 41.0-1.4)
+                       ( 51.0-1.4)
+      hcal_2ta_left  =  35.0
+      hcal_2ta_right = -35.0
+      hcal_2ta_top   = (-69.0-1.4)
+                       (-59.0-1.4)
+                       (-49.0-1.4)
+                       (-39.0-1.4)
+                       (-29.0-1.4)
+                       (-19.0-1.4)
+                       ( -9.0-1.4)
+                       (  1.0-1.4)
+                       ( 11.0-1.4)
+                       ( 21.0-1.4)
+                       ( 31.0-1.4)
+                       ( 41.0-1.4)
+                       ( 51.0-1.4)
+      hcal_3ta_left  =  35.0
+      hcal_3ta_right = -35.0
+      hcal_3ta_top   = (-69.0-1.4)
+                       (-59.0-1.4)
+                       (-49.0-1.4)
+                       (-39.0-1.4)
+                       (-29.0-1.4)
+                       (-19.0-1.4)
+                       ( -9.0-1.4)
+                       (  1.0-1.4)
+                       ( 11.0-1.4)
+                       ( 21.0-1.4)
+                       ( 31.0-1.4)
+                       ( 41.0-1.4)
+                       ( 51.0-1.4)
+      hcal_4ta_left  =  35.0
+      hcal_4ta_right = -35.0
+      hcal_4ta_top   = (-69.0-1.4)
+                       (-59.0-1.4)
+                       (-49.0-1.4)
+                       (-39.0-1.4)
+                       (-29.0-1.4)
+                       (-19.0-1.4)
+                       ( -9.0-1.4)
+                       (  1.0-1.4)
+                       ( 11.0-1.4)
+                       ( 21.0-1.4)
+                       ( 31.0-1.4)
+                       ( 41.0-1.4)
+                       ( 51.0-1.4)
diff --git a/examples/PARAM/hcana.param b/examples/PARAM/hcana.param
new file mode 100644
index 0000000000000000000000000000000000000000..3ca4f8bd78dab1f93d5e450af0b562d0f3ef0114
--- /dev/null
+++ b/examples/PARAM/hcana.param
@@ -0,0 +1,84 @@
+;
+; Parameters that were built into Fortran analyzer that we want
+; to pass as parameters so that the resulting code can be more generic.
+;
+
+hhodo_num_planes = 4
+hhodo_plane_names = "1x 1y 2x 2y"
+
+hcal_num_layers = 4
+
+rraster_num_signals = 4
+
+# Exclusion band width for the calorimeter's fiducial volume.
+hcal_fv_delta = 5.
+
+# Constants for the coordiante correction of the calorimeter energy depositions
+hcal_a_cor = 200.
+hcal_b_cor = 8000.
+hcal_c_cor = 64.36, 64.36	# for positive and negative sides
+hcal_d_cor =  1.66,  1.66
+
+hcal_layer_names = "1pr 2ta 3ta 4ta"
+
+haero_num_pairs = 8
+
+# Names of planes so that parameter names can be constructed
+hdc_plane_names = "1x1 1y1 1u1 1v1 1y2 1x2 2x1 2y1 2u1 2v1 2y2 2x2"
+
+# The following were defined in REPLAY.PARAM
+h_recon_coeff_filename =    'PARAM/hms_recon_coeff.dat'  ;hms optics matrix
+
+# The following are set to zero to replicate historical ENGINE behavior
+# For new analyses they should be set to 1.  If not defined here,
+# hcana will default 1, the new and correct behaviour.
+
+# If 1, Let a hit have different L/R assignment for different space points
+# instead of L/R assignment from first sp it appears in.
+hdc_fix_lr = 0
+# If 1, don't do the the propagation along the wire each time the hit
+# appears in a space point.  (Which means the correction accumulates)
+hdc_fix_propcorr = 0
+
+# SOS parameters
+shodo_num_planes = 4
+shodo_plane_names = "1x 1y 2x 2y"
+
+scal_num_layers = 4
+
+# Exclusion band width for the calorimeter's fiducial volume.
+# (saw) Don't know what this should be.  Copied it from HMS.
+scal_fv_delta = 5.
+
+# Constants for the coordiante correction of the calorimeter energy depositions
+scal_a_cor = 400.
+scal_b_cor = 12000.
+scal_c_cor = -87.1628, -100.	# The positive side constants reproduce
+scal_d_cor =  1.65054,    3.	# correction in Engine to accuracy better 0.005.
+
+scal_layer_names = "1pr 2ta 3ta 4ta"
+
+# Names of planes so that parameter names can be constructed
+sdc_plane_names = "1u1 1u2 1x1 1x2 1v1 1v2 2u1 2u2 2x1 2x2 2v1 2v2"
+
+# The following were defined in REPLAY.PARAM
+s_recon_coeff_filename =    'PARAM/sos_recon_coeff.dat'  ;sos optics matrix
+
+# Fortran ENGINE only had this as a parameter for HMS.  Need it here
+# because same code used for both spectrometers
+sntracks_max_fp = 10
+
+# The following are set to zero to replicate historical ENGINE behavior
+# For new analyses they should be set to 1.  If not defined here,
+# hcana will default 1, the new and correct behaviour.
+
+# If 1, Let a hit have different L/R assignment for different space points
+# instead of L/R assignment from first sp it appears in.
+sdc_fix_lr = 0
+# If 1, don't do the the propagation along the wire each time the hit
+# appears in a space point.  (Which means the correction accumulates)
+sdc_fix_propcorr = 0
+
+# Total number of PMTs in Gas Cherenkov detector.
+hcer_tot_pmts = 2
+
diff --git a/examples/PARAM/hcer.param b/examples/PARAM/hcer.param
new file mode 100644
index 0000000000000000000000000000000000000000..5c7cfc8f1ab7b73c8d9015b8622a4c0b9005a0c3
--- /dev/null
+++ b/examples/PARAM/hcer.param
@@ -0,0 +1,40 @@
+hcer_width = 50, 50
+;hcer_adc_to_npe = 1/140., 1/100.
+;hcer_adc_to_npe = 1/124.4, 1/119.
+; DJM AUG 7, 2003 calibration based on run 47022, picking off spe
+; making no bogus Poissonian assumptions 
+;hcer_adc_to_npe = 1/111., 1/90.
+; JS 6.19.4 calibration from run 48795 (cosmics).  fit spe
+;hcer_adc_to_npe = 1/66., 1/89.
+; JS 6.19.4 calibration from run 48800 (electrons).  fit spe
+;hcer_adc_to_npe = 1/67., 1/98.
+; JS 6.19.4 calibration from run 48800 (electrons).  fit spe
+;        hcer_adc: 1       2
+;            tube: bot     top
+;hcer_adc_to_npe = 1/76., 1/106.
+; JS 7.9.4 calibration from run 49472 (cosmics).  fit spe
+;        hcer_adc: 1       2
+;            tube: bot     top
+;hcer_adc_to_npe = 1/93., 1/120.
+; DJG June 21 2007: Quick and dirty online calibration.
+hcer_adc_to_npe = 1/149.6, 1/166.0
+
+hcer_chi2max = 50.
+hcer_beta_min = 0.8
+hcer_beta_max = 1.2
+hcer_et_min = 0.95
+hcer_et_max = 5.0
+hcer_mirror_zpos = 230
+; hcer_region: 8 values for each region (1 per mirror + sum)
+; central x,y,dx,dy values and x,y,dx,dy half widths.
+hcer_region =   30,  -30,   0,
+                 0,    0,   0,
+                 0,    0,   0,
+                 0,    0,   0,
+                20,   20,  60,
+                30,   30,  30,
+                .1,   .1,  .1,
+                .1,   .1,  .1
+
+hcer_ped_limit =  1000,1000
+	       
diff --git a/examples/PARAM/hdc.param b/examples/PARAM/hdc.param
new file mode 100644
index 0000000000000000000000000000000000000000..e1bcd4a4ea9d87e7e8c3d73e8a5893f2eca0744f
--- /dev/null
+++ b/examples/PARAM/hdc.param
@@ -0,0 +1,44 @@
+;---------------------------------------------------------------------
+; HMS_TRACKING
+; CTP parameter file containing all tracking parameters for the HMS
+;----------------------------------------------------------------------
+; sigma of wire chamber resolution for each plane
+      hdc_sigma = 0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+; hms dc tdc minimum tdc value array allowed for a good hit
+    hdc_tdc_min_win = 2900, 2900, 2900, 2900, 2900, 2900
+                      2900, 2900, 2900, 2900, 2900, 2900
+; hms dc tdc maximum tdc value array allowed for a good hit
+    hdc_tdc_max_win = 3400, 3400, 3400, 3400, 3400, 3400
+                      3400, 3400, 3400, 3400, 3400, 3400
+; hms drift chamber tdc's time per channel
+        hdc_tdc_time_per_channel = 0.50
+; hms zero time for drift chambers	!DECREASING this number moves the hdtime plots to LOWER time.
+        hdc_plane_time_zero = (1670+14+18-10)
+                              (1670+12+20-10)
+                              (1670+13+18-10)
+                              (1670+13+20-10)
+                              (1670+12+20-10)
+                              (1670+14+16-10)
+                              (1670+15+16-10)
+                              (1670+11.5+16-10)
+                              (1670+13+12-10)
+                              (1670+13+12-10)
+                              (1670+10.5+16-10)
+                              (1670+13+18-10)
+
+; Dave Abbott's wire velocity correction
+hdc_wire_velocity = 12.0
+hdc_central_time = 7,9,3,4,6,5
+                   7,5,3,4,6,6
+  
diff --git a/examples/PARAM/hdc.param.bak b/examples/PARAM/hdc.param.bak
new file mode 100644
index 0000000000000000000000000000000000000000..900475340bfd90f59f28a3caf656b7aaf15d205a
--- /dev/null
+++ b/examples/PARAM/hdc.param.bak
@@ -0,0 +1,44 @@
+;---------------------------------------------------------------------
+; HMS_TRACKING
+; CTP parameter file containing all tracking parameters for the HMS
+;----------------------------------------------------------------------
+; sigma of wire chamber resolution for each plane
+      hdc_sigma = 0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+; hms dc tdc minimum tdc value array allowed for a good hit
+    hdc_tdc_min_win = 0, 0, 0, 0, 0, 0
+                      0, 0, 0, 0, 0, 0
+; hms dc tdc maximum tdc value array allowed for a good hit
+    hdc_tdc_max_win = 4000, 4000, 4000, 4000, 4000, 4000
+                      4000, 4000, 4000, 4000, 4000, 4000
+; hms drift chamber tdc's time per channel
+        hdc_tdc_time_per_channel = 0.50
+; hms zero time for drift chambers	!DECREASING this number moves the hdtime plots to LOWER time.
+        hdc_plane_time_zero = (1670+14+18-10)
+                              (1670+12+20-10)
+                              (1670+13+18-10)
+                              (1670+13+20-10)
+                              (1670+12+20-10)
+                              (1670+14+16-10)
+                              (1670+15+16-10)
+                              (1670+11.5+16-10)
+                              (1670+13+12-10)
+                              (1670+13+12-10)
+                              (1670+10.5+16-10)
+                              (1670+13+18-10)
+
+; Dave Abbott's wire velocity correction
+hdc_wire_velocity = 12.0
+hdc_central_time = 7,9,3,4,6,5
+                   7,5,3,4,6,6
+  
diff --git a/examples/PARAM/hdc.param_2gamma b/examples/PARAM/hdc.param_2gamma
new file mode 100644
index 0000000000000000000000000000000000000000..44297fab1b20edc4ffc0d872716d92d5553eaee0
--- /dev/null
+++ b/examples/PARAM/hdc.param_2gamma
@@ -0,0 +1,44 @@
+;---------------------------------------------------------------------
+; HMS_TRACKING
+; CTP parameter file containing all tracking parameters for the HMS
+;----------------------------------------------------------------------
+; sigma of wire chamber resolution for each plane
+      hdc_sigma = 0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+; hms dc tdc minimum tdc value array allowed for a good hit
+    hdc_tdc_min_win = 1800, 1800, 1800, 1800, 1800, 1800
+                      1800, 1800, 1800, 1800, 1800, 1800
+; hms dc tdc maximum tdc value array allowed for a good hit
+    hdc_tdc_max_win = 3300, 3300, 3300, 3300, 3300, 3300
+                      3300, 3300, 3300, 3300, 3300, 3300
+; hms drift chamber tdc's time per channel
+        hdc_tdc_time_per_channel = 0.50
+; hms zero time for drift chambers	!DECREASING this number moves the hdtime plots to LOWER time.
+        hdc_plane_time_zero = (1670+14+18-10-220)
+                              (1670+12+20-10-220)
+                              (1670+13+18-10-220)
+                              (1670+13+20-10-220)
+                              (1670+12+20-10-220)
+                              (1670+14+16-10-220)
+                              (1670+15+16-10-220)
+                              (1670+11.5+16-10-220)
+                              (1670+13+12-10-220)
+                              (1670+13+12-10-220)
+                              (1670+10.5+16-10-220)
+                              (1670+13+18-10-220)
+
+; Dave Abbott's wire velocity correction
+hdc_wire_velocity = 12.0
+hdc_central_time = 7,9,3,4,6,5
+                   7,5,3,4,6,6
+  
diff --git a/examples/PARAM/hdc.pos b/examples/PARAM/hdc.pos
new file mode 100644
index 0000000000000000000000000000000000000000..fdbf2aed0ca8f75f5c8bd1d3d3d9fe7bb709d152
--- /dev/null
+++ b/examples/PARAM/hdc.pos
@@ -0,0 +1,183 @@
+; Number of planes installed in HMS detector setup
+      hdc_num_planes = 12
+; Number of chambers installed in HMS detector setup
+      hdc_num_chambers = 2
+; Names of each wire plane
+;
+; Z positions of various planes in HMS chambers
+; hdc_n_zpos is the surveyed Z position of the center of chamber n.
+      hdc_1_zpos = (-40.611-11.312+0.003)
+      hdc_2_zpos = (+40.611-11.312-0.008)
+      
+      hdc_zpos   = hdc_1_zpos - 3.6000
+                   hdc_1_zpos - 1.8000
+                   hdc_1_zpos - 0.0000
+                   hdc_1_zpos + 1.8000
+                   hdc_1_zpos + 3.6000
+                   hdc_1_zpos + 5.4000
+                   hdc_2_zpos - 3.6000
+                   hdc_2_zpos - 1.8000
+                   hdc_2_zpos - 0.0000
+                   hdc_2_zpos + 1.8000
+                   hdc_2_zpos + 3.6000
+                   hdc_2_zpos + 5.4000
+; Angle alpha of wires in wire chamber planes
+        hdc_alpha_angle =  (90. - 0.071)*raddeg
+                           (0.0 - 0.071)*raddeg
+                           (74.925 - 0.071)*raddeg
+                           (105.075 - 0.071)*raddeg
+                           (0.0 - 0.071)*raddeg
+                           (90.0 - 0.071)*raddeg
+                           (89.90814 - 0.153)*raddeg
+                           (0.01611 - 0.153)*raddeg
+                           (74.85 - 0.153)*raddeg
+                           (105.05 - 0.153)*raddeg
+                           (0.01611 - 0.153)*raddeg
+                           (89.90814 - 0.153)*raddeg
+;        hdc_alpha_angle = ( 90.1541 - 0.071)*raddeg
+;                          ( -0.0408 - 0.071)*raddeg
+;                          ( 75.1267 - 0.071)*raddeg
+;                          (105.1267 - 0.071)*raddeg
+;                          ( -0.0408 - 0.071)*raddeg
+;                          ( 90.1541 - 0.071)*raddeg
+;                          ( 90.1095 - 0.153)*raddeg
+;                          ( -0.0370 - 0.153)*raddeg
+;                          ( 75.0904 - 0.153)*raddeg
+;                          (105.0904 - 0.153)*raddeg
+;                          ( -0.0370 - 0.153)*raddeg
+;                          ( 90.1095 - 0.153)*raddeg
+;
+; Angle beta of wires in wire chamber planes
+      hdc_beta_angle =    -0.041*raddeg
+                          -0.041*raddeg
+                          -0.041*raddeg
+                          -0.041*raddeg
+                          -0.041*raddeg
+                          -0.041*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+                          +0.054*raddeg
+; Angle gamma of wires in wire chamber planes
+      hdc_gamma_angle =   +0.0376*raddeg
+                          +0.0376*raddeg
+                          +0.0376*raddeg
+                          +0.0376*raddeg
+                          +0.0376*raddeg
+                          +0.0376*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+                          -0.145*raddeg
+; Pitch
+      hdc_pitch = 1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+                  1.000252
+; Number of wires per plane
+      hdc_nrwire = 113
+                    52
+                   107
+                   107
+                    52
+                   113
+                   113
+                    52
+                   107
+                   107
+                    52
+                   113
+; X,Y position of center of wire chamber
+; increasing dc2 coordinates decreases dpos histograms.
+; new values according to henk and rolf
+      hdc_xcenter = (1.670 - 0.0155 - 0.020)
+                    (2.758 - 0.0155 + 0.040)
+;      hdc_xcenter = (1.670 - 0.0155)
+;                    (2.758 - 0.0155)
+;      hdc_xcenter = 1.670 + 0.15 + 0.0155
+;                    2.758 + 0.16 + 0.0155
+;  Y CENTER CHANGED TO MATCH OPTICS DATA(offset of 1.1 cm in y)
+; new values included according to henk and rolf
+      hdc_ycenter = (1.443 - 0.1699 - 0.0279 - 0.04)
+                    (2.753 - 0.1699 + 0.0279 + 0.04)
+;      hdc_ycenter = (1.443 - 0.1699 - 0.0279 - 0.035)
+;                    (2.753 - 0.1699 + 0.0279 + 0.035)
+;      hdc_ycenter = (1.443 - 0.1699 - 0.0279)
+;                    (2.753 - 0.1699 + 0.0279)
+
+;      hdc_ycenter = 0.343 + 1.1 - 0.12 + 0.1699 + 0.0279
+;                    1.653 + 1.1 - 0.22 + 0.1699 - 0.0279
+;      hdc_ycenter = 0.343  THESE ARE THE ORIGINAL Y CENTERS FROM SURVEY DATA
+;                    1.653
+;      hdc_xcenter = 0.0
+;                    1.22
+;      hdc_ycenter = 0.0
+;                    1.24
+
+; Wire number of center of wire chamber
+; assume 1st wire of 1st dc of a set is closest to edge where counting starts
+       hdc_central_wire = 57.257, 26.240, 54.001, 53.999, 26.760 , 56.743
+                          57.244, 26.242, 53.998, 54.002, 26.758 , 56.756
+
+;       hdc_central_wire = 57.25, 26.245, 54.0, 54.0, 26.755 , 56.75
+;                          57.24, 26.245, 54.0, 54.0, 26.755 , 56.76
+;       hdc_central_wire = 57.25, 26.25, 54.0, 54.0, 26.75 , 56.75
+;                          57.24, 26.25, 54.0, 54.0, 26.75 , 56.76
+; hdc_chamber_planes    array giving the chamber number for each plane
+      hdc_chamber_planes = 1
+                           1
+                           1
+                           1
+                           1
+                           1
+                           2
+                           2
+                           2
+                           2
+                           2
+                           2
+; The hms readout numbers some planes in reverse order.
+; The following array is a flag on the order number.
+; If hdc_wire_counting(plane) = 0
+;  the wire center is at (wire - hdc_central_wire) * pitch
+; If hdc_wire_counting(plane) = 1
+;  the wire center is at ( hdc_nrwire + 1 - wire - hdc_central_wire) * pitch
+        hdc_wire_counting = 1
+                            1
+                            0
+                            1
+                            0
+                            0
+                            1
+                            1
+                            0
+                            1
+                            0
+                            0
+; The velocity correction is the distance from the center of the wire divided
+; by the velocity of propagation times hdc_drifttime_sign(pln).  +/-1
+; for disc. card at +/- coord. (i.e. top = -x direction, so top readout is +1)
+       hdc_drifttime_sign = -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
+                            -1
diff --git a/examples/PARAM/hdc_offsets.param b/examples/PARAM/hdc_offsets.param
new file mode 100644
index 0000000000000000000000000000000000000000..a5561b2786ad3925d00ea1545b5f213828b8cf4f
--- /dev/null
+++ b/examples/PARAM/hdc_offsets.param
@@ -0,0 +1,125 @@
+; cable id's for HMS Drift Chambers
+; array is 113,12 (wires,planes) but most planes have less than 113 wires)
+
+hdc_card_no=
+; Plane 1, wires 1-113, 16 per card (+one extra wire)
+              1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
+              2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
+              3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3
+              4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4
+              5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5
+              6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6
+              7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7
+             12
+; plane 2, wires 1-52, 13 per card
+              8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8
+              9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9
+             10,10,10,10,10,10,10,10,10,10,10,10,10
+             11,11,11,11,11,11,11,11,11,11,11,11,11
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; plane 3, wires 1-107, 15 or 16 per card (12 has one x wire)
+             12,12,12,12,12,12,12,12,12,12,12,12,12,12
+             13,13,13,13,13,13,13,13,13,13,13,13,13,13,13
+             14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14
+             15,15,15,15,15,15,15,15,15,15,15,15,15,15,15
+             16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16
+             17,17,17,17,17,17,17,17,17,17,17,17,17,17,17
+             18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18
+             -1,-1,-1,-1,-1,-1
+; plane 4, wires 1-107, 15 or 16 per card (19 has one x' wire)
+             19,19,19,19,19,19,19,19,19,19,19,19,19,19
+             20,20,20,20,20,20,20,20,20,20,20,20,20,20,20
+             21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21
+             22,22,22,22,22,22,22,22,22,22,22,22,22,22,22
+             23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23
+             24,24,24,24,24,24,24,24,24,24,24,24,24,24,24
+             25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25
+             -1,-1,-1,-1,-1,-1
+; plane 5, wires 1-52, 13 per card
+             26,26,26,26,26,26,26,26,26,26,26,26,26
+             27,27,27,27,27,27,27,27,27,27,27,27,27
+             28,28,28,28,28,28,28,28,28,28,28,28,28
+             29,29,29,29,29,29,29,29,29,29,29,29,29
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 6, wires 1-113, 16 per card (+one extra wire)
+             30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
+             31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31
+             32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32
+             33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33
+             34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34
+             35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35
+             36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36
+             19
+; Chamber 2
+; Plane 7, wires 1-113, 16 per card (+one extra wire)
+             37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37
+             38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38
+             39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39
+             40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40
+             41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41
+             42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42
+             43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43
+             48
+; plane 8, wires 1-52, 13 per card
+             44,44,44,44,44,44,44,44,44,44,44,44,44
+             45,45,45,45,45,45,45,45,45,45,45,45,45
+             46,46,46,46,46,46,46,46,46,46,46,46,46
+             47,47,47,47,47,47,47,47,47,47,47,47,47
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; plane 9, wires 1-107, 15 or 16 per card (48 has one x wire)
+             48,48,48,48,48,48,48,48,48,48,48,48,48,48
+             49,49,49,49,49,49,49,49,49,49,49,49,49,49,49
+             50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50
+             51,51,51,51,51,51,51,51,51,51,51,51,51,51,51
+             52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52
+             53,53,53,53,53,53,53,53,53,53,53,53,53,53,53
+             54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54
+             -1,-1,-1,-1,-1,-1
+; plane 10, wires 1-107, 15 or 16 per card (55 has one x' wire)
+             55,55,55,55,55,55,55,55,55,55,55,55,55,55
+             56,56,56,56,56,56,56,56,56,56,56,56,56,56,56
+             57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57
+             58,58,58,58,58,58,58,58,58,58,58,58,58,58,58
+             59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59
+             60,60,60,60,60,60,60,60,60,60,60,60,60,60,60
+             61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61
+             -1,-1,-1,-1,-1,-1
+; plane 11, wires 1-52, 13 per card
+             62,62,62,62,62,62,62,62,62,62,62,62,62
+             63,63,63,63,63,63,63,63,63,63,63,63,63
+             64,64,64,64,64,64,64,64,64,64,64,64,64
+             65,65,65,65,65,65,65,65,65,65,65,65,65
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 12, wires 1-113, 16 per card (+one extra wire)
+             66,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66
+             67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67
+             68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68
+             69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69
+             70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70
+             71,71,71,71,71,71,71,71,71,71,71,71,71,71,71,71
+             72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72
+             55
+;
+;       Cable Delays on a per/card basys
+;
+hdc_card_delay =  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0
+
diff --git a/examples/PARAM/hdeadwires.param b/examples/PARAM/hdeadwires.param
new file mode 100644
index 0000000000000000000000000000000000000000..9d8b527ef661f2c2921224d140fea49d2d53927c
--- /dev/null
+++ b/examples/PARAM/hdeadwires.param
@@ -0,0 +1,10 @@
+; list of dead wires in the HMS (plane,wire).  Dead means <20% efficiency.
+hdc_num_deadwires = 6
+
+hdc_deadwire_plane =  2,   6,   6,   7,   9,  10
+
+hdc_deadwire_num =   43,  18,  60,  97,  30,   8
+
+; rough efficiency  22%,  3%, .4%,  0%,  0%,  7%
+
+; pln9,wire99 is HOT (used to be that 9/#100 was DEAD)?
diff --git a/examples/PARAM/hdebug.param b/examples/PARAM/hdebug.param
new file mode 100644
index 0000000000000000000000000000000000000000..950b1f651a6675c7658d00a4e1c7d22184734287
--- /dev/null
+++ b/examples/PARAM/hdebug.param
@@ -0,0 +1,122 @@
+; hms tracking code debug flags. 
+; when these flags are non-zero, dump routines are called to 
+; print out the data banks for each event.
+;
+;  hluno     fortran lun for output
+      hluno = 66
+; hdebugdumptof           Dump timing information for fitting offsets for old CSA method
+      hdebugdumptof = 0
+; hdumptof           Dump timing information for fitting offsets, new PB method
+; Done from h_tof.f. Add particle ID cuts if desired
+; Note: don't set both hdumptof=1 and hdebugdumptof=1 at same time
+;       because they both use fort.37 for the output
+      hdumptof = 0
+;; hdebugdumpcal           Dump calorimeter information for fitting gains
+      hdebugdumpcal = 0
+; number of pedestal events required to overwrite orig. peds.
+  hhodo_min_peds = 500
+  hcal_min_peds  = 500
+  hcer_min_peds  = 500
+  haero_min_peds  = 500
+  hmisc_min_peds  = 500
+
+; DEBUGGING OUTPUT FLAGS
+; ----------------------
+; hdebugprintrawdc        Dump HMS_RAW_DC Bank
+      hdebugprintrawdc = 0
+; hdebugprintdecodeddc    Dump HMS_DECODED_DC BAnk
+      hdebugprintdecodeddc = 0
+; hdebugflagpsi               Dump calculated coordinate positions
+      hdebugflagpsi =  0
+; hdebugflaggeoemtry          Dump calculated geometrical parameters
+      hdebugflaggeometry = 0
+; hdebugflagpr                Dump intermediate pattern recognition results
+      hdebugflagpr = 0
+; hdebugflagstubchisq         Dump chi2 of left-right fits
+      hdebugstubchisq = 0
+; hdebugflagstubs             Dump stub fit       
+      hdebugflagstubs = 0
+; hdebuglinkstubs             Dump linked hits
+      hdebuglinkstubs = 0
+; hdebugtrackprint            Dump focal plane track fit results
+      hdebugtrackprint = 0
+; hdebugtartrackprint         Dump tracks at target
+      hdebugtartrackprint = 0
+; tof debuging 
+;
+;  hdebugprintscinraw         Dump HMS_RAW_SCIN
+    hdebugprintscinraw = 0
+;  hdebugprintscindec         Dump HMS_DECODED_SCIN
+    hdebugprintscindec = 0
+;  hdebugprinttoftracks       Dump  hms_scin_tof
+    hdebugprinttoftracks = 0
+;  hdebugprinttracktests      Dump HMS_TRACK_TESTS
+    hdebugprinttracktests = 0
+;
+;  hms calorimeter debug flags
+;  hlun_dbg_cal                lun
+   hlun_dbg_cal    = hluno
+;  hdbg_raw_cal        call h_prt_cal_raw
+   hdbg_raw_cal = 0
+;  hdbg_sparsified_cal call h_prt_cal_sparsified
+   hdbg_sparsified_cal = 0
+;  hdbg_decoded_cal    call h_prt_cal_decoded
+   hdbg_decoded_cal = 0
+;  hdbg_clusters_cal   call h_prt_cal_clusters
+   hdbg_clusters_cal = 0
+;  hdbg_tracks_cal     call h_prt_cal_tracks
+   hdbg_tracks_cal = 0
+;  hdbg_tests_cal      call h_prt_cal_tests    HMS_TRACK_TESTS
+   hdbg_tests_cal = 0
+;
+;  hard wired histograms. If these flags .ne. 0 then the histogram
+;     blocks are filled
+;
+; hturnon_scin_raw_hist       Histogram HMS raw hodoscope data (each block)
+  hturnon_scin_raw_hist = 1
+; hturnon_decoded_dc_hist     Histogram HMS_DECODED_DC
+  hturnon_decoded_dc_hist = 1
+; hturnon_focal_plane_hist    Histogram HMS_FOCAL_PLANE 
+  hturnon_focal_plane_hist = 1
+; hturnon_target_hist         HISTOGRAM HMS_TARGET
+  hturnon_target_hist = 1
+;
+; Bypass paramters to bypass code elementes in h_reconstruction
+;      Stored in hmsbypass_switches.cmn
+;      Code element is bypassed if switch .ne. 0
+; hbypass_trans_dc         bypass h_trans_dc
+  hbypass_trans_dc   = 0 
+; hbypass_track            bypass h_track
+  hbypass_track      = 0
+; hbypass_targ_trans       bypass h_targ_trans
+  hbypass_targ_trans = 0
+; hbypass_dc_eff           bypass h_dc_eff and h_dc_eff_shutdown
+  hbypass_dc_eff     = 0
+; hbypass_track_eff        bypass h_tracking efficiency code
+  hbypass_track_eff  = 0
+; hbypass_track_eff_files  bypass h_tracking efficiency output files
+  hbypass_track_eff_files  = 1
+
+; hbypass_trans_scin       bypass h_trans_scin
+  hbypass_trans_scin = 0
+; hbypass_tof              bypass h_tof
+  hbypass_tof        = 0
+; hbypass_scin_eff         bypass h_scin_eff and h_scin_eff_shutdown
+  hbypass_scin_eff   = 0
+
+; hbypass_trans_cer        bypass h_trans_cer
+  hbypass_trans_cer  = 0
+; hbypass_cer              bypass h_cer
+  hbypass_cer        = 0
+; hbypass_cer_eff          bypass h_cer_eff and h_cer_eff_shutdown
+  hbypass_cer_eff    = 0
+
+; hbypass_trans_cal        bypass h_trans_cal
+  hbypass_trans_cal  = 0
+; hbypass_cal              bypass h_cal
+  hbypass_cal        = 0
+; hbypass_cal_eff          bypass h_cal_eff and h_cal_eff_shutdown
+  hbypass_cal_eff    = 0
+
+; hbypass_physics          bypass h_physics
+  hbypass_physics    = 0
diff --git a/examples/PARAM/hdriftmap.param b/examples/PARAM/hdriftmap.param
new file mode 100644
index 0000000000000000000000000000000000000000..12a3d95961c68b0dae38fc918cb11b9307bea6cb
--- /dev/null
+++ b/examples/PARAM/hdriftmap.param
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+hdriftbins=138
+;number of 1st bin in Meek's table in ns
+hdrift1stbin=-24
+;bin size in ns of Meek's table
+hdriftbinsz=2
+hwc1x1fract=0.0001,0.0003,0.0004,0.0005,0.0007,0.0010,0.0015,0.0017
+0.0020,0.0028,0.0040,0.0060,0.0086,0.0120,0.0167,0.0230,0.0320,0.0435
+0.0572,0.0735,0.0910,0.1100,0.1310,0.1525,0.1753,0.1981,0.2205,0.2424
+0.2659,0.2893,0.3122,0.3354,0.3590,0.3814,0.4039,0.4268,0.4485,0.4711
+0.4933,0.5149,0.5368,0.5585,0.5796,0.6001,0.6209,0.6421,0.6615,0.6809
+0.7003,0.7189,0.7380,0.7564,0.7742,0.7912,0.8084,0.8245,0.8394,0.8533
+0.8667,0.8793,0.8909,0.9017,0.9106,0.9193,0.9267,0.9336,0.9402,0.9462
+0.9516,0.9567,0.9618,0.9659,0.9700,0.9734,0.9764,0.9790,0.9818,0.9841
+0.9862,0.9881,0.9895,0.9909,0.9919,0.9928,0.9935,0.9942,0.9950,0.9955
+0.9960,0.9965,0.9968,0.9972,0.9975,0.9979,0.9981,0.9983,0.9985,0.9987
+0.9988,0.9989,0.9991,0.9992,0.9993,0.9994,0.9995,0.9996,0.9997,0.9997
+0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y1fract=0.0001,0.0003,0.0004,0.0004,0.0006,0.0009,0.0011,0.0014
+0.0016,0.0022,0.0029,0.0039,0.0053,0.0075,0.0111,0.0170,0.0264,0.0398
+0.0568,0.0762,0.0985,0.1218,0.1462,0.1721,0.1973,0.2231,0.2478,0.2721
+0.2960,0.3194,0.3434,0.3661,0.3888,0.4108,0.4335,0.4557,0.4762,0.4967
+0.5182,0.5389,0.5586,0.5788,0.5983,0.6189,0.6385,0.6583,0.6776,0.6971
+0.7158,0.7347,0.7527,0.7709,0.7881,0.8054,0.8215,0.8375,0.8530,0.8668
+0.8801,0.8926,0.9040,0.9141,0.9223,0.9304,0.9372,0.9430,0.9480,0.9528
+0.9573,0.9614,0.9651,0.9682,0.9710,0.9740,0.9765,0.9788,0.9809,0.9825
+0.9843,0.9858,0.9872,0.9882,0.9892,0.9902,0.9912,0.9920,0.9926,0.9932
+0.9938,0.9944,0.9949,0.9954,0.9958,0.9962,0.9966,0.9970,0.9971,0.9975
+0.9978,0.9980,0.9981,0.9983,0.9986,0.9987,0.9988,0.9990,0.9992,0.9993
+0.9995,0.9996,0.9997,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1u1fract=0.0000,0.0000,0.0001,0.0001,0.0001,0.0002,0.0003,0.0004
+0.0005,0.0009,0.0018,0.0033,0.0055,0.0088,0.0137,0.0211,0.0312,0.0459
+0.0630,0.0831,0.1059,0.1286,0.1526,0.1763,0.2012,0.2254,0.2494,0.2727
+0.2963,0.3192,0.3417,0.3644,0.3865,0.4081,0.4299,0.4516,0.4728,0.4939
+0.5138,0.5345,0.5549,0.5754,0.5958,0.6163,0.6361,0.6558,0.6747,0.6941
+0.7128,0.7319,0.7505,0.7686,0.7861,0.8039,0.8210,0.8365,0.8509,0.8648
+0.8779,0.8898,0.9010,0.9105,0.9191,0.9264,0.9333,0.9391,0.9447,0.9497
+0.9538,0.9580,0.9618,0.9652,0.9684,0.9716,0.9745,0.9771,0.9792,0.9815
+0.9833,0.9850,0.9863,0.9875,0.9885,0.9894,0.9902,0.9912,0.9919,0.9927
+0.9933,0.9937,0.9942,0.9947,0.9951,0.9955,0.9960,0.9963,0.9967,0.9970
+0.9973,0.9976,0.9979,0.9981,0.9982,0.9985,0.9986,0.9989,0.9991,0.9992
+0.9993,0.9994,0.9995,0.9996,0.9997,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1v1fract=0.0000,0.0000,0.0001,0.0002,0.0002,0.0003,0.0004,0.0005
+0.0007,0.0008,0.0011,0.0017,0.0026,0.0041,0.0073,0.0133,0.0228,0.0352
+0.0516,0.0710,0.0925,0.1158,0.1398,0.1644,0.1883,0.2115,0.2352,0.2589
+0.2824,0.3050,0.3282,0.3501,0.3718,0.3932,0.4149,0.4369,0.4577,0.4784
+0.4996,0.5201,0.5410,0.5616,0.5814,0.6016,0.6211,0.6414,0.6602,0.6795
+0.6985,0.7170,0.7361,0.7550,0.7736,0.7914,0.8094,0.8265,0.8428,0.8581
+0.8725,0.8857,0.8973,0.9077,0.9174,0.9257,0.9326,0.9387,0.9437,0.9490
+0.9538,0.9577,0.9613,0.9650,0.9684,0.9716,0.9746,0.9771,0.9793,0.9815
+0.9833,0.9849,0.9863,0.9876,0.9887,0.9896,0.9906,0.9915,0.9921,0.9927
+0.9932,0.9938,0.9943,0.9947,0.9953,0.9956,0.9960,0.9964,0.9968,0.9971
+0.9973,0.9976,0.9979,0.9981,0.9982,0.9984,0.9986,0.9988,0.9990,0.9991
+0.9993,0.9995,0.9996,0.9997,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y2fract=0.0000,0.0000,0.0001,0.0002,0.0003,0.0003,0.0005,0.0007
+0.0009,0.0011,0.0015,0.0020,0.0029,0.0045,0.0070,0.0112,0.0187,0.0294
+0.0438,0.0617,0.0826,0.1041,0.1281,0.1527,0.1771,0.2018,0.2262,0.2507
+0.2752,0.2982,0.3214,0.3442,0.3669,0.3896,0.4112,0.4327,0.4554,0.4767
+0.4978,0.5184,0.5388,0.5597,0.5793,0.6002,0.6198,0.6398,0.6586,0.6781
+0.6980,0.7164,0.7344,0.7527,0.7705,0.7883,0.8056,0.8215,0.8379,0.8533
+0.8667,0.8792,0.8916,0.9023,0.9118,0.9202,0.9277,0.9343,0.9402,0.9457
+0.9504,0.9553,0.9593,0.9628,0.9662,0.9695,0.9726,0.9749,0.9772,0.9793
+0.9812,0.9829,0.9843,0.9856,0.9866,0.9877,0.9886,0.9892,0.9901,0.9909
+0.9918,0.9926,0.9931,0.9937,0.9942,0.9948,0.9953,0.9956,0.9959,0.9963
+0.9967,0.9970,0.9973,0.9976,0.9979,0.9981,0.9983,0.9985,0.9988,0.9989
+0.9992,0.9993,0.9995,0.9996,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1x2fract=0.0001,0.0002,0.0003,0.0004,0.0005,0.0006,0.0008,0.0010
+0.0014,0.0021,0.0030,0.0048,0.0076,0.0115,0.0181,0.0268,0.0392,0.0538
+0.0709,0.0892,0.1099,0.1316,0.1529,0.1747,0.1986,0.2219,0.2461,0.2701
+0.2940,0.3176,0.3408,0.3641,0.3867,0.4102,0.4321,0.4534,0.4751,0.4972
+0.5185,0.5396,0.5602,0.5811,0.6018,0.6220,0.6421,0.6618,0.6811,0.7004
+0.7201,0.7374,0.7557,0.7741,0.7920,0.8096,0.8257,0.8410,0.8555,0.8687
+0.8814,0.8922,0.9022,0.9112,0.9195,0.9272,0.9343,0.9401,0.9458,0.9509
+0.9562,0.9605,0.9647,0.9687,0.9723,0.9753,0.9782,0.9808,0.9832,0.9851
+0.9868,0.9883,0.9897,0.9909,0.9918,0.9925,0.9933,0.9940,0.9947,0.9953
+0.9957,0.9961,0.9966,0.9969,0.9973,0.9975,0.9978,0.9980,0.9982,0.9984
+0.9985,0.9986,0.9988,0.9989,0.9991,0.9992,0.9993,0.9995,0.9996,0.9996
+0.9996,0.9997,0.9998,0.9998,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x1fract=0.0001,0.0002,0.0004,0.0005,0.0008,0.0011,0.0014,0.0017
+0.0021,0.0027,0.0039,0.0056,0.0087,0.0134,0.0199,0.0292,0.0404,0.0540
+0.0693,0.0861,0.1044,0.1251,0.1462,0.1676,0.1901,0.2126,0.2355,0.2583
+0.2820,0.3055,0.3288,0.3512,0.3739,0.3968,0.4189,0.4421,0.4645,0.4869
+0.5086,0.5306,0.5519,0.5731,0.5943,0.6150,0.6355,0.6568,0.6766,0.6969
+0.7168,0.7364,0.7554,0.7741,0.7913,0.8092,0.8260,0.8419,0.8572,0.8718
+0.8844,0.8961,0.9064,0.9160,0.9248,0.9320,0.9383,0.9448,0.9502,0.9554
+0.9603,0.9646,0.9685,0.9721,0.9753,0.9782,0.9810,0.9835,0.9857,0.9874
+0.9889,0.9903,0.9913,0.9922,0.9931,0.9937,0.9943,0.9950,0.9955,0.9959
+0.9964,0.9967,0.9970,0.9973,0.9975,0.9977,0.9980,0.9983,0.9984,0.9986
+0.9988,0.9989,0.9991,0.9992,0.9993,0.9994,0.9995,0.9996,0.9997,0.9997
+0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y1fract=0.0000,0.0000,0.0001,0.0002,0.0003,0.0004,0.0006,0.0008
+0.0010,0.0015,0.0020,0.0031,0.0045,0.0075,0.0130,0.0218,0.0330,0.0490
+0.0684,0.0901,0.1137,0.1389,0.1636,0.1900,0.2162,0.2419,0.2663,0.2913
+0.3145,0.3380,0.3606,0.3834,0.4056,0.4274,0.4494,0.4710,0.4920,0.5122
+0.5332,0.5541,0.5744,0.5947,0.6153,0.6358,0.6551,0.6758,0.6958,0.7153
+0.7342,0.7531,0.7709,0.7897,0.8071,0.8235,0.8391,0.8548,0.8692,0.8826
+0.8950,0.9068,0.9163,0.9250,0.9329,0.9404,0.9468,0.9523,0.9571,0.9612
+0.9655,0.9688,0.9718,0.9748,0.9774,0.9796,0.9816,0.9834,0.9852,0.9866
+0.9877,0.9888,0.9897,0.9908,0.9916,0.9924,0.9931,0.9937,0.9943,0.9947
+0.9951,0.9955,0.9959,0.9963,0.9967,0.9969,0.9973,0.9975,0.9978,0.9980
+0.9982,0.9984,0.9985,0.9987,0.9989,0.9990,0.9992,0.9993,0.9995,0.9996
+0.9997,0.9997,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2u1fract=0.0000,0.0000,0.0001,0.0001,0.0001,0.0002,0.0003,0.0004
+0.0005,0.0007,0.0010,0.0017,0.0034,0.0072,0.0145,0.0253,0.0416,0.0616
+0.0839,0.1082,0.1331,0.1596,0.1848,0.2100,0.2343,0.2581,0.2818,0.3059
+0.3288,0.3517,0.3739,0.3959,0.4173,0.4381,0.4589,0.4797,0.5011,0.5209
+0.5410,0.5613,0.5804,0.6000,0.6197,0.6390,0.6582,0.6776,0.6965,0.7146
+0.7326,0.7506,0.7689,0.7858,0.8030,0.8198,0.8362,0.8517,0.8655,0.8787
+0.8908,0.9016,0.9108,0.9192,0.9269,0.9328,0.9383,0.9430,0.9471,0.9509
+0.9546,0.9576,0.9609,0.9637,0.9664,0.9686,0.9705,0.9725,0.9743,0.9760
+0.9777,0.9791,0.9803,0.9818,0.9829,0.9839,0.9848,0.9857,0.9867,0.9876
+0.9884,0.9892,0.9898,0.9905,0.9912,0.9917,0.9922,0.9927,0.9932,0.9937
+0.9943,0.9946,0.9952,0.9956,0.9962,0.9966,0.9971,0.9975,0.9979,0.9984
+0.9988,0.9991,0.9994,0.9996,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2v1fract=0.0000,0.0001,0.0001,0.0002,0.0003,0.0004,0.0006,0.0008
+0.0010,0.0014,0.0020,0.0032,0.0058,0.0117,0.0214,0.0353,0.0527,0.0742
+0.0981,0.1231,0.1484,0.1741,0.1997,0.2245,0.2484,0.2721,0.2961,0.3203
+0.3434,0.3662,0.3882,0.4107,0.4324,0.4541,0.4747,0.4964,0.5164,0.5374
+0.5573,0.5776,0.5978,0.6180,0.6379,0.6570,0.6760,0.6950,0.7137,0.7319
+0.7496,0.7688,0.7859,0.8036,0.8207,0.8370,0.8522,0.8671,0.8811,0.8937
+0.9046,0.9153,0.9244,0.9318,0.9386,0.9445,0.9497,0.9542,0.9582,0.9619
+0.9654,0.9686,0.9713,0.9742,0.9768,0.9792,0.9813,0.9832,0.9848,0.9861
+0.9873,0.9884,0.9894,0.9903,0.9910,0.9918,0.9925,0.9931,0.9937,0.9942
+0.9946,0.9950,0.9954,0.9959,0.9962,0.9965,0.9969,0.9972,0.9975,0.9978
+0.9979,0.9981,0.9984,0.9985,0.9987,0.9989,0.9991,0.9992,0.9994,0.9996
+0.9997,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y2fract=0.0001,0.0002,0.0002,0.0004,0.0005,0.0006,0.0008,0.0010
+0.0013,0.0018,0.0026,0.0038,0.0057,0.0090,0.0144,0.0233,0.0363,0.0535
+0.0734,0.0953,0.1200,0.1454,0.1710,0.1972,0.2228,0.2471,0.2719,0.2963
+0.3199,0.3435,0.3670,0.3907,0.4132,0.4350,0.4566,0.4778,0.4991,0.5195
+0.5407,0.5610,0.5817,0.6024,0.6219,0.6426,0.6622,0.6820,0.7011,0.7203
+0.7384,0.7571,0.7749,0.7924,0.8098,0.8264,0.8431,0.8582,0.8723,0.8855
+0.8980,0.9089,0.9190,0.9278,0.9357,0.9428,0.9484,0.9534,0.9580,0.9622
+0.9660,0.9693,0.9722,0.9751,0.9775,0.9798,0.9821,0.9838,0.9854,0.9870
+0.9884,0.9893,0.9903,0.9912,0.9919,0.9924,0.9931,0.9937,0.9943,0.9948
+0.9951,0.9955,0.9959,0.9962,0.9965,0.9968,0.9971,0.9974,0.9977,0.9979
+0.9981,0.9983,0.9985,0.9987,0.9989,0.9991,0.9993,0.9994,0.9995,0.9996
+0.9997,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x2fract=0.0000,0.0002,0.0003,0.0003,0.0005,0.0008,0.0009,0.0012
+0.0015,0.0020,0.0025,0.0038,0.0059,0.0091,0.0140,0.0213,0.0307,0.0429
+0.0577,0.0743,0.0926,0.1127,0.1333,0.1554,0.1779,0.2009,0.2243,0.2474
+0.2710,0.2945,0.3191,0.3422,0.3648,0.3880,0.4103,0.4329,0.4554,0.4775
+0.5000,0.5212,0.5428,0.5635,0.5842,0.6048,0.6254,0.6451,0.6647,0.6845
+0.7044,0.7242,0.7431,0.7614,0.7797,0.7970,0.8145,0.8308,0.8463,0.8607
+0.8741,0.8864,0.8975,0.9073,0.9164,0.9247,0.9317,0.9386,0.9445,0.9501
+0.9556,0.9604,0.9647,0.9686,0.9722,0.9751,0.9781,0.9805,0.9829,0.9849
+0.9868,0.9884,0.9897,0.9908,0.9920,0.9930,0.9936,0.9942,0.9948,0.9954
+0.9959,0.9963,0.9968,0.9971,0.9974,0.9977,0.9979,0.9982,0.9984,0.9985
+0.9987,0.9988,0.9989,0.9991,0.9991,0.9993,0.9994,0.9994,0.9995,0.9996
+0.9997,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
diff --git a/examples/PARAM/hdriftmap.param.62698 b/examples/PARAM/hdriftmap.param.62698
new file mode 100644
index 0000000000000000000000000000000000000000..aa14b0eae2cc927120a8ecd44ad0b0b640aa8434
--- /dev/null
+++ b/examples/PARAM/hdriftmap.param.62698
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+hdriftbins=138
+;number of 1st bin in Meek's table in ns
+hdrift1stbin=-24
+;bin size in ns of Meek's table
+hdriftbinsz=2
+hwc1x1fract=0.0363,0.0747,0.1136,0.1530,0.1920,0.2324,0.2724,0.3119
+0.3507,0.3897,0.4273,0.4651,0.5016,0.5387,0.5740,0.6086,0.6453,0.6783
+0.7108,0.7421,0.7730,0.8016,0.8281,0.8522,0.8733,0.8924,0.9089,0.9229
+0.9347,0.9452,0.9536,0.9613,0.9680,0.9738,0.9780,0.9817,0.9847,0.9872
+0.9890,0.9903,0.9915,0.9926,0.9935,0.9943,0.9950,0.9955,0.9960,0.9965
+0.9969,0.9975,0.9978,0.9980,0.9982,0.9984,0.9986,0.9988,0.9989,0.9990
+0.9992,0.9993,0.9993,0.9994,0.9994,0.9995,0.9995,0.9996,0.9996,0.9996
+0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y1fract=0.0435,0.0873,0.1297,0.1724,0.2139,0.2534,0.2936,0.3319
+0.3699,0.4078,0.4443,0.4807,0.5166,0.5526,0.5878,0.6227,0.6573,0.6913
+0.7250,0.7565,0.7863,0.8146,0.8417,0.8657,0.8860,0.9028,0.9179,0.9304
+0.9402,0.9485,0.9559,0.9619,0.9676,0.9721,0.9759,0.9790,0.9816,0.9839
+0.9859,0.9874,0.9886,0.9897,0.9909,0.9917,0.9925,0.9931,0.9937,0.9940
+0.9945,0.9952,0.9958,0.9963,0.9966,0.9970,0.9974,0.9977,0.9980,0.9982
+0.9985,0.9987,0.9989,0.9990,0.9992,0.9993,0.9993,0.9994,0.9995,0.9995
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+hwc1u1fract=0.0417,0.0814,0.1229,0.1626,0.2036,0.2451,0.2842,0.3247
+0.3639,0.4030,0.4399,0.4766,0.5141,0.5490,0.5842,0.6202,0.6549,0.6888
+0.7220,0.7555,0.7860,0.8147,0.8406,0.8644,0.8851,0.9021,0.9164,0.9287
+0.9387,0.9475,0.9548,0.9614,0.9667,0.9713,0.9755,0.9787,0.9816,0.9840
+0.9860,0.9874,0.9890,0.9903,0.9914,0.9922,0.9929,0.9935,0.9942,0.9949
+0.9953,0.9958,0.9962,0.9967,0.9972,0.9976,0.9978,0.9980,0.9982,0.9984
+0.9987,0.9988,0.9989,0.9991,0.9992,0.9993,0.9994,0.9995,0.9995,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1v1fract=0.0390,0.0784,0.1189,0.1592,0.1993,0.2379,0.2758,0.3132
+0.3498,0.3861,0.4226,0.4600,0.4958,0.5324,0.5671,0.6005,0.6359,0.6699
+0.7022,0.7348,0.7661,0.7960,0.8234,0.8494,0.8730,0.8924,0.9091,0.9220
+0.9330,0.9423,0.9500,0.9569,0.9629,0.9683,0.9728,0.9768,0.9799,0.9827
+0.9846,0.9863,0.9880,0.9891,0.9903,0.9912,0.9920,0.9929,0.9936,0.9941
+0.9947,0.9953,0.9958,0.9963,0.9966,0.9971,0.9974,0.9976,0.9979,0.9983
+0.9985,0.9987,0.9989,0.9991,0.9991,0.9992,0.9994,0.9994,0.9995,0.9995
+0.9995,0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y2fract=0.0415,0.0845,0.1268,0.1688,0.2106,0.2502,0.2885,0.3274
+0.3662,0.4031,0.4395,0.4753,0.5098,0.5453,0.5804,0.6147,0.6497,0.6822
+0.7147,0.7459,0.7762,0.8043,0.8314,0.8552,0.8768,0.8958,0.9110,0.9235
+0.9343,0.9436,0.9515,0.9583,0.9639,0.9686,0.9728,0.9762,0.9790,0.9811
+0.9833,0.9852,0.9868,0.9882,0.9893,0.9904,0.9915,0.9924,0.9930,0.9936
+0.9943,0.9949,0.9955,0.9959,0.9963,0.9967,0.9970,0.9974,0.9975,0.9979
+0.9981,0.9984,0.9986,0.9988,0.9989,0.9991,0.9991,0.9993,0.9994,0.9995
+0.9995,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1x2fract=0.0383,0.0788,0.1191,0.1610,0.2022,0.2432,0.2837,0.3233
+0.3609,0.3990,0.4372,0.4741,0.5103,0.5457,0.5807,0.6168,0.6533,0.6872
+0.7206,0.7518,0.7834,0.8120,0.8378,0.8605,0.8805,0.8978,0.9125,0.9252
+0.9361,0.9449,0.9537,0.9614,0.9675,0.9731,0.9777,0.9811,0.9838,0.9861
+0.9879,0.9897,0.9909,0.9921,0.9931,0.9939,0.9945,0.9953,0.9958,0.9962
+0.9967,0.9970,0.9973,0.9976,0.9979,0.9981,0.9983,0.9985,0.9987,0.9988
+0.9989,0.9989,0.9990,0.9992,0.9993,0.9994,0.9995,0.9996,0.9996,0.9996
+0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x1fract=0.0235,0.0522,0.0818,0.1123,0.1453,0.1813,0.2170,0.2525
+0.2887,0.3246,0.3606,0.3970,0.4325,0.4677,0.5020,0.5376,0.5715,0.6056
+0.6392,0.6735,0.7057,0.7376,0.7684,0.7974,0.8237,0.8496,0.8710,0.8907
+0.9074,0.9213,0.9337,0.9444,0.9531,0.9606,0.9673,0.9729,0.9772,0.9812
+0.9842,0.9872,0.9892,0.9909,0.9922,0.9933,0.9939,0.9948,0.9955,0.9962
+0.9966,0.9968,0.9971,0.9974,0.9976,0.9979,0.9982,0.9984,0.9986,0.9987
+0.9989,0.9990,0.9991,0.9992,0.9994,0.9994,0.9995,0.9995,0.9996,0.9996
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y1fract=0.0320,0.0687,0.1083,0.1492,0.1886,0.2279,0.2662,0.3034
+0.3392,0.3745,0.4095,0.4431,0.4772,0.5110,0.5444,0.5775,0.6093,0.6415
+0.6734,0.7026,0.7335,0.7641,0.7926,0.8201,0.8462,0.8704,0.8914,0.9094
+0.9252,0.9373,0.9468,0.9550,0.9615,0.9673,0.9719,0.9760,0.9797,0.9826
+0.9846,0.9863,0.9877,0.9890,0.9901,0.9910,0.9917,0.9924,0.9929,0.9935
+0.9941,0.9946,0.9950,0.9954,0.9957,0.9960,0.9964,0.9968,0.9972,0.9974
+0.9978,0.9981,0.9983,0.9986,0.9987,0.9989,0.9991,0.9993,0.9994,0.9994
+0.9995,0.9996,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2u1fract=0.0379,0.0787,0.1184,0.1585,0.1980,0.2367,0.2745,0.3111
+0.3470,0.3821,0.4181,0.4521,0.4862,0.5187,0.5523,0.5847,0.6171,0.6497
+0.6812,0.7129,0.7437,0.7732,0.8012,0.8287,0.8544,0.8784,0.8985,0.9166
+0.9301,0.9414,0.9507,0.9577,0.9638,0.9687,0.9728,0.9765,0.9800,0.9826
+0.9850,0.9869,0.9883,0.9895,0.9905,0.9912,0.9919,0.9925,0.9930,0.9937
+0.9944,0.9947,0.9950,0.9954,0.9958,0.9963,0.9968,0.9971,0.9975,0.9978
+0.9982,0.9984,0.9986,0.9988,0.9990,0.9991,0.9992,0.9993,0.9993,0.9994
+0.9995,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2v1fract=0.0407,0.0819,0.1220,0.1631,0.2025,0.2408,0.2791,0.3163
+0.3524,0.3874,0.4234,0.4575,0.4917,0.5252,0.5586,0.5917,0.6243,0.6590
+0.6908,0.7224,0.7533,0.7824,0.8116,0.8394,0.8655,0.8884,0.9077,0.9237
+0.9368,0.9470,0.9554,0.9620,0.9674,0.9721,0.9764,0.9799,0.9826,0.9849
+0.9867,0.9885,0.9898,0.9908,0.9917,0.9926,0.9931,0.9936,0.9941,0.9946
+0.9950,0.9954,0.9958,0.9962,0.9966,0.9970,0.9973,0.9976,0.9979,0.9983
+0.9985,0.9987,0.9989,0.9992,0.9993,0.9995,0.9996,0.9996,0.9997,0.9997
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y2fract=0.0344,0.0722,0.1119,0.1503,0.1878,0.2256,0.2623,0.2990
+0.3334,0.3675,0.4001,0.4342,0.4662,0.4981,0.5310,0.5623,0.5932,0.6240
+0.6532,0.6829,0.7128,0.7401,0.7674,0.7942,0.8183,0.8402,0.8591,0.8756
+0.8891,0.9003,0.9088,0.9166,0.9232,0.9291,0.9345,0.9396,0.9440,0.9483
+0.9520,0.9553,0.9578,0.9603,0.9627,0.9648,0.9671,0.9694,0.9715,0.9734
+0.9752,0.9770,0.9787,0.9803,0.9817,0.9835,0.9853,0.9869,0.9887,0.9900
+0.9914,0.9927,0.9941,0.9951,0.9960,0.9968,0.9974,0.9978,0.9983,0.9986
+0.9987,0.9989,0.9990,0.9991,0.9992,0.9993,0.9994,0.9995,0.9996,0.9996
+0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x2fract=0.0258,0.0567,0.0898,0.1250,0.1615,0.1982,0.2339,0.2710
+0.3075,0.3438,0.3804,0.4167,0.4520,0.4865,0.5200,0.5539,0.5872,0.6191
+0.6512,0.6832,0.7148,0.7460,0.7761,0.8047,0.8316,0.8557,0.8778,0.8965
+0.9138,0.9275,0.9388,0.9482,0.9559,0.9625,0.9687,0.9735,0.9781,0.9814
+0.9841,0.9864,0.9883,0.9900,0.9912,0.9923,0.9933,0.9939,0.9946,0.9953
+0.9958,0.9964,0.9968,0.9972,0.9976,0.9979,0.9981,0.9984,0.9987,0.9988
+0.9990,0.9992,0.9993,0.9994,0.9995,0.9995,0.9996,0.9996,0.9997,0.9997
+0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
diff --git a/examples/PARAM/hdriftmap.param.62726 b/examples/PARAM/hdriftmap.param.62726
new file mode 100644
index 0000000000000000000000000000000000000000..6e548480f16a63aa924bae1799eb8ae9f846dbc0
--- /dev/null
+++ b/examples/PARAM/hdriftmap.param.62726
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+hdriftbins=138
+;number of 1st bin in Meek's table in ns
+hdrift1stbin=-24
+;bin size in ns of Meek's table
+hdriftbinsz=2
+hwc1x1fract=0.0282,0.0603,0.0961,0.1338,0.1719,0.2089,0.2463,0.2826
+0.3168,0.3528,0.3890,0.4242,0.4591,0.4926,0.5256,0.5565,0.5888,0.6201
+0.6504,0.6799,0.7095,0.7390,0.7672,0.7941,0.8196,0.8434,0.8664,0.8861
+0.9028,0.9169,0.9289,0.9393,0.9469,0.9550,0.9621,0.9675,0.9726,0.9768
+0.9809,0.9839,0.9859,0.9877,0.9894,0.9908,0.9916,0.9926,0.9933,0.9939
+0.9948,0.9953,0.9956,0.9960,0.9963,0.9967,0.9970,0.9972,0.9974,0.9978
+0.9981,0.9981,0.9982,0.9984,0.9985,0.9986,0.9988,0.9989,0.9989,0.9989
+0.9990,0.9990,0.9991,0.9991,0.9992,0.9992,0.9992,0.9992,0.9992,0.9992
+0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9994,0.9994,0.9994
+0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995
+0.9995,0.9995,0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000
+hwc1y1fract=0.0315,0.0688,0.1088,0.1504,0.1893,0.2281,0.2656,0.3016
+0.3359,0.3719,0.4046,0.4381,0.4694,0.5016,0.5337,0.5655,0.5961,0.6272
+0.6587,0.6904,0.7196,0.7472,0.7752,0.8024,0.8289,0.8534,0.8759,0.8962
+0.9137,0.9284,0.9391,0.9486,0.9553,0.9614,0.9664,0.9709,0.9749,0.9779
+0.9806,0.9831,0.9850,0.9869,0.9880,0.9892,0.9903,0.9909,0.9917,0.9925
+0.9930,0.9935,0.9940,0.9944,0.9948,0.9952,0.9955,0.9958,0.9964,0.9968
+0.9969,0.9971,0.9975,0.9978,0.9979,0.9981,0.9983,0.9985,0.9986,0.9987
+0.9988,0.9988,0.9990,0.9990,0.9990,0.9991,0.9991,0.9992,0.9992,0.9992
+0.9992,0.9992,0.9992,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993
+0.9994,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9995,0.9995
+0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc1u1fract=0.0336,0.0710,0.1105,0.1495,0.1873,0.2268,0.2642,0.3005
+0.3360,0.3710,0.4058,0.4393,0.4723,0.5066,0.5386,0.5691,0.6000,0.6325
+0.6620,0.6927,0.7227,0.7528,0.7800,0.8075,0.8334,0.8581,0.8801,0.8989
+0.9144,0.9284,0.9390,0.9474,0.9550,0.9603,0.9651,0.9698,0.9735,0.9768
+0.9799,0.9821,0.9841,0.9860,0.9873,0.9887,0.9898,0.9906,0.9913,0.9920
+0.9926,0.9932,0.9939,0.9943,0.9948,0.9953,0.9957,0.9962,0.9966,0.9970
+0.9972,0.9976,0.9979,0.9981,0.9983,0.9985,0.9986,0.9987,0.9988,0.9989
+0.9989,0.9990,0.9991,0.9991,0.9992,0.9992,0.9993,0.9993,0.9993,0.9993
+0.9993,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995
+0.9995,0.9995,0.9995,0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1v1fract=0.0311,0.0647,0.1035,0.1408,0.1805,0.2188,0.2556,0.2907
+0.3251,0.3575,0.3906,0.4237,0.4559,0.4883,0.5196,0.5505,0.5814,0.6125
+0.6421,0.6723,0.7019,0.7292,0.7576,0.7860,0.8133,0.8402,0.8639,0.8856
+0.9041,0.9184,0.9306,0.9406,0.9491,0.9558,0.9619,0.9672,0.9715,0.9755
+0.9794,0.9821,0.9843,0.9862,0.9880,0.9891,0.9901,0.9911,0.9920,0.9927
+0.9934,0.9940,0.9945,0.9951,0.9954,0.9958,0.9962,0.9966,0.9968,0.9970
+0.9973,0.9977,0.9980,0.9981,0.9982,0.9983,0.9985,0.9986,0.9988,0.9989
+0.9989,0.9990,0.9991,0.9991,0.9991,0.9992,0.9992,0.9992,0.9992,0.9992
+0.9992,0.9993,0.9993,0.9993,0.9993,0.9994,0.9994,0.9994,0.9994,0.9994
+0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995
+0.9995,0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y2fract=0.0287,0.0626,0.1008,0.1409,0.1822,0.2214,0.2594,0.2966
+0.3317,0.3671,0.4007,0.4343,0.4672,0.4980,0.5283,0.5588,0.5900,0.6197
+0.6495,0.6800,0.7088,0.7387,0.7671,0.7942,0.8197,0.8452,0.8680,0.8870
+0.9044,0.9205,0.9329,0.9438,0.9521,0.9589,0.9644,0.9690,0.9732,0.9763
+0.9791,0.9814,0.9839,0.9861,0.9876,0.9889,0.9898,0.9906,0.9914,0.9920
+0.9927,0.9934,0.9939,0.9944,0.9949,0.9953,0.9957,0.9960,0.9964,0.9968
+0.9971,0.9974,0.9977,0.9981,0.9982,0.9983,0.9986,0.9986,0.9988,0.9989
+0.9989,0.9990,0.9991,0.9991,0.9992,0.9992,0.9992,0.9992,0.9992,0.9992
+0.9992,0.9992,0.9992,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993
+0.9993,0.9993,0.9993,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995
+0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1x2fract=0.0335,0.0677,0.1081,0.1458,0.1840,0.2205,0.2588,0.2958
+0.3314,0.3675,0.4023,0.4372,0.4714,0.5043,0.5354,0.5665,0.5993,0.6295
+0.6623,0.6934,0.7225,0.7523,0.7808,0.8095,0.8338,0.8559,0.8763,0.8940
+0.9096,0.9224,0.9332,0.9426,0.9506,0.9573,0.9640,0.9698,0.9747,0.9783
+0.9813,0.9839,0.9860,0.9879,0.9893,0.9904,0.9915,0.9924,0.9932,0.9939
+0.9945,0.9948,0.9952,0.9957,0.9961,0.9966,0.9970,0.9973,0.9974,0.9976
+0.9976,0.9978,0.9980,0.9981,0.9983,0.9984,0.9987,0.9987,0.9988,0.9989
+0.9989,0.9989,0.9990,0.9991,0.9991,0.9991,0.9992,0.9992,0.9992,0.9992
+0.9992,0.9993,0.9993,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994
+0.9994,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x1fract=0.0266,0.0586,0.0918,0.1279,0.1662,0.2034,0.2390,0.2758
+0.3129,0.3502,0.3862,0.4207,0.4537,0.4881,0.5209,0.5551,0.5896,0.6219
+0.6538,0.6850,0.7169,0.7476,0.7797,0.8087,0.8343,0.8592,0.8811,0.9001
+0.9165,0.9290,0.9393,0.9486,0.9564,0.9631,0.9686,0.9734,0.9773,0.9812
+0.9840,0.9862,0.9883,0.9899,0.9912,0.9923,0.9931,0.9939,0.9944,0.9949
+0.9953,0.9956,0.9961,0.9965,0.9968,0.9970,0.9972,0.9974,0.9976,0.9978
+0.9980,0.9982,0.9983,0.9984,0.9985,0.9985,0.9986,0.9987,0.9987,0.9988
+0.9989,0.9990,0.9990,0.9991,0.9991,0.9991,0.9991,0.9992,0.9992,0.9992
+0.9992,0.9992,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993
+0.9993,0.9993,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994
+0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995
+0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+hwc2y1fract=0.0362,0.0776,0.1200,0.1608,0.2009,0.2406,0.2782,0.3139
+0.3477,0.3818,0.4159,0.4493,0.4843,0.5145,0.5466,0.5788,0.6109,0.6436
+0.6769,0.7103,0.7403,0.7689,0.7972,0.8258,0.8505,0.8745,0.8961,0.9159
+0.9317,0.9436,0.9527,0.9609,0.9671,0.9720,0.9760,0.9795,0.9829,0.9854
+0.9871,0.9890,0.9904,0.9913,0.9921,0.9929,0.9934,0.9938,0.9943,0.9945
+0.9949,0.9952,0.9956,0.9959,0.9961,0.9964,0.9967,0.9968,0.9971,0.9974
+0.9976,0.9977,0.9978,0.9981,0.9983,0.9984,0.9985,0.9987,0.9988,0.9989
+0.9990,0.9990,0.9991,0.9991,0.9991,0.9992,0.9992,0.9992,0.9992,0.9992
+0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9994
+0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995
+0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2u1fract=0.0410,0.0841,0.1260,0.1656,0.2066,0.2465,0.2831,0.3202
+0.3547,0.3887,0.4245,0.4584,0.4920,0.5252,0.5599,0.5930,0.6245,0.6578
+0.6893,0.7202,0.7512,0.7819,0.8102,0.8375,0.8643,0.8866,0.9064,0.9240
+0.9376,0.9482,0.9559,0.9626,0.9683,0.9733,0.9772,0.9802,0.9826,0.9849
+0.9868,0.9883,0.9899,0.9909,0.9918,0.9924,0.9931,0.9934,0.9940,0.9945
+0.9947,0.9951,0.9953,0.9956,0.9959,0.9962,0.9965,0.9966,0.9968,0.9971
+0.9972,0.9975,0.9978,0.9979,0.9981,0.9982,0.9983,0.9984,0.9985,0.9986
+0.9986,0.9987,0.9987,0.9988,0.9989,0.9989,0.9989,0.9989,0.9989,0.9989
+0.9990,0.9990,0.9991,0.9991,0.9992,0.9993,0.9993,0.9993,0.9993,0.9993
+0.9993,0.9993,0.9993,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9995
+0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc2v1fract=0.0433,0.0853,0.1281,0.1689,0.2096,0.2486,0.2871,0.3238
+0.3603,0.3966,0.4316,0.4658,0.4995,0.5319,0.5654,0.5999,0.6322,0.6631
+0.6950,0.7270,0.7589,0.7887,0.8180,0.8461,0.8707,0.8934,0.9125,0.9288
+0.9414,0.9516,0.9593,0.9650,0.9700,0.9742,0.9777,0.9807,0.9834,0.9853
+0.9871,0.9886,0.9900,0.9908,0.9915,0.9921,0.9926,0.9932,0.9936,0.9940
+0.9944,0.9948,0.9952,0.9956,0.9960,0.9963,0.9966,0.9969,0.9972,0.9974
+0.9977,0.9980,0.9982,0.9984,0.9984,0.9986,0.9987,0.9988,0.9989,0.9989
+0.9990,0.9990,0.9990,0.9991,0.9991,0.9992,0.9992,0.9992,0.9992,0.9993
+0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9994,0.9994,0.9994,0.9994
+0.9994,0.9994,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc2y2fract=0.0395,0.0830,0.1259,0.1670,0.2065,0.2467,0.2848,0.3213
+0.3590,0.3943,0.4276,0.4632,0.4948,0.5273,0.5591,0.5912,0.6240,0.6561
+0.6881,0.7193,0.7500,0.7806,0.8090,0.8368,0.8621,0.8839,0.9041,0.9209
+0.9354,0.9468,0.9563,0.9637,0.9700,0.9748,0.9784,0.9818,0.9846,0.9867
+0.9883,0.9899,0.9909,0.9920,0.9928,0.9934,0.9941,0.9944,0.9949,0.9952
+0.9956,0.9957,0.9958,0.9960,0.9962,0.9965,0.9967,0.9970,0.9973,0.9974
+0.9976,0.9978,0.9980,0.9981,0.9984,0.9985,0.9986,0.9987,0.9987,0.9988
+0.9989,0.9989,0.9991,0.9992,0.9992,0.9993,0.9993,0.9993,0.9993,0.9993
+0.9993,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995
+0.9995,0.9995,0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999
+0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x2fract=0.0321,0.0667,0.1052,0.1437,0.1823,0.2181,0.2562,0.2932
+0.3292,0.3650,0.3980,0.4325,0.4665,0.5015,0.5349,0.5666,0.5977,0.6311
+0.6629,0.6940,0.7248,0.7546,0.7832,0.8110,0.8374,0.8625,0.8841,0.9024
+0.9197,0.9327,0.9432,0.9522,0.9594,0.9660,0.9713,0.9756,0.9793,0.9826
+0.9852,0.9874,0.9888,0.9900,0.9912,0.9918,0.9925,0.9931,0.9938,0.9945
+0.9950,0.9955,0.9961,0.9963,0.9965,0.9968,0.9971,0.9973,0.9974,0.9976
+0.9977,0.9980,0.9982,0.9984,0.9985,0.9986,0.9987,0.9987,0.9988,0.9989
+0.9989,0.9990,0.9990,0.9990,0.9990,0.9992,0.9992,0.9992,0.9992,0.9992
+0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993,0.9993
+0.9993,0.9993,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9995
+0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
diff --git a/examples/PARAM/hdriftmap.param.63504 b/examples/PARAM/hdriftmap.param.63504
new file mode 100644
index 0000000000000000000000000000000000000000..b45d812da215d4acc7c6862f8f497f9df36217c7
--- /dev/null
+++ b/examples/PARAM/hdriftmap.param.63504
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+hdriftbins=138
+;number of 1st bin in Meek's table in ns
+hdrift1stbin=-24
+;bin size in ns of Meek's table
+hdriftbinsz=2
+hwc1x1fract=0.0355,0.0712,0.1090,0.1483,0.1878,0.2272,0.2663,0.3047
+0.3429,0.3798,0.4167,0.4537,0.4917,0.5280,0.5654,0.6012,0.6364,0.6716
+0.7048,0.7366,0.7672,0.7968,0.8254,0.8507,0.8728,0.8908,0.9079,0.9207
+0.9330,0.9432,0.9519,0.9592,0.9661,0.9718,0.9763,0.9799,0.9830,0.9863
+0.9884,0.9901,0.9912,0.9922,0.9933,0.9941,0.9947,0.9954,0.9958,0.9963
+0.9967,0.9969,0.9973,0.9975,0.9977,0.9980,0.9982,0.9984,0.9986,0.9988
+0.9989,0.9990,0.9991,0.9991,0.9993,0.9993,0.9994,0.9995,0.9995,0.9995
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc1y1fract=0.0440,0.0878,0.1304,0.1716,0.2122,0.2521,0.2919,0.3303
+0.3679,0.4047,0.4420,0.4793,0.5168,0.5518,0.5873,0.6241,0.6573,0.6909
+0.7230,0.7547,0.7863,0.8155,0.8432,0.8677,0.8878,0.9069,0.9216,0.9336
+0.9438,0.9527,0.9591,0.9651,0.9699,0.9744,0.9778,0.9810,0.9835,0.9853
+0.9871,0.9884,0.9895,0.9907,0.9915,0.9924,0.9929,0.9935,0.9939,0.9945
+0.9949,0.9954,0.9958,0.9961,0.9965,0.9969,0.9971,0.9974,0.9977,0.9981
+0.9983,0.9984,0.9985,0.9986,0.9989,0.9991,0.9992,0.9992,0.9993,0.9993
+0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995
+0.9995,0.9995,0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc1u1fract=0.0419,0.0839,0.1263,0.1668,0.2062,0.2460,0.2855,0.3254
+0.3647,0.4016,0.4383,0.4760,0.5124,0.5483,0.5833,0.6190,0.6527,0.6873
+0.7219,0.7536,0.7843,0.8144,0.8409,0.8646,0.8852,0.9030,0.9172,0.9289
+0.9397,0.9479,0.9549,0.9612,0.9665,0.9709,0.9746,0.9782,0.9808,0.9834
+0.9855,0.9874,0.9886,0.9895,0.9903,0.9912,0.9922,0.9930,0.9937,0.9943
+0.9946,0.9949,0.9954,0.9960,0.9963,0.9967,0.9970,0.9973,0.9974,0.9978
+0.9980,0.9983,0.9985,0.9988,0.9989,0.9990,0.9991,0.9992,0.9993,0.9994
+0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1v1fract=0.0408,0.0811,0.1225,0.1621,0.2005,0.2382,0.2770,0.3148
+0.3504,0.3868,0.4234,0.4598,0.4957,0.5323,0.5666,0.6018,0.6366,0.6708
+0.7044,0.7354,0.7662,0.7970,0.8240,0.8513,0.8760,0.8963,0.9128,0.9258
+0.9372,0.9464,0.9542,0.9614,0.9667,0.9717,0.9762,0.9793,0.9822,0.9845
+0.9863,0.9880,0.9895,0.9905,0.9918,0.9925,0.9933,0.9938,0.9944,0.9949
+0.9952,0.9956,0.9960,0.9963,0.9969,0.9973,0.9975,0.9978,0.9981,0.9984
+0.9985,0.9989,0.9990,0.9990,0.9991,0.9991,0.9992,0.9993,0.9993,0.9993
+0.9994,0.9994,0.9995,0.9995,0.9995,0.9995,0.9995,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y2fract=0.0425,0.0855,0.1273,0.1693,0.2106,0.2508,0.2902,0.3297
+0.3670,0.4036,0.4393,0.4756,0.5126,0.5486,0.5826,0.6165,0.6486,0.6822
+0.7146,0.7466,0.7782,0.8068,0.8329,0.8578,0.8800,0.8990,0.9149,0.9280
+0.9390,0.9480,0.9556,0.9616,0.9668,0.9711,0.9747,0.9781,0.9805,0.9825
+0.9843,0.9861,0.9876,0.9885,0.9897,0.9907,0.9914,0.9922,0.9929,0.9934
+0.9941,0.9946,0.9952,0.9956,0.9959,0.9963,0.9966,0.9971,0.9974,0.9977
+0.9980,0.9983,0.9984,0.9986,0.9989,0.9989,0.9990,0.9991,0.9991,0.9992
+0.9993,0.9993,0.9993,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9995
+0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+hwc1x2fract=0.0378,0.0785,0.1198,0.1599,0.2002,0.2417,0.2825,0.3221
+0.3605,0.4003,0.4400,0.4772,0.5141,0.5510,0.5867,0.6221,0.6578,0.6898
+0.7224,0.7529,0.7832,0.8110,0.8369,0.8591,0.8812,0.8989,0.9129,0.9254
+0.9367,0.9455,0.9536,0.9603,0.9668,0.9720,0.9764,0.9799,0.9827,0.9851
+0.9867,0.9885,0.9899,0.9912,0.9922,0.9930,0.9937,0.9945,0.9952,0.9957
+0.9960,0.9964,0.9967,0.9971,0.9972,0.9974,0.9977,0.9980,0.9982,0.9984
+0.9986,0.9987,0.9988,0.9989,0.9990,0.9991,0.9991,0.9991,0.9992,0.9993
+0.9993,0.9993,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9995
+0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000
+hwc2x1fract=0.0353,0.0698,0.1076,0.1468,0.1840,0.2231,0.2621,0.2983
+0.3360,0.3744,0.4126,0.4524,0.4907,0.5271,0.5652,0.6009,0.6342,0.6697
+0.7057,0.7390,0.7723,0.8020,0.8287,0.8532,0.8758,0.8951,0.9118,0.9256
+0.9379,0.9480,0.9566,0.9639,0.9702,0.9750,0.9790,0.9824,0.9849,0.9873
+0.9889,0.9907,0.9918,0.9931,0.9939,0.9947,0.9953,0.9959,0.9964,0.9968
+0.9971,0.9976,0.9979,0.9980,0.9981,0.9984,0.9985,0.9987,0.9988,0.9989
+0.9990,0.9991,0.9992,0.9992,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995
+0.9995,0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000
+hwc2y1fract=0.0441,0.0876,0.1311,0.1734,0.2155,0.2561,0.2961,0.3356
+0.3737,0.4127,0.4507,0.4867,0.5225,0.5580,0.5923,0.6283,0.6624,0.6975
+0.7305,0.7629,0.7938,0.8237,0.8504,0.8738,0.8949,0.9127,0.9282,0.9405
+0.9501,0.9581,0.9643,0.9696,0.9745,0.9784,0.9821,0.9846,0.9865,0.9879
+0.9895,0.9909,0.9920,0.9927,0.9935,0.9942,0.9948,0.9952,0.9954,0.9958
+0.9960,0.9964,0.9967,0.9970,0.9974,0.9977,0.9979,0.9982,0.9984,0.9987
+0.9987,0.9989,0.9990,0.9991,0.9992,0.9992,0.9993,0.9993,0.9994,0.9994
+0.9994,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+hwc2u1fract=0.0455,0.0907,0.1326,0.1767,0.2191,0.2603,0.3007,0.3414
+0.3823,0.4202,0.4599,0.4974,0.5333,0.5718,0.6078,0.6426,0.6786,0.7135
+0.7478,0.7804,0.8115,0.8402,0.8672,0.8892,0.9083,0.9234,0.9370,0.9474
+0.9557,0.9621,0.9677,0.9718,0.9759,0.9792,0.9825,0.9850,0.9872,0.9884
+0.9898,0.9904,0.9914,0.9921,0.9927,0.9933,0.9938,0.9943,0.9947,0.9951
+0.9954,0.9960,0.9963,0.9966,0.9969,0.9972,0.9975,0.9979,0.9982,0.9984
+0.9986,0.9987,0.9989,0.9991,0.9991,0.9991,0.9992,0.9992,0.9993,0.9993
+0.9993,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9994,0.9995,0.9995
+0.9995,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+hwc2v1fract=0.0456,0.0905,0.1362,0.1788,0.2206,0.2625,0.3021,0.3441
+0.3848,0.4235,0.4630,0.5010,0.5394,0.5770,0.6143,0.6507,0.6867,0.7225
+0.7576,0.7898,0.8219,0.8495,0.8759,0.8971,0.9151,0.9295,0.9411,0.9504
+0.9579,0.9638,0.9690,0.9730,0.9770,0.9803,0.9828,0.9851,0.9871,0.9887
+0.9899,0.9909,0.9918,0.9924,0.9932,0.9938,0.9943,0.9949,0.9951,0.9955
+0.9959,0.9963,0.9966,0.9968,0.9971,0.9975,0.9978,0.9981,0.9984,0.9987
+0.9988,0.9990,0.9992,0.9992,0.9993,0.9994,0.9995,0.9995,0.9995,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000
+hwc2y2fract=0.0480,0.0937,0.1389,0.1833,0.2242,0.2652,0.3038,0.3445
+0.3831,0.4225,0.4595,0.4956,0.5333,0.5698,0.6077,0.6439,0.6777,0.7109
+0.7451,0.7781,0.8087,0.8380,0.8647,0.8877,0.9077,0.9242,0.9378,0.9481
+0.9564,0.9637,0.9688,0.9737,0.9781,0.9817,0.9846,0.9867,0.9887,0.9902
+0.9912,0.9924,0.9931,0.9939,0.9945,0.9949,0.9953,0.9957,0.9960,0.9963
+0.9966,0.9969,0.9973,0.9977,0.9979,0.9982,0.9983,0.9985,0.9987,0.9988
+0.9990,0.9991,0.9991,0.9992,0.9992,0.9993,0.9994,0.9994,0.9994,0.9995
+0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9995,0.9996,0.9996
+0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9996,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000
+hwc2x2fract=0.0368,0.0768,0.1168,0.1569,0.1950,0.2340,0.2724,0.3100
+0.3490,0.3863,0.4234,0.4597,0.4983,0.5336,0.5678,0.6027,0.6364,0.6686
+0.7007,0.7318,0.7623,0.7899,0.8169,0.8401,0.8622,0.8802,0.8944,0.9067
+0.9177,0.9263,0.9350,0.9424,0.9480,0.9532,0.9579,0.9618,0.9653,0.9679
+0.9707,0.9735,0.9756,0.9774,0.9790,0.9802,0.9816,0.9831,0.9844,0.9857
+0.9867,0.9877,0.9886,0.9897,0.9907,0.9919,0.9929,0.9937,0.9945,0.9953
+0.9959,0.9963,0.9970,0.9976,0.9980,0.9984,0.9987,0.9988,0.9989,0.9990
+0.9991,0.9992,0.9993,0.9994,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997
+0.9997,0.9997,0.9997,0.9997,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998
+0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999
+0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000
diff --git a/examples/PARAM/hdriftmap.param.63513 b/examples/PARAM/hdriftmap.param.63513
new file mode 100644
index 0000000000000000000000000000000000000000..97df536afc1050fd755b2111ff9ae1501a031a34
--- /dev/null
+++ b/examples/PARAM/hdriftmap.param.63513
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+hdriftbins=138
+;number of 1st bin in Meek's table in ns
+hdrift1stbin=-24
+;bin size in ns of Meek's table
+hdriftbinsz=2
+hwc1x1fract=0.0256,0.0559,0.0886,0.1228,0.1566,0.1924,0.2280,0.2641
+0.3005,0.3356,0.3719,0.4075,0.4425,0.4773,0.5107,0.5445,0.5766,0.6093
+0.6427,0.6753,0.7052,0.7352,0.7639,0.7929,0.8190,0.8436,0.8655,0.8854
+0.9020,0.9166,0.9287,0.9389,0.9479,0.9558,0.9627,0.9683,0.9731,0.9770
+0.9800,0.9825,0.9847,0.9864,0.9877,0.9888,0.9897,0.9906,0.9913,0.9919
+0.9924,0.9928,0.9932,0.9937,0.9940,0.9943,0.9947,0.9950,0.9953,0.9955
+0.9957,0.9958,0.9959,0.9960,0.9962,0.9963,0.9964,0.9966,0.9966,0.9967
+0.9968,0.9969,0.9970,0.9971,0.9972,0.9973,0.9973,0.9973,0.9974,0.9975
+0.9975,0.9976,0.9976,0.9977,0.9978,0.9978,0.9978,0.9978,0.9979,0.9980
+0.9980,0.9981,0.9981,0.9981,0.9982,0.9982,0.9983,0.9983,0.9983,0.9984
+0.9985,0.9985,0.9986,0.9986,0.9986,0.9987,0.9988,0.9988,0.9989,0.9989
+0.9990,0.9990,0.9990,0.9991,0.9991,0.9992,0.9992,0.9993,0.9994,0.9994
+0.9994,0.9995,0.9995,0.9996,0.9996,0.9996,0.9996,0.9997,0.9997,0.9997
+0.9997,0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+hwc1y1fract=0.0304,0.0677,0.1072,0.1457,0.1842,0.2233,0.2602,0.2963
+0.3316,0.3667,0.4019,0.4361,0.4684,0.5015,0.5334,0.5647,0.5964,0.6278
+0.6588,0.6906,0.7213,0.7511,0.7804,0.8079,0.8346,0.8593,0.8810,0.8999
+0.9165,0.9296,0.9401,0.9494,0.9567,0.9625,0.9673,0.9712,0.9748,0.9778
+0.9805,0.9826,0.9843,0.9857,0.9872,0.9882,0.9891,0.9898,0.9905,0.9911
+0.9916,0.9921,0.9924,0.9929,0.9931,0.9935,0.9939,0.9941,0.9944,0.9946
+0.9950,0.9953,0.9956,0.9959,0.9961,0.9963,0.9965,0.9966,0.9967,0.9969
+0.9970,0.9970,0.9971,0.9972,0.9973,0.9973,0.9973,0.9974,0.9974,0.9974
+0.9975,0.9975,0.9976,0.9976,0.9976,0.9977,0.9977,0.9977,0.9978,0.9978
+0.9979,0.9979,0.9980,0.9980,0.9981,0.9981,0.9982,0.9982,0.9983,0.9983
+0.9984,0.9984,0.9985,0.9985,0.9985,0.9986,0.9986,0.9987,0.9987,0.9988
+0.9988,0.9989,0.9989,0.9990,0.9990,0.9991,0.9991,0.9992,0.9993,0.9993
+0.9993,0.9993,0.9994,0.9994,0.9995,0.9995,0.9995,0.9996,0.9997,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc1u1fract=0.0313,0.0678,0.1049,0.1422,0.1793,0.2171,0.2530,0.2896
+0.3248,0.3599,0.3949,0.4290,0.4618,0.4956,0.5287,0.5609,0.5938,0.6252
+0.6570,0.6876,0.7189,0.7487,0.7781,0.8060,0.8324,0.8562,0.8776,0.8957
+0.9117,0.9248,0.9356,0.9448,0.9527,0.9586,0.9642,0.9689,0.9730,0.9766
+0.9792,0.9814,0.9834,0.9849,0.9861,0.9873,0.9880,0.9888,0.9895,0.9902
+0.9908,0.9913,0.9917,0.9923,0.9928,0.9931,0.9936,0.9940,0.9944,0.9947
+0.9950,0.9952,0.9956,0.9958,0.9960,0.9961,0.9963,0.9964,0.9965,0.9966
+0.9968,0.9969,0.9970,0.9970,0.9971,0.9972,0.9972,0.9972,0.9973,0.9973
+0.9974,0.9974,0.9975,0.9975,0.9976,0.9977,0.9977,0.9977,0.9978,0.9978
+0.9978,0.9979,0.9979,0.9979,0.9980,0.9980,0.9981,0.9981,0.9982,0.9983
+0.9983,0.9984,0.9984,0.9984,0.9985,0.9986,0.9986,0.9987,0.9987,0.9988
+0.9988,0.9989,0.9990,0.9991,0.9991,0.9992,0.9993,0.9993,0.9994,0.9994
+0.9995,0.9995,0.9995,0.9996,0.9996,0.9997,0.9997,0.9997,0.9998,0.9998
+0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000
+hwc1v1fract=0.0286,0.0611,0.0975,0.1351,0.1716,0.2073,0.2422,0.2773
+0.3122,0.3464,0.3803,0.4144,0.4472,0.4795,0.5118,0.5438,0.5760,0.6065
+0.6375,0.6685,0.6996,0.7302,0.7601,0.7883,0.8158,0.8407,0.8650,0.8865
+0.9046,0.9198,0.9320,0.9418,0.9499,0.9562,0.9625,0.9674,0.9715,0.9753
+0.9785,0.9808,0.9831,0.9848,0.9862,0.9875,0.9886,0.9894,0.9901,0.9906
+0.9912,0.9917,0.9922,0.9926,0.9929,0.9933,0.9936,0.9939,0.9943,0.9946
+0.9949,0.9952,0.9955,0.9956,0.9958,0.9960,0.9962,0.9964,0.9965,0.9966
+0.9967,0.9968,0.9969,0.9970,0.9971,0.9971,0.9972,0.9972,0.9973,0.9973
+0.9974,0.9974,0.9975,0.9975,0.9975,0.9976,0.9976,0.9977,0.9977,0.9978
+0.9978,0.9978,0.9979,0.9979,0.9980,0.9981,0.9981,0.9982,0.9982,0.9982
+0.9983,0.9984,0.9984,0.9984,0.9985,0.9985,0.9985,0.9986,0.9987,0.9987
+0.9988,0.9988,0.9989,0.9989,0.9990,0.9990,0.9990,0.9991,0.9991,0.9992
+0.9992,0.9993,0.9994,0.9994,0.9995,0.9995,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9997,0.9997,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc1y2fract=0.0267,0.0603,0.0968,0.1362,0.1764,0.2148,0.2525,0.2885
+0.3230,0.3581,0.3925,0.4260,0.4585,0.4917,0.5228,0.5544,0.5865,0.6185
+0.6494,0.6789,0.7092,0.7387,0.7672,0.7942,0.8205,0.8448,0.8686,0.8886
+0.9060,0.9203,0.9329,0.9430,0.9512,0.9578,0.9632,0.9678,0.9718,0.9753
+0.9785,0.9809,0.9831,0.9849,0.9862,0.9875,0.9886,0.9893,0.9901,0.9908
+0.9913,0.9919,0.9924,0.9928,0.9931,0.9935,0.9938,0.9941,0.9944,0.9948
+0.9950,0.9953,0.9955,0.9957,0.9959,0.9960,0.9961,0.9963,0.9964,0.9965
+0.9967,0.9968,0.9969,0.9970,0.9970,0.9970,0.9971,0.9971,0.9972,0.9972
+0.9972,0.9973,0.9973,0.9974,0.9974,0.9975,0.9976,0.9976,0.9977,0.9977
+0.9978,0.9978,0.9979,0.9979,0.9980,0.9980,0.9980,0.9981,0.9982,0.9982
+0.9982,0.9983,0.9984,0.9984,0.9984,0.9985,0.9986,0.9986,0.9987,0.9987
+0.9988,0.9988,0.9988,0.9989,0.9990,0.9990,0.9991,0.9991,0.9992,0.9993
+0.9993,0.9993,0.9994,0.9994,0.9995,0.9995,0.9996,0.9996,0.9996,0.9996
+0.9996,0.9997,0.9997,0.9998,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000
+hwc1x2fract=0.0297,0.0619,0.0973,0.1332,0.1704,0.2074,0.2450,0.2824
+0.3188,0.3545,0.3894,0.4236,0.4580,0.4918,0.5247,0.5587,0.5903,0.6226
+0.6534,0.6843,0.7147,0.7436,0.7735,0.8008,0.8270,0.8512,0.8728,0.8920
+0.9081,0.9211,0.9325,0.9419,0.9504,0.9572,0.9634,0.9686,0.9729,0.9761
+0.9792,0.9816,0.9836,0.9851,0.9866,0.9877,0.9887,0.9896,0.9903,0.9911
+0.9917,0.9922,0.9929,0.9933,0.9938,0.9941,0.9945,0.9948,0.9949,0.9952
+0.9955,0.9956,0.9958,0.9959,0.9961,0.9963,0.9963,0.9965,0.9966,0.9967
+0.9968,0.9969,0.9970,0.9971,0.9972,0.9972,0.9973,0.9973,0.9974,0.9974
+0.9974,0.9975,0.9975,0.9976,0.9977,0.9978,0.9978,0.9978,0.9979,0.9979
+0.9980,0.9980,0.9980,0.9980,0.9981,0.9982,0.9982,0.9983,0.9983,0.9983
+0.9984,0.9984,0.9984,0.9984,0.9986,0.9986,0.9986,0.9987,0.9988,0.9989
+0.9989,0.9990,0.9990,0.9992,0.9992,0.9992,0.9993,0.9993,0.9994,0.9994
+0.9995,0.9995,0.9995,0.9996,0.9996,0.9997,0.9997,0.9997,0.9997,0.9998
+0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc2x1fract=0.0245,0.0527,0.0833,0.1155,0.1485,0.1811,0.2165,0.2522
+0.2887,0.3242,0.3602,0.3954,0.4314,0.4664,0.5013,0.5357,0.5703,0.6037
+0.6382,0.6711,0.7034,0.7345,0.7639,0.7927,0.8190,0.8438,0.8666,0.8862
+0.9032,0.9182,0.9312,0.9419,0.9509,0.9585,0.9651,0.9707,0.9754,0.9795
+0.9827,0.9851,0.9870,0.9887,0.9898,0.9909,0.9916,0.9923,0.9929,0.9934
+0.9938,0.9942,0.9945,0.9948,0.9951,0.9954,0.9957,0.9958,0.9960,0.9961
+0.9963,0.9964,0.9966,0.9967,0.9968,0.9969,0.9970,0.9971,0.9972,0.9973
+0.9973,0.9973,0.9974,0.9975,0.9975,0.9976,0.9976,0.9976,0.9977,0.9978
+0.9978,0.9978,0.9979,0.9979,0.9980,0.9980,0.9980,0.9981,0.9981,0.9981
+0.9981,0.9982,0.9983,0.9983,0.9983,0.9984,0.9984,0.9985,0.9985,0.9985
+0.9986,0.9986,0.9986,0.9987,0.9987,0.9987,0.9988,0.9988,0.9988,0.9989
+0.9989,0.9989,0.9990,0.9990,0.9990,0.9991,0.9991,0.9992,0.9993,0.9993
+0.9993,0.9994,0.9994,0.9994,0.9995,0.9996,0.9996,0.9997,0.9997,0.9997
+0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+hwc2y1fract=0.0317,0.0687,0.1074,0.1469,0.1868,0.2246,0.2614,0.2992
+0.3350,0.3720,0.4055,0.4391,0.4725,0.5057,0.5387,0.5707,0.6029,0.6343
+0.6662,0.6977,0.7286,0.7587,0.7883,0.8164,0.8421,0.8657,0.8874,0.9060
+0.9218,0.9350,0.9460,0.9549,0.9611,0.9664,0.9710,0.9751,0.9785,0.9812
+0.9836,0.9855,0.9870,0.9882,0.9891,0.9901,0.9908,0.9914,0.9920,0.9924
+0.9927,0.9930,0.9934,0.9936,0.9939,0.9942,0.9945,0.9948,0.9950,0.9953
+0.9956,0.9958,0.9960,0.9962,0.9964,0.9965,0.9967,0.9969,0.9970,0.9970
+0.9971,0.9972,0.9973,0.9973,0.9973,0.9975,0.9975,0.9976,0.9976,0.9977
+0.9977,0.9977,0.9978,0.9979,0.9979,0.9980,0.9980,0.9981,0.9981,0.9981
+0.9982,0.9982,0.9982,0.9983,0.9984,0.9984,0.9984,0.9984,0.9985,0.9985
+0.9986,0.9986,0.9986,0.9987,0.9987,0.9987,0.9988,0.9988,0.9989,0.9989
+0.9990,0.9990,0.9991,0.9991,0.9991,0.9992,0.9992,0.9993,0.9994,0.9994
+0.9994,0.9994,0.9995,0.9995,0.9996,0.9996,0.9997,0.9997,0.9997,0.9998
+0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc2u1fract=0.0386,0.0799,0.1213,0.1619,0.2003,0.2391,0.2774,0.3138
+0.3503,0.3845,0.4188,0.4525,0.4869,0.5210,0.5546,0.5868,0.6188,0.6510
+0.6830,0.7146,0.7451,0.7752,0.8041,0.8309,0.8570,0.8796,0.8997,0.9168
+0.9308,0.9419,0.9511,0.9586,0.9645,0.9692,0.9731,0.9765,0.9793,0.9817
+0.9839,0.9853,0.9866,0.9875,0.9884,0.9893,0.9900,0.9906,0.9911,0.9915
+0.9919,0.9923,0.9927,0.9930,0.9934,0.9937,0.9940,0.9942,0.9945,0.9948
+0.9951,0.9952,0.9955,0.9957,0.9959,0.9961,0.9963,0.9964,0.9965,0.9966
+0.9968,0.9968,0.9970,0.9970,0.9971,0.9971,0.9972,0.9972,0.9973,0.9973
+0.9974,0.9975,0.9975,0.9976,0.9976,0.9977,0.9977,0.9978,0.9979,0.9979
+0.9980,0.9981,0.9981,0.9982,0.9982,0.9983,0.9983,0.9983,0.9983,0.9984
+0.9985,0.9985,0.9985,0.9985,0.9986,0.9986,0.9986,0.9987,0.9987,0.9988
+0.9988,0.9989,0.9990,0.9990,0.9991,0.9991,0.9992,0.9992,0.9992,0.9993
+0.9994,0.9994,0.9994,0.9995,0.9995,0.9995,0.9996,0.9996,0.9997,0.9997
+0.9997,0.9998,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000
+hwc2v1fract=0.0403,0.0826,0.1232,0.1635,0.2041,0.2423,0.2797,0.3168
+0.3530,0.3878,0.4240,0.4593,0.4928,0.5270,0.5600,0.5922,0.6248,0.6570
+0.6887,0.7203,0.7510,0.7804,0.8098,0.8372,0.8632,0.8857,0.9050,0.9213
+0.9338,0.9441,0.9525,0.9592,0.9649,0.9696,0.9734,0.9768,0.9795,0.9817
+0.9839,0.9856,0.9869,0.9881,0.9891,0.9898,0.9905,0.9911,0.9916,0.9921
+0.9926,0.9929,0.9934,0.9938,0.9940,0.9944,0.9946,0.9949,0.9951,0.9954
+0.9957,0.9959,0.9961,0.9964,0.9965,0.9966,0.9968,0.9969,0.9969,0.9970
+0.9971,0.9972,0.9972,0.9973,0.9974,0.9974,0.9974,0.9975,0.9975,0.9976
+0.9976,0.9977,0.9977,0.9977,0.9978,0.9978,0.9978,0.9978,0.9979,0.9980
+0.9980,0.9981,0.9982,0.9982,0.9982,0.9983,0.9983,0.9984,0.9985,0.9985
+0.9985,0.9985,0.9986,0.9986,0.9987,0.9987,0.9987,0.9988,0.9988,0.9989
+0.9989,0.9989,0.9990,0.9991,0.9991,0.9992,0.9992,0.9993,0.9994,0.9994
+0.9994,0.9995,0.9995,0.9996,0.9996,0.9996,0.9997,0.9997,0.9998,0.9998
+0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y2fract=0.0370,0.0763,0.1180,0.1578,0.1969,0.2355,0.2742,0.3112
+0.3474,0.3831,0.4176,0.4524,0.4865,0.5195,0.5522,0.5854,0.6172,0.6478
+0.6798,0.7112,0.7430,0.7727,0.8020,0.8298,0.8555,0.8789,0.8995,0.9168
+0.9310,0.9428,0.9520,0.9601,0.9660,0.9708,0.9749,0.9784,0.9813,0.9838
+0.9857,0.9872,0.9884,0.9894,0.9902,0.9909,0.9915,0.9921,0.9928,0.9931
+0.9934,0.9937,0.9938,0.9941,0.9944,0.9946,0.9948,0.9950,0.9951,0.9954
+0.9955,0.9958,0.9960,0.9962,0.9964,0.9966,0.9967,0.9968,0.9968,0.9969
+0.9970,0.9971,0.9971,0.9972,0.9972,0.9973,0.9973,0.9973,0.9974,0.9974
+0.9975,0.9975,0.9975,0.9976,0.9976,0.9976,0.9977,0.9977,0.9978,0.9979
+0.9979,0.9980,0.9980,0.9981,0.9982,0.9982,0.9982,0.9983,0.9983,0.9983
+0.9984,0.9984,0.9985,0.9985,0.9986,0.9986,0.9987,0.9987,0.9987,0.9988
+0.9988,0.9989,0.9989,0.9989,0.9990,0.9990,0.9991,0.9991,0.9991,0.9991
+0.9992,0.9992,0.9992,0.9993,0.9993,0.9994,0.9995,0.9995,0.9996,0.9996
+0.9997,0.9997,0.9997,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000
+hwc2x2fract=0.0274,0.0580,0.0903,0.1257,0.1610,0.1971,0.2322,0.2677
+0.3035,0.3386,0.3735,0.4080,0.4420,0.4757,0.5091,0.5416,0.5741,0.6051
+0.6372,0.6691,0.7007,0.7311,0.7594,0.7876,0.8131,0.8372,0.8589,0.8776
+0.8930,0.9072,0.9184,0.9280,0.9361,0.9430,0.9491,0.9548,0.9590,0.9627
+0.9661,0.9692,0.9717,0.9739,0.9757,0.9772,0.9787,0.9800,0.9814,0.9826
+0.9837,0.9847,0.9856,0.9866,0.9874,0.9885,0.9893,0.9900,0.9908,0.9916
+0.9923,0.9929,0.9936,0.9942,0.9947,0.9952,0.9956,0.9959,0.9962,0.9964
+0.9965,0.9967,0.9969,0.9970,0.9971,0.9973,0.9973,0.9974,0.9975,0.9976
+0.9976,0.9977,0.9977,0.9978,0.9978,0.9978,0.9979,0.9980,0.9980,0.9980
+0.9981,0.9981,0.9982,0.9983,0.9983,0.9983,0.9984,0.9984,0.9984,0.9985
+0.9985,0.9985,0.9985,0.9986,0.9987,0.9987,0.9988,0.9988,0.9989,0.9989
+0.9989,0.9990,0.9990,0.9990,0.9991,0.9991,0.9991,0.9991,0.9992,0.9992
+0.9992,0.9993,0.9994,0.9994,0.9994,0.9995,0.9995,0.9996,0.9996,0.9996
+0.9997,0.9997,0.9998,0.9998,0.9999,0.9999,0.9999,0.9999,0.9999,1.0000
diff --git a/examples/PARAM/hdriftmap.param.bak b/examples/PARAM/hdriftmap.param.bak
new file mode 100644
index 0000000000000000000000000000000000000000..12a3d95961c68b0dae38fc918cb11b9307bea6cb
--- /dev/null
+++ b/examples/PARAM/hdriftmap.param.bak
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+hdriftbins=138
+;number of 1st bin in Meek's table in ns
+hdrift1stbin=-24
+;bin size in ns of Meek's table
+hdriftbinsz=2
+hwc1x1fract=0.0001,0.0003,0.0004,0.0005,0.0007,0.0010,0.0015,0.0017
+0.0020,0.0028,0.0040,0.0060,0.0086,0.0120,0.0167,0.0230,0.0320,0.0435
+0.0572,0.0735,0.0910,0.1100,0.1310,0.1525,0.1753,0.1981,0.2205,0.2424
+0.2659,0.2893,0.3122,0.3354,0.3590,0.3814,0.4039,0.4268,0.4485,0.4711
+0.4933,0.5149,0.5368,0.5585,0.5796,0.6001,0.6209,0.6421,0.6615,0.6809
+0.7003,0.7189,0.7380,0.7564,0.7742,0.7912,0.8084,0.8245,0.8394,0.8533
+0.8667,0.8793,0.8909,0.9017,0.9106,0.9193,0.9267,0.9336,0.9402,0.9462
+0.9516,0.9567,0.9618,0.9659,0.9700,0.9734,0.9764,0.9790,0.9818,0.9841
+0.9862,0.9881,0.9895,0.9909,0.9919,0.9928,0.9935,0.9942,0.9950,0.9955
+0.9960,0.9965,0.9968,0.9972,0.9975,0.9979,0.9981,0.9983,0.9985,0.9987
+0.9988,0.9989,0.9991,0.9992,0.9993,0.9994,0.9995,0.9996,0.9997,0.9997
+0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y1fract=0.0001,0.0003,0.0004,0.0004,0.0006,0.0009,0.0011,0.0014
+0.0016,0.0022,0.0029,0.0039,0.0053,0.0075,0.0111,0.0170,0.0264,0.0398
+0.0568,0.0762,0.0985,0.1218,0.1462,0.1721,0.1973,0.2231,0.2478,0.2721
+0.2960,0.3194,0.3434,0.3661,0.3888,0.4108,0.4335,0.4557,0.4762,0.4967
+0.5182,0.5389,0.5586,0.5788,0.5983,0.6189,0.6385,0.6583,0.6776,0.6971
+0.7158,0.7347,0.7527,0.7709,0.7881,0.8054,0.8215,0.8375,0.8530,0.8668
+0.8801,0.8926,0.9040,0.9141,0.9223,0.9304,0.9372,0.9430,0.9480,0.9528
+0.9573,0.9614,0.9651,0.9682,0.9710,0.9740,0.9765,0.9788,0.9809,0.9825
+0.9843,0.9858,0.9872,0.9882,0.9892,0.9902,0.9912,0.9920,0.9926,0.9932
+0.9938,0.9944,0.9949,0.9954,0.9958,0.9962,0.9966,0.9970,0.9971,0.9975
+0.9978,0.9980,0.9981,0.9983,0.9986,0.9987,0.9988,0.9990,0.9992,0.9993
+0.9995,0.9996,0.9997,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1u1fract=0.0000,0.0000,0.0001,0.0001,0.0001,0.0002,0.0003,0.0004
+0.0005,0.0009,0.0018,0.0033,0.0055,0.0088,0.0137,0.0211,0.0312,0.0459
+0.0630,0.0831,0.1059,0.1286,0.1526,0.1763,0.2012,0.2254,0.2494,0.2727
+0.2963,0.3192,0.3417,0.3644,0.3865,0.4081,0.4299,0.4516,0.4728,0.4939
+0.5138,0.5345,0.5549,0.5754,0.5958,0.6163,0.6361,0.6558,0.6747,0.6941
+0.7128,0.7319,0.7505,0.7686,0.7861,0.8039,0.8210,0.8365,0.8509,0.8648
+0.8779,0.8898,0.9010,0.9105,0.9191,0.9264,0.9333,0.9391,0.9447,0.9497
+0.9538,0.9580,0.9618,0.9652,0.9684,0.9716,0.9745,0.9771,0.9792,0.9815
+0.9833,0.9850,0.9863,0.9875,0.9885,0.9894,0.9902,0.9912,0.9919,0.9927
+0.9933,0.9937,0.9942,0.9947,0.9951,0.9955,0.9960,0.9963,0.9967,0.9970
+0.9973,0.9976,0.9979,0.9981,0.9982,0.9985,0.9986,0.9989,0.9991,0.9992
+0.9993,0.9994,0.9995,0.9996,0.9997,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1v1fract=0.0000,0.0000,0.0001,0.0002,0.0002,0.0003,0.0004,0.0005
+0.0007,0.0008,0.0011,0.0017,0.0026,0.0041,0.0073,0.0133,0.0228,0.0352
+0.0516,0.0710,0.0925,0.1158,0.1398,0.1644,0.1883,0.2115,0.2352,0.2589
+0.2824,0.3050,0.3282,0.3501,0.3718,0.3932,0.4149,0.4369,0.4577,0.4784
+0.4996,0.5201,0.5410,0.5616,0.5814,0.6016,0.6211,0.6414,0.6602,0.6795
+0.6985,0.7170,0.7361,0.7550,0.7736,0.7914,0.8094,0.8265,0.8428,0.8581
+0.8725,0.8857,0.8973,0.9077,0.9174,0.9257,0.9326,0.9387,0.9437,0.9490
+0.9538,0.9577,0.9613,0.9650,0.9684,0.9716,0.9746,0.9771,0.9793,0.9815
+0.9833,0.9849,0.9863,0.9876,0.9887,0.9896,0.9906,0.9915,0.9921,0.9927
+0.9932,0.9938,0.9943,0.9947,0.9953,0.9956,0.9960,0.9964,0.9968,0.9971
+0.9973,0.9976,0.9979,0.9981,0.9982,0.9984,0.9986,0.9988,0.9990,0.9991
+0.9993,0.9995,0.9996,0.9997,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y2fract=0.0000,0.0000,0.0001,0.0002,0.0003,0.0003,0.0005,0.0007
+0.0009,0.0011,0.0015,0.0020,0.0029,0.0045,0.0070,0.0112,0.0187,0.0294
+0.0438,0.0617,0.0826,0.1041,0.1281,0.1527,0.1771,0.2018,0.2262,0.2507
+0.2752,0.2982,0.3214,0.3442,0.3669,0.3896,0.4112,0.4327,0.4554,0.4767
+0.4978,0.5184,0.5388,0.5597,0.5793,0.6002,0.6198,0.6398,0.6586,0.6781
+0.6980,0.7164,0.7344,0.7527,0.7705,0.7883,0.8056,0.8215,0.8379,0.8533
+0.8667,0.8792,0.8916,0.9023,0.9118,0.9202,0.9277,0.9343,0.9402,0.9457
+0.9504,0.9553,0.9593,0.9628,0.9662,0.9695,0.9726,0.9749,0.9772,0.9793
+0.9812,0.9829,0.9843,0.9856,0.9866,0.9877,0.9886,0.9892,0.9901,0.9909
+0.9918,0.9926,0.9931,0.9937,0.9942,0.9948,0.9953,0.9956,0.9959,0.9963
+0.9967,0.9970,0.9973,0.9976,0.9979,0.9981,0.9983,0.9985,0.9988,0.9989
+0.9992,0.9993,0.9995,0.9996,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1x2fract=0.0001,0.0002,0.0003,0.0004,0.0005,0.0006,0.0008,0.0010
+0.0014,0.0021,0.0030,0.0048,0.0076,0.0115,0.0181,0.0268,0.0392,0.0538
+0.0709,0.0892,0.1099,0.1316,0.1529,0.1747,0.1986,0.2219,0.2461,0.2701
+0.2940,0.3176,0.3408,0.3641,0.3867,0.4102,0.4321,0.4534,0.4751,0.4972
+0.5185,0.5396,0.5602,0.5811,0.6018,0.6220,0.6421,0.6618,0.6811,0.7004
+0.7201,0.7374,0.7557,0.7741,0.7920,0.8096,0.8257,0.8410,0.8555,0.8687
+0.8814,0.8922,0.9022,0.9112,0.9195,0.9272,0.9343,0.9401,0.9458,0.9509
+0.9562,0.9605,0.9647,0.9687,0.9723,0.9753,0.9782,0.9808,0.9832,0.9851
+0.9868,0.9883,0.9897,0.9909,0.9918,0.9925,0.9933,0.9940,0.9947,0.9953
+0.9957,0.9961,0.9966,0.9969,0.9973,0.9975,0.9978,0.9980,0.9982,0.9984
+0.9985,0.9986,0.9988,0.9989,0.9991,0.9992,0.9993,0.9995,0.9996,0.9996
+0.9996,0.9997,0.9998,0.9998,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x1fract=0.0001,0.0002,0.0004,0.0005,0.0008,0.0011,0.0014,0.0017
+0.0021,0.0027,0.0039,0.0056,0.0087,0.0134,0.0199,0.0292,0.0404,0.0540
+0.0693,0.0861,0.1044,0.1251,0.1462,0.1676,0.1901,0.2126,0.2355,0.2583
+0.2820,0.3055,0.3288,0.3512,0.3739,0.3968,0.4189,0.4421,0.4645,0.4869
+0.5086,0.5306,0.5519,0.5731,0.5943,0.6150,0.6355,0.6568,0.6766,0.6969
+0.7168,0.7364,0.7554,0.7741,0.7913,0.8092,0.8260,0.8419,0.8572,0.8718
+0.8844,0.8961,0.9064,0.9160,0.9248,0.9320,0.9383,0.9448,0.9502,0.9554
+0.9603,0.9646,0.9685,0.9721,0.9753,0.9782,0.9810,0.9835,0.9857,0.9874
+0.9889,0.9903,0.9913,0.9922,0.9931,0.9937,0.9943,0.9950,0.9955,0.9959
+0.9964,0.9967,0.9970,0.9973,0.9975,0.9977,0.9980,0.9983,0.9984,0.9986
+0.9988,0.9989,0.9991,0.9992,0.9993,0.9994,0.9995,0.9996,0.9997,0.9997
+0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y1fract=0.0000,0.0000,0.0001,0.0002,0.0003,0.0004,0.0006,0.0008
+0.0010,0.0015,0.0020,0.0031,0.0045,0.0075,0.0130,0.0218,0.0330,0.0490
+0.0684,0.0901,0.1137,0.1389,0.1636,0.1900,0.2162,0.2419,0.2663,0.2913
+0.3145,0.3380,0.3606,0.3834,0.4056,0.4274,0.4494,0.4710,0.4920,0.5122
+0.5332,0.5541,0.5744,0.5947,0.6153,0.6358,0.6551,0.6758,0.6958,0.7153
+0.7342,0.7531,0.7709,0.7897,0.8071,0.8235,0.8391,0.8548,0.8692,0.8826
+0.8950,0.9068,0.9163,0.9250,0.9329,0.9404,0.9468,0.9523,0.9571,0.9612
+0.9655,0.9688,0.9718,0.9748,0.9774,0.9796,0.9816,0.9834,0.9852,0.9866
+0.9877,0.9888,0.9897,0.9908,0.9916,0.9924,0.9931,0.9937,0.9943,0.9947
+0.9951,0.9955,0.9959,0.9963,0.9967,0.9969,0.9973,0.9975,0.9978,0.9980
+0.9982,0.9984,0.9985,0.9987,0.9989,0.9990,0.9992,0.9993,0.9995,0.9996
+0.9997,0.9997,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2u1fract=0.0000,0.0000,0.0001,0.0001,0.0001,0.0002,0.0003,0.0004
+0.0005,0.0007,0.0010,0.0017,0.0034,0.0072,0.0145,0.0253,0.0416,0.0616
+0.0839,0.1082,0.1331,0.1596,0.1848,0.2100,0.2343,0.2581,0.2818,0.3059
+0.3288,0.3517,0.3739,0.3959,0.4173,0.4381,0.4589,0.4797,0.5011,0.5209
+0.5410,0.5613,0.5804,0.6000,0.6197,0.6390,0.6582,0.6776,0.6965,0.7146
+0.7326,0.7506,0.7689,0.7858,0.8030,0.8198,0.8362,0.8517,0.8655,0.8787
+0.8908,0.9016,0.9108,0.9192,0.9269,0.9328,0.9383,0.9430,0.9471,0.9509
+0.9546,0.9576,0.9609,0.9637,0.9664,0.9686,0.9705,0.9725,0.9743,0.9760
+0.9777,0.9791,0.9803,0.9818,0.9829,0.9839,0.9848,0.9857,0.9867,0.9876
+0.9884,0.9892,0.9898,0.9905,0.9912,0.9917,0.9922,0.9927,0.9932,0.9937
+0.9943,0.9946,0.9952,0.9956,0.9962,0.9966,0.9971,0.9975,0.9979,0.9984
+0.9988,0.9991,0.9994,0.9996,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2v1fract=0.0000,0.0001,0.0001,0.0002,0.0003,0.0004,0.0006,0.0008
+0.0010,0.0014,0.0020,0.0032,0.0058,0.0117,0.0214,0.0353,0.0527,0.0742
+0.0981,0.1231,0.1484,0.1741,0.1997,0.2245,0.2484,0.2721,0.2961,0.3203
+0.3434,0.3662,0.3882,0.4107,0.4324,0.4541,0.4747,0.4964,0.5164,0.5374
+0.5573,0.5776,0.5978,0.6180,0.6379,0.6570,0.6760,0.6950,0.7137,0.7319
+0.7496,0.7688,0.7859,0.8036,0.8207,0.8370,0.8522,0.8671,0.8811,0.8937
+0.9046,0.9153,0.9244,0.9318,0.9386,0.9445,0.9497,0.9542,0.9582,0.9619
+0.9654,0.9686,0.9713,0.9742,0.9768,0.9792,0.9813,0.9832,0.9848,0.9861
+0.9873,0.9884,0.9894,0.9903,0.9910,0.9918,0.9925,0.9931,0.9937,0.9942
+0.9946,0.9950,0.9954,0.9959,0.9962,0.9965,0.9969,0.9972,0.9975,0.9978
+0.9979,0.9981,0.9984,0.9985,0.9987,0.9989,0.9991,0.9992,0.9994,0.9996
+0.9997,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y2fract=0.0001,0.0002,0.0002,0.0004,0.0005,0.0006,0.0008,0.0010
+0.0013,0.0018,0.0026,0.0038,0.0057,0.0090,0.0144,0.0233,0.0363,0.0535
+0.0734,0.0953,0.1200,0.1454,0.1710,0.1972,0.2228,0.2471,0.2719,0.2963
+0.3199,0.3435,0.3670,0.3907,0.4132,0.4350,0.4566,0.4778,0.4991,0.5195
+0.5407,0.5610,0.5817,0.6024,0.6219,0.6426,0.6622,0.6820,0.7011,0.7203
+0.7384,0.7571,0.7749,0.7924,0.8098,0.8264,0.8431,0.8582,0.8723,0.8855
+0.8980,0.9089,0.9190,0.9278,0.9357,0.9428,0.9484,0.9534,0.9580,0.9622
+0.9660,0.9693,0.9722,0.9751,0.9775,0.9798,0.9821,0.9838,0.9854,0.9870
+0.9884,0.9893,0.9903,0.9912,0.9919,0.9924,0.9931,0.9937,0.9943,0.9948
+0.9951,0.9955,0.9959,0.9962,0.9965,0.9968,0.9971,0.9974,0.9977,0.9979
+0.9981,0.9983,0.9985,0.9987,0.9989,0.9991,0.9993,0.9994,0.9995,0.9996
+0.9997,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x2fract=0.0000,0.0002,0.0003,0.0003,0.0005,0.0008,0.0009,0.0012
+0.0015,0.0020,0.0025,0.0038,0.0059,0.0091,0.0140,0.0213,0.0307,0.0429
+0.0577,0.0743,0.0926,0.1127,0.1333,0.1554,0.1779,0.2009,0.2243,0.2474
+0.2710,0.2945,0.3191,0.3422,0.3648,0.3880,0.4103,0.4329,0.4554,0.4775
+0.5000,0.5212,0.5428,0.5635,0.5842,0.6048,0.6254,0.6451,0.6647,0.6845
+0.7044,0.7242,0.7431,0.7614,0.7797,0.7970,0.8145,0.8308,0.8463,0.8607
+0.8741,0.8864,0.8975,0.9073,0.9164,0.9247,0.9317,0.9386,0.9445,0.9501
+0.9556,0.9604,0.9647,0.9686,0.9722,0.9751,0.9781,0.9805,0.9829,0.9849
+0.9868,0.9884,0.9897,0.9908,0.9920,0.9930,0.9936,0.9942,0.9948,0.9954
+0.9959,0.9963,0.9968,0.9971,0.9974,0.9977,0.9979,0.9982,0.9984,0.9985
+0.9987,0.9988,0.9989,0.9991,0.9991,0.9993,0.9994,0.9994,0.9995,0.9996
+0.9997,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
diff --git a/examples/PARAM/hdriftmap.param.pre62690 b/examples/PARAM/hdriftmap.param.pre62690
new file mode 100644
index 0000000000000000000000000000000000000000..12a3d95961c68b0dae38fc918cb11b9307bea6cb
--- /dev/null
+++ b/examples/PARAM/hdriftmap.param.pre62690
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+hdriftbins=138
+;number of 1st bin in Meek's table in ns
+hdrift1stbin=-24
+;bin size in ns of Meek's table
+hdriftbinsz=2
+hwc1x1fract=0.0001,0.0003,0.0004,0.0005,0.0007,0.0010,0.0015,0.0017
+0.0020,0.0028,0.0040,0.0060,0.0086,0.0120,0.0167,0.0230,0.0320,0.0435
+0.0572,0.0735,0.0910,0.1100,0.1310,0.1525,0.1753,0.1981,0.2205,0.2424
+0.2659,0.2893,0.3122,0.3354,0.3590,0.3814,0.4039,0.4268,0.4485,0.4711
+0.4933,0.5149,0.5368,0.5585,0.5796,0.6001,0.6209,0.6421,0.6615,0.6809
+0.7003,0.7189,0.7380,0.7564,0.7742,0.7912,0.8084,0.8245,0.8394,0.8533
+0.8667,0.8793,0.8909,0.9017,0.9106,0.9193,0.9267,0.9336,0.9402,0.9462
+0.9516,0.9567,0.9618,0.9659,0.9700,0.9734,0.9764,0.9790,0.9818,0.9841
+0.9862,0.9881,0.9895,0.9909,0.9919,0.9928,0.9935,0.9942,0.9950,0.9955
+0.9960,0.9965,0.9968,0.9972,0.9975,0.9979,0.9981,0.9983,0.9985,0.9987
+0.9988,0.9989,0.9991,0.9992,0.9993,0.9994,0.9995,0.9996,0.9997,0.9997
+0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y1fract=0.0001,0.0003,0.0004,0.0004,0.0006,0.0009,0.0011,0.0014
+0.0016,0.0022,0.0029,0.0039,0.0053,0.0075,0.0111,0.0170,0.0264,0.0398
+0.0568,0.0762,0.0985,0.1218,0.1462,0.1721,0.1973,0.2231,0.2478,0.2721
+0.2960,0.3194,0.3434,0.3661,0.3888,0.4108,0.4335,0.4557,0.4762,0.4967
+0.5182,0.5389,0.5586,0.5788,0.5983,0.6189,0.6385,0.6583,0.6776,0.6971
+0.7158,0.7347,0.7527,0.7709,0.7881,0.8054,0.8215,0.8375,0.8530,0.8668
+0.8801,0.8926,0.9040,0.9141,0.9223,0.9304,0.9372,0.9430,0.9480,0.9528
+0.9573,0.9614,0.9651,0.9682,0.9710,0.9740,0.9765,0.9788,0.9809,0.9825
+0.9843,0.9858,0.9872,0.9882,0.9892,0.9902,0.9912,0.9920,0.9926,0.9932
+0.9938,0.9944,0.9949,0.9954,0.9958,0.9962,0.9966,0.9970,0.9971,0.9975
+0.9978,0.9980,0.9981,0.9983,0.9986,0.9987,0.9988,0.9990,0.9992,0.9993
+0.9995,0.9996,0.9997,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1u1fract=0.0000,0.0000,0.0001,0.0001,0.0001,0.0002,0.0003,0.0004
+0.0005,0.0009,0.0018,0.0033,0.0055,0.0088,0.0137,0.0211,0.0312,0.0459
+0.0630,0.0831,0.1059,0.1286,0.1526,0.1763,0.2012,0.2254,0.2494,0.2727
+0.2963,0.3192,0.3417,0.3644,0.3865,0.4081,0.4299,0.4516,0.4728,0.4939
+0.5138,0.5345,0.5549,0.5754,0.5958,0.6163,0.6361,0.6558,0.6747,0.6941
+0.7128,0.7319,0.7505,0.7686,0.7861,0.8039,0.8210,0.8365,0.8509,0.8648
+0.8779,0.8898,0.9010,0.9105,0.9191,0.9264,0.9333,0.9391,0.9447,0.9497
+0.9538,0.9580,0.9618,0.9652,0.9684,0.9716,0.9745,0.9771,0.9792,0.9815
+0.9833,0.9850,0.9863,0.9875,0.9885,0.9894,0.9902,0.9912,0.9919,0.9927
+0.9933,0.9937,0.9942,0.9947,0.9951,0.9955,0.9960,0.9963,0.9967,0.9970
+0.9973,0.9976,0.9979,0.9981,0.9982,0.9985,0.9986,0.9989,0.9991,0.9992
+0.9993,0.9994,0.9995,0.9996,0.9997,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1v1fract=0.0000,0.0000,0.0001,0.0002,0.0002,0.0003,0.0004,0.0005
+0.0007,0.0008,0.0011,0.0017,0.0026,0.0041,0.0073,0.0133,0.0228,0.0352
+0.0516,0.0710,0.0925,0.1158,0.1398,0.1644,0.1883,0.2115,0.2352,0.2589
+0.2824,0.3050,0.3282,0.3501,0.3718,0.3932,0.4149,0.4369,0.4577,0.4784
+0.4996,0.5201,0.5410,0.5616,0.5814,0.6016,0.6211,0.6414,0.6602,0.6795
+0.6985,0.7170,0.7361,0.7550,0.7736,0.7914,0.8094,0.8265,0.8428,0.8581
+0.8725,0.8857,0.8973,0.9077,0.9174,0.9257,0.9326,0.9387,0.9437,0.9490
+0.9538,0.9577,0.9613,0.9650,0.9684,0.9716,0.9746,0.9771,0.9793,0.9815
+0.9833,0.9849,0.9863,0.9876,0.9887,0.9896,0.9906,0.9915,0.9921,0.9927
+0.9932,0.9938,0.9943,0.9947,0.9953,0.9956,0.9960,0.9964,0.9968,0.9971
+0.9973,0.9976,0.9979,0.9981,0.9982,0.9984,0.9986,0.9988,0.9990,0.9991
+0.9993,0.9995,0.9996,0.9997,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1y2fract=0.0000,0.0000,0.0001,0.0002,0.0003,0.0003,0.0005,0.0007
+0.0009,0.0011,0.0015,0.0020,0.0029,0.0045,0.0070,0.0112,0.0187,0.0294
+0.0438,0.0617,0.0826,0.1041,0.1281,0.1527,0.1771,0.2018,0.2262,0.2507
+0.2752,0.2982,0.3214,0.3442,0.3669,0.3896,0.4112,0.4327,0.4554,0.4767
+0.4978,0.5184,0.5388,0.5597,0.5793,0.6002,0.6198,0.6398,0.6586,0.6781
+0.6980,0.7164,0.7344,0.7527,0.7705,0.7883,0.8056,0.8215,0.8379,0.8533
+0.8667,0.8792,0.8916,0.9023,0.9118,0.9202,0.9277,0.9343,0.9402,0.9457
+0.9504,0.9553,0.9593,0.9628,0.9662,0.9695,0.9726,0.9749,0.9772,0.9793
+0.9812,0.9829,0.9843,0.9856,0.9866,0.9877,0.9886,0.9892,0.9901,0.9909
+0.9918,0.9926,0.9931,0.9937,0.9942,0.9948,0.9953,0.9956,0.9959,0.9963
+0.9967,0.9970,0.9973,0.9976,0.9979,0.9981,0.9983,0.9985,0.9988,0.9989
+0.9992,0.9993,0.9995,0.9996,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc1x2fract=0.0001,0.0002,0.0003,0.0004,0.0005,0.0006,0.0008,0.0010
+0.0014,0.0021,0.0030,0.0048,0.0076,0.0115,0.0181,0.0268,0.0392,0.0538
+0.0709,0.0892,0.1099,0.1316,0.1529,0.1747,0.1986,0.2219,0.2461,0.2701
+0.2940,0.3176,0.3408,0.3641,0.3867,0.4102,0.4321,0.4534,0.4751,0.4972
+0.5185,0.5396,0.5602,0.5811,0.6018,0.6220,0.6421,0.6618,0.6811,0.7004
+0.7201,0.7374,0.7557,0.7741,0.7920,0.8096,0.8257,0.8410,0.8555,0.8687
+0.8814,0.8922,0.9022,0.9112,0.9195,0.9272,0.9343,0.9401,0.9458,0.9509
+0.9562,0.9605,0.9647,0.9687,0.9723,0.9753,0.9782,0.9808,0.9832,0.9851
+0.9868,0.9883,0.9897,0.9909,0.9918,0.9925,0.9933,0.9940,0.9947,0.9953
+0.9957,0.9961,0.9966,0.9969,0.9973,0.9975,0.9978,0.9980,0.9982,0.9984
+0.9985,0.9986,0.9988,0.9989,0.9991,0.9992,0.9993,0.9995,0.9996,0.9996
+0.9996,0.9997,0.9998,0.9998,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x1fract=0.0001,0.0002,0.0004,0.0005,0.0008,0.0011,0.0014,0.0017
+0.0021,0.0027,0.0039,0.0056,0.0087,0.0134,0.0199,0.0292,0.0404,0.0540
+0.0693,0.0861,0.1044,0.1251,0.1462,0.1676,0.1901,0.2126,0.2355,0.2583
+0.2820,0.3055,0.3288,0.3512,0.3739,0.3968,0.4189,0.4421,0.4645,0.4869
+0.5086,0.5306,0.5519,0.5731,0.5943,0.6150,0.6355,0.6568,0.6766,0.6969
+0.7168,0.7364,0.7554,0.7741,0.7913,0.8092,0.8260,0.8419,0.8572,0.8718
+0.8844,0.8961,0.9064,0.9160,0.9248,0.9320,0.9383,0.9448,0.9502,0.9554
+0.9603,0.9646,0.9685,0.9721,0.9753,0.9782,0.9810,0.9835,0.9857,0.9874
+0.9889,0.9903,0.9913,0.9922,0.9931,0.9937,0.9943,0.9950,0.9955,0.9959
+0.9964,0.9967,0.9970,0.9973,0.9975,0.9977,0.9980,0.9983,0.9984,0.9986
+0.9988,0.9989,0.9991,0.9992,0.9993,0.9994,0.9995,0.9996,0.9997,0.9997
+0.9998,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y1fract=0.0000,0.0000,0.0001,0.0002,0.0003,0.0004,0.0006,0.0008
+0.0010,0.0015,0.0020,0.0031,0.0045,0.0075,0.0130,0.0218,0.0330,0.0490
+0.0684,0.0901,0.1137,0.1389,0.1636,0.1900,0.2162,0.2419,0.2663,0.2913
+0.3145,0.3380,0.3606,0.3834,0.4056,0.4274,0.4494,0.4710,0.4920,0.5122
+0.5332,0.5541,0.5744,0.5947,0.6153,0.6358,0.6551,0.6758,0.6958,0.7153
+0.7342,0.7531,0.7709,0.7897,0.8071,0.8235,0.8391,0.8548,0.8692,0.8826
+0.8950,0.9068,0.9163,0.9250,0.9329,0.9404,0.9468,0.9523,0.9571,0.9612
+0.9655,0.9688,0.9718,0.9748,0.9774,0.9796,0.9816,0.9834,0.9852,0.9866
+0.9877,0.9888,0.9897,0.9908,0.9916,0.9924,0.9931,0.9937,0.9943,0.9947
+0.9951,0.9955,0.9959,0.9963,0.9967,0.9969,0.9973,0.9975,0.9978,0.9980
+0.9982,0.9984,0.9985,0.9987,0.9989,0.9990,0.9992,0.9993,0.9995,0.9996
+0.9997,0.9997,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2u1fract=0.0000,0.0000,0.0001,0.0001,0.0001,0.0002,0.0003,0.0004
+0.0005,0.0007,0.0010,0.0017,0.0034,0.0072,0.0145,0.0253,0.0416,0.0616
+0.0839,0.1082,0.1331,0.1596,0.1848,0.2100,0.2343,0.2581,0.2818,0.3059
+0.3288,0.3517,0.3739,0.3959,0.4173,0.4381,0.4589,0.4797,0.5011,0.5209
+0.5410,0.5613,0.5804,0.6000,0.6197,0.6390,0.6582,0.6776,0.6965,0.7146
+0.7326,0.7506,0.7689,0.7858,0.8030,0.8198,0.8362,0.8517,0.8655,0.8787
+0.8908,0.9016,0.9108,0.9192,0.9269,0.9328,0.9383,0.9430,0.9471,0.9509
+0.9546,0.9576,0.9609,0.9637,0.9664,0.9686,0.9705,0.9725,0.9743,0.9760
+0.9777,0.9791,0.9803,0.9818,0.9829,0.9839,0.9848,0.9857,0.9867,0.9876
+0.9884,0.9892,0.9898,0.9905,0.9912,0.9917,0.9922,0.9927,0.9932,0.9937
+0.9943,0.9946,0.9952,0.9956,0.9962,0.9966,0.9971,0.9975,0.9979,0.9984
+0.9988,0.9991,0.9994,0.9996,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2v1fract=0.0000,0.0001,0.0001,0.0002,0.0003,0.0004,0.0006,0.0008
+0.0010,0.0014,0.0020,0.0032,0.0058,0.0117,0.0214,0.0353,0.0527,0.0742
+0.0981,0.1231,0.1484,0.1741,0.1997,0.2245,0.2484,0.2721,0.2961,0.3203
+0.3434,0.3662,0.3882,0.4107,0.4324,0.4541,0.4747,0.4964,0.5164,0.5374
+0.5573,0.5776,0.5978,0.6180,0.6379,0.6570,0.6760,0.6950,0.7137,0.7319
+0.7496,0.7688,0.7859,0.8036,0.8207,0.8370,0.8522,0.8671,0.8811,0.8937
+0.9046,0.9153,0.9244,0.9318,0.9386,0.9445,0.9497,0.9542,0.9582,0.9619
+0.9654,0.9686,0.9713,0.9742,0.9768,0.9792,0.9813,0.9832,0.9848,0.9861
+0.9873,0.9884,0.9894,0.9903,0.9910,0.9918,0.9925,0.9931,0.9937,0.9942
+0.9946,0.9950,0.9954,0.9959,0.9962,0.9965,0.9969,0.9972,0.9975,0.9978
+0.9979,0.9981,0.9984,0.9985,0.9987,0.9989,0.9991,0.9992,0.9994,0.9996
+0.9997,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2y2fract=0.0001,0.0002,0.0002,0.0004,0.0005,0.0006,0.0008,0.0010
+0.0013,0.0018,0.0026,0.0038,0.0057,0.0090,0.0144,0.0233,0.0363,0.0535
+0.0734,0.0953,0.1200,0.1454,0.1710,0.1972,0.2228,0.2471,0.2719,0.2963
+0.3199,0.3435,0.3670,0.3907,0.4132,0.4350,0.4566,0.4778,0.4991,0.5195
+0.5407,0.5610,0.5817,0.6024,0.6219,0.6426,0.6622,0.6820,0.7011,0.7203
+0.7384,0.7571,0.7749,0.7924,0.8098,0.8264,0.8431,0.8582,0.8723,0.8855
+0.8980,0.9089,0.9190,0.9278,0.9357,0.9428,0.9484,0.9534,0.9580,0.9622
+0.9660,0.9693,0.9722,0.9751,0.9775,0.9798,0.9821,0.9838,0.9854,0.9870
+0.9884,0.9893,0.9903,0.9912,0.9919,0.9924,0.9931,0.9937,0.9943,0.9948
+0.9951,0.9955,0.9959,0.9962,0.9965,0.9968,0.9971,0.9974,0.9977,0.9979
+0.9981,0.9983,0.9985,0.9987,0.9989,0.9991,0.9993,0.9994,0.9995,0.9996
+0.9997,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+hwc2x2fract=0.0000,0.0002,0.0003,0.0003,0.0005,0.0008,0.0009,0.0012
+0.0015,0.0020,0.0025,0.0038,0.0059,0.0091,0.0140,0.0213,0.0307,0.0429
+0.0577,0.0743,0.0926,0.1127,0.1333,0.1554,0.1779,0.2009,0.2243,0.2474
+0.2710,0.2945,0.3191,0.3422,0.3648,0.3880,0.4103,0.4329,0.4554,0.4775
+0.5000,0.5212,0.5428,0.5635,0.5842,0.6048,0.6254,0.6451,0.6647,0.6845
+0.7044,0.7242,0.7431,0.7614,0.7797,0.7970,0.8145,0.8308,0.8463,0.8607
+0.8741,0.8864,0.8975,0.9073,0.9164,0.9247,0.9317,0.9386,0.9445,0.9501
+0.9556,0.9604,0.9647,0.9686,0.9722,0.9751,0.9781,0.9805,0.9829,0.9849
+0.9868,0.9884,0.9897,0.9908,0.9920,0.9930,0.9936,0.9942,0.9948,0.9954
+0.9959,0.9963,0.9968,0.9971,0.9974,0.9977,0.9979,0.9982,0.9984,0.9985
+0.9987,0.9988,0.9989,0.9991,0.9991,0.9993,0.9994,0.9994,0.9995,0.9996
+0.9997,0.9998,0.9998,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
diff --git a/examples/PARAM/hhodo.param b/examples/PARAM/hhodo.param
new file mode 100644
index 0000000000000000000000000000000000000000..4b7fcf89a862e88c022473c458f697227bee964c
--- /dev/null
+++ b/examples/PARAM/hhodo.param
@@ -0,0 +1,285 @@
+; hstart_time_center  center of allowed time window                             
+   hstart_time_center = 35.                                                     
+; hstart_time_slop    1/2 width of time window                                  
+   hstart_time_slop = 20.                                                       
+; hscin_tdc_min       minimum tdc value in hms scin                             
+    hscin_tdc_min = 0                                                           
+; hscin_tdc_max       maximum allowed tdc value                                 
+   hscin_tdc_max = 4000                                                         
+; hscin_tdc_to_time   scin tdc time per channel                                 
+   hscin_tdc_to_time = 0.0259                                                   
+; new variable for picking good hits for tof fitting
+; this should not be set tight until you are ready to fit
+; tof and you figured out good values
+   htof_tolerance = 3.0
+;                                                                               
+; hms_tof_params                                                                
+; hnum_scin_counters, hhodo_zpos, hhodo_center_coord, hhodo_width               
+; are all calculated within h_init_scin                                         
+;    hhodo_pos_coord and hhodo_neg_coord are not yet used                       
+;                                                                               
+     hhodo_slop     =    2.,  2.,  4.,  4.                                      
+;                                                                               
+     hhodo_vel_light =  14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+;                                                                               
+      hhodo_pos_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+;                                                                               
+      hhodo_neg_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                                                                                
+  hhodo_pos_minph = 125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                                                                                
+  hhodo_neg_minph = 125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                                                                                
+  hhodo_pos_phc_coeff = -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                                                                                
+  hhodo_neg_phc_coeff = -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+;                                                                               
+                                                                                
+; csa 9/8/98 -- I had to hand-twaddle a few of the values                       
+; based on (relative) offsets of older hhodo.param                              
+                                                                                
+hhodo_pos_time_offset =   6.5821,   0.0000,  -6.9727,   4.4189
+                         -1.1011,   0.1270,   0.1930,   8.2907
+                          5.5928,   1.2312,  -7.0087,   8.3756
+                          5.3494,  -0.2264,  -3.9023,  13.4700
+                          1.6938,  -7.1708,   9.2976,   9.9767
+                          1.7531,  -0.9044,  -4.6540,   7.8608
+                          6.9700,  -1.5083,   1.7866,   8.6117
+                          3.3819,   1.8281,  -4.2414,   4.3756
+                          3.4984,  -2.5534,  -6.0882,   5.4043
+                          4.5793,   6.1158,  -0.5954,  -1.3631
+                          6.8272,   0.0000,  -7.6493,  32.1266
+                          5.4571,   2.0212,   0.2085,   0.0000
+                          5.0147,   2.0219,   1.1072,  32.0001
+                          1.4959,   0.0000,   2.4523,   0.0000
+                          6.2602,   0.0000,  -5.1102,  -1.9990
+                          1.6534,   0.0000,   1.2513,   0.0000
+hhodo_neg_time_offset =  -2.4664,   0.0000,   4.1095,  11.9016
+                         -2.0589,  -2.5527,  10.4536,  13.4114
+                         -4.2564,  -3.8944,   3.8712,  15.4475
+                          0.3935,  -2.2300,  11.5590,  14.8406
+                         -1.7111,  -4.8155,   2.8606,  10.2379
+                         -3.0792,   0.6972,  10.1887,   7.8083
+                          1.0046,  -3.6839,   4.2680,  10.9969
+                         -5.2801,   0.9309,   9.1779,  11.4677
+                         -6.4931,  -5.5225,   0.7246,  14.8212
+                          1.6218,   6.1209,  11.8919,  15.5699
+                          0.0703,  -1.9990,   8.8625,   2.0216
+                         -1.3146,   0.0000,   9.8650,   0.0000
+                         -2.9002,   0.0000,   5.6735,   0.0000
+                         -5.6444,   0.0000,  10.7529,   0.0000
+                          0.5662,   0.0000,   6.6559,   2.0115
+                          6.7208,   0.0000,  13.4179,  36.7325
+;                                                                               
+hhodo_pos_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+;                                                                               
+hhodo_neg_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                                                                                
+; use htofusinginvadc=1 if want invadc_offset
+;  invadc_linear, and invadc_adc to be used
+htofusinginvadc=1
+hhodo_pos_invadc_offset =    0.00,    0.00,   -7.49,    0.00
+                             0.00,   -3.93,   -1.33,    6.35
+                            -0.47,   -1.79,   -7.92,    6.66
+                             0.00,   -4.16,   -4.32,   12.41
+                            -2.45,  -11.48,    7.19,    8.60
+                            -3.15,   -5.26,   -7.87,    6.71
+                             0.12,   -4.60,    0.52,    8.19
+                             0.31,   -2.00,   -6.07,    2.60
+                            -0.42,   -6.96,   -7.81,    4.97
+                            -0.20,    0.00,   -2.55,   -2.16
+                             3.25,    0.00,   -8.85,    0.00
+                             1.87,    0.00,   -0.90,    0.00
+                             1.94,    0.00,   -1.99,    0.00
+                            -1.21,    0.00,   -0.05,    0.00
+                             1.04,    0.00,   -7.11,    0.00
+                             0.00,    0.00,   -1.28,    0.00
+
+hhodo_neg_invadc_offset =    0.00,    0.00,    1.67,    0.00
+                             0.00,   -5.88,    7.56,   12.30
+                            -8.70,   -7.99,    0.63,   14.36
+                            -5.30,   -4.44,    9.37,   14.26
+                             0.00,   -7.69,   -0.54,    8.18
+                            -7.53,   -3.52,    7.15,    6.37
+                            -3.20,   -7.19,    1.92,   10.54
+                            -9.90,   -4.18,    6.87,   10.58
+                           -10.88,   -8.58,   -4.40,   13.19
+                            -3.01,    0.00,    8.71,   13.54
+                             0.00,    0.00,    4.16,    0.00
+                            -4.13,    0.00,    6.77,    0.00
+                            -6.39,    0.00,    0.17,    0.00
+                            -9.79,    0.00,    7.54,    0.00
+                            -2.58,    0.00,    3.80,    0.00
+                             0.00,    0.00,    9.24,    0.00
+
+hhodo_pos_invadc_linear =   50.00,   50.00,   11.50,   50.00
+                            50.00,   18.94,   12.81,   13.47
+                            22.77,   23.66,   14.93,   12.48
+                            23.58,   19.67,   12.48,   12.93
+                            23.80,   17.41,   12.29,   13.27
+                            18.94,   16.86,   12.30,   12.90
+                            16.36,   17.34,   12.90,   12.89
+                            21.51,   18.59,   12.53,   12.96
+                            21.60,   19.59,   12.32,   11.96
+                            25.50,   50.00,   11.03,   12.79
+                            21.96,   50.00,   12.97,   50.00
+                            21.24,   50.00,   12.79,   50.00
+                            17.47,   50.00,   13.30,   50.00
+                            26.96,   50.00,   13.50,   50.00
+                            25.52,   50.00,   10.38,   50.00
+                            50.00,   50.00,   14.46,   50.00
+
+hhodo_neg_invadc_linear =   50.00,   50.00,   11.14,   50.00
+                            50.00,   17.27,   10.86,   12.76
+                            50.00,   22.41,   11.26,   13.29
+                            25.36,   19.67,   11.51,   14.51
+                            50.00,   19.45,   11.61,   14.45
+                            19.71,   18.87,   12.36,   13.71
+                            19.42,   20.67,   12.17,   13.20
+                            18.43,   20.06,   11.27,   13.25
+                            22.83,   19.98,   11.90,   13.67
+                            20.53,   50.00,   12.04,   12.87
+                            50.00,   50.00,   11.57,   50.00
+                            18.65,   50.00,   11.55,   50.00
+                            15.89,   50.00,   11.74,   50.00
+                            16.43,   50.00,   11.24,   50.00
+                            26.89,   50.00,   11.54,   50.00
+                            50.00,   50.00,   10.51,   50.00
+
+
+hhodo_pos_invadc_adc=     0.00,     0.00,    24.53,     0.00
+                         0.00,    85.08,    40.16,    46.66
+                       104.72,    90.39,    48.39,    40.45
+                       106.71,    85.39,    36.54,    46.52
+                       102.33,    83.78,    45.62,    53.38
+                        87.77,    83.84,    46.17,    53.00
+                        81.99,    82.46,    48.60,    50.98
+                        86.41,    76.63,    45.65,    52.67
+                        87.76,    90.85,    40.94,    50.32
+                        85.80,     0.00,    51.78,    48.81
+                        85.87,     0.00,    47.95,     0.00
+                        78.65,     0.00,    41.18,     0.00
+                        77.68,     0.00,    54.79,     0.00
+                        79.78,     0.00,    54.50,     0.00
+                        75.92,     0.00,    48.77,     0.00
+                         0.00,     0.00,    55.47,     0.00
+
+hhodo_neg_invadc_adc=     0.00,     0.00,    33.27,     0.00
+                         0.00,    50.89,    42.04,    37.63
+                       101.25,    63.66,    42.24,    41.36
+                       104.68,    59.98,    37.01,    52.51
+                         0.00,    59.89,    42.76,    50.01
+                        86.99,    58.09,    45.30,    51.38
+                        77.55,    56.32,    46.12,    40.46
+                        88.04,    53.33,    44.65,    36.37
+                        91.58,    56.67,    57.89,    44.34
+                        85.51,     0.00,    46.84,    39.22
+                         0.00,     0.00,    43.95,     0.00
+                        83.61,     0.00,    46.80,     0.00
+                        92.40,     0.00,    40.71,     0.00
+                        78.19,     0.00,    51.72,     0.00
+                        75.03,     0.00,    49.34,     0.00
+                         0.00,     0.00,    53.40,     0.00
diff --git a/examples/PARAM/hhodo.param.may9 b/examples/PARAM/hhodo.param.may9
new file mode 100644
index 0000000000000000000000000000000000000000..ea3ad7a4054c947fdc035236703c596a2445cc38
--- /dev/null
+++ b/examples/PARAM/hhodo.param.may9
@@ -0,0 +1,176 @@
+; hstart_time_center  center of allowed time window                             
+   hstart_time_center = 35.                                                     
+; hstart_time_slop    1/2 width of time window                                  
+   hstart_time_slop = 20.                                                       
+; hscin_tdc_min       minimum tdc value in hms scin                             
+    hscin_tdc_min = 0                                                           
+; hscin_tdc_max       maximum allowed tdc value                                 
+   hscin_tdc_max = 4000                                                         
+; hscin_tdc_to_time   scin tdc time per channel                                 
+   hscin_tdc_to_time = 0.0259                                                   
+;                                                                               
+; hms_tof_params                                                                
+; hnum_scin_counters, hhodo_zpos, hhodo_center_coord, hhodo_width               
+; are all calculated within h_init_scin                                         
+;    hhodo_pos_coord and hhodo_neg_coord are not yet used                       
+;                                                                               
+     hhodo_slop     =    2.,  2.,  4.,  4.                                      
+;                                                                               
+     hhodo_vel_light =  14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+;                                                                               
+      hhodo_pos_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+;                                                                               
+      hhodo_neg_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                                                                                
+  hhodo_pos_minph = 125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                                                                                
+  hhodo_neg_minph = 125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                                                                                
+  hhodo_pos_phc_coeff = -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                                                                                
+  hhodo_neg_phc_coeff = -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+;                                                                               
+                                                                                
+; csa 9/8/98 -- I had to hand-twaddle a few of the values                       
+; based on (relative) offsets of older hhodo.param                              
+                                                                                
+hhodo_pos_time_offset =   5.5391,   0.0000,  -6.8586,   5.1830
+                         -1.2985,  -0.2551,   0.3953,   8.9369
+                          5.0531,   1.4333,  -6.5520,   8.0628
+                          5.5481,  -0.3965,  -3.6470,  12.8933
+                          1.2416,  -7.0707,   9.6246,  10.0208
+                          1.9282,  -0.9275,  -4.1448,   8.2112
+                          6.4910,  -1.5780,   1.8980,   9.6928
+                          4.4770,   1.7009,  -3.8385,   4.7545
+                          2.7533,  -2.7182,  -5.8864,   6.3882
+                          4.3398,   6.1158,  -0.3572,  -0.4308
+                          6.0782,   0.0000,  -7.5343,   0.0000
+                          5.4665,   0.0000,   0.2169,   0.0000
+                          4.1334,   0.0000,   1.3767,   0.0000
+                          1.6088,   0.0000,   2.5930,   0.0000
+                          3.9776,   0.0000,  -5.0340,   0.0000
+                          1.6534,   0.0000,   1.5043,   0.0000
+hhodo_neg_time_offset =  -2.5728,   0.0000,   2.8982,  10.8670
+                         -1.9187,  -2.6479,  10.6272,  13.8790
+                         -4.1126,  -4.5084,   3.9705,  15.5799
+                          0.7699,  -2.3908,  11.7183,  15.1612
+                         -1.2568,  -5.0343,   2.9473,  10.6625
+                         -2.8197,   0.7670,  10.3919,   7.8739
+                          1.2798,  -3.9185,   4.3248,  11.3533
+                         -4.8009,  -0.2453,   9.2837,  11.6355
+                         -6.3004,  -5.7362,   0.8352,  14.9451
+                          1.8476,   6.1209,  11.9751,  15.7375
+                          0.3913,   0.0000,   8.9105,   0.0000
+                         -1.0702,   0.0000,   9.8926,   0.0000
+                         -2.3617,   0.0000,   5.7061,   0.0000
+                         -5.2931,   0.0000,  10.7318,   0.0000
+                          0.0632,   0.0000,   6.6962,   0.0000
+                          6.7208,   0.0000,  13.4108,   0.0000
+;                                                                               
+hhodo_pos_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+;                                                                               
+hhodo_neg_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                                                                                
diff --git a/examples/PARAM/hhodo.param_v1 b/examples/PARAM/hhodo.param_v1
new file mode 100644
index 0000000000000000000000000000000000000000..80d5863c326cdae4b861d16f0ede3cf4e54fb923
--- /dev/null
+++ b/examples/PARAM/hhodo.param_v1
@@ -0,0 +1,472 @@
+; hstart_time_center  center of allowed time window                             
+   hstart_time_center = 35.                                                     
+; hstart_time_slop    1/2 width of time window                                  
+   hstart_time_slop = 20.                                                       
+; hscin_tdc_min       minimum tdc value in hms scin                             
+    hscin_tdc_min = 0                                                           
+; hscin_tdc_max       maximum allowed tdc value                                 
+   hscin_tdc_max = 4000                                                         
+; hscin_tdc_to_time   scin tdc time per channel                                 
+   hscin_tdc_to_time = 0.0259                                                   
+; new variable for picking good hits for tof fitting
+; this should not be set tight until you are ready to fit
+; tof and you figured out good values
+htof_tolerance = 50.0
+;                                                                               
+; hms_tof_params                                                                
+; hnum_scin_counters, hhodo_zpos, hhodo_center_coord, hhodo_width               
+; are all calculated within h_init_scin                                         
+;    hhodo_pos_coord and hhodo_neg_coord are not yet used                       
+;                                                                               
+     hhodo_slop     =    2.,  2.,  4.,  4.                                      
+;                                                                               
+     hhodo_vel_light =  14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+                        14.0,14.8,15.5,15.8                                     
+;                                                                               
+      hhodo_pos_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+;                                                                               
+      hhodo_neg_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                                                                                
+  hhodo_pos_minph = 125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                                                                                
+  hhodo_neg_minph = 125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                    125,135,125,120                                             
+                                                                                
+  hhodo_pos_phc_coeff = -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                        -1.4,-1.1,-1.2,-1.3                                     
+                                                                                
+  hhodo_neg_phc_coeff = -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+                        -1.3,-1.2,-1.2,-1.4                                     
+;                                                                               
+                                                                                
+; csa 9/8/98 -- I had to hand-twaddle a few of the values                       
+; based on (relative) offsets of older hhodo.param                              
+                                                                                
+hhodo_pos_time_offset =   5.5391,   0.0000,  -6.8586,   5.1830
+                         -1.2985,  -0.2551,   0.3953,   8.9369
+                          5.0531,   1.4333,  -6.5520,   8.0628
+                          5.5481,  -0.3965,  -3.6470,  12.8933
+                          1.2416,  -7.0707,   9.6246,  10.0208
+                          1.9282,  -0.9275,  -4.1448,   8.2112
+                          6.4910,  -1.5780,   1.8980,   9.6928
+                          4.4770,   1.7009,  -3.8385,   4.7545
+                          2.7533,  -2.7182,  -5.8864,   6.3882
+                          4.3398,   6.1158,  -0.3572,  -0.4308
+                          6.0782,   0.0000,  -7.5343,   0.0000
+                          5.4665,   0.0000,   0.2169,   0.0000
+                          4.1334,   0.0000,   1.3767,   0.0000
+                          1.6088,   0.0000,   2.5930,   0.0000
+                          3.9776,   0.0000,  -5.0340,   0.0000
+                          1.6534,   0.0000,   1.5043,   0.0000
+hhodo_neg_time_offset =  -2.5728,   0.0000,   2.8982,  10.8670
+                         -1.9187,  -2.6479,  10.6272,  13.8790
+                         -4.1126,  -4.5084,   3.9705,  15.5799
+                          0.7699,  -2.3908,  11.7183,  15.1612
+                         -1.2568,  -5.0343,   2.9473,  10.6625
+                         -2.8197,   0.7670,  10.3919,   7.8739
+                          1.2798,  -3.9185,   4.3248,  11.3533
+                         -4.8009,  -0.2453,   9.2837,  11.6355
+                         -6.3004,  -5.7362,   0.8352,  14.9451
+                          1.8476,   6.1209,  11.9751,  15.7375
+                          0.3913,   0.0000,   8.9105,   0.0000
+                         -1.0702,   0.0000,   9.8926,   0.0000
+                         -2.3617,   0.0000,   5.7061,   0.0000
+                         -5.2931,   0.0000,  10.7318,   0.0000
+                          0.0632,   0.0000,   6.6962,   0.0000
+                          6.7208,   0.0000,  13.4108,   0.0000
+;                                                                               
+hhodo_pos_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+;                                                                               
+hhodo_neg_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                      1000,1000,1000,1000,1000,1000,1000,1000                   
+                                                                                
+
+; use htofusinginvadc=1 if want invadc_offset
+;  invadc_linear, and invadc_adc to be used
+htofusinginvadc=1
+
+hhodo_pos_invadc_offset =    0.00,    0.00,   -7.49,    0.00
+                             0.00,   -3.93,   -1.33,    6.35
+                            -0.47,   -1.79,   -7.92,    6.66
+                             0.00,   -4.16,   -4.32,   12.41
+                            -2.45,  -11.48,    7.19,    8.60
+                            -3.15,   -5.26,   -7.87,    6.71
+                             0.12,   -4.60,    0.52,    8.19
+                             0.31,   -2.00,   -6.07,    2.60
+                            -0.42,   -6.96,   -7.81,    4.97
+                            -0.20,    0.00,   -2.55,   -2.16
+                             3.25,    0.00,   -8.85,    0.00
+                             1.87,    0.00,   -0.90,    0.00
+                             1.94,    0.00,   -1.99,    0.00
+                            -1.21,    0.00,   -0.05,    0.00
+                             1.04,    0.00,   -7.11,    0.00
+                             0.00,    0.00,   -1.28,    0.00
+
+hhodo_neg_invadc_offset =    0.00,    0.00,    1.67,    0.00
+                             0.00,   -5.88,    7.56,   12.30
+                            -8.70,   -7.99,    0.63,   14.36
+                            -5.30,   -4.44,    9.37,   14.26
+                             0.00,   -7.69,   -0.54,    8.18
+                            -7.53,   -3.52,    7.15,    6.37
+                            -3.20,   -7.19,    1.92,   10.54
+                            -9.90,   -4.18,    6.87,   10.58
+                           -10.88,   -8.58,   -4.40,   13.19
+                            -3.01,    0.00,    8.71,   13.54
+                             0.00,    0.00,    4.16,    0.00
+                            -4.13,    0.00,    6.77,    0.00
+                            -6.39,    0.00,    0.17,    0.00
+                            -9.79,    0.00,    7.54,    0.00
+                            -2.58,    0.00,    3.80,    0.00
+                             0.00,    0.00,    9.24,    0.00
+
+hhodo_pos_invadc_linear =   50.00,   50.00,   11.50,   50.00
+                            50.00,   18.94,   12.81,   13.47
+                            22.77,   23.66,   14.93,   12.48
+                            23.58,   19.67,   12.48,   12.93
+                            23.80,   17.41,   12.29,   13.27
+                            18.94,   16.86,   12.30,   12.90
+                            16.36,   17.34,   12.90,   12.89
+                            21.51,   18.59,   12.53,   12.96
+                            21.60,   19.59,   12.32,   11.96
+                            25.50,   50.00,   11.03,   12.79
+                            21.96,   50.00,   12.97,   50.00
+                            21.24,   50.00,   12.79,   50.00
+                            17.47,   50.00,   13.30,   50.00
+                            26.96,   50.00,   13.50,   50.00
+                            25.52,   50.00,   10.38,   50.00
+                            50.00,   50.00,   14.46,   50.00
+
+hhodo_neg_invadc_linear =   50.00,   50.00,   11.14,   50.00
+                            50.00,   17.27,   10.86,   12.76
+                            50.00,   22.41,   11.26,   13.29
+                            25.36,   19.67,   11.51,   14.51
+                            50.00,   19.45,   11.61,   14.45
+                            19.71,   18.87,   12.36,   13.71
+                            19.42,   20.67,   12.17,   13.20
+                            18.43,   20.06,   11.27,   13.25
+                            22.83,   19.98,   11.90,   13.67
+                            20.53,   50.00,   12.04,   12.87
+                            50.00,   50.00,   11.57,   50.00
+                            18.65,   50.00,   11.55,   50.00
+                            15.89,   50.00,   11.74,   50.00
+                            16.43,   50.00,   11.24,   50.00
+                            26.89,   50.00,   11.54,   50.00
+                            50.00,   50.00,   10.51,   50.00
+
+hhodo_pos_invadc_adc=     0.00,     0.00,    24.53,     0.00
+                         0.00,    85.08,    40.16,    46.66
+                       104.72,    90.39,    48.39,    40.45
+                       106.71,    85.39,    36.54,    46.52
+                       102.33,    83.78,    45.62,    53.38
+                        87.77,    83.84,    46.17,    53.00
+                        81.99,    82.46,    48.60,    50.98
+                        86.41,    76.63,    45.65,    52.67
+                        87.76,    90.85,    40.94,    50.32
+                        85.80,     0.00,    51.78,    48.81
+                        85.87,     0.00,    47.95,     0.00
+                        78.65,     0.00,    41.18,     0.00
+                        77.68,     0.00,    54.79,     0.00
+                        79.78,     0.00,    54.50,     0.00
+                        75.92,     0.00,    48.77,     0.00
+                         0.00,     0.00,    55.47,     0.00
+
+hhodo_neg_invadc_adc=     0.00,     0.00,    33.27,     0.00
+                         0.00,    50.89,    42.04,    37.63
+                       101.25,    63.66,    42.24,    41.36
+                       104.68,    59.98,    37.01,    52.51
+                         0.00,    59.89,    42.76,    50.01
+                        86.99,    58.09,    45.30,    51.38
+                        77.55,    56.32,    46.12,    40.46
+                        88.04,    53.33,    44.65,    36.37
+                        91.58,    56.67,    57.89,    44.34
+                        85.51,     0.00,    46.84,    39.22
+                         0.00,     0.00,    43.95,     0.00
+                        83.61,     0.00,    46.80,     0.00
+                        92.40,     0.00,    40.71,     0.00
+                        78.19,     0.00,    51.72,     0.00
+                        75.03,     0.00,    49.34,     0.00
+                         0.00,     0.00,    53.40,     0.00
+
+hhodo_pos_sigma =  100.00,  100.00,    0.92,  100.00
+                   100.00,    0.55,    0.85,    0.80
+                     0.79,    0.58,    0.80,    0.75
+                     0.68,    0.58,    0.65,    0.79
+                     0.73,    0.58,    0.66,    0.79
+                     0.59,    0.58,    0.65,    0.74
+                     0.59,    0.58,    0.53,    0.76
+                     0.61,    0.57,    0.67,    0.80
+                     0.57,    0.59,    0.64,    0.81
+                     0.61,  100.00,    0.64,    0.76
+                     0.67,  100.00,    0.67,  100.00
+                     0.52,  100.00,    0.61,  100.00
+                     0.56,  100.00,    0.62,  100.00
+                     0.61,  100.00,    0.71,  100.00
+                     0.70,  100.00,    0.74,  100.00
+                   100.00,  100.00,    0.66,  100.00
+
+hhodo_neg_sigma =  100.00,  100.00,    0.92,  100.00
+                   100.00,    0.58,    0.82,    0.80
+                     0.74,    0.57,    0.81,    0.81
+                     0.68,    0.58,    0.72,    0.81
+                   100.00,    0.56,    0.68,    0.88
+                     0.61,    0.54,    0.61,    0.76
+                     0.53,    0.55,    0.53,    0.73
+                     0.58,    0.55,    0.65,    0.80
+                     0.61,    0.56,    0.71,    0.87
+                     0.59,  100.00,    0.69,    0.88
+                   100.00,  100.00,    0.65,  100.00
+                     0.57,  100.00,    0.62,  100.00
+                     0.58,  100.00,    0.57,  100.00
+                     0.59,  100.00,    0.64,  100.00
+                     0.57,  100.00,    0.84,  100.00
+                   100.00,  100.00,    0.73,  100.00
+
+
+
+
+
+
+
+
+
+
+
+
+
+; use htofusinginvadc=1 if want invadc_offset
+;  invadc_linear, and invadc_adc to be used
+htofusinginvadc=1
+
+hhodo_pos_invadc_offset =    0.00,    0.00,  -12.60,   -0.31
+                            -7.19,   -5.46,   -5.64,    2.43
+                            -0.19,   -3.20,  -11.97,    2.38
+                             0.00,   -5.59,   -8.66,    8.62
+                            -2.69,  -12.71,    3.09,    4.99
+                            -3.87,   -6.34,  -11.37,    3.12
+                            -0.75,   -6.06,   -2.88,    5.85
+                            -0.75,   -3.63,  -10.13,   -1.00
+                            -1.00,   -8.17,  -11.87,    1.32
+                            -1.20,    0.00,   -6.25,   -5.77
+                             2.53,    0.00,  -12.81,    0.00
+                             0.45,    0.00,   -4.73,    0.00
+                             1.06,    0.00,   -5.69,    0.00
+                            -2.65,    0.00,   -3.42,    0.00
+                            -0.07,    0.00,  -10.84,    0.00
+                            -3.85,    0.00,   -5.00,    0.00
+
+hhodo_neg_invadc_offset =    0.00,    0.00,   -3.02,    6.04
+                            -7.26,   -7.93,    2.69,    0.00
+                            -9.54,   -9.91,   -3.92,    0.00
+                            -5.48,   -6.34,    5.15,    0.00
+                            -7.94,   -9.63,   -5.18,    3.99
+                            -8.48,   -5.49,    3.08,    2.40
+                            -4.70,   -9.28,   -1.79,    5.60
+                           -11.57,   -6.49,    2.35,    0.00
+                             0.00,  -10.66,   -8.41,    0.00
+                            -4.26,    0.00,    4.66,    0.00
+                            -5.23,    0.00,    0.12,    0.00
+                            -5.26,    0.00,    2.85,    0.00
+                            -7.15,    0.00,   -3.72,    0.00
+                           -10.99,    0.00,    4.19,    0.00
+                            -4.24,    0.00,   -0.35,    0.00
+                            -0.49,    0.00,    6.05,    0.00
+
+hhodo_pos_invadc_linear =   50.00,   50.00,   16.66,   14.91
+                            14.86,   15.53,   16.36,   15.34
+                            15.25,   16.51,   17.20,   15.67
+                            15.16,   15.65,   15.32,   15.70
+                            14.74,   15.39,   15.31,   16.44
+                            14.90,   15.26,   14.38,   15.49
+                            14.51,   15.82,   15.71,   16.25
+                            16.17,   16.47,   14.43,   15.55
+                            15.17,   15.89,   14.83,   15.51
+                            15.34,   50.00,   13.93,   15.94
+                            15.09,   50.00,   14.04,   50.00
+                            16.20,   50.00,   14.53,   50.00
+                            14.40,   50.00,   14.73,   50.00
+                            15.65,   50.00,   14.85,   50.00
+                            16.11,   50.00,   17.04,   50.00
+                            15.92,   50.00,   14.62,   50.00
+
+hhodo_neg_invadc_linear =   50.00,   50.00,   14.48,   17.67
+                            13.55,   16.28,   13.61,   50.00
+                            14.71,   16.85,   14.90,   50.00
+                            13.93,   16.29,   14.83,   50.00
+                            14.56,   15.80,   13.89,   16.67
+                            14.02,   15.76,   13.65,   15.77
+                            14.42,   16.03,   13.72,   15.53
+                            13.95,   15.88,   11.72,   50.00
+                            50.00,   15.41,   13.77,   50.00
+                            14.15,   50.00,   14.71,   50.00
+                            13.83,   50.00,   14.33,   50.00
+                            14.09,   50.00,   13.15,   50.00
+                            13.45,   50.00,   14.39,   50.00
+                            14.61,   50.00,   14.65,   50.00
+                            15.49,   50.00,   14.86,   50.00
+                            12.88,   50.00,   14.14,   50.00
+
+hhodo_pos_invadc_adc=     0.00,     0.00,    61.51,    61.14
+                        48.96,    59.73,    62.95,    59.19
+                        56.86,    57.12,    62.02,    64.13
+                        58.88,    55.57,    62.46,    60.57
+                        59.74,    56.24,    66.21,    67.29
+                        53.20,    55.53,    64.84,    64.70
+                        53.93,    59.32,    61.12,    71.15
+                        55.73,    53.66,    65.47,    63.52
+                        48.68,    60.80,    60.95,    65.91
+                        51.54,     0.00,    70.54,    62.27
+                        49.60,     0.00,    61.81,     0.00
+                        49.93,     0.00,    59.11,     0.00
+                        49.79,     0.00,    67.21,     0.00
+                        54.06,     0.00,    62.26,     0.00
+                        50.01,     0.00,    77.89,     0.00
+                        56.23,     0.00,    64.52,     0.00
+
+hhodo_neg_invadc_adc=     0.00,     0.00,    58.11,    76.44
+                        53.89,    39.97,    69.36,     0.00
+                        53.96,    42.17,    66.72,     0.00
+                        51.96,    42.80,    56.28,     0.00
+                        58.37,    39.73,    67.85,    66.92
+                        53.12,    39.69,    61.09,    65.98
+                        53.19,    38.82,    59.18,    58.69
+                        72.60,    36.71,    63.07,     0.00
+                         0.00,    38.25,    73.56,     0.00
+                        55.61,     0.00,    65.63,     0.00
+                        56.60,     0.00,    63.75,     0.00
+                        56.34,     0.00,    61.94,     0.00
+                        63.72,     0.00,    58.95,     0.00
+                        61.66,     0.00,    64.61,     0.00
+                        52.04,     0.00,    71.75,     0.00
+                        47.51,     0.00,    62.83,     0.00
+
+hhodo_pos_sigma =  100.00,  100.00,    0.46,    0.65
+                     0.31,    0.38,    0.51,    0.62
+                     0.41,    0.40,    0.47,    0.54
+                     0.34,    0.35,    0.39,    0.51
+                     0.37,    0.35,    0.42,    0.50
+                     0.28,    0.33,    0.44,    0.46
+                     0.30,    0.41,    0.37,    0.58
+                     0.33,    0.38,    0.46,    0.53
+                     0.30,    0.43,    0.42,    0.58
+                     0.30,  100.00,    0.46,    0.72
+                     0.29,  100.00,    0.40,  100.00
+                     0.26,  100.00,    0.41,  100.00
+                     0.30,  100.00,    0.39,  100.00
+                     0.34,  100.00,    0.49,  100.00
+                     0.40,  100.00,    0.51,  100.00
+                     0.45,  100.00,    0.42,  100.00
+
+hhodo_neg_sigma =  100.00,  100.00,    0.43,    0.64
+                     0.31,    0.31,    0.50,  100.00
+                     0.30,    0.37,    0.50,  100.00
+                     0.30,    0.34,    0.33,  100.00
+                     0.32,    0.29,    0.45,    0.63
+                     0.30,    0.29,    0.56,    0.45
+                     0.29,    0.31,    0.36,    0.53
+                     0.37,    0.34,    0.45,  100.00
+                   100.00,    0.35,    0.60,  100.00
+                     0.32,  100.00,    0.46,  100.00
+                     0.32,  100.00,    0.39,  100.00
+                     0.31,  100.00,    0.41,  100.00
+                     0.33,  100.00,    0.40,  100.00
+                     0.31,  100.00,    0.63,  100.00
+                     0.39,  100.00,    0.55,  100.00
+                     0.48,  100.00,    0.52,  100.00
diff --git a/examples/PARAM/hhodo.pos b/examples/PARAM/hhodo.pos
new file mode 100644
index 0000000000000000000000000000000000000000..2e37fd06ea8c5ce715c0b9b61cc24ce182c8f989
--- /dev/null
+++ b/examples/PARAM/hhodo.pos
@@ -0,0 +1,88 @@
+      hpathlength_central = 2500
+; Z positions of hodoscopes
+      hscin_1x_zpos =  (89.14-11.31)
+      hscin_1y_zpos =  (108.83-11.31)
+      hscin_2x_zpos =  (310.13-11.31)
+      hscin_2y_zpos =  (329.82-11.31)
+      hscin_1x_dzpos = 2.12
+      hscin_1y_dzpos = 2.12
+      hscin_2x_dzpos = 2.12
+      hscin_2y_dzpos = 2.12
+      hscin_1x_size = 8.0
+      hscin_1y_size = 8.0
+      hscin_2x_size = 8.0
+      hscin_2y_size = 8.0
+      hscin_1x_spacing = 7.5
+      hscin_1y_spacing = 7.5
+      hscin_2x_spacing = 7.5
+      hscin_2y_spacing = 7.5
+; Number of hodoscope paddles per layer
+      hscin_1x_nr = 16
+      hscin_1y_nr = 10
+      hscin_2x_nr = 16
+      hscin_2y_nr = 10
+; X,Y positions of hodoscope paddles
+      hscin_1x_left  =  37.750
+      hscin_1x_right = -37.750
+      hscin_1x_offset=  -1.3
+      hscin_1x_center= -56.250
+                       -48.750
+                       -41.250
+                       -33.750
+                       -26.250
+                       -18.750
+                       -11.250
+                        -3.750
+                         3.750
+                        11.250
+                        18.750
+                        26.250
+                        33.750
+                        41.250
+                        48.750
+                        56.250
+      hscin_1y_top   = -60.250
+      hscin_1y_bot   =  60.250
+      hscin_1y_offset=  -1.3
+      hscin_1y_center=  33.750
+                        26.250
+                        18.750
+                        11.250
+                         3.750
+                        -3.750
+                       -11.250
+                       -18.750
+                       -26.250
+                       -33.750
+      hscin_2x_left  =  37.750
+      hscin_2x_right = -37.750
+      hscin_2x_offset=  -0.6
+      hscin_2x_center= -56.250
+                       -48.750
+                       -41.250
+                       -33.750
+                       -26.250
+                       -18.750
+                       -11.250
+                        -3.750
+                         3.750
+                        11.250
+                        18.750
+                        26.250
+                        33.750
+                        41.250
+                        48.750
+                        56.250
+      hscin_2y_top   = -60.250
+      hscin_2y_bot   =  60.250
+      hscin_2y_offset=  -2.4
+      hscin_2y_center=  33.750
+                        26.250
+                        18.750
+                        11.250
+                         3.750
+                        -3.750
+                       -11.250
+                       -18.750
+                       -26.250
+                       -33.750
diff --git a/examples/PARAM/hms_recon_coeff.dat b/examples/PARAM/hms_recon_coeff.dat
new file mode 100644
index 0000000000000000000000000000000000000000..7b1ca30ea68c6f78f12008a6b872c8b1d131c0d1
--- /dev/null
+++ b/examples/PARAM/hms_recon_coeff.dat
@@ -0,0 +1,407 @@
+! recostruction matrix elements for HMS, tune HMS-100
+! <theta y phi delta | nmpq>;(x**n xp**m y**p yp**q)
+! as of 02/20/97, no z offset included: this statement is obsolete
+! created: 06/28/98
+! zeroth order matrix elements from fitting:
+! <theta|> -4.7276368293E-03 rad
+! <y|> -1.1606458055E-04 m
+! <phi|>  4.8280702357E-05 rad 
+! <p|> -3.8725980576E-03 %
+! <theta y phi delta | nmpq>;(x**n xp**m y**p yp**q)
+! **** mkj ****
+!  aug 26, 2003 added coefficients correcting theta
+!   for  raster ( x at target). Previously delta was corrected
+!   raster ( with up to 4 order) . y and phi were corrected
+!   for coefficient 00012 .
+!   Got coefficients from SIMC hms/recon_cosy.dat
+!     which is labeled:
+!        HMS Recon coefficients calculated 02-Feb-00  16:32:32 (HMS100 tune, P=-1.576
+!    The correction is up to 6th order.
+!  **** mkj *****
+ ---------------------------------------------------------------------
+   .342704157      .183629749E-01 -.742670280E-02  .256021141     1000
+  -3.02138749     -.152502758      .472422058E-01  .130192976     0100
+  -.673199668E-02 -.407567405      .258501913      .278565265E-02 0010
+   .110287597     -.483378951     -2.16704420      .407874298E-01 0001
+  -.495779826     -.548491564E-01  .147936777E-01 -.318166729     2000
+   4.49999138      .451213193     -.151686093      3.07552684     1100
+   .796294361      1.48286554     -.303847305     -.297352223E-01 1010
+   .261524802     -20.7938893      5.00402934     -.249121889     1001
+  -1.65128983     -.995337651      .536837816      2.14776190     0200
+  -6.47649939      .226936328     -.123499047     -.266124530     0110
+  -3.98529962     -6.32858639      1.39991277      4.27708696     0101
+   .113653600E-01  .690088486E-01 -.437114986E-01 -.438953228E-01 0020
+   .881941403      .227473684     -.628899349E-01  .475605891     0011
+  -3.71740449      3.93769576      .113368630     -3.53478948     0002
+   1.95723299     -.820253354E-01  .103519807      .936834319     3000
+  -31.4466915      2.57527314     -2.51407447     -13.5405899     2100
+  -5.89608158     -3.50686592      .471876566     -.312542194E-01 2010
+   40.5129114      58.0458860     -12.5399800     -2.74488175     2001
+   156.932838     -23.8014414      21.1502247      51.8797642     1200
+   57.3250219      40.7718723     -7.13532706      .284008412     1110
+  -298.395506     -639.340672      173.523125      10.6819836     1101
+   1.88702326      .266847247      .271167866      .954315611     1020
+  -24.4326614     -33.6584609     -.114525239      .434687181     1011
+   180.539265      53.7698885      3.76822635      31.9077575     1002
+  -279.667300      64.3177661     -60.6190378     -20.4989850     0300
+  -64.0800162     -86.2289723      11.5806188      3.95564331     0210
+  -247.924962      1524.67217     -483.832639     -46.7762650     0201
+  -21.7150970     -13.4646889      .401043380     -7.06883817     0120
+   211.296709      323.699221     -6.72775908      25.6924121     0111
+  -1440.32950      361.536621     -384.751537     -467.898102     0102
+  -.656643228      3.62511407     -1.27960041     -.358205667     0030
+  -1.58376006      67.9025208     -22.9733471     -3.15593520     0021
+   23.7224929     -987.049261      560.285176      34.1790370     0012
+  -180.294278      5983.27702     -3518.42552     -71.5085362     0003
+  -4.16665084      1.49723155     -.759630854     -2.30278775     4000
+   69.1944845     -46.6812620      21.8666725      58.0248309     3100
+   18.5878217      3.69400020      .602106657E-01 -1.46212838     3010
+  -227.551196     -96.3179597      .489353421      20.4063547     3001
+  -243.511203      535.564222     -239.722086     -491.562374     2200
+  -230.021793     -40.7163893      .940804015      47.2957535     2110
+   3150.68103      1424.96519      38.5622615     -521.870646     2101
+  -10.2926426     -3.56149925     -1.10754304     -1.00472512     2020
+   138.770921      263.397128     -15.7671082     -26.1090659     2011
+  -211.394983     -1895.91500      234.605250      406.369321     2002
+  -832.967425     -2704.20708      1207.70554      1718.29721     1300
+   429.578554     -234.967423     -20.3231936     -432.372956     1210
+  -11612.7737     -2668.84972     -1176.05843      4021.85608     1201
+   130.736123      70.7440580      5.42914965      16.7434624     1120
+  -1905.84788     -3551.03419      224.098878      343.660595     1111
+   363.670026      16804.9474     -2673.42755     -4586.96491     1102
+   6.91955519     -9.98074257      7.57861652      4.98155457     1030
+  -114.693315      63.5563817     -65.8809200     -36.5101930     1021
+   710.699660      4980.54374     -780.431756      60.2646297     1012
+  -7520.04385     -13187.0100      2486.26739      536.066295     1003
+   4347.54210      5161.66425     -2427.09769     -1950.10403     0400
+   1156.75126      1725.44332      188.803395      1323.39948     0310
+   12047.3853     -8815.37699      3407.72589     -11081.6594     0301
+  -26.9308548      60.3544886     -47.8411214     -67.2731587     0220
+   826.904198      4520.84740      916.341424     -974.052221     0211
+   19983.2818      7167.34390     -4225.20780      9358.46286     0202
+  -26.0105902     -188.661888      54.6866678     -37.4367181     0130
+   648.226508      2521.63446     -1052.88888      292.436840     0121
+  -8498.59600     -31139.3846      8203.03704     -697.205971     0112
+   63967.4235      128236.246     -24237.5465     -2336.48364     0103
+  -1.07911254      1.22231630     -.173675833      3.83526317     0040
+   9.94134973      258.488500     -10.9579494     -84.9391998     0031
+   158.508425     -2684.84975     -3.07844063      726.975013     0022
+  -3017.64724      14872.1349     -469.458295     -1667.46714     0013
+   466.801936     -55258.4859      4661.52259      3912.11649     0004
+   1.88180503     -2.54978699      1.02249535      4.96781903     5000
+   27.9678707      85.1165188     -25.6500831     -214.635508     4100
+  -19.6018738     -1.90234997     -2.26475906      3.07907961     4010
+   338.908065     -3.13670480      84.7364876     -48.5819865     4001
+  -1595.43911     -986.185572      116.663362      3438.51266     3200
+   256.718721     -2.53553430      86.9081338     -71.7570318     3110
+  -5619.82737      2554.66160     -3220.55423      1952.97191     3101
+   5.63505956      5.65523837     -.178636671     -9.82929708     3020
+   28.4611788     -535.882022      112.200518      63.7792928     3011
+  -3335.14896      6481.34708     -841.916671     -2407.64911     3002
+   17748.8967      4446.27557      1781.86526     -27888.4078     2300
+  -365.812295      713.968459     -1184.61359      175.230779     2210
+   26149.2365     -61279.3626      44610.2113     -20776.5089     2201
+   82.8634399     -82.7911036      40.7995535      223.223395     2120
+  -4711.16007      7972.91446     -3042.34279     -1765.82660     2111
+   111837.314     -122751.891      25531.4588      55520.9916     2102
+  -13.8546171     -44.6122707     -1.49148927      7.53241271     2030
+   379.629516      2219.19103     -283.396915     -8.69875712     2021
+  -2940.77125     -39662.7132      6848.07035      332.501630     2012
+  -4833.05018      291262.775     -40868.2995     -930.899000     2003
+  -75870.6114     -3035.26190     -19402.1263      118850.529     1400
+  -1090.33337     -5565.51679      8155.50571      3660.70792     1310
+  -76601.8398      456263.377     -281440.652      79440.7749     1301
+  -2721.78279     -512.627944     -452.280825     -1934.55934     1220
+   83864.4298      5816.23957      23306.1137      11961.6529     1211
+  -1306713.82      400125.281     -216284.553     -418149.697     1202
+   100.956187      1309.56623     -226.290462     -173.118732     1130
+  -4032.82257     -56824.1834      10616.2930      1607.73072     1121
+   79840.4758      782713.236     -150889.930     -14254.2451     1112
+  -330377.607     -4233718.14      646182.662      39788.7678     1103
+   6.06681234      7.12938618     -.220192683     -1.11240314     1040
+  -243.665570     -948.255482      153.244584      165.982247     1031
+   7181.11150      25876.5416     -2553.92502     -3998.95843     1022
+  -75005.8412     -104271.766     -23488.8683      29493.1698     1013
+   124433.465     -149264.761      219376.542     -13196.6766     1004
+   113262.801     -18667.6651      53113.3093     -209797.800     0500
+  -11632.6603      7242.92619     -21110.0334     -18679.7717     0410
+   301044.558     -1035121.76      655646.504     -71841.5676     0401
+   8371.11263      2221.54910      1543.28892      6295.96049     0320
+  -258028.488     -135832.589     -66162.4672     -36062.5709     0311
+   4218622.48      128274.356      663799.998      1118597.09     0302
+  -167.926507     -3321.19532      237.754153      1077.44822     0230
+   15453.6273      205593.650     -24454.8426     -11675.9844     0221
+  -438724.451     -3267312.69      463392.237      52657.7588     0212
+   2249544.29      17936516.3     -2298746.48     -118752.747     0203
+  -25.5889867     -61.6539042      41.8282483     -107.686882     0140
+   1866.01089     -1606.56535     -3207.84127      946.869731     0131
+  -71480.9824     -31234.8373      79600.1247      25102.1443     0122
+   814034.645      434180.428     -606101.312     -259877.198     0113
+  -2102030.39     -1584569.00      1583206.11      303094.278     0104
+  -3.59866781     -19.7084031     -18.4827350     -1.36754912     0050
+   50.9893561      384.737475      1103.07001      164.395576     0041
+   1986.13677      18001.7932     -34498.4820      90.2668576     0032
+  -30037.4064     -584192.598      674006.856      1100.41524     0023
+   20801.9238      6212983.14     -6436686.94     -17333.4694     0014
+   408508.663     -23722308.6      22707746.7      30963.1531     0005
+   1.12584242     0.000000000E+00 0.000000000E+00 0.768177700     00001
+  -3.30929606     0.000000000E+00 0.000000000E+00 -1.24824954     10001
+   9.55821560     0.000000000E+00 0.000000000E+00  7.18980365     01001
+   -12.8075508    0.000000000E+00 0.000000000E+00 -1.79480024     00002
+   31.3282870     0.000000000E+00 0.000000000E+00  4.30979026     20001
+   -366.358594    0.000000000E+00 0.000000000E+00 -47.5141035     11001
+   1281.27264     0.000000000E+00 0.000000000E+00  127.404997     02001
+   8.46492946     0.000000000E+00 0.000000000E+00  1.52132362     00201
+   -212.181332    0.000000000E+00 0.000000000E+00 -44.8420242     00111
+   86.2168045     0.000000000E+00 0.000000000E+00  13.9035869     10002
+   -202.375577    0.000000000E+00 0.000000000E+00 -75.1770025     01002
+   1292.40575     0.000000000E+00 0.000000000E+00  332.945301     00021
+   152.465743      412.398418      -118.551680    0.000000000E+00 00012
+   56.8142343     0.000000000E+00 0.000000000E+00  15.5951865     00003
+  -111.090641     0.000000000E+00 0.000000000E+00 -15.7177358     30001
+   1301.23090     0.000000000E+00 0.000000000E+00  249.924995     21001
+  -3377.64137     0.000000000E+00 0.000000000E+00 -1205.61003     12001
+  -1080.57253     0.000000000E+00 0.000000000E+00  1650.70638     03001
+  -206.758367     0.000000000E+00 0.000000000E+00 -8.63945412     10201
+   1286.12280     0.000000000E+00 0.000000000E+00  51.7345340     01201
+   457.388990     0.000000000E+00 0.000000000E+00  246.328770     10111
+   315.521007     0.000000000E+00 0.000000000E+00 -1468.88025     01111
+  -2.86376084     0.000000000E+00 0.000000000E+00 -77.6962058     20002
+  -284.532504     0.000000000E+00 0.000000000E+00  808.267218     11002
+  -54.9686786     0.000000000E+00 0.000000000E+00 -1887.27393     02002
+  -894.903229     0.000000000E+00 0.000000000E+00 -13.1721627     00202
+  -58.1868148     0.000000000E+00 0.000000000E+00 -1758.72381     10021
+   28.1001103     0.000000000E+00 0.000000000E+00  10443.6142     01021
+   24.9869024     0.000000000E+00 0.000000000E+00  377.176889     00112
+  -4.71048927     0.000000000E+00 0.000000000E+00 -174.332974     10003
+  -0.94935661     0.000000000E+00 0.000000000E+00  893.518077     01003
+   5.91096156     0.000000000E+00 0.000000000E+00 -2708.57078     00022
+   0.10590745     0.000000000E+00 0.000000000E+00 -149.156349     00004
+  0.744204334E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00101
+   2.84521581     0.000000000E+00 0.000000000E+00 0.000000000E+00 10101
+  -25.4393730     0.000000000E+00 0.000000000E+00 0.000000000E+00 01101
+ -0.932044457     0.000000000E+00 0.000000000E+00 0.000000000E+00 00011
+   13.7051555     0.000000000E+00 0.000000000E+00 0.000000000E+00 10011
+  -72.5425087     0.000000000E+00 0.000000000E+00 0.000000000E+00 01011
+   11.1885519     0.000000000E+00 0.000000000E+00 0.000000000E+00 00102
+  -64.8809742     0.000000000E+00 0.000000000E+00 0.000000000E+00 00030
+  -29.8576040     0.000000000E+00 0.000000000E+00 0.000000000E+00 20101
+   257.607594     0.000000000E+00 0.000000000E+00 0.000000000E+00 11101
+   222.800622     0.000000000E+00 0.000000000E+00 0.000000000E+00 02101
+  -5.74703998     0.000000000E+00 0.000000000E+00 0.000000000E+00 00301
+  -58.3774171     0.000000000E+00 0.000000000E+00 0.000000000E+00 20011
+  -75.7986407     0.000000000E+00 0.000000000E+00 0.000000000E+00 11011
+  -20.0306669     0.000000000E+00 0.000000000E+00 0.000000000E+00 02011
+   81.5699850     0.000000000E+00 0.000000000E+00 0.000000000E+00 00211
+   39.9072357     0.000000000E+00 0.000000000E+00 0.000000000E+00 10102
+   26.1337898     0.000000000E+00 0.000000000E+00 0.000000000E+00 01102
+   11.1028012     0.000000000E+00 0.000000000E+00 0.000000000E+00 00121
+   15.8064184     0.000000000E+00 0.000000000E+00 0.000000000E+00 10012
+   2.52332790     0.000000000E+00 0.000000000E+00 0.000000000E+00 01012
+   1.49611639     0.000000000E+00 0.000000000E+00 0.000000000E+00 00103
+   2.94427172     0.000000000E+00 0.000000000E+00 0.000000000E+00 00031
+   5.91096156     0.000000000E+00 0.000000000E+00 0.000000000E+00 00022
+  0.196444306     0.000000000E+00 0.000000000E+00 0.000000000E+00 00013
+  0.105907450     0.000000000E+00 0.000000000E+00 0.000000000E+00 00004
+   169.573680     0.000000000E+00 0.000000000E+00 0.000000000E+00 40001
+  -1188.40309     0.000000000E+00 0.000000000E+00 0.000000000E+00 31001
+  -2564.00859     0.000000000E+00 0.000000000E+00 0.000000000E+00 22001
+  -796.126266     0.000000000E+00 0.000000000E+00 0.000000000E+00 13001
+  -170.135856     0.000000000E+00 0.000000000E+00 0.000000000E+00 04001
+   25.2737324     0.000000000E+00 0.000000000E+00 0.000000000E+00 30101
+  -302.117798     0.000000000E+00 0.000000000E+00 0.000000000E+00 21101
+   10.5088748     0.000000000E+00 0.000000000E+00 0.000000000E+00 12101
+   17.9545609     0.000000000E+00 0.000000000E+00 0.000000000E+00 03101
+   393.042869     0.000000000E+00 0.000000000E+00 0.000000000E+00 20201
+  -2654.79358     0.000000000E+00 0.000000000E+00 0.000000000E+00 11201
+  -675.207959     0.000000000E+00 0.000000000E+00 0.000000000E+00 02201
+   31.5374558     0.000000000E+00 0.000000000E+00 0.000000000E+00 10301
+  -66.2872749     0.000000000E+00 0.000000000E+00 0.000000000E+00 01301
+   11.0483668     0.000000000E+00 0.000000000E+00 0.000000000E+00 00401
+   53.9952733     0.000000000E+00 0.000000000E+00 0.000000000E+00 30011
+   19.8514223     0.000000000E+00 0.000000000E+00 0.000000000E+00 21011
+   6.99512779     0.000000000E+00 0.000000000E+00 0.000000000E+00 12011
+   2.03058969     0.000000000E+00 0.000000000E+00 0.000000000E+00 03011
+  -414.755722     0.000000000E+00 0.000000000E+00 0.000000000E+00 20111
+  -242.924295     0.000000000E+00 0.000000000E+00 0.000000000E+00 11111
+  -53.2831769     0.000000000E+00 0.000000000E+00 0.000000000E+00 02111
+   14.0854426     0.000000000E+00 0.000000000E+00 0.000000000E+00 10211
+  -7.18970025     0.000000000E+00 0.000000000E+00 0.000000000E+00 01211
+   46.6175282     0.000000000E+00 0.000000000E+00 0.000000000E+00 00311
+   327.023510     0.000000000E+00 0.000000000E+00 0.000000000E+00 30002
+  -46.7603764     0.000000000E+00 0.000000000E+00 0.000000000E+00 21002
+  -13.1130776     0.000000000E+00 0.000000000E+00 0.000000000E+00 12002
+  -2.14608775     0.000000000E+00 0.000000000E+00 0.000000000E+00 03002
+  -405.162634     0.000000000E+00 0.000000000E+00 0.000000000E+00 20102
+  -37.8327394     0.000000000E+00 0.000000000E+00 0.000000000E+00 11102
+  -3.28616433     0.000000000E+00 0.000000000E+00 0.000000000E+00 02102
+  -797.756623     0.000000000E+00 0.000000000E+00 0.000000000E+00 10202
+  -100.253463     0.000000000E+00 0.000000000E+00 0.000000000E+00 01202
+  -58.1494000     0.000000000E+00 0.000000000E+00 0.000000000E+00 00302
+  -49.7218825     0.000000000E+00 0.000000000E+00 0.000000000E+00 20021
+  -23.4940000     0.000000000E+00 0.000000000E+00 0.000000000E+00 11021
+  -4.63065295     0.000000000E+00 0.000000000E+00 0.000000000E+00 02021
+  -7.01252658     0.000000000E+00 0.000000000E+00 0.000000000E+00 10121
+  -1.66128414     0.000000000E+00 0.000000000E+00 0.000000000E+00 01121
+   8.99761159     0.000000000E+00 0.000000000E+00 0.000000000E+00 00221
+  -26.9158564     0.000000000E+00 0.000000000E+00 0.000000000E+00 20012
+  -2.93740577     0.000000000E+00 0.000000000E+00 0.000000000E+00 11012
+ -0.281699956     0.000000000E+00 0.000000000E+00 0.000000000E+00 02012
+  -44.2613806     0.000000000E+00 0.000000000E+00 0.000000000E+00 10112
+  -5.18873926     0.000000000E+00 0.000000000E+00 0.000000000E+00 01112
+  -2.30913015     0.000000000E+00 0.000000000E+00 0.000000000E+00 00212
+   12.9742811     0.000000000E+00 0.000000000E+00 0.000000000E+00 20003
+   1.29863794     0.000000000E+00 0.000000000E+00 0.000000000E+00 11003
+  0.179319821     0.000000000E+00 0.000000000E+00 0.000000000E+00 02003
+  0.359636043     0.000000000E+00 0.000000000E+00 0.000000000E+00 10103
+ -0.686000125E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 01103
+  0.479897726     0.000000000E+00 0.000000000E+00 0.000000000E+00 00203
+   2.12875475     0.000000000E+00 0.000000000E+00 0.000000000E+00 10040
+   1.00542982     0.000000000E+00 0.000000000E+00 0.000000000E+00 01040
+  0.574499599E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00140
+  -1.51837641     0.000000000E+00 0.000000000E+00 0.000000000E+00 10031
+ -0.259505376     0.000000000E+00 0.000000000E+00 0.000000000E+00 01031
+   1.21378871     0.000000000E+00 0.000000000E+00 0.000000000E+00 00131
+  -3.83394487     0.000000000E+00 0.000000000E+00 0.000000000E+00 10022
+ -0.448803101     0.000000000E+00 0.000000000E+00 0.000000000E+00 01022
+  0.432742246E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00122
+  0.433795780E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 10013
+  0.381017134E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 01013
+  0.717327023E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00113
+  0.404935152E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 10004
+ -0.704014248E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 01004
+  0.417717692E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 00104
+ -0.108814119     0.000000000E+00 0.000000000E+00 0.000000000E+00 00050
+  0.265212468     0.000000000E+00 0.000000000E+00 0.000000000E+00 00041
+  0.342938618E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00032
+  0.274219030E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00023
+  0.382346774E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 00014
+  0.146595810E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 00005
+  -221.978975     0.000000000E+00 0.000000000E+00 0.000000000E+00 50001
+   2081.48433     0.000000000E+00 0.000000000E+00 0.000000000E+00 41001
+  -430.560936     0.000000000E+00 0.000000000E+00 0.000000000E+00 32001
+  -218.050288     0.000000000E+00 0.000000000E+00 0.000000000E+00 23001
+  -55.5844501     0.000000000E+00 0.000000000E+00 0.000000000E+00 14001
+  -11.3642568     0.000000000E+00 0.000000000E+00 0.000000000E+00 05001
+   108.432463     0.000000000E+00 0.000000000E+00 0.000000000E+00 40101
+  -931.864934     0.000000000E+00 0.000000000E+00 0.000000000E+00 31101
+  -192.977158     0.000000000E+00 0.000000000E+00 0.000000000E+00 22101
+  -28.6473383     0.000000000E+00 0.000000000E+00 0.000000000E+00 13101
+  -3.41017534     0.000000000E+00 0.000000000E+00 0.000000000E+00 04101
+   61.3278498     0.000000000E+00 0.000000000E+00 0.000000000E+00 30201
+  -43.6289186     0.000000000E+00 0.000000000E+00 0.000000000E+00 21201
+  -47.1521819     0.000000000E+00 0.000000000E+00 0.000000000E+00 12201
+  -14.9198830     0.000000000E+00 0.000000000E+00 0.000000000E+00 03201
+   58.8310901     0.000000000E+00 0.000000000E+00 0.000000000E+00 20301
+  -36.3378650     0.000000000E+00 0.000000000E+00 0.000000000E+00 11301
+  -8.01512328     0.000000000E+00 0.000000000E+00 0.000000000E+00 02301
+  -104.944287     0.000000000E+00 0.000000000E+00 0.000000000E+00 10401
+   34.7713353     0.000000000E+00 0.000000000E+00 0.000000000E+00 01401
+  -122.288125     0.000000000E+00 0.000000000E+00 0.000000000E+00 00501
+  -77.5453423     0.000000000E+00 0.000000000E+00 0.000000000E+00 40011
+  -64.1314449     0.000000000E+00 0.000000000E+00 0.000000000E+00 31011
+  -13.9857505     0.000000000E+00 0.000000000E+00 0.000000000E+00 22011
+  -2.33654082     0.000000000E+00 0.000000000E+00 0.000000000E+00 13011
+ -0.340596491     0.000000000E+00 0.000000000E+00 0.000000000E+00 04011
+   29.3394194     0.000000000E+00 0.000000000E+00 0.000000000E+00 30111
+   48.1149331     0.000000000E+00 0.000000000E+00 0.000000000E+00 21111
+   9.50174924     0.000000000E+00 0.000000000E+00 0.000000000E+00 12111
+   1.38837541     0.000000000E+00 0.000000000E+00 0.000000000E+00 03111
+   52.4792515     0.000000000E+00 0.000000000E+00 0.000000000E+00 20211
+   3.80058742     0.000000000E+00 0.000000000E+00 0.000000000E+00 11211
+  0.234555136     0.000000000E+00 0.000000000E+00 0.000000000E+00 02211
+   39.5808085     0.000000000E+00 0.000000000E+00 0.000000000E+00 10311
+   15.2563542     0.000000000E+00 0.000000000E+00 0.000000000E+00 01311
+  -7.28080327     0.000000000E+00 0.000000000E+00 0.000000000E+00 00411
+  -597.497346     0.000000000E+00 0.000000000E+00 0.000000000E+00 40002
+  -102.721749     0.000000000E+00 0.000000000E+00 0.000000000E+00 31002
+  -15.3681107     0.000000000E+00 0.000000000E+00 0.000000000E+00 22002
+  -2.17208316     0.000000000E+00 0.000000000E+00 0.000000000E+00 13002
+ -0.274609264     0.000000000E+00 0.000000000E+00 0.000000000E+00 04002
+   106.837983     0.000000000E+00 0.000000000E+00 0.000000000E+00 30102
+   12.3766158     0.000000000E+00 0.000000000E+00 0.000000000E+00 21102
+   1.46530330     0.000000000E+00 0.000000000E+00 0.000000000E+00 12102
+  0.185393293     0.000000000E+00 0.000000000E+00 0.000000000E+00 03102
+   11.8887131     0.000000000E+00 0.000000000E+00 0.000000000E+00 20202
+  -2.55669988     0.000000000E+00 0.000000000E+00 0.000000000E+00 11202
+ -0.863809017     0.000000000E+00 0.000000000E+00 0.000000000E+00 02202
+   18.8047014     0.000000000E+00 0.000000000E+00 0.000000000E+00 10302
+   2.49667580     0.000000000E+00 0.000000000E+00 0.000000000E+00 01302
+  -3.93088497     0.000000000E+00 0.000000000E+00 0.000000000E+00 00402
+   12.7034651     0.000000000E+00 0.000000000E+00 0.000000000E+00 30021
+   7.96187516     0.000000000E+00 0.000000000E+00 0.000000000E+00 21021
+   1.60982507     0.000000000E+00 0.000000000E+00 0.000000000E+00 12021
+  0.257565675     0.000000000E+00 0.000000000E+00 0.000000000E+00 03021
+   5.93574507     0.000000000E+00 0.000000000E+00 0.000000000E+00 20121
+  0.679348453     0.000000000E+00 0.000000000E+00 0.000000000E+00 11121
+  0.757550151E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 02121
+   7.36294581     0.000000000E+00 0.000000000E+00 0.000000000E+00 10221
+   2.30080135     0.000000000E+00 0.000000000E+00 0.000000000E+00 01221
+ -0.118383007     0.000000000E+00 0.000000000E+00 0.000000000E+00 00321
+   14.4258145     0.000000000E+00 0.000000000E+00 0.000000000E+00 30012
+   1.52658163     0.000000000E+00 0.000000000E+00 0.000000000E+00 21012
+  0.163028817     0.000000000E+00 0.000000000E+00 0.000000000E+00 12012
+  0.171689509E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 03012
+   15.0743734     0.000000000E+00 0.000000000E+00 0.000000000E+00 20112
+   1.60706583     0.000000000E+00 0.000000000E+00 0.000000000E+00 11112
+  0.166465023     0.000000000E+00 0.000000000E+00 0.000000000E+00 02112
+   2.28803297     0.000000000E+00 0.000000000E+00 0.000000000E+00 10212
+  0.265413449     0.000000000E+00 0.000000000E+00 0.000000000E+00 01212
+   3.26683930     0.000000000E+00 0.000000000E+00 0.000000000E+00 00312
+  -1.44694805     0.000000000E+00 0.000000000E+00 0.000000000E+00 30003
+ -0.301551821     0.000000000E+00 0.000000000E+00 0.000000000E+00 21003
+ -0.979405958E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 12003
+ -0.218874633E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 03003
+  0.213731277     0.000000000E+00 0.000000000E+00 0.000000000E+00 20103
+ -0.424871757E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 11103
+ -0.263981236E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 02103
+ -0.390336182     0.000000000E+00 0.000000000E+00 0.000000000E+00 10203
+ -0.220563449E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 01203
+ -0.252061070E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00303
+  0.835395726     0.000000000E+00 0.000000000E+00 0.000000000E+00 20031
+  0.101082424     0.000000000E+00 0.000000000E+00 0.000000000E+00 11031
+  0.113826515E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 02031
+  0.967539242     0.000000000E+00 0.000000000E+00 0.000000000E+00 10131
+  0.283940573     0.000000000E+00 0.000000000E+00 0.000000000E+00 01131
+  0.704094684E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00231
+   1.96621152     0.000000000E+00 0.000000000E+00 0.000000000E+00 20022
+  0.211929662     0.000000000E+00 0.000000000E+00 0.000000000E+00 11022
+  0.222297020E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 02022
+  0.192176728     0.000000000E+00 0.000000000E+00 0.000000000E+00 10122
+  0.208429359E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 01122
+  0.409197722     0.000000000E+00 0.000000000E+00 0.000000000E+00 00222
+  0.116208798E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 20013
+ -0.861751979E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 11013
+ -0.368034008E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 02013
+ -0.305595883E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 10113
+  0.792820773E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 01113
+ -0.103581312E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 00213
+ -0.317665296E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 20004
+ -0.868692894E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 11004
+ -0.130336633E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 02004
+ -0.485930059E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 10104
+ -0.181322677E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 01104
+ -0.225313015E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00204
+  0.102736083     0.000000000E+00 0.000000000E+00 0.000000000E+00 10041
+  0.316791817E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 01041
+  0.177406989E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00141
+  0.128130316E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 10032
+  0.134309873E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 01032
+  0.442654916E-01 0.000000000E+00 0.000000000E+00 0.000000000E+00 00132
+ -0.500745668E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 10023
+ -0.362264901E-04 0.000000000E+00 0.000000000E+00 0.000000000E+00 01023
+ -0.100846774E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 00123
+ -0.259911565E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 10014
+ -0.865988929E-05 0.000000000E+00 0.000000000E+00 0.000000000E+00 01014
+  0.126433262E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 00114
+ -0.376405317E-03 0.000000000E+00 0.000000000E+00 0.000000000E+00 10005
+ -0.495262130E-04 0.000000000E+00 0.000000000E+00 0.000000000E+00 01005
+  0.505435025E-04 0.000000000E+00 0.000000000E+00 0.000000000E+00 00105
+ -0.126889588E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 00060
+  0.318778677E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 00051
+  0.474276817E-02 0.000000000E+00 0.000000000E+00 0.000000000E+00 00042
+  0.108549858E-04 0.000000000E+00 0.000000000E+00 0.000000000E+00 00033
+  0.908354900E-04 0.000000000E+00 0.000000000E+00 0.000000000E+00 00024
+  0.311879063E-05 0.000000000E+00 0.000000000E+00 0.000000000E+00 00015
+  0.232698271E-05 0.000000000E+00 0.000000000E+00 0.000000000E+00 00006
+ ---------------------------------------------------------------------
diff --git a/examples/PARAM/hmsflags.param b/examples/PARAM/hmsflags.param
new file mode 100644
index 0000000000000000000000000000000000000000..1436427452cbbee6a59c8f78495801599bbec164
--- /dev/null
+++ b/examples/PARAM/hmsflags.param
@@ -0,0 +1,52 @@
+; Offset in the spectrometer momentum.
+  hmomentum_factor = 0.000 ; leave 0 so it will have no effect
+                           ; use hpcentral_offset if one needs to offset central momentum
+;
+; The hdelta_offset,htheta_offset,hphi_offset effect the
+; reconstructed target quantities. Used in h_targ_trans.f 
+; For transport x is in the dispersive direction with + down
+;               y is in the horizontal + towards small angles.
+;               z is along the central optics axis.
+; In transport coordinates phi = hyptar = dy/dz and theta = hxptar = dx/dz 
+;    but for unknown reasons the yp offset is named  htheta_offset
+;    and  the xp offset is named  hphi_offset
+; Do not to change these values, since these are the zero order
+;  CMOP matrix elements. If you do change then your hms sieve
+;  plots will be screwed up.
+  hdelta_offset = 0.       ; (%)   hdelta_tar = hdelta_tar + hdelta_offset
+  htheta_offset = 4.83e-5  ; (rad) hyp_tar = hyp_tar + htheta_offset
+  hphi_offset   = -4.73e-3 ; (rad) hxp_tar = hxp_tar + hphi_offset
+;
+
+;saturation correction flag
+  genable_hms_satcorr = 2000 ;(0=disabled) - h_satcorr.f
+                          ; a correction to hsdelta event by event
+                          ; for a problem in setting Q3 current.
+                          ; There was an unknown zero offset in the Q3 current.
+                          ; The magnet setting code field00.f partially 
+                          ; fixes this problem. T. Horn in 2003 determined
+                          ; the corrections to delta.
+                          ; Data taken with fields set by field99.f or earlier should set to 1999.
+                          ; Data taken with fields set by field00.f or later should set to 2000.
+; central field  correction
+  genable_hms_fieldcorr = 1 ; (1=disabled) - h_fieldcorr.f 
+                            ; Need to enable for experiments before Jan 2002 .
+			    ; experiments using field02 and field03 should disable. 
+;
+; The following offsets are applied to the central kinematic variables
+;  in h_apply_offsets.f  . These might be modified by an experiment
+;  after doing calibration with elastic ep.
+; The values below are from T. Horn 2003 analysis
+  hpcentral_offset = -0.13 ; sets hpcentral = hpcentral * ( 1. + hpcentral_offset / 100. )
+		    ; experiments earlier than April 2003 
+                    ; should use  about -0.3 which is the best
+                    ; estimate based on several previous experiments.
+  hthetacentral_offset = 0.00 ; (rad) 
+                         ;htheta_lab=htheta_lab + hthetacentral_offset/degree 
+; This offset is determined from elastic ep data.
+; Must be added to ssxptar when used in calculating lab angles.
+; Example is in h_physics.f
+;
+  h_oopcentral_offset = 0.0011  ; (rad)
+
+
diff --git a/examples/PARAM/htracking.param b/examples/PARAM/htracking.param
new file mode 100644
index 0000000000000000000000000000000000000000..3b9ff5b91e60e72409df50d24e083b55899c778b
--- /dev/null
+++ b/examples/PARAM/htracking.param
@@ -0,0 +1,101 @@
+; hms pattern recognition and tracking code parameters
+; hmax_pr_hits is the maximum number of decoded hits allowed in a chamber for
+;              pattern recognition to proceed. This protexts against unusual
+;              kami kaze events which hang the analyzer to a long time.
+;
+        hmax_pr_hits =    25, 25
+; maximum number of possible focal plane tracks, must be <= 20
+        hntracks_max_fp = 10
+; if h_remove_sppt_if_one_y_plane=1 then remove space point if space point
+;    contains only one y plane.
+; Recommend h_remove_sppt_if_one_y_plane=0.  
+        h_remove_sppt_if_one_y_plane=0
+; hminhit(i)   minimum number of hits in each space point (one for each chamber)
+	hmin_hit =     5, 5
+; hmin_combos(i) minimum number of pairs in each space point ( one per chamber)
+; should be 3/3 for 4/6 tracking, and 4/4 for 5/6 tracking (JRA)
+	hmin_combos = 4, 4 
+; hspace_point_criterion(i) minimum separation of distinct space points
+; recommended value for hspace_point_criterion ( based on meeting
+; Feb 2003) 
+       hspace_point_criterion = 1.0, 1.0
+
+        hstub_max_xpdiff = .05
+;
+; The following four criteria are applied to the stub fit results at the
+; focal plane position to link stubs to tracks
+; hxt_track_criterion  
+; hyt_track_criterion
+; hxpt_track_criterion
+; hypt_track_criterion
+; recommended value for hspace_point_criterion ( based on meeting
+; Feb 2003) 
+       hxt_track_criterion  = 10.
+       hyt_track_criterion  = 4.
+       hxpt_track_criterion = 0.2
+       hypt_track_criterion = 0.5
+;
+; hsingle_stub            If .ne. 0 make a track of each single stub
+  hsingle_stub = 0
+; turn on/off small angle approximation to left/right decision for y
+  hSmallAngleApprox = 1
+
+; Crude track selection criteria in h_physics
+; hsel_chi2_fpperdegmax   maximum chi2 per degree of freedom for track
+  hsel_chi2_fpperdegmax = 2000000.
+; hsel_dedx1min           minimum dedx to chose best track in scin 1
+  hsel_dedx1min = -100000
+; hsel_dedx1max           maximum dedx to chose best track in scin 1
+  hsel_dedx1max = 1000000.
+; hsel_betamin            minimum track beta to chose best track 
+  hsel_betamin  = -100000
+; hsel_betamax            maximum track beta to chose best track 
+  hsel_betamax  = 100000.
+; hsel_etmin              minimum track et to chose best track 
+  hsel_etmin = -100000.
+; hsel_etmax              maximum track et to chose best track 
+  hsel_etmax = 100000.
+; hsel_ndegreesmin        minimum number of degrees of freedom for track
+  hsel_ndegreesmin = 1
+
+
+; hstat_maxchisq          chisquared limit for tracks used to measure hodo. eff.
+  hstat_maxchisq = 10.
+; hsel_using_scin         uses scintillator for track selection
+  hsel_using_scin = 0
+; hstat_slop              distance from center of scin. to count as expecting hit
+  hstat_slop = 2.
+; hstat_mineff            warning level for scin. effic.
+  hstat_mineff = .95
+; hstat_cal_maxchisq      chisquared limit for tracks used to measure cal. eff.
+  hstat_cal_maxchisq = 10.
+; hstat_cal_slop          distance from center of block to count as expecting hit
+  hstat_cal_slop = 2.
+; hcer_min_eff            warning level for cerenkov effic.
+  hcer_min_eff = .98
+; hcer_threshold          threshold for good hit (for measureing effic.)
+  hcer_threshold = 0.5
+; hdc_min_eff             warning level for dc raw effic.(1 per plane)
+  hdc_min_eff = .96,.98,.96,.98,.98,.94
+                .96,.98,.98,.98,.98,.96
+; hdc_min_wire_eff        warning level for wire effic, measured using tracking
+  hdc_min_wire_eff = .85
+; hdc_min_plane_eff        warning level for plane effic, measured using tracking
+  hdc_min_plane_eff = .95,.95,.95,.95,.95,.95
+                      .95,.95,.95,.95,.95,.95
+;Derek added this for scintillator based fiducial cuts.  Everything from
+;loscin to hiscin inclusive will be included as "good" scintillator hits.
+;  hxloscin  = 5, 5
+;  hxhiscin  = 12, 12
+;  hyloscin  = 4, 4
+;  hyhiscin  = 7, 7
+  hxloscin  = 4, 4
+  hxhiscin  = 13, 13
+  hyloscin  = 4, 4
+  hyhiscin  = 7, 7
+;  htrack_eff_test_scin_planes is the number of planes nec needed to 
+;  set sweet spot to true. 4 is extra clean, 3 is good enough for e-'s.
+  htrack_eff_test_num_scin_planes = 4
+
+  hcer_npe = 2.0
+  hnormalized_energy_tot = 0.7
diff --git a/examples/PARAM/saer.param b/examples/PARAM/saer.param
new file mode 100644
index 0000000000000000000000000000000000000000..184ba63301640d5b62b807efabb530e95f90c579
--- /dev/null
+++ b/examples/PARAM/saer.param
@@ -0,0 +1,12 @@
+     saer_pos_gain   =  .00558621, .00428808, .00458957, .00486647
+			.00514871, .00417616, .00353699
+
+     saer_neg_gain   =	.00404326, .00420673, .00459876, .00419363
+			.00500844, .00377049, .00448458
+
+     saer_pos_threshold = 0.200, 0.200, 0.200, 0.200
+                          0.200, 0.200, 0.200
+
+     saer_neg_threshold = 0.200, 0.200, 0.200, 0.200
+                          0.200, 0.200, 0.200
+
diff --git a/examples/PARAM/scal.param b/examples/PARAM/scal.param
new file mode 100644
index 0000000000000000000000000000000000000000..842541dad00db13d379998d91eecc332fa62d774
--- /dev/null
+++ b/examples/PARAM/scal.param
@@ -0,0 +1,207 @@
+; Slop in x position.  Allowed distance between track and edge of block (in cm)
+; probably too tight djm scal_slop = 7.5
+scal_slop = 10.0
+
+scal_pos_cal_const =0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+
+scal_neg_cal_const =0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+                    0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001,0.001
+
+scal_pos_gain_ini=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+scal_neg_gain_ini=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+scal_pos_gain_cur=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+scal_neg_gain_cur=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+; Calibration constants for run   48816,  33696 events processed
+;
+;scal_pos_gain_cor= 0.628, 0.697, 0.697, 0.452, 0.422, 0.543, 0.802, 0.745, 0.565, 0.952, 0.693,
+;                   0.842, 0.602, 0.399, 0.519, 0.550, 0.515, 0.853, 0.462, 1.070, 0.577, 0.786,
+;                   0.852, 0.966, 1.002, 0.804, 0.961, 1.069, 1.345, 0.967, 0.977, 0.905, 1.632,
+;                   0.878, 1.092, 1.151, 1.292, 1.080, 1.050, 1.066, 1.055, 1.405, 1.116, 1.359,
+;scal_neg_gain_cor= 0.539, 0.612, 0.789, 0.756, 0.700, 0.542, 0.677, 0.722, 0.692, 0.791, 0.539,
+;                   0.358, 0.578, 0.792, 0.604, 0.636, 0.631, 0.903, 0.627, 0.656, 0.587, 0.372,
+;                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+;                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+
+; Calibration constants for run   49064,  33189 events processed
+
+scal_pos_gain_cor= 0.561, 0.513, 0.492, 0.340, 0.334, 0.418, 0.652, 0.591, 0.390, 0.000, 0.000,
+                   0.650, 0.482, 0.280, 0.441, 0.395, 0.389, 0.687, 0.295, 0.961, 0.396, 0.000,
+                   0.635, 0.721, 0.792, 0.653, 0.714, 0.799, 1.065, 0.744, 0.735, 0.640, 0.000,
+                   0.728, 0.832, 0.914, 1.012, 0.858, 0.806, 0.833, 0.831, 1.099, 0.627, 0.000,
+scal_neg_gain_cor= 0.383, 0.457, 0.668, 0.590, 0.573, 0.406, 0.499, 0.531, 0.557, 0.000, 0.000,
+                   0.323, 0.414, 0.631, 0.435, 0.521, 0.538, 0.674, 0.551, 0.431, 1.091, 0.000,
+                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+                   0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000,
+
+;scal_pos_gain_cor= .808,1.105,1.259,1.011, .872,1.016, .840,1.027,1.045, .786,1.007
+;                   .513, .893, .747, .897, .927, .847, .821, .929,1.147, .857, .501
+;                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+;                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+;scal_neg_gain_cor=1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+;                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+;                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+;                  1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000
+
+scal_pos_ped_limit =1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+
+scal_neg_ped_limit =1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+                    1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
+
+
+
+
+;#############################################################################
+;###########  GAIN_COR  MEAN VALUE FOR E93021("FPI")  ########################
+;                           (12/29/97)  
+;.............................................................................
+; .507, .460, .409, .522, .801, .515, .603, .376, .616, .653, .477
+; .539, .492, .669, .601, .997, .749, .492, .680, .702, .703, .682
+;1.003,1.024, .671, .503, .562, .543, .821,1.322, .636, .657, .511
+; .552, .857, .604, .843, .540, .533, .762, .554, .713, .687,1.028
+;.............................................................................
+;                               ########
+;                        ####################
+;#############################################################################
+;                        ####################
+;                               ########
+;............................................................................
+;
+;******************************************************************************
+;******************************************************************************
+;
+;*******************     DO YOU REALLY NEED ??    ***************************
+;*********                                                    ***************
+;****  OPTIMUM GAIN CORRECTION CONSTANTS FOR EACH KINEMATIC SET OF "FPI" ****
+;****                                                                    ****
+;*************************   IF YES !   THEN     ****************************
+;............................................................................ 
+;               ######  FOR  Q**2 = 0.6 ########
+;                       
+;               For Q**2=0.6; run #16984-17043
+;                        (12/14/97)
+;
+; .508, .466, .435, .534, .836, .511, .622, .386, .627, .694, .494
+; .543, .504, .707, .607,1.030, .753, .511, .704, .704, .723, .694
+;1.030,1.046, .727, .508, .592, .546, .847,1.392, .646, .686, .530
+; .552, .870, .643, .864, .579, .532, .789, .579, .734, .734,1.081
+;
+; ..........................................................................
+;              For Q**2=0.6; run #17142-17172
+;                       (12/14/97)
+;
+; .417, .383, .339, .416, .686, .442, .511, .317, .546, .552, .393
+; .446, .414, .552, .474, .846, .651, .419, .578, .613, .600, .575
+; .846, .859, .550, .396, .486, .472, .700,1.142, .562, .569, .440
+; .453, .714, .502, .674, .475, .460, .648, .475, .639, .609, .897
+;
+; ...........................................................................
+;
+;              For Q**2=0.6; run #17243-17315
+;                        (12/21/97)
+;
+; .511, .470, .417, .568, .851, .549, .634, .393, .609, .648, .461
+; .548, .509, .678, .647,1.050, .808, .520, .717, .683, .705, .675
+;1.040,1.056, .676, .541, .603, .586, .869,1.417, .630, .667, .516
+; .556, .877, .617, .920, .589, .571, .804, .589, .712, .714,1.052
+;
+;............................................................................
+;****************************************************************************
+;****************************************************************************
+;
+;             ############  Q**2=0.75  ##############
+;
+;............................................................................
+;             For Q**2=0.75; run #16959-16982
+;                      (12/24/97)
+;
+; .548, .503, .446, .547, .817, .526, .621, .385, .638, .692, .492
+; .585, .543, .725, .622,1.007, .775, .509, .702, .716, .721, .692
+;1.110,1.128, .745, .520, .579, .562, .845,1.388, .657, .685, .529
+; .595, .938, .659, .884, .566, .547, .788, .578, .747, .732,1.078
+;
+;............................................................................
+;            For Q**2=0.75; run #17044-17082
+;                       (12/22/97)
+;
+; .498, .457, .405, .497, .778, .501, .591, .367, .608, .659, .469
+; .532, .494, .659, .565, .959, .738, .485, .669, .682, .687, .659
+;1.009,1.025, .677, .473, .551, .535, .805,1.322, .626, .652, .504
+; .541, .853, .599, .804, .539, .521, .750, .550, .711, .697,1.027
+;
+;****************************************************************************
+;****************************************************************************
+;
+;              ############  Q**2=1.00  ##############
+;............................................................................
+;                For Q**2=1.00; run #16872-16958
+;                           (12/23/97)
+;
+; .543, .499, .443, .572, .817, .526, .621, .385, .675, .692, .492
+; .581, .539, .720, .650,1.007, .775, .509, .702, .784, .721, .692
+;1.103,1.120, .739, .544, .579, .562, .845,1.388, .720, .685, .529
+; .591, .932, .654, .925, .566, .547, .788, .578, .789, .732,1.078
+;
+;............................................................................
+;                For Q**2=1.00; run #17083-17141
+;                         (12/23/97)
+;
+; .473, .434, .385, .497, .778, .501, .591, .367, .608, .659, .469
+; .505, .469, .626, .565, .959, .738, .485, .669, .682, .687, .659
+; .959, .974, .643, .473, .551, .535, .805,1.322, .626, .652, .504
+; .514, .810, .569, .804, .539, .521, .750, .550, .711, .697,1.027
+;
+;
+;****************************************************************************
+;****************************************************************************
+;
+;              ############ Q**2=1.6  ###############
+;
+;
+;               For Q**2=1.6 ; run #17173-17242
+;                          (12/21/97)
+;
+; .547, .509, .437, .570, .864, .574, .649, .414, .636, .669, .563
+; .617, .513, .739, .698,1.125, .783, .516, .719, .763, .801, .817
+;1.033,1.089, .687, .585, .574, .568, .833,1.272, .677, .692, .551
+; .654, .944, .647, .910, .490, .578, .806, .559, .698, .629,1.031
+;
+; ...........................................................................
+;
+;               For Q**2=1.6 ; run #17340-17474
+;                          (12/22/97)
+;
+; .547, .509, .437, .568, .864, .574, .681, .414, .604, .669, .563
+; .617, .513, .739, .696,1.125, .783, .542, .719, .725, .801, .817
+;1.033,1.089, .687, .583, .574, .568, .875,1.272, .643, .692, .551
+; .654, .944, .647, .910, .490, .578, .846, .559, .663, .629,1.031
+; ...........................................................................
+;****************************************************************************
+;****************************************************************************
+
diff --git a/examples/PARAM/scal.pos b/examples/PARAM/scal.pos
new file mode 100644
index 0000000000000000000000000000000000000000..4289ec1f26fcfd949d9aae7d4be4898bcf73dca5
--- /dev/null
+++ b/examples/PARAM/scal.pos
@@ -0,0 +1,72 @@
+; neglect extra tubes for now
+scal_num_neg_columns = 2
+
+; Z position of front of shower counter layers
+      scal_1pr_zpos = (282.0+31.01)
+      scal_2ta_zpos = (293.0+31.01)
+      scal_3ta_zpos = (304.0+31.01)
+      scal_4ta_zpos = (315.0+31.01)
+; Thickness of shower counter blocks, blocks are 10 * 10 * 70 cm^3
+      scal_1pr_thick = 10.0
+      scal_2ta_thick = 10.0
+      scal_3ta_thick = 10.0
+      scal_4ta_thick = 10.0
+; Number of shower counter blocks per layer
+      scal_1pr_nr = 11
+      scal_2ta_nr = 11
+      scal_3ta_nr = 11
+      scal_4ta_nr = 11
+; X,Y positions of shower counter blocks
+      scal_1pr_left  =  35.0
+      scal_1pr_right = -35.0
+      scal_1pr_top   = (-55.0-5.64)
+                       (-45.0-5.64)
+                       (-35.0-5.64)
+                       (-25.0-5.64)
+                       (-15.0-5.64)
+                       ( -5.0-5.64)
+                       (  5.0-5.64)
+                       ( 15.0-5.64)
+                       ( 25.0-5.64)
+                       ( 35.0-5.64)
+                       ( 45.0-5.64)
+      scal_2ta_left  =  35.0
+      scal_2ta_right = -35.0
+      scal_2ta_top   = (-55.0-5.64)
+                       (-45.0-5.64)
+                       (-35.0-5.64)
+                       (-25.0-5.64)
+                       (-15.0-5.64)
+                       ( -5.0-5.64)
+                       (  5.0-5.64)
+                       ( 15.0-5.64)
+                       ( 25.0-5.64)
+                       ( 35.0-5.64)
+                       ( 45.0-5.64)
+      scal_3ta_left  =  35.0
+      scal_3ta_right = -35.0
+      scal_3ta_top   = (-55.0-5.64)
+                       (-45.0-5.64)
+                       (-35.0-5.64)
+                       (-25.0-5.64)
+                       (-15.0-5.64)
+                       ( -5.0-5.64)
+                       (  5.0-5.64)
+                       ( 15.0-5.64)
+                       ( 25.0-5.64)
+                       ( 35.0-5.64)
+                       ( 45.0-5.64)
+      scal_4ta_left  =  35.0
+      scal_4ta_right = -35.0
+      scal_4ta_top   = (-55.0-5.64)
+                       (-45.0-5.64)
+                       (-35.0-5.64)
+                       (-25.0-5.64)
+                       (-15.0-5.64)
+                       ( -5.0-5.64)
+                       (  5.0-5.64)
+                       ( 15.0-5.64)
+                       ( 25.0-5.64)
+                       ( 35.0-5.64)
+                       ( 45.0-5.64)
+
diff --git a/examples/PARAM/scer.param b/examples/PARAM/scer.param
new file mode 100644
index 0000000000000000000000000000000000000000..2cd98477597be963d21b35981bd569b0aac96d87
--- /dev/null
+++ b/examples/PARAM/scer.param
@@ -0,0 +1,39 @@
+scer_width = 30, 30, 30, 30
+; BAM 3/3/98 new adc_to_npe values
+;scer_adc_to_npe = 1/49.6., 1/70.0, 1/65.3, 1/55.3
+; DJM 8/9/03 using spe peaks
+;scer_adc_to_npe = 1/43., 1/43., 1/42., 1/50.
+
+; JS 6.17.4 using spe peaks (cosmics, run 48754)
+;scer_adc_to_npe = 1/50.8, 1/45.7, 1/47.9, 1/56.8
+; JS 6.19.4 using spe peaks (cosmics, run 48795)
+;scer_adc_to_npe = 1/48., 1/46., 1/50., 1/57.
+; JS 6.19.4 using spe peaks (electrons, run 48800)
+;scer_adc_to_npe = 1/42., 1/39., 1/50., 1/54.
+; JS 6.19.4 using spe peaks (electrons, run 48816)
+;                 top-l   top-r  bot-r  bot-l
+;scer_adc_to_npe = 1/42., 1/39., 1/49., 1/54.
+; JS 7.9.4 using spe peaks (electrons, run 49472)
+;                 top-l   top-r  bot-r  bot-l
+scer_adc_to_npe = 1/41., 1/45., 1/43., 1/55.
+
+scer_chi2max = 50.
+scer_beta_min = 0.8
+scer_beta_max = 1.2
+scer_et_min = .95
+scer_et_max = 2.0
+; guess for zpos.
+scer_mirror_zpos = 180
+
+; scer_region: 8 values for each region (1 per mirror + sum)
+; central x,y,dx,dy values and x,y,dx,dy half widths.
+scer_region =   30,   30,  -15,  -15,   7.
+                -8,    8,   -8,    8,   0.
+                 0,    0,    0,    0,   0.
+                 0,    0,    0,    0,   0.
+                25,   25,   25,   25,  45.
+                10,   10,   10,   10,  15.
+               .15,  .15,  .15,  .15,  .15
+               .05,  .05,  .05,  .05,  .05
+
+scer_ped_limit =  1000,1000,1000,1000
diff --git a/examples/PARAM/sdc.param b/examples/PARAM/sdc.param
new file mode 100644
index 0000000000000000000000000000000000000000..ee35e9596f05de5216b5c7544246b3bc87074782
--- /dev/null
+++ b/examples/PARAM/sdc.param
@@ -0,0 +1,55 @@
+;---------------------------------------------------------------------
+; SOS_TRACKING
+; CTP parameter file containing all tracking parameters for the SOS
+;----------------------------------------------------------------------
+; Names of each wire plane
+;      sdc_plane_names = 'sos1u1'
+;                        'sos1u2'
+;                        'sos1x1'
+;                        'sos1x2'
+;                        'sos1v1'
+;                        'sos1v2'
+;                        'sos2u1'
+;                        'sos2u2'
+;                        'sos2x1'
+;                        'sos2x2'
+;                        'sos2v1'
+;                        'sos2v2'
+; sigma of wire chamber resolution for each plane
+      sdc_sigma = 0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+; sos dc tdc minimum tdc value array allowed for a good hit
+    sdc_tdc_min_win = 2600, 2600, 2600, 2600, 2600, 2600
+                      2600, 2600, 2600, 2600, 2600, 2600
+; sos dc tdc maximum tdc value array allowed for a good hit
+    sdc_tdc_max_win = 3180, 3180, 3180, 3180, 3180, 3180
+                      3180, 3180, 3180, 3180, 3180, 3180
+; sos drift chamber tdc's time per channel
+        sdc_tdc_time_per_channel = 0.5
+; sos zero time for drift chambers	!DECREASING this number moves the sdtime plots to LOWER time.
+       sdc_plane_time_zero = (1440-10+26+86+30+2)
+                             (1440-9.5+22+90+30+4)
+                             (1440-9.25+22+94+30+4)
+                             (1440-12+28+84+30+4)
+                             (1440-11+24+86+30+2)
+                             (1440-11+26+86+30+4)
+                             (1440-11.5+24+86+30+6)
+                             (1440-14+22+90+30+4)
+                             (1440-13.5+22+84+30+4)
+                             (1440-13.5+24+74+30+4)
+                             (1440-11.5+22+82+30+4)
+                             (1440-13.25+24+80+30+4)
+; Dave Abbott's wire velocity correction
+sdc_wire_velocity = 13.0
+sdc_central_time = 2.8,2.8,1.5,1.5,2.8,2.8
+                   2.8,2.8,1.5,1.5,2.8,2.8
diff --git a/examples/PARAM/sdc.param.bak b/examples/PARAM/sdc.param.bak
new file mode 100644
index 0000000000000000000000000000000000000000..77ded20b7f760e84c2c80cca4ccc0efe03b25d59
--- /dev/null
+++ b/examples/PARAM/sdc.param.bak
@@ -0,0 +1,55 @@
+;---------------------------------------------------------------------
+; SOS_TRACKING
+; CTP parameter file containing all tracking parameters for the SOS
+;----------------------------------------------------------------------
+; Names of each wire plane
+;      sdc_plane_names = 'sos1u1'
+;                        'sos1u2'
+;                        'sos1x1'
+;                        'sos1x2'
+;                        'sos1v1'
+;                        'sos1v2'
+;                        'sos2u1'
+;                        'sos2u2'
+;                        'sos2x1'
+;                        'sos2x2'
+;                        'sos2v1'
+;                        'sos2v2'
+; sigma of wire chamber resolution for each plane
+      sdc_sigma = 0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+                  0.020
+; sos dc tdc minimum tdc value array allowed for a good hit
+    sdc_tdc_min_win = 2600, 2600, 2600, 2600, 2600, 2600
+                      2600, 2600, 2600, 2600, 2600, 2600
+; sos dc tdc maximum tdc value array allowed for a good hit
+    sdc_tdc_max_win = 3180, 3180, 3180, 3180, 3180, 3180
+                      3180, 3180, 3180, 3180, 3180, 3180
+; sos drift chamber tdc's time per channel
+        sdc_tdc_time_per_channel = 0.5
+; sos zero time for drift chambers	!DECREASING this number moves the sdtime plots to LOWER time.
+       sdc_plane_time_zero = (1440-10+26+86+30+30)
+                             (1440-9.5+22+90+30+28)
+                             (1440-9.25+22+94+30+28)
+                             (1440-12+28+84+30+26)
+                             (1440-11+24+86+30+30)
+                             (1440-11+26+86+30+30)
+                             (1440-11.5+24+86+30+28)
+                             (1440-14+22+90+30+26)
+                             (1440-13.5+22+84+30+26)
+                             (1440-13.5+24+74+30+28)
+                             (1440-11.5+22+82+30+26)
+                             (1440-13.25+24+80+30+26)
+; Dave Abbott's wire velocity correction
+sdc_wire_velocity = 13.0
+sdc_central_time = 2.8,2.8,1.5,1.5,2.8,2.8
+                   2.8,2.8,1.5,1.5,2.8,2.8
diff --git a/examples/PARAM/sdc.pos b/examples/PARAM/sdc.pos
new file mode 100644
index 0000000000000000000000000000000000000000..015bb095b00e962a5384f0794b242c5a86450525
--- /dev/null
+++ b/examples/PARAM/sdc.pos
@@ -0,0 +1,216 @@
+; Number of planes installed in SOS detector setup
+      sdc_num_planes = 12
+; Number of chambers installed in SOS detector setup
+      sdc_num_chambers = 2
+; Z positions of various planes in SOS chambers
+; sdc_n_zpos is the surveyed Z position of the center of chamber n.
+      sdc_1_zpos = (-24.76+31.01)
+      sdc_2_zpos = ( 24.76+31.01)
+;      sdc_3_zpos =(247.50+31.01)
+      sdc_zpos   = sdc_1_zpos - 1.5875
+                   sdc_1_zpos - 0.9525
+                   sdc_1_zpos - 0.3175
+                   sdc_1_zpos + 0.3175
+                   sdc_1_zpos + 0.9525
+                   sdc_1_zpos + 1.5875
+                   sdc_2_zpos - 1.5875
+                   sdc_2_zpos - 0.9525
+                   sdc_2_zpos - 0.3175
+                   sdc_2_zpos + 0.3175
+                   sdc_2_zpos + 0.9525
+                   sdc_2_zpos + 1.5875
+; Angle alpha of wires in wire chamber planes (.051,.045 degrees roll in dc1,2)
+      sdc_alpha_angle = ( 30-.051)*raddeg
+                        ( 30-.051)*raddeg
+                        ( 90-.051)*raddeg
+                        ( 90-.051)*raddeg
+                        (150-.051)*raddeg
+                        (150-.051)*raddeg
+                        ( 30-.045)*raddeg
+                        ( 30-.045)*raddeg
+                        ( 90-.045)*raddeg
+                        ( 90-.045)*raddeg
+                        (150-.045)*raddeg
+                        (150-.045)*raddeg
+; Angle beta of wires in wire chamber planes
+      sdc_beta_angle =   -0.052*raddeg
+                         -0.052*raddeg
+                         -0.052*raddeg
+                         -0.052*raddeg
+                         -0.052*raddeg
+                         -0.052*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+                         -0.182*raddeg
+; Angle gamma of wires in wire chamber planes
+      sdc_gamma_angle = -0.070*raddeg
+                        -0.070*raddeg
+                        -0.070*raddeg
+                        -0.070*raddeg
+                        -0.070*raddeg
+                        -0.070*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+                        -0.257*raddeg
+; Pitch
+      sdc_pitch = 1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+                  1.0000
+; Number of wires per plane
+      sdc_nrwire = 48
+                   48
+                   64
+                   64
+                   48
+                   48
+                   48
+                   48
+                   64
+                   64
+                   48
+                   48
+; X,Y position of center of wire chamber
+; The given value is subtracted from the position of the wire (i.e.
+; the sign is opposite of the actual center position of the chamber).
+; Increasing dc2 coordinates increases dpos histograms.
+; Values are from jan17, 1996 survey memo.  values ARE corrected for
+; 18 degree (optical axis) vs 17.85 degree (survey axis) discrepensy.
+      sdc_xcenter = (8.488-3.982)
+                    (-1.822+1.825+0.35)
+      sdc_ycenter =(+0.007+.388+0.2)
+                   (-0.197+0.379+0.2)
+;;      sdc_xcenter = 8.488
+;;                   -1.822
+;;      sdc_ycenter =+0.007
+;;                   -0.197
+;
+;  sdc_ycenter(2) was -.197 from survey.  -.087 is DD's correction 
+;   based on (e,e'p) data (centering Em,Pm).
+;
+
+; Wire number of center of wire chamber
+; Note the convention : x : low number =  -x , u,v : low number = "-x"
+; x1 and x2, u1 and u2, v1 and v2 are offset by half a cell length
+; assume 1st wire of 1st dc of a set is closest to edge where counting starts
+      sdc_central_wire = (24.75+.008+.0019)
+                         (24.25-.008+.0064)
+                         (32.75-.001-.0105)
+                         (32.25+.001+.0021)
+                         (24.25+.003+.0019)
+                         (24.75-.003+.0075)
+                         (24.75-.001-.0019)
+                         (24.25+.001-.0078+.0120)
+                         (32.75+.002-.0104-.0067)
+                         (32.25-.002-.0007-.0053)
+                         (24.25-.003-.0008-.0015)
+                         (24.75+.003-.0081+.0131)
+; with shifts to make resiudals line up with each other.
+;      sdc_central_wire = (24.75+.008)
+;                         (24.25-.008)
+;                         32.75
+;                         32.25
+;                         (24.25+.002)
+;                         (24.75-.002)
+;                         24.75
+;                         24.25
+;                         (32.75+.003)
+;                         (32.25-.003)
+;                         (24.25-.003)
+;                         (24.75+.003)
+; nov95 online values
+;      sdc_central_wire = (24.75+.008)
+;                         (24.25-.008)
+;                         (32.75-.009)
+;                         (32.25+.009)
+;                         24.25
+;                         24.75
+;                         (24.75-.005)
+;                         (24.25+.005)
+;                         32.75
+;                         32.25
+;                         (24.25-.006)
+;                         (24.75+.006)
+; s_chamber_planes    array giving the chamber number for each plane
+      sdc_chamber_planes = 1
+                           1
+                           1
+                           1
+                           1
+                           1
+                           2
+                           2
+                           2
+                           2
+                           2
+                           2
+; The hms readout numbers some planes in reverse order.
+; I (SAW) think that the SOS readout numbers are always in forward order
+; The following array is a flag on the order number.
+; If sdc_wire_counting(plane) = 0
+;  the wire center is at (wire - sdc_central_wire) * pitch
+; If sdc_wire_counting(plane) = 1
+;  the wire center is at ( sdc_nrwire + 1 - wire - sdc_central_wire) * pitch
+        sdc_wire_counting = 1
+                            0
+                            1
+                            0
+                            0
+                            1
+                            1
+                            0
+                            1
+                            0
+                            0
+                            1
+; The velocity correction is the distance from the center of the wire divided
+; by the velocity of propagation times sdc_drifttime_sign(pln).  +/-1
+; for disc. card at +/- coord. (i.e. top = -x direction, so top readout is +1)
+;
+; THESE ARE NOTHING BUT BAD GUESSES AT THE MOMENT!!!!
+;
+       sdc_drifttime_sign =  +1
+                             -1
+                             -1
+                             +1
+                             +1
+                             -1
+                             +1
+                             -1
+                             -1
+                             +1
+                             +1
+                             -1
+; Names of each wire plane
+;      sdc_plane_names = 'sos1u1'
+;                        'sos1u2'
+;                        'sos1x1'
+;                        'sos1x2'
+;                        'sos1v1'
+;                        'sos1v2'
+;                        'sos2u1'
+;                        'sos2u2'
+;                        'sos2x1'
+;                        'sos2x2'
+;                        'sos2v1'
+;                        'sos2v2'
+;                        'sos3u1'
+;                        'sos3u2'
+;                        'sos3x1'
+;                        'sos3x2'
+;                        'sos3v1'
+;                        'sos3v2'
diff --git a/examples/PARAM/sdc_offsets.param b/examples/PARAM/sdc_offsets.param
new file mode 100644
index 0000000000000000000000000000000000000000..596e78025531045597ed372bdcea6764a00563a8
--- /dev/null
+++ b/examples/PARAM/sdc_offsets.param
@@ -0,0 +1,71 @@
+; cable id's for SOS Drift Chambers
+; array is 64,12 (wires,planes)), but u and v planes have only 48/64 used.
+
+sdc_card_no=
+; Plane 1, wires 1-48, 16 per card
+              1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
+              2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
+              3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 2, wires 1-48, 16 per card
+              4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4
+              5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5
+              6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 3, wires 1-64, 16 per card
+              7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7
+              8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8
+              9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9
+             10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10
+; Plane 4, wires 1-64, 16 per card
+             11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11
+             12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12
+             13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13
+             14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14
+; Plane 5, wires 1-48, 16 per card
+             15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15
+             16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16
+             17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 6, wires 1-48, 16 per card
+             18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18
+             19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19
+             20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 1, wires 1-48, 16 per card
+             21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21
+             22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22
+             23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 2, wires 1-48, 16 per card
+             24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24
+             25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25
+             26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 3, wires 1-64, 16 per card
+             27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27
+             28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28
+             29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29
+             30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30
+; Plane 4, wires 1-64, 16 per card
+             31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31
+             32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32
+             33,33,33,33,33,33,33,33,33,33,33,33,33,33,33,33
+             34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34
+; Plane 5, wires 1-48, 16 per card
+             35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35
+             36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36
+             37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+; Plane 6, wires 1-48, 16 per card
+             38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38
+             39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39
+             40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40
+             -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
+;
+;       Cable Delays on a per/card basys
+;
+sdc_card_delay =  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+                  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
diff --git a/examples/PARAM/sdebug.param b/examples/PARAM/sdebug.param
new file mode 100644
index 0000000000000000000000000000000000000000..ab34b9b402d74d79ffefa23b467fc60bc7f85cd8
--- /dev/null
+++ b/examples/PARAM/sdebug.param
@@ -0,0 +1,127 @@
+; sos tracking code debug flags.
+; when these flags are non-zero, dump routines are called to
+; print out the data banks for each event.
+;
+;  sluno     fortran lun for output
+      sluno = 6
+; sdebugdumptof           Dump timing information for fitting offsets for old CSA method
+      sdebugdumptof = 0
+; sdumptof           Dump timing information for fitting offsets, new way
+; Done from h_tof.f. Add particle ID cuts if desired
+; Note: don't set both hdumptof=1 and hdebugdumptof=1 at same time
+;       because they both use fort.37 for the output
+      sdumptof = 0
+;; sdebugdumpcal           Dump calorimeter information for fitting gains
+      sdebugdumpcal = 0
+; number of pedestal events required to overwrite orig. peds.
+  shodo_min_peds = 500
+  scal_min_peds  = 500
+  scer_min_peds  = 500
+  saer_min_peds = 500
+  sluc_min_peds = 500
+
+
+; DEBUGGING OUTPUT FLAGS
+; ----------------------
+; sdebugprintrawdc        Dump SDC_RAW_DC bank
+      sdebugprintrawdc = 0
+; sdebugprintdecodeddc    DUMP SDC_DECODED_DC bank
+      sdebugprintdecodeddc = 0
+; sdebugflagpsi               Dump calculated coordinate positions
+      sdebugflagpsi =  0
+; sdebugflaggeoemtry          Dump calculated geometrical parameters
+      sdebugflaggeometry = 0
+; sdebugflagpr                Dump intermediate pattern recognition results
+      sdebugflagpr = 0
+; sdebugflagstubchisq         Dump chi2 of left-right fits
+      sdebugstubchisq = 0
+; sdebugflagstubs             Dump stub fit results
+      sdebugflagstubs = 0
+; sdebuglinkstubs             Dump link stub results
+      sdebuglinkstubs = 0
+; sdebugtrackprint            Dump focal plane track fit results
+      sdebugtrackprint = 0
+; sdebugtartrackprint         Dump tracks at target
+      sdebugtartrackprint = 0
+; tof debuging
+;
+;  sdebugprintscinraw         Dump SOS_RAW_SCIN
+    sdebugprintscinraw = 0
+;  sdebugprintscindec         Dump SOS_DECODED_SCIN
+    sdebugprintscindec = 0
+;  sdebugprinttoftracks       Dump  sos_scin_tof
+    sdebugprinttoftracks = 0
+;  sdebugprinttracktests      Dump SOS_TRACK_TESTS
+    sdebugprinttracktests = 0
+;
+;
+;  sos calorimeter debug flags
+;  slun_dbg_cal        lun for output
+   slun_dbg_cal   = sluno
+;  sdbg_raw_cal        call s_prt_cal_raw
+   sdbg_raw_cal = 0
+;  sdbg_sparsified_cal call s_prt_cal_sparsified
+   sdbg_sparsified_cal = 0
+;  sdbg_decoded_cal    call s_prt_cal_decoded
+   sdbg_decoded_cal = 0
+;  sdbg_clusters_cal   call s_prt_cal_clusters
+   sdbg_clusters_cal = 0
+;  sdbg_tracks_cal     call s_prt_cal_tracks
+   sdbg_tracks_cal = 0
+;  sdbg_tests_cal      call s_prt_cal_tests    SOS_TRACK_TESTS
+   sdbg_tests_cal = 0
+;
+;  hard wired histograms. If these flags .ne. 0 then the histogram
+;     blocks are filled
+;
+; sturnon_scin_raw_hist       Histogram SOS raw hodoscope data (all blocks)
+  sturnon_scin_raw_hist = 1
+; sturnon_decoded_dc_hist     Histogram SOS_DECODED_DC
+  sturnon_decoded_dc_hist = 1
+; sturnon_focal_plane_hist    Histogram SOS_FOCAL_PLANE
+  sturnon_focal_plane_hist = 1
+; sturnon_target_hist         HISTOGRAM SOS_TARGET
+  sturnon_target_hist = 1
+;
+; Bypass paramters to bypass code elementes in s_reconstruction
+;      Stored in sosbypass_switches.cmn
+;      Code element is bypassed if switch .ne. 0
+; sbypass_trans_dc         bypass s_trans_dc
+  sbypass_trans_dc   = 0
+; sbypass_track            bypass s_track
+  sbypass_track      = 0
+; sbypass_targ_trans       bypass s_targ_trans
+  sbypass_targ_trans = 0
+; sbypass_dc_eff           bypass s_dc_eff and s_dc_eff_shutdown
+  sbypass_dc_eff     = 0
+; sbypass_track_eff        bypass s_tracking efficiency code
+  sbypass_track_eff  = 0
+; sbypass_track_eff_files  bypass s_tracking efficiency output files
+  sbypass_track_eff_files  = 1
+
+; sbypass_trans_scin       bypass s_trans_scin
+  sbypass_trans_scin = 0
+; sbypass_tof              bypass s_tof
+  sbypass_tof        = 0
+; sbypass_scin_eff         bypass s_scin_eff and s_scin_eff_shutdown
+  sbypass_scin_eff   = 0
+
+; sbypass_trans_cer        bypass s_trans_cer
+  sbypass_trans_cer  = 0
+; sbypass_cer              bypass s_cer, (a dummy routine)
+  sbypass_cer        = 1
+; sbypass_cer_eff          bypass s_cer_eff and s_cer_eff_shutdown
+  sbypass_cer_eff    = 0
+
+; sbypass_aero              bypass s_aero
+  sbypass_aero        = 0
+
+; sbypass_trans_cal        bypass s_trans_cal
+  sbypass_trans_cal  = 0
+; sbypass_cal              bypass s_cal
+  sbypass_cal        = 0
+; sbypass_cal_eff          bypass s_cal_eff and s_cal_eff_shutdown
+  sbypass_cal_eff    = 0
+
+; sbypass_physics          bypass s_physics
+  sbypass_physics    = 0
diff --git a/examples/PARAM/sdriftmap.param b/examples/PARAM/sdriftmap.param
new file mode 100644
index 0000000000000000000000000000000000000000..f14c9ee645bfb76a0dc98156258176191398f426
--- /dev/null
+++ b/examples/PARAM/sdriftmap.param
@@ -0,0 +1,175 @@
+; Lookup table
+;number of bins in Meek's time to distance lookup table
+sdriftbins=138
+;number of 1st bin in Meek's table in ns
+sdrift1stbin=-24
+;bin size in ns of Meek's table
+sdriftbinsz=2
+swc1u1fract=0.0002,0.0005,0.0009,0.0011,0.0015,0.0018,0.0022,0.0027
+0.0029,0.0033,0.0038,0.0044,0.0048,0.0051,0.0057,0.0070,0.0090,0.0121
+0.0167,0.0217,0.0282,0.0371,0.0467,0.0582,0.0723,0.0873,0.1038,0.1211
+0.1409,0.1609,0.1826,0.2060,0.2302,0.2542,0.2796,0.3043,0.3294,0.3555
+0.3819,0.4085,0.4343,0.4618,0.4890,0.5140,0.5384,0.5635,0.5880,0.6100
+0.6311,0.6522,0.6722,0.6928,0.7120,0.7316,0.7495,0.7684,0.7853,0.8026
+0.8191,0.8334,0.8491,0.8629,0.8771,0.8888,0.8994,0.9089,0.9170,0.9242
+0.9308,0.9364,0.9411,0.9457,0.9496,0.9538,0.9571,0.9602,0.9630,0.9654
+0.9679,0.9698,0.9718,0.9735,0.9750,0.9765,0.9778,0.9791,0.9804,0.9815
+0.9825,0.9833,0.9844,0.9851,0.9855,0.9862,0.9870,0.9874,0.9877,0.9883
+0.9889,0.9893,0.9895,0.9898,0.9901,0.9904,0.9910,0.9918,0.9923,0.9927
+0.9930,0.9935,0.9937,0.9941,0.9943,0.9947,0.9949,0.9952,0.9957,0.9962
+0.9964,0.9966,0.9970,0.9973,0.9975,0.9977,0.9979,0.9982,0.9986,0.9988
+0.9990,0.9991,0.9994,0.9995,0.9998,0.9999,1.0000,1.0000,1.0000,1.0000
+swc1x1fract=0.0004,0.0006,0.0008,0.0010,0.0012,0.0015,0.0017,0.0021
+0.0025,0.0028,0.0031,0.0033,0.0036,0.0041,0.0045,0.0051,0.0060,0.0075
+0.0104,0.0138,0.0191,0.0265,0.0356,0.0463,0.0596,0.0743,0.0916,0.1114
+0.1316,0.1533,0.1757,0.1988,0.2209,0.2455,0.2689,0.2945,0.3196,0.3437
+0.3697,0.3950,0.4196,0.4448,0.4702,0.4953,0.5186,0.5416,0.5650,0.5877
+0.6099,0.6316,0.6519,0.6719,0.6909,0.7099,0.7277,0.7463,0.7645,0.7821
+0.7979,0.8154,0.8320,0.8477,0.8612,0.8740,0.8865,0.8973,0.9077,0.9161
+0.9234,0.9301,0.9351,0.9406,0.9454,0.9497,0.9531,0.9570,0.9605,0.9631
+0.9660,0.9690,0.9713,0.9728,0.9748,0.9762,0.9775,0.9786,0.9800,0.9807
+0.9818,0.9827,0.9833,0.9843,0.9849,0.9857,0.9861,0.9866,0.9871,0.9877
+0.9883,0.9887,0.9891,0.9895,0.9898,0.9901,0.9907,0.9913,0.9916,0.9918
+0.9921,0.9925,0.9929,0.9931,0.9935,0.9940,0.9944,0.9946,0.9949,0.9952
+0.9956,0.9960,0.9966,0.9968,0.9970,0.9972,0.9974,0.9976,0.9979,0.9980
+0.9984,0.9985,0.9988,0.9990,0.9991,0.9993,0.9996,0.9998,0.9999,1.0000
+swc1v1fract=0.0002,0.0006,0.0008,0.0011,0.0013,0.0016,0.0019,0.0020
+0.0022,0.0025,0.0030,0.0035,0.0038,0.0042,0.0049,0.0057,0.0076,0.0103
+0.0149,0.0200,0.0273,0.0353,0.0455,0.0574,0.0719,0.0865,0.1045,0.1224
+0.1416,0.1630,0.1844,0.2074,0.2317,0.2555,0.2807,0.3046,0.3298,0.3553
+0.3826,0.4075,0.4316,0.4563,0.4823,0.5065,0.5315,0.5554,0.5781,0.6014
+0.6235,0.6434,0.6643,0.6853,0.7050,0.7238,0.7415,0.7602,0.7787,0.7975
+0.8152,0.8307,0.8456,0.8595,0.8723,0.8851,0.8957,0.9043,0.9126,0.9205
+0.9276,0.9330,0.9383,0.9437,0.9484,0.9521,0.9553,0.9582,0.9607,0.9634
+0.9657,0.9676,0.9701,0.9722,0.9738,0.9755,0.9767,0.9781,0.9794,0.9804
+0.9814,0.9825,0.9835,0.9842,0.9847,0.9853,0.9861,0.9866,0.9871,0.9878
+0.9882,0.9888,0.9891,0.9897,0.9900,0.9903,0.9909,0.9910,0.9917,0.9919
+0.9924,0.9929,0.9937,0.9939,0.9944,0.9948,0.9954,0.9956,0.9961,0.9966
+0.9968,0.9972,0.9974,0.9978,0.9980,0.9981,0.9984,0.9986,0.9989,0.9991
+0.9995,0.9996,0.9998,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+swc1u2fract=0.0003,0.0004,0.0008,0.0011,0.0015,0.0018,0.0021,0.0024
+0.0027,0.0030,0.0033,0.0037,0.0039,0.0043,0.0046,0.0049,0.0059,0.0073
+0.0094,0.0129,0.0184,0.0267,0.0352,0.0446,0.0563,0.0707,0.0863,0.1030
+0.1206,0.1411,0.1629,0.1845,0.2087,0.2325,0.2578,0.2837,0.3091,0.3357
+0.3606,0.3867,0.4119,0.4362,0.4608,0.4857,0.5099,0.5349,0.5587,0.5814
+0.6047,0.6260,0.6480,0.6685,0.6892,0.7099,0.7282,0.7456,0.7643,0.7812
+0.7988,0.8141,0.8309,0.8454,0.8616,0.8738,0.8847,0.8955,0.9049,0.9133
+0.9199,0.9274,0.9341,0.9399,0.9445,0.9489,0.9529,0.9561,0.9593,0.9620
+0.9645,0.9667,0.9689,0.9701,0.9720,0.9740,0.9756,0.9771,0.9785,0.9796
+0.9808,0.9816,0.9823,0.9832,0.9839,0.9846,0.9854,0.9860,0.9867,0.9874
+0.9876,0.9881,0.9885,0.9889,0.9895,0.9900,0.9902,0.9907,0.9910,0.9916
+0.9919,0.9923,0.9927,0.9930,0.9934,0.9937,0.9942,0.9945,0.9949,0.9953
+0.9957,0.9962,0.9965,0.9968,0.9971,0.9973,0.9976,0.9979,0.9981,0.9984
+0.9986,0.9988,0.9989,0.9993,0.9995,0.9998,0.9999,0.9999,1.0000,1.0000
+swc1x2fract=0.0002,0.0005,0.0008,0.0011,0.0014,0.0017,0.0021,0.0025
+0.0027,0.0031,0.0032,0.0034,0.0040,0.0045,0.0052,0.0065,0.0083,0.0112
+0.0150,0.0200,0.0264,0.0341,0.0435,0.0560,0.0701,0.0862,0.1027,0.1210
+0.1417,0.1628,0.1833,0.2069,0.2301,0.2547,0.2799,0.3062,0.3314,0.3582
+0.3860,0.4141,0.4390,0.4656,0.4903,0.5161,0.5410,0.5649,0.5874,0.6090
+0.6298,0.6507,0.6721,0.6923,0.7117,0.7312,0.7510,0.7706,0.7881,0.8052
+0.8204,0.8360,0.8525,0.8666,0.8793,0.8906,0.9019,0.9103,0.9194,0.9274
+0.9340,0.9397,0.9442,0.9483,0.9523,0.9557,0.9596,0.9625,0.9653,0.9678
+0.9698,0.9718,0.9732,0.9751,0.9768,0.9782,0.9793,0.9804,0.9813,0.9821
+0.9828,0.9834,0.9842,0.9848,0.9852,0.9857,0.9861,0.9864,0.9872,0.9877
+0.9880,0.9886,0.9889,0.9894,0.9898,0.9903,0.9908,0.9915,0.9921,0.9924
+0.9927,0.9930,0.9935,0.9939,0.9943,0.9945,0.9949,0.9952,0.9957,0.9960
+0.9963,0.9965,0.9967,0.9972,0.9975,0.9979,0.9980,0.9985,0.9987,0.9988
+0.9990,0.9991,0.9992,0.9995,0.9997,1.0000,1.0000,1.0000,1.0000,1.0000
+swc1v2fract=0.0004,0.0006,0.0008,0.0012,0.0013,0.0016,0.0018,0.0021
+0.0024,0.0027,0.0029,0.0032,0.0036,0.0039,0.0043,0.0049,0.0063,0.0080
+0.0113,0.0155,0.0218,0.0300,0.0397,0.0508,0.0645,0.0793,0.0949,0.1135
+0.1343,0.1560,0.1786,0.2019,0.2250,0.2498,0.2756,0.3011,0.3270,0.3526
+0.3778,0.4042,0.4299,0.4570,0.4821,0.5077,0.5311,0.5540,0.5784,0.6010
+0.6219,0.6429,0.6633,0.6830,0.7023,0.7214,0.7403,0.7590,0.7786,0.7948
+0.8118,0.8288,0.8444,0.8587,0.8725,0.8842,0.8946,0.9044,0.9136,0.9208
+0.9264,0.9323,0.9377,0.9428,0.9472,0.9506,0.9541,0.9576,0.9602,0.9635
+0.9656,0.9675,0.9695,0.9715,0.9732,0.9751,0.9768,0.9777,0.9789,0.9802
+0.9809,0.9819,0.9828,0.9835,0.9841,0.9850,0.9858,0.9863,0.9866,0.9870
+0.9875,0.9880,0.9884,0.9888,0.9894,0.9899,0.9901,0.9905,0.9909,0.9912
+0.9917,0.9919,0.9922,0.9926,0.9931,0.9936,0.9941,0.9945,0.9951,0.9954
+0.9959,0.9962,0.9964,0.9967,0.9969,0.9971,0.9975,0.9978,0.9980,0.9983
+0.9986,0.9988,0.9991,0.9995,0.9998,0.9999,0.9999,0.9999,1.0000,1.0000
+swc2u1fract=0.0001,0.0003,0.0007,0.0011,0.0015,0.0017,0.0022,0.0026
+0.0029,0.0033,0.0037,0.0041,0.0044,0.0047,0.0052,0.0057,0.0064,0.0078
+0.0105,0.0148,0.0199,0.0274,0.0372,0.0481,0.0605,0.0754,0.0916,0.1092
+0.1293,0.1501,0.1743,0.1995,0.2251,0.2499,0.2738,0.2990,0.3248,0.3498
+0.3758,0.4018,0.4279,0.4509,0.4747,0.4985,0.5225,0.5461,0.5710,0.5925
+0.6138,0.6357,0.6544,0.6749,0.6945,0.7130,0.7315,0.7496,0.7668,0.7838
+0.8023,0.8181,0.8331,0.8484,0.8641,0.8776,0.8902,0.9013,0.9114,0.9193
+0.9277,0.9345,0.9411,0.9456,0.9503,0.9539,0.9576,0.9604,0.9639,0.9664
+0.9687,0.9713,0.9736,0.9754,0.9772,0.9784,0.9804,0.9817,0.9827,0.9837
+0.9848,0.9859,0.9865,0.9874,0.9882,0.9887,0.9890,0.9896,0.9900,0.9905
+0.9908,0.9910,0.9917,0.9923,0.9926,0.9928,0.9931,0.9931,0.9937,0.9941
+0.9945,0.9946,0.9947,0.9949,0.9953,0.9955,0.9957,0.9962,0.9965,0.9968
+0.9972,0.9974,0.9977,0.9979,0.9980,0.9981,0.9984,0.9986,0.9987,0.9989
+0.9991,0.9993,0.9995,0.9997,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000
+swc2x1fract=0.0002,0.0005,0.0008,0.0013,0.0015,0.0016,0.0020,0.0023
+0.0026,0.0032,0.0034,0.0037,0.0040,0.0042,0.0045,0.0049,0.0058,0.0073
+0.0102,0.0144,0.0205,0.0283,0.0384,0.0509,0.0655,0.0813,0.0989,0.1176
+0.1373,0.1586,0.1804,0.2044,0.2293,0.2539,0.2799,0.3067,0.3324,0.3580
+0.3827,0.4086,0.4309,0.4561,0.4799,0.5024,0.5249,0.5480,0.5703,0.5918
+0.6130,0.6341,0.6562,0.6765,0.6960,0.7145,0.7342,0.7529,0.7720,0.7908
+0.8085,0.8242,0.8398,0.8556,0.8703,0.8845,0.8968,0.9072,0.9171,0.9252
+0.9315,0.9381,0.9444,0.9492,0.9535,0.9576,0.9609,0.9641,0.9671,0.9699
+0.9725,0.9749,0.9767,0.9787,0.9802,0.9816,0.9826,0.9839,0.9849,0.9859
+0.9869,0.9874,0.9879,0.9886,0.9892,0.9898,0.9901,0.9904,0.9907,0.9910
+0.9915,0.9919,0.9921,0.9924,0.9927,0.9929,0.9932,0.9934,0.9938,0.9940
+0.9944,0.9947,0.9950,0.9953,0.9955,0.9960,0.9962,0.9966,0.9969,0.9972
+0.9973,0.9975,0.9978,0.9979,0.9983,0.9985,0.9989,0.9991,0.9993,0.9996
+0.9998,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+swc2v1fract=0.0003,0.0007,0.0010,0.0013,0.0015,0.0017,0.0020,0.0023
+0.0025,0.0026,0.0029,0.0030,0.0033,0.0035,0.0041,0.0045,0.0052,0.0063
+0.0086,0.0125,0.0181,0.0261,0.0352,0.0449,0.0587,0.0729,0.0884,0.1060
+0.1270,0.1481,0.1704,0.1935,0.2166,0.2421,0.2665,0.2920,0.3182,0.3436
+0.3685,0.3955,0.4212,0.4456,0.4698,0.4942,0.5177,0.5409,0.5653,0.5878
+0.6104,0.6323,0.6522,0.6734,0.6920,0.7121,0.7325,0.7517,0.7704,0.7882
+0.8068,0.8234,0.8394,0.8538,0.8676,0.8807,0.8932,0.9048,0.9135,0.9215
+0.9287,0.9352,0.9404,0.9456,0.9500,0.9544,0.9581,0.9619,0.9648,0.9676
+0.9701,0.9723,0.9744,0.9766,0.9783,0.9799,0.9811,0.9822,0.9838,0.9847
+0.9857,0.9864,0.9870,0.9878,0.9883,0.9888,0.9896,0.9902,0.9905,0.9910
+0.9916,0.9920,0.9925,0.9928,0.9932,0.9938,0.9941,0.9945,0.9948,0.9951
+0.9953,0.9956,0.9959,0.9962,0.9964,0.9966,0.9968,0.9972,0.9973,0.9975
+0.9977,0.9980,0.9983,0.9984,0.9986,0.9989,0.9991,0.9992,0.9995,0.9997
+0.9999,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+swc2u2fract=0.0002,0.0006,0.0009,0.0011,0.0016,0.0019,0.0023,0.0025
+0.0027,0.0029,0.0032,0.0034,0.0039,0.0042,0.0046,0.0053,0.0063,0.0087
+0.0114,0.0159,0.0214,0.0290,0.0377,0.0506,0.0640,0.0805,0.0978,0.1170
+0.1374,0.1581,0.1808,0.2040,0.2279,0.2523,0.2753,0.3003,0.3265,0.3511
+0.3779,0.4027,0.4274,0.4533,0.4774,0.4995,0.5205,0.5442,0.5659,0.5905
+0.6120,0.6339,0.6556,0.6751,0.6953,0.7149,0.7348,0.7528,0.7699,0.7874
+0.8063,0.8219,0.8370,0.8527,0.8668,0.8802,0.8923,0.9034,0.9127,0.9206
+0.9270,0.9332,0.9393,0.9439,0.9490,0.9526,0.9563,0.9595,0.9625,0.9658
+0.9681,0.9701,0.9723,0.9745,0.9760,0.9777,0.9790,0.9805,0.9818,0.9829
+0.9838,0.9848,0.9856,0.9863,0.9872,0.9879,0.9887,0.9893,0.9898,0.9904
+0.9907,0.9912,0.9915,0.9919,0.9924,0.9926,0.9931,0.9934,0.9937,0.9940
+0.9942,0.9947,0.9951,0.9952,0.9955,0.9958,0.9960,0.9964,0.9965,0.9967
+0.9972,0.9974,0.9978,0.9981,0.9984,0.9985,0.9986,0.9986,0.9990,0.9992
+0.9993,0.9995,0.9999,0.9999,0.9999,1.0000,1.0000,1.0000,1.0000,1.0000
+swc2x2fract=0.0001,0.0003,0.0006,0.0007,0.0009,0.0012,0.0016,0.0019
+0.0022,0.0027,0.0029,0.0032,0.0036,0.0041,0.0046,0.0052,0.0061,0.0082
+0.0112,0.0162,0.0241,0.0333,0.0448,0.0577,0.0730,0.0902,0.1092,0.1307
+0.1519,0.1761,0.1991,0.2253,0.2501,0.2742,0.2993,0.3248,0.3500,0.3758
+0.4003,0.4237,0.4480,0.4707,0.4951,0.5189,0.5422,0.5652,0.5862,0.6084
+0.6297,0.6499,0.6707,0.6900,0.7098,0.7271,0.7449,0.7637,0.7821,0.7999
+0.8163,0.8313,0.8467,0.8612,0.8746,0.8880,0.8997,0.9107,0.9196,0.9284
+0.9353,0.9416,0.9472,0.9518,0.9561,0.9594,0.9625,0.9650,0.9678,0.9704
+0.9727,0.9743,0.9761,0.9779,0.9796,0.9811,0.9826,0.9835,0.9843,0.9852
+0.9861,0.9868,0.9874,0.9880,0.9888,0.9893,0.9898,0.9903,0.9907,0.9910
+0.9915,0.9919,0.9923,0.9927,0.9933,0.9936,0.9939,0.9944,0.9945,0.9951
+0.9952,0.9956,0.9960,0.9962,0.9967,0.9971,0.9974,0.9978,0.9980,0.9982
+0.9984,0.9986,0.9989,0.9992,0.9994,0.9996,0.9998,0.9999,1.0000,1.0000
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
+swc2v2fract=0.0002,0.0003,0.0006,0.0009,0.0013,0.0014,0.0015,0.0019
+0.0021,0.0024,0.0029,0.0032,0.0036,0.0039,0.0041,0.0046,0.0054,0.0072
+0.0102,0.0148,0.0221,0.0309,0.0412,0.0540,0.0669,0.0826,0.1005,0.1183
+0.1404,0.1621,0.1843,0.2090,0.2350,0.2614,0.2859,0.3119,0.3378,0.3630
+0.3891,0.4139,0.4393,0.4625,0.4875,0.5114,0.5343,0.5563,0.5792,0.6019
+0.6236,0.6448,0.6658,0.6856,0.7052,0.7234,0.7416,0.7607,0.7780,0.7942
+0.8104,0.8275,0.8420,0.8565,0.8709,0.8843,0.8964,0.9072,0.9168,0.9248
+0.9316,0.9381,0.9429,0.9485,0.9524,0.9566,0.9598,0.9628,0.9655,0.9686
+0.9707,0.9726,0.9745,0.9761,0.9780,0.9799,0.9817,0.9829,0.9844,0.9852
+0.9859,0.9870,0.9875,0.9881,0.9888,0.9894,0.9898,0.9905,0.9911,0.9914
+0.9916,0.9922,0.9927,0.9930,0.9933,0.9936,0.9939,0.9941,0.9945,0.9948
+0.9951,0.9954,0.9957,0.9959,0.9963,0.9968,0.9971,0.9974,0.9976,0.9977
+0.9979,0.9981,0.9984,0.9986,0.9988,0.9990,0.9991,0.9992,0.9995,0.9998
+1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.0000
diff --git a/examples/PARAM/shodo.param b/examples/PARAM/shodo.param
new file mode 100644
index 0000000000000000000000000000000000000000..681cfd9d0fb334e090eb1eff3236bb4a8ad05e89
--- /dev/null
+++ b/examples/PARAM/shodo.param
@@ -0,0 +1,192 @@
+; tof and you figured out good values
+stof_tolerance = 50.0
+; sstart_time_center  center of allowed time window                             
+   sstart_time_center = 15.                                                     
+; sstart_time_slop    1/2 width of time window                                  
+   sstart_time_slop = 20.                                                       
+; sscin_tdc_min       minimum tdc value in sos scin                             
+   sscin_tdc_min = 0                                                            
+; sscin_tdc_max       maximum allowed tdc value                                 
+;   sscin_tdc_max = 9000                                                        
+; 19.08.1999 At suggestion of Mack, reduce to 4000 to get rid of                
+; bad beta values.                                                              
+                                                                                
+   sscin_tdc_max = 4000                                                         
+ ; sscin_tdc_to_time   scin tdc time per channel                                
+   sscin_tdc_to_time = 0.0247                     ; Monte Carlo Value           
+                                                                                
+;;; All the following taken from hhodo.param                                    
+; sos_tof_params                                                                
+; snum_scin_counters, shodo_zpos, shodo_center_coord, shodo_width               
+; are all calculated within s_init_scin                                         
+;    shodo_pos_coord and shodo_neg_coord are not yet used                       
+;                                                                               
+     shodo_slop     =    2.,  2.,  4.,  4.                                      
+;                                                                               
+     shodo_vel_light =  14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+                        14.5,14.5,14.5,14.5                                     
+;                                                                               
+      shodo_pos_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+;                                                                               
+      shodo_neg_sigma = .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                        .3,.3,.3,.3,.3,.3,.3,.3                                 
+                                                                                
+                                                                                
+  shodo_pos_minph = 145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                                                                                
+  shodo_neg_minph = 145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                    145,160,130,145                                             
+                                                                                
+;  shodo_pos_phc_coeff = -.9,-.764,-.9,-.952                                    
+;  shodo_pos_phc_coeff = -.9,-.820,-.95,-1.0                                    
+;  shodo_pos_phc_coeff = -1.1,-1.2,-1.0,-1.1                                    
+  shodo_pos_phc_coeff = -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                                                                                
+;  shodo_neg_phc_coeff = -.9,-.764,-.9,-.952                                    
+;  shodo_neg_phc_coeff = -.9,-.820,-.95,-1.0                                    
+;  shodo_neg_phc_coeff = -1.1,-1.2,-1.0,-101                                    
+  shodo_neg_phc_coeff = -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                        -1.2,-1.0,-1.0,-1.0                                     
+                                                                                
+                                                                                
+;order = 1x, 1y, 2x, 2y?       Yes.                                             
+;                                                                               
+;i changed s2x pos, 6th from bottom (11), from -34.4628 to -33.4628             
+                                                                                
+shodo_pos_time_offset = -11.1561,  -8.2512, -20.8399, -22.1478
+                         -4.9220,  -6.1990, -17.2972, -20.6541
+                         -6.5630,  -6.5562, -17.2113, -25.0076
+                          2.0654,  -5.2586, -21.0289, -23.7117
+                         -2.3622,  -2.7236, -16.4206, -23.6527
+                         -1.7189,  -3.5400, -19.5546, -25.5267
+                         -5.8419,  -9.0256, -20.5453, -20.3712
+                         -3.0988,  -7.5451, -18.7901, -19.9287
+                         -1.5768,  -4.2217, -21.4121, -19.8550
+                          0.0000,  -1.9975, -17.1522,   0.0000
+                          0.0000,   0.0000, -18.5695,  -1.9975
+                          0.0000,   0.0000, -17.0718,   0.0000
+                          0.0000,   0.0000, -22.3547,   0.0000
+                          0.0000,   0.0000, -14.7852,   0.0000
+                          0.0000,   0.0000, -18.4089,   0.0000
+                          0.0000,   0.0000, -10.5723,   0.0000
+shodo_neg_time_offset =  -4.3414,  -4.2570,   5.1140, -22.1772
+                          3.9469,  -7.2221, -12.6892, -23.5859
+                          6.2738,  -5.4030,  -3.5626, -21.8087
+                         -1.2458,  -4.2156, -12.7788, -22.9824
+                          2.3585,  -1.7379,  -8.9527, -17.2679
+                          6.4054,  -6.1500, -15.9257, -24.4995
+                          4.7343,  -5.9226,  -2.0483, -19.6460
+                          8.0788,  -1.1443, -16.5313, -18.6606
+                          1.9380,  -4.3016,  -2.5992, -24.3681
+                          0.0000,  -1.9975, -17.5387,   0.0000
+                          0.0000,   0.0000,  -0.7155,   0.0000
+                          0.0000,   0.0000, -14.6707,  -1.9975
+                          0.0000,   0.0000,  -1.2884,   0.0000
+                          0.0000,   0.0000, -10.0645,   0.0000
+                          0.0000,   0.0000,   0.9972,   0.0000
+                          0.0000,   0.0000,  -9.2349,   0.0000
+                                                                                
+;                                                                               
+  shodo_pos_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+;                                                                               
+  shodo_neg_ped_limit = 1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                        1000,1000,1000,1000,1000,1000,1000,1000                 
+                                                                                
diff --git a/examples/PARAM/shodo.pos b/examples/PARAM/shodo.pos
new file mode 100644
index 0000000000000000000000000000000000000000..3b02febdaea51a4d421e5b0491627f0ba32100e5
--- /dev/null
+++ b/examples/PARAM/shodo.pos
@@ -0,0 +1,103 @@
+      spathlength_central = 750
+; Z positions of hodoscopes
+      sscin_1y_zpos = ( 42.6+31.01)
+      sscin_1x_zpos = ( 66.1+31.01+0.9)
+      sscin_2y_zpos = (218.5+31.01-1.4)
+      sscin_2x_zpos = (242.0+31.01+17.8-1.4)
+      sscin_1x_dzpos = 1.12
+      sscin_1y_dzpos = 1.12
+      sscin_2x_dzpos = 1.12
+      sscin_2y_dzpos = 1.12
+; Sizes of hodoscope paddles
+      sscin_1x_size = 7.303
+      sscin_1y_size = 4.445
+      sscin_2x_size = 7.303
+      sscin_2y_size = 4.445
+      sscin_1x_spacing = 7.025
+      sscin_1y_spacing = 4.050
+      sscin_2x_spacing = 7.025
+      sscin_2y_spacing = 4.050
+; Number of hodoscope paddles per layer
+      sscin_1x_nr =  9
+      sscin_1y_nr =  9
+      sscin_2x_nr = 16
+      sscin_2y_nr =  9
+; X,Y positions of hodoscope paddles
+      sscin_1x_left  =  23.5
+      sscin_1x_right = -23.5
+      sscin_1x_offset=   -0.25
+      sscin_1x_center= -28.100
+                       -21.075
+                       -14.050
+                        -7.025
+                         0.000
+                         7.025
+                        14.050
+                        21.075
+                        28.100
+      sscin_1y_top   = -36.8
+      sscin_1y_bot   =  36.8
+; increasing offset moves "delta y" histogram move to larger y.
+      sscin_1y_offset=   0.0
+
+      sscin_1y_center=  16.20
+                        12.15
+                         8.10
+                         4.05
+                         0.00
+                        -4.05
+                        -8.10
+                       -12.15
+                       -16.20
+      sscin_2x_left  =  34.00
+      sscin_2x_right = -34.00
+      sscin_2x_offset=   4.57
+      sscin_2x_center=  -55.700
+                        -48.675
+                        -41.650
+                        -34.625
+                        -27.600
+                        -20.575
+                        -13.550
+                         -6.525
+                          0.500
+                          7.525
+                         14.550
+                         21.575
+                         28.600
+                         35.625
+                         42.650
+                         49.675
+
+
+;                       -60.25   ; Values from old variable "top"
+;                       -52.75
+;                       -45.25
+;                       -37.75
+;                       -30.25
+;                       -22.75
+;                       -15.25
+;                        -7.75
+;                        -0.25
+;                         7.25
+;                        14.75
+;                        22.25
+;                        29.75
+;                        37.25
+;                        44.75
+;                        52.25
+
+
+      sscin_2y_top   = -57.15
+      sscin_2y_bot   =  57.15
+; increasing offset moves "delta y" histogram move to larger y.
+      sscin_2y_offset=   0.0
+      sscin_2y_center=  16.20
+                        12.15
+                         8.10
+                         4.05
+                         0.00
+                        -4.05
+                        -8.10
+                       -12.15
+                       -16.20
diff --git a/examples/PARAM/sluc.param b/examples/PARAM/sluc.param
new file mode 100644
index 0000000000000000000000000000000000000000..b506bbcac76b30758359981d28612b2431e46937
--- /dev/null
+++ b/examples/PARAM/sluc.param
@@ -0,0 +1,28 @@
+; 1996 values(?)
+;     sluc_pos_gain   =  .004219, .002490, .001626, .002978
+;			.005263, .002075, .002805, .004673 
+;     sluc_neg_gain   =	.000576, .002301, .003378, .002370
+;			.004545, .002786, .002494, .003676
+
+; These come from Tang.  They were done assuming that the peak
+; corresponded to 12 p.e.  The factor of 0.5 converts this to 6 p.e.
+; which is a better value for the correct beta of the particles.
+; The two which are 0.5/200. are ones with basically no signal,
+; due to incorrect timing of the ADC signal.
+;      sluc_pos_gain = 0.5/138., 0.5/150., 0.5/200., 0.5/118.,
+;                      0.5/130., 0.5/107., 0.5/200., 0.5/142.
+;      sluc_neg_gain = 0.5/117., 0.5/133., 0.5/115., 0.5/154.,
+;                      0.5/136., 0.5/156., 0.5/120., 0.5/122.
+
+; New values. after HV modifications to the PMTs.
+      sluc_pos_gain = 4.00E-3, 3.90E-3, 3.95E-3, 3.94E-3
+                      4.09E-3, 4.24E-3, 4.10E-3, 4.03E-3
+      sluc_neg_gain = 4.00E-3, 4.33E-3, 3.99E-3, 3.89E-3
+                      4.02E-3, 4.25E-3, 4.20E-3, 4.01E-3
+
+
+; the following are upper limits for acceptable pedestal data
+; if zero then the pedestal will not be determined and not subtracted
+    sluc_pos_ped_limit = 1500.,1500.,1500.,1500.,1500.,1500.,1500.,1500.
+
+    sluc_neg_ped_limit = 1500.,1500.,1500.,1500.,1500.,1500.,1500.,1500.
diff --git a/examples/PARAM/sos_recon_coeff.dat b/examples/PARAM/sos_recon_coeff.dat
new file mode 100644
index 0000000000000000000000000000000000000000..dde306f6fd3d4b48ff946c291339a0aa6e6fcbe3
--- /dev/null
+++ b/examples/PARAM/sos_recon_coeff.dat
@@ -0,0 +1,267 @@
+ ---------------------------------------------------------------------
+   .379139198E-01  .842839975E-03 -.165349417E-01  1.09008330     1000
+  -.340475497     -.190557451E-03 -.303884217E-01  .864312703E-01 0100
+   .412883275E-04 -.183808587      .979733182      .254302566E-02 0010
+   .815995425E-03  .575826053E-01 -5.49469348     -.117673035     0001
+  -.528286695E-01 -.422038183E-01  .689674787E-01  .795969827     2000
+  -.280522018E-01 -.615710778E-01 -.407260139E-01  3.54822776     1100
+   .580273258E-01  2.36544241      1.35260940      .230035665     1010
+  -.248614039     -14.5575974      7.01872929     -1.25071096     1001
+  -.252140610     -.101163199E-01 -.156760594E-01 -1.48667569     0200
+  -.811528766E-01  .901049007     -4.92046279      .288221600     0110
+  -.820406238E-01 -5.72170059      4.90060419     -.587392000     0101
+   .591913926E-01  .442996896E-01 -.230355364      .173773836     0020
+  -.219573091      .138562767      1.13340742     -5.56476527     0011
+   .183157973     -.826984028     -1.15673466      16.2159664     0002
+   .141613116      .563557025E-01 -.132614085      .893431379     3000
+  -.736574959     -.239878097      .448683179      6.22480992     2100
+  -.147618189      5.49472968     -3.14205915     -1.26710492     2010
+   .697380983      1.62324987     -12.8412738      6.95062674     2001
+   .799836904     -.338942744E-01 -.339159381      4.84876509     1200
+   1.04463497      5.12456575      11.5182373      .161979673     1110
+  -5.73077452     -65.4895006      21.7592854     -5.62857441     1101
+  -.940144651E-01  .729997893     -1.23899720      3.93503678     1020
+   .445867546     -5.51357171      1.00751517     -28.1235302     1011
+   5.30156098      6.84633968      19.6403132      16.8571460     1002
+  -3.12917608      .584819316      1.22766131     -2.41644263     0300
+   .446613746     -21.0828990      9.59314583     -5.28850025     0210
+  -3.88969612      80.7762158     -64.0493585      22.3948037     0201
+  -1.65486895      .429698026      7.45203435     -10.9048792     0120
+   15.9989982     -8.21241443     -75.9609989      81.9559180     0111
+  -60.4402763      21.2298911      212.509960     -248.259132     0102
+   .604652321      1.53919563      5.35871564     -6.62271245     0030
+  -9.25519025     -31.3433274     -16.5768903      38.0695796     0021
+   38.5001423      192.329974      34.8941730     -88.1044751     0012
+  -43.0872876     -450.298401     -695.196371      496.318701     0003
+  -.280910732      .110007520     -1.29442669     -6.87528629     4000
+   1.70456640     -.790200026E-01  3.24383795     -7.35688444     3100
+  -.980466960     -11.2835109      15.9675705     -14.5026852     3010
+   2.57242009      38.4628243     -12.1845687      66.4941464     3001
+  -3.08843217      .385636778     -2.10129804      32.8640525     2200
+   5.90646560      48.5058838     -79.1614198     -9.58971005     2110
+  -10.4317985     -17.6586954      56.1703738      103.838657     2101
+  -.495166447      .291029779      8.65190371     -61.9746102     2020
+   11.1187517     -13.7564113     -44.1495212      750.712571     2011
+  -29.1394954      29.2851208      7.16099318     -1767.78840     2002
+  -9.07930174      .465978293      .933872266     -16.0084695     1300
+  -1.83572469     -52.4119547      134.467671     -26.5805950     1210
+  -10.6276201     -115.283001     -131.157302      95.6252426     1201
+  -11.6763151      3.96624253      25.5702701     -120.170295     1120
+   81.2559728      24.2679709     -225.807372      1137.51843     1111
+  -112.359178     -116.026197      479.835157     -3361.40683     1102
+  -5.29485259     -39.0977840      114.868020     -29.3504217     1030
+   52.9540035      435.131830     -1915.00058      456.800801     1021
+  -255.245852     -1998.72127      10430.0610     -3507.86935     1012
+   710.282918      3346.50103     -18642.5174      9294.88698     1003
+   5.47692943     -3.42404936      .398772011      26.3688033     0400
+  -7.02852980      36.0408590     -125.997347      12.0775052     0310
+   26.0411563     -59.5277011      195.059592     -.870074117     0301
+  -1.70642864     -8.05137099      66.2405899     -108.403205     0220
+   116.037347      25.1955957     -419.542715      685.197915     0211
+  -498.764979     -12.3929700      868.952277     -1583.11852     0202
+  -11.4654209      3.91337164      105.681673      .948774663     0130
+   182.564797      367.199616     -3314.03838      275.734707     0121
+  -785.464215     -1180.95553      21302.3634     -3567.09815     0112
+   1074.60409     -936.552421     -39399.4921      14185.0001     0103
+   27.3214997     -32.7467761      27.7875506     -31.0089464     0040
+  -72.0083764      499.365480      171.394594     -263.310809     0031
+  -1228.82936     -3038.62107     -5146.59971      3660.01403     0022
+   6990.44924      7629.29170      26216.2932     -19292.3817     0013
+  -12389.5540     -5952.19133     -40019.6818      27353.7886     0004
+   .233451694     -.725229200      4.49313708     -43.3437356     5000
+  -2.63479797      2.33506679     -12.0336095     -40.6088590     4100
+   2.80978052      56.6704274     -103.441626     -72.3865672     4010
+  -7.68051561     -132.315167      517.040649      601.038133     4001
+   1.55805319     -3.82640802      15.5718115      47.3538727     3200
+  -17.8565522     -346.988718      507.124617     -323.449119     3110
+   59.8473991      827.189754     -1801.08879      1569.31536     3101
+  -4.92016617     -7.94687178      12.2896473     -135.280605     3020
+   56.5503782      109.903033     -172.184206      2326.00503     3011
+  -184.441942     -120.544100      410.841450     -5124.02325     3002
+   34.2299151     -5.62614655     -19.6635668      28.5705216     2300
+   50.2036531      730.763870     -1384.99022      323.129619     2210
+  -92.7242514     -1185.38953      3546.92453     -1234.40563     2201
+  -21.1694556     -4.26971067     -187.353025     -263.232713     2120
+   50.8019739     -9.39109616      1961.55237      2703.80378     2111
+   407.045396      336.291695     -4962.65404     -7780.19411     2102
+  -32.8883563     -267.260855     -481.397420     -103.624057     2030
+   553.125925      3101.61079      6834.48349      6266.75033     2021
+  -2233.40649     -10995.3016     -40114.5660     -41964.2086     2012
+   1986.62069      12638.4725      95744.3925      70261.8242     2003
+  -157.435585      19.8341717      13.9972473      315.679803     1400
+  -52.8533936     -330.790519      1380.72305     -25.2066060     1310
+   43.1893277     -589.102339     -2937.18781      26.6981676     1301
+  -.131234530     -112.413423     -23.3238739      1664.16589     1220
+   284.871958      401.268662      200.871609     -12034.7631     1211
+  -1481.98521     -206.864693     -1872.19232      21158.0840     1202
+  -26.4458611     -371.408877     -1592.68708      147.661187     1130
+  -376.587514      3004.18852      14892.4013      5188.12933     1121
+   2666.07022     -20519.1906     -55737.5598     -46520.0024     1112
+  -2562.26184      61442.9024      72144.0869      108561.498     1103
+   15.2846925     -178.339099      98.7028679      778.606191     1040
+   259.514383      2089.90320      1620.09957     -20530.4149     1031
+  -972.532761     -10654.4336     -22167.5340      179631.580     1022
+  -6644.40422      31062.5766      95321.3704     -687066.885     1013
+   18138.9284     -39607.3611     -127382.262      803139.181     1004
+   260.033050     -9.37175174     -1.22854324     -149.131593     0500
+   12.9346160     -209.050875     -1828.13619      367.568826     0410
+   1.03860566      1642.89764      6259.32653     -1101.69817     0401
+   228.168555      47.9387217     -1007.66858     -1366.33588     0320
+  -2473.77471      401.516926      8723.22926      10463.1494     0311
+   7453.65344     -2459.90132     -20213.8613     -11893.8889     0302
+   43.0657501      2527.25046     -3579.69004     -265.543867     0230
+   85.9932457     -26732.0327      29217.0535      9454.46277     0221
+  -1310.73720      95335.7974     -74758.8642     -71048.3225     0212
+   1714.54526     -88924.4487      80562.0556      168080.435     0203
+   392.721684      363.565031     -671.427466     -301.828056     0140
+  -4902.70897     -5019.37580      3974.69466      12449.5401     0131
+   15252.5174      23287.3413      5749.87907     -48658.7614     0122
+   24169.2549     -36349.3754     -39136.7356     -186715.777     0113
+  -104121.773      895.479217     -3184.62532      792792.749     0104
+   41.5090986     -1148.66253     -1959.97263      651.990633     0050
+  -902.499745      24376.2669      13971.6905     -6281.70119     0041
+   8862.26009     -201261.260     -102332.755      6816.59750     0032
+  -33284.0983      822732.760      1107381.57      144256.913     0023
+   37274.2374     -1756990.04     -5432659.57     -988369.924     0014
+   3194.06668      1808484.40      9426156.81      2089893.33     0005
+  -.734005948      .000000000E+00  .000000000E+00  101.080958     6000
+   4.03546917      .000000000E+00  .000000000E+00 -235.474771     5100
+   .000000000E+00 -48.0176565      274.841961      .000000000E+00 5010
+   .000000000E+00  97.8419414     -1415.79591      .000000000E+00 5001
+   2.05839214      .000000000E+00  .000000000E+00 -174.906709     4200
+   .000000000E+00  811.417591     -1360.99969      .000000000E+00 4110
+   .000000000E+00 -2087.95015      5179.72150      .000000000E+00 4101
+  -24.6478776      .000000000E+00  .000000000E+00  1387.09849     4020
+   209.361971      .000000000E+00  .000000000E+00 -13347.2648     4011
+  -506.249544      .000000000E+00  .000000000E+00  25591.7786     4002
+  -35.9951898      .000000000E+00  .000000000E+00  1370.20393     3300
+   .000000000E+00 -3600.45042      3538.05250      .000000000E+00 3210
+   .000000000E+00  7524.67426     -10368.9029      .000000000E+00 3201
+   16.7701194      .000000000E+00  .000000000E+00  1785.11257     3120
+   448.015228      .000000000E+00  .000000000E+00 -12501.4175     3111
+  -2582.00272      .000000000E+00  .000000000E+00  70665.3189     3102
+   .000000000E+00  26.3558036     -3598.27809      .000000000E+00 3030
+   .000000000E+00 -1707.32364      32248.0060      .000000000E+00 3021
+   .000000000E+00  2366.24326     -95444.5145      .000000000E+00 3012
+   .000000000E+00  3260.93076      58043.6500      .000000000E+00 3003
+   85.1713624      .000000000E+00  .000000000E+00 -2956.22410     2400
+   .000000000E+00  7780.01535     -2907.83488      .000000000E+00 2310
+   .000000000E+00 -14636.9488      8134.53415      .000000000E+00 2301
+  -301.445311      .000000000E+00  .000000000E+00  4634.51958     2220
+   509.781116      .000000000E+00  .000000000E+00 -23255.2766     2211
+   3016.84963      .000000000E+00  .000000000E+00 -2992.69769     2202
+   .000000000E+00 -2765.24904      2365.34945      .000000000E+00 2130
+   .000000000E+00  29060.8651      30172.3857      .000000000E+00 2121
+   .000000000E+00 -105263.627     -343723.291      .000000000E+00 2112
+   .000000000E+00  164542.543      859596.652      .000000000E+00 2103
+   617.734883      .000000000E+00  .000000000E+00  13164.1544     2040
+  -9762.94511      .000000000E+00  .000000000E+00 -329312.117     2031
+   61777.0098      .000000000E+00  .000000000E+00  2755829.40     2022
+  -188522.811      .000000000E+00  .000000000E+00 -9589667.98     2013
+   293596.776      .000000000E+00  .000000000E+00  11777955.3     2004
+   155.742569      .000000000E+00  .000000000E+00  8004.70162     1500
+   .000000000E+00 -10710.7950     -3347.29371      .000000000E+00 1410
+   .000000000E+00  26613.4941      7824.54712      .000000000E+00 1401
+   1595.56179      .000000000E+00  .000000000E+00 -13614.5237     1320
+  -2346.18950      .000000000E+00  .000000000E+00  69708.0101     1311
+  -14502.8338      .000000000E+00  .000000000E+00 -54026.6988     1302
+   .000000000E+00  10576.5378      15937.5378      .000000000E+00 1230
+   .000000000E+00 -62086.0056     -76687.9044      .000000000E+00 1221
+   .000000000E+00 -55297.1950     -298675.928      .000000000E+00 1212
+   .000000000E+00  588445.113      1388085.99      .000000000E+00 1203
+  -597.751474      .000000000E+00  .000000000E+00  2913.83304     1140
+   6306.24490      .000000000E+00  .000000000E+00 -120786.591     1131
+   9249.80576      .000000000E+00  .000000000E+00  1516439.68     1122
+  -392504.112      .000000000E+00  .000000000E+00 -7016627.96     1113
+   1095950.97      .000000000E+00  .000000000E+00  9306653.35     1104
+   .000000000E+00 -8733.05877     -8552.74975      .000000000E+00 1050
+   .000000000E+00  137325.477      352699.311      .000000000E+00 1041
+   .000000000E+00 -910386.624     -3196889.05      .000000000E+00 1032
+   .000000000E+00  3234363.59      10796249.9      .000000000E+00 1023
+   .000000000E+00 -7252714.69     -10916643.6      .000000000E+00 1014
+   .000000000E+00  9543523.46     -6478540.83      .000000000E+00 1005
+   187.600021      .000000000E+00  .000000000E+00 -7467.84730     0600
+   .000000000E+00  8248.31060      9123.23763      .000000000E+00 0510
+   .000000000E+00 -26718.3257     -20637.9818      .000000000E+00 0501
+  -972.185544      .000000000E+00  .000000000E+00  28252.5400     0420
+  -5564.66121      .000000000E+00  .000000000E+00 -252365.927     0411
+   37465.5972      .000000000E+00  .000000000E+00  611723.395     0402
+   .000000000E+00 -22890.0920      22487.2028      .000000000E+00 0330
+   .000000000E+00  229636.659     -133458.844      .000000000E+00 0321
+   .000000000E+00 -795394.324      102279.096      .000000000E+00 0312
+   .000000000E+00  1010473.66      227935.761      .000000000E+00 0303
+  -824.302042      .000000000E+00  .000000000E+00  6197.39315     0240
+  -2787.07768      .000000000E+00  .000000000E+00 -40717.8144     0231
+   192262.614      .000000000E+00  .000000000E+00 -104938.059     0222
+  -1015988.95      .000000000E+00  .000000000E+00  1807893.56     0213
+   1581572.44      .000000000E+00  .000000000E+00 -3864158.57     0204
+   .000000000E+00  4929.32145      8058.93465      .000000000E+00 0150
+   .000000000E+00 -157973.959      292812.788      .000000000E+00 0141
+   .000000000E+00  1124967.46     -4749970.24      .000000000E+00 0132
+   .000000000E+00 -1039698.52      25070359.8      .000000000E+00 0123
+   .000000000E+00 -14297693.9     -62207004.0      .000000000E+00 0114
+   .000000000E+00  38481213.4      72831847.8      .000000000E+00 0105
+  -5527.79362      .000000000E+00  .000000000E+00 -5997.21048     0060
+   80926.6935      .000000000E+00  .000000000E+00  130411.524     0051
+  -538292.630      .000000000E+00  .000000000E+00 -303996.532     0042
+   1573640.14      .000000000E+00  .000000000E+00 -2290518.44     0033
+   257457.657      .000000000E+00  .000000000E+00  6087225.09     0024
+  -9176115.43      .000000000E+00  .000000000E+00  5616794.55     0015
+   12403312.1      .000000000E+00  .000000000E+00  2571808.44     0006
+ -0.432787425     0.000000000E+00 0.000000000E+00 0.391005873     00001
+  0.111255322     0.000000000E+00 0.000000000E+00 0.801847205     10001
+ -0.222099911     0.000000000E+00 0.000000000E+00  1.39223024     01001
+  0.000000000E+00  1.05404300    -0.472399367     0.000000000E+00 00101
+  0.000000000E+00 -6.27039977      3.78630828     0.000000000E+00 00011
+  0.187705863E-01 0.000000000E+00 0.000000000E+00 0.288248330     00002
+  0.466755273E-01 0.000000000E+00 0.000000000E+00 0.544095505     20001
+  0.255381022E-01 0.000000000E+00 0.000000000E+00  7.40084080     11001
+ -0.695597072     0.000000000E+00 0.000000000E+00  2.94559377     02001
+  0.000000000E+00  2.46445435     -2.54411388     0.000000000E+00 10101
+  0.000000000E+00-0.875373764      2.46186900     0.000000000E+00 01101
+  0.206789175     0.000000000E+00 0.000000000E+00-0.296304303     00201
+  0.000000000E+00 0.328318087      2.21842346     0.000000000E+00 10011
+  0.000000000E+00 -17.7113496      10.4387423     0.000000000E+00 01011
+  -2.83396800     0.000000000E+00 0.000000000E+00-0.810485111     00111
+  0.333321181E-01 0.000000000E+00 0.000000000E+00 0.727649980     10002
+ -0.106615205     0.000000000E+00 0.000000000E+00  2.24994616     01002
+  0.000000000E+00-0.440727542E-01 0.829650831E-03 0.000000000E+00 00102
+   9.05531754     0.000000000E+00 0.000000000E+00  4.35294783     00021
+  0.000000000E+00  1.17053477    -0.377328467     0.000000000E+00 00012
+  0.462025566E-02 0.000000000E+00 0.000000000E+00 0.224334624     00003
+ -0.213218941E-01 0.000000000E+00 0.000000000E+00-0.231138001     30001
+  0.671951131     0.000000000E+00 0.000000000E+00  7.83883863     21001
+  -2.48151318     0.000000000E+00 0.000000000E+00  51.8024010     12001
+  -1.53316700     0.000000000E+00 0.000000000E+00 -12.1339968     03001
+  0.000000000E+00 -1.93828614     -1.12464412     0.000000000E+00 20101
+  0.000000000E+00  14.7092776     -10.0892893     0.000000000E+00 11101
+  0.000000000E+00 -7.70961193      11.6264715     0.000000000E+00 02101
+   1.21564770     0.000000000E+00 0.000000000E+00-0.997171793     10201
+  -2.13666486     0.000000000E+00 0.000000000E+00 -8.63467712     01201
+  0.000000000E+00 -5.64716834      6.40534160     0.000000000E+00 00301
+  0.000000000E+00  10.3926000     -4.84593297     0.000000000E+00 20011
+  0.000000000E+00 -16.1788532      21.9577619     0.000000000E+00 11011
+  0.000000000E+00 -39.5563571      24.3791266     0.000000000E+00 02011
+  -8.29395208     0.000000000E+00 0.000000000E+00 -12.3262090     10111
+   14.3644302     0.000000000E+00 0.000000000E+00  66.1129198     01111
+  0.000000000E+00 -11.0477274     -7.23587036     0.000000000E+00 00211
+  0.254197599E-01 0.000000000E+00 0.000000000E+00 0.395279317     20002
+  0.219900371E-01 0.000000000E+00 0.000000000E+00  11.1361643     11002
+ -0.763757716     0.000000000E+00 0.000000000E+00  11.5920111     02002
+  0.000000000E+00 -1.23069700     0.143156389     0.000000000E+00 10102
+  0.000000000E+00  5.40559063     -2.75062054     0.000000000E+00 01102
+  0.489849474E-01 0.000000000E+00 0.000000000E+00-0.413153323     00202
+   3.71345858     0.000000000E+00 0.000000000E+00  35.6736779     10021
+  -3.93972567     0.000000000E+00 0.000000000E+00 -139.812832     01021
+  0.000000000E+00  271.617600     -130.343209     0.000000000E+00 00121
+  0.000000000E+00 0.685511203     0.670438936     0.000000000E+00 10012
+  0.000000000E+00 -12.9229381      10.2806595     0.000000000E+00 01012
+ -0.469630205E-01 0.000000000E+00 0.000000000E+00 0.929541757E-01 00112
+  0.165068696E-01 0.000000000E+00 0.000000000E+00 0.666969645     10003
+ -0.495401630E-01 0.000000000E+00 0.000000000E+00  3.03133290     01003
+  0.000000000E+00 0.265342622    -0.214067719     0.000000000E+00 00103
+  0.000000000E+00 -745.760209      400.637642     0.000000000E+00 00031
+  -1.44823908     0.000000000E+00 0.000000000E+00  1.73786094     00022
+  0.000000000E+00 -1.62597887      1.25528356     0.000000000E+00 00013
+  0.169392626E-02 0.000000000E+00 0.000000000E+00 0.195681174     00004
+ ---------------------------------------------------------------------
diff --git a/examples/PARAM/sosflags.param b/examples/PARAM/sosflags.param
new file mode 100644
index 0000000000000000000000000000000000000000..b6044a54bc4022090ae1a0b87747335b33282d34
--- /dev/null
+++ b/examples/PARAM/sosflags.param
@@ -0,0 +1,42 @@
+; Offset in the spectrometer momentum.
+  smomentum_factor = 0.000 ; leave 0 so it will have no effect
+                           ; use spcentral_offset if one needs to offset central momentum
+;
+; The sdelta_offset,stheta_offset,sphi_offset effect the
+; reconstructed target quantities. Used in s_targ_trans.f 
+; For transport x is in the dispersive direction with + down
+;               y is in the horizontal + towards large angles.
+;               z is along the central optics axis.
+; In transport coordinates phi = syptar = dy/dz and theta = sxptar = dx/dz 
+;    but for unknown reasons the yp offset is named  stheta_offset
+;    and  the xp offset is named  sphi_offset
+; Do not to change these values, since these are the zero order
+;  CMOP matrix elements. If you do change then your soss sieve
+;  plots will be screwed up.
+  sdelta_offset = 0.       ; (%) sdelta_tar = sdelta_tar + sdelta_offset
+  stheta_offset = 0.  	   ; (rad) syp_tar = syp_tar + stheta_offset
+  sphi_offset   = 0.       ; (rad) sxp_tar = sxp_tar + sphi_offset
+
+;saturation correction enable
+   genable_sos_satcorr = 1 ;(0=disabled) - STRACKING/s_satcorr.f
+                           ; event by event correction to ssdelta
+;central field saturation  correction enable
+   genable_sos_fieldcorr = 2003 ;(0=disabled) - ENGINE/s_fieldcorr.f
+;  genable_sos_fieldcorr = 2003 means using  C. Xu's parametrization 
+;  genable_sos_fieldcorr = 1999 means using  J. Volmer's parametrization
+;  either one determines sosp0corr which effects spcentral =   spcentral*(1+sosp0corr/100.)
+;
+; The following offsets are applied to the central kinematic variables
+;  in s_apply_offsets.f  . These might be modified by an experiment
+;  after doing calibration with elastic ep
+;
+  spcentral_offset = 0.0 ; sets  spcentral = spcentral * ( 1. + spcentral_offset / 100. )
+  sthetacentral_offset = 0.00 ; (rad)
+                       ;stheta_lab=stheta_lab + sthetacentral_offset/degree
+; This offset is determined from elastic ep data.
+; Must be added to ssxptar when used in calculating lab angles.
+; Example is in s_physics.f
+; 
+  s_oopcentral_offset = 0.0032  ; (rad)
+
+
diff --git a/examples/PARAM/stracking.param b/examples/PARAM/stracking.param
new file mode 100644
index 0000000000000000000000000000000000000000..c93d712d6f791c5054df41f0c774d99b3c4bf59b
--- /dev/null
+++ b/examples/PARAM/stracking.param
@@ -0,0 +1,75 @@
+; sos pattern recognition and tracking code parameters
+; sminhit(i)   minimum number of hits in each space point (one for each chamber)
+; smin_combos(i) minimum number of pairs in each space point ( one per chamber)
+; sspace_point_criterion(i) minimum separation of distinct space points
+;
+	smax_pr_hits = 25, 25
+        smin_hit =      5, 5
+        smin_combos =   6, 6
+        sspace_point_criterion = 1.2, 1.2 
+;
+; The following four criteria are applied to the stub fit results at the
+; focal plane position to link stubs to tracks
+; sxt_track_criterion  
+; syt_track_criterion
+; sxpt_track_criterion
+; sypt_track_criterion
+       sxt_track_criterion  = 100.
+       syt_track_criterion  = 20.
+       sxpt_track_criterion = 1.0
+       sypt_track_criterion = 1.0
+; ssingle_stub            If .ne. 0 make a track of all single stubs
+  ssingle_stub = 0
+; turn on/off small angle approximation to left/right decision for y
+  sSmallAngleApprox = 1
+;
+; Crude track selection criteria in s_physics
+; ssel_chi2_fpperdegmax   maximum chi2 per degree of freedom for track
+  ssel_chi2_fpperdegmax = 9999999.
+; ssel_dedx1min           minimum dedx to chose best track in scin 1
+  ssel_dedx1min = -1000000.
+; ssel_dedx1max           maximum dedx to chose best track in scin 1
+  ssel_dedx1max = 1000000.
+; ssel_betamin            minimum track beta to chose best track 
+  ssel_betamin  = -1000000.
+; ssel_betamax            maximum track beta to chose best track 
+  ssel_betamax  = 1000000.
+; ssel_etmin              minimum track et to chose best track 
+  ssel_etmin = -1000000.
+; ssel_etmax              maximum track et to chose best track 
+  ssel_etmax = 1000000.
+; ssel_ndegreesmin        minimum number of degrees of freedom for track
+  ssel_ndegreesmin = 1
+; sstat_maxchisq          chisquared limit for tracks used to measure hodo. eff.
+  sstat_maxchisq = 10.
+; sstat_slop              distance from center of scin. to count as expecting hit
+;              must be < 2 cm. since s1y and s2y scins. are only +/- 2cm in size.
+  sstat_slop = 1.
+; sstat_mineff            warning level for scin. effic.
+  sstat_mineff = .95
+; sstat_cal_maxchisq      chisquared limit for tracks used to measure cal. eff.
+  sstat_cal_maxchisq = 10.
+; sstat_cal_slop          distance from center of block to count as expecting hit
+  sstat_cal_slop = 2.
+; scer_min_eff            warning level for cerenkov effic.
+  scer_min_eff = .90
+; scer_threshold          threshold for good hit (for measureing effic.)
+  scer_threshold = 0.5
+; sdc_min_eff             warning level for dc raw effic.(1 per plane)
+  sdc_min_eff = .96,.96,.96,.96,.96,.96
+                .96,.96,.96,.96,.96,.96
+; sdc_min_wire_eff        warning level for wire effic, measured using tracking
+  sdc_min_wire_eff = .85
+; sdc_min_plane_eff       warning level for plane effic, measured using tracking
+  sdc_min_plane_eff = .95,.95,.95,.95,.95,.95
+                      .95,.95,.95,.95,.95,.95
+  sxloscin  = 2, 3
+  sxhiscin  = 8, 14
+  syloscin  = 2, 2
+  syhiscin  = 8, 8
+;  strack_eff_test_scin_planes is the number of planes nec needed to 
+;  set sweet spot to true. 4 is extra clean, 3 is good enough for e-'s.
+  strack_eff_test_num_scin_planes = 4
+
+  scer_npe = 2.0
+  snormalized_energy_tot = 0.7
\ No newline at end of file
diff --git a/examples/compclustedep.C b/examples/compclustedep.C
new file mode 100644
index 0000000000000000000000000000000000000000..c251ae614d23f1440cbde67db14b2fb3e9192027
--- /dev/null
+++ b/examples/compclustedep.C
@@ -0,0 +1,57 @@
+void compclustedep(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = emax;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h414;   //edep
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Largest cluster Edep", 1000, 667); 
+
+  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.095*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.045*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Edep differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Edep Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/compclustepr.C b/examples/compclustepr.C
new file mode 100644
index 0000000000000000000000000000000000000000..97bc64a8c0a3eb80930398aaa5d8904b206b031e
--- /dev/null
+++ b/examples/compclustepr.C
@@ -0,0 +1,57 @@
+void compclustepr(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = eprmax;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h415;   //edep
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Largest cluster Eprsh", 1000, 667); 
+
+  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.095*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.045*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Eprsh differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Eprsh Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/compclustsize.C b/examples/compclustsize.C
new file mode 100644
index 0000000000000000000000000000000000000000..4707a0d3a2d17a11a1b71a184628f541d35187e0
--- /dev/null
+++ b/examples/compclustsize.C
@@ -0,0 +1,57 @@
+void compclustsize(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = mult;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h413;   //mult
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Largest cluster size", 1000, 667); 
+
+  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.095*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.045*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Size differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Size Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/compclustx.C b/examples/compclustx.C
new file mode 100644
index 0000000000000000000000000000000000000000..1fe40d6aaf11421876cbb3b812ac10afe26638ad
--- /dev/null
+++ b/examples/compclustx.C
@@ -0,0 +1,57 @@
+void compclustx(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = xmax;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h416;   //X
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Largest cluster X", 1000, 667); 
+
+  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.095*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.045*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "X differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("X Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/compedeps.C b/examples/compedeps.C
new file mode 100644
index 0000000000000000000000000000000000000000..737957aacb3ddd8614746d9a7995f9fd5c3d2857
--- /dev/null
+++ b/examples/compedeps.C
@@ -0,0 +1,70 @@
+void compedeps(Int_t run)
+{
+
+  // Compare deposited energies in 4 planes from ENGINE with hcana.
+
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  TH1F* h[4];
+  h[0] = edep1;
+  h[1] = edep2;
+  h[2] = edep3;
+  h[3] = edep4;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  TH1F* h1[4];
+  switch (run) {
+  case 50017 :
+    h1[0] = h683;   //A
+    h1[1] = h684;   //B
+    h1[2] = h685;   //C
+    h1[3] = h686;   //D
+    break;
+  default :
+    h1[0] = h632;   //A
+    h1[1] = h633;   //B
+    h1[2] = h634;   //C
+    h1[3] = h635;   //D
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower raw Edeps", 1000, 667); 
+  c1->Divide(2, 2);
+
+  for (int j = 0; j < 4; j++){
+
+    c1->cd(j+1);
+
+    h1[j]->SetFillColor(kBlue);
+    h1[j]->SetFillStyle(3354);
+    h1[j]->Draw();
+
+    h[j]->SetFillColor(kGreen);
+    h[j]->SetFillStyle(3345);
+    h[j]->Draw("same");
+
+    //    gPad->SetLogy();
+  }
+
+  //
+  // Difference between the histograms.
+  //
+
+  TCanvas *c2 = new TCanvas("c2", "Edep histogram differences", 1000, 667); 
+  c2->Divide(2, 2);
+
+  TH1F* d[4] = {h[0]->Clone(),h[0]->Clone(),h[0]->Clone(),h[0]->Clone()};
+
+  for (Int_t j = 0; j < 4; j++){
+
+    //    d[j]->Divide(h[j],h1[j]);
+    d[j]->Add(h[j],h1[j],1.,-1.);
+
+    c2->cd(j+1);
+
+    d[j]->SetFillColor(kRed);
+    d[j]->SetFillStyle(1111);
+    d[j]->Draw();
+
+    //    gPad->SetLogy();
+  }
+
+} 
diff --git a/examples/compgoldenenorm.C b/examples/compgoldenenorm.C
new file mode 100644
index 0000000000000000000000000000000000000000..5cc16b6b2cb1eac970988a4be65f6ddaa628bc54
--- /dev/null
+++ b/examples/compgoldenenorm.C
@@ -0,0 +1,65 @@
+void compgoldenenorm(Int_t run=52949)
+{
+
+  //Comapare hsshtrk from Engine with gold.enorm from hcana.
+
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = golden_enorm;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    //    h1 = h438;   //hsshtrk, engine/replay/paw
+    h1 = h426;   //hsshtrk, engine/replay_mkj/paw
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Golden track E/P", 800, 1000);
+
+  c1->Divide(1,2);
+
+  //  gPad->SetLogy();
+
+  c1->cd(1);
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.75*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.65*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.75*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  c1->cd(2);
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Enorm Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/comphh.C b/examples/comphh.C
new file mode 100644
index 0000000000000000000000000000000000000000..f8a2ba7ea2f006488abed6f8e6727955df7f9ecd
--- /dev/null
+++ b/examples/comphh.C
@@ -0,0 +1,45 @@
+void comphh(Int_t run, TH1F* h1, TH1F* h2)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+
+  TCanvas *c1 = new TCanvas("c1", "h1 vs h2", 1000, 667); 
+
+  //  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h2->SetLineColor(kBlue);
+  h2->SetFillStyle(0);
+  h2->SetLineWidth(2);
+  h2->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.75*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.65*maxy,"h1");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.75*maxy,"h2");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Epr differences", 1000, 667); 
+
+  TH1F* dif = h2->Clone();
+
+  dif->Add(h2,h1,1.,-1.);
+
+  dif->SetTitle("Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/compnclusts.C b/examples/compnclusts.C
new file mode 100644
index 0000000000000000000000000000000000000000..2f16142e2e3bf1d91cc3f007933a70a104bebe60
--- /dev/null
+++ b/examples/compnclusts.C
@@ -0,0 +1,59 @@
+void compnclusts(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = nclust;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h412;   //hnclusters
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Cluster Map", 1000, 667); 
+
+  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->SetFillStyle(1111);
+  h1->Draw();
+
+  h->SetFillColor(kBlue);
+  h->SetLineWidth(2);
+  h->SetFillStyle(0);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.095*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.045*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Cluster differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+
+} 
diff --git a/examples/compnhits.C b/examples/compnhits.C
new file mode 100644
index 0000000000000000000000000000000000000000..b30f829f4da4d6d4e7a68b1914e5463e0f755543
--- /dev/null
+++ b/examples/compnhits.C
@@ -0,0 +1,57 @@
+void compnhits(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = nhits;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h411;   //hnhits
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Sparsified Hit Map", 1000, 667); 
+
+  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.095*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.045*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Hit differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/comprawhits.C b/examples/comprawhits.C
new file mode 100644
index 0000000000000000000000000000000000000000..a88b4b16513a877539e082f2eac15befdc921fc1
--- /dev/null
+++ b/examples/comprawhits.C
@@ -0,0 +1,68 @@
+void comprawhits(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h[6];
+  h[0] = chposadc1;
+  h[1] = chnegadc1;
+  h[2] = chposadc2;
+  h[3] = chnegadc2;
+  h[4] = chposadc3;
+  h[5] = chposadc4;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1[6];
+  switch (run) {
+  case 50017 :
+    h1[0] = h212;   //A+
+    h1[1] = h213;   //A-
+    h1[2] = h214;   //B+
+    h1[3] = h215;   //B-
+    h1[4] = h216;   //C+
+    h1[5] = h217;   //D+
+    break;
+  default :
+    h1[0] = h213;   //A+
+    h1[1] = h217;   //A-
+    h1[2] = h214;   //B+
+    h1[3] = h218;   //B-
+    h1[4] = h215;   //C+
+    h1[5] = h216;   //D+
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Hit Maps", 1000, 667); 
+  c1->Divide(2, 3);
+
+  for (int j = 0; j < 6; j++){
+    c1->cd(j+1);
+    h[j]->SetFillColor(kGreen);
+    h[j]->SetFillStyle(3345);
+    h[j]->Draw();
+    
+    h1[j]->SetFillColor(kBlue);
+    h1[j]->SetFillStyle(3354);
+    h1[j]->Draw("same");
+  }
+
+  //Differences
+
+  TCanvas *c2 = new TCanvas("c2", "Shower Hit Map Differences", 1000, 667);
+  c2->Divide(2, 3);
+
+  for (int j = 0; j < 6; j++){
+
+    c2->cd(j+1);
+
+    TH1F* dif = h[j]->Clone();
+    dif->Add(h[j],h1[j],1.,-1.);
+
+    dif->SetTitle(Form("Difference %d",j+1));
+    dif->SetFillColor(kRed);
+    dif->SetLineColor(kRed);
+    dif->SetLineWidth(1);
+    dif->SetFillStyle(1111);
+    dif->Draw();
+  }
+
+} 
diff --git a/examples/comptrackedep.C b/examples/comptrackedep.C
new file mode 100644
index 0000000000000000000000000000000000000000..d9ae5997b7b19eaa913a6db16c11997dba74331e
--- /dev/null
+++ b/examples/comptrackedep.C
@@ -0,0 +1,57 @@
+void comptrackedep(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = tre;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h420;   //edep
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower 1 track cluster Edep", 1000, 667); 
+
+  //  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.65*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.75*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Edep differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Edep Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/comptrackedepcor.C b/examples/comptrackedepcor.C
new file mode 100644
index 0000000000000000000000000000000000000000..fbed4f46857d78ca64dadf18c96dc0b8d9e179a2
--- /dev/null
+++ b/examples/comptrackedepcor.C
@@ -0,0 +1,61 @@
+void comptrackedepcor(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = trecor;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h422;   //edep y corrected
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Track 1 Edep (Y-corr.)", 800, 1000);
+
+  c1->Divide(1,2);
+
+  //  gPad->SetLogy();
+
+  c1->cd(1);
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.75*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.65*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.75*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  c1->cd(2);
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Edep cor. Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/comptrackedepcor.pdf b/examples/comptrackedepcor.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..f4427ce7cc8645b21b58f50daf418ba81de981de
Binary files /dev/null and b/examples/comptrackedepcor.pdf differ
diff --git a/examples/comptrackepr.C b/examples/comptrackepr.C
new file mode 100644
index 0000000000000000000000000000000000000000..a02a6e1d5cf88158e35d62694ab39e6bb76ae179
--- /dev/null
+++ b/examples/comptrackepr.C
@@ -0,0 +1,57 @@
+void comptrackepr(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = trepr;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h421;   //epr
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Largest cluster Edep", 1000, 667); 
+
+  //  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.75*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.65*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.75*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Epr differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Epr Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/comptrackeprcor.C b/examples/comptrackeprcor.C
new file mode 100644
index 0000000000000000000000000000000000000000..099541edbd33b793f2a17803625f0f80f3afd59a
--- /dev/null
+++ b/examples/comptrackeprcor.C
@@ -0,0 +1,61 @@
+void comptrackeprcor(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = treprcor;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h423;   //epr y corrected
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Track 1 Edep (Y-corr.)", 800, 1000); 
+
+  c1->Divide(1,2);
+
+  //  gPad->SetLogy();
+
+  c1->cd(1);
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.75*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.65*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.75*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  c1->cd(2);
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Epr cor. Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/comptrackeprcor.pdf b/examples/comptrackeprcor.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..c08f6fdb0fec904e12a262ce6c2e196a533e5119
Binary files /dev/null and b/examples/comptrackeprcor.pdf differ
diff --git a/examples/comptrackx.C b/examples/comptrackx.C
new file mode 100644
index 0000000000000000000000000000000000000000..c67aac2cae708bde04427bdc0a1537c2ab8858a3
--- /dev/null
+++ b/examples/comptrackx.C
@@ -0,0 +1,57 @@
+void comptrackx(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = trx;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h417;   //X
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Largest cluster X", 1000, 667); 
+
+  //  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.65*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.75*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Track X differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Hcal track X Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/comptrackxy.C b/examples/comptrackxy.C
new file mode 100644
index 0000000000000000000000000000000000000000..b0c4b910235d62c3c6494858bad0b5a4d4184607
--- /dev/null
+++ b/examples/comptrackxy.C
@@ -0,0 +1,59 @@
+void comptrackxy(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH2F* h = trx_vs_try;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH2F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h419;   //Y vs Y
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower Largest cluster X", 1000, 667); 
+
+  //  gPad->SetLogy();
+
+  h1->SetMarkerColor(kGreen);
+  //  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetMarkerColor(kBlue);
+  //  h->SetFillStyle(0);
+  //  h->SetLineWidth(2);
+  h->Draw("same");
+
+  /*
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.095*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.045*maxy,"hcana");
+  */
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "X differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  //  dif->SetTitle("X Difference");
+  //  dif->SetFillColor(kRed);
+  //  dif->SetLineColor(kRed);
+  //  dif->SetLineWidth(1);
+  //  dif->SetFillStyle(1111);
+  dif->Draw("LEGO2");
+} 
diff --git a/examples/comptracky.C b/examples/comptracky.C
new file mode 100644
index 0000000000000000000000000000000000000000..554a518b2f99d7e1d915bd438e9e57eb98131ba3
--- /dev/null
+++ b/examples/comptracky.C
@@ -0,0 +1,57 @@
+void comptracky(Int_t run)
+{
+  TFile* f = new TFile(Form("hodtest_%d.root",run));
+  cout << "hcana root file " << Form("hodtest_%d.root",run) << endl;
+  TH1F* h = try;
+
+  TFile* f1 = new TFile(Form("%d_hbk.root",run));
+  cout << "Engine root file " << Form("%d_hbk.root",run) << endl;
+  TH1F* h1;
+  switch (run) {
+  case 50017 :
+  //    h1 = h212;   //A+
+    break;
+  default :
+    h1 = h418;   //Y
+  }
+
+  TCanvas *c1 = new TCanvas("c1", "Shower track Y", 1000, 667); 
+
+  //  gPad->SetLogy();
+
+  h1->SetFillColor(kGreen);
+  h1->SetLineColor(kGreen);
+  h1->Draw();
+
+  h->SetLineColor(kBlue);
+  h->SetFillStyle(0);
+  h->SetLineWidth(2);
+  h->Draw("same");
+
+  TLatex l;
+  l.SetTextSize(0.04);
+  Float_t maxy = h1->GetBinContent(h1->GetMaximumBin());
+  Float_t xmin = h1->GetXaxis()->GetXmin();
+  Float_t xmax = h1->GetXaxis()->GetXmax();
+  Float_t xt = xmin + 0.67*(xmax-xmin);
+
+  l.SetTextColor(kGreen);
+  l.DrawLatex(xt,0.65*maxy,"Engine");
+  l.SetTextColor(kBlue);
+  l.DrawLatex(xt,0.755*maxy,"hcana");
+    
+  // Difference between the histograms.
+
+  TCanvas *c2 = new TCanvas("c2", "Hcal Y differences", 1000, 667); 
+
+  TH1F* dif = h->Clone();
+
+  dif->Add(h,h1,1.,-1.);
+
+  dif->SetTitle("Y Difference");
+  dif->SetFillColor(kRed);
+  dif->SetLineColor(kRed);
+  dif->SetLineWidth(1);
+  dif->SetFillStyle(1111);
+  dif->Draw();
+} 
diff --git a/examples/db_run.dat b/examples/db_run.dat
new file mode 100755
index 0000000000000000000000000000000000000000..6dd115d7003b81a3ee817f4971d289288c794397
--- /dev/null
+++ b/examples/db_run.dat
@@ -0,0 +1,7 @@
+# Test run database
+
+# DAQ04
+--------[ 2000-01-01 01:00:00 ]
+
+#A1 2202 pedestal
+ebeam           = 4.02187
diff --git a/examples/dcdriftdist_hms.C b/examples/dcdriftdist_hms.C
new file mode 100644
index 0000000000000000000000000000000000000000..ca6023ec9fee30e60634411b5f0813e6098bb1a2
--- /dev/null
+++ b/examples/dcdriftdist_hms.C
@@ -0,0 +1,31 @@
+ {
+  TFile* f = new TFile("hodtest.root");
+ 
+  TCanvas *c1 = new TCanvas("c1", "Drift Chamber Drift Distance", 800, 800); 
+  c1->Divide(2, 6);
+
+  TH1F* h[12];
+
+  h[0] = hdc1x1_dd;
+  h[1] = hdc1y1_dd;
+  h[2] = hdc1u1_dd;
+  h[3] = hdc1v1_dd;
+  h[4] = hdc1y2_dd;
+  h[5] = hdc1x2_dd;
+  h[6] = hdc2x1_dd;
+  h[7] = hdc2y1_dd;
+  h[8] = hdc2u1_dd;
+  h[9] = hdc2v1_dd;
+  h[10] = hdc2y2_dd;
+  h[11] = hdc2x2_dd;
+  
+  for(Int_t ih=0;ih<12;ih++) {
+    Int_t ipad = 2*(ih%6)+1 + ih/6;
+    cout << ipad << endl;
+    c1->cd(ipad);
+    h[ih]->SetFillColor(kBlue);
+    h[ih]->SetFillStyle(3354);
+    h[ih]->Draw();
+  }
+
+}
diff --git a/examples/dcdriftdist_sos.C b/examples/dcdriftdist_sos.C
new file mode 100644
index 0000000000000000000000000000000000000000..935be5a2a2b7a994a18f4ac98e37ca229b95c29b
--- /dev/null
+++ b/examples/dcdriftdist_sos.C
@@ -0,0 +1,31 @@
+ {
+  TFile* f = new TFile("hodtest.root");
+ 
+  TCanvas *c1 = new TCanvas("c1", "Drift Chamber Drift Distance", 800, 800); 
+  c1->Divide(2, 6);
+
+  TH1F* h[12];
+
+  h[0] = sdc1u1_dd;
+  h[1] = sdc1u2_dd;
+  h[2] = sdc1x1_dd;
+  h[3] = sdc1x2_dd;
+  h[4] = sdc1v1_dd;
+  h[5] = sdc1v2_dd;
+  h[6] = sdc2u1_dd;
+  h[7] = sdc2u2_dd;
+  h[8] = sdc2x1_dd;
+  h[9] = sdc2x2_dd;
+  h[10] = sdc2v1_dd;
+  h[11] = sdc2v2_dd;
+  
+  for(Int_t ih=0;ih<12;ih++) {
+    Int_t ipad = 2*(ih%6)+1 + ih/6;
+    cout << ipad << endl;
+    c1->cd(ipad);
+    h[ih]->SetFillColor(kBlue);
+    h[ih]->SetFillStyle(3354);
+    h[ih]->Draw();
+  }
+
+}
diff --git a/examples/dchitmaps_hms.C b/examples/dchitmaps_hms.C
new file mode 100644
index 0000000000000000000000000000000000000000..c3285011bf6757949179aeef7fe5b88a34aedaa2
--- /dev/null
+++ b/examples/dchitmaps_hms.C
@@ -0,0 +1,31 @@
+ {
+  TFile* f = new TFile("hodtest.root");
+ 
+  TCanvas *c1 = new TCanvas("c1", "Drift Chamber Hit Maps", 800, 800); 
+  c1->Divide(2, 6);
+
+  TH1F* h[12];
+
+  h[0] = hdc1x1_wm;
+  h[1] = hdc1y1_wm;
+  h[2] = hdc1u1_wm;
+  h[3] = hdc1v1_wm;
+  h[4] = hdc1y2_wm;
+  h[5] = hdc1x2_wm;
+  h[6] = hdc2x1_wm;
+  h[7] = hdc2y1_wm;
+  h[8] = hdc2u1_wm;
+  h[9] = hdc2v1_wm;
+  h[10] = hdc2y2_wm;
+  h[11] = hdc2x2_wm;
+  
+  for(Int_t ih=0;ih<12;ih++) {
+    Int_t ipad = 2*(ih%6)+1 + ih/6;
+    cout << ipad << endl;
+    c1->cd(ipad);
+    h[ih]->SetFillColor(kBlue);
+    h[ih]->SetFillStyle(3354);
+    h[ih]->Draw();
+  }
+
+}
diff --git a/examples/dchitmaps_sos.C b/examples/dchitmaps_sos.C
new file mode 100644
index 0000000000000000000000000000000000000000..ec7a1d0a8f42caef9bc2444767ca2a6de606f32a
--- /dev/null
+++ b/examples/dchitmaps_sos.C
@@ -0,0 +1,31 @@
+ {
+  TFile* f = new TFile("hodtest.root");
+ 
+  TCanvas *c1 = new TCanvas("c1", "Drift Chamber Hit Maps", 800, 800); 
+  c1->Divide(2, 6);
+
+  TH1F* h[12];
+
+  h[0] = sdc1u1_wm;
+  h[1] = sdc1u2_wm;
+  h[2] = sdc1x1_wm;
+  h[3] = sdc1x2_wm;
+  h[4] = sdc1v1_wm;
+  h[5] = sdc1v2_wm;
+  h[6] = sdc2u1_wm;
+  h[7] = sdc2u2_wm;
+  h[8] = sdc2x1_wm;
+  h[9] = sdc2x2_wm;
+  h[10] = sdc2v1_wm;
+  h[11] = sdc2v2_wm;
+  
+  for(Int_t ih=0;ih<12;ih++) {
+    Int_t ipad = 2*(ih%6)+1 + ih/6;
+    cout << ipad << endl;
+    c1->cd(ipad);
+    h[ih]->SetFillColor(kBlue);
+    h[ih]->SetFillStyle(3354);
+    h[ih]->Draw();
+  }
+
+}
diff --git a/examples/dcresiduals_hms.C b/examples/dcresiduals_hms.C
new file mode 100644
index 0000000000000000000000000000000000000000..ae860206ec6c0966c2429f67c1108094c0a2536b
--- /dev/null
+++ b/examples/dcresiduals_hms.C
@@ -0,0 +1,34 @@
+{
+  TFile* f = new TFile("hodtest.root");
+  TTree *T=(TTree*)f->Get("T");
+  TCanvas *c1 = new TCanvas("c1", "Drift Chamber Residuals", 800, 1000); 
+  c1->Divide(2,6);
+
+  TH1F* h=new TH1F("h", "Residual", 100, -1.0, 1.0);
+
+  c1->cd(1);
+  T->Draw("H.dc.residual[0]","H.dc.residual[0] < 999");
+  c1->cd(2);
+  T->Draw("H.dc.residual[1]","H.dc.residual[1] < 999");
+  c1->cd(3);
+  T->Draw("H.dc.residual[2]","H.dc.residual[2] < 999");
+  c1->cd(4);
+  T->Draw("H.dc.residual[3]","H.dc.residual[3] < 999");
+  c1->cd(5);
+  T->Draw("H.dc.residual[4]","H.dc.residual[4] < 999");
+  c1->cd(6);
+  T->Draw("H.dc.residual[5]","H.dc.residual[5] < 999");
+  c1->cd(7);
+  T->Draw("H.dc.residual[6]","H.dc.residual[6] < 999");
+  c1->cd(8);
+  T->Draw("H.dc.residual[7]","H.dc.residual[7] < 999");
+  c1->cd(9);
+  T->Draw("H.dc.residual[8]","H.dc.residual[8] < 999");
+  c1->cd(10);
+  T->Draw("H.dc.residual[9]","H.dc.residual[9] < 999");
+  c1->cd(11);
+  T->Draw("H.dc.residual[10]","H.dc.residual[10] < 999");
+  c1->cd(12);
+  T->Draw("H.dc.residual[11]","H.dc.residual[11] < 999");
+  delete h;
+}
diff --git a/examples/dcresiduals_sos.C b/examples/dcresiduals_sos.C
new file mode 100644
index 0000000000000000000000000000000000000000..cf2dd5afd2d4d93751bbfa4046c992a1d8b39ef1
--- /dev/null
+++ b/examples/dcresiduals_sos.C
@@ -0,0 +1,34 @@
+{
+  TFile* f = new TFile("hodtest.root");
+  TTree *T=(TTree*)f->Get("T");
+  TCanvas *c1 = new TCanvas("c1", "Drift Chamber Residuals", 800, 1000); 
+  c1->Divide(2,6);
+
+  TH1F* h=new TH1F("h", "Residual", 100, -1.0, 1.0);
+
+  c1->cd(1);
+  T->Draw("S.dc.residual[0]","S.dc.residual[0] < 999");
+  c1->cd(2);
+  T->Draw("S.dc.residual[1]","S.dc.residual[1] < 999");
+  c1->cd(3);
+  T->Draw("S.dc.residual[2]","S.dc.residual[2] < 999");
+  c1->cd(4);
+  T->Draw("S.dc.residual[3]","S.dc.residual[3] < 999");
+  c1->cd(5);
+  T->Draw("S.dc.residual[4]","S.dc.residual[4] < 999");
+  c1->cd(6);
+  T->Draw("S.dc.residual[5]","S.dc.residual[5] < 999");
+  c1->cd(7);
+  T->Draw("S.dc.residual[6]","S.dc.residual[6] < 999");
+  c1->cd(8);
+  T->Draw("S.dc.residual[7]","S.dc.residual[7] < 999");
+  c1->cd(9);
+  T->Draw("S.dc.residual[8]","S.dc.residual[8] < 999");
+  c1->cd(10);
+  T->Draw("S.dc.residual[9]","S.dc.residual[9] < 999");
+  c1->cd(11);
+  T->Draw("S.dc.residual[10]","S.dc.residual[10] < 999");
+  c1->cd(12);
+  T->Draw("S.dc.residual[11]","S.dc.residual[11] < 999");
+  delete h;
+}
diff --git a/examples/dctracking.C b/examples/dctracking.C
new file mode 100644
index 0000000000000000000000000000000000000000..30f728e1caa5dcced54b2f52f92677c775f8d238
--- /dev/null
+++ b/examples/dctracking.C
@@ -0,0 +1,19 @@
+{
+  TFile* f = new TFile("hodtest.root");
+  TTree *T=(TTree*)f->Get("T");
+  TCanvas *c1 = new TCanvas("c1", "Drift Tracking", 800, 1000); 
+  c1->Divide(2,3);
+
+  c1->cd(1);
+  T->Draw("H.dc.nhit");
+  c1->cd(2);
+  T->Draw("H.dc.ntrack");
+  c1->cd(3);
+  T->Draw("H.dc.x:H.dc.y>>h(,-20,20,,-50,50)");
+  c1->cd(4);
+  T->Draw("H.dc.x:H.dc.xp>>h(,-0.08,0.08,,-50,50");
+  c1->cd(5);
+  T->Draw("H.dc.y:H.dc.yp>>h(,-0.08,0.08,,-20,20");
+  c1->cd(6);
+  T->Draw("H.dc.xp:H.dc.yp>>h(,-0.08,0.08,,-0.08,0.08");
+}
diff --git a/examples/hitmaps_hms.C b/examples/hitmaps_hms.C
new file mode 100644
index 0000000000000000000000000000000000000000..0874bc38ec8b21fcb094fde17b4fdebe3eee160d
--- /dev/null
+++ b/examples/hitmaps_hms.C
@@ -0,0 +1,39 @@
+{
+  TFile* f = new TFile("hodtest.root");
+ 
+  TCanvas *c1 = new TCanvas("c1", "Scintillator Hit Maps", 800, 800); 
+  c1->Divide(2, 4);
+
+  TH1F* h[16];
+
+  h[0] = hpostdc1;
+  h[1] = hnegtdc1;
+  h[4] = hpostdc2;
+  h[5] = hnegtdc2;
+  h[8] = hpostdc3;
+  h[9] = hnegtdc3;
+  h[12] = hpostdc4;
+  h[13] = hnegtdc4;
+
+  h[2] = hposadc1;
+  h[3] = hnegadc1;
+  h[6] = hposadc2;
+  h[7] = hnegadc2;
+  h[10] = hposadc3;
+  h[11] = hnegadc3;
+  h[14] = hposadc4;
+  h[15] = hnegadc4;
+  
+  for(Int_t ipad=1;ipad<=8;ipad++) {
+    TPad *pt = c1->cd(ipad);
+    Int_t ihp = 2*(ipad-1);
+    Int_t ihn = ihp+1;
+    h[ihp]->SetFillColor(kGreen);
+    h[ihp]->SetFillStyle(3345);
+    h[ihp]->Draw();
+    h[ihn]->SetFillColor(kBlue);
+    h[ihn]->SetFillStyle(3354);
+    h[ihn]->Draw("same");
+  }
+
+}
diff --git a/examples/hitmaps_sos.C b/examples/hitmaps_sos.C
new file mode 100644
index 0000000000000000000000000000000000000000..2e7f220bbfd77141423f860348b00a76bcd0da21
--- /dev/null
+++ b/examples/hitmaps_sos.C
@@ -0,0 +1,39 @@
+{
+  TFile* f = new TFile("hodtest.root");
+ 
+  TCanvas *c1 = new TCanvas("c1", "SOS Scintillator Hit Maps", 800, 800); 
+  c1->Divide(2, 4);
+
+  TH1F* h[16];
+
+  h[0] = spostdc1;
+  h[1] = snegtdc1;
+  h[4] = spostdc2;
+  h[5] = snegtdc2;
+  h[8] = spostdc3;
+  h[9] = snegtdc3;
+  h[12] = spostdc4;
+  h[13] = snegtdc4;
+
+  h[2] = sposadc1;
+  h[3] = snegadc1;
+  h[6] = sposadc2;
+  h[7] = snegadc2;
+  h[10] = sposadc3;
+  h[11] = snegadc3;
+  h[14] = sposadc4;
+  h[15] = snegadc4;
+  
+  for(Int_t ipad=1;ipad<=8;ipad++) {
+    TPad *pt = c1->cd(ipad);
+    Int_t ihp = 2*(ipad-1);
+    Int_t ihn = ihp+1;
+    h[ihp]->SetFillColor(kGreen);
+    h[ihp]->SetFillStyle(3345);
+    h[ihp]->Draw();
+    h[ihn]->SetFillColor(kBlue);
+    h[ihn]->SetFillStyle(3354);
+    h[ihn]->Draw("same");
+  }
+
+}
diff --git a/examples/hodtest.C b/examples/hodtest.C
new file mode 100644
index 0000000000000000000000000000000000000000..9a09d917c57cc757ae4bf717e62b81826ac6d5bb
--- /dev/null
+++ b/examples/hodtest.C
@@ -0,0 +1,90 @@
+
+{
+
+  //
+  //  Steering script to test hodoscope decoding
+  //
+  
+  Int_t RunNumber=50017;
+  char* RunFileNamePattern="daq04_%d.log.0";
+  
+  gHcParms->Define("gen_run_number", "Run Number", RunNumber);
+  gHcParms->AddString("g_ctp_database_filename", "DBASE/test.database");
+  
+  gHcParms->Load(gHcParms->GetString("g_ctp_database_filename"), RunNumber);
+
+  // g_ctp_parm_filename and g_decode_map_filename should now be defined
+
+  gHcParms->Load(gHcParms->GetString("g_ctp_parm_filename"));
+
+  // Constants not in ENGINE PARAM files that we want to be
+  // configurable
+  gHcParms->Load("PARAM/hcana.param");
+
+  // Generate db_cratemap to correspond to map file contents
+  char command[100];
+  sprintf(command,"./make_cratemap.pl < %s > db_cratemap.dat",gHcParms->GetString("g_decode_map_filename"));
+  system(command);
+
+  // Load the Hall C style detector map
+  gHcDetectorMap=new THcDetectorMap();
+  gHcDetectorMap->Load(gHcParms->GetString("g_decode_map_filename"));
+
+  // Set up the equipment to be analyzed.
+
+  THaApparatus* HMS = new THcHallCSpectrometer("H","HMS");
+  gHaApps->Add( HMS );
+
+  // Add hodoscope
+  HMS->AddDetector( new THcHodoscope("hod", "Hodoscope" ));
+  HMS->AddDetector( new THcShower("cal", "Shower" ));
+  HMS->AddDetector( new THcDC("dc", "Drift Chambers" ));
+  THcAerogel* aerogel = new THcAerogel("aero", "Aerogel Cerenkov" );
+  HMS->AddDetector( aerogel );
+  THcCherenkov* cherenkov = new THcCherenkov("cher", "Gas Cerenkov" );
+  HMS->AddDetector( cherenkov );
+
+  THaApparatus* SOS = new THcHallCSpectrometer("S","SOS");
+  gHaApps->Add( SOS );
+  // Add detectors
+  SOS->AddDetector( new THcHodoscope("hod", "Hodoscope" ));
+  SOS->AddDetector( new THcShower("cal", "Shower" ));
+  SOS->AddDetector( new THcDC("dc", "Drift Chambers" ));
+
+  // 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.
+  char RunFileName[100];
+  sprintf(RunFileName,RunFileNamePattern,RunNumber);
+  THaRun* run = new THaRun(RunFileName);
+
+  // Eventually need to learn to skip over, or properly analyze
+  // the pedestal events
+  run->SetEventRange(1,100000);//  Physics Event number, does not
+                                // include scaler or control events
+
+  // Define the analysis parameters
+  analyzer->SetEvent( event );
+  analyzer->SetOutFile( "hodtest.root" );
+  analyzer->SetOdefFile("output.def");
+  analyzer->SetCutFile("hodtest_cuts.def");        // optional
+  analyzer->SetCountMode(2);// Counter event number same as gen_event_ID_number
+  
+  // File to record cuts accounting information
+  //  analyzer->SetSummaryFile("summary_example.log"); // optional
+  
+  analyzer->Process(run);     // start the actual analysis
+  analyzer->PrintReport("report.template","report.out");
+}
diff --git a/examples/hodtest_ccdb.C b/examples/hodtest_ccdb.C
new file mode 100644
index 0000000000000000000000000000000000000000..9b36440178b339fdc07c8eaf434be406c14ebbd7
--- /dev/null
+++ b/examples/hodtest_ccdb.C
@@ -0,0 +1,90 @@
+
+{
+
+  //
+  //  Steering script to test hodoscope decoding
+  //
+  
+  Int_t RunNumber=50017;
+  char* RunFileNamePattern="daq04_%d.log.0";
+  
+  // Load parameters from CCDB
+
+  gHcParms->OpenCCDB(RunNumber);
+  gHcParms->LoadCCDBDirectory("hms","h");
+  gHcParms->LoadCCDBDirectory("sos","s");
+  gHcParms->LoadCCDBDirectory("gen","g");
+
+  // Get these legacy things from the Run database
+  gHcParms->Define("gen_run_number", "Run Number", RunNumber);
+  gHcParms->AddString("g_ctp_database_filename", "DBASE/test.database");
+  gHcParms->Load(gHcParms->GetString("g_ctp_database_filename"), RunNumber);
+
+
+  // Generate db_cratemap to correspond to map file contents
+  char command[100];
+  sprintf(command,"./make_cratemap.pl < %s > db_cratemap.dat",gHcParms->GetString("g_decode_map_filename"));
+  system(command);
+
+  // Load the Hall C style detector map
+  gHcDetectorMap=new THcDetectorMap();
+  gHcDetectorMap->Load(gHcParms->GetString("g_decode_map_filename"));
+
+  // Set up the equipment to be analyzed.
+
+  THaApparatus* HMS = new THcHallCSpectrometer("H","HMS");
+  gHaApps->Add( HMS );
+
+  // Add hodoscope
+  HMS->AddDetector( new THcHodoscope("hod", "Hodoscope" ));
+  HMS->AddDetector( new THcShower("cal", "Shower" ));
+  HMS->AddDetector( new THcDC("dc", "Drift Chambers" ));
+  THcAerogel* aerogel = new THcAerogel("aero", "Aerogel Cerenkov" );
+  HMS->AddDetector( aerogel );
+  THcCherenkov* cherenkov = new THcCherenkov("cher", "Gas Cerenkov" );
+  HMS->AddDetector( cherenkov );
+
+  THaApparatus* SOS = new THcHallCSpectrometer("S","SOS");
+  gHaApps->Add( SOS );
+  // Add detectors
+  SOS->AddDetector( new THcHodoscope("hod", "Hodoscope" ));
+  SOS->AddDetector( new THcShower("cal", "Shower" ));
+  SOS->AddDetector( new THcDC("dc", "Drift Chambers" ));
+
+  // 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.
+  char RunFileName[100];
+  sprintf(RunFileName,RunFileNamePattern,RunNumber);
+  THaRun* run = new THaRun(RunFileName);
+
+  // Eventually need to learn to skip over, or properly analyze
+  // the pedestal events
+  run->SetEventRange(1,100000);//  Physics Event number, does not
+                                // include scaler or control events
+
+  // Define the analysis parameters
+  analyzer->SetEvent( event );
+  analyzer->SetOutFile( "hodtest.root" );
+  analyzer->SetOdefFile("output.def");
+  analyzer->SetCutFile("hodtest_cuts.def");        // optional
+  analyzer->SetCountMode(2);// Counter event number same as gen_event_ID_number
+  
+  // File to record cuts accounting information
+  //  analyzer->SetSummaryFile("summary_example.log"); // optional
+  
+  analyzer->Process(run);     // start the actual analysis
+  analyzer->PrintReport("report.template","report.out");
+}
diff --git a/examples/hodtest_cuts.def b/examples/hodtest_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..255592e95c06a2345d8b91dbe5f46c8a6a3b97fd
--- /dev/null
+++ b/examples/hodtest_cuts.def
@@ -0,0 +1,99 @@
+# Demo cuts for hodtest
+#
+
+Block: RawDecode
+RawDecode_master  1
+Pedestal_event    g.evtyp==4
+
+Block: Decode
+Decode_master     !Pedestal_event
+
+Block: CoarseProcess
+hmstotchernpe   H.cher.npesum > -1.0
+
+Block: FineProcess
+hmsscinshould      H.hod.goodscinhit == 1
+hmstotscinshould   (H.hod.goodscinhit == 1) && (H.cher.npesum > 2.0)
+
+Block: CoarseTracking
+
+hfoundtrack	H.dc.ntrack != 0
+hfound1track	H.dc.ntrack == 1
+hfound2track	H.dc.ntrack == 2
+hfound3track	H.dc.ntrack == 3
+hfound4track	H.dc.ntrack == 4
+
+goodhdc1x1	(H.dc.1x1.nhit > 0) && (H.dc.1x1.nhit < 3)
+goodhdc1y1	(H.dc.1y1.nhit > 0) && (H.dc.1y1.nhit < 3)
+goodhdc1u1	(H.dc.1u1.nhit > 0) && (H.dc.1u1.nhit < 3)
+goodhdc1v1	(H.dc.1v1.nhit > 0) && (H.dc.1v1.nhit < 3)
+goodhdc1y2	(H.dc.1y2.nhit > 0) && (H.dc.1y2.nhit < 3)
+goodhdc1x2	(H.dc.1x2.nhit > 0) && (H.dc.1x2.nhit < 3)
+
+goodhdc2x1	(H.dc.2x1.nhit > 0) && (H.dc.2x1.nhit < 3)
+goodhdc2y1	(H.dc.2y1.nhit > 0) && (H.dc.2y1.nhit < 3)
+goodhdc2u1	(H.dc.2u1.nhit > 0) && (H.dc.2u1.nhit < 3)
+goodhdc2v1	(H.dc.2v1.nhit > 0) && (H.dc.2v1.nhit < 3)
+goodhdc2y2	(H.dc.2y2.nhit > 0) && (H.dc.2y2.nhit < 3)
+goodhdc2x2	(H.dc.2x2.nhit > 0) && (H.dc.2x2.nhit < 3)
+
+goodhdc1	goodhdc1x1 && goodhdc1y1 && goodhdc1u1 && goodhdc1v1 && goodhdc1y2 && goodhdc1x2
+goodhdc2	goodhdc2x1 && goodhdc2y1 && goodhdc2u1 && goodhdc2v1 && goodhdc2y2 && goodhdc2x2
+bothgoodhdc	goodhdc1 && goodhdc2
+
+sfoundtrack	S.dc.ntrack != 0
+sfound1track	S.dc.ntrack == 1
+sfound2track	S.dc.ntrack == 2
+sfound3track	S.dc.ntrack == 3
+sfound4track	S.dc.ntrack == 4
+
+goodsdc1u1	(S.dc.1u1.nhit > 0) && (S.dc.1u1.nhit < 3)
+goodsdc1u2	(S.dc.1u2.nhit > 0) && (S.dc.1u2.nhit < 3)
+goodsdc1x1	(S.dc.1x1.nhit > 0) && (S.dc.1x1.nhit < 3)
+goodsdc1x2	(S.dc.1x2.nhit > 0) && (S.dc.1x2.nhit < 3)
+goodsdc1v1	(S.dc.1v1.nhit > 0) && (S.dc.1v1.nhit < 3)
+goodsdc1v2	(S.dc.1v2.nhit > 0) && (S.dc.1v2.nhit < 3)
+
+goodsdc2u1	(S.dc.2u1.nhit > 0) && (S.dc.2u1.nhit < 3)
+goodsdc2u2	(S.dc.2u2.nhit > 0) && (S.dc.2u2.nhit < 3)
+goodsdc2x1	(S.dc.2x1.nhit > 0) && (S.dc.2x1.nhit < 3)
+goodsdc2x2	(S.dc.2x2.nhit > 0) && (S.dc.2x2.nhit < 3)
+goodsdc2v1	(S.dc.2v1.nhit > 0) && (S.dc.2v1.nhit < 3)
+goodsdc2v2	(S.dc.2v2.nhit > 0) && (S.dc.2v2.nhit < 3)
+
+goodsdc1	goodsdc1u1 && goodsdc1u2 && goodsdc1x1 && goodsdc1x2 && goodsdc1v1 && goodsdc1v2
+goodsdc2	goodsdc2u1 && goodsdc2u2 && goodsdc2x1 && goodsdc2x2 && goodsdc2v1 && goodsdc2v2
+bothgoodsdc	goodsdc1 && goodsdc2
+
+realhdc1x1	goodhdc1x1 && (H.dc.nsp != 0)
+realhdc1y1	goodhdc1y1 && (H.dc.nsp != 0)
+realhdc1u1	goodhdc1u1 && (H.dc.nsp != 0)
+realhdc1v1	goodhdc1v1 && (H.dc.nsp != 0)
+realhdc1y2	goodhdc1y2 && (H.dc.nsp != 0)
+realhdc1x2	goodhdc1x2 && (H.dc.nsp != 0)
+realhdc2x1	goodhdc2x1 && (H.dc.nsp != 0)
+realhdc2y1	goodhdc2y1 && (H.dc.nsp != 0)
+realhdc2u1	goodhdc2u1 && (H.dc.nsp != 0)
+realhdc2v1	goodhdc2v1 && (H.dc.nsp != 0)
+realhdc2y2	goodhdc2y2 && (H.dc.nsp != 0)
+realhdc2x2	goodhdc2x2 && (H.dc.nsp != 0)
+
+#hlowchi2	(hschi2perdeg<10) && hcleantrack
+
+hlowchi2	1
+
+hdcres_1	(H.dc.residual[0] < 1000) && hlowchi2
+hdcres_2	(H.dc.residual[1] < 1000) && hlowchi2
+hdcres_3	(H.dc.residual[2] < 1000) && hlowchi2
+hdcres_4	(H.dc.residual[3] < 1000) && hlowchi2
+hdcres_5	(H.dc.residual[4] < 1000) && hlowchi2
+hdcres_6	(H.dc.residual[5] < 1000) && hlowchi2
+hdcres_7	(H.dc.residual[6] < 1000) && hlowchi2
+hdcres_8	(H.dc.residual[7] < 1000) && hlowchi2
+hdcres_9	(H.dc.residual[8] < 1000) && hlowchi2
+hdcres_10	(H.dc.residual[9] < 1000) && hlowchi2
+hdcres_11	(H.dc.residual[10] < 1000) && hlowchi2
+hdcres_12	(H.dc.residual[11] < 1000) && hlowchi2
+
+Block: CoarseReconstruct
+CourseReconstruct 1
diff --git a/examples/hodtest_cuts_mkj.def b/examples/hodtest_cuts_mkj.def
new file mode 100644
index 0000000000000000000000000000000000000000..19317cdacfeb36ecf620058e9d341c9c952ffed8
--- /dev/null
+++ b/examples/hodtest_cuts_mkj.def
@@ -0,0 +1,22 @@
+# Demo cuts for hodtest
+#
+
+Block: RawDecode
+
+Pedestal_event    g.evtyp==4
+scalar_event         g.evtyp==0
+HMS_event         g.evtyp==1
+SOS_event         g.evtyp==2
+coin_event         g.evtyp==3
+misc_event         g.evtyp>=5
+hms_and_coin	HMS_event||coin_event
+RawDecode_master  1
+
+Block: Decode
+Decode_master     hms_and_coin
+
+Block: CoarseTracking
+CoarseTracking_master !Pedestal_event
+
+Block: CoarseReconstruct
+RawCoarseReconstruct !Pedestal_event
diff --git a/examples/hodtest_mkj.C b/examples/hodtest_mkj.C
new file mode 100644
index 0000000000000000000000000000000000000000..08b194d35ec1a43d2c0d6cc7dc4d633618da5c60
--- /dev/null
+++ b/examples/hodtest_mkj.C
@@ -0,0 +1,87 @@
+void hodtest_mkj(Int_t RunNumber=50017, Int_t MaxEventToReplay=5000,
+		 Int_t StartEvent=1) {
+
+  //
+  //  Steering script to test hodoscope decoding
+  //
+  
+  if (RunNumber == 50017) {
+    char* RunFileNamePattern="daq04_%d.log.0";
+  } else {
+    //    char* RunFileNamePattern="/cache/mss/hallc/daq04/raw/daq04_%d.log.0";
+    char* RunFileNamePattern="daq04_%d.log.0";
+  }
+  gHcParms->Define("gen_run_number", "Run Number", RunNumber);
+  gHcParms->AddString("g_ctp_database_filename", "DBASE/test.database");
+  
+  gHcParms->Load(gHcParms->GetString("g_ctp_database_filename"), RunNumber);
+
+  // g_ctp_parm_filename and g_decode_map_filename should now be defined
+
+
+  gHcParms->Load(gHcParms->GetString("g_ctp_parm_filename"));
+
+  // Constants not in ENGINE PARAM files that we want to be
+  // configurable
+  gHcParms->Load("PARAM/hcana.param");
+
+  // Generate db_cratemap to correspond to map file contents
+  char command[100];
+  sprintf(command,"./make_cratemap.pl < %s > db_cratemap.dat",gHcParms->GetString("g_decode_map_filename"));
+  system(command);
+
+  // Load the Hall C style detector map
+  gHcDetectorMap=new THcDetectorMap();
+  gHcDetectorMap->Load(gHcParms->GetString("g_decode_map_filename"));
+
+  // Set up the equipment to be analyzed.
+
+  THaApparatus* HMS = new THcHallCSpectrometer("H","HMS");
+  gHaApps->Add( HMS );
+
+  // Add hodoscope
+  HMS->AddDetector( new THcHodoscope("hod", "Hodoscope" ));
+  HMS->AddDetector( new THcShower("cal", "Shower" ));
+  HMS->AddDetector( new THcDC("dc", "Drift Chambers" ));
+  THcAerogel* aerogel = new THcAerogel("aero", "Aerogel Cerenkov" );
+  HMS->AddDetector( aerogel );
+
+  // Add Golden Track
+  gHaPhysics->Add( new THaGoldenTrack( "H.gold", "HMS Golden Track", "H" ));
+
+  // 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.
+  THaAnalyzer* 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.
+  char RunFileName[100];
+  sprintf(RunFileName,RunFileNamePattern,RunNumber);
+  THaRun* run = new THaRun(RunFileName);
+
+  // Eventually need to learn to skip over, or properly analyze
+  // the pedestal events
+  run->SetEventRange(StartEvent,MaxEventToReplay);//  Physics Event number,
+                                //  does not include scaler or control events
+
+  // Define the analysis parameters
+  analyzer->SetCountMode( 0 );   //Mark's modification
+  analyzer->SetEvent( event );
+  analyzer->SetOutFile(Form("hodtest_%05d.root",RunNumber));
+  analyzer->SetOdefFile(Form("output_%d.def",RunNumber));
+  analyzer->SetCutFile("hodtest_cuts_mkj.def");        // optional
+  
+  // File to record cuts accounting information
+  //  analyzer->SetSummaryFile("summary_example.log"); // optional
+  
+  analyzer->Process(run);     // start the actual analysis
+}
diff --git a/examples/make_cratemap.pl b/examples/make_cratemap.pl
new file mode 100755
index 0000000000000000000000000000000000000000..7c3fc42dfe06b996d2fc8b691319b9f4859eeab1
--- /dev/null
+++ b/examples/make_cratemap.pl
@@ -0,0 +1,71 @@
+#!/usr/bin/perl
+
+# Read a Hall C style MAP file and output a
+# Hall A style crate map DB file.
+#
+# 22.03.2012 (saw)
+# 11.04.2014 (saw) Perl cleanup
+
+%crates=();
+
+$crate = 0;
+$nsubadd = 0;
+$bsub = 0;
+$modtype = 0;
+$slot = 0;
+while(<>) {
+    chomp($line=$_);
+    if($line=~/^\s*ROC=\s*(\d*)/i) {
+	$i++;
+	$crate = $1;
+	if(not $crates{$crate}) {
+	    $slotlist={};
+	    $crates{$crate} = $slotlist;
+	}
+	$modtype = 0;
+	$slot = 0;
+    } elsif ($line=~/^\s*nsubadd=\s*(\d*)/i) {
+	$nsubadd = $1;
+	$modtype = 0;
+    } elsif ($line=~/^\s*bsub=\s*(\d*)/i) {
+	$bsub = $1;
+	$modtype = 0;
+    } elsif ($line=~/^\s*slot=\s*(\d*)/i) {
+	$slot = $1;
+	$modtype = 0;
+    } elsif ($line=~/^\s*(\d*)\s*,\s*(\d*)\s*,\s*(\d*)/) {
+	if($modtype == 0) {	# Slot not yet registered
+	    if($nsubadd == 96) {
+		$modtype = 1877;
+	    } elsif($nsubadd == 64) {
+		if($bsub == 16) {
+		    $modtype = 1875;
+		} elsif($bsub == 17) {
+		    $modtype = 1881;
+		}
+	    }
+	    if($modtype == 0) {
+		print "Unknown module Crate $crate, Slot $slot\n";
+	    }
+	    $crates{$crate}{$slot} = $modtype;
+	    # print "$crate $slot $modtype\n";
+	}
+    }
+}
+print "# Hall C Crate map\n";
+foreach $crate (sort {$a <=> $b} keys %crates) {
+    print "==== Crate $crate type fastbus\n";
+    print "# slot  model   clear   header  mask    nchan   ndata\n";
+    foreach $slot (sort {$a <=> $b} keys %{ $crates{$crate}}) {
+	$modtype = $crates{$crate}{$slot};
+	if($modtype == 1877) {
+	    $ndata = 256;
+	} else {
+	    $ndata = 64;
+	}
+	printf " %2d     %d    1       0x0     0x0    %3d      %d\n"
+	    ,$slot,$modtype,$nsubadd, $ndata;
+    }
+}
+
+
diff --git a/examples/mapedit_rasterbcm.pl b/examples/mapedit_rasterbcm.pl
new file mode 100644
index 0000000000000000000000000000000000000000..f83b00ed30d187bc7e96606d58b6694f5b8867c5
--- /dev/null
+++ b/examples/mapedit_rasterbcm.pl
@@ -0,0 +1,154 @@
+#!/usr/bin/perl
+
+# Rewrite a Hall C style MAP file so that the Raster and BPM
+# are separate detector types instead of being part of the
+# MISC detector
+#
+# 08.04.2014 (saw) Modify just raster entries for now
+
+use POSIX qw(strftime);
+
+$RASTERID=18;
+$BCMID=19;
+$SWAPRASTERXY=1;
+
+$thedate = strftime( '%b %e, %Y', localtime );
+
+$ifile = $ARGV[0];
+$ofile = $ARGV[1];
+
+open(IFILE,"<$ifile");
+open(OFILE,">$ofile");
+
+print OFILE "! $ofile  Automatically generated $thedate\n";
+print OFILE "! from $ifile by $0\n";
+
+# Insert comments defining the raster and BCM detector IDS
+$ininiddefs=0;
+while(<IFILE>) {
+    chomp;
+    $line = $_;
+    if($line=~/_ID/) {
+	$iniddefs=1;
+    } elsif ($iniddefs) {
+	if(not $line=~/_ID/ and not $line=~/:/) {
+	    print OFILE "! RASTER_ID=$RASTERID       ADC\n";
+	    print OFILE "! BCM_ID=$RASTERID          ADC\n";
+	    print OFILE "$line\n";
+	    last;
+	}
+    }
+    print OFILE "$line\n";
+}
+
+# Copy the rest of the file, looking for the specific channels to
+# edit
+$detector=0;
+while(<IFILE>) {
+    chomp;
+    $line = $_;
+
+    if($line=~/^\s*DETECTOR=\s*(\d*)/i) {
+	$detector=$1;
+	print "$detector\n";
+	print OFILE "$line\n";
+    } elsif ($line=~/^\s*(\d*)\s*,\s*(\d*)\s*,\s*(\d*),\s*(\d*)\s*(.*)/) {
+	$comment = $5;
+	$channel = $1;
+	$plane = $2;
+	$element = $3;
+	$signal = $4;
+	if($comment=~"Fast Raster") {
+	    $signal = -1;
+	    if($comment=~"X-sync") {
+		$signal = 0;
+	    } elsif ($comment=~"X-signal") {
+		$signal = 1;
+	    } elsif ($comment=~"Y-sync") {
+		$signal = 2;
+	    } elsif ($comment=~"Y-signal") {
+		$signal = 3;
+	    }
+	    if($signal>=0) {
+		if ($SWAPRASTERXY) {
+		    $signal = ($signal+2) % 4;
+		}
+		print OFILE "detector=$RASTERID ! RASTER\n";
+		print OFILE "!$line\n";
+		print OFILE "$channel, 1, 1, $signal $comment\n";
+		print OFILE "detector=$detector ! RASTER\n";
+	    } else {
+	    print OFILE "$line\n";
+	    }
+	} else {
+	    print OFILE "$line\n";
+	}
+    } else {
+	print OFILE "$line\n";
+    }
+}
+exit;
+
+%crates=();
+
+$crate = 0;
+$nsubadd = 0;
+$bsub = 0;
+$modtype = 0;
+$slot = 0;
+while(<>) {
+    $line=chomp;
+    if($line=/^\s*ROC=\s*(\d*)/i) {
+	$i++;
+	$crate = $1;
+	if(not $crates{$crate}) {
+	    $slotlist={};
+	    $crates{$crate} = $slotlist;
+	}
+	$modtype = 0;
+	$slot = 0;
+    } elsif ($line=/^\s*nsubadd=\s*(\d*)/i) {
+	$nsubadd = $1;
+	$modtype = 0;
+    } elsif ($line=/^\s*bsub=\s*(\d*)/i) {
+	$bsub = $1;
+	$modtype = 0;
+    } elsif ($line=/^\s*slot=\s*(\d*)/i) {
+	$slot = $1;
+	$modtype = 0;
+    } elsif ($line=/^\s*(\d*)\s*,\s*(\d*)\s*,\s*(\d*)/) {
+	if($modtype == 0) {	# Slot not yet registered
+	    if($nsubadd == 96) {
+		$modtype = 1877;
+	    } elsif($nsubadd == 64) {
+		if($bsub == 16) {
+		    $modtype = 1875;
+		} elsif($bsub == 17) {
+		    $modtype = 1881;
+		}
+	    }
+	    if($modtype == 0) {
+		print "Unknown module Crate $crate, Slot $slot\n";
+	    }
+	    $crates{$crate}{$slot} = $modtype;
+	    # print "$crate $slot $modtype\n";
+	}
+    }
+}
+print "# Hall C Crate map\n";
+foreach $crate (sort {$a <=> $b} keys %crates) {
+    print "==== Crate $crate type fastbus\n";
+    print "# slot  model   clear   header  mask    nchan   ndata\n";
+    foreach $slot (sort {$a <=> $b} keys %{ $crates{$crate}}) {
+	$modtype = $crates{$crate}{$slot};
+	if($modtype == 1877) {
+	    $ndata = 256;
+	} else {
+	    $ndata = 64;
+	}
+	printf " %2d     %d    1       0x0     0x0    %3d      %d\n"
+	    ,$slot,$modtype,$nsubadd, $ndata;
+    }
+}
+
+
diff --git a/examples/output.def b/examples/output.def
new file mode 100644
index 0000000000000000000000000000000000000000..d122a5aa86ad82d5d5d1e6efdfaeebaaf64fc69f
--- /dev/null
+++ b/examples/output.def
@@ -0,0 +1,238 @@
+# See $ANALYZER/examples/output_example.def for examples
+#
+block H.dc.*
+block H.hod.*
+block H.cal.*
+block H.aero.*
+block H.cher.*
+block H.tr.*
+block S.dc.*
+block S.hod.*
+block S.cal.*
+block g.evtyp
+
+# TDC hits per paddle
+TH1F hpostdc1 'HMS s1x+ TDC hits' H.hod.1x.postdchits 16 0.5 16.5
+TH1F hnegtdc1 'HMS s1x- TDC hits' H.hod.1x.negtdchits 16 0.5 16.5
+TH1F hpostdc2 'HMS s1y+ TDC hits' H.hod.1y.postdchits 10 0.5 10.5
+TH1F hnegtdc2 'HMS s1y- TDC hits' H.hod.1y.negtdchits 10 0.5 10.5
+TH1F hpostdc3 'HMS s2x+ TDC hits' H.hod.2x.postdchits 16 0.5 16.5
+TH1F hnegtdc3 'HMS s2x- TDC hits' H.hod.2x.negtdchits 16 0.5 16.5
+TH1F hpostdc4 'HMS s2y+ TDC hits' H.hod.2y.postdchits 10 0.5 10.5
+TH1F hnegtdc4 'HMS s2y- TDC hits' H.hod.2y.negtdchits 10 0.5 10.5
+
+# ADC hits per paddle
+TH1F hposadc1 'HMS s1x+ ADC hits' H.hod.1x.posadchits 16 0.5 16.5
+TH1F hnegadc1 'HMS s1x- ADC hits' H.hod.1x.negadchits 16 0.5 16.5
+TH1F hposadc2 'HMS s1y+ ADC hits' H.hod.1y.posadchits 10 0.5 10.5
+TH1F hnegadc2 'HMS s1y- ADC hits' H.hod.1y.negadchits 10 0.5 10.5
+TH1F hposadc3 'HMS s2x+ ADC hits' H.hod.2x.posadchits 16 0.5 16.5
+TH1F hnegadc3 'HMS s2x- ADC hits' H.hod.2x.negadchits 16 0.5 16.5
+TH1F hposadc4 'HMS s2y+ ADC hits' H.hod.2y.posadchits 10 0.5 10.5
+TH1F hnegadc4 'HMS s2y- ADC hits' H.hod.2y.negadchits 10 0.5 10.5
+
+# ADC hits per Calorimeter layer
+TH1F chposadc1 'HMS Cal A+ ADC hits' H.cal.1pr.posadchits 13 0.5 13.5
+TH1F chnegadc1 'HMS Cal A- ADC hits' H.cal.1pr.negadchits 13 0.5 13.5
+TH1F chposadc2 'HMS Cal B+ ADC hits' H.cal.2ta.posadchits 13 0.5 13.5
+TH1F chnegadc2 'HMS Cal B- ADC hits' H.cal.2ta.negadchits 13 0.5 13.5
+TH1F chposadc3 'HMS Cal C+ ADC hits' H.cal.3ta.posadchits 13 0.5 13.5
+TH1F chposadc4 'HMS Cal D+ ADC hits' H.cal.4ta.posadchits 13 0.5 13.5
+
+#Calorimeter ADC channels
+TH1F hcaladc_A1p 'HMS Cal ADC A1p - PED' H.cal.1pr.apos_p[0] 150 50 500
+TH1F hcaladc_A2p 'HMS Cal ADC A2p - PED' H.cal.1pr.apos_p[1] 150 50 500
+TH1F hcaladc_A3p 'HMS Cal ADC A3p - PED' H.cal.1pr.apos_p[2] 150 50 500
+TH1F hcaladc_A4p 'HMS Cal ADC A4p - PED' H.cal.1pr.apos_p[3] 150 50 500
+TH1F hcaladc_A5p 'HMS Cal ADC A5p - PED' H.cal.1pr.apos_p[4] 150 50 500
+TH1F hcaladc_A6p 'HMS Cal ADC A6p - PED' H.cal.1pr.apos_p[5] 150 50 500
+TH1F hcaladc_A7p 'HMS Cal ADC A7p - PED' H.cal.1pr.apos_p[6] 150 50 500
+TH1F hcaladc_A8p 'HMS Cal ADC A8p - PED' H.cal.1pr.apos_p[7] 150 50 500
+TH1F hcaladc_A9p 'HMS Cal ADC A9p - PED' H.cal.1pr.apos_p[8] 150 50 500
+TH1F hcaladc_A10p 'HMS Cal ADC A10p - PED' H.cal.1pr.apos_p[9] 150 50 500
+TH1F hcaladc_A11p 'HMS Cal ADC A11p - PED' H.cal.1pr.apos_p[10] 150 50 500
+TH1F hcaladc_A12p 'HMS Cal ADC A12p - PED' H.cal.1pr.apos_p[11] 150 50 500
+TH1F hcaladc_A13p 'HMS Cal ADC A13p - PED' H.cal.1pr.apos_p[12] 150 50 500
+
+TH1F hcaladc_B1p 'HMS Cal ADC B1p - PED' H.cal.2ta.apos_p[0] 150 50 500
+TH1F hcaladc_B2p 'HMS Cal ADC B2p - PED' H.cal.2ta.apos_p[1] 150 50 500
+TH1F hcaladc_B3p 'HMS Cal ADC B3p - PED' H.cal.2ta.apos_p[2] 150 50 500
+TH1F hcaladc_B4p 'HMS Cal ADC B4p - PED' H.cal.2ta.apos_p[3] 150 50 500
+TH1F hcaladc_B5p 'HMS Cal ADC B5p - PED' H.cal.2ta.apos_p[4] 150 50 500
+TH1F hcaladc_B6p 'HMS Cal ADC B6p - PED' H.cal.2ta.apos_p[5] 150 50 500
+TH1F hcaladc_B7p 'HMS Cal ADC B7p - PED' H.cal.2ta.apos_p[6] 150 50 500
+TH1F hcaladc_B8p 'HMS Cal ADC B8p - PED' H.cal.2ta.apos_p[7] 150 50 500
+TH1F hcaladc_B9p 'HMS Cal ADC B9p - PED' H.cal.2ta.apos_p[8] 150 50 500
+TH1F hcaladc_B10p 'HMS Cal ADC B10p - PED' H.cal.2ta.apos_p[9] 150 50 500
+TH1F hcaladc_B11p 'HMS Cal ADC B11p - PED' H.cal.2ta.apos_p[10] 150 50 500
+TH1F hcaladc_B12p 'HMS Cal ADC B12p - PED' H.cal.2ta.apos_p[11] 150 50 500
+TH1F hcaladc_B13p 'HMS Cal ADC B13p - PED' H.cal.2ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_C1p 'HMS Cal ADC C1p - PED' H.cal.3ta.apos_p[0] 150 50 500
+TH1F hcaladc_C2p 'HMS Cal ADC C2p - PED' H.cal.3ta.apos_p[1] 150 50 500
+TH1F hcaladc_C3p 'HMS Cal ADC C3p - PED' H.cal.3ta.apos_p[2] 150 50 500
+TH1F hcaladc_C4p 'HMS Cal ADC C4p - PED' H.cal.3ta.apos_p[3] 150 50 500
+TH1F hcaladc_C5p 'HMS Cal ADC C5p - PED' H.cal.3ta.apos_p[4] 150 50 500
+TH1F hcaladc_C6p 'HMS Cal ADC C6p - PED' H.cal.3ta.apos_p[5] 150 50 500
+TH1F hcaladc_C7p 'HMS Cal ADC C7p - PED' H.cal.3ta.apos_p[6] 150 50 500
+TH1F hcaladc_C8p 'HMS Cal ADC C8p - PED' H.cal.3ta.apos_p[7] 150 50 500
+TH1F hcaladc_C9p 'HMS Cal ADC C9p - PED' H.cal.3ta.apos_p[8] 150 50 500
+TH1F hcaladc_C10p 'HMS Cal ADC C10p - PED' H.cal.3ta.apos_p[9] 150 50 500
+TH1F hcaladc_C11p 'HMS Cal ADC C11p - PED' H.cal.3ta.apos_p[10] 150 50 500
+TH1F hcaladc_C12p 'HMS Cal ADC C12p - PED' H.cal.3ta.apos_p[11] 150 50 500
+TH1F hcaladc_C13p 'HMS Cal ADC C13p - PED' H.cal.3ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_D1p 'HMS Cal ADC D1p - PED' H.cal.4ta.apos_p[0] 150 50 500
+TH1F hcaladc_D2p 'HMS Cal ADC D2p - PED' H.cal.4ta.apos_p[1] 150 50 500
+TH1F hcaladc_D3p 'HMS Cal ADC D3p - PED' H.cal.4ta.apos_p[2] 150 50 500
+TH1F hcaladc_D4p 'HMS Cal ADC D4p - PED' H.cal.4ta.apos_p[3] 150 50 500
+TH1F hcaladc_D5p 'HMS Cal ADC D5p - PED' H.cal.4ta.apos_p[4] 150 50 500
+TH1F hcaladc_D6p 'HMS Cal ADC D6p - PED' H.cal.4ta.apos_p[5] 150 50 500
+TH1F hcaladc_D7p 'HMS Cal ADC D7p - PED' H.cal.4ta.apos_p[6] 150 50 500
+TH1F hcaladc_D8p 'HMS Cal ADC D8p - PED' H.cal.4ta.apos_p[7] 150 50 500
+TH1F hcaladc_D9p 'HMS Cal ADC D9p - PED' H.cal.4ta.apos_p[8] 150 50 500
+TH1F hcaladc_D10p 'HMS Cal ADC D10p - PED' H.cal.4ta.apos_p[9] 150 50 500
+TH1F hcaladc_D11p 'HMS Cal ADC D11p - PED' H.cal.4ta.apos_p[10] 150 50 500
+TH1F hcaladc_D12p 'HMS Cal ADC D12p - PED' H.cal.4ta.apos_p[11] 150 50 500
+TH1F hcaladc_D13p 'HMS Cal ADC D13p - PED' H.cal.4ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_A1n 'HMS Cal ADC A1n - PED' H.cal.1pr.aneg_p[0] 150 50 500
+TH1F hcaladc_A2n 'HMS Cal ADC A2n - PED' H.cal.1pr.aneg_p[1] 150 50 500
+TH1F hcaladc_A3n 'HMS Cal ADC A3n - PED' H.cal.1pr.aneg_p[2] 150 50 500
+TH1F hcaladc_A4n 'HMS Cal ADC A4n - PED' H.cal.1pr.aneg_p[3] 150 50 500
+TH1F hcaladc_A5n 'HMS Cal ADC A5n - PED' H.cal.1pr.aneg_p[4] 150 50 500
+TH1F hcaladc_A6n 'HMS Cal ADC A6n - PED' H.cal.1pr.aneg_p[5] 150 50 500
+TH1F hcaladc_A7n 'HMS Cal ADC A7n - PED' H.cal.1pr.aneg_p[6] 150 50 500
+TH1F hcaladc_A8n 'HMS Cal ADC A8n - PED' H.cal.1pr.aneg_p[7] 150 50 500
+TH1F hcaladc_A9n 'HMS Cal ADC A9n - PED' H.cal.1pr.aneg_p[8] 150 50 500
+TH1F hcaladc_A10n 'HMS Cal ADC A10n - PED' H.cal.1pr.aneg_p[9] 150 50 500
+TH1F hcaladc_A11n 'HMS Cal ADC A11n - PED' H.cal.1pr.aneg_p[10] 150 50 500
+TH1F hcaladc_A12n 'HMS Cal ADC A12n - PED' H.cal.1pr.aneg_p[11] 150 50 500
+TH1F hcaladc_A13n 'HMS Cal ADC A13n - PED' H.cal.1pr.aneg_p[12] 150 50 500
+
+TH1F hcaladc_B1n 'HMS Cal ADC B1n - PED' H.cal.2ta.aneg_p[0] 150 50 500
+TH1F hcaladc_B2n 'HMS Cal ADC B2n - PED' H.cal.2ta.aneg_p[1] 150 50 500
+TH1F hcaladc_B3n 'HMS Cal ADC B3n - PED' H.cal.2ta.aneg_p[2] 150 50 500
+TH1F hcaladc_B4n 'HMS Cal ADC B4n - PED' H.cal.2ta.aneg_p[3] 150 50 500
+TH1F hcaladc_B5n 'HMS Cal ADC B5n - PED' H.cal.2ta.aneg_p[4] 150 50 500
+TH1F hcaladc_B6n 'HMS Cal ADC B6n - PED' H.cal.2ta.aneg_p[5] 150 50 500
+TH1F hcaladc_B7n 'HMS Cal ADC B7n - PED' H.cal.2ta.aneg_p[6] 150 50 500
+TH1F hcaladc_B8n 'HMS Cal ADC B8n - PED' H.cal.2ta.aneg_p[7] 150 50 500
+TH1F hcaladc_B9n 'HMS Cal ADC B9n - PED' H.cal.2ta.aneg_p[8] 150 50 500
+TH1F hcaladc_B10n 'HMS Cal ADC B10n - PED' H.cal.2ta.aneg_p[9] 150 50 500
+TH1F hcaladc_B11n 'HMS Cal ADC B11n - PED' H.cal.2ta.aneg_p[10] 150 50 500
+TH1F hcaladc_B12n 'HMS Cal ADC B12n - PED' H.cal.2ta.aneg_p[11] 150 50 500
+TH1F hcaladc_B13n 'HMS Cal ADC B13n - PED' H.cal.2ta.aneg_p[12] 150 50 500
+
+#TH1F hdcrawtdc
+#TH1F hdccuttdc
+
+# Can we use variables for the constants.  In CTP we used hdc_nwire(i)
+#
+TH1F hdc1x1_wm 'HDC 1X1 Wiremap' H.dc.1x1.tdchits 113 0.5 113.5
+TH1F hdc1y1_wm 'HDC 1Y1 Wiremap' H.dc.1y1.tdchits 52 0.5 52.5
+TH1F hdc1u1_wm 'HDC 1U1 Wiremap' H.dc.1u1.tdchits 107 0.5 107.5
+TH1F hdc1v1_wm 'HDC 1V1 Wiremap' H.dc.1v1.tdchits 107 0.5 107.5
+TH1F hdc1y2_wm 'HDC 1Y2 Wiremap' H.dc.1y2.tdchits 52 0.5 52.5
+TH1F hdc1x2_wm 'HDC 1X2 Wiremap' H.dc.1x2.tdchits 113 0.5 113.5
+TH1F hdc2x1_wm 'HDC 2X1 Wiremap' H.dc.2x1.tdchits 113 0.5 113.5
+TH1F hdc2y1_wm 'HDC 2Y1 Wiremap' H.dc.2y1.tdchits 52 0.5 52.5
+TH1F hdc2u1_wm 'HDC 2U1 Wiremap' H.dc.2u1.tdchits 107 0.5 107.5
+TH1F hdc2v1_wm 'HDC 2V1 Wiremap' H.dc.2v1.tdchits 107 0.5 107.5
+TH1F hdc2y2_wm 'HDC 2Y2 Wiremap' H.dc.2y2.tdchits 52 0.5 52.5
+TH1F hdc2x2_wm 'HDC 2X2 Wiremap' H.dc.2x2.tdchits 113 0.5 113.5
+
+# Drift Time and Drift Distance Spectra
+TH1F hdc1x1_dt 'HDC 1X1 Drift Time' H.dc.1x1.time 200 -100 300
+TH1F hdc1y1_dt 'HDC 1Y1 Drift Time' H.dc.1y1.time 200 -100 300
+TH1F hdc1u1_dt 'HDC 1U1 Drift Time' H.dc.1u1.time 200 -100 300
+TH1F hdc1v1_dt 'HDC 1V1 Drift Time' H.dc.1v1.time 200 -100 300
+TH1F hdc1y2_dt 'HDC 1Y2 Drift Time' H.dc.1y2.time 200 -100 300
+TH1F hdc1x2_dt 'HDC 1X2 Drift Time' H.dc.1x2.time 200 -100 300
+TH1F hdc2x1_dt 'HDC 2X1 Drift Time' H.dc.2x1.time 200 -100 300
+TH1F hdc2y1_dt 'HDC 2Y1 Drift Time' H.dc.2y1.time 200 -100 300
+TH1F hdc2u1_dt 'HDC 2U1 Drift Time' H.dc.2u1.time 200 -100 300
+TH1F hdc2v1_dt 'HDC 2V1 Drift Time' H.dc.2v1.time 200 -100 300
+TH1F hdc2y2_dt 'HDC 2Y2 Drift Time' H.dc.2y2.time 200 -100 300
+TH1F hdc2x2_dt 'HDC 2X2 Drift Time' H.dc.2x2.time 200 -100 300
+
+TH1F hdc1x1_dd 'HDC 1X1 Drift Distance' H.dc.1x1.dist 300 -0.1 0.6
+TH1F hdc1y1_dd 'HDC 1Y1 Drift Distance' H.dc.1y1.dist 300 -0.1 0.6
+TH1F hdc1u1_dd 'HDC 1U1 Drift Distance' H.dc.1u1.dist 300 -0.1 0.6
+TH1F hdc1v1_dd 'HDC 1V1 Drift Distance' H.dc.1v1.dist 300 -0.1 0.6
+TH1F hdc1y2_dd 'HDC 1Y2 Drift Distance' H.dc.1y2.dist 300 -0.1 0.6
+TH1F hdc1x2_dd 'HDC 1X2 Drift Distance' H.dc.1x2.dist 300 -0.1 0.6
+TH1F hdc2x1_dd 'HDC 2X1 Drift Distance' H.dc.2x1.dist 300 -0.1 0.6
+TH1F hdc2y1_dd 'HDC 2Y1 Drift Distance' H.dc.2y1.dist 300 -0.1 0.6
+TH1F hdc2u1_dd 'HDC 2U1 Drift Distance' H.dc.2u1.dist 300 -0.1 0.6
+TH1F hdc2v1_dd 'HDC 2V1 Drift Distance' H.dc.2v1.dist 300 -0.1 0.6
+TH1F hdc2y2_dd 'HDC 2Y2 Drift Distance' H.dc.2y2.dist 300 -0.1 0.6
+TH1F hdc2x2_dd 'HDC 2X2 Drift Distance' H.dc.2x2.dist 300 -0.1 0.6
+
+formula Hhodtdif1 H.hod.fpHitsTime[0]-H.hod.fpHitsTime[1]
+formula Hhodtdif2 H.hod.fpHitsTime[0]-H.hod.fpHitsTime[2]
+formula Hhodtdif3 H.hod.fpHitsTime[0]-H.hod.fpHitsTime[3]
+formula Hhodtdif4 H.hod.fpHitsTime[1]-H.hod.fpHitsTime[2]
+formula Hhodtdif5 H.hod.fpHitsTime[1]-H.hod.fpHitsTime[3]
+formula Hhodtdif6 H.hod.fpHitsTime[2]-H.hod.fpHitsTime[3]
+
+# Focal Plane times
+TH1F htimedif1 ' Time dif of plane 1 and 2' Hhodtdif1 80 -40. 40.
+TH1F htimedif2 ' Time dif of plane 1 and 3' Hhodtdif2 80 -40. 40.
+TH1F htimedif3 ' Time dif of plane 1 and 4' Hhodtdif3 80 -40. 40.
+TH1F htimedif4 ' Time dif of plane 2 and 3' Hhodtdif4 80 -40. 40.
+TH1F htimedif5 ' Time dif of plane 2 and 4' Hhodtdif5 80 -40. 40.
+TH1F htimedif6 ' Time dif of plane 3 and 4' Hhodtdif6 80 -40. 40.
+
+TH1F hs1xfptime 'HODO s1x fptime' H.hod.1x.fptime 80 0 80 H.hod.goodstarttime
+TH1F hs1yfptime 'HODO s1y fptime' H.hod.1y.fptime 80 0 80 H.hod.goodstarttime
+TH1F hs2xfptime 'HODO s2x fptime' H.hod.2x.fptime 80 0 80 H.hod.goodstarttime
+TH1F hs2yfptime 'HODO s2y fptime' H.hod.2y.fptime 80 0 80 H.hod.goodstarttime
+TH1F starttime  'HODO start time' H.hod.starttime 80 0 80 H.hod.goodstarttime
+
+#SOS
+# TDC hits per paddle
+TH1F spostdc1 'SOS s1x+ TDC hits' S.hod.1x.postdchits 9 0.5 9.5
+TH1F snegtdc1 'SOS s1x- TDC hits' S.hod.1x.negtdchits 9 0.5 9.5
+TH1F spostdc2 'SOS s1y+ TDC hits' S.hod.1y.postdchits 9 0.5 9.5
+TH1F snegtdc2 'SOS s1y- TDC hits' S.hod.1y.negtdchits 9 0.5 9.5
+TH1F spostdc3 'SOS s2x+ TDC hits' S.hod.2x.postdchits 16 0.5 16.5
+TH1F snegtdc3 'SOS s2x- TDC hits' S.hod.2x.negtdchits 16 0.5 16.5
+TH1F spostdc4 'SOS s2y+ TDC hits' S.hod.2y.postdchits 9 0.5 9.5
+TH1F snegtdc4 'SOS s2y- TDC hits' S.hod.2y.negtdchits 9 0.5 9.5
+
+# ADC hits per paddle
+TH1F sposadc1 'SOS s1x+ ADC hits' S.hod.1x.posadchits 9 0.5 9.5
+TH1F snegadc1 'SOS s1x- ADC hits' S.hod.1x.negadchits 9 0.5 9.5
+TH1F sposadc2 'SOS s1y+ ADC hits' S.hod.1y.posadchits 9 0.5 9.5
+TH1F snegadc2 'SOS s1y- ADC hits' S.hod.1y.negadchits 9 0.5 9.5
+TH1F sposadc3 'SOS s2x+ ADC hits' S.hod.2x.posadchits 16 0.5 16.5
+TH1F snegadc3 'SOS s2x- ADC hits' S.hod.2x.negadchits 16 0.5 16.5
+TH1F sposadc4 'SOS s2y+ ADC hits' S.hod.2y.posadchits 9 0.5 9.5
+TH1F snegadc4 'SOS s2y- ADC hits' S.hod.2y.negadchits 9 0.5 9.5
+
+TH1F sdc1u1_wm 'SDC 1U1 Wiremap' S.dc.1u1.tdchits 48 0.5 48.5
+TH1F sdc1u2_wm 'SDC 1U2 Wiremap' S.dc.1u2.tdchits 48 0.5 48.5
+TH1F sdc1x1_wm 'SDC 1X1 Wiremap' S.dc.1x1.tdchits 64 0.5 64.5
+TH1F sdc1x2_wm 'SDC 1X2 Wiremap' S.dc.1x2.tdchits 64 0.5 64.5
+TH1F sdc1v1_wm 'SDC 1V1 Wiremap' S.dc.1v1.tdchits 48 0.5 48.5
+TH1F sdc1v2_wm 'SDC 1V2 Wiremap' S.dc.1v2.tdchits 48 0.5 48.5
+TH1F sdc2u1_wm 'SDC 2U1 Wiremap' S.dc.2u1.tdchits 48 0.5 48.5
+TH1F sdc2u2_wm 'SDC 2U2 Wiremap' S.dc.2u2.tdchits 48 0.5 48.5
+TH1F sdc2x1_wm 'SDC 2X1 Wiremap' S.dc.2x1.tdchits 64 0.5 64.5
+TH1F sdc2x2_wm 'SDC 2X2 Wiremap' S.dc.2x2.tdchits 64 0.5 64.5
+TH1F sdc2v1_wm 'SDC 2V1 Wiremap' S.dc.2v1.tdchits 48 0.5 48.5
+TH1F sdc2v2_wm 'SDC 2V2 Wiremap' S.dc.2v2.tdchits 48 0.5 48.5
+
+TH1F sdc1u1_dd 'SDC 1U1 Drift Distance' S.dc.1u1.dist 300 -0.1 0.6
+TH1F sdc1u2_dd 'SDC 1U2 Drift Distance' S.dc.1u2.dist 300 -0.1 0.6
+TH1F sdc1x1_dd 'SDC 1X1 Drift Distance' S.dc.1x1.dist 300 -0.1 0.6
+TH1F sdc1x2_dd 'SDC 1X2 Drift Distance' S.dc.1x2.dist 300 -0.1 0.6
+TH1F sdc1v1_dd 'SDC 1V1 Drift Distance' S.dc.1v1.dist 300 -0.1 0.6
+TH1F sdc1v2_dd 'SDC 1V2 Drift Distance' S.dc.1v2.dist 300 -0.1 0.6
+TH1F sdc2u1_dd 'SDC 2U1 Drift Distance' S.dc.2u1.dist 300 -0.1 0.6
+TH1F sdc2u2_dd 'SDC 2U2 Drift Distance' S.dc.2u2.dist 300 -0.1 0.6
+TH1F sdc2x1_dd 'SDC 2X1 Drift Distance' S.dc.2x1.dist 300 -0.1 0.6
+TH1F sdc2x2_dd 'SDC 2X2 Drift Distance' S.dc.2x2.dist 300 -0.1 0.6
+TH1F sdc2v1_dd 'SDC 2V1 Drift Distance' S.dc.2v1.dist 300 -0.1 0.6
+TH1F sdc2v2_dd 'SDC 2V2 Drift Distance' S.dc.2v2.dist 300 -0.1 0.6
diff --git a/examples/output_52949.def b/examples/output_52949.def
new file mode 100644
index 0000000000000000000000000000000000000000..6c1f045915c9cb6683e6f3a46fafda984c27fb6f
--- /dev/null
+++ b/examples/output_52949.def
@@ -0,0 +1,219 @@
+# See $ANALYZER/examples/output_example.def for examples
+#
+#block H.dc.*
+#block H.hod.*
+block H.cal.*
+#block H.aero.*
+block H.tr.*
+block H.gold.*
+block g.evtyp
+
+# TDC spectra
+TH1F hfptime1x ' HMS s1x fptime' H.hod.1x.fptime 80 0. 80.
+TH1F hfptime1y ' HMS s1y fptime' H.hod.1y.fptime 80 0. 80.
+TH1F hfptime2x ' HMS s2x fptime' H.hod.2x.fptime 80 0. 80.
+TH1F hfptime2y ' HMS s2y fptime' H.hod.2y.fptime 80 0. 80.
+# Beta
+TH1F hfpBeta      'HMS Hodo Beta'  H.hod.fpBeta      250 -0.5 2.0
+TH1F hfpBetaChisq 'HMS Hodo Chisq' H.hod.fpBetaChisq 550 -5. 50.
+# TDC hits per paddle
+TH1F hpostdc1 'HMS s1x+ TDC hits' H.hod.1x.postdchits 16 0.5 16.5
+TH1F hnegtdc1 'HMS s1x- TDC hits' H.hod.1x.negtdchits 16 0.5 16.5
+TH1F hpostdc2 'HMS s1y+ TDC hits' H.hod.1y.postdchits 10 0.5 10.5
+TH1F hnegtdc2 'HMS s1y- TDC hits' H.hod.1y.negtdchits 10 0.5 10.5
+TH1F hpostdc3 'HMS s2x+ TDC hits' H.hod.2x.postdchits 16 0.5 16.5
+TH1F hnegtdc3 'HMS s2x- TDC hits' H.hod.2x.negtdchits 16 0.5 16.5
+TH1F hpostdc4 'HMS s2y+ TDC hits' H.hod.2y.postdchits 10 0.5 10.5
+TH1F hnegtdc4 'HMS s2y- TDC hits' H.hod.2y.negtdchits 10 0.5 10.5
+
+# ADC hits per paddle
+TH1F hposadc1 'HMS s1x+ ADC hits' H.hod.1x.posadchits 16 0.5 16.5
+TH1F hnegadc1 'HMS s1x- ADC hits' H.hod.1x.negadchits 16 0.5 16.5
+TH1F hposadc2 'HMS s1y+ ADC hits' H.hod.1y.posadchits 10 0.5 10.5
+TH1F hnegadc2 'HMS s1y- ADC hits' H.hod.1y.negadchits 10 0.5 10.5
+TH1F hposadc3 'HMS s2x+ ADC hits' H.hod.2x.posadchits 16 0.5 16.5
+TH1F hnegadc3 'HMS s2x- ADC hits' H.hod.2x.negadchits 16 0.5 16.5
+TH1F hposadc4 'HMS s2y+ ADC hits' H.hod.2y.posadchits 10 0.5 10.5
+TH1F hnegadc4 'HMS s2y- ADC hits' H.hod.2y.negadchits 10 0.5 10.5
+
+# ADC hits per Calorimeter layer
+TH1F chposadc1 'HMS Cal A+ ADC hits' H.cal.1pr.posadchits 13 0.5 13.5
+TH1F chnegadc1 'HMS Cal A- ADC hits' H.cal.1pr.negadchits 13 0.5 13.5
+TH1F chposadc2 'HMS Cal B+ ADC hits' H.cal.2ta.posadchits 13 0.5 13.5
+TH1F chnegadc2 'HMS Cal B- ADC hits' H.cal.2ta.negadchits 13 0.5 13.5
+TH1F chposadc3 'HMS Cal C+ ADC hits' H.cal.3ta.posadchits 13 0.5 13.5
+TH1F chposadc4 'HMS Cal D+ ADC hits' H.cal.4ta.posadchits 13 0.5 13.5
+
+# Deposited Energies per Calorimeter layer
+TH1F edep1 'HMS Cal A Edep' H.cal.1pr.eplane 100 -0.1 0.811
+TH1F edep2 'HMS Cal B Edep' H.cal.2ta.eplane 100 -0.1 0.811
+TH1F edep3 'HMS Cal C Edep' H.cal.3ta.eplane 100 -0.1 0.811
+TH1F edep4 'HMS Cal D Edep' H.cal.4ta.eplane 100 -0.1 0.811
+
+# Number of sparsified hits in the Calorimeter.
+TH1F nhits 'HMS Cal sparsified hits' H.cal.nhits 53 -0.5 52.5
+
+# Number of hit clusters in the Calorimeter.
+TH1F nclust 'HMS Cal number of clusters' H.cal.nclust 11 -0.5 10.5
+
+# Multiplicity of the largest cluster in the Calorimeter.
+####TH1F mult 'HMS Cal size of largest cluster' H.cal.mult 21 -0.5 20.5
+
+# Energy deposited in the largest cluster.
+####TH1F emax 'HMS Cal Max Clust. Edep' H.cal.emax 200 -0.1 1.622
+
+# Preshower Energy from the largest cluster.
+####TH1F eprmax 'HMS PrSh Max Clust. Edep' H.cal.eprmax 100 -0.1 0.811
+
+# X coordinate the largest cluster.
+####TH1F xmax 'HMS Cal Max Clust. X' H.cal.xmax 150 -75. 75.
+
+# Track coordinates at the front of calorimeter
+####TH2F trx_vs_try 'HMS Track X vs Y at calor.' H.cal.try H.cal.trx 80 -40. 40. 150 -75. 75. H.dc.ntrack==1
+####TH1F trx 'HMS Track X at calorimeter' H.cal.trx 150 -75. 75. H.dc.ntrack==1
+####TH1F try 'HMS Track Y at calorimeter' H.cal.try  80 -40. 40. H.dc.ntrack==1
+
+# Energy of the cluster associated to the main (currently first) track
+####TH1F tre 'HMS Cal Track Clust. Edep' H.cal.tre 200 -0.1 1.622 H.dc.ntrack==1
+
+# Preshower Energy of the cluster associated to the main (currently 1st) track
+####TH1F trepr 'HMS PrSh Track Clust. Edep' H.cal.trepr 100 -0.1 0.811 H.dc.ntrack==1
+
+# Coordinate corrected energy deposition from the main track (currently first)
+####TH1F trecor 'HMS Cal Track Edep' H.cal.trecor 200 -0.1 1.622 H.dc.ntrack==1
+
+# Coordinate corrected preshower energy from the main track (currently first)
+####TH1F treprcor 'HMS PrSh Track Edep' H.cal.treprcor 100 -0.1 0.811 H.dc.ntrack==1
+# Coordinate corrected energy deposition from the main track (currently first)
+# in the planes. Currently works for the 1-st pnae only.
+####TH1F treplcor 'HMS Cal Track E1' H.cal.treplcor 100 -0.1 0.811 H.dc.ntrack==1
+
+# Calorimeter ADC channels
+#TH1F hcaladc_A1p 'HMS Cal ADC A1p - PED' H.cal.1pr.apos_p[0] 150 50 500
+#TH1F hcaladc_A2p 'HMS Cal ADC A2p - PED' H.cal.1pr.apos_p[1] 150 50 500
+#TH1F hcaladc_A3p 'HMS Cal ADC A3p - PED' H.cal.1pr.apos_p[2] 150 50 500
+#TH1F hcaladc_A4p 'HMS Cal ADC A4p - PED' H.cal.1pr.apos_p[3] 150 50 500
+#TH1F hcaladc_A5p 'HMS Cal ADC A5p - PED' H.cal.1pr.apos_p[4] 150 50 500
+#TH1F hcaladc_A6p 'HMS Cal ADC A6p - PED' H.cal.1pr.apos_p[5] 150 50 500
+#TH1F hcaladc_A7p 'HMS Cal ADC A7p - PED' H.cal.1pr.apos_p[6] 150 50 500
+#TH1F hcaladc_A8p 'HMS Cal ADC A8p - PED' H.cal.1pr.apos_p[7] 150 50 500
+#TH1F hcaladc_A9p 'HMS Cal ADC A9p - PED' H.cal.1pr.apos_p[8] 150 50 500
+#TH1F hcaladc_A10p 'HMS Cal ADC A10p - PED' H.cal.1pr.apos_p[9] 150 50 500
+#TH1F hcaladc_A11p 'HMS Cal ADC A11p - PED' H.cal.1pr.apos_p[10] 150 50 500
+#TH1F hcaladc_A12p 'HMS Cal ADC A12p - PED' H.cal.1pr.apos_p[11] 150 50 500
+#TH1F hcaladc_A13p 'HMS Cal ADC A13p - PED' H.cal.1pr.apos_p[12] 150 50 500
+#TH1F hcaladc_B1p 'HMS Cal ADC B1p - PED' H.cal.2ta.apos_p[0] 150 50 500
+#TH1F hcaladc_B2p 'HMS Cal ADC B2p - PED' H.cal.2ta.apos_p[1] 150 50 500
+#TH1F hcaladc_B3p 'HMS Cal ADC B3p - PED' H.cal.2ta.apos_p[2] 150 50 500
+#TH1F hcaladc_B4p 'HMS Cal ADC B4p - PED' H.cal.2ta.apos_p[3] 150 50 500
+#TH1F hcaladc_B5p 'HMS Cal ADC B5p - PED' H.cal.2ta.apos_p[4] 150 50 500
+#TH1F hcaladc_B6p 'HMS Cal ADC B6p - PED' H.cal.2ta.apos_p[5] 150 50 500
+#TH1F hcaladc_B7p 'HMS Cal ADC B7p - PED' H.cal.2ta.apos_p[6] 150 50 500
+#TH1F hcaladc_B8p 'HMS Cal ADC B8p - PED' H.cal.2ta.apos_p[7] 150 50 500
+#TH1F hcaladc_B9p 'HMS Cal ADC B9p - PED' H.cal.2ta.apos_p[8] 150 50 500
+#TH1F hcaladc_B10p 'HMS Cal ADC B10p - PED' H.cal.2ta.apos_p[9] 150 50 500
+#TH1F hcaladc_B11p 'HMS Cal ADC B11p - PED' H.cal.2ta.apos_p[10] 150 50 500
+#TH1F hcaladc_B12p 'HMS Cal ADC B12p - PED' H.cal.2ta.apos_p[11] 150 50 500
+#TH1F hcaladc_B13p 'HMS Cal ADC B13p - PED' H.cal.2ta.apos_p[12] 150 50 500
+
+#TH1F hcaladc_C1p 'HMS Cal ADC C1p - PED' H.cal.3ta.apos_p[0] 150 50 500
+#TH1F hcaladc_C2p 'HMS Cal ADC C2p - PED' H.cal.3ta.apos_p[1] 150 50 500
+#TH1F hcaladc_C3p 'HMS Cal ADC C3p - PED' H.cal.3ta.apos_p[2] 150 50 500
+#TH1F hcaladc_C4p 'HMS Cal ADC C4p - PED' H.cal.3ta.apos_p[3] 150 50 500
+#TH1F hcaladc_C5p 'HMS Cal ADC C5p - PED' H.cal.3ta.apos_p[4] 150 50 500
+#TH1F hcaladc_C6p 'HMS Cal ADC C6p - PED' H.cal.3ta.apos_p[5] 150 50 500
+#TH1F hcaladc_C7p 'HMS Cal ADC C7p - PED' H.cal.3ta.apos_p[6] 150 50 500
+#TH1F hcaladc_C8p 'HMS Cal ADC C8p - PED' H.cal.3ta.apos_p[7] 150 50 500
+#TH1F hcaladc_C9p 'HMS Cal ADC C9p - PED' H.cal.3ta.apos_p[8] 150 50 500
+#TH1F hcaladc_C10p 'HMS Cal ADC C10p - PED' H.cal.3ta.apos_p[9] 150 50 500
+#TH1F hcaladc_C11p 'HMS Cal ADC C11p - PED' H.cal.3ta.apos_p[10] 150 50 500
+#TH1F hcaladc_C12p 'HMS Cal ADC C12p - PED' H.cal.3ta.apos_p[11] 150 50 500
+#TH1F hcaladc_C13p 'HMS Cal ADC C13p - PED' H.cal.3ta.apos_p[12] 150 50 500
+
+#TH1F hcaladc_D1p 'HMS Cal ADC D1p - PED' H.cal.4ta.apos_p[0] 150 50 500
+#TH1F hcaladc_D2p 'HMS Cal ADC D2p - PED' H.cal.4ta.apos_p[1] 150 50 500
+#TH1F hcaladc_D3p 'HMS Cal ADC D3p - PED' H.cal.4ta.apos_p[2] 150 50 500
+#TH1F hcaladc_D4p 'HMS Cal ADC D4p - PED' H.cal.4ta.apos_p[3] 150 50 500
+#TH1F hcaladc_D5p 'HMS Cal ADC D5p - PED' H.cal.4ta.apos_p[4] 150 50 500
+#TH1F hcaladc_D6p 'HMS Cal ADC D6p - PED' H.cal.4ta.apos_p[5] 150 50 500
+#TH1F hcaladc_D7p 'HMS Cal ADC D7p - PED' H.cal.4ta.apos_p[6] 150 50 500
+#TH1F hcaladc_D8p 'HMS Cal ADC D8p - PED' H.cal.4ta.apos_p[7] 150 50 500
+#TH1F hcaladc_D9p 'HMS Cal ADC D9p - PED' H.cal.4ta.apos_p[8] 150 50 500
+#TH1F hcaladc_D10p 'HMS Cal ADC D10p - PED' H.cal.4ta.apos_p[9] 150 50 500
+#TH1F hcaladc_D11p 'HMS Cal ADC D11p - PED' H.cal.4ta.apos_p[10] 150 50 500
+#TH1F hcaladc_D12p 'HMS Cal ADC D12p - PED' H.cal.4ta.apos_p[11] 150 50 500
+#TH1F hcaladc_D13p 'HMS Cal ADC D13p - PED' H.cal.4ta.apos_p[12] 150 50 500
+
+#TH1F hcaladc_A1n 'HMS Cal ADC A1n - PED' H.cal.1pr.aneg_p[0] 150 50 500
+#TH1F hcaladc_A2n 'HMS Cal ADC A2n - PED' H.cal.1pr.aneg_p[1] 150 50 500
+#TH1F hcaladc_A3n 'HMS Cal ADC A3n - PED' H.cal.1pr.aneg_p[2] 150 50 500
+#TH1F hcaladc_A4n 'HMS Cal ADC A4n - PED' H.cal.1pr.aneg_p[3] 150 50 500
+#TH1F hcaladc_A5n 'HMS Cal ADC A5n - PED' H.cal.1pr.aneg_p[4] 150 50 500
+#TH1F hcaladc_A6n 'HMS Cal ADC A6n - PED' H.cal.1pr.aneg_p[5] 150 50 500
+#TH1F hcaladc_A7n 'HMS Cal ADC A7n - PED' H.cal.1pr.aneg_p[6] 150 50 500
+#TH1F hcaladc_A8n 'HMS Cal ADC A8n - PED' H.cal.1pr.aneg_p[7] 150 50 500
+#TH1F hcaladc_A9n 'HMS Cal ADC A9n - PED' H.cal.1pr.aneg_p[8] 150 50 500
+#TH1F hcaladc_A10n 'HMS Cal ADC A10n - PED' H.cal.1pr.aneg_p[9] 150 50 500
+#TH1F hcaladc_A11n 'HMS Cal ADC A11n - PED' H.cal.1pr.aneg_p[10] 150 50 500
+#TH1F hcaladc_A12n 'HMS Cal ADC A12n - PED' H.cal.1pr.aneg_p[11] 150 50 500
+#TH1F hcaladc_A13n 'HMS Cal ADC A13n - PED' H.cal.1pr.aneg_p[12] 150 50 500
+
+#TH1F hcaladc_B1n 'HMS Cal ADC B1n - PED' H.cal.2ta.aneg_p[0] 150 50 500
+#TH1F hcaladc_B2n 'HMS Cal ADC B2n - PED' H.cal.2ta.aneg_p[1] 150 50 500
+#TH1F hcaladc_B3n 'HMS Cal ADC B3n - PED' H.cal.2ta.aneg_p[2] 150 50 500
+#TH1F hcaladc_B4n 'HMS Cal ADC B4n - PED' H.cal.2ta.aneg_p[3] 150 50 500
+#TH1F hcaladc_B5n 'HMS Cal ADC B5n - PED' H.cal.2ta.aneg_p[4] 150 50 500
+#TH1F hcaladc_B6n 'HMS Cal ADC B6n - PED' H.cal.2ta.aneg_p[5] 150 50 500
+#TH1F hcaladc_B7n 'HMS Cal ADC B7n - PED' H.cal.2ta.aneg_p[6] 150 50 500
+#TH1F hcaladc_B8n 'HMS Cal ADC B8n - PED' H.cal.2ta.aneg_p[7] 150 50 500
+#TH1F hcaladc_B9n 'HMS Cal ADC B9n - PED' H.cal.2ta.aneg_p[8] 150 50 500
+#TH1F hcaladc_B10n 'HMS Cal ADC B10n - PED' H.cal.2ta.aneg_p[9] 150 50 500
+#TH1F hcaladc_B11n 'HMS Cal ADC B11n - PED' H.cal.2ta.aneg_p[10] 150 50 500
+#TH1F hcaladc_B12n 'HMS Cal ADC B12n - PED' H.cal.2ta.aneg_p[11] 150 50 500
+#TH1F hcaladc_B13n 'HMS Cal ADC B13n - PED' H.cal.2ta.aneg_p[12] 150 50 500
+
+# Can we use variables for the constants.  In CTP we used hdc_nwire(i)
+#
+TH1F hdc1x1_wm 'HDC 1X1 Wiremap' H.dc.1x1.tdchits 113 0.5 113.5
+TH1F hdc1y1_wm 'HDC 1Y1 Wiremap' H.dc.1y1.tdchits 52 0.5 52.5
+TH1F hdc1u1_wm 'HDC 1U1 Wiremap' H.dc.1u1.tdchits 107 0.5 107.5
+TH1F hdc1v1_wm 'HDC 1V1 Wiremap' H.dc.1v1.tdchits 107 0.5 107.5
+TH1F hdc1y2_wm 'HDC 1Y2 Wiremap' H.dc.1y2.tdchits 52 0.5 52.5
+TH1F hdc1x2_wm 'HDC 1X2 Wiremap' H.dc.1x2.tdchits 113 0.5 113.5
+TH1F hdc2x1_wm 'HDC 2X1 Wiremap' H.dc.2x1.tdchits 113 0.5 113.5
+TH1F hdc2y1_wm 'HDC 2Y1 Wiremap' H.dc.2y1.tdchits 52 0.5 52.5
+TH1F hdc2u1_wm 'HDC 2U1 Wiremap' H.dc.2u1.tdchits 107 0.5 107.5
+TH1F hdc2v1_wm 'HDC 2V1 Wiremap' H.dc.2v1.tdchits 107 0.5 107.5
+TH1F hdc2y2_wm 'HDC 2Y2 Wiremap' H.dc.2y2.tdchits 52 0.5 52.5
+TH1F hdc2x2_wm 'HDC 2X2 Wiremap' H.dc.2x2.tdchits 113 0.5 113.5
+#
+TH1F ddist_hdc1x1 'HDC 1X1 Drift Dis' H.dc.1x1.dist 30 -0.1 0.6
+TH1F ddist_hdc1y1 'HDC 1Y1 Drift Dis' H.dc.1y1.dist 30 -0.1 0.6
+TH1F ddist_hdc1u1 'HDC 1U1 Drift Dis' H.dc.1u1.dist 30 -0.1 0.6
+TH1F ddist_hdc1v1 'HDC 1V1 Drift Dis' H.dc.1v1.dist 30 -0.1 0.6
+TH1F ddist_hdc1y2 'HDC 1Y2 Drift Dis' H.dc.1y2.dist 30 -0.1 0.6
+TH1F ddist_hdc1x2 'HDC 1X2 Drift Dis' H.dc.1x2.dist 30 -0.1 0.6
+TH1F ddist_hdc2x1 'HDC 2X1 Drift Dis' H.dc.2x1.dist 30 -0.1 0.6
+TH1F ddist_hdc2y1 'HDC 2Y1 Drift Dis' H.dc.2y1.dist 30 -0.1 0.6
+TH1F ddist_hdc2u1 'HDC 2U1 Drift Dis' H.dc.2u1.dist 30 -0.1 0.6
+TH1F ddist_hdc2v1 'HDC 2V1 Drift Dis' H.dc.2v1.dist 30 -0.1 0.6
+TH1F ddist_hdc2y2 'HDC 2Y2 Drift Dis' H.dc.2y2.dist 30 -0.1 0.6
+TH1F ddist_hdc2x2 'HDC 2X2 Drift Dis' H.dc.2x2.dist 30 -0.1 0.6
+#
+TH1F dtime_hdc1x1 'HDC 1X1 Drift Time' H.dc.1x1.time 200 -100 300
+TH1F dtime_hdc1y1 'HDC 1Y1 Drift Time' H.dc.1y1.time 200 -100 300
+TH1F dtime_hdc1u1 'HDC 1U1 Drift Time' H.dc.1u1.time 200 -100 300
+TH1F dtime_hdc1v1 'HDC 1V1 Drift Time' H.dc.1v1.time 200 -100 300
+TH1F dtime_hdc1y2 'HDC 1Y2 Drift Time' H.dc.1y2.time 200 -100 300
+TH1F dtime_hdc1x2 'HDC 1X2 Drift Time' H.dc.1x2.time 200 -100 300
+TH1F dtime_hdc2x1 'HDC 2X1 Drift Time' H.dc.2x1.time 200 -100 300
+TH1F dtime_hdc2y1 'HDC 2Y1 Drift Time' H.dc.2y1.time 200 -100 300
+TH1F dtime_hdc2u1 'HDC 2U1 Drift Time' H.dc.2u1.time 200 -100 300
+TH1F dtime_hdc2v1 'HDC 2V1 Drift Time' H.dc.2v1.time 200 -100 300
+TH1F dtime_hdc2y2 'HDC 2Y2 Drift Time' H.dc.2y2.time 200 -100 300
+TH1F dtime_hdc2x2 'HDC 2X2 Drift Time' H.dc.2x2.time 200 -100 300
+#
+# Golden Track momentum
+TH1F golden_p 'HMS Golden P' H.gold.p 100 0.011 1.8 H.dc.ntrack!=0
+TH1F golden_e 'HMS Golden E' H.gold.e 100 0.011 1.8 H.dc.ntrack!=0
+TH1F golden_enorm 'HMS Golden E/P' H.gold.e/H.gold.p 100 0.01 1.8 H.gold.index>=0
diff --git a/examples/output_bpw.def b/examples/output_bpw.def
new file mode 100644
index 0000000000000000000000000000000000000000..0fc62484ef2387c8abe7993aa0daf637ecfc0457
--- /dev/null
+++ b/examples/output_bpw.def
@@ -0,0 +1,183 @@
+# See $ANALYZER/examples/output_example.def for examples
+#
+block H.dc.*
+block H.hod.*
+block H.cal.*
+block H.aero.*
+block H.cher.*
+block H.tr.*
+block RB.*
+block g.evtyp
+
+# TDC hits per paddle
+TH1F hpostdc1 'HMS s1x+ TDC hits' H.hod.1x.postdchits 16 0.5 16.5
+TH1F hnegtdc1 'HMS s1x- TDC hits' H.hod.1x.negtdchits 16 0.5 16.5
+TH1F hpostdc2 'HMS s1y+ TDC hits' H.hod.1y.postdchits 10 0.5 10.5
+TH1F hnegtdc2 'HMS s1y- TDC hits' H.hod.1y.negtdchits 10 0.5 10.5
+TH1F hpostdc3 'HMS s2x+ TDC hits' H.hod.2x.postdchits 16 0.5 16.5
+TH1F hnegtdc3 'HMS s2x- TDC hits' H.hod.2x.negtdchits 16 0.5 16.5
+TH1F hpostdc4 'HMS s2y+ TDC hits' H.hod.2y.postdchits 10 0.5 10.5
+TH1F hnegtdc4 'HMS s2y- TDC hits' H.hod.2y.negtdchits 10 0.5 10.5
+
+# ADC hits per paddle
+TH1F hposadc1 'HMS s1x+ ADC hits' H.hod.1x.posadchits 16 0.5 16.5
+TH1F hnegadc1 'HMS s1x- ADC hits' H.hod.1x.negadchits 16 0.5 16.5
+TH1F hposadc2 'HMS s1y+ ADC hits' H.hod.1y.posadchits 10 0.5 10.5
+TH1F hnegadc2 'HMS s1y- ADC hits' H.hod.1y.negadchits 10 0.5 10.5
+TH1F hposadc3 'HMS s2x+ ADC hits' H.hod.2x.posadchits 16 0.5 16.5
+TH1F hnegadc3 'HMS s2x- ADC hits' H.hod.2x.negadchits 16 0.5 16.5
+TH1F hposadc4 'HMS s2y+ ADC hits' H.hod.2y.posadchits 10 0.5 10.5
+TH1F hnegadc4 'HMS s2y- ADC hits' H.hod.2y.negadchits 10 0.5 10.5
+
+# ADC hits per Calorimeter layer
+TH1F chposadc1 'HMS Cal A+ ADC hits' H.cal.1pr.posadchits 13 0.5 13.5
+TH1F chnegadc1 'HMS Cal A- ADC hits' H.cal.1pr.negadchits 13 0.5 13.5
+TH1F chposadc2 'HMS Cal B+ ADC hits' H.cal.2ta.posadchits 13 0.5 13.5
+TH1F chnegadc2 'HMS Cal B- ADC hits' H.cal.2ta.negadchits 13 0.5 13.5
+TH1F chposadc3 'HMS Cal C+ ADC hits' H.cal.3ta.posadchits 13 0.5 13.5
+TH1F chposadc4 'HMS Cal D+ ADC hits' H.cal.4ta.posadchits 13 0.5 13.5
+
+#Calorimeter ADC channels
+TH1F hcaladc_A1p 'HMS Cal ADC A1p - PED' H.cal.1pr.apos_p[0] 150 50 500
+TH1F hcaladc_A2p 'HMS Cal ADC A2p - PED' H.cal.1pr.apos_p[1] 150 50 500
+TH1F hcaladc_A3p 'HMS Cal ADC A3p - PED' H.cal.1pr.apos_p[2] 150 50 500
+TH1F hcaladc_A4p 'HMS Cal ADC A4p - PED' H.cal.1pr.apos_p[3] 150 50 500
+TH1F hcaladc_A5p 'HMS Cal ADC A5p - PED' H.cal.1pr.apos_p[4] 150 50 500
+TH1F hcaladc_A6p 'HMS Cal ADC A6p - PED' H.cal.1pr.apos_p[5] 150 50 500
+TH1F hcaladc_A7p 'HMS Cal ADC A7p - PED' H.cal.1pr.apos_p[6] 150 50 500
+TH1F hcaladc_A8p 'HMS Cal ADC A8p - PED' H.cal.1pr.apos_p[7] 150 50 500
+TH1F hcaladc_A9p 'HMS Cal ADC A9p - PED' H.cal.1pr.apos_p[8] 150 50 500
+TH1F hcaladc_A10p 'HMS Cal ADC A10p - PED' H.cal.1pr.apos_p[9] 150 50 500
+TH1F hcaladc_A11p 'HMS Cal ADC A11p - PED' H.cal.1pr.apos_p[10] 150 50 500
+TH1F hcaladc_A12p 'HMS Cal ADC A12p - PED' H.cal.1pr.apos_p[11] 150 50 500
+TH1F hcaladc_A13p 'HMS Cal ADC A13p - PED' H.cal.1pr.apos_p[12] 150 50 500
+
+TH1F hcaladc_B1p 'HMS Cal ADC B1p - PED' H.cal.2ta.apos_p[0] 150 50 500
+TH1F hcaladc_B2p 'HMS Cal ADC B2p - PED' H.cal.2ta.apos_p[1] 150 50 500
+TH1F hcaladc_B3p 'HMS Cal ADC B3p - PED' H.cal.2ta.apos_p[2] 150 50 500
+TH1F hcaladc_B4p 'HMS Cal ADC B4p - PED' H.cal.2ta.apos_p[3] 150 50 500
+TH1F hcaladc_B5p 'HMS Cal ADC B5p - PED' H.cal.2ta.apos_p[4] 150 50 500
+TH1F hcaladc_B6p 'HMS Cal ADC B6p - PED' H.cal.2ta.apos_p[5] 150 50 500
+TH1F hcaladc_B7p 'HMS Cal ADC B7p - PED' H.cal.2ta.apos_p[6] 150 50 500
+TH1F hcaladc_B8p 'HMS Cal ADC B8p - PED' H.cal.2ta.apos_p[7] 150 50 500
+TH1F hcaladc_B9p 'HMS Cal ADC B9p - PED' H.cal.2ta.apos_p[8] 150 50 500
+TH1F hcaladc_B10p 'HMS Cal ADC B10p - PED' H.cal.2ta.apos_p[9] 150 50 500
+TH1F hcaladc_B11p 'HMS Cal ADC B11p - PED' H.cal.2ta.apos_p[10] 150 50 500
+TH1F hcaladc_B12p 'HMS Cal ADC B12p - PED' H.cal.2ta.apos_p[11] 150 50 500
+TH1F hcaladc_B13p 'HMS Cal ADC B13p - PED' H.cal.2ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_C1p 'HMS Cal ADC C1p - PED' H.cal.3ta.apos_p[0] 150 50 500
+TH1F hcaladc_C2p 'HMS Cal ADC C2p - PED' H.cal.3ta.apos_p[1] 150 50 500
+TH1F hcaladc_C3p 'HMS Cal ADC C3p - PED' H.cal.3ta.apos_p[2] 150 50 500
+TH1F hcaladc_C4p 'HMS Cal ADC C4p - PED' H.cal.3ta.apos_p[3] 150 50 500
+TH1F hcaladc_C5p 'HMS Cal ADC C5p - PED' H.cal.3ta.apos_p[4] 150 50 500
+TH1F hcaladc_C6p 'HMS Cal ADC C6p - PED' H.cal.3ta.apos_p[5] 150 50 500
+TH1F hcaladc_C7p 'HMS Cal ADC C7p - PED' H.cal.3ta.apos_p[6] 150 50 500
+TH1F hcaladc_C8p 'HMS Cal ADC C8p - PED' H.cal.3ta.apos_p[7] 150 50 500
+TH1F hcaladc_C9p 'HMS Cal ADC C9p - PED' H.cal.3ta.apos_p[8] 150 50 500
+TH1F hcaladc_C10p 'HMS Cal ADC C10p - PED' H.cal.3ta.apos_p[9] 150 50 500
+TH1F hcaladc_C11p 'HMS Cal ADC C11p - PED' H.cal.3ta.apos_p[10] 150 50 500
+TH1F hcaladc_C12p 'HMS Cal ADC C12p - PED' H.cal.3ta.apos_p[11] 150 50 500
+TH1F hcaladc_C13p 'HMS Cal ADC C13p - PED' H.cal.3ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_D1p 'HMS Cal ADC D1p - PED' H.cal.4ta.apos_p[0] 150 50 500
+TH1F hcaladc_D2p 'HMS Cal ADC D2p - PED' H.cal.4ta.apos_p[1] 150 50 500
+TH1F hcaladc_D3p 'HMS Cal ADC D3p - PED' H.cal.4ta.apos_p[2] 150 50 500
+TH1F hcaladc_D4p 'HMS Cal ADC D4p - PED' H.cal.4ta.apos_p[3] 150 50 500
+TH1F hcaladc_D5p 'HMS Cal ADC D5p - PED' H.cal.4ta.apos_p[4] 150 50 500
+TH1F hcaladc_D6p 'HMS Cal ADC D6p - PED' H.cal.4ta.apos_p[5] 150 50 500
+TH1F hcaladc_D7p 'HMS Cal ADC D7p - PED' H.cal.4ta.apos_p[6] 150 50 500
+TH1F hcaladc_D8p 'HMS Cal ADC D8p - PED' H.cal.4ta.apos_p[7] 150 50 500
+TH1F hcaladc_D9p 'HMS Cal ADC D9p - PED' H.cal.4ta.apos_p[8] 150 50 500
+TH1F hcaladc_D10p 'HMS Cal ADC D10p - PED' H.cal.4ta.apos_p[9] 150 50 500
+TH1F hcaladc_D11p 'HMS Cal ADC D11p - PED' H.cal.4ta.apos_p[10] 150 50 500
+TH1F hcaladc_D12p 'HMS Cal ADC D12p - PED' H.cal.4ta.apos_p[11] 150 50 500
+TH1F hcaladc_D13p 'HMS Cal ADC D13p - PED' H.cal.4ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_A1n 'HMS Cal ADC A1n - PED' H.cal.1pr.aneg_p[0] 150 50 500
+TH1F hcaladc_A2n 'HMS Cal ADC A2n - PED' H.cal.1pr.aneg_p[1] 150 50 500
+TH1F hcaladc_A3n 'HMS Cal ADC A3n - PED' H.cal.1pr.aneg_p[2] 150 50 500
+TH1F hcaladc_A4n 'HMS Cal ADC A4n - PED' H.cal.1pr.aneg_p[3] 150 50 500
+TH1F hcaladc_A5n 'HMS Cal ADC A5n - PED' H.cal.1pr.aneg_p[4] 150 50 500
+TH1F hcaladc_A6n 'HMS Cal ADC A6n - PED' H.cal.1pr.aneg_p[5] 150 50 500
+TH1F hcaladc_A7n 'HMS Cal ADC A7n - PED' H.cal.1pr.aneg_p[6] 150 50 500
+TH1F hcaladc_A8n 'HMS Cal ADC A8n - PED' H.cal.1pr.aneg_p[7] 150 50 500
+TH1F hcaladc_A9n 'HMS Cal ADC A9n - PED' H.cal.1pr.aneg_p[8] 150 50 500
+TH1F hcaladc_A10n 'HMS Cal ADC A10n - PED' H.cal.1pr.aneg_p[9] 150 50 500
+TH1F hcaladc_A11n 'HMS Cal ADC A11n - PED' H.cal.1pr.aneg_p[10] 150 50 500
+TH1F hcaladc_A12n 'HMS Cal ADC A12n - PED' H.cal.1pr.aneg_p[11] 150 50 500
+TH1F hcaladc_A13n 'HMS Cal ADC A13n - PED' H.cal.1pr.aneg_p[12] 150 50 500
+
+TH1F hcaladc_B1n 'HMS Cal ADC B1n - PED' H.cal.2ta.aneg_p[0] 150 50 500
+TH1F hcaladc_B2n 'HMS Cal ADC B2n - PED' H.cal.2ta.aneg_p[1] 150 50 500
+TH1F hcaladc_B3n 'HMS Cal ADC B3n - PED' H.cal.2ta.aneg_p[2] 150 50 500
+TH1F hcaladc_B4n 'HMS Cal ADC B4n - PED' H.cal.2ta.aneg_p[3] 150 50 500
+TH1F hcaladc_B5n 'HMS Cal ADC B5n - PED' H.cal.2ta.aneg_p[4] 150 50 500
+TH1F hcaladc_B6n 'HMS Cal ADC B6n - PED' H.cal.2ta.aneg_p[5] 150 50 500
+TH1F hcaladc_B7n 'HMS Cal ADC B7n - PED' H.cal.2ta.aneg_p[6] 150 50 500
+TH1F hcaladc_B8n 'HMS Cal ADC B8n - PED' H.cal.2ta.aneg_p[7] 150 50 500
+TH1F hcaladc_B9n 'HMS Cal ADC B9n - PED' H.cal.2ta.aneg_p[8] 150 50 500
+TH1F hcaladc_B10n 'HMS Cal ADC B10n - PED' H.cal.2ta.aneg_p[9] 150 50 500
+TH1F hcaladc_B11n 'HMS Cal ADC B11n - PED' H.cal.2ta.aneg_p[10] 150 50 500
+TH1F hcaladc_B12n 'HMS Cal ADC B12n - PED' H.cal.2ta.aneg_p[11] 150 50 500
+TH1F hcaladc_B13n 'HMS Cal ADC B13n - PED' H.cal.2ta.aneg_p[12] 150 50 500
+
+#TH1F hdcrawtdc
+#TH1F hdccuttdc
+
+# Can we use variables for the constants.  In CTP we used hdc_nwire(i)
+#
+TH1F hdc1x1_wm 'HDC 1X1 Wiremap' H.dc.1x1.tdchits 113 0.5 113.5
+TH1F hdc1y1_wm 'HDC 1Y1 Wiremap' H.dc.1y1.tdchits 52 0.5 52.5
+TH1F hdc1u1_wm 'HDC 1U1 Wiremap' H.dc.1u1.tdchits 107 0.5 107.5
+TH1F hdc1v1_wm 'HDC 1V1 Wiremap' H.dc.1v1.tdchits 107 0.5 107.5
+TH1F hdc1y2_wm 'HDC 1Y2 Wiremap' H.dc.1y2.tdchits 52 0.5 52.5
+TH1F hdc1x2_wm 'HDC 1X2 Wiremap' H.dc.1x2.tdchits 113 0.5 113.5
+TH1F hdc2x1_wm 'HDC 2X1 Wiremap' H.dc.2x1.tdchits 113 0.5 113.5
+TH1F hdc2y1_wm 'HDC 2Y1 Wiremap' H.dc.2y1.tdchits 52 0.5 52.5
+TH1F hdc2u1_wm 'HDC 2U1 Wiremap' H.dc.2u1.tdchits 107 0.5 107.5
+TH1F hdc2v1_wm 'HDC 2V1 Wiremap' H.dc.2v1.tdchits 107 0.5 107.5
+TH1F hdc2y2_wm 'HDC 2Y2 Wiremap' H.dc.2y2.tdchits 52 0.5 52.5
+TH1F hdc2x2_wm 'HDC 2X2 Wiremap' H.dc.2x2.tdchits 113 0.5 113.5
+
+# Drift Time and Drift Distance Spectra
+TH1F hdc1x1_dt 'HDC 1X1 Drift Time' H.dc.1x1.time 200 -100 300
+TH1F hdc1y1_dt 'HDC 1Y1 Drift Time' H.dc.1y1.time 200 -100 300
+TH1F hdc1u1_dt 'HDC 1U1 Drift Time' H.dc.1u1.time 200 -100 300
+TH1F hdc1v1_dt 'HDC 1V1 Drift Time' H.dc.1v1.time 200 -100 300
+TH1F hdc1y2_dt 'HDC 1Y2 Drift Time' H.dc.1y2.time 200 -100 300
+TH1F hdc1x2_dt 'HDC 1X2 Drift Time' H.dc.1x2.time 200 -100 300
+TH1F hdc2x1_dt 'HDC 2X1 Drift Time' H.dc.2x1.time 200 -100 300
+TH1F hdc2y1_dt 'HDC 2Y1 Drift Time' H.dc.2y1.time 200 -100 300
+TH1F hdc2u1_dt 'HDC 2U1 Drift Time' H.dc.2u1.time 200 -100 300
+TH1F hdc2v1_dt 'HDC 2V1 Drift Time' H.dc.2v1.time 200 -100 300
+TH1F hdc2y2_dt 'HDC 2Y2 Drift Time' H.dc.2y2.time 200 -100 300
+TH1F hdc2x2_dt 'HDC 2X2 Drift Time' H.dc.2x2.time 200 -100 300
+
+TH1F hdc1x1_dd 'HDC 1X1 Drift Distance' H.dc.1x1.dist 300 -0.1 0.6
+TH1F hdc1y1_dd 'HDC 1Y1 Drift Distance' H.dc.1y1.dist 300 -0.1 0.6
+TH1F hdc1u1_dd 'HDC 1U1 Drift Distance' H.dc.1u1.dist 300 -0.1 0.6
+TH1F hdc1v1_dd 'HDC 1V1 Drift Distance' H.dc.1v1.dist 300 -0.1 0.6
+TH1F hdc1y2_dd 'HDC 1Y2 Drift Distance' H.dc.1y2.dist 300 -0.1 0.6
+TH1F hdc1x2_dd 'HDC 1X2 Drift Distance' H.dc.1x2.dist 300 -0.1 0.6
+TH1F hdc2x1_dd 'HDC 2X1 Drift Distance' H.dc.2x1.dist 300 -0.1 0.6
+TH1F hdc2y1_dd 'HDC 2Y1 Drift Distance' H.dc.2y1.dist 300 -0.1 0.6
+TH1F hdc2u1_dd 'HDC 2U1 Drift Distance' H.dc.2u1.dist 300 -0.1 0.6
+TH1F hdc2v1_dd 'HDC 2V1 Drift Distance' H.dc.2v1.dist 300 -0.1 0.6
+TH1F hdc2y2_dd 'HDC 2Y2 Drift Distance' H.dc.2y2.dist 300 -0.1 0.6
+TH1F hdc2x2_dd 'HDC 2X2 Drift Distance' H.dc.2x2.dist 300 -0.1 0.6
+
+# Focal Plane times
+TH1F hs1xfptime 'HODO s1x fptime' H.hod.1x.fptime 80 0 80 H.hod.hgoodstarttime
+TH1F hs1yfptime 'HODO s1y fptime' H.hod.1y.fptime 80 0 80 H.hod.hgoodstarttime
+TH1F hs2xfptime 'HODO s2x fptime' H.hod.2x.fptime 80 0 80 H.hod.hgoodstarttime
+TH1F hs2yfptime 'HODO s2y fptime' H.hod.2y.fptime 80 0 80 H.hod.hgoodstarttime
+TH1F starttime  'HODO start time' H.hod.starttime 80 0 80 H.hod.hgoodstarttime
+
+# Beam related ADC channels. eg. raster
+TH1F frx_raw_adc 'Raster X Raw ADC' RB.raster.frx_raw_adc 1200 3200 4400
+TH1F fry_raw_adc 'Raster Y Raw ADC' RB.raster.fry_raw_adc 1200 3200 4400
+TH1F frx_adc 'Raster X ADC' RB.raster.frx_adc 1000 -500 500
+TH1F fry_adc 'Raster Y ADC' RB.raster.fry_adc 1000 -500 500
+TH1F frx 'Raster X Position' RB.raster.frx 100 -0.5   0.5
+TH1F fry 'Raster Y Position' RB.raster.fry 100 -0.5   0.5
diff --git a/examples/output_mkj.def b/examples/output_mkj.def
new file mode 100644
index 0000000000000000000000000000000000000000..198c491da320d3850034dd35a6baf13e68ef772e
--- /dev/null
+++ b/examples/output_mkj.def
@@ -0,0 +1,170 @@
+# See $ANALYZER/examples/output_example.def for examples
+#
+block H.dc.*
+block H.hod.*
+block H.cal.*
+block H.aero.*
+block H.tr.*
+block g.evtyp
+
+# TDC spectra
+TH1F hfptime1x ' HMS s1x fptime' H.hod.1x.fptime 80 0. 80.
+TH1F hfptime1y ' HMS s1y fptime' H.hod.1y.fptime 80 0. 80.
+TH1F hfptime2x ' HMS s2x fptime' H.hod.2x.fptime 80 0. 80.
+TH1F hfptime2y ' HMS s2y fptime' H.hod.2y.fptime 80 0. 80.
+# Beta
+TH1F hfpBeta      'HMS Hodo Beta'  H.hod.fpBeta      250 -0.5 2.0
+TH1F hfpBetaChisq 'HMS Hodo Chisq' H.hod.fpBetaChisq 550 -5. 50.
+# TDC hits per paddle
+TH1F hpostdc1 'HMS s1x+ TDC hits' H.hod.1x.postdchits 16 0.5 16.5
+TH1F hnegtdc1 'HMS s1x- TDC hits' H.hod.1x.negtdchits 16 0.5 16.5
+TH1F hpostdc2 'HMS s1y+ TDC hits' H.hod.1y.postdchits 10 0.5 10.5
+TH1F hnegtdc2 'HMS s1y- TDC hits' H.hod.1y.negtdchits 10 0.5 10.5
+TH1F hpostdc3 'HMS s2x+ TDC hits' H.hod.2x.postdchits 16 0.5 16.5
+TH1F hnegtdc3 'HMS s2x- TDC hits' H.hod.2x.negtdchits 16 0.5 16.5
+TH1F hpostdc4 'HMS s2y+ TDC hits' H.hod.2y.postdchits 10 0.5 10.5
+TH1F hnegtdc4 'HMS s2y- TDC hits' H.hod.2y.negtdchits 10 0.5 10.5
+
+# ADC hits per paddle
+TH1F hposadc1 'HMS s1x+ ADC hits' H.hod.1x.posadchits 16 0.5 16.5
+TH1F hnegadc1 'HMS s1x- ADC hits' H.hod.1x.negadchits 16 0.5 16.5
+TH1F hposadc2 'HMS s1y+ ADC hits' H.hod.1y.posadchits 10 0.5 10.5
+TH1F hnegadc2 'HMS s1y- ADC hits' H.hod.1y.negadchits 10 0.5 10.5
+TH1F hposadc3 'HMS s2x+ ADC hits' H.hod.2x.posadchits 16 0.5 16.5
+TH1F hnegadc3 'HMS s2x- ADC hits' H.hod.2x.negadchits 16 0.5 16.5
+TH1F hposadc4 'HMS s2y+ ADC hits' H.hod.2y.posadchits 10 0.5 10.5
+TH1F hnegadc4 'HMS s2y- ADC hits' H.hod.2y.negadchits 10 0.5 10.5
+
+# ADC hits per Calorimeter layer
+TH1F chposadc1 'HMS Cal A+ ADC hits' H.cal.1pr.posadchits 13 0.5 13.5
+TH1F chnegadc1 'HMS Cal A- ADC hits' H.cal.1pr.negadchits 13 0.5 13.5
+TH1F chposadc2 'HMS Cal B+ ADC hits' H.cal.2ta.posadchits 13 0.5 13.5
+TH1F chnegadc2 'HMS Cal B- ADC hits' H.cal.2ta.negadchits 13 0.5 13.5
+TH1F chposadc3 'HMS Cal C+ ADC hits' H.cal.3ta.posadchits 13 0.5 13.5
+TH1F chposadc4 'HMS Cal D+ ADC hits' H.cal.4ta.posadchits 13 0.5 13.5
+
+#Calorimeter ADC channels
+TH1F hcaladc_A1p 'HMS Cal ADC A1p - PED' H.cal.1pr.apos_p[0] 150 50 500
+TH1F hcaladc_A2p 'HMS Cal ADC A2p - PED' H.cal.1pr.apos_p[1] 150 50 500
+TH1F hcaladc_A3p 'HMS Cal ADC A3p - PED' H.cal.1pr.apos_p[2] 150 50 500
+TH1F hcaladc_A4p 'HMS Cal ADC A4p - PED' H.cal.1pr.apos_p[3] 150 50 500
+TH1F hcaladc_A5p 'HMS Cal ADC A5p - PED' H.cal.1pr.apos_p[4] 150 50 500
+TH1F hcaladc_A6p 'HMS Cal ADC A6p - PED' H.cal.1pr.apos_p[5] 150 50 500
+TH1F hcaladc_A7p 'HMS Cal ADC A7p - PED' H.cal.1pr.apos_p[6] 150 50 500
+TH1F hcaladc_A8p 'HMS Cal ADC A8p - PED' H.cal.1pr.apos_p[7] 150 50 500
+TH1F hcaladc_A9p 'HMS Cal ADC A9p - PED' H.cal.1pr.apos_p[8] 150 50 500
+TH1F hcaladc_A10p 'HMS Cal ADC A10p - PED' H.cal.1pr.apos_p[9] 150 50 500
+TH1F hcaladc_A11p 'HMS Cal ADC A11p - PED' H.cal.1pr.apos_p[10] 150 50 500
+TH1F hcaladc_A12p 'HMS Cal ADC A12p - PED' H.cal.1pr.apos_p[11] 150 50 500
+TH1F hcaladc_A13p 'HMS Cal ADC A13p - PED' H.cal.1pr.apos_p[12] 150 50 500
+TH1F hcaladc_B1p 'HMS Cal ADC B1p - PED' H.cal.2ta.apos_p[0] 150 50 500
+TH1F hcaladc_B2p 'HMS Cal ADC B2p - PED' H.cal.2ta.apos_p[1] 150 50 500
+TH1F hcaladc_B3p 'HMS Cal ADC B3p - PED' H.cal.2ta.apos_p[2] 150 50 500
+TH1F hcaladc_B4p 'HMS Cal ADC B4p - PED' H.cal.2ta.apos_p[3] 150 50 500
+TH1F hcaladc_B5p 'HMS Cal ADC B5p - PED' H.cal.2ta.apos_p[4] 150 50 500
+TH1F hcaladc_B6p 'HMS Cal ADC B6p - PED' H.cal.2ta.apos_p[5] 150 50 500
+TH1F hcaladc_B7p 'HMS Cal ADC B7p - PED' H.cal.2ta.apos_p[6] 150 50 500
+TH1F hcaladc_B8p 'HMS Cal ADC B8p - PED' H.cal.2ta.apos_p[7] 150 50 500
+TH1F hcaladc_B9p 'HMS Cal ADC B9p - PED' H.cal.2ta.apos_p[8] 150 50 500
+TH1F hcaladc_B10p 'HMS Cal ADC B10p - PED' H.cal.2ta.apos_p[9] 150 50 500
+TH1F hcaladc_B11p 'HMS Cal ADC B11p - PED' H.cal.2ta.apos_p[10] 150 50 500
+TH1F hcaladc_B12p 'HMS Cal ADC B12p - PED' H.cal.2ta.apos_p[11] 150 50 500
+TH1F hcaladc_B13p 'HMS Cal ADC B13p - PED' H.cal.2ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_C1p 'HMS Cal ADC C1p - PED' H.cal.3ta.apos_p[0] 150 50 500
+TH1F hcaladc_C2p 'HMS Cal ADC C2p - PED' H.cal.3ta.apos_p[1] 150 50 500
+TH1F hcaladc_C3p 'HMS Cal ADC C3p - PED' H.cal.3ta.apos_p[2] 150 50 500
+TH1F hcaladc_C4p 'HMS Cal ADC C4p - PED' H.cal.3ta.apos_p[3] 150 50 500
+TH1F hcaladc_C5p 'HMS Cal ADC C5p - PED' H.cal.3ta.apos_p[4] 150 50 500
+TH1F hcaladc_C6p 'HMS Cal ADC C6p - PED' H.cal.3ta.apos_p[5] 150 50 500
+TH1F hcaladc_C7p 'HMS Cal ADC C7p - PED' H.cal.3ta.apos_p[6] 150 50 500
+TH1F hcaladc_C8p 'HMS Cal ADC C8p - PED' H.cal.3ta.apos_p[7] 150 50 500
+TH1F hcaladc_C9p 'HMS Cal ADC C9p - PED' H.cal.3ta.apos_p[8] 150 50 500
+TH1F hcaladc_C10p 'HMS Cal ADC C10p - PED' H.cal.3ta.apos_p[9] 150 50 500
+TH1F hcaladc_C11p 'HMS Cal ADC C11p - PED' H.cal.3ta.apos_p[10] 150 50 500
+TH1F hcaladc_C12p 'HMS Cal ADC C12p - PED' H.cal.3ta.apos_p[11] 150 50 500
+TH1F hcaladc_C13p 'HMS Cal ADC C13p - PED' H.cal.3ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_D1p 'HMS Cal ADC D1p - PED' H.cal.4ta.apos_p[0] 150 50 500
+TH1F hcaladc_D2p 'HMS Cal ADC D2p - PED' H.cal.4ta.apos_p[1] 150 50 500
+TH1F hcaladc_D3p 'HMS Cal ADC D3p - PED' H.cal.4ta.apos_p[2] 150 50 500
+TH1F hcaladc_D4p 'HMS Cal ADC D4p - PED' H.cal.4ta.apos_p[3] 150 50 500
+TH1F hcaladc_D5p 'HMS Cal ADC D5p - PED' H.cal.4ta.apos_p[4] 150 50 500
+TH1F hcaladc_D6p 'HMS Cal ADC D6p - PED' H.cal.4ta.apos_p[5] 150 50 500
+TH1F hcaladc_D7p 'HMS Cal ADC D7p - PED' H.cal.4ta.apos_p[6] 150 50 500
+TH1F hcaladc_D8p 'HMS Cal ADC D8p - PED' H.cal.4ta.apos_p[7] 150 50 500
+TH1F hcaladc_D9p 'HMS Cal ADC D9p - PED' H.cal.4ta.apos_p[8] 150 50 500
+TH1F hcaladc_D10p 'HMS Cal ADC D10p - PED' H.cal.4ta.apos_p[9] 150 50 500
+TH1F hcaladc_D11p 'HMS Cal ADC D11p - PED' H.cal.4ta.apos_p[10] 150 50 500
+TH1F hcaladc_D12p 'HMS Cal ADC D12p - PED' H.cal.4ta.apos_p[11] 150 50 500
+TH1F hcaladc_D13p 'HMS Cal ADC D13p - PED' H.cal.4ta.apos_p[12] 150 50 500
+
+TH1F hcaladc_A1n 'HMS Cal ADC A1n - PED' H.cal.1pr.aneg_p[0] 150 50 500
+TH1F hcaladc_A2n 'HMS Cal ADC A2n - PED' H.cal.1pr.aneg_p[1] 150 50 500
+TH1F hcaladc_A3n 'HMS Cal ADC A3n - PED' H.cal.1pr.aneg_p[2] 150 50 500
+TH1F hcaladc_A4n 'HMS Cal ADC A4n - PED' H.cal.1pr.aneg_p[3] 150 50 500
+TH1F hcaladc_A5n 'HMS Cal ADC A5n - PED' H.cal.1pr.aneg_p[4] 150 50 500
+TH1F hcaladc_A6n 'HMS Cal ADC A6n - PED' H.cal.1pr.aneg_p[5] 150 50 500
+TH1F hcaladc_A7n 'HMS Cal ADC A7n - PED' H.cal.1pr.aneg_p[6] 150 50 500
+TH1F hcaladc_A8n 'HMS Cal ADC A8n - PED' H.cal.1pr.aneg_p[7] 150 50 500
+TH1F hcaladc_A9n 'HMS Cal ADC A9n - PED' H.cal.1pr.aneg_p[8] 150 50 500
+TH1F hcaladc_A10n 'HMS Cal ADC A10n - PED' H.cal.1pr.aneg_p[9] 150 50 500
+TH1F hcaladc_A11n 'HMS Cal ADC A11n - PED' H.cal.1pr.aneg_p[10] 150 50 500
+TH1F hcaladc_A12n 'HMS Cal ADC A12n - PED' H.cal.1pr.aneg_p[11] 150 50 500
+TH1F hcaladc_A13n 'HMS Cal ADC A13n - PED' H.cal.1pr.aneg_p[12] 150 50 500
+
+TH1F hcaladc_B1n 'HMS Cal ADC B1n - PED' H.cal.2ta.aneg_p[0] 150 50 500
+TH1F hcaladc_B2n 'HMS Cal ADC B2n - PED' H.cal.2ta.aneg_p[1] 150 50 500
+TH1F hcaladc_B3n 'HMS Cal ADC B3n - PED' H.cal.2ta.aneg_p[2] 150 50 500
+TH1F hcaladc_B4n 'HMS Cal ADC B4n - PED' H.cal.2ta.aneg_p[3] 150 50 500
+TH1F hcaladc_B5n 'HMS Cal ADC B5n - PED' H.cal.2ta.aneg_p[4] 150 50 500
+TH1F hcaladc_B6n 'HMS Cal ADC B6n - PED' H.cal.2ta.aneg_p[5] 150 50 500
+TH1F hcaladc_B7n 'HMS Cal ADC B7n - PED' H.cal.2ta.aneg_p[6] 150 50 500
+TH1F hcaladc_B8n 'HMS Cal ADC B8n - PED' H.cal.2ta.aneg_p[7] 150 50 500
+TH1F hcaladc_B9n 'HMS Cal ADC B9n - PED' H.cal.2ta.aneg_p[8] 150 50 500
+TH1F hcaladc_B10n 'HMS Cal ADC B10n - PED' H.cal.2ta.aneg_p[9] 150 50 500
+TH1F hcaladc_B11n 'HMS Cal ADC B11n - PED' H.cal.2ta.aneg_p[10] 150 50 500
+TH1F hcaladc_B12n 'HMS Cal ADC B12n - PED' H.cal.2ta.aneg_p[11] 150 50 500
+TH1F hcaladc_B13n 'HMS Cal ADC B13n - PED' H.cal.2ta.aneg_p[12] 150 50 500
+
+# Can we use variables for the constants.  In CTP we used hdc_nwire(i)
+#
+TH1F hdc1x1_wm 'HDC 1X1 Wiremap' H.dc.1x1.tdchits 113 0.5 113.5
+TH1F hdc1y1_wm 'HDC 1Y1 Wiremap' H.dc.1y1.tdchits 52 0.5 52.5
+TH1F hdc1u1_wm 'HDC 1U1 Wiremap' H.dc.1u1.tdchits 107 0.5 107.5
+TH1F hdc1v1_wm 'HDC 1V1 Wiremap' H.dc.1v1.tdchits 107 0.5 107.5
+TH1F hdc1y2_wm 'HDC 1Y2 Wiremap' H.dc.1y2.tdchits 52 0.5 52.5
+TH1F hdc1x2_wm 'HDC 1X2 Wiremap' H.dc.1x2.tdchits 113 0.5 113.5
+TH1F hdc2x1_wm 'HDC 2X1 Wiremap' H.dc.2x1.tdchits 113 0.5 113.5
+TH1F hdc2y1_wm 'HDC 2Y1 Wiremap' H.dc.2y1.tdchits 52 0.5 52.5
+TH1F hdc2u1_wm 'HDC 2U1 Wiremap' H.dc.2u1.tdchits 107 0.5 107.5
+TH1F hdc2v1_wm 'HDC 2V1 Wiremap' H.dc.2v1.tdchits 107 0.5 107.5
+TH1F hdc2y2_wm 'HDC 2Y2 Wiremap' H.dc.2y2.tdchits 52 0.5 52.5
+TH1F hdc2x2_wm 'HDC 2X2 Wiremap' H.dc.2x2.tdchits 113 0.5 113.5
+#
+TH1F ddist_hdc1x1 'HDC 1X1 Drift Dis' H.dc.1x1.dist 30 -0.1 0.6
+TH1F ddist_hdc1y1 'HDC 1Y1 Drift Dis' H.dc.1y1.dist 30 -0.1 0.6
+TH1F ddist_hdc1u1 'HDC 1U1 Drift Dis' H.dc.1u1.dist 30 -0.1 0.6
+TH1F ddist_hdc1v1 'HDC 1V1 Drift Dis' H.dc.1v1.dist 30 -0.1 0.6
+TH1F ddist_hdc1y2 'HDC 1Y2 Drift Dis' H.dc.1y2.dist 30 -0.1 0.6
+TH1F ddist_hdc1x2 'HDC 1X2 Drift Dis' H.dc.1x2.dist 30 -0.1 0.6
+TH1F ddist_hdc2x1 'HDC 2X1 Drift Dis' H.dc.2x1.dist 30 -0.1 0.6
+TH1F ddist_hdc2y1 'HDC 2Y1 Drift Dis' H.dc.2y1.dist 30 -0.1 0.6
+TH1F ddist_hdc2u1 'HDC 2U1 Drift Dis' H.dc.2u1.dist 30 -0.1 0.6
+TH1F ddist_hdc2v1 'HDC 2V1 Drift Dis' H.dc.2v1.dist 30 -0.1 0.6
+TH1F ddist_hdc2y2 'HDC 2Y2 Drift Dis' H.dc.2y2.dist 30 -0.1 0.6
+TH1F ddist_hdc2x2 'HDC 2X2 Drift Dis' H.dc.2x2.dist 30 -0.1 0.6
+#
+TH1F dtime_hdc1x1 'HDC 1X1 Drift Time' H.dc.1x1.time 200 -100 300
+TH1F dtime_hdc1y1 'HDC 1Y1 Drift Time' H.dc.1y1.time 200 -100 300
+TH1F dtime_hdc1u1 'HDC 1U1 Drift Time' H.dc.1u1.time 200 -100 300
+TH1F dtime_hdc1v1 'HDC 1V1 Drift Time' H.dc.1v1.time 200 -100 300
+TH1F dtime_hdc1y2 'HDC 1Y2 Drift Time' H.dc.1y2.time 200 -100 300
+TH1F dtime_hdc1x2 'HDC 1X2 Drift Time' H.dc.1x2.time 200 -100 300
+TH1F dtime_hdc2x1 'HDC 2X1 Drift Time' H.dc.2x1.time 200 -100 300
+TH1F dtime_hdc2y1 'HDC 2Y1 Drift Time' H.dc.2y1.time 200 -100 300
+TH1F dtime_hdc2u1 'HDC 2U1 Drift Time' H.dc.2u1.time 200 -100 300
+TH1F dtime_hdc2v1 'HDC 2V1 Drift Time' H.dc.2v1.time 200 -100 300
+TH1F dtime_hdc2y2 'HDC 2Y2 Drift Time' H.dc.2y2.time 200 -100 300
+TH1F dtime_hdc2x2 'HDC 2X2 Drift Time' H.dc.2x2.time 200 -100 300
+
diff --git a/examples/raster_test.C b/examples/raster_test.C
new file mode 100644
index 0000000000000000000000000000000000000000..a28f4143692854df3c89ce19877887ad0285f3bd
--- /dev/null
+++ b/examples/raster_test.C
@@ -0,0 +1,105 @@
+
+{
+
+  //
+  //  Steering script to test raster signal decoding
+  //
+  
+  Int_t RunNumber=52947;
+  char* RunFileNamePattern="/cache/mss/hallc/daq04/raw/daq04_52947.log.0";
+    
+ 
+  // Open the database
+  //
+  gHcParms->Define("gen_run_number", "Run Number", RunNumber);
+  gHcParms->AddString("g_ctp_database_filename", "DBASE/raster_test.database");
+  gHcParms->Load(gHcParms->GetString("g_ctp_database_filename"), RunNumber);
+
+  
+  // Open and load parameter files
+  //
+  gHcParms->Load(gHcParms->GetString("g_ctp_kinematics_filename"), RunNumber);
+  gHcParms->Load(gHcParms->GetString("g_ctp_parm_filename"));
+  // parameters not found in usual engine parameter files
+  gHcParms->Load("PARAM/hcana.param");
+
+  
+  //  Generate db_cratemap to correspond to map file contents
+  //  make_cratemap.pl scripts reads a Hall C style MAP file and output a 
+  //  Hall A style crate map DB file 
+  //
+  char command[100];
+  sprintf(command,"./make_cratemap.pl < %s > db_cratemap.dat",gHcParms->GetString("g_decode_map_filename"));
+  system(command);
+
+
+  // Load the Hall C style detector map
+  //
+  gHcDetectorMap=new THcDetectorMap();
+  gHcDetectorMap->Load(gHcParms->GetString("g_decode_map_filename"));
+
+
+  // Set up the equipment to be analyzed.
+  //
+  // HMS and its detectors
+  THaApparatus* HMS = new THcHallCSpectrometer("H","HMS");
+  gHaApps->Add( HMS );
+  // Add hodoscope
+  HMS->AddDetector( new THcHodoscope("hod", "Hodoscope" ));
+  HMS->AddDetector( new THcShower("cal", "Shower" ));
+  HMS->AddDetector( new THcDC("dc", "Drift Chambers" ));
+  HMS->AddDetector( new THcAerogel("aero", "Aerogel Cerenkov" ));
+  HMS->AddDetector( new THcCherenkov("cher", "Gas Cerenkov" ));
+
+
+  // Beamline and its detectors
+  THaApparatus * BEAM = new THcRasteredBeam("RB","Rastered Beamline");
+  gHaApps->Add( BEAM );
+
+
+  // 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.
+  // 
+  char RunFileName[100];
+  sprintf(RunFileName,RunFileNamePattern,RunNumber);
+  THaRun* run = new THaRun(RunFileName);
+
+  
+  // Eventually need to learn to skip over, or properly analyze
+  // the pedestal events
+  //
+  run->SetEventRange(1,2000);//  Physics Event number, does not
+                           // include scaler or control events
+
+  // Define the analysis parameters
+  //
+  analyzer->SetEvent(event);
+  analyzer->SetOutFile("raster_compare_52947.root");
+  analyzer->SetOdefFile("output_bpw.def");
+  analyzer->SetCutFile("hodtest_cuts.def");        // optional
+  analyzer->SetCountMode(2);// Counter event number same as gen_event_ID_number
+  
+  // File to record cuts accounting information
+  //  analyzer->SetSummaryFile("summary_example.log"); // optional
+  
+  // start the actual analysis
+  //
+  analyzer->Process(run);     
+  analyzer->PrintReport("report.template","report.out");
+}
diff --git a/examples/report.template b/examples/report.template
new file mode 100644
index 0000000000000000000000000000000000000000..bb41e4f2171916e5c4de3d64cb543d0ff16612c4
--- /dev/null
+++ b/examples/report.template
@@ -0,0 +1,73 @@
+
+           This is a report template file.
+
+It can be used to create simple run summary/statistics output files.
+
+To produce a report, put in your analysis steering script, the line 
+
+   analyzer->PrintReport(templatefilename, reportfilename); 
+
+where analyzer is your analyzer object.
+
+The template file is copied to the output file, except that anything
+inside of the braces gets evaluated.  If the braces contain a string variable,
+the value of variable replaces the braced name.  Otherwise what is
+in the braces is evaluated as an expression.  Currently the expression can be
+composed of Hall C style parameter variables, cut results (not really too usefull)
+and cut statistics.  (Number of times called and number of times passed.)
+
+For example, {100*Pedestal_event.npassed/Pedestal_event.ncalled:%.2f}% is the 
+percentage of events that were pedestal events.
+
+------------------------
+HMS Cherenkov
+------------------------
+HMS cherenkov total photo electrons: {hmstotchernpe.npassed:%.2f}
+
+
+------------------------
+HMS Hodoscope
+------------------------
+Scin test: {hgood_hits}
+Scin should fired counters: {hmsscinshould.npassed:%7d}
+Scin total should fired counter: {hmstotscinshould.npassed:%7d}
+
+------------------------
+HMS Drift Chambers
+------------------------
+Total number of triggers with any tracks: {hfoundtrack.npassed:%7d}
+Total number of triggers with only one track: {hfound1track.npassed:%7d}
+
+Horizontal drift chamber z positions:
+Chamber 1: {hdc_zpos[0]:%6.2f} {hdc_zpos[1]:%6.2f} {hdc_zpos[2]:%6.2f} 
+	   {hdc_zpos[3]:%6.2f} {hdc_zpos[4]:%6.2f} {hdc_zpos[5]:%6.2f} 
+Chamber 2: {hdc_zpos[6]:%6.2f} {hdc_zpos[7]:%6.2f} {hdc_zpos[8]:%6.2f} 
+	   {hdc_zpos[9]:%6.2f} {hdc_zpos[10]:%6.2f} {hdc_zpos[11]:%6.2f} 
+
+The expression result can be formatted by putting a ":" followed by
+a c-style format after the expression.
+
+The HMS reconstruction coefficient file name is {h_recon_coeff_filename}
+The names of the HMS drift chamber planes are: 
+{hdc_plane_names}
+
+DC Events: {hdc_tot_events}
+Hit in chamber: {hdc_cham_hits[0]/hdc_tot_events:%.3f} 
+                {hdc_cham_hits[1]/hdc_tot_events:%.3f}
+
+Hit in plane: {hdc_events[0]/hdc_tot_events:%.3f} {hdc_events[1]/hdc_tot_events:%.3f} 
+              {hdc_events[2]/hdc_tot_events:%.3f} {hdc_events[3]/hdc_tot_events:%.3f} 
+	      {hdc_events[4]/hdc_tot_events:%.3f} {hdc_events[5]/hdc_tot_events:%.3f} 
+	      {hdc_events[6]/hdc_tot_events:%.3f} {hdc_events[7]/hdc_tot_events:%.3f} 
+	      {hdc_events[8]/hdc_tot_events:%.3f} {hdc_events[9]/hdc_tot_events:%.3f} 
+	      {hdc_events[10]/hdc_tot_events:%.3f} {hdc_events[11]/hdc_tot_events:%.3f}
+
+Run #{gen_run_number}
+first event = {gen_run_starting_event:%7d}
+last event  = {gen_event_id_number:%7d}
+
+Later, such things as hardware scalers will be added to the set of variables
+that can be used in expressions.
+
+Last momenutm: {H.tr.p[0]}
+
diff --git a/hcal_calib/THcShHit.h b/hcal_calib/THcShHit.h
new file mode 100644
index 0000000000000000000000000000000000000000..20afcced1f71e1fe0c234c87a60eff0db32298c5
--- /dev/null
+++ b/hcal_calib/THcShHit.h
@@ -0,0 +1,72 @@
+#include <iostream>
+
+// HMS calorimeter hit class for calibration.
+
+class THcShHit {
+
+  Double_t ADCpos, ADCneg;   // pedestal subtracted ADC signals.
+  Double_t Epos, Eneg;       // Energy depositions seen from pos. & neg. sides
+  UInt_t BlkNumber;
+
+ public:
+
+  THcShHit();
+  THcShHit(Double_t adc_pos, Double_t adc_neg,
+	   UInt_t blk_number);
+  ~THcShHit();
+
+  void SetADCpos(Double_t sig) {ADCpos = sig;}
+
+  void SetADCneg(Double_t sig) {ADCneg = sig;}
+
+  void SetEpos(Double_t e) {Epos = e;}
+
+  void SetEneg(Double_t e) {Eneg = e;}
+
+  void SetBlkNumber(UInt_t n) {BlkNumber = n;}
+
+  Double_t GetADCpos() {return ADCpos;}
+
+  Double_t GetADCneg() {return ADCneg;}
+
+  Double_t GetEpos() {return Epos;}
+
+  Double_t GetEneg() {return Eneg;}
+  
+  UInt_t GetBlkNumber() {return BlkNumber;}
+
+  void Print(ostream & ostrm);
+};
+
+//------------------------------------------------------------------------------
+
+THcShHit::THcShHit() {
+  ADCpos = -99999.;
+  ADCneg = -99999.;
+  Epos = -99999.;
+  Eneg = -99999.;
+  BlkNumber = 99999;
+};
+
+THcShHit::THcShHit(Double_t adc_pos, Double_t adc_neg,
+		   UInt_t blk_number) {
+  ADCpos = adc_pos;
+  ADCneg = adc_neg;
+  Epos = 0.;
+  Eneg = 0.;
+  BlkNumber = blk_number;
+};
+
+THcShHit::~THcShHit() { };
+
+//------------------------------------------------------------------------------
+
+void THcShHit::Print(ostream & ostrm) {
+
+  // Output hit data through the stream ostrm.
+
+  ostrm << ADCpos << " " << ADCneg << " " << Epos << " " << Eneg << " "
+	<< BlkNumber << endl;
+};
+
+struct pmt_hit {Double_t signal; UInt_t channel;};
diff --git a/hcal_calib/THcShTrack.h b/hcal_calib/THcShTrack.h
new file mode 100644
index 0000000000000000000000000000000000000000..d8c74d9f14db19c1e8fa37f5e871f685ebc9abe3
--- /dev/null
+++ b/hcal_calib/THcShTrack.h
@@ -0,0 +1,210 @@
+#include "THcShHit.h"
+#include "TMath.h"
+
+#include <vector>
+#include <iterator>
+#include <iostream>
+#include <fstream>
+
+using namespace std;
+
+// Track class for the HMS calorimeter calibration.
+// Comprises the spectrometer track parameters and calorimeter hits.
+//
+
+// Container (collection) of hits and its iterator.
+//
+typedef vector<THcShHit*> THcShHitList;
+typedef THcShHitList::iterator THcShHitIt;
+
+class THcShTrack {
+
+  Double_t P;   // track momentum
+  Double_t X;   // at the calorimater face
+  Double_t Xp;  // slope
+  Double_t Y;   // at the calorimater face
+  Double_t Yp;  // slope
+
+  THcShHitList Hits;
+
+ public:
+  THcShTrack();
+  THcShTrack(Double_t p, Double_t x, Double_t xp, Double_t y, Double_t yp);
+  ~THcShTrack();
+
+  void Reset(Double_t p, Double_t x, Double_t xp, Double_t y, Double_t yp);
+
+  void AddHit(Double_t adc_pos, Double_t adc_neg,
+	      Double_t e_pos, Double_t e_neg,
+	      UInt_t blk_number);
+
+  THcShHit* GetHit(UInt_t k);
+
+  UInt_t GetNhits() {return Hits.size();};
+
+  void Print(ostream & ostrm);
+
+  void SetEs(Double_t* alpha);
+
+  Double_t Enorm();
+
+  Double_t GetP() {return P*1000.;}      //MeV
+
+  Float_t Ycor(Double_t);         // coord. corection for single PMT module
+  Float_t Ycor(Double_t, Int_t);  // coord. correction for double PMT module
+
+  // Coordinate correction constants from hcana.param.
+  //
+  static const Double_t fAcor = 200.;
+  static const Double_t fBcor = 8000.;
+  static const Double_t fCcor = 64.36;
+  static const Double_t fDcor = 1.66;
+
+  // Calorimeter geometry constants.
+  //
+  static const Double_t fZbl = 10;   //cm, block transverse size
+  static const UInt_t fNrows = 13;
+  static const UInt_t fNcols =  4;
+  static const UInt_t fNnegs = 26;   // number of blocks with neg. side PMTs.
+  static const UInt_t fNpmts = 78;   // total number of PMTs.
+  static const UInt_t fNblks = fNrows*fNcols;
+
+};
+
+//------------------------------------------------------------------------------
+
+THcShTrack::THcShTrack() { };
+
+THcShTrack::THcShTrack(Double_t p,
+		       Double_t x, Double_t xp, Double_t y, Double_t yp) {
+  P = p;
+  X = x;
+  Xp = xp;
+  Y = y;
+  Yp =yp;
+};
+
+//------------------------------------------------------------------------------
+
+void THcShTrack::Reset(Double_t p,
+		       Double_t x, Double_t xp, Double_t y, Double_t yp) {
+
+  // Reset track parameters, clear hit list.
+
+  P = p;
+  X = x;
+  Xp = xp;
+  Y = y;
+  Yp =yp;
+  Hits.clear();
+};
+
+//------------------------------------------------------------------------------
+
+void THcShTrack::AddHit(Double_t adc_pos, Double_t adc_neg,
+			Double_t e_pos, Double_t e_neg,
+			UInt_t blk_number) {
+
+  // Add a hit to the hit list.
+
+  THcShHit* hit = new THcShHit(adc_pos, adc_neg, blk_number);
+  hit->SetEpos(e_pos);
+  hit->SetEneg(e_neg);
+  Hits.push_back(hit);
+};
+
+//------------------------------------------------------------------------------
+
+THcShHit* THcShTrack::GetHit(UInt_t k) {
+  THcShHitIt it = Hits.begin();
+  for (UInt_t i=0; i<k; i++) it++;
+  return *it;
+}
+
+void THcShTrack::Print(ostream & ostrm) {
+
+  // Output the track parameters and hit list through the stream ostrm.
+
+  ostrm << P << " " << X << " " << Xp << " " << Y << " " << Yp << " "
+	<< Hits.size() << endl;
+
+  for (THcShHitIt iter = Hits.begin(); iter != Hits.end(); iter++) {
+    (*iter)->Print(ostrm);
+  };
+
+};
+
+//------------------------------------------------------------------------------
+
+THcShTrack::~THcShTrack() {
+  for (THcShHitIt i = Hits.begin(); i != Hits.end(); ++i) {
+    delete *i;
+    *i = 0;
+  }
+};
+
+//------------------------------------------------------------------------------
+
+void THcShTrack::SetEs(Double_t* alpha) {
+
+  // Set hit energy depositions seen from postive and negative sides,
+  // by use of calibration (gain) constants alpha.
+  
+  for (THcShHitIt iter = Hits.begin(); iter != Hits.end(); iter++) {
+  
+    Double_t adc_pos = (*iter)->GetADCpos();
+    Double_t adc_neg = (*iter)->GetADCneg();
+    UInt_t nblk = (*iter)->GetBlkNumber();
+
+    Int_t ncol=(nblk-1)/fNrows+1;
+    Double_t xh=X+Xp*(ncol-0.5)*fZbl;
+    Double_t yh=Y+Yp*(ncol-0.5)*fZbl;
+    if (nblk <= fNnegs) {
+      (*iter)->SetEpos(adc_pos*Ycor(yh,0)*alpha[nblk-1]);
+      (*iter)->SetEneg(adc_neg*Ycor(yh,1)*alpha[fNblks+nblk-1]);
+    }
+    else {
+      (*iter)->SetEpos(adc_pos*Ycor(yh)*alpha[nblk-1]);
+      (*iter)->SetEneg(0.);
+    };
+
+  };
+
+}
+
+//------------------------------------------------------------------------------
+
+Double_t THcShTrack::Enorm() {
+
+  // Normalized to the track momentum energy depostion in the calorimeter.
+
+  Double_t sum = 0;
+
+  for (THcShHitIt iter = Hits.begin(); iter != Hits.end(); iter++) {
+    sum += (*iter)->GetEpos();
+    sum += (*iter)->GetEneg();
+  };
+
+  return sum/P/1000.;
+}
+
+//------------------------------------------------------------------------------
+
+//Coordinate correction for single PMT modules.
+//PMT attached at right (positive) side.
+
+Float_t THcShTrack::Ycor(Double_t y) {
+  return TMath::Exp(y/fAcor)/(1. + y*y/fBcor);
+}
+
+//Coordinate correction for double PMT modules.
+//
+
+Float_t THcShTrack::Ycor(Double_t y, Int_t side) {
+  if (side!=0&&side!=1) {
+    cout << "THcShower::Ycor : wrong side " << side << endl;
+    return 0.;
+  }
+  Int_t sign = 1 - 2*side;
+  return (fCcor + sign*y)/(fCcor + sign*y/fDcor);
+}
diff --git a/hcal_calib/THcShowerCalib.h b/hcal_calib/THcShowerCalib.h
new file mode 100644
index 0000000000000000000000000000000000000000..c839771bb539019fa444497a772ba722a8a714af
--- /dev/null
+++ b/hcal_calib/THcShowerCalib.h
@@ -0,0 +1,690 @@
+#ifndef ROOT_THcShowerCalib
+#define ROOT_THcShowerCalib
+
+#include "THcShTrack.h"
+#include "TH1F.h"
+#include "TH2F.h"
+#include "TVectorD.h"
+#include "TMatrixD.h"
+#include "TDecompLU.h"
+#include "TMath.h"
+#include <iostream>
+#include <fstream>
+#include <iomanip>
+
+#include "TROOT.h"
+#include "TFile.h"
+#include "TTree.h"
+
+#define D_CALO_FP 338.69    //distance from FP to the calorimeter face
+
+using namespace std;
+
+//
+// HMS Shower Counter calibration class.
+//
+
+class THcShowerCalib {
+
+ public:
+  THcShowerCalib(Int_t);
+  THcShowerCalib();
+  ~THcShowerCalib();
+
+  void Init();
+  void ReadShRawTrack(THcShTrack &trk, UInt_t ientry);
+  void CalcThresholds();
+  void ComposeVMs();
+  void SolveAlphas();
+  void FillHEcal();
+  void SaveAlphas();
+  void SaveRawData();
+
+  TH1F* hEunc;
+  TH1F* hEuncSel;
+  TH1F* hEcal;
+  TH2F* hDPvsEcal;
+
+ private:
+  Int_t fRunNumber;
+  Double_t fLoThr;     // Low and high thresholds on the normalized uncalibrated
+  Double_t fHiThr;     // energy deposition.
+  UInt_t fNev;         // Number of processed events.
+  static const UInt_t fMinHitCount = 200;   // Minimum number of hits for a PMT
+                                            // to be calibrated.
+
+  TTree* fTree;
+  UInt_t fNentries;
+
+  // Quantities for calculations of the calibration constants.
+
+  Double_t fe0;
+  Double_t fqe[THcShTrack::fNpmts];
+  Double_t fq0[THcShTrack::fNpmts];
+  Double_t fQ[THcShTrack::fNpmts][THcShTrack::fNpmts];
+  Double_t falphaU[THcShTrack::fNpmts];   // 'unconstrained' calib. constants
+  Double_t falphaC[THcShTrack::fNpmts];   // the sought calibration constants
+  Double_t falpha0[THcShTrack::fNpmts];   // initial gains
+  Double_t falpha1[THcShTrack::fNpmts];   // unit gains
+
+  UInt_t fHitCount[THcShTrack::fNpmts];
+
+};
+
+//------------------------------------------------------------------------------
+
+THcShowerCalib::THcShowerCalib() {};
+
+//------------------------------------------------------------------------------
+
+THcShowerCalib::THcShowerCalib(Int_t RunNumber) {
+  fRunNumber = RunNumber;
+};
+
+//------------------------------------------------------------------------------
+
+THcShowerCalib::~THcShowerCalib() {
+};
+
+//------------------------------------------------------------------------------
+
+void THcShowerCalib::SaveRawData() {
+
+  // Output raw data into file for debug purposes. To be called after
+  // calibration constants are determined.
+
+  cout << "SaveRawData: Output raw data into hcal_calib.raw_data." << endl;
+
+  ofstream fout;
+  fout.open("hcal_calib.raw_data",ios::out);
+
+  THcShTrack trk;
+
+  for (UInt_t ientry=0; ientry<fNentries; ientry++) {
+    ReadShRawTrack(trk, ientry);
+    trk.SetEs(falphaC);
+    trk.Print(fout);
+  }
+
+  fout.close();
+
+}
+
+//------------------------------------------------------------------------------
+
+void THcShowerCalib::Init() {
+
+  //Reset ROOT and connect tree file.
+
+  gROOT->Reset();
+
+  char* fname = Form("Root_files/hcal_calib_%d.root",fRunNumber);
+  cout << "THcShowerCalib::Init: Root file name = " << fname << endl;
+
+  TFile *f = new TFile(fname);
+  f->GetObject("T",fTree);
+
+  fNentries = fTree->GetEntries();
+  cout << "THcShowerCalib::Init: fNentries= " << fNentries << endl;
+
+  // Histogram declarations.
+
+  hEunc = new TH1F("hEunc", "Edep/P uncalibrated", 500, 0., 5.);
+  hEcal = new TH1F("hEcal", "Edep/P calibrated", 150, 0., 1.5);
+  hDPvsEcal = new TH2F("hDPvsEcal", "#DeltaP versus Edep/P ",
+		       150,0.,1.5, 250,-12.5,12.5);
+
+  // Initialize qumulative quantities.
+  
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++) fHitCount[i] = 0;
+
+  fe0 = 0.;
+
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++) {
+    fqe[i] = 0.;
+    fq0[i] = 0.;
+    falphaU[i] = 0.;
+    falphaC[i] = 0.;
+    for (UInt_t j=0; j<THcShTrack::fNpmts; j++) {
+      fQ[i][j] = 0.;
+    }
+  }
+
+  // Initial gains (0.5 for the 2 first columns, 1 for others).
+
+  for (UInt_t iblk=0; iblk<THcShTrack::fNblks; iblk++) {
+    if (iblk < THcShTrack::fNnegs) {
+      falpha0[iblk] = 0.5;
+      falpha0[THcShTrack::fNblks+iblk] = 0.5;
+    }
+    else {
+      falpha0[iblk] = 1.;
+    }
+  };
+
+  // Unit gains.
+
+  for (UInt_t ipmt=0; ipmt<THcShTrack::fNpmts; ipmt++) {
+    falpha1[ipmt] = 1.;
+  }
+
+};
+
+//------------------------------------------------------------------------------
+
+void THcShowerCalib::CalcThresholds() {
+
+  // Calculate +/-3 RMS thresholds on the uncalibrated total energy
+  // depositions. These thresholds are used mainly to exclude potential
+  // hadronic events due to the gas Cherenkov inefficiency.
+
+  // Histogram uncalibrated energy depositions, get mean and RMS from the
+  // histogram, establish +/-3 * RMS thresholds.
+
+  Int_t nev = 0;
+  THcShTrack trk;
+
+  for (UInt_t ientry=0; ientry<fNentries; ientry++) {
+
+    ReadShRawTrack(trk, ientry);
+
+    //    trk.Print(cout);
+    //    getchar();
+
+    trk.SetEs(falpha0);             //Use initial gain constants here.
+    Double_t Enorm = trk.Enorm();
+
+    nev++;
+    //    cout << "CalcThreshods: nev=" << nev << "  Enorm=" << Enorm << endl;
+
+    hEunc->Fill(Enorm);    
+  };
+
+  Double_t mean = hEunc->GetMean();
+  Double_t rms = hEunc->GetRMS();
+  cout << "CalcThreshods: mean=" << mean << "  rms=" << rms << endl;
+
+  fLoThr = mean - 3.*rms;
+  fHiThr = mean + 3.*rms;
+
+  cout << "CalcThreshods: fLoThr=" << fLoThr << "  fHiThr=" << fHiThr 
+       << "  nev=" << nev << endl;
+
+  Int_t nbins = hEunc->GetNbinsX();
+  Int_t nlo = hEunc->FindBin(fLoThr);
+  Int_t nhi = hEunc->FindBin(fHiThr);
+
+  cout << "CalcThresholds: nlo=" << nlo << "  nhi=" << nhi 
+       << "  nbins=" << nbins << endl;
+
+  // Histogram selected wthin the thresholds events.
+  
+  hEuncSel = (TH1F*)hEunc->Clone("hEuncSel");
+  
+  for (Int_t i=0; i<nlo; i++) hEuncSel->SetBinContent(i, 0.);
+  for (Int_t i=nhi; i<nbins+1; i++) hEuncSel->SetBinContent(i, 0.);
+
+};
+
+//------------------------------------------------------------------------------
+
+void THcShowerCalib::ReadShRawTrack(THcShTrack &trk, UInt_t ientry) {
+
+  //
+  // Set a Shower track event from ntuple ientry.
+  //
+
+  // Declaration of leaves types
+
+  // Calorimeter ADC signals.
+
+  Double_t        H_cal_1pr_aneg_p[THcShTrack::fNrows];
+  Double_t        H_cal_1pr_apos_p[THcShTrack::fNrows];
+
+  Double_t        H_cal_2ta_aneg_p[THcShTrack::fNrows];
+  Double_t        H_cal_2ta_apos_p[THcShTrack::fNrows];
+
+  Double_t        H_cal_3ta_aneg_p[THcShTrack::fNrows];
+  Double_t        H_cal_3ta_apos_p[THcShTrack::fNrows];
+
+  Double_t        H_cal_4ta_aneg_p[THcShTrack::fNrows];
+  Double_t        H_cal_4ta_apos_p[THcShTrack::fNrows];
+
+  // Track parameters.
+
+  Double_t        H_tr_p;
+  Double_t        H_tr_x;   //X FP
+  Double_t        H_tr_xp;
+  Double_t        H_tr_y;   //Y FP
+  Double_t        H_tr_yp;
+
+  // Set branch addresses.
+
+  fTree->SetBranchAddress("H.cal.1pr.aneg_p",H_cal_1pr_aneg_p);
+  fTree->SetBranchAddress("H.cal.1pr.apos_p",H_cal_1pr_apos_p);
+
+  fTree->SetBranchAddress("H.cal.2ta.aneg_p",H_cal_2ta_aneg_p);
+  fTree->SetBranchAddress("H.cal.2ta.apos_p",H_cal_2ta_apos_p);
+
+  fTree->SetBranchAddress("H.cal.3ta.aneg_p",H_cal_3ta_aneg_p);
+  fTree->SetBranchAddress("H.cal.3ta.apos_p",H_cal_3ta_apos_p);
+
+  fTree->SetBranchAddress("H.cal.4ta.aneg_p",H_cal_4ta_aneg_p);
+  fTree->SetBranchAddress("H.cal.4ta.apos_p",H_cal_4ta_apos_p);
+
+  fTree->SetBranchAddress("H.tr.x",&H_tr_x);
+  fTree->SetBranchAddress("H.tr.y",&H_tr_y);
+  fTree->SetBranchAddress("H.tr.th",&H_tr_xp);
+  fTree->SetBranchAddress("H.tr.ph",&H_tr_yp);
+  fTree->SetBranchAddress("H.tr.p",&H_tr_p);
+
+  fTree->GetEntry(ientry);
+
+  trk.Reset(H_tr_p, H_tr_x+D_CALO_FP*H_tr_xp, H_tr_xp,
+	    H_tr_y+D_CALO_FP*H_tr_yp, H_tr_yp);
+
+  for (UInt_t j=0; j<THcShTrack::fNrows; j++) {
+    for (UInt_t k=0; k<THcShTrack::fNcols; k++) {
+
+      Double_t adc_pos, adc_neg;
+
+      switch (k) {
+      case 0 : 
+	adc_pos = H_cal_1pr_apos_p[j];
+	adc_neg = H_cal_1pr_aneg_p[j];
+	break;
+      case 1 : 
+	adc_pos = H_cal_2ta_apos_p[j];
+	adc_neg = H_cal_2ta_aneg_p[j];
+	break;
+      case 2 : 
+	adc_pos = H_cal_3ta_apos_p[j];
+	adc_neg = H_cal_3ta_aneg_p[j];
+	break;
+      case 3 : 
+	adc_pos = H_cal_4ta_apos_p[j];
+	adc_neg = H_cal_4ta_aneg_p[j];
+	break;
+      default:
+	cout << "*** ReadShRawTrack: column number k=" << k
+	     << " out of range! ***" << endl;
+      };
+
+      UInt_t nb = j+1 + k*THcShTrack::fNrows;
+
+      if (adc_pos>0. || adc_neg>0.) {
+	trk.AddHit(adc_pos, adc_neg, 0., 0., nb);
+      }
+
+    }
+  }
+
+}
+
+//------------------------------------------------------------------------------
+
+void THcShowerCalib::ComposeVMs() {
+
+  //
+  // Fill in vectors and matrixes for the gain constant calculations.
+  //
+
+  fNev = 0;
+  THcShTrack trk;
+
+  // Loop over the shower track events in the ntuples.
+
+  for (UInt_t ientry=0; ientry<fNentries; ientry++) {
+
+    ReadShRawTrack(trk, ientry);
+
+    // Set energy depositions with default gains.
+    // Calculate normalized to the track momentum total energy deposition,
+    // check it against the thresholds.
+
+    trk.SetEs(falpha0);
+    Double_t Enorm = trk.Enorm();
+    if (Enorm>fLoThr && Enorm<fHiThr) {
+
+      trk.SetEs(falpha1);   // Set energies with unit gains for now.
+      // trk.Print(cout);
+
+      fe0 += trk.GetP();    // Accumulate track momenta.
+
+      vector<pmt_hit> pmt_hit_list;     // Container to save PMT hits
+
+      // Loop over hits.
+
+      for (UInt_t i=0; i<trk.GetNhits(); i++) {
+
+	THcShHit* hit = trk.GetHit(i);
+	// hit->Print(cout);
+
+	UInt_t nb = hit->GetBlkNumber();
+
+	// Fill the qe and q0 vectors (for positive side PMT).
+
+	fqe[nb-1] += hit->GetEpos() * trk.GetP();
+	fq0[nb-1] += hit->GetEpos();
+
+	// Save the PMT hit.
+
+	pmt_hit_list.push_back( pmt_hit{hit->GetEpos(), nb} );
+
+	fHitCount[nb-1]++;   //Accrue the hit counter.
+
+	// Do same for the negative side PMTs.
+
+	if (nb <= THcShTrack::fNnegs) {
+	  fqe[THcShTrack::fNblks+nb-1] += hit->GetEneg() * trk.GetP();
+	  fq0[THcShTrack::fNblks+nb-1] += hit->GetEneg();
+
+	  pmt_hit_list.push_back(pmt_hit{hit->GetEneg(),
+		THcShTrack::fNblks+nb} );
+
+	  fHitCount[THcShTrack::fNblks+nb-1]++;
+	};
+
+      }      //over hits
+
+      // Fill in the correlation matrix Q by retrieving the PMT hits.
+
+      for (vector<pmt_hit>::iterator i=pmt_hit_list.begin();
+	   i < pmt_hit_list.end(); i++) {
+
+	UInt_t ic = (*i).channel;
+	Double_t is = (*i).signal;
+
+	for (vector<pmt_hit>::iterator j=i;
+	     j < pmt_hit_list.end(); j++) {
+
+	  UInt_t jc = (*j).channel;
+	  Double_t js = (*j).signal;
+
+	  fQ[ic-1][jc-1] += is*js;
+	  if (jc != ic) fQ[jc-1][ic-1] += is*js;
+	}
+      }
+
+      fNev++;
+
+    };   // if within the thresholds
+
+  };     // over entries
+
+  // Take averages.
+
+  fe0 /= fNev;
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++) {
+    fqe[i] /= fNev;
+    fq0[i] /= fNev;
+  }
+
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++)
+    for (UInt_t j=0; j<THcShTrack::fNpmts; j++)
+      fQ[i][j] /= fNev;
+
+  // Output vectors and matrixes, for debug purposes.
+
+  ofstream q0out;
+  q0out.open("q0.d",ios::out);
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++)
+    q0out << fq0[i] << " " << i << endl;
+  q0out.close();
+
+  ofstream qeout;
+  qeout.open("qe.d",ios::out);
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++)
+    qeout << fqe[i] << " " << i << endl;
+  qeout.close();
+
+  ofstream Qout;
+  Qout.open("Q.d",ios::out);
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++)
+    for (UInt_t j=0; j<THcShTrack::fNpmts; j++)
+      Qout << fQ[i][j] << " " << i << " " << j << endl;
+  Qout.close();
+
+};
+
+//------------------------------------------------------------------------------
+
+void THcShowerCalib::SolveAlphas() {
+
+  //
+  // Solve for the sought calibration constants, by use of the Root
+  // matrix algebra package.
+  //
+
+  TMatrixD Q(THcShTrack::fNpmts,THcShTrack::fNpmts);
+  TVectorD q0(THcShTrack::fNpmts);
+  TVectorD qe(THcShTrack::fNpmts);
+  TVectorD au(THcShTrack::fNpmts);
+  TVectorD ac(THcShTrack::fNpmts);
+  Bool_t ok;
+
+  cout << "Solving Alphas..." << endl;
+  cout << endl;
+
+  // Print out hit numbers.
+
+  cout << "Hit counts:" << endl;
+  UInt_t j = 0;
+  cout << "Positives:";
+  for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+    cout << setw(6) << fHitCount[j++] << ",";
+  cout << endl;
+  for (Int_t k=0; k<3; k++) {
+    cout << "          ";
+    for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+      cout << setw(6) << fHitCount[j++] << ",";
+    cout << endl;
+  }
+  cout << "Negatives:";
+  for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+    cout << setw(6) << fHitCount[j++] << ",";
+  cout << endl;
+  cout << "          ";
+  for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+    cout << setw(6) << fHitCount[j++] << ",";
+  cout << endl;
+
+  // Initialize the vectors and the matrix of the Root algebra package.
+
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++) {
+    q0[i] = fq0[i];
+    qe[i] = fqe[i];
+    for (UInt_t k=0; k<THcShTrack::fNpmts; k++) {
+      Q[i][k] = fQ[i][k];
+    }
+  }
+
+  // Sanity check.
+
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++) {
+
+    // Check zero hit channels: the vector and matrix elements should be 0.
+
+    if (fHitCount[i] == 0) {
+
+      if (q0[i] != 0. || qe[i] != 0.) {
+
+	cout << "*** Inconsistency in chanel " << i << ": # of hits  "
+	     << fHitCount[i] << ", q0=" << q0[i] << ", qe=" << qe[i];
+
+	for (UInt_t k=0; k<THcShTrack::fNpmts; k++) {
+	  if (Q[i][k] !=0. || Q[k][i] !=0.)
+	    cout << ", Q[" << i << "," << k << "]=" << Q[i][k]
+		 << ", Q[" << k << "," << i << "]=" << Q[k][i];
+	}
+
+	cout << " ***" << endl;
+      }
+    }
+
+    // The hit channels: the vector elements should be non zero.
+
+    if ( (fHitCount[i] != 0) && (q0[i] == 0. || qe[i] == 0.) ) {
+      cout << "*** Inconsistency in chanel " << i << ": # of hits  "
+	   << fHitCount[i] << ", q0=" << q0[i] << ", qe=" << qe[i]
+	   << " ***" << endl;
+    }
+
+  } //sanity check
+
+  // Low hit number channels: exclude from calculation. Assign all the
+  // correspondent elements 0, except self-correlation Q(i,i)=1.
+
+  cout << endl;
+  cout << "Channels with hit number less than " << fMinHitCount 
+       << " will not be calibrated." << endl;
+  cout << endl;
+
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++) {
+
+    if (fHitCount[i] < fMinHitCount) {
+      cout << "Channel " << i << ", " << fHitCount[i]
+	   << " hits, will not be calibrated." << endl;
+      q0[i] = 0.;
+      qe[i] = 0.;
+      for (UInt_t k=0; k<THcShTrack::fNpmts; k++) {
+	Q[i][k] = 0.;
+	Q[k][i] = 0.;
+      }
+      Q[i][i] = 1.;
+    }
+
+  }
+
+  // Declare LU decomposition method for the correlation matrix Q.
+
+  TDecompLU lu(Q);
+  Double_t d1,d2;
+  lu.Det(d1,d2);
+  cout << "cond:" << lu.Condition() << endl;
+  cout << "det :" << d1*TMath::Power(2.,d2) << endl;
+  cout << "tol :" << lu.GetTol() << endl;
+
+  // Solve equation Q x au = qe for the 'unconstrained' calibration (gain)
+  // constants au.
+
+  au = lu.Solve(qe,ok);
+  cout << "au: ok=" << ok << endl;
+  //  au.Print();
+
+  // Find the sought 'constrained' calibration constants next.
+
+  Double_t t1 = fe0 - au * q0;         // temporary variable.
+  //  cout << "t1 =" << t1 << endl;
+
+  TVectorD Qiq0(THcShTrack::fNpmts);   // an intermittent result
+  Qiq0 = lu.Solve(q0,ok);
+  cout << "Qiq0: ok=" << ok << endl;
+  //  Qiq0.Print();
+
+  Double_t t2 = q0 * Qiq0;             // another temporary variable
+  //  cout << "t2 =" << t2 << endl;
+
+  ac = (t1/t2) *Qiq0 + au;             // the sought gain constants
+  //  cout << "ac:" << endl;
+  //  ac.Print();
+
+  // Assign the gain arrays.
+
+  for (UInt_t i=0; i<THcShTrack::fNpmts; i++) {
+    falphaU[i] = au[i];
+    falphaC[i] = ac[i];
+  }
+
+}
+
+//------------------------------------------------------------------------------
+
+void THcShowerCalib::FillHEcal() {
+
+  //
+  // Fill histogram of the normalized energy deposition, 2-d histogram
+  // of momentum deviation versus normalized energy deposition.
+  //
+
+  ofstream output;
+  output.open("calibrated.d",ios::out);
+
+  Int_t nev = 0;
+
+  THcShTrack trk;
+
+  for (UInt_t ientry=0; ientry<fNentries; ientry++) {
+
+    ReadShRawTrack(trk, ientry);
+    //    trk.Print(cout);
+
+    trk.SetEs(falphaC);          // use the 'constrained' calibration constants
+    Double_t P = trk.GetP();
+    Double_t Enorm = trk.Enorm();
+
+    hEcal->Fill(Enorm);
+
+    Double_t delta;
+    fTree->SetBranchAddress("H.tr.tg_dp",&delta);
+    hDPvsEcal->Fill(Enorm,delta,1.);
+
+    output << Enorm*P/1000. << " " << P/1000. << endl;
+
+    nev++;
+  };
+
+  output.close();
+
+  cout << "FillHEcal: " << nev << " events filled" << endl;
+};
+
+//------------------------------------------------------------------------------
+
+void THcShowerCalib::SaveAlphas() {
+
+  //
+  // Output the gain constants in a format suitable for inclusion in the
+  // hcal.param file to be used in the analysis.
+  //
+
+  ofstream output;
+  char* fname = Form("hcal.param.%d",fRunNumber);
+  cout << "SaveAlphas: fname=" << fname << endl;
+
+  output.open(fname,ios::out);
+
+  output << "; Calibration constants for run " << fRunNumber 
+	 << ", " << fNev << " events processed" << endl;
+  output << endl;
+
+  UInt_t j = 0;
+  output << "hcal_pos_gain_cor=";
+  for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+    output << fixed << setw(6) << setprecision(3) << falphaC[j++] << ",";
+  output << endl;
+  for (Int_t k=0; k<3; k++) {
+    output << "                  ";
+    for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+      output << fixed << setw(6) << setprecision(3) << falphaC[j++] << ",";
+    output << endl;
+  }
+  output << "hcal_neg_gain_cor=";
+  for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+    output << fixed << setw(6) << setprecision(3) << falphaC[j++] << ",";
+  output << endl;
+  output << "                  ";
+  for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+    output << fixed << setw(6) << setprecision(3) << falphaC[j++] << ",";
+  output << endl;
+  for (Int_t k=0; k<2; k++) {
+    output << "                  ";
+    for (UInt_t i=0; i<THcShTrack::fNrows; i++)
+      output << fixed << setw(6) << setprecision(3) << 0. << ",";
+    output << endl;
+  }
+
+  output.close();
+}
+
+#endif
diff --git a/hcal_calib/db_run.dat b/hcal_calib/db_run.dat
new file mode 100755
index 0000000000000000000000000000000000000000..6dd115d7003b81a3ee817f4971d289288c794397
--- /dev/null
+++ b/hcal_calib/db_run.dat
@@ -0,0 +1,7 @@
+# Test run database
+
+# DAQ04
+--------[ 2000-01-01 01:00:00 ]
+
+#A1 2202 pedestal
+ebeam           = 4.02187
diff --git a/hcal_calib/hcal_calib.cpp b/hcal_calib/hcal_calib.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..0299ac3f42d21519a028e1cd5e169793d0093272
--- /dev/null
+++ b/hcal_calib/hcal_calib.cpp
@@ -0,0 +1,47 @@
+#include "TCanvas.h"
+#include "THcShowerCalib.h"
+
+//
+// A steering Root script for the HMS calorimeter calibration.
+//
+
+void hcal_calib(Int_t RunNumber) {
+ 
+ cout << "Calibrating run " << RunNumber << endl;
+
+ THcShowerCalib theShowerCalib(RunNumber);
+
+ theShowerCalib.Init();            // Initialize constants and variables
+ theShowerCalib.CalcThresholds();  // Thresholds on the uncalibrated Edep/P
+ theShowerCalib.ComposeVMs();      // Compute vectors amd matrices for calib.
+ theShowerCalib.SolveAlphas();     // Solve for the calibration constants
+ theShowerCalib.SaveAlphas();      // Save the constants
+ theShowerCalib.SaveRawData();  // Save raw data into file for debug purposes
+ theShowerCalib.FillHEcal();       // Fill histograms
+
+ // Plot histograms
+
+ TCanvas* Canvas =
+   new TCanvas("Canvas", "HMS Shower Counter calibration", 1000, 667);
+ Canvas->Divide(2,2);
+
+ Canvas->cd(1);
+
+ // Normalized uncalibrated energy deposition.
+
+ theShowerCalib.hEunc->DrawCopy();
+  
+ theShowerCalib.hEuncSel->SetFillColor(kGreen);
+ theShowerCalib.hEuncSel->DrawCopy("same");
+
+ // Normalized energy deposition after calibration.
+
+ Canvas->cd(3);
+ theShowerCalib.hEcal->Fit("gaus");
+
+ // HMS delta(P) versus the calibrated energy deposition.
+
+ Canvas->cd(4);
+ theShowerCalib.hDPvsEcal->Draw();
+
+}
diff --git a/hcal_calib/hcal_replay.cpp b/hcal_calib/hcal_replay.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..bc6680fb36df1cd4ebd4b311ffa6beeac38fc1c7
--- /dev/null
+++ b/hcal_calib/hcal_replay.cpp
@@ -0,0 +1,74 @@
+void hcal_replay(Int_t RunNumber=52949, Int_t MaxEventToReplay=11000) {
+
+  char* RunFileNamePattern="daq04_%d.log.0";
+
+  gHcParms->Define("gen_run_number", "Run Number", RunNumber);
+  gHcParms->AddString("g_ctp_database_filename", "DBASE/test.database");
+  
+  gHcParms->Load(gHcParms->GetString("g_ctp_database_filename"), RunNumber);
+
+  // g_ctp_parm_filename and g_decode_map_filename should now be defined
+
+  gHcParms->Load(gHcParms->GetString("g_ctp_parm_filename"));
+
+  // Constants not in ENGINE PARAM files that we want to be
+  // configurable
+  gHcParms->Load("PARAM/hcana.param");
+
+  // Generate db_cratemap to correspond to map file contents
+  char command[100];
+  sprintf(command,"./make_cratemap.pl < %s > db_cratemap.dat",
+	  gHcParms->GetString("g_decode_map_filename"));
+  system(command);
+
+  // Load the Hall C style detector map
+  gHcDetectorMap=new THcDetectorMap();
+  gHcDetectorMap->Load(gHcParms->GetString("g_decode_map_filename"));
+
+  // Set up the equipment to be analyzed.
+
+  THaApparatus* HMS = new THcHallCSpectrometer("H","HMS");
+  gHaApps->Add( HMS );
+
+  // Add HMS detectors
+  HMS->AddDetector( new THcHodoscope("hod", "Hodoscope" ));
+  HMS->AddDetector( new THcShower("cal", "Shower" ));
+  HMS->AddDetector( new THcDC("dc", "Drift Chambers" ));
+  HMS->AddDetector( new THcAerogel("aero", "Aerogel Cerenkov" ));
+  HMS->AddDetector( new THcCherenkov("cer", "Gas Cerenkov" ));
+
+  // 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.
+  THaAnalyzer* 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.
+  char RunFileName[100];
+  sprintf(RunFileName,RunFileNamePattern,RunNumber);
+  THaRun* run = new THaRun(RunFileName);
+
+  // Eventually need to learn to skip over, or properly analyze
+  // the pedestal events
+  run->SetEventRange(1,MaxEventToReplay);  //  Physics Event number, does not
+                                           //  include scaler or control events
+
+  // Define the analysis parameters
+  analyzer->SetCountMode( 0 );   //Mark's modification
+  analyzer->SetEvent( event );
+  analyzer->SetOutFile(Form("Root_files/hcal_calib_%05d.root",RunNumber));
+  analyzer->SetOdefFile("output_hcal_replay.def");
+  analyzer->SetCutFile("hcal_replay_cuts.def");        // optional
+  
+  // File to record cuts accounting information
+  //  analyzer->SetSummaryFile("summary_example.log"); // optional
+  
+  analyzer->Process(run);     // start the actual analysis
+}
diff --git a/hcal_calib/hcal_replay_cuts.def b/hcal_calib/hcal_replay_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..51d285a9aac0b89f0983ea3cd915c6d3590e36be
--- /dev/null
+++ b/hcal_calib/hcal_replay_cuts.def
@@ -0,0 +1,49 @@
+# Cuts for the HMS calorimeter calibration.
+#
+
+Block: RawDecode
+
+Pedestal_event    g.evtyp==4
+scalar_event         g.evtyp==0
+HMS_event         g.evtyp==1
+SOS_event         g.evtyp==2
+coin_event         g.evtyp==3
+misc_event         g.evtyp>=5
+hms_and_coin	HMS_event||coin_event
+RawDecode_master  1
+
+Block: Decode
+Decode_master     hms_and_coin
+
+Block: CoarseTracking
+CoarseTracking_master !Pedestal_event
+
+Block: CoarseReconstruct
+RawCoarseReconstruct !Pedestal_event
+
+Block: Reconstruct
+
+one_track H.tr.n==1
+one_clust H.cal.nclust==1
+one_sh_track H.cal.ntracks==1
+in_delta  H.tr.tg_dp>-10.&&H.tr.tg_dp<10.
+good_cer H.cer.npesum>3.
+
+#good_beta H.hod.fpBeta>0.740&&H.hod.fpBeta<0.935   # 3sigma cut for run 52949
+good_beta H.tr.beta>0.740&&H.tr.beta<0.935
+
+# 338.69 = 350.0-11.31, distance from FP to the face of calorimeter
+
+#in_calx   H.tr.x+H.tr.th*338.69>-65.4&&H.tr.x+H.tr.th*338.69<54.6    #top+5cm, bottom-5cm (see hcal.pos)
+#in_caly   H.tr.y+H.tr.ph*338.69>-30.&&H.tr.y+H.tr.ph*338.69<30.      #left+5cm, right-5cm.(see hcal.pos)
+#in_cal    in_calx&&in_caly
+
+Reconstruct_master one_track && in_delta && good_cer && one_clust && good_beta
+
+# This version is for calibration from scratch (no calibration constants exist,
+# first time calibration).
+##Reconstruct_master one_track && one_clust && in_delta && good_cer && good_beta
+
+# This version can be used for iterative calibration (improve existing
+# constants).
+#Reconstruct_master one_track && one_sh_track && in_delta && good_cer && good_beta
diff --git a/hcal_calib/instructions.txt b/hcal_calib/instructions.txt
new file mode 100644
index 0000000000000000000000000000000000000000..188243153f57a3929f331b457b4d8e2ebdc2447f
--- /dev/null
+++ b/hcal_calib/instructions.txt
@@ -0,0 +1,20 @@
+Instructions for calibration the HMS calorimeter under hcana.
+
+1. Go to hcana/hcal_calib directory.
+
+2. Copy (or link) DBASE, MAPS and PARAM directories into the hcal_calib.
+
+3. Create Root_files directory.
+
+4. Copy (or link) the raw data log file of the run to be calibrated into the
+   hcal_calib.
+
+5. Under hcana, replay the run by runnning hcal_replay.C for a number of events
+   (e.g. hcal_replay.cpp(52949,100000)). This will create an output Root file
+   in the Root_files directory.
+
+6. Calibrate the run by compiling and running hcal_calib.C under hcana
+   (e.g. hcal_calib.C+(52949)). This will output calibration constants in a
+   hcal.param.<RunNumber> file. Also, it will display Canvas with histograms of
+   uncalibated and calibrated normalized energy depositions, and a scattered
+   plot of momentum variation versus the normalized energy deposition.
diff --git a/hcal_calib/make_cratemap.pl b/hcal_calib/make_cratemap.pl
new file mode 120000
index 0000000000000000000000000000000000000000..8d3d2ef2f7a837ae4d6936ebea2c00cc82a881bf
--- /dev/null
+++ b/hcal_calib/make_cratemap.pl
@@ -0,0 +1 @@
+../examples/make_cratemap.pl
\ No newline at end of file
diff --git a/hcal_calib/output_hcal_replay.def b/hcal_calib/output_hcal_replay.def
new file mode 100644
index 0000000000000000000000000000000000000000..1d8be93638275a3c64dd64094ad2bff7be7e21b9
--- /dev/null
+++ b/hcal_calib/output_hcal_replay.def
@@ -0,0 +1,19 @@
+#
+# Output definition for the HMS calorimeter calibration.
+#
+
+block H.cal.*
+variable H.cer.npesum
+variable H.tr.beta
+#variable H.hod.fpBeta
+variable H.tr.p
+variable H.tr.tg_dp
+variable H.tr.y 	#Y FP
+variable H.tr.x 	#X FP
+variable H.tr.ph	#tan(phi), wrt Y axis
+variable H.tr.th	#tan(theta), wrt X axis
+variable H.tr.n		#number of tracks
+#formula Hcal_trx H.tr.x+338.69*H.tr.th
+#formula Hcal_try H.tr.y+338.69*H.tr.ph
+#variable Hcal_trx
+#variable Hcal_try
diff --git a/hctest.input b/hctest.input
deleted file mode 100644
index 641ac1ff45e3ed5c0ee74c380ff58b44acb88aa6..0000000000000000000000000000000000000000
--- a/hctest.input
+++ /dev/null
@@ -1,23 +0,0 @@
-begin parm constants
-#include "hctest_include.input"
-  proton = 938.272   ; <- Comment character
-  neutron = 939.57 
-  pion = 139.57
-  pizero = 134.97
-  ; The following fills an array
-  offsets = 0.34, 5.7, 0.1, -.4   ; Wire Chamber offsets
-            0.0, .1356, -1.3, 8.6
-  ; array fills may take multiple lines
-  integerarray = 3 ; Example integer array
-   5, 64, 4,2 ,3,4, 543 , 543 , 3
-  anotherarray = 1,2,3,4
-      5.6, 3.4  ; Example real array
-  thmin = -50
-  thmax = 50
-  phimin = -40
-  phimax = 40
-  ; Lines from begin to end are called a block
-  hbook_filename = 'gaw.hist' ; String
-  report_filename = 'gaw.report'
-end parm constants
-
diff --git a/hctest_include.input b/hctest_include.input
deleted file mode 100644
index 1b10570382ed7cd46a104967c7e0321476d45176..0000000000000000000000000000000000000000
--- a/hctest_include.input
+++ /dev/null
@@ -1 +0,0 @@
- includearray = 5,4,3,2,1
diff --git a/linux32.py b/linux32.py
new file mode 100644
index 0000000000000000000000000000000000000000..8d664b85aa6ca7be3e829106088219cee4be5ec6
--- /dev/null
+++ b/linux32.py
@@ -0,0 +1,41 @@
+import platform
+import os
+
+def config(env,args):
+
+	debug = args.get('debug',0)
+	standalone = args.get('standalone',0)
+	cppcheck = args.get('cppcheck',0)
+	checkheaders = args.get('checkheaders',0)
+
+	if int(debug):
+		env.Append(CXXFLAGS = '-g -O0')
+	else:	
+		env.Append(CXXFLAGS = '-O')
+		env.Append(CPPDEFINES= '-DNDEBUG')
+
+	if int(standalone):
+		env.Append(STANDALONE= '1')
+
+	if int(cppcheck):
+		env.Append(CPPCHECK= '1')
+	
+	if int(checkheaders):
+		env.Append(CHECKHEADERS= '1')
+
+	env.Append(CXXFLAGS = '-m32 -Wall -Woverloaded-virtual')
+	env.Append(CPPDEFINES = '-DLINUXVERS')
+
+	cxxversion = env.subst('$CXXVERSION')
+
+#	if float(cxxversion[0:2])>=4.0:
+#			env.Append(CXXFLAGS = '-Wextra -Wno-missing-field-initializers')
+	
+	if float(cxxversion[0:2])>=3.0:
+			env.Append(CPPDEFINES = '-DHAS_SSTREAM')
+	
+	env['SHLINKFLAGS'] = '$LINKFLAGS -m32 -shared'
+	env['SHLIBSUFFIX'] = '.so'
+
+
+#end linux32.py
diff --git a/linux64.py b/linux64.py
new file mode 100644
index 0000000000000000000000000000000000000000..2a2e1234681e8f222889fc1b4dbf659d7d6b4125
--- /dev/null
+++ b/linux64.py
@@ -0,0 +1,41 @@
+import platform
+import os
+
+def config(env,args):
+
+	debug = args.get('debug',0)
+	standalone = args.get('standalone',0)
+	cppcheck = args.get('cppcheck',0)
+	checkheaders = args.get('checkheaders',0)
+	
+	if int(debug):
+		env.Append(CXXFLAGS = '-g -O0')
+	else:	
+		env.Append(CXXFLAGS = '-O')
+		env.Append(CPPDEFINES= '-DNDEBUG')
+
+	if int(standalone):
+		env.Append(STANDALONE= '1')
+
+	if int(cppcheck):
+		env.Append(CPPCHECK= '1')
+	
+	if int(checkheaders):
+		env.Append(CHECKHEADERS= '1')
+	
+	env.Append(CXXFLAGS = '-Wall -Woverloaded-virtual')
+	env.Append(CPPDEFINES = '-DLINUXVERS')
+
+	cxxversion = env.subst('$CXXVERSION')
+
+#	if float(cxxversion[0:2])>=4.0:
+#			env.Append(CXXFLAGS = '-Wextra -Wno-missing-field-initializers')
+	
+	if float(cxxversion[0:2])>=3.0:
+			env.Append(CPPDEFINES = '-DHAS_SSTREAM')
+	
+	env['SHLINKFLAGS'] = '$LINKFLAGS -shared'
+	env['SHLIBSUFFIX'] = '.so'
+
+
+#end linux6432.py
diff --git a/podd b/podd
index fe3e7463fe6e531dd790cf5ea103a368e4b17b7a..cc0ebfe4b74446e27dc5a7040dfe2b4606b24f9e 160000
--- a/podd
+++ b/podd
@@ -1 +1 @@
-Subproject commit fe3e7463fe6e531dd790cf5ea103a368e4b17b7a
+Subproject commit cc0ebfe4b74446e27dc5a7040dfe2b4606b24f9e
diff --git a/setup.csh b/setup.csh
index 83155fcf76c9e87bf4d5570f22f93515dd620284..110956b41b44276bdf959a0ca568720398b27e42 100644
--- a/setup.csh
+++ b/setup.csh
@@ -3,11 +3,12 @@
 set called=($_)
 if ("$called" != "") then
   set scriptdir=$called[2]
+  set MYDIR=`dirname $scriptdir`
+  set MYDIR=`c\d $MYDIR && pwd`    # ensure absolute path
 else
-  set scriptdir=$0
+  set scriptdir=$1
+  set MYDIR=$scriptdir
 endif
-set MYDIR=`dirname $scriptdir`
-set MYDIR=`cd $MYDIR && pwd`    # ensure absolute path
 setenv ANALYZER $MYDIR/podd
 setenv HCANALYZER $MYDIR
 # Check if LD_LIBRARY_PATH is defined
@@ -15,6 +16,3 @@ if ( ! ($?LD_LIBRARY_PATH) ) then
    setenv LD_LIBRARY_PATH ""
 endif
 setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${ANALYZER}:${HCANALYZER}"
-
-
-
diff --git a/setup.sh b/setup.sh
index 8dea0627324e17d80dd117bec5b16a307feed42c..62be0dad2ae43c916d81ddb24c29a974f0d2d505 100644
--- a/setup.sh
+++ b/setup.sh
@@ -7,4 +7,8 @@ export HCANALYZER=${MYDIR}
 if [ ! ${LD_LIBRARY_PATH} ]; then
   export LD_LIBRARY_PATH=""
 fi
+if [ ! ${DYLD_LIBRARY_PATH} ]; then
+  export DYLD_LIBRARY_PATH=""
+fi
 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ANALYZER:$HCANALYZER
+export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$ANALYZER:$HCANALYZER
diff --git a/src/HallC_LinkDef.h b/src/HallC_LinkDef.h
index b939b5157bd2ba4b46ada19cacd19717aecedba3..21d28e17b25e596ea426faef945995c729aa6c5f 100644
--- a/src/HallC_LinkDef.h
+++ b/src/HallC_LinkDef.h
@@ -7,17 +7,49 @@
 #pragma link C++ global gHcParms;
 #pragma link C++ global gHcDetectorMap;
 
+//#ifdef MACVERS
+//#pragma link C++ global gHaVars;
+//#pragma link C++ global gHaCuts;
+//#pragma link C++ global gHaApps;
+//#pragma link C++ global gHaScalers;
+//#pragma link C++ global gHaPhysics;
+//#pragma link C++ global gHaRun;
+//#pragma link C++ global gHaDB;
+//#pragma link C++ global gHaTextvars;
+//#pragma link C++ global gHaDecoder;
+//#endif
+
 #pragma link C++ class THcInterface+;
 #pragma link C++ class THcParmList+;
 #pragma link C++ class THcAnalyzer+;
+#pragma link C++ class THcHallCSpectrometer+;
+#pragma link C++ class THcDetectorMap+;
 #pragma link C++ class THcRawHit+;
-#pragma link C++ class THcHodoscopeHit+;
-#pragma link C++ class THcDCHit+;
 #pragma link C++ class THcHitList+;
+#pragma link C++ class THcSignalHit+;
 #pragma link C++ class THcHodoscope+;
-#pragma link C++ class THcDriftChamber+;
-#pragma link C++ class THcDetectorMap+;
-#pragma link C++ class THcHallCSpectrometer+;
 #pragma link C++ class THcScintillatorPlane+;
+#pragma link C++ class THcRawHodoHit+;
+#pragma link C++ class THcDC+;
+#pragma link C++ class THcDriftChamber+;
+#pragma link C++ class THcDriftChamberPlane+;
+#pragma link C++ class THcRawDCHit+;
+#pragma link C++ class THcDCHit+;
+#pragma link C++ class THcDCWire+;
+#pragma link C++ class THcDCLookupTTDConv+;
+#pragma link C++ class THcDCTimeToDistConv+;
+#pragma link C++ class THcSpacePoint+;
+#pragma link C++ class THcDCTrack+;
+#pragma link C++ class THcShower+;
+#pragma link C++ class THcShowerPlane+;
+#pragma link C++ class THcRawShowerHit+;
+#pragma link C++ class THcAerogel+;
+#pragma link C++ class THcAerogelHit+;
+#pragma link C++ class THcCherenkov+;
+#pragma link C++ class THcCherenkovHit+;
+#pragma link C++ class THcFormula+;
+#pragma link C++ class THcRaster+;
+#pragma link C++ class THcRasteredBeam+;
+#pragma link C++ class THcRasterRawHit+;
 
 #endif
diff --git a/src/SConscript.py b/src/SConscript.py
new file mode 100644
index 0000000000000000000000000000000000000000..8792ee35d1cc63d1335363ffba281dcf26d04a85
--- /dev/null
+++ b/src/SConscript.py
@@ -0,0 +1,56 @@
+###### Hall C Software Source SConscript Build File #####
+###### Author:  Edward Brash (brash@jlab.org) June 2013
+
+import os
+import re
+import SCons.Util
+Import('pbaseenv')
+
+list = Split("""
+THcInterface.cxx THcParmList.cxx THcAnalyzer.cxx \
+THcHallCSpectrometer.cxx \
+THcDetectorMap.cxx \
+THcRawHit.cxx THcHitList.cxx \
+THcSignalHit.cxx \
+THcHodoscope.cxx THcScintillatorPlane.cxx \
+THcRawHodoHit.cxx \
+THcDC.cxx THcDriftChamberPlane.cxx \
+THcDriftChamber.cxx \
+THcRawDCHit.cxx THcDCHit.cxx \
+THcDCWire.cxx \
+THcSpacePoint.cxx THcDCTrack.cxx \
+THcDCLookupTTDConv.cxx THcDCTimeToDistConv.cxx \
+THcShower.cxx THcShowerPlane.cxx \
+THcRawShowerHit.cxx \
+THcAerogel.cxx THcAerogelHit.cxx \
+THcCherenkov.cxx THcCherenkovHit.cxx \
+THcFormula.cxx \
+THcRaster.cxx THcRasteredBeam.cxx THcRasterRawHit.cxx
+""")
+
+pbaseenv.Object('main.C')
+
+sotarget = 'HallC'
+
+#srclib = pbaseenv.SharedLibrary(target = sotarget, source = list+['HallCDict.so'],SHLIBVERSION=['$VERSION'],LIBS=[''])
+srclib = pbaseenv.SharedLibrary(target = sotarget, source = list+['HallCDict.so'],SHLIBPREFIX='../lib',LIBS=[''])
+print ('Source shared library = %s\n' % srclib)
+
+linkbase =pbaseenv.subst('$SHLIBPREFIX')+sotarget
+
+cleantarget = linkbase+'.so.'+pbaseenv.subst('$VERSION')
+localmajorcleantarget = '../'+linkbase+'.so'
+
+print('cleantarget = %s\n' % cleantarget)
+print('localmajorcleantarget = %s\n' % localmajorcleantarget)
+try:
+	os.symlink(cleantarget,localmajorcleantarget)
+except:
+	print " Continuing ... "
+
+Clean(srclib,cleantarget)
+Clean(srclib,localmajorcleantarget)
+
+#baseenv.Install('../',srclib)
+#baseenv.Alias('install',['../'])
+
diff --git a/src/THcAerogel.cxx b/src/THcAerogel.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..da2716ecd4505b8557eb492a0416635cbd58930f
--- /dev/null
+++ b/src/THcAerogel.cxx
@@ -0,0 +1,598 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcAerogel                                                                //
+//                                                                           //
+// Class for an Aerogel detector consisting of pairs of PMT's                //
+// attached to a diffuser box                                                //
+// Will have a fixed number of pairs, but need to later make this            //
+// configurable.                                                             //T
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcAerogel.h"
+#include "TClonesArray.h"
+#include "THcSignalHit.h"
+#include "THaEvData.h"
+#include "THaDetMap.h"
+#include "THcDetectorMap.h"
+#include "THcGlobals.h"
+#include "THaCutList.h"
+#include "THcParmList.h"
+#include "THcHitList.h"
+#include "VarDef.h"
+#include "VarType.h"
+#include "THaTrack.h"
+#include "TClonesArray.h"
+#include "TMath.h"
+
+#include "THaTrackProj.h"
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+
+using namespace std;
+
+//_____________________________________________________________________________
+THcAerogel::THcAerogel( const char* name, const char* description,
+				  THaApparatus* apparatus ) :
+  THaNonTrackingDetector(name,description,apparatus)
+{
+  // Normal constructor with name and description
+  fPosTDCHits = new TClonesArray("THcSignalHit",16);
+  fNegTDCHits = new TClonesArray("THcSignalHit",16);
+  fPosADCHits = new TClonesArray("THcSignalHit",16);
+  fNegADCHits = new TClonesArray("THcSignalHit",16);
+
+  InitArrays();
+
+//  fTrackProj = new TClonesArray( "THaTrackProj", 5 );
+}
+
+//_____________________________________________________________________________
+THcAerogel::THcAerogel( ) :
+  THaNonTrackingDetector()
+{
+  // Constructor
+  fPosTDCHits = NULL;
+  fNegTDCHits = NULL;
+  fPosADCHits = NULL;
+  fNegADCHits = NULL;
+
+  InitArrays();
+
+}
+
+//_____________________________________________________________________________
+THcAerogel::~THcAerogel()
+{
+  // Destructor
+  DeleteArrays();
+
+  delete fPosTDCHits; fPosTDCHits = NULL;
+  delete fNegTDCHits; fNegTDCHits = NULL;
+  delete fPosADCHits; fPosADCHits = NULL;
+  delete fNegADCHits; fNegADCHits = NULL;
+}
+
+//_____________________________________________________________________________
+void THcAerogel::InitArrays()
+{
+  fA_Pos = NULL;
+  fA_Neg = NULL;
+  fA_Pos_p = NULL;
+  fA_Neg_p = NULL;
+  fT_Pos = NULL;
+  fT_Neg = NULL;
+  fPosGain = NULL;
+  fNegGain = NULL;
+  fPosPedLimit = NULL;
+  fNegPedLimit = NULL;
+  fPosPedMean = NULL;
+  fNegPedMean = NULL;
+  fPosNpe = NULL;
+  fNegNpe = NULL;
+  fPosPedSum = NULL;
+  fPosPedSum2 = NULL;
+  fPosPedCount = NULL;
+  fNegPedSum = NULL;
+  fNegPedSum2 = NULL;
+  fNegPedCount = NULL;
+  fPosPed = NULL;
+  fPosSig = NULL;
+  fPosThresh = NULL;
+  fNegPed = NULL;
+  fNegSig = NULL;
+  fNegThresh = NULL;
+}
+//_____________________________________________________________________________
+void THcAerogel::DeleteArrays()
+{
+  delete [] fA_Pos; fA_Pos = NULL;
+  delete [] fA_Neg; fA_Neg = NULL;
+  delete [] fA_Pos_p; fA_Pos_p = NULL;
+  delete [] fA_Neg_p; fA_Neg_p = NULL;
+  delete [] fT_Pos; fT_Pos = NULL;
+  delete [] fT_Neg; fT_Neg = NULL;
+  delete [] fPosGain; fPosGain = NULL;
+  delete [] fNegGain; fNegGain = NULL;
+  delete [] fPosPedLimit; fPosPedLimit = NULL;
+  delete [] fNegPedLimit; fNegPedLimit = NULL;
+  delete [] fPosPedMean; fPosPedMean = NULL;
+  delete [] fNegPedMean; fNegPedMean = NULL;
+  delete [] fPosNpe; fPosNpe = NULL;
+  delete [] fNegNpe; fNegNpe = NULL;
+  delete [] fPosPedSum; fPosPedSum = NULL;
+  delete [] fPosPedSum2; fPosPedSum2 = NULL;
+  delete [] fPosPedCount; fPosPedCount = NULL;
+  delete [] fNegPedSum; fNegPedSum = NULL;
+  delete [] fNegPedSum2; fNegPedSum2 = NULL;
+  delete [] fNegPedCount; fNegPedCount = NULL;
+  delete [] fPosPed; fPosPed = NULL;
+  delete [] fPosSig; fPosSig = NULL;
+  delete [] fPosThresh; fPosThresh = NULL;
+  delete [] fNegPed; fNegPed = NULL;
+  delete [] fNegSig; fNegSig = NULL;
+  delete [] fNegThresh; fNegThresh = NULL;
+}  
+
+//_____________________________________________________________________________
+THaAnalysisObject::EStatus THcAerogel::Init( const TDatime& date )
+{
+  cout << "THcAerogel::Init " << GetName() << endl;
+
+  // Should probably put this in ReadDatabase as we will know the
+  // maximum number of hits after setting up the detector map
+  InitHitList(fDetMap, "THcAerogelHit", 100);
+
+  EStatus status;
+  if( (status = THaNonTrackingDetector::Init( date )) )
+    return fStatus=status;
+
+  // Will need to determine which apparatus it belongs to and use the
+  // appropriate detector ID in the FillMap call
+  if( gHcDetectorMap->FillMap(fDetMap, "HAERO") < 0 ) {
+    static const char* const here = "Init()";
+    Error( Here(here), "Error filling detectormap for %s.", 
+	     "HAERO");
+      return kInitError;
+  }
+
+  return fStatus = kOK;
+}
+
+//_____________________________________________________________________________
+Int_t THcAerogel::ReadDatabase( const TDatime& date )
+{
+  // This function is called by THaDetectorBase::Init() once at the beginning
+  // of the analysis.
+
+  cout << "THcAerogel::ReadDatabase " << GetName() << endl;
+
+  char prefix[2];
+
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+
+  fNelem = 8;			// Default if not defined
+  Bool_t optional=true ;
+  DBRequest listextra[]={
+    {"aero_num_pairs", &fNelem, kInt,0,optional},
+    {0}
+  };
+  gHcParms->LoadParmValues((DBRequest*)&listextra,prefix);
+
+  fA_Pos = new Float_t[fNelem];
+  fA_Neg = new Float_t[fNelem];
+  fA_Pos_p = new Float_t[fNelem];
+  fA_Neg_p = new Float_t[fNelem];
+  fT_Pos = new Float_t[fNelem];
+  fT_Neg = new Float_t[fNelem];
+
+  fPosGain = new Double_t[fNelem];
+  fNegGain = new Double_t[fNelem];
+  fPosPedLimit = new Int_t[fNelem];
+  fNegPedLimit = new Int_t[fNelem];
+  fPosPedMean = new Double_t[fNelem];
+  fNegPedMean = new Double_t[fNelem];
+
+  DBRequest list[]={
+    {"aero_pos_gain", fPosGain, kDouble, (UInt_t) fNelem},
+    {"aero_neg_gain", fNegGain, kDouble, (UInt_t) fNelem},
+    {"aero_pos_ped_limit", fPosPedLimit, kInt, (UInt_t) fNelem},
+    {"aero_neg_ped_limit", fNegPedLimit, kInt, (UInt_t) fNelem},
+    {"aero_pos_ped_mean", fPosPedMean, kDouble, (UInt_t) fNelem,optional},
+    {"aero_neg_ped_mean", fNegPedMean, kDouble, (UInt_t) fNelem,optional},
+    {0}
+  };
+  gHcParms->LoadParmValues((DBRequest*)&list,prefix);
+
+  fIsInit = true;
+
+  // Create arrays to hold pedestal results
+  InitializePedestals();
+
+  return kOK;
+}
+
+//_____________________________________________________________________________
+Int_t THcAerogel::DefineVariables( EMode mode )
+{
+  // Initialize global variables for histogramming and tree
+
+  cout << "THcAerogel::DefineVariables called " << GetName() << endl;
+
+  if( mode == kDefine && fIsSetup ) return kOK;
+  fIsSetup = ( mode == kDefine );
+  
+  // Register variables in global list
+
+  // Do we need to put the number of pos/neg TDC/ADC hits into the variables?
+  // No.  They show up in tree as Ndata.H.aero.postdchits for example
+
+  RVarDef vars[] = {
+    {"postdchits", "List of Positive TDC hits", 
+     "fPosTDCHits.THcSignalHit.GetPaddleNumber()"},
+    {"negtdchits", "List of Negative TDC hits", 
+     "fNegTDCHits.THcSignalHit.GetPaddleNumber()"},
+    {"posadchits", "List of Positive ADC hits", 
+     "fPosADCHits.THcSignalHit.GetPaddleNumber()"},
+    {"negadchits", "List of Negative ADC hits", 
+     "fNegADCHits.THcSignalHit.GetPaddleNumber()"},
+    {"apos",  "Raw Positive ADC Amplitudes",   "fA_Pos"},
+    {"aneg",  "Raw Negative ADC Amplitudes",   "fA_Neg"},
+    {"apos_p",  "Ped-subtracted Positive ADC Amplitudes",   "fA_Pos_p"},
+    {"aneg_p",  "Ped-subtracted Negative ADC Amplitudes",   "fA_Neg_p"},
+    {"tpos",  "Raw Positive TDC",   "fT_Pos"},
+    {"tneg",  "Raw Negative TDC",   "fT_Neg"},
+    {"pos_npe","PEs Positive Tube","fPosNpe"},
+    {"neg_npe","PEs Negative Tube","fNegNpe"},
+    {"pos_npe_sum", "Total Positive Tube PEs", "fPosNpeSum"},
+    {"neg_npe_sum", "Total Negative Tube PEs", "fNegNpeSum"},
+    {"npe_sum", "Total PEs", "fNpeSum"},
+    {"ntdc_pos_hits", "Number of Positive Tube Hits", "fNTDCPosHits"},
+    {"ntdc_neg_hits", "Number of Negative Tube Hits", "fNTDCNegHits"},
+    {"ngood_hits", "Total number of good hits", "fNGoodHits"},
+    { 0 }
+  };
+
+  return DefineVarsFromList( vars, mode );
+}
+//_____________________________________________________________________________
+inline 
+void THcAerogel::Clear(Option_t* opt)
+{
+  // Clear the hit lists
+  fPosTDCHits->Clear();
+  fNegTDCHits->Clear();
+  fPosADCHits->Clear();
+  fNegADCHits->Clear();
+
+  // Clear Aerogel variables  from h_aero.f
+  
+  fNhits = 0;	     // Don't really need to do this.  (Be sure this called before Decode)
+
+  fPosNpeSum = 0.0;
+  fNegNpeSum = 0.0;
+  fNpeSum = 0.0;
+ 
+  fNGoodHits = 0;
+    
+  fNADCPosHits = 0;
+  fNADCNegHits = 0;
+  fNTDCPosHits = 0;
+  fNTDCNegHits = 0;
+
+  for(Int_t itube = 0;itube < fNelem;itube++) {
+    fA_Pos[itube] = 0;
+    fA_Neg[itube] = 0;
+    fA_Pos_p[itube] = 0;
+    fA_Neg_p[itube] = 0;
+    fT_Pos[itube] = 0;
+    fT_Neg[itube] = 0;
+    fPosNpe[itube] = 0.0;
+    fNegNpe[itube] = 0.0;
+  }
+
+}
+
+//_____________________________________________________________________________
+Int_t THcAerogel::Decode( const THaEvData& evdata )
+{
+  // Get the Hall C style hitlist (fRawHitList) for this event
+  fNhits = DecodeToHitList(evdata);
+
+  if(gHaCuts->Result("Pedestal_event")) {
+
+    AccumulatePedestals(fRawHitList);
+
+    fAnalyzePedestals = 1;	// Analyze pedestals first normal events
+    return(0);
+  }
+
+  if(fAnalyzePedestals) {
+     
+    CalculatePedestals();
+   
+    fAnalyzePedestals = 0;	// Don't analyze pedestals next event
+  }
+
+
+  Int_t ihit = 0;
+  Int_t nPosTDCHits=0;
+  Int_t nNegTDCHits=0;
+  Int_t nPosADCHits=0;
+  Int_t nNegADCHits=0;
+  while(ihit < fNhits) {
+    THcAerogelHit* hit = (THcAerogelHit *) fRawHitList->At(ihit);
+    
+   // TDC positive hit
+    if(hit->fTDC_pos >  0) {
+      THcSignalHit *sighit = (THcSignalHit*) fPosTDCHits->ConstructedAt(nPosTDCHits++);
+      sighit->Set(hit->fCounter, hit->fTDC_pos);
+    }
+
+    // TDC negative hit
+    if(hit->fTDC_neg >  0) {
+      THcSignalHit *sighit = (THcSignalHit*) fNegTDCHits->ConstructedAt(nNegTDCHits++);
+      sighit->Set(hit->fCounter, hit->fTDC_neg);
+    }
+
+    // ADC positive hit
+    if(hit->fADC_pos >  0) {
+      THcSignalHit *sighit = (THcSignalHit*) fPosADCHits->ConstructedAt(nPosADCHits++);
+      sighit->Set(hit->fCounter, hit->fADC_pos);
+    }
+
+    // ADC negative hit
+    if(hit->fADC_neg >  0) {   
+      THcSignalHit *sighit = (THcSignalHit*) fNegADCHits->ConstructedAt(nNegADCHits++);
+      sighit->Set(hit->fCounter, hit->fADC_neg);
+    }
+
+    ihit++;
+  }
+  return ihit;
+}
+
+//_____________________________________________________________________________
+Int_t THcAerogel::ApplyCorrections( void )
+{
+  return(0);
+}
+
+//_____________________________________________________________________________
+Int_t THcAerogel::CoarseProcess( TClonesArray&  ) //tracks
+{
+  
+  for(Int_t ihit=0; ihit < fNhits; ihit++) {
+    THcAerogelHit* hit = (THcAerogelHit *) fRawHitList->At(ihit);
+
+    // Pedestal subtraction and gain adjustment
+
+    // An ADC value of less than zero occurs when that particular
+    // channel has been sparsified away and has not been read. 
+    // The NPE for that tube will be assigned zero by this code.
+    // An ADC value of greater than 8192 occurs when the ADC overflows on
+    // an input that is too large. Tubes with this characteristic will
+    // be assigned NPE = 100.0.
+
+    Int_t npmt = hit->fCounter - 1;
+    // Should probably check that npmt is in range
+    fA_Pos[npmt] = hit->fADC_pos;
+    fA_Neg[npmt] = hit->fADC_neg;
+    fA_Pos_p[npmt] = hit->fADC_pos - fPosPedMean[npmt];
+    fA_Neg_p[npmt] = hit->fADC_neg - fNegPedMean[npmt];
+    fT_Pos[npmt] = hit->fTDC_pos;
+    fT_Neg[npmt] = hit->fTDC_neg;
+
+    if(hit->fADC_pos < 8000) {
+      fPosNpe[npmt] = fPosGain[npmt]*fA_Pos_p[npmt];
+    } else {
+      fPosNpe[npmt] = 100.0;
+    }
+
+    if(hit->fADC_neg < 8000) {
+      fNegNpe[npmt] = fNegGain[npmt]*fA_Neg_p[npmt];
+    } else {
+      fNegNpe[npmt] = 100.0;
+    }
+
+    fPosNpeSum += fPosNpe[npmt];
+    fNegNpeSum += fNegNpe[npmt];
+
+    // Sum positive and negative hits to fill tot_good_hits
+    if(fPosNpe[npmt] > 0.3) {
+      fNADCPosHits++;
+      fNGoodHits++;
+    }
+    if(fNegNpe[npmt] > 0.3) {
+      fNADCNegHits++;
+      fNGoodHits++;
+    }
+    if(hit->fTDC_pos > 0 && hit->fTDC_pos < 8000) {
+      fNTDCPosHits++;
+    }
+    if(hit->fTDC_neg > 0 && hit->fTDC_neg < 8000) {
+      fNTDCNegHits++;
+    }      
+
+    // Fill raw adc variables with actual tubve values
+    // mainly for diagnostic purposes
+    
+
+
+  }
+      
+  if(fPosNpeSum > 0.5 || fNegNpeSum > 0.5) {
+    fNpeSum = fPosNpeSum + fNegNpeSum;
+  } else {
+    fNpeSum = 0.0;
+  }
+
+  // If total hits are 0, then give a noticable ridiculous NPE
+  if(fNhits < 1) {
+    fNpeSum = 0.0;
+  }
+
+  // The following code is in the fortran.  It probably doesn't work
+  // right because the arrays are not cleared first and the aero_ep,
+  // aero_en, ... lines make no sense.
+
+  //* Next, fill the rawadc variables with the actual tube values
+  //*       mainly for diagnostic purposes.
+  //
+  //      do ihit=1,haero_tot_hits
+  //
+  //         npmt=haero_pair_num(ihit)
+  //
+  //         haero_rawadc_pos(npmt)=haero_adc_pos(ihit)
+  //         aero_ep(npmt)=haero_rawadc_pos(ihit)        
+  //
+  //         haero_rawadc_neg(npmt)=haero_adc_neg(ihit)
+  //         aero_en(npmt)=haero_rawadc_neg(ihit)
+  //
+  //         haero_rawtdc_neg(npmt)=haero_tdc_neg(ihit)
+  //         aero_tn(npmt)= haero_tdc_neg(ihit)
+  //
+  //         haero_rawtdc_pos(npmt)=haero_tdc_pos(ihit)
+  //         aero_tp(npmt)= haero_tdc_pos(ihit)
+  //
+  //      enddo
+
+  ApplyCorrections();
+
+  return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcAerogel::FineProcess( TClonesArray& tracks )
+{
+
+  return 0;
+}
+
+//_____________________________________________________________________________
+void THcAerogel::InitializePedestals( )
+{
+  fNPedestalEvents = 0;
+  fMinPeds = 500; 		// In engine, this is set in parameter file
+  fPosPedSum = new Int_t [fNelem];
+  fPosPedSum2 = new Int_t [fNelem];
+  fPosPedLimit = new Int_t [fNelem];
+  fPosPedCount = new Int_t [fNelem];
+  fNegPedSum = new Int_t [fNelem];
+  fNegPedSum2 = new Int_t [fNelem];
+  fNegPedLimit = new Int_t [fNelem];
+  fNegPedCount = new Int_t [fNelem];
+
+  fPosPed = new Double_t [fNelem];
+  fNegPed = new Double_t [fNelem];
+  fPosThresh = new Double_t [fNelem];
+  fNegThresh = new Double_t [fNelem];
+  for(Int_t i=0;i<fNelem;i++) {
+    fPosPedSum[i] = 0;
+    fPosPedSum2[i] = 0;
+    fPosPedLimit[i] = 1000;	// In engine, this are set in parameter file
+    fPosPedCount[i] = 0;
+    fNegPedSum[i] = 0;
+    fNegPedSum2[i] = 0;
+    fNegPedLimit[i] = 1000;	// In engine, this are set in parameter file
+    fNegPedCount[i] = 0;
+  }
+
+  fPosNpe = new Double_t [fNelem];
+  fNegNpe = new Double_t [fNelem];
+}
+
+//_____________________________________________________________________________
+void THcAerogel::AccumulatePedestals(TClonesArray* rawhits)
+{
+  // Extract data from the hit list, accumulating into arrays for
+  // calculating pedestals
+
+  Int_t nrawhits = rawhits->GetLast()+1;
+
+  Int_t ihit = 0;
+  while(ihit < nrawhits) {
+    THcAerogelHit* hit = (THcAerogelHit *) rawhits->At(ihit);
+
+    Int_t element = hit->fCounter - 1;
+    Int_t adcpos = hit->fADC_pos;
+    Int_t adcneg = hit->fADC_pos;
+    if(adcpos <= fPosPedLimit[element]) {
+      fPosPedSum[element] += adcpos;
+      fPosPedSum2[element] += adcpos*adcpos;
+      fPosPedCount[element]++;
+      if(fPosPedCount[element] == fMinPeds/5) {
+	fPosPedLimit[element] = 100 + fPosPedSum[element]/fPosPedCount[element];
+      }
+    }
+    if(adcneg <= fNegPedLimit[element]) {
+      fNegPedSum[element] += adcneg;
+      fNegPedSum2[element] += adcneg*adcneg;
+      fNegPedCount[element]++;
+      if(fNegPedCount[element] == fMinPeds/5) {
+	fNegPedLimit[element] = 100 + fNegPedSum[element]/fNegPedCount[element];
+      }
+    }
+    ihit++;
+  }
+
+  fNPedestalEvents++;
+
+  return;
+}
+
+//_____________________________________________________________________________
+void THcAerogel::CalculatePedestals( )
+{
+  // Use the accumulated pedestal data to calculate pedestals
+  // Later add check to see if pedestals have drifted ("Danger Will Robinson!")
+  //  cout << "Plane: " << fPlaneNum << endl;
+  for(Int_t i=0; i<fNelem;i++) {
+    
+    // Positive tubes
+    fPosPed[i] = ((Double_t) fPosPedSum[i]) / TMath::Max(1, fPosPedCount[i]);
+    fPosThresh[i] = fPosPed[i] + 15;
+
+    // Negative tubes
+    fNegPed[i] = ((Double_t) fNegPedSum[i]) / TMath::Max(1, fNegPedCount[i]);
+    fNegThresh[i] = fNegPed[i] + 15;
+
+    //    cout << i+1 << " " << fPosPed[i] << " " << fNegPed[i] << endl;
+
+    // Just a copy for now, but allow the possibility that fXXXPedMean is set
+    // in a parameter file and only overwritten if there is a sufficient number of
+    // pedestal events.  (So that pedestals are sensible even if the pedestal events were
+    // not acquired.)
+    if(fMinPeds > 0) {
+      if(fPosPedCount[i] > fMinPeds) {
+	fPosPedMean[i] = fPosPed[i];
+      }
+      if(fNegPedCount[i] > fMinPeds) {
+	fNegPedMean[i] = fNegPed[i];
+      }
+    }
+  }
+  //  cout << " " << endl;
+  
+}
+void THcAerogel::Print( const Option_t* opt) const {
+  THaNonTrackingDetector::Print(opt);
+
+  // Print out the pedestals
+
+  cout << endl;
+  cout << "Aerogel Pedestals" << endl;
+  cout << "No.   Neg    Pos" << endl;
+  for(Int_t i=0; i<fNelem; i++){
+    cout << " " << i << "    " << fNegPed[i] << "    " << fPosPed[i] << endl;
+  }
+  cout << endl;
+}
+
+ClassImp(THcAerogel)
+////////////////////////////////////////////////////////////////////////////////
+ 
diff --git a/src/THcAerogel.h b/src/THcAerogel.h
new file mode 100644
index 0000000000000000000000000000000000000000..56896d4bfa49350134c3c47dbdf39d1807311930
--- /dev/null
+++ b/src/THcAerogel.h
@@ -0,0 +1,103 @@
+#ifndef ROOT_THcAerogel
+#define ROOT_THcAerogel
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcAerogel                                                              //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "TClonesArray.h"
+#include "THaNonTrackingDetector.h"
+#include "THcHitList.h"
+#include "THcAerogelHit.h"
+
+class THcAerogel : public THaNonTrackingDetector, public THcHitList {
+
+ public:
+  THcAerogel( const char* name, const char* description = "",
+		THaApparatus* a = NULL );
+  virtual ~THcAerogel();
+  
+  virtual void 	     Clear( Option_t* opt="" );
+  virtual Int_t      Decode( const THaEvData& );
+  void               InitArrays();
+  void               DeleteArrays();
+  virtual EStatus    Init( const TDatime& run_time );
+  virtual Int_t      ReadDatabase( const TDatime& date );
+  virtual Int_t      DefineVariables( EMode mode = kDefine );
+  virtual Int_t      CoarseProcess( TClonesArray& tracks );
+  virtual Int_t      FineProcess( TClonesArray& tracks );
+
+  virtual void AccumulatePedestals(TClonesArray* rawhits);
+  virtual void CalculatePedestals();
+
+  virtual Int_t      ApplyCorrections( void );
+
+  virtual void Print(const Option_t* opt) const;
+
+  THcAerogel();  // for ROOT I/O		
+ protected:
+  Int_t fAnalyzePedestals;
+
+  // Parameters
+  Double_t* fPosGain;
+  Double_t* fNegGain;
+
+  // Event information
+  Int_t fNhits;
+
+  Float_t*   fA_Pos;         // [fNelem] Array of ADC amplitudes
+  Float_t*   fA_Neg;         // [fNelem] Array of ADC amplitudes
+  Float_t*   fA_Pos_p;	     // [fNelem] Array of ped-subtracted ADC amplitudes
+  Float_t*   fA_Neg_p;	     // [fNelem] Array of ped-subtracted ADC amplitudes
+  Float_t*   fT_Pos;         // [fNelem] Array of TDCs
+  Float_t*   fT_Neg;         // [fNelem] Array of TDCs
+
+  Double_t fPosNpeSum;
+  Double_t fNegNpeSum;
+  Double_t fNpeSum;
+  Int_t fNGoodHits;
+  Int_t fNADCPosHits;
+  Int_t fNADCNegHits;
+  Int_t fNTDCPosHits;
+  Int_t fNTDCNegHits;
+
+  Double_t* fPosNpe;		// [fNelem] # Photoelectrons per positive tube
+  Double_t* fNegNpe;		// [fNelem] # Photoelectrons per negative tube
+
+  // Hits
+  TClonesArray* fPosTDCHits;
+  TClonesArray* fNegTDCHits;
+  TClonesArray* fPosADCHits;
+  TClonesArray* fNegADCHits;
+
+  // Pedestals
+  Int_t fNPedestalEvents;
+  Int_t fMinPeds;
+  Int_t *fPosPedSum;		/* Accumulators for pedestals */
+  Int_t *fPosPedSum2;
+  Int_t *fPosPedLimit;
+  Int_t *fPosPedCount;
+  Int_t *fNegPedSum;
+  Int_t *fNegPedSum2;
+  Int_t *fNegPedLimit;
+  Int_t *fNegPedCount;
+
+  Double_t *fPosPed;
+  Double_t *fPosSig;
+  Double_t *fPosThresh;
+  Double_t *fNegPed;
+  Double_t *fNegSig;
+  Double_t *fNegThresh;
+
+  Double_t *fPosPedMean; 	/* Can be supplied in parameters and then */
+  Double_t *fNegPedMean;	/* be overwritten from ped analysis */
+  
+  void Setup(const char* name, const char* description);
+  virtual void  InitializePedestals( );
+
+  ClassDef(THcAerogel,0)   // Generic aerogel class
+};
+
+#endif
diff --git a/src/THcAerogelHit.cxx b/src/THcAerogelHit.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..4ead9c573035682818a09350d759ab81bdc0c109
--- /dev/null
+++ b/src/THcAerogelHit.cxx
@@ -0,0 +1,17 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcAerogelHit                                                             //
+//                                                                           //
+// Class representing a single raw hit for a pair of aerogel tubes           //
+//                                                                           //
+// Contains plane, counter and pos/neg adc                                   //
+//                                                                           //
+// Assumes Aerogel design where Aerogel PMT's are in pairs and only have     //
+// ADCs.                                                                     //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcAerogelHit.h"
+
+//////////////////////////////////////////////////////////////////////////
+ClassImp(THcAerogelHit)
diff --git a/src/THcAerogelHit.h b/src/THcAerogelHit.h
new file mode 100644
index 0000000000000000000000000000000000000000..18690cd7a518c6615f5c67883d405a793553a360
--- /dev/null
+++ b/src/THcAerogelHit.h
@@ -0,0 +1,19 @@
+#ifndef ROOT_THcAerogelHit
+#define ROOT_THcAerogelHit
+
+#include "THcRawHodoHit.h"
+
+class THcAerogelHit : public THcRawHodoHit {
+
+ public:
+  friend class THcAerogel;
+ 
+ protected:
+
+ private:
+
+  ClassDef(THcAerogelHit,0);	// Raw Aerogel hit
+};
+
+#endif
+
diff --git a/src/THcAnalyzer.cxx b/src/THcAnalyzer.cxx
index de063359287e3a9b2ff323dbf890aefe47cf0c32..117df874f36000b095af4a243718dc81791d0075 100644
--- a/src/THcAnalyzer.cxx
+++ b/src/THcAnalyzer.cxx
@@ -22,13 +22,19 @@
 //////////////////////////////////////////////////////////////////////////
 
 #include "THcAnalyzer.h"
+#include "THaRunBase.h"
 #include "THaBenchmark.h"
 #include "TList.h"
+#include "THcParmList.h"
+#include "THcFormula.h"
+#include "THcGlobals.h"
+#include "TMath.h"
 
 #include <fstream>
 #include <algorithm>
 #include <iomanip>
 #include <cstring>
+#include <iostream>
 
 using namespace std;
 
@@ -52,6 +58,130 @@ THcAnalyzer::~THcAnalyzer()
 
 }
 
+//_____________________________________________________________________________
+void THcAnalyzer::PrintReport(const char* templatefile, const char* ofile)
+{
+  // Generate "reports" such as end of run scaler/efficiency sheets
+  // Reads a template file, copying that file to the output, replacing
+  // variables and expressions inside of braces ({}) with evaluated values.
+  // Similar but not identical to ENGINE/CTP report templates.
+  ifstream ifile;
+  ifile.open(templatefile);
+
+  if(!ifile.is_open()) {
+    cout << "Error opening template file " << templatefile << endl;
+    return;
+  }
+
+  ofstream ostr(ofile);
+
+  if(!ostr.is_open()) {
+      cout << "Error opening report output file " << ofile << endl;
+      return;
+  }
+
+  LoadInfo();			// Load some run information into gHcParms
+
+  // In principle, we should allow braces to be escaped.  But for
+  // now we won't.  Existing template files don't seem to output
+  // any braces
+  for(string line; getline(ifile, line);) {
+    //    cout << line << endl;
+    string::size_type start;
+    while((start = line.find('{',0)) != string::npos) {
+      //      cout << start << endl;
+      string::size_type end = line.find('}',start);
+      if(end==string::npos) break; // No more expressions on the line
+      string expression=line.substr(start+1,end-start-1);
+      string::size_type formatpos = expression.find(':',0);
+      string format;
+      if(formatpos != string::npos) {
+	format=expression.substr(formatpos+1);
+	expression=expression.substr(0,formatpos);
+	//	cout << "|" << expression << "|" << format << "|" << endl;
+      }
+      // Should we first check if the expression can be simply a variable
+      // or index into variable?
+      // For now, first check if it is a string.
+      // If not, then evaluate as an expression.
+      string replacement;
+      if(const char *textstring=gHcParms->GetString(expression)) {
+	//	cout << expression << " is a string with value " << textstring << endl;
+	if(format.empty()) format = "%s";
+	replacement=Form(format.c_str(),textstring);
+      } else {
+	THcFormula* formula = new THcFormula("temp",expression.c_str(),gHcParms,gHaVars,gHaCuts);
+	Double_t value=formula->Eval();
+	// If the value is close to integer and no format is defined
+	// use "%.0f" to print out integer
+	if(format.empty()) {
+	  if(TMath::Abs(value-TMath::Nint(value)) < 0.0000001) {
+	    format = "%.0f";
+	  } else {
+	    format = "%f";
+	  }
+	}
+	if(format[format.length()-1] == 'd') {
+	  replacement=Form(format.c_str(),TMath::Nint(value));
+	} else {
+	  replacement=Form(format.c_str(),value);
+	}
+      }
+      //      cout << "Replacement:" << replacement << endl;
+      line.replace(start,end-start+1,replacement);
+    }
+    ostr << line << endl;
+  }
+  ostr.close();
+  ifile.close();
+
+  return;
+}
+
+//_____________________________________________________________________________
+void THcAnalyzer::LoadInfo()
+{
+  // Create several THcParms variables in gHcParms containing 
+  // run information such as
+  // run number, first event analyzed, number of events, etc.
+  //    gen_run_number - Current run
+  //    gen_run_starting_event - Id of first event analyzed
+  //    gen_event_id_number - Id of last event analyzed
+  Int_t* runnum;
+  Int_t* firstevent;
+  Int_t* lastevent;
+
+  THaVar* varptr;
+  varptr = gHcParms->Find("gen_run_number");
+  if(varptr) {
+    runnum = (Int_t*) varptr->GetValuePointer(); // Assume correct type
+  } else {
+    runnum = new Int_t[1];
+    gHcParms->Define("gen_run_number","Run Number", *runnum);
+  }
+  *runnum = fRun->GetNumber();
+  
+  varptr = gHcParms->Find("gen_run_starting_event");
+  if(varptr) {
+    firstevent = (Int_t*) varptr->GetValuePointer(); // Assume correct type
+  } else {
+    firstevent = new Int_t[1];
+    gHcParms->Define("gen_run_starting_event","First event analyzed", *firstevent);
+  }
+  // May not agree with engine event definintions
+  *firstevent = fRun->GetFirstEvent();
+  
+  varptr = gHcParms->Find("gen_event_id_number");
+  if(varptr) {
+    lastevent = (Int_t*)varptr->GetValuePointer(); // Assume correct type
+  } else {
+    lastevent = new Int_t[1];
+    gHcParms->Define("gen_event_id_number","Last event analyzed", *lastevent);
+  }
+  // Not accurate
+  *lastevent = fRun->GetFirstEvent()+fRun->GetNumAnalyzed();
+}  
+
 //_____________________________________________________________________________
 
 ClassImp(THcAnalyzer)
diff --git a/src/THcAnalyzer.h b/src/THcAnalyzer.h
index 172d12560cea9e381cae9465e9209313b38c8b39..fcb2842a5017d91e233478c0901a5b67be965722 100644
--- a/src/THcAnalyzer.h
+++ b/src/THcAnalyzer.h
@@ -16,12 +16,19 @@ public:
   THcAnalyzer();
   virtual ~THcAnalyzer();
 
+  void SetPedestalEvtype( Int_t evtype ) { fPedestalEvtype = evtype; }
+
+  void PrintReport( const char* templatefile, const char* ofile);
+
 protected:
+
+  Int_t fPedestalEvtype;
     
 private:
   //  THcAnalyzer( const THcAnalyzer& );
   //  THcAnalyzer& operator=( const THcAnalyzer& );
-  
+  void LoadInfo();
+
   ClassDef(THcAnalyzer,0)  //Hall C Analyzer Standard Event Loop
 
 };
diff --git a/src/THcCherenkov.cxx b/src/THcCherenkov.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..236db7c8be1b39244d752dde54a5c2ffd2a2570d
--- /dev/null
+++ b/src/THcCherenkov.cxx
@@ -0,0 +1,532 @@
+///////////////////////////////////////////////////////////////////////////////////////
+//                                                                                   //
+// THcCherenkov                                                                      //
+//                                                                                   //
+// Class for an Cherenkov detector consisting of two PMT's                           //
+//                                                                                   //
+// Zafar Ahmed. Fourth pull request. January 30 2014.                                //
+// Comment: No need to cahnge the Map file.                                          //
+// Comment  New parameter hcer_tot_pmts = 2 is added to the hcana.param file         //
+//                                                                                   //
+// This code is for the coarse process of THcCherenkov class.                        //
+//                                                                                   //
+//                                                                                   //
+// Variable Name   Description                                                       //
+//                                                                                   //
+// phototubes      Nuber of Cherenkov photo tubes                                    //
+// adc             Raw ADC values                                                    //
+// adc_p           Pedestal Subtracted ADC values                                    //
+// npe             Number of Photo electrons                                         //
+// npesum          Sum of Number of Photo electrons                                  //
+// ncherhit        Number of Hits(Cherenkov)                                         //
+//                                                                                   //
+///////////////////////////////////////////////////////////////////////////////////////
+
+#include "THcCherenkov.h"
+#include "TClonesArray.h"
+#include "THcSignalHit.h"
+#include "THaEvData.h"
+#include "THaDetMap.h"
+#include "THcDetectorMap.h"
+#include "THcGlobals.h"
+#include "THaCutList.h"
+#include "THcParmList.h"
+#include "THcHitList.h"
+#include "VarDef.h"
+#include "VarType.h"
+#include "THaTrack.h"
+#include "TClonesArray.h"
+#include "TMath.h"
+
+#include "THaTrackProj.h"
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+
+using namespace std;
+
+using std::cout;
+using std::cin;
+using std::endl;
+
+#include <iomanip>
+using std::setw;
+using std::setprecision;
+
+//_____________________________________________________________________________
+THcCherenkov::THcCherenkov( const char* name, const char* description,
+				  THaApparatus* apparatus ) :
+  THaNonTrackingDetector(name,description,apparatus)
+{
+  // Normal constructor with name and description
+  fADCHits = new TClonesArray("THcSignalHit",16);
+  cout << "fADCHits " << fADCHits << endl;
+  InitArrays();
+  cout << "fADCHits " << fADCHits << endl;
+
+}
+
+//_____________________________________________________________________________
+THcCherenkov::THcCherenkov( ) :
+  THaNonTrackingDetector()
+{
+  // Constructor
+  fADCHits = NULL;
+
+  InitArrays();
+}
+
+//_____________________________________________________________________________
+void THcCherenkov::InitArrays()
+{
+  fGain = NULL;
+  fCerWidth = NULL;
+  fNPMT = NULL;
+  fADC = NULL;
+  fADC_P = NULL;
+  fNPE = NULL;
+  fPedSum = NULL;
+  fPedSum2 = NULL;
+  fPedLimit = NULL;
+  fPedMean = NULL;
+  fPedCount = NULL;
+  fPed = NULL;
+  fThresh = NULL;
+}
+//_____________________________________________________________________________
+void THcCherenkov::DeleteArrays()
+{
+  delete [] fGain; fGain = NULL;
+  delete [] fCerWidth; fCerWidth = NULL;
+  delete [] fNPMT; fNPMT = NULL;
+  delete [] fADC; fADC = NULL;
+  delete [] fADC; fADC_P = NULL;
+  delete [] fNPE; fNPE = NULL;
+  delete [] fPedSum; fPedSum = NULL;
+  delete [] fPedSum2; fPedSum2 = NULL;
+  delete [] fPedLimit; fPedLimit = NULL;
+  delete [] fPedMean; fPedMean = NULL;
+  delete [] fPedCount; fPedCount = NULL;
+  delete [] fPed; fPed = NULL;
+  delete [] fThresh; fThresh = NULL;
+}
+//_____________________________________________________________________________
+THcCherenkov::~THcCherenkov()
+{
+  // Destructor
+  delete fADCHits; fADCHits = NULL;
+
+  DeleteArrays();
+
+}
+
+//_____________________________________________________________________________
+THaAnalysisObject::EStatus THcCherenkov::Init( const TDatime& date )
+{
+  static const char* const here = "Init()";
+
+  cout << "THcCherenkov::Init " << GetName() << endl;
+
+  // Should probably put this in ReadDatabase as we will know the
+  // maximum number of hits after setting up the detector map
+  InitHitList(fDetMap, "THcCherenkovHit", 100); // 100 is max hits
+
+  EStatus status;
+  if( (status = THaNonTrackingDetector::Init( date )) )
+    return fStatus=status;
+
+  // Will need to determine which apparatus it belongs to and use the
+  // appropriate detector ID in the FillMap call
+  if( gHcDetectorMap->FillMap(fDetMap, "HCER") < 0 ) {
+    Error( Here(here), "Error filling detectormap for %s.", 
+	     "HCER");
+      return kInitError;
+  }
+
+  return fStatus = kOK;
+}
+
+//_____________________________________________________________________________
+Int_t THcCherenkov::ReadDatabase( const TDatime& date )
+{
+  // This function is called by THaDetectorBase::Init() once at the beginning
+  // of the analysis.
+
+  cout << "THcCherenkov::ReadDatabase " << GetName() << endl; // Ahmed
+
+  char prefix[2];
+  char parname[100];
+
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+
+  strcpy(parname,prefix);                              // This is taken from 
+  strcat(parname,"cer_tot_pmts");                      // THcScintillatorPlane
+  fNelem = (Int_t)gHcParms->Find(parname)->GetValue(); // class.
+
+  //    fNelem = 2;      // Default if not defined  
+
+  fNPMT = new Int_t[fNelem];
+  fADC = new Double_t[fNelem];
+  fADC_P = new Double_t[fNelem];
+  fNPE = new Double_t[fNelem];
+
+  fCerWidth = new Double_t[fNelem];
+  fGain = new Double_t[fNelem];
+  fPedLimit = new Int_t[fNelem];
+  fPedMean = new Double_t[fNelem];
+  
+  fNPMT = new Int_t[fNelem];
+  fADC = new Double_t[fNelem];
+  fADC_P = new Double_t[fNelem];
+  fNPE = new Double_t[fNelem];
+  fCerWidth = new Double_t[fNelem];
+  fGain = new Double_t[fNelem];
+  fPedLimit = new Int_t[fNelem];
+  fPedMean = new Double_t[fNelem];
+  
+  fCerNRegions = 3; // This value should be in parameter file
+
+  fCerTrackCounter = new Int_t [fCerNRegions];
+  fCerFiredCounter = new Int_t [fCerNRegions];
+  for ( Int_t ireg = 0; ireg < fCerNRegions; ireg++ ) {
+    fCerTrackCounter[ireg] = 0;
+    fCerFiredCounter[ireg] = 0;
+  }
+
+
+  fCerRegionsValueMax = fCerNRegions * 8; // This value 8 should also be in paramter file
+  fCerRegionValue = new Double_t [fCerRegionsValueMax];
+
+  DBRequest list[]={
+    {"cer_adc_to_npe", fGain,     kDouble, (UInt_t) fNelem},              // Ahmed
+    {"cer_ped_limit",  fPedLimit, kInt,    (UInt_t) fNelem},              // Ahmed
+    {"cer_width",      fCerWidth, kDouble, (UInt_t) fNelem},              // Ahmed
+    {"cer_chi2max",     &fCerChi2Max,        kDouble},                       // Ahmed
+    {"cer_beta_min",    &fCerBetaMin,        kDouble},                       // Ahmed
+    {"cer_beta_max",    &fCerBetaMax,        kDouble},                       // Ahmed
+    {"cer_et_min",      &fCerETMin,          kDouble},                       // Ahmed
+    {"cer_et_max",      &fCerETMax,          kDouble},                       // Ahmed
+    {"cer_mirror_zpos", &fCerMirrorZPos,     kDouble},                       // Ahmed
+    {"cer_region",      &fCerRegionValue[0], kDouble, (UInt_t) fCerRegionsValueMax},  // Ahmed
+    {"cer_threshold",   &fCerThresh,         kDouble},                       // Ahmed
+    {0}
+  };
+
+  gHcParms->LoadParmValues((DBRequest*)&list,prefix);
+
+  fIsInit = true;
+
+  for (Int_t i1 = 0; i1 < fCerNRegions; i1++ ) {
+    cout << "Region " << i1 << endl;
+    for (Int_t i2 = 0; i2 < 8; i2++ ) {
+      cout << fCerRegionValue[GetCerIndex( i1, i2 )] << " ";
+    }
+    cout <<endl;
+  }
+
+  // Create arrays to hold pedestal results
+  InitializePedestals();
+
+  return kOK;
+}
+
+//_____________________________________________________________________________
+Int_t THcCherenkov::DefineVariables( EMode mode )
+{
+  // Initialize global variables for histogramming and tree
+
+  cout << "THcCherenkov::DefineVariables called " << GetName() << endl;
+
+  if( mode == kDefine && fIsSetup ) return kOK;
+  fIsSetup = ( mode == kDefine );
+  
+  // Register variables in global list
+
+  // Do we need to put the number of pos/neg TDC/ADC hits into the variables?
+  // No.  They show up in tree as Ndata.H.aero.postdchits for example
+
+  RVarDef vars[] = {
+    {"phototubes",  "Nuber of Cherenkov photo tubes",            "fNPMT"},
+    {"adc",         "Raw ADC values",                            "fADC"},
+    {"adc_p",       "Pedestal Subtracted ADC values",            "fADC_P"},
+    {"npe",         "Number of Photo electrons",                 "fNPE"},
+    {"npesum",      "Sum of Number of Photo electrons",          "fNPEsum"},
+    {"ncherhit",    "Number of Hits(Cherenkov)",                 "fNCherHit"},
+    {"certrackcounter", "Tracks inside Cherenkov region",        "fCerTrackCounter"},
+    {"cerfiredcounter", "Tracks with engough Cherenkov NPEs ",   "fCerFiredCounter"},
+    { 0 }
+  };
+
+  return DefineVarsFromList( vars, mode );
+}
+//_____________________________________________________________________________
+inline 
+void THcCherenkov::Clear(Option_t* opt)
+{
+  // Clear the hit lists
+  fADCHits->Clear();
+
+  // Clear Cherenkov variables  from h_trans_cer.f
+  
+  fNhits = 0;	     // Don't really need to do this.  (Be sure this called before Decode)
+  fNPEsum = 0.0;
+  fNCherHit = 0;
+
+  for(Int_t itube = 0;itube < fNelem;itube++) {
+    fNPMT[itube] = 0;
+    fADC[itube] = 0;
+    fADC_P[itube] = 0;
+    fNPE[itube] = 0;
+  }
+
+}
+
+//_____________________________________________________________________________
+Int_t THcCherenkov::Decode( const THaEvData& evdata )
+{
+  // Get the Hall C style hitlist (fRawHitList) for this event
+  fNhits = DecodeToHitList(evdata);
+
+  if(gHaCuts->Result("Pedestal_event")) {
+    AccumulatePedestals(fRawHitList);
+    fAnalyzePedestals = 1;	// Analyze pedestals first normal events
+    return(0);
+  }
+
+  if(fAnalyzePedestals) {
+    CalculatePedestals();
+    fAnalyzePedestals = 0;	// Don't analyze pedestals next event
+  }
+
+
+  Int_t ihit = 0;
+  Int_t nADCHits=0;
+  while(ihit < fNhits) {
+    THcCherenkovHit* hit = (THcCherenkovHit *) fRawHitList->At(ihit);
+    
+    // ADC hit
+    if(hit->fADC_pos >  0) {
+      THcSignalHit *sighit = (THcSignalHit*) fADCHits->ConstructedAt(nADCHits++);
+      sighit->Set(hit->fCounter, hit->fADC_pos);
+    }
+
+    ihit++;
+  }
+  return ihit;
+}
+
+//_____________________________________________________________________________
+Int_t THcCherenkov::ApplyCorrections( void )
+{
+  return(0);
+}
+
+//_____________________________________________________________________________
+Int_t THcCherenkov::CoarseProcess( TClonesArray&  ) //tracks
+{
+  for(Int_t ihit=0; ihit < fNhits; ihit++) {
+    THcCherenkovHit* hit = (THcCherenkovHit *) fRawHitList->At(ihit); // nhit = 1, hcer_tot_hits
+
+    // Pedestal subtraction and gain adjustment
+
+    // An ADC value of less than zero occurs when that particular
+    // channel has been sparsified away and has not been read. 
+    // The NPE for that tube will be assigned zero by this code.
+    // An ADC value of greater than 8192 occurs when the ADC overflows on
+    // an input that is too large. Tubes with this characteristic will
+    // be assigned NPE = 100.0.
+    Int_t npmt = hit->fCounter - 1;                             // tube = hcer_tube_num(nhit)
+    // Should probably check that npmt is in range
+    if ( ihit != npmt )
+      cout << "ihit != npmt " << endl;
+
+    fNPMT[npmt] = hit->fCounter;
+    fADC[npmt] = hit->fADC_pos;
+    fADC_P[npmt] = hit->fADC_pos - fPedMean[npmt];
+    
+    if ( ( fADC_P[npmt] > fCerWidth[npmt] ) && ( hit->fADC_pos < 8000 ) ) {
+      fNPE[npmt] = fGain[npmt]*fADC_P[npmt];
+      fNCherHit ++;
+    } else if (  hit->fADC_pos > 8000 ) {
+      fNPE[npmt] = 100.0;
+    } else {
+      fNPE[npmt] = 0.0;
+    }
+    
+    fNPEsum += fNPE[npmt];
+
+  }
+
+  ApplyCorrections();
+
+  return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcCherenkov::FineProcess( TClonesArray& tracks )
+{
+
+  if ( tracks.GetLast() > -1 ) {
+
+    THaTrack* theTrack = dynamic_cast<THaTrack*>( tracks.At(0) );
+    if (!theTrack) return -1;
+    
+    if ( ( ( tracks.GetLast() + 1 ) == 1 ) && 
+	 ( theTrack->GetChi2()/theTrack->GetNDoF() > 0. ) && 
+	 ( theTrack->GetChi2()/theTrack->GetNDoF() <  fCerChi2Max ) && 
+	 ( theTrack->GetBeta() > fCerBetaMin ) &&
+	 ( theTrack->GetBeta() < fCerBetaMax ) &&
+	 ( ( theTrack->GetEnergy() / theTrack->GetP() ) > fCerETMin ) &&
+	 ( ( theTrack->GetEnergy() / theTrack->GetP() ) < fCerETMax ) 
+	 ) {
+      
+      Double_t cerX = theTrack->GetX() + theTrack->GetTheta() * fCerMirrorZPos;
+      Double_t cerY = theTrack->GetY() + theTrack->GetPhi()   * fCerMirrorZPos;
+      
+      for ( Int_t ir = 0; ir < fCerNRegions; ir++ ) {
+	
+	//	*     hit must be inside the region in order to continue.   
+
+	if ( ( TMath::Abs( fCerRegionValue[GetCerIndex( ir, 0 )] - cerX ) < 
+	       fCerRegionValue[GetCerIndex( ir, 4 )] ) &&
+	     ( TMath::Abs( fCerRegionValue[GetCerIndex( ir, 1 )] - cerY ) < 
+	       fCerRegionValue[GetCerIndex( ir, 5 )] ) &&
+	     ( TMath::Abs( fCerRegionValue[GetCerIndex( ir, 2 )] - theTrack->GetTheta() ) < 
+	       fCerRegionValue[GetCerIndex( ir, 6 )] ) &&
+	     ( TMath::Abs( fCerRegionValue[GetCerIndex( ir, 3 )] - theTrack->GetPhi() ) < 
+	       fCerRegionValue[GetCerIndex( ir, 7 )] ) 
+	     ) {
+	
+	  // *     increment the 'should have fired' counters 
+	  fCerTrackCounter[ir] ++;	  
+	  
+	  // *     increment the 'did fire' counters
+
+	  if ( fNPEsum > fCerThresh ) {
+	    fCerFiredCounter[ir] ++;
+	  }
+
+	}
+		
+      } // loop over regions
+      //      cout << endl;
+      
+    }
+    
+  }
+
+  return 0;
+}
+
+//_____________________________________________________________________________
+void THcCherenkov::InitializePedestals( )
+{
+  fNPedestalEvents = 0;
+  fMinPeds = 500; 		// In engine, this is set in parameter file
+  fPedSum = new Int_t [fNelem];
+  fPedSum2 = new Int_t [fNelem];
+  fPedCount = new Int_t [fNelem];
+
+  fPed = new Double_t [fNelem];
+  fThresh = new Double_t [fNelem];
+  for(Int_t i=0;i<fNelem;i++) {
+    fPedSum[i] = 0;
+    fPedSum2[i] = 0;
+    fPedCount[i] = 0;
+  }
+
+}
+
+//_____________________________________________________________________________
+void THcCherenkov::AccumulatePedestals(TClonesArray* rawhits)
+{
+  // Extract data from the hit list, accumulating into arrays for
+  // calculating pedestals
+
+  Int_t nrawhits = rawhits->GetLast()+1;
+
+  Int_t ihit = 0;
+  while(ihit < nrawhits) {
+    THcCherenkovHit* hit = (THcCherenkovHit *) rawhits->At(ihit);
+
+    Int_t element = hit->fCounter - 1;
+    Int_t nadc = hit->fADC_pos;
+    if(nadc <= fPedLimit[element]) {
+      fPedSum[element] += nadc;
+      fPedSum2[element] += nadc*nadc;
+      fPedCount[element]++;
+      if(fPedCount[element] == fMinPeds/5) {
+	fPedLimit[element] = 100 + fPedSum[element]/fPedCount[element];
+      }
+    }
+    ihit++;
+  }
+
+  fNPedestalEvents++;
+
+  return;
+}
+
+//_____________________________________________________________________________
+void THcCherenkov::CalculatePedestals( )
+{
+  // Use the accumulated pedestal data to calculate pedestals
+  // Later add check to see if pedestals have drifted ("Danger Will Robinson!")
+  //  cout << "Plane: " << fPlaneNum << endl;
+  for(Int_t i=0; i<fNelem;i++) {
+    
+    // PMT tubes
+    fPed[i] = ((Double_t) fPedSum[i]) / TMath::Max(1, fPedCount[i]);
+    fThresh[i] = fPed[i] + 15;
+
+    // Just a copy for now, but allow the possibility that fXXXPedMean is set
+    // in a parameter file and only overwritten if there is a sufficient number of
+    // pedestal events.  (So that pedestals are sensible even if the pedestal events were
+    // not acquired.)
+    if(fMinPeds > 0) {
+      if(fPedCount[i] > fMinPeds) {
+	fPedMean[i] = fPed[i];
+      }
+    }
+  }
+  //  cout << " " << endl;
+  
+}
+
+//_____________________________________________________________________________
+Int_t THcCherenkov::GetCerIndex( Int_t nRegion, Int_t nValue ) {
+
+  return fCerNRegions * nValue + nRegion;
+}
+
+
+//_____________________________________________________________________________
+void THcCherenkov::Print( const Option_t* opt) const {
+  THaNonTrackingDetector::Print(opt);
+
+  // Print out the pedestals
+
+  cout << endl;
+  cout << "Cherenkov Pedestals" << endl;
+
+  // Ahmed
+  cout << "No.   ADC" << endl;
+  for(Int_t i=0; i<fNelem; i++){
+    cout << " " << i << "    " << fPed[i] << endl;
+  }
+
+  cout << endl;
+}
+
+//_____________________________________________________________________________
+Double_t THcCherenkov::GetCerNPE() {
+  
+  return fNPEsum;
+}
+
+ClassImp(THcCherenkov)
+////////////////////////////////////////////////////////////////////////////////
+ 
diff --git a/src/THcCherenkov.h b/src/THcCherenkov.h
new file mode 100644
index 0000000000000000000000000000000000000000..9d6eee02693bde6c49ffedf1b5baa0f86c6bb76a
--- /dev/null
+++ b/src/THcCherenkov.h
@@ -0,0 +1,94 @@
+#ifndef ROOT_THcCherenkov
+#define ROOT_THcCherenkov
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// Cherenkov                                                                 //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "TClonesArray.h"
+#include "THaNonTrackingDetector.h"
+#include "THcHitList.h"
+#include "THcCherenkovHit.h"
+
+class THcCherenkov : public THaNonTrackingDetector, public THcHitList {
+
+ public:
+  THcCherenkov( const char* name, const char* description = "",
+		THaApparatus* a = NULL );
+  virtual ~THcCherenkov();
+  
+  virtual void 	     Clear( Option_t* opt="" );
+  virtual Int_t      Decode( const THaEvData& );
+  virtual EStatus    Init( const TDatime& run_time );
+  void               InitArrays();
+  void               DeleteArrays();
+  virtual Int_t      ReadDatabase( const TDatime& date );
+  virtual Int_t      DefineVariables( EMode mode = kDefine );
+  virtual Int_t      CoarseProcess( TClonesArray& tracks );
+  virtual Int_t      FineProcess( TClonesArray& tracks );
+
+  virtual void AccumulatePedestals(TClonesArray* rawhits);
+  virtual void CalculatePedestals();
+
+  virtual Int_t      ApplyCorrections( void );
+
+  virtual void Print(const Option_t* opt) const;
+
+  Int_t GetCerIndex(Int_t nRegion, Int_t nValue);
+
+  //  Double_t GetCerNPE() { return fNPEsum;}
+  Double_t GetCerNPE();
+
+  THcCherenkov();  // for ROOT I/O		
+ protected:
+  Int_t         fAnalyzePedestals;
+
+  // Parameters
+  Double_t*     fGain;
+  Double_t*     fCerWidth;
+
+  // Event information
+  Int_t         fNhits;
+  Int_t*        fNPMT;            // [fNelem] Array of ADC amplitudes
+  Double_t*     fADC;             // [fNelem] Array of ADC amplitudes
+  Double_t*     fADC_P;           // [fNelem] Array of ADC amplitudes
+  Double_t*     fNPE;             // [fNelem] Array of ADC amplitudes
+  Double_t      fNPEsum;
+  Int_t         fNCherHit;
+
+  Double_t*        fCerRegionValue;
+  Double_t         fCerChi2Max;
+  Double_t         fCerBetaMin;
+  Double_t         fCerBetaMax;
+  Double_t         fCerETMin;
+  Double_t         fCerETMax;
+  Double_t         fCerMirrorZPos;
+  Int_t            fCerNRegions;
+  Int_t            fCerRegionsValueMax;
+  Int_t*           fCerTrackCounter;     // [fCerNRegions] Array of Cher regions
+  Int_t*           fCerFiredCounter;     // [fCerNRegions] Array of Cher regions
+  Double_t         fCerThresh;
+
+  // Hits
+  TClonesArray* fADCHits;
+
+  // Pedestals
+  Int_t         fNPedestalEvents;
+  Int_t         fMinPeds;
+  Int_t*        fPedSum;	  /* Accumulators for pedestals */
+  Int_t*        fPedSum2;
+  Int_t*        fPedLimit; 
+  Double_t*     fPedMean; 	  /* Can be supplied in parameters and then */ 
+  Int_t*        fPedCount; 
+  Double_t*     fPed;
+  Double_t*     fThresh;
+  
+  void Setup(const char* name, const char* description);
+  virtual void  InitializePedestals( );
+
+  ClassDef(THcCherenkov,0)        // Generic cherenkov class
+};
+
+#endif
diff --git a/src/THcCherenkovHit.cxx b/src/THcCherenkovHit.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..c946328351e36c814fe88dc672b120420ae0e5ec
--- /dev/null
+++ b/src/THcCherenkovHit.cxx
@@ -0,0 +1,19 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcCherenkovHit                                                           //
+//                                                                           //
+// Class representing a single raw hit for a pair of aerogel tubes           //
+//                                                                           //
+// Contains plane, counter and pos/neg adc                                   //
+//                                                                           //
+// Assumes Aerogel design where Aerogel PMT's are in pairs and only have     //
+// ADCs.                                                                     //
+//                                                                           //
+// Ahmed. First attempt. September 27 2013.                                  //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcCherenkovHit.h"
+
+//////////////////////////////////////////////////////////////////////////
+ClassImp(THcCherenkovHit)
diff --git a/src/THcCherenkovHit.h b/src/THcCherenkovHit.h
new file mode 100644
index 0000000000000000000000000000000000000000..b7dac6db4b9d9aa83e63e20669e3c76887f279f8
--- /dev/null
+++ b/src/THcCherenkovHit.h
@@ -0,0 +1,19 @@
+#ifndef ROOT_THcCherenkovHit
+#define ROOT_THcCherenkovHit
+
+#include "THcRawHodoHit.h"
+
+class THcCherenkovHit : public THcRawHodoHit {
+
+ public:
+  friend class THcCherenkov;
+ 
+ protected:
+
+ private:
+
+  ClassDef(THcCherenkovHit,0);	// Raw Cherenkov hit
+};
+
+#endif
+
diff --git a/src/THcDC.cxx b/src/THcDC.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..09ab985c4182268819df4a25fd4d64ad092aa154
--- /dev/null
+++ b/src/THcDC.cxx
@@ -0,0 +1,1128 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDC                                                              //
+//                                                                           //
+// Class for a generic hodoscope consisting of multiple                      //
+// planes with multiple paddles with phototubes on both ends.                //
+// This differs from Hall A scintillator class in that it is the whole       //
+// hodoscope array, not just one plane.                                      //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcDC.h"
+#include "THaEvData.h"
+#include "THaDetMap.h"
+#include "THcDetectorMap.h"
+#include "THcGlobals.h"
+#include "THaCutList.h"
+#include "THcParmList.h"
+#include "THcDCTrack.h"
+#include "VarDef.h"
+#include "VarType.h"
+#include "THaTrack.h"
+#include "TClonesArray.h"
+#include "TMath.h"
+#include "TVectorD.h"
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+
+using namespace std;
+
+//_____________________________________________________________________________
+THcDC::THcDC(
+ const char* name, const char* description,
+				  THaApparatus* apparatus ) :
+  THaTrackingDetector(name,description,apparatus)
+{
+  // Constructor
+
+  fNPlanes = 0;			// No planes until we make them
+
+  fXCenter = NULL;
+  fYCenter = NULL;
+  fMinHits = NULL;
+  fMaxHits = NULL;
+  fMinCombos = NULL;
+  fSpace_Point_Criterion = NULL;
+
+  fTdcWinMin = NULL;
+  fTdcWinMax = NULL;
+  fCentralTime = NULL;
+  fNWires = NULL;
+  fNChamber = NULL;
+  fWireOrder = NULL;
+  fDriftTimeSign = NULL;
+
+  fZPos = NULL;
+  fAlphaAngle = NULL;
+  fBetaAngle = NULL;
+  fGammaAngle = NULL;
+  fPitch = NULL;
+  fCentralWire = NULL;
+  fPlaneTimeZero = NULL;
+  fSigma = NULL;
+
+  // These should be set to zero (in a parameter file) in order to
+  // replicate historical ENGINE behavior
+  fFixLR = 1;
+  fFixPropagationCorrection = 1;
+  fProjectToChamber = 0;  // Use 1 for SOS chambers
+
+  fDCTracks = new TClonesArray( "THcDCTrack", 20 );
+
+  fNChamHits = 0;
+  fPlaneEvents = 0;
+}
+
+//_____________________________________________________________________________
+void THcDC::Setup(const char* name, const char* description)
+{
+
+  static const char* const here = "Setup";
+
+  THaApparatus *app = GetApparatus();
+  if(app) {
+    cout << app->GetName() << endl;
+    fPrefix[0]=tolower(app->GetName()[0]);
+    fPrefix[1]='\0';
+  } else {
+    cout << "No apparatus found" << endl;
+    fPrefix[0]='\0';
+  }
+
+  // For now, decide chamber style from the spectrometer name.
+  // Should override with a paramter
+  if(fPrefix[0]=='h') {
+    fHMSStyleChambers = 1;
+  } else {
+    fHMSStyleChambers = 0;
+  }
+
+  string planenamelist;
+  DBRequest list[]={
+    {"dc_num_planes",&fNPlanes, kInt},
+    {"dc_num_chambers",&fNChambers, kInt},
+    {"dc_tdc_time_per_channel",&fNSperChan, kDouble},
+    {"dc_wire_velocity",&fWireVelocity,kDouble},
+    {"dc_plane_names",&planenamelist, kString},
+    {0}
+  };
+
+  gHcParms->LoadParmValues((DBRequest*)&list,fPrefix);
+  cout << planenamelist << endl;
+  cout << "Drift Chambers: " <<  fNPlanes << " planes in " << fNChambers << " chambers" << endl;
+
+  vector<string> plane_names = vsplit(planenamelist);
+
+  if(plane_names.size() != (UInt_t) fNPlanes) {
+    cout << "ERROR: Number of planes " << fNPlanes << " doesn't agree with number of plane names " << plane_names.size() << endl;
+    // Should quit.  Is there an official way to quit?
+  }
+  fPlaneNames = new char* [fNPlanes];
+  for(Int_t i=0;i<fNPlanes;i++) {
+    fPlaneNames[i] = new char[plane_names[i].length()+1];
+    strcpy(fPlaneNames[i], plane_names[i].c_str());
+  }
+
+  char *desc = new char[strlen(description)+100];
+  char *desc1= new char[strlen(description)+100];
+  fPlanes.clear();
+
+  for(Int_t i=0;i<fNPlanes;i++) {
+    strcpy(desc, description);
+    strcat(desc, " Plane ");
+    strcat(desc, fPlaneNames[i]);
+
+    THcDriftChamberPlane* newplane = new THcDriftChamberPlane(fPlaneNames[i], desc, i+1, this);
+    if( !newplane or newplane->IsZombie() ) {
+      Error( Here(here), "Error creating Drift Chamber plane %s. Call expert.", name);
+      MakeZombie();
+      return;
+    }
+    fPlanes.push_back(newplane);
+    newplane->SetDebug(fDebug);
+    cout << "Created Drift Chamber Plane " << fPlaneNames[i] << ", " << desc << endl;
+
+  }
+
+  fChambers.clear();
+  for(UInt_t i=0;i<fNChambers;i++) {
+    sprintf(desc1,"Ch%d",i+1);
+
+    // Should construct a better chamber name
+    THcDriftChamber* newchamber = new THcDriftChamber(desc1, desc, i+1, this);
+    fChambers.push_back(newchamber);
+    cout << "Created Drift Chamber " << i+1 << ", " << desc1 << endl;
+    newchamber->SetHMSStyleFlag(fHMSStyleChambers); // Tell the chamber its style
+  }
+  delete [] desc;
+  delete [] desc1;
+}
+
+//_____________________________________________________________________________
+THcDC::THcDC( ) :
+  THaTrackingDetector()
+{
+  // Constructor
+}
+
+//_____________________________________________________________________________
+THaAnalysisObject::EStatus THcDC::Init( const TDatime& date )
+{
+  Setup(GetName(), GetTitle());	// Create the subdetectors here
+  EffInit();
+
+  // Should probably put this in ReadDatabase as we will know the
+  // maximum number of hits after setting up the detector map
+  InitHitList(fDetMap, "THcRawDCHit", 1000);
+
+  EStatus status;
+  // This triggers call of ReadDatabase and DefineVariables
+  if( (status = THaTrackingDetector::Init( date )) )
+    return fStatus=status;
+
+  // Initialize planes and add them to chambers
+  for(Int_t ip=0;ip<fNPlanes;ip++) {
+    if((status = fPlanes[ip]->Init( date ))) {
+      return fStatus=status;
+    } else {
+      Int_t chamber=fNChamber[ip];
+      fChambers[chamber-1]->AddPlane(fPlanes[ip]);
+    }
+  }
+  // Initialize chambers
+  for(UInt_t ic=0;ic<fNChambers;ic++) {
+    if((status = fChambers[ic]->Init ( date ))) {
+      return fStatus=status;
+    }
+  }
+  // Retrieve the fiting coefficients
+  fPlaneCoeffs = new Double_t* [fNPlanes];
+  for(Int_t ip=0; ip<fNPlanes;ip++) {
+    fPlaneCoeffs[ip] = fPlanes[ip]->GetPlaneCoef();
+  }
+
+  fResiduals = new Double_t [fNPlanes];
+
+  // Replace with what we need for Hall C
+  //  const DataDest tmp[NDEST] = {
+  //    { &fRTNhit, &fRANhit, fRT, fRT_c, fRA, fRA_p, fRA_c, fROff, fRPed, fRGain },
+  //    { &fLTNhit, &fLANhit, fLT, fLT_c, fLA, fLA_p, fLA_c, fLOff, fLPed, fLGain }
+  //  };
+  //  memcpy( fDataDest, tmp, NDEST*sizeof(DataDest) );
+
+  // Will need to determine which apparatus it belongs to and use the
+  // appropriate detector ID in the FillMap call
+  char EngineDID[4];
+
+  EngineDID[0] = toupper(GetApparatus()->GetName()[0]);
+  EngineDID[1] = 'D';
+  EngineDID[2] = 'C';
+  EngineDID[3] = '\0';
+  
+  if( gHcDetectorMap->FillMap(fDetMap, EngineDID) < 0 ) {
+    static const char* const here = "Init()";
+    Error( Here(here), "Error filling detectormap for %s.", 
+	     EngineDID);
+      return kInitError;
+  }
+
+  return fStatus = kOK;
+}
+
+//_____________________________________________________________________________
+Int_t THcDC::ReadDatabase( const TDatime& date )
+{
+  // Read this detector's parameters from the database file 'fi'.
+  // This function is called by THaDetectorBase::Init() once at the
+  // beginning of the analysis.
+  // 'date' contains the date/time of the run being analyzed.
+
+  //  static const char* const here = "ReadDatabase()";
+
+  // Read data from database 
+  // Pull values from the THcParmList instead of reading a database
+  // file like Hall A does.
+
+  // We will probably want to add some kind of method to gHcParms to allow
+  // bulk retrieval of parameters of interest.
+
+  // Will need to determine which spectrometer in order to construct
+  // the parameter names (e.g. hscin_1x_nr vs. sscin_1x_nr)
+
+  delete [] fXCenter;  fXCenter = new Double_t [fNChambers];
+  delete [] fYCenter;  fYCenter = new Double_t [fNChambers];
+  delete [] fMinHits;  fMinHits = new Int_t [fNChambers];
+  delete [] fMaxHits;  fMaxHits = new Int_t [fNChambers];
+  delete [] fMinCombos;  fMinCombos = new Int_t [fNChambers];
+  delete [] fSpace_Point_Criterion;  fSpace_Point_Criterion = new Double_t [fNChambers];
+
+  delete [] fTdcWinMin;  fTdcWinMin = new Int_t [fNPlanes];
+  delete [] fTdcWinMax;  fTdcWinMax = new Int_t [fNPlanes];
+  delete [] fCentralTime;  fCentralTime = new Double_t [fNPlanes];
+  delete [] fNWires;  fNWires = new Int_t [fNPlanes];
+  delete [] fNChamber;  fNChamber = new Int_t [fNPlanes]; // Which chamber is this plane
+  delete [] fWireOrder;  fWireOrder = new Int_t [fNPlanes]; // Wire readout order
+  delete [] fDriftTimeSign;  fDriftTimeSign = new Int_t [fNPlanes];
+
+  delete [] fZPos;  fZPos = new Double_t [fNPlanes];
+  delete [] fAlphaAngle;  fAlphaAngle = new Double_t [fNPlanes];
+  delete [] fBetaAngle;  fBetaAngle = new Double_t [fNPlanes];
+  delete [] fGammaAngle;  fGammaAngle = new Double_t [fNPlanes];
+  delete [] fPitch;  fPitch = new Double_t [fNPlanes];
+  delete [] fCentralWire;  fCentralWire = new Double_t [fNPlanes];
+  delete [] fPlaneTimeZero;  fPlaneTimeZero = new Double_t [fNPlanes];
+  delete [] fSigma;  fSigma = new Double_t [fNPlanes];
+
+  DBRequest list[]={
+    {"dc_tdc_time_per_channel",&fNSperChan, kDouble},
+    {"dc_wire_velocity",&fWireVelocity,kDouble},
+
+    {"dc_xcenter", fXCenter, kDouble, fNChambers},
+    {"dc_ycenter", fYCenter, kDouble, fNChambers},
+    {"min_hit", fMinHits, kInt, fNChambers},
+    {"max_pr_hits", fMaxHits, kInt, fNChambers},
+    {"min_combos", fMinCombos, kInt, fNChambers},
+    {"space_point_criterion", fSpace_Point_Criterion, kDouble, fNChambers},
+
+    {"dc_tdc_min_win", fTdcWinMin, kInt, (UInt_t)fNPlanes},
+    {"dc_tdc_max_win", fTdcWinMax, kInt, (UInt_t)fNPlanes},
+    {"dc_central_time", fCentralTime, kDouble, (UInt_t)fNPlanes},
+    {"dc_nrwire", fNWires, kInt, (UInt_t)fNPlanes},
+    {"dc_chamber_planes", fNChamber, kInt, (UInt_t)fNPlanes},
+    {"dc_wire_counting", fWireOrder, kInt, (UInt_t)fNPlanes},
+    {"dc_drifttime_sign", fDriftTimeSign, kInt, (UInt_t)fNPlanes},
+
+    {"dc_zpos", fZPos, kDouble, (UInt_t)fNPlanes},
+    {"dc_alpha_angle", fAlphaAngle, kDouble, (UInt_t)fNPlanes},
+    {"dc_beta_angle", fBetaAngle, kDouble, (UInt_t)fNPlanes},
+    {"dc_gamma_angle", fGammaAngle, kDouble, (UInt_t)fNPlanes},
+    {"dc_pitch", fPitch, kDouble, (UInt_t)fNPlanes},
+    {"dc_central_wire", fCentralWire, kDouble, (UInt_t)fNPlanes},
+    {"dc_plane_time_zero", fPlaneTimeZero, kDouble, (UInt_t)fNPlanes},
+    {"dc_sigma", fSigma, kDouble, (UInt_t)fNPlanes},
+    {"single_stub",&fSingleStub, kInt},
+    {"ntracks_max_fp", &fNTracksMaxFP, kInt},
+    {"xt_track_criterion", &fXtTrCriterion, kDouble},
+    {"yt_track_criterion", &fYtTrCriterion, kDouble},
+    {"xpt_track_criterion", &fXptTrCriterion, kDouble},
+    {"ypt_track_criterion", &fYptTrCriterion, kDouble},
+    {"dc_fix_lr", &fFixLR, kInt},
+    {"dc_fix_propcorr", &fFixPropagationCorrection, kInt},
+    {"debuglinkstubs", &fdebuglinkstubs, kInt},
+    {"debugprintrawdc", &fdebugprintrawdc, kInt},
+    {"debugprintdecodeddc", &fdebugprintdecodeddc, kInt},
+    {"debugflagpr", &fdebugflagpr, kInt},
+    {"debugflagstubs", &fdebugflagstubs, kInt},
+    {"debugtrackprint", &fdebugtrackprint , kInt},
+    {0}
+  };
+  gHcParms->LoadParmValues((DBRequest*)&list,fPrefix);
+  if(fNTracksMaxFP <= 0) fNTracksMaxFP = 10;
+  // if(fNTracksMaxFP > HNRACKS_MAX) fNTracksMaxFP = NHTRACKS_MAX;
+  cout << "Plane counts:";
+  for(Int_t i=0;i<fNPlanes;i++) {
+    cout << " " << fNWires[i];
+  }
+  cout << endl;
+
+  fIsInit = true;
+
+  return kOK;
+}
+
+//_____________________________________________________________________________
+Int_t THcDC::DefineVariables( EMode mode )
+{
+  // Initialize global variables and lookup table for decoder
+
+  if( mode == kDefine && fIsSetup ) return kOK;
+  fIsSetup = ( mode == kDefine );
+
+  // Register variables in global list
+
+  RVarDef vars[] = {
+    { "nhit", "Number of DC hits",  "fNhits" },
+    { "tnhit", "Number of good DC hits",  "fNthits" },
+    { "trawhit", "Number of true raw DC hits", "fN_True_RawHits" },
+    { "ntrack", "Number of Tracks", "fNDCTracks" },
+    { "nsp", "Number of Space Points", "fNSp" },
+    { "x", "X at focal plane", "fDCTracks.THcDCTrack.GetX()"},
+    { "y", "Y at focal plane", "fDCTracks.THcDCTrack.GetY()"},
+    { "xp", "XP at focal plane", "fDCTracks.THcDCTrack.GetXP()"},
+    { "yp", "YP at focal plane", "fDCTracks.THcDCTrack.GetYP()"},
+    { "residual", "Residuals", "fResiduals"},
+    { 0 }
+  };
+  return DefineVarsFromList( vars, mode );
+
+}
+
+//_____________________________________________________________________________
+THcDC::~THcDC()
+{
+  // Destructor. Remove variables from global list.
+
+  if( fIsSetup )
+    RemoveVariables();
+  if( fIsInit )
+    DeleteArrays();
+
+  // Delete the plane objects
+  for (vector<THcDriftChamberPlane*>::iterator ip = fPlanes.begin();
+       ip != fPlanes.end(); ++ip) delete *ip;
+  // Delete the chamber objects
+  for (vector<THcDriftChamber*>::iterator ip = fChambers.begin();
+       ip != fChambers.end(); ++ip) delete *ip;
+
+  delete fDCTracks;
+}
+
+//_____________________________________________________________________________
+void THcDC::DeleteArrays()
+{
+  // Delete member arrays. Used by destructor.
+
+  delete [] fXCenter;   fXCenter = NULL;
+  delete [] fYCenter;   fYCenter = NULL;
+  delete [] fMinHits;   fMinHits = NULL;
+  delete [] fMaxHits;   fMaxHits = NULL;
+  delete [] fMinCombos;   fMinCombos = NULL;
+  delete [] fSpace_Point_Criterion;   fSpace_Point_Criterion = NULL;
+
+  delete [] fTdcWinMin;   fTdcWinMin = NULL;
+  delete [] fTdcWinMax;   fTdcWinMax = NULL;
+  delete [] fCentralTime;   fCentralTime = NULL;
+  delete [] fNWires;   fNWires = NULL;
+  delete [] fNChamber;   fNChamber = NULL;
+  delete [] fWireOrder;   fWireOrder = NULL;
+  delete [] fDriftTimeSign;   fDriftTimeSign = NULL;
+
+  delete [] fZPos;   fZPos = NULL;
+  delete [] fAlphaAngle;   fAlphaAngle = NULL;
+  delete [] fBetaAngle;   fBetaAngle = NULL;
+  delete [] fGammaAngle;   fGammaAngle = NULL;
+  delete [] fPitch;   fPitch = NULL;
+  delete [] fCentralWire;   fCentralWire = NULL;
+  delete [] fPlaneTimeZero;   fPlaneTimeZero = NULL;
+  delete [] fSigma;   fSigma = NULL;
+
+  // Efficiency arrays
+  delete [] fNChamHits; fNChamHits = NULL;
+  delete [] fPlaneEvents; fPlaneEvents = NULL;
+
+}
+
+//_____________________________________________________________________________
+inline 
+void THcDC::ClearEvent()
+{
+  // Reset per-event data.
+  fNhits = 0;
+  fNthits = 0;
+  fN_True_RawHits=0;
+
+  for(UInt_t i=0;i<fNChambers;i++) {
+    fChambers[i]->Clear();
+  }
+
+  for(Int_t i=0;i<fNPlanes;i++) {
+    fResiduals[i] = 1000.0;
+  }
+  
+  //  fTrackProj->Clear();
+}
+
+//_____________________________________________________________________________
+Int_t THcDC::Decode( const THaEvData& evdata )
+{
+
+  ClearEvent();
+  Int_t num_event = evdata.GetEvNum();
+  if (fdebugprintrawdc ||fdebugprintdecodeddc || fdebuglinkstubs || fdebugtrackprint) cout << " event num = " << num_event << endl;
+  // Get the Hall C style hitlist (fRawHitList) for this event
+  fNhits = DecodeToHitList(evdata);
+
+  if(!gHaCuts->Result("Pedestal_event")) {
+    // Let each plane get its hits
+    Int_t nexthit = 0;
+    for(Int_t ip=0;ip<fNPlanes;ip++) {
+      nexthit = fPlanes[ip]->ProcessHits(fRawHitList, nexthit);
+      fN_True_RawHits += fPlanes[ip]->GetNRawhits();
+      
+    }
+
+    // Let each chamber get its hits
+    for(UInt_t ic=0;ic<fNChambers;ic++) {
+      fChambers[ic]->ProcessHits();
+      fNthits += fChambers[ic]->GetNHits();
+    }
+    // fRawHitList is TClones array of THcRawDCHit objects
+    Int_t counter=0;
+    if (fdebugprintrawdc) {
+      cout << " RAW_TOT_HITS = " <<  fNRawHits << endl;
+      cout << " Hit #  " << "Plane  " << " Wire " <<  " Raw TDC " << endl; 
+      for(UInt_t ihit = 0; ihit < fNRawHits ; ihit++) {
+	THcRawDCHit* hit = (THcRawDCHit *) fRawHitList->At(ihit);
+	for(UInt_t imhit = 0; imhit < hit->fNHits; imhit++) {
+	  counter++;
+	  cout << counter << "      " << hit->fPlane << "     " << hit->fCounter << "     " << hit->fTDC[imhit]	   << endl;
+	}
+      }
+      cout << endl;
+    }
+    Eff();			// Accumlate statistics
+  }
+  return fNhits;
+}
+
+//_____________________________________________________________________________
+Int_t THcDC::ApplyCorrections( void )
+{
+  return(0);
+}
+
+//_____________________________________________________________________________
+Int_t THcDC::CoarseTrack( TClonesArray& tracks )
+{
+  // Calculation of coordinates of particle track cross point with scint
+  // plane in the detector coordinate system. For this, parameters of track 
+  // reconstructed in THaVDC::CoarseTrack() are used.
+  //
+  // Apply corrections and reconstruct the complete hits.
+  //
+  //  static const Double_t sqrt2 = TMath::Sqrt(2.);
+  if (fdebugprintdecodeddc) {
+   for(UInt_t i=0;i<fNChambers;i++) {
+    fChambers[i]->PrintDecode();
+   }
+  }
+  for(UInt_t i=0;i<fNChambers;i++) {
+    fChambers[i]->FindSpacePoints();
+    fChambers[i]->CorrectHitTimes();
+    fChambers[i]->LeftRight();
+  }
+  if (fdebugflagpr) PrintSpacePoints();
+  if (fdebugflagstubs)  PrintStubs();
+  // Now link the stubs between chambers
+  LinkStubs();
+  if(fNDCTracks > 0) {
+    TrackFit();
+    // Copy tracks into podd tracks list
+    for(UInt_t itrack=0;itrack<fNDCTracks;itrack++) {
+      THaTrack* theTrack = NULL;
+      theTrack = AddTrack(tracks, 0.0, 0.0, 0.0, 0.0); // Leaving off trackID
+      // Should we add stubs with AddCluster?  Could we do this
+      // by having stubs inherit from cluster
+
+      THcDCTrack *tr = static_cast<THcDCTrack*>( fDCTracks->At(itrack));
+      theTrack->Set(tr->GetX(), tr->GetY(), tr->GetXP(), tr->GetYP());
+      theTrack->SetFlag((UInt_t) 0);
+      // Need to look at how engine does chi2 and track selection.  Reduced?
+      theTrack->SetChi2(tr->GetChisq(),tr->GetNFree());
+      // CalcFocalPlaneCoords.  Aren't our tracks already in focal plane coords
+      // We should have some kind of track ID so that the THaTrack can be
+      // associate back with the DC track
+    }
+  }
+
+  // Check for internal TrackFit errors
+  // Histogram the focal plane tracks
+  // Histograms made in h_fill_dc_fp_hist
+  //   The following are one hist per track
+  //      x_fp
+  //      y_fp
+  //      xp_fp
+  //      yp_fp
+  //      log chi2
+  //      reduced chi2
+  //      For each plane:
+  //         double residual
+  //         single residual
+  // Will need to make a track class that has all these things.   Need to
+  // move the structure out of THcDC into it's own class which should probably
+  // inherit from a podd track class
+
+  ApplyCorrections();
+
+  return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcDC::FineTrack( TClonesArray& tracks )
+{
+  // Reconstruct coordinates of particle track cross point with scintillator
+  // plane, and copy the data into the following local data structure:
+  //
+  // Units of measurements are meters.
+
+  // Calculation of coordinates of particle track cross point with scint
+  // plane in the detector coordinate system. For this, parameters of track 
+  // reconstructed in THaVDC::FineTrack() are used.
+
+  return 0;
+}
+//
+void THcDC::PrintSpacePoints()
+{
+  for(UInt_t ich=0;ich<fNChambers;ich++) {
+    printf("%s %2d %s %3d %s %3d \n"," chamber = ",fChambers[ich]->GetChamberNum()," number of hits = ",fChambers[ich]->GetNHits()," number of spacepoints = ",fChambers[ich]->GetNSpacePoints());
+    printf("%6s %-8s %-8s %6s %6s %10s \n","     "," "," ","Number","Number","Plane Wire");
+    printf("%6s %-8s %-8s %6s %6s %10s \n","Point","x","y"," hits ","combos"," for each hit");
+    TClonesArray* spacepointarray = fChambers[ich]->GetSpacePointsP();
+    for(Int_t isp=0;isp<fChambers[ich]->GetNSpacePoints();isp++) {
+	THcSpacePoint* sp = (THcSpacePoint*)(spacepointarray->At(isp));
+	printf("%5d %8.5f %8.5f %5d  %5d ",isp+1,sp->GetX(),sp->GetY(),sp->GetNHits(),sp->GetCombos()) ;
+	for (Int_t ii=0;ii<sp->GetNHits();ii++) {
+	  THcDCHit* hittemp = (THcDCHit*)(sp->GetHit(ii));
+	  printf("%3d %3d",hittemp->GetPlaneNum(),hittemp->GetWireNum());
+        }
+	    printf("\n");
+    }
+  }
+}
+//
+//
+void THcDC::PrintStubs()
+{
+  for(UInt_t ich=0;ich<fNChambers;ich++) {
+    printf("%s %3d \n"," Stub fit results Chamber = ",ich+1);
+    printf("%-5s %-18s %-18s %-18s %-18s\n","point","x_t","y_t","xp_t","yp_t");
+    printf("%-5s %-18s %-18s %-18s %-18s\n","     ","[cm]","[cm]","[cm]","[cm]");
+    TClonesArray* spacepointarray = fChambers[ich]->GetSpacePointsP();
+    for(Int_t isp=0;isp<fChambers[ich]->GetNSpacePoints();isp++) {
+	THcSpacePoint* sp = (THcSpacePoint*)(spacepointarray->At(isp));
+	    Double_t *spstubt=sp->GetStubP();
+	    printf("%-5d % 15.10e % 15.10e % 15.10e % 15.10e \n",isp+1,spstubt[0],spstubt[1],spstubt[2],spstubt[3]);
+    }
+  }
+}
+//
+//_____________________________________________________________________________
+void THcDC::LinkStubs()
+{
+  //     The logic is
+  //                  0) Put all space points in a single list
+  //                  1) loop over all space points as seeds  isp1
+  //                  2) Check if this space point is all ready in a track
+  //                  3) loop over all succeeding space pointss   isp2
+  //                  4) check if there is a track-criterion match
+  //                       either add to existing track
+  //                       or if there is another point in same chamber
+  //                          make a copy containing isp2 rather than 
+  //                            other point in same chamber
+  //                  5) If hsingle_stub is set, make a track of all single
+  //                     stubs.
+
+  std::vector<THcSpacePoint*> fSp;
+  fNSp=0;
+  fSp.clear();
+  fSp.reserve(10);
+  // Make a vector of pointers to the SpacePoints
+  for(UInt_t ich=0;ich<fNChambers;ich++) {
+    Int_t nchamber=fChambers[ich]->GetChamberNum();
+    TClonesArray* spacepointarray = fChambers[ich]->GetSpacePointsP();
+    for(Int_t isp=0;isp<fChambers[ich]->GetNSpacePoints();isp++) {
+      fSp.push_back(static_cast<THcSpacePoint*>(spacepointarray->At(isp)));
+      fSp[fNSp]->fNChamber = nchamber;
+      fNSp++;
+    }
+  }
+  fNDCTracks=0;		// Number of Focal Plane tracks found
+  fDCTracks->Clear("C");
+  Double_t stubminx = 999999;
+  Double_t stubminy = 999999;
+  Double_t stubminxp = 999999;
+  Double_t stubminyp = 999999;
+  Int_t stub_tracks[MAXTRACKS];
+  if(!fSingleStub) {
+    for(Int_t isp1=0;isp1<fNSp-1;isp1++) { // isp1 is index/id in total list of space points
+      THcSpacePoint* sp1 = fSp[isp1];
+      Int_t sptracks=0;
+      // Now make sure this sp is not already used in a sp.
+      // Could this be done by having a sp point to the track it is in?
+      Int_t tryflag=1;
+      for(UInt_t itrack=0;itrack<fNDCTracks;itrack++) {
+	THcDCTrack *theDCTrack = static_cast<THcDCTrack*>( fDCTracks->At(itrack));
+	for(Int_t isp=0;isp<theDCTrack->GetNSpacePoints();isp++) {
+	  // isp is index into list of space points attached to theDCTrack
+	  if(theDCTrack->GetSpacePoint(isp) == sp1) {
+	    tryflag=0;
+	  }
+	}
+      }
+      if(tryflag) { // SP not already part of a track
+	Int_t newtrack=1;
+	for(Int_t isp2=isp1+1;isp2<fNSp;isp2++) {
+	  THcSpacePoint* sp2=fSp[isp2];
+	  if(sp1->fNChamber!=sp2->fNChamber) {
+	    Double_t *spstub1=sp1->GetStubP();
+	    Double_t *spstub2=sp2->GetStubP();
+	    Double_t dposx = spstub1[0] - spstub2[0];
+	    Double_t dposy;
+	    if(fProjectToChamber) { // From SOS s_link_stubs
+	      // Since single chamber resolution is ~50mr, and the maximum y`
+	      // angle is about 30mr, use differenece between y AT CHAMBERS, rather
+	      // than at focal plane.  (Project back to chamber, to take out y' uncertainty)
+	      // (Should this be done for SHMS and HMS too?)
+	      Double_t y1=spstub1[1]+fChambers[sp1->fNChamber]->GetZPos()*spstub1[3];
+	      Double_t y2=spstub2[1]+fChambers[sp2->fNChamber]->GetZPos()*spstub2[3];
+	      dposy = y1-y2;
+	    } else {
+	      dposy = spstub1[1] - spstub2[1];
+	    }
+	    Double_t dposxp = spstub1[2] - spstub2[2];
+	    Double_t dposyp = spstub1[3] - spstub2[3];
+	      
+	    // What is the point of saving these stubmin values.  They
+	    // Don't seem to be used anywhere except that they can be
+	    // printed out if hbypass_track_eff_files is zero.
+	    if(TMath::Abs(dposx)<TMath::Abs(stubminx)) stubminx = dposx;
+	    if(TMath::Abs(dposy)<TMath::Abs(stubminy)) stubminy = dposy;
+	    if(TMath::Abs(dposxp)<TMath::Abs(stubminxp)) stubminxp = dposxp;
+	    if(TMath::Abs(dposyp)<TMath::Abs(stubminyp)) stubminyp = dposyp;
+	      
+	    // if hbypass_track_eff_files == 0 then
+	    // Print out each stubminX that is less that its criterion
+
+	    if((TMath::Abs(dposx) < fXtTrCriterion)
+	       && (TMath::Abs(dposy) < fYtTrCriterion)
+	       && (TMath::Abs(dposxp) < fXptTrCriterion)
+	       && (TMath::Abs(dposyp) < fYptTrCriterion)) {
+	      if(newtrack) {
+		assert(sptracks==0);
+		//stubtest=1;  Used in h_track_tests.f
+		// Make a new track if there are not to many
+		if(fNDCTracks < MAXTRACKS) {
+		  sptracks=0; // Number of tracks with this seed
+		  stub_tracks[sptracks++] = fNDCTracks;
+		  THcDCTrack *theDCTrack = new( (*fDCTracks)[fNDCTracks++]) THcDCTrack(fNPlanes);
+		  theDCTrack->AddSpacePoint(sp1);
+		  theDCTrack->AddSpacePoint(sp2);
+		  // Now save the X, Y and XP for the two stubs
+		  // in arrays hx_sp1, hy_sp1, hy_sp1, ... hxp_sp2
+		  // Why not also YP?
+		  // Skip for here.  May be a diagnostic thing
+		  newtrack = 0; // Make no more tracks in this loop
+		  // (But could replace a SP?)
+		} else {
+                  if (fHMSStyleChambers) {
+		  fNDCTracks=0;
+		  return;
+                  }
+		}
+	      } else {
+		// Check if there is another space point in the same chamber
+		for(Int_t itrack=0;itrack<sptracks;itrack++) {
+		  Int_t track=stub_tracks[itrack];
+		  THcDCTrack *theDCTrack = static_cast<THcDCTrack*>( fDCTracks->At(track));
+
+		  Int_t spoint=-1;
+		  Int_t duppoint=0;
+		  for(Int_t isp=0;isp<theDCTrack->GetNSpacePoints();isp++) {
+		    // isp is index of space points in theDCTrack
+		    if(sp2->fNChamber ==
+		       theDCTrack->GetSpacePoint(isp)->fNChamber) {
+		      spoint=isp;
+		    }
+		    if(sp2==theDCTrack->GetSpacePoint(isp)) {
+		      duppoint=1;
+		    }
+		  } // End loop over sp in tracks with isp1
+		    // If there is no other space point in this chamber
+		    // add this space point to current track(2)
+		  if(!duppoint) {
+		    if(spoint<0) {
+		      theDCTrack->AddSpacePoint(sp2);
+		    } else {
+		      // If there is another point in the same chamber
+		      // in this track create a new track with all the
+		      // same space points except spoint
+ 		      if(fNDCTracks < MAXTRACKS) {
+			stub_tracks[sptracks++] = fNDCTracks;
+			THcDCTrack *newDCTrack = new( (*fDCTracks)[fNDCTracks++]) THcDCTrack(fNPlanes);
+			for(Int_t isp=0;isp<theDCTrack->GetNSpacePoints();isp++) {
+			  if(isp!=spoint) {
+			    newDCTrack->AddSpacePoint(theDCTrack->GetSpacePoint(isp));
+			  } else {
+			    newDCTrack->AddSpacePoint(sp2);
+			  } // End check for dup on copy
+			} // End copy of track
+		      } else {
+			if (fHMSStyleChambers) {
+			  if (fdebuglinkstubs) cout << "EPIC FAIL 2:  Too many tracks found in THcDC::LinkStubs maxtracks = " << MAXTRACKS << endl;
+                          fNDCTracks=0;
+                  	  return; // Max # of allowed tracks
+                        }
+		      }
+		    } // end if on same chamber
+		  } // end if on duplicate point
+		} // end for over tracks with isp1
+	      }
+	    }
+	  } // end test on same chamber
+	} // end isp2 loop over new space points
+      } // end test on tryflag
+    } // end isp1 outer loop over space points
+    //
+  //
+   } else { // Make track out of each single space point
+    for(Int_t isp=0;isp<fNSp;isp++) {
+      if(fNDCTracks<MAXTRACKS) {
+	// Need some constructed t thingy
+	THcDCTrack *newDCTrack = new( (*fDCTracks)[fNDCTracks++]) THcDCTrack(fNPlanes);
+	newDCTrack->AddSpacePoint(fSp[isp]);
+      } else {
+	if (fdebuglinkstubs) cout << "EPIC FAIL 3:  Too many tracks found in THcDC::LinkStubs" << endl;
+	fNDCTracks=0;
+	// Do something here to fail this event
+	return; // Max # of allowed tracks
+      }
+    }
+  }
+  ///
+  if (fdebuglinkstubs) { 
+     cout << " Number of tracks from link stubs = " << fNDCTracks << endl;
+     printf("%s %s \n","Track","Plane Wire ");
+     for (UInt_t itrack=0;itrack<fNDCTracks;itrack++) {
+       THcDCTrack *tempTrack = (THcDCTrack*)( fDCTracks->At(itrack));
+       printf("%-5d  ",itrack+1);
+        for (Int_t ihit=0;ihit<tempTrack->GetNHits();ihit++) {
+       	THcDCHit* hit=(THcDCHit*)(tempTrack->GetHit(ihit));
+       	printf("%3d %3d",hit->GetPlaneNum(),hit->GetWireNum());
+       }
+	printf("\n");
+    }
+  }
+}
+
+//_____________________________________________________________________________
+void THcDC::TrackFit()
+{
+  // Primary track fitting routine
+
+  // Number of ray parameters in focal plane.
+  const Int_t raycoeffmap[]={4,5,2,3};
+
+  // EJB_Note:  Why is this here?  It does not appear to be used anywhere ... commenting out for now.
+  //
+  //// Initialize residuals
+  //// Need to make these member variables so they can be histogrammed
+  //// Probably an array of vectors.
+  //Double_t double_resolution[fNPlanes][fNDCTracks];
+  //Double_t single_resolution[fNPlanes][fNDCTracks];
+  //Double_t double_res[fNPlanes]; // For the good track
+  //
+  // for(Int_t ip=0;ip<fNPlanes;ip++) {
+  //  double_res[ip] = 1000.0;
+  //  for(Int_t itrack=0;itrack<fNDCTracks;itrack++) {
+  //    double_resolution[ip][itrack] = 1000.0;
+  //    single_resolution[ip][itrack] = 1000.0;
+  //  }
+  // }
+  
+  Double_t dummychi2 = 1.0E4;
+
+  for(UInt_t itrack=0;itrack<fNDCTracks;itrack++) {
+    //    Double_t chi2 = dummychi2;
+    //    Int_t htrack_fit_num = itrack;
+    THcDCTrack *theDCTrack = static_cast<THcDCTrack*>( fDCTracks->At(itrack));
+
+    Double_t coords[theDCTrack->GetNHits()];
+    Int_t planes[theDCTrack->GetNHits()];
+    for(Int_t ihit=0;ihit < theDCTrack->GetNHits();ihit++) {
+      THcDCHit* hit=theDCTrack->GetHit(ihit);
+      planes[ihit]=hit->GetPlaneNum()-1;
+      if(fFixLR) {
+	if(fFixPropagationCorrection) {
+	  coords[ihit] = hit->GetPos()
+	    + theDCTrack->GetHitLR(ihit)*theDCTrack->GetHitDist(ihit);
+	} else {
+	  coords[ihit] = hit->GetPos()
+	    + theDCTrack->GetHitLR(ihit)*hit->GetDist();
+	}
+      } else {
+	if(fFixPropagationCorrection) {
+	  coords[ihit] = hit->GetPos()
+	    + hit->GetLR()*theDCTrack->GetHitDist(ihit);
+	} else {
+	  coords[ihit] = hit->GetCoord();
+	}
+      }
+    }
+
+    theDCTrack->SetNFree(theDCTrack->GetNHits() - NUM_FPRAY);
+    Double_t chi2 = dummychi2;
+    if(theDCTrack->GetNFree() > 0) {
+      TVectorD TT(NUM_FPRAY);
+      TMatrixD AA(NUM_FPRAY,NUM_FPRAY);
+      for(Int_t irayp=0;irayp<NUM_FPRAY;irayp++) {
+	TT[irayp] = 0.0;
+	for(Int_t ihit=0;ihit < theDCTrack->GetNHits();ihit++) {
+	  TT[irayp] += (coords[ihit]*
+			fPlaneCoeffs[planes[ihit]][raycoeffmap[irayp]])
+	    /pow(fSigma[planes[ihit]],2);
+	}
+      }
+      for(Int_t irayp=0;irayp<NUM_FPRAY;irayp++) {
+	for(Int_t jrayp=0;jrayp<NUM_FPRAY;jrayp++) {
+	  AA[irayp][jrayp] = 0.0;
+	  if(jrayp<irayp) { // Symmetric
+	    AA[irayp][jrayp] = AA[jrayp][irayp];
+	  } else {
+	    for(Int_t ihit=0;ihit < theDCTrack->GetNHits();ihit++) {
+	      AA[irayp][jrayp] += fPlaneCoeffs[planes[ihit]][raycoeffmap[irayp]]*
+		fPlaneCoeffs[planes[ihit]][raycoeffmap[jrayp]]/
+		pow(fSigma[planes[ihit]],2);
+	    }
+	  }
+	}
+      }
+      
+      // Solve 4x4 equations
+      TVectorD dray(NUM_FPRAY);
+      // Should check that it is invertable
+      AA.Invert();
+      dray = AA*TT;
+      //      cout << "DRAY: " << dray[0] << " "<< dray[1] << " "<< dray[2] << " "<< dray[3] << " "  << endl;
+      //      if(bad_determinant) {
+      //	dray[0] = dray[1] = 10000.; dray[2] = dray[3] = 2.0;
+      //      }
+      // Calculate hit coordinate for each plane for chi2 and efficiency
+      // calculations
+
+      // Make sure fCoords, fResiduals, and fDoubleResiduals are clear
+      for(Int_t iplane=0;iplane < fNPlanes; iplane++) {
+	Double_t coord=0.0;
+	for(Int_t ir=0;ir<NUM_FPRAY;ir++) {
+	  coord += fPlaneCoeffs[iplane][raycoeffmap[ir]]*dray[ir];
+	}
+	theDCTrack->SetCoord(iplane,coord);
+      }
+      // Compute Chi2 and residuals
+      chi2 = 0.0;
+      for(Int_t ihit=0;ihit < theDCTrack->GetNHits();ihit++) {
+	Double_t residual = coords[ihit] - theDCTrack->GetCoord(planes[ihit]);
+	theDCTrack->SetResidual(planes[ihit], residual);
+	chi2 += pow(residual/fSigma[planes[ihit]],2);
+      }
+      theDCTrack->SetVector(dray[0], dray[1], 0.0, dray[2], dray[3]);
+    }
+    theDCTrack->SetChisq(chi2);
+  }
+
+  // Calculate residuals for each chamber if in single stub mode
+  // and there was a track found in each chamber
+  // Specific for two chambers.  Can/should it be generalized?
+
+  if(fSingleStub != 0) {
+    if(fNDCTracks == 2) {
+      THcDCTrack *theDCTrack1 = static_cast<THcDCTrack*>( fDCTracks->At(0));
+      THcDCTrack *theDCTrack2 = static_cast<THcDCTrack*>( fDCTracks->At(1));
+      //      Int_t itrack=0;
+      Int_t ihit=0;
+      THcDCHit* hit=theDCTrack1->GetHit(ihit);
+      Int_t plane=hit->GetPlaneNum()-1;
+      Int_t chamber=fNChamber[plane];
+      if(chamber==1) {
+	//	itrack=1;
+	hit=theDCTrack2->GetHit(ihit);
+	plane=hit->GetPlaneNum()-1;
+	chamber=fNChamber[plane];
+	if(chamber==2) {
+	  Double_t ray1[4];
+	  Double_t ray2[4];
+	  theDCTrack1->GetRay(ray1);
+	  theDCTrack2->GetRay(ray2);
+	  //	  itrack = 1;
+	  // Loop over hits in second chamber
+	  for(Int_t ihit=0;ihit < theDCTrack2->GetNHits();ihit++) {
+	    // Calculate residual in second chamber from first chamber track
+	    THcDCHit* hit=theDCTrack2->GetHit(ihit);
+	    Int_t plane=hit->GetPlaneNum()-1;
+	    Double_t pos = DpsiFun(ray1,plane);
+	    Double_t coord;
+	    if(fFixLR) {
+	      if(fFixPropagationCorrection) {
+		coord = hit->GetPos()
+		  + theDCTrack2->GetHitLR(ihit)*theDCTrack2->GetHitDist(ihit);
+	      } else {
+		coord = hit->GetPos()
+		  + theDCTrack2->GetHitLR(ihit)*hit->GetDist();
+	      }
+	    } else {
+	      if(fFixPropagationCorrection) {
+		coord = hit->GetPos()
+		  + hit->GetLR()*theDCTrack2->GetHitDist(ihit);
+	      } else {
+		coord = hit->GetCoord();
+	      }
+	    }
+	    theDCTrack1->SetDoubleResidual(plane,coord - pos);
+	    //  hdc_dbl_res(pln) = hdc_double_residual(1,pln)  for hists
+	  }
+	  //	  itrack=0;
+	  // Loop over hits in first chamber
+	  for(Int_t ihit=0;ihit < theDCTrack1->GetNHits();ihit++) {
+	    // Calculate residual in first chamber from second chamber track
+	    THcDCHit* hit=theDCTrack1->GetHit(ihit);
+	    Int_t plane=hit->GetPlaneNum()-1;
+	    Double_t pos = DpsiFun(ray1,plane);
+	    Double_t coord;
+	    if(fFixLR) {
+	      if(fFixPropagationCorrection) {
+		coord = hit->GetPos()
+		  + theDCTrack1->GetHitLR(ihit)*theDCTrack1->GetHitDist(ihit);
+	      } else {
+		coord = hit->GetPos()
+		  + theDCTrack1->GetHitLR(ihit)*hit->GetDist();
+	      }
+	    } else {
+	      if(fFixPropagationCorrection) {
+		coord = hit->GetPos()
+		  + hit->GetLR()*theDCTrack1->GetHitDist(ihit);
+	      } else {
+		coord = hit->GetCoord();
+	      }
+	    }
+	    theDCTrack2->SetDoubleResidual(plane,coord - pos);
+	    //  hdc_dbl_res(pln) = hdc_double_residual(1,pln)  for hists
+	  }
+	}
+      }
+    }
+  }
+  if(fNDCTracks>0) {
+    for(Int_t ip=0;ip<fNPlanes;ip++) {
+      THcDCTrack *theDCTrack = static_cast<THcDCTrack*>( fDCTracks->At(0));
+      fResiduals[ip] = theDCTrack->GetResidual(ip);
+    }
+  }
+  //
+      if (fdebugtrackprint) {
+        printf("%5s %-14s %-14s %-14s %-14s  %-10s %-10s \n","Track","x_t","y_t","xp_t","yp_t","chi2","DOF");
+        printf("%5s %-14s %-14s %-14s %-14s  %-10s %-10s \n","     ","[cm]","[cm]","[rad]","[rad]"," "," ");
+	for(UInt_t itr=0;itr < fNDCTracks;itr++) {
+        THcDCTrack *theDCTrack = static_cast<THcDCTrack*>( fDCTracks->At(itr));
+	printf("%-5d %14.6e %14.6e %14.6e %14.6e %10.3e %3d \n", itr+1,theDCTrack->GetX(),theDCTrack->GetY(),theDCTrack->GetXP(),theDCTrack->GetYP(),theDCTrack->GetChisq(),theDCTrack->GetNFree());
+        }
+	for(UInt_t itr=0;itr < fNDCTracks;itr++) {
+	  printf("%s %5d \n","Hit info for track number = ",itr+1);
+          printf("%5s %-15s %-15s %-15s \n","Plane","WIRE_COORD","Fit postiion","Residual");
+         THcDCTrack *theDCTrack = static_cast<THcDCTrack*>( fDCTracks->At(itr));
+	 for(Int_t ihit=0;ihit < theDCTrack->GetNHits();ihit++) {
+	  THcDCHit* hit=theDCTrack->GetHit(ihit);
+	  Int_t plane=hit->GetPlaneNum()-1;
+	  Double_t coords_temp;
+      if(fFixLR) {
+	if(fFixPropagationCorrection) {
+	  coords_temp = hit->GetPos()
+	    + theDCTrack->GetHitLR(ihit)*theDCTrack->GetHitDist(ihit);
+	} else {
+	  coords_temp = hit->GetPos()
+	    + theDCTrack->GetHitLR(ihit)*hit->GetDist();
+	}
+      } else {
+	if(fFixPropagationCorrection) {
+	  coords_temp = hit->GetPos()
+	    + hit->GetLR()*theDCTrack->GetHitDist(ihit);
+	} else {
+	  coords_temp = hit->GetCoord();
+	}
+      }
+      printf("%-5d %15.7e %15.7e %15.7e \n",plane+1,coords_temp,theDCTrack->GetCoord(plane),theDCTrack->GetResidual(plane));
+	 }
+        }
+      }
+
+  //
+}
+Double_t THcDC::DpsiFun(Double_t ray[4], Int_t plane)
+{
+  /*
+    this function calculates the psi coordinate of the intersection
+    of a ray (defined by ray) with a hms wire chamber plane. the geometry
+    of the plane is contained in the coeff array calculated in the
+    array hplane_coeff
+    Note it is call by MINUIT via H_FCNCHISQ and so uses double precision
+    variables
+
+    the ray is defined by
+    x = (z-zt)*tan(xp) + xt
+    y = (z-zt)*tan(yp) + yt
+     at some fixed value of zt*
+    ray(1) = xt
+    ray(2) = yt
+    ray(3) = tan(xp)
+    ray(4) = tan(yp)
+  */
+
+  Double_t infinity = 1.0E+20;
+  Double_t cinfinity = 1/infinity;
+  Double_t DpsiFun = 
+    ray[2]*ray[1]*fPlaneCoeffs[plane][0] +
+    ray[3]*ray[0]*fPlaneCoeffs[plane][1] +
+    ray[2]*fPlaneCoeffs[plane][2] +
+    ray[3]*fPlaneCoeffs[plane][3] +
+    ray[0]*fPlaneCoeffs[plane][4] +
+    ray[1]*fPlaneCoeffs[plane][5];
+  Double_t denom = ray[2]*fPlaneCoeffs[plane][6]
+    + ray[3]*fPlaneCoeffs[plane][7]
+    + fPlaneCoeffs[plane][8];
+  if(TMath::Abs(denom) < cinfinity) {
+    DpsiFun = infinity;
+  } else { 
+    DpsiFun = DpsiFun/denom;
+  }
+  return(DpsiFun);
+}	    
+
+//_____________________________________________________________________________
+Int_t THcDC::End(THaRunBase* run)
+{
+  //  EffCalc();
+  return 0;
+}
+
+//_____________________________________________________________________________
+void THcDC::EffInit()
+{
+  // Create, and initialize counters used to calculate
+  // efficiencies.  Register the counters in gHcParms so that the
+  // variables can be used in end of run reports.
+
+  delete [] fNChamHits; fNChamHits = new Int_t [fNChambers];
+  delete [] fPlaneEvents; fPlaneEvents = new Int_t [fNPlanes];
+  
+  fTotEvents = 0;
+  for(UInt_t i=0;i<fNChambers;i++) {
+    fNChamHits[i] = 0;
+  }
+  for(Int_t i=0;i<fNPlanes;i++) {
+    fPlaneEvents[i] = 0;
+  }
+  gHcParms->Define(Form("%sdc_tot_events",fPrefix),"Total DC Events",fTotEvents);
+  gHcParms->Define(Form("%sdc_cham_hits[%d]",fPrefix,fNChambers),"N events with hits per chamber",*fNChamHits);
+  gHcParms->Define(Form("%sdc_events[%d]",fPrefix,fNPlanes),"N events with hits per plane",*fPlaneEvents);
+}
+
+//_____________________________________________________________________________
+void THcDC::Eff()
+{
+  // Accumulate statistics for efficiency calculations
+
+  fTotEvents++;
+  for(UInt_t i=0;i<fNChambers;i++) {
+    if(fChambers[i]->GetNHits()>0) fNChamHits[i]++;
+  }
+  for(Int_t i=0;i<fNPlanes;i++) {
+    if(fPlanes[i]->GetNHits() > 0) fPlaneEvents[i]++;
+  }
+  return;
+}
+
+ClassImp(THcDC)
+////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcDC.h b/src/THcDC.h
new file mode 100644
index 0000000000000000000000000000000000000000..71bd4963ff9de5849de4081579ed0d7bb79ff54b
--- /dev/null
+++ b/src/THcDC.h
@@ -0,0 +1,186 @@
+#ifndef ROOT_THcDC
+#define ROOT_THcDC
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDC                                                           //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THaTrackingDetector.h"
+#include "THcHitList.h"
+#include "THcRawDCHit.h"
+#include "THcSpacePoint.h"
+#include "THcDriftChamberPlane.h"
+#include "THcDriftChamber.h"
+#include "TMath.h"
+
+#define NUM_FPRAY 4
+
+//class THaScCalib;
+class TClonesArray;
+
+class THcDC : public THaTrackingDetector, public THcHitList {
+
+public:
+  THcDC( const char* name, const char* description = "",
+		   THaApparatus* a = NULL );
+  virtual ~THcDC();
+
+  virtual Int_t      Decode( const THaEvData& );
+  virtual EStatus    Init( const TDatime& run_time );
+  virtual Int_t      CoarseTrack( TClonesArray& tracks );
+  virtual Int_t      FineTrack( TClonesArray& tracks );
+  
+  virtual Int_t      ApplyCorrections( void );
+
+  //  Int_t GetNHits() const { return fNhit; }
+  
+  //  Int_t GetNTracks() const { return fNDCTracks; }
+  //  const TClonesArray* GetTrackHits() const { return fTrackProj; }
+
+  Int_t GetNWires(Int_t plane) const { return fNWires[plane-1];}
+  Int_t GetNChamber(Int_t plane) const { return fNChamber[plane-1];}
+  Int_t GetWireOrder(Int_t plane) const { return fWireOrder[plane-1];}
+  Double_t GetPitch(Int_t plane) const { return fPitch[plane-1];}
+  Double_t GetCentralWire(Int_t plane) const { return fCentralWire[plane-1];}
+  Int_t GetTdcWinMin(Int_t plane) const { return fTdcWinMin[plane-1];}
+  Int_t GetTdcWinMax(Int_t plane) const { return fTdcWinMax[plane-1];}
+
+  Double_t GetZPos(Int_t plane) const { return fZPos[plane-1];}
+  Double_t GetAlphaAngle(Int_t plane) const { return fAlphaAngle[plane-1];}
+  Double_t GetBetaAngle(Int_t plane) const { return fBetaAngle[plane-1];}
+  Double_t GetGammaAngle(Int_t plane) const { return fGammaAngle[plane-1];}
+
+  Int_t GetMinHits(Int_t chamber) const { return fMinHits[chamber-1];}
+  Int_t GetMaxHits(Int_t chamber) const { return fMaxHits[chamber-1];}
+  Int_t GetMinCombos(Int_t chamber) const { return fMinCombos[chamber-1];}
+  Double_t GetSpacePointCriterion(Int_t chamber) const { return fSpace_Point_Criterion[chamber-1];}
+  Double_t GetCentralTime(Int_t plane) const { return fCentralTime[plane-1];}
+  Int_t GetDriftTimeSign(Int_t plane) const { return fDriftTimeSign[plane-1];}
+
+  Double_t GetPlaneTimeZero(Int_t plane) const { return fPlaneTimeZero[plane-1];}
+  Double_t GetSigma(Int_t plane) const { return fSigma[plane-1];}
+  Int_t GetFixPropagationCorrectionFlag() const {return fFixPropagationCorrection;}
+
+  Double_t GetNSperChan() const { return fNSperChan;}
+
+  Double_t GetCenter(Int_t plane) const {
+    Int_t chamber = GetNChamber(plane)-1;
+    return
+      fXCenter[chamber]*sin(fAlphaAngle[plane-1]) +
+      fYCenter[chamber]*cos(fAlphaAngle[plane-1]);
+  }
+  //  friend class THaScCalib;
+
+  THcDC();  // for ROOT I/O
+protected:
+  Int_t fdebuglinkstubs;
+  Int_t fdebugprintrawdc;
+  Int_t fdebugflagpr;
+  Int_t fdebugflagstubs;
+  Int_t fdebugtrackprint;
+  Int_t fdebugprintdecodeddc;
+  Int_t fHMSStyleChambers;
+
+  UInt_t fNDCTracks;
+  TClonesArray* fDCTracks;     // Tracks found from stubs (THcDCTrack obj)
+  // Calibration
+
+  // Hall C Parameters
+  char fPrefix[2];
+  Int_t fNPlanes;              // Total number of DC planes
+  char** fPlaneNames;
+  UInt_t fNChambers;
+  Int_t fFixLR;			// If 1, allow a given hit to have different LR
+                                // for different space points
+  Int_t fFixPropagationCorrection; // If 1, don't reapply (and accumulate) the
+                                // propagation along the wire correction for
+                                // each space point a hit occurs in.  Keep a
+                                // separate correction for each space point.
+  Int_t fProjectToChamber;	// If 1, project y position each stub back to it's own
+                                // chamber before comparing y positions in LinkStubs
+                                // Was used for SOS in ENGINE.
+
+  // Per-event data
+  Int_t fNhits;
+  Int_t fNthits;
+  Int_t fN_True_RawHits;
+  Int_t fNSp;                   // Number of space points
+  Double_t* fResiduals;         //[fNPlanes] Array of residuals
+
+  Double_t fNSperChan;		/* TDC bin size */
+  Double_t fWireVelocity;
+  Int_t fSingleStub;		/* If 1, single stubs make tracks */
+  Int_t fNTracksMaxFP;
+  Double_t fXtTrCriterion;
+  Double_t fYtTrCriterion;
+  Double_t fXptTrCriterion;
+  Double_t fYptTrCriterion;
+
+  // Each of these will be dimensioned with the number of chambers
+  Double_t* fXCenter;
+  Double_t* fYCenter;
+  Int_t* fMinHits;
+  Int_t* fMaxHits;
+  Int_t* fMinCombos;
+  Double_t* fSpace_Point_Criterion;
+
+  // Each of these will be dimensioned with the number of planes
+  // A THcDCPlane class object will need to access the value for
+  // its plane number.  Should we have a Get method for each or 
+  Int_t* fTdcWinMin;
+  Int_t* fTdcWinMax;
+  Double_t* fCentralTime;
+  Int_t* fNWires;		// Number of wires per plane
+  Int_t* fNChamber;
+  Int_t* fWireOrder;
+  Int_t* fDriftTimeSign;
+
+  Double_t* fZPos;
+  Double_t* fAlphaAngle;
+  Double_t* fBetaAngle;
+  Double_t* fGammaAngle;
+  Double_t* fPitch;
+  Double_t* fCentralWire;
+  Double_t* fPlaneTimeZero;
+  Double_t* fSigma;
+  Double_t** fPlaneCoeffs;
+
+  // For accumulating statitics for efficiencies
+  Int_t fTotEvents;
+  Int_t* fNChamHits;
+  Int_t* fPlaneEvents;
+
+  // Useful derived quantities
+  // double tan_angle, sin_angle, cos_angle;
+  
+  // Intermediate structure for building 
+  static const char MAXTRACKS = 10;
+
+  std::vector<THcDriftChamberPlane*> fPlanes; // List of plane objects
+  std::vector<THcDriftChamber*> fChambers; // List of chamber objects
+
+  TClonesArray*  fTrackProj;  // projection of track onto scintillator plane
+                              // and estimated match to TOF paddle
+  void           ClearEvent();
+  void           DeleteArrays();
+  virtual Int_t  ReadDatabase( const TDatime& date );
+  virtual Int_t  DefineVariables( EMode mode = kDefine );
+  void           LinkStubs();
+  void           TrackFit();
+  Double_t       DpsiFun(Double_t ray[4], Int_t plane);
+  Int_t          End(THaRunBase* run);
+  void           EffInit();
+  void           Eff();
+
+  void Setup(const char* name, const char* description);
+  void PrintSpacePoints();
+  void PrintStubs();
+
+  ClassDef(THcDC,0)   // Set of Drift Chambers detector
+};
+
+////////////////////////////////////////////////////////////////////////////////
+
+#endif
diff --git a/src/THcDCHit.cxx b/src/THcDCHit.cxx
index 261245a6399bd9b4eda92bf35fc3003694676cbd..3b1523c444ce0d4088ab5b422359d7e3d1cfd9ac 100644
--- a/src/THcDCHit.cxx
+++ b/src/THcDCHit.cxx
@@ -1,78 +1,89 @@
 ///////////////////////////////////////////////////////////////////////////////
 //                                                                           //
-// THcDCHit                                                                  //
+// THcDCHit                                                                 //
 //                                                                           //
-// Class representing for drift chamber wire (or other device with           //
-//   a single multihit TDC channel per detector element                      //
+// Class representing a single hit for the VDC                               //
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
 #include "THcDCHit.h"
+#include "THcDCTimeToDistConv.h"
 
-using namespace std;
+#include <iostream>
 
+using std::cout;
+using std::endl;
 
-void THcDCHit::SetData(Int_t signal, Int_t data) {
-  fTDC[fNHits++] = data;
-}
-
-// Return just the first hit
-Int_t THcDCHit::GetData(Int_t signal) {
-  if(fNHits>0) {
-    return(fTDC[0]);
-  } else {
-    return(-1);
-  }
-}
-
-// Return a requested hit
-Int_t THcDCHit::GetData(Int_t signal, Int_t ihit) {
-  if(ihit >=0 && ihit< fNHits) {
-    return(fTDC[ihit]);
-  } else {
-    return(-1);
-  }
-}
+ClassImp(THcDCHit)
 
+const Double_t THcDCHit::kBig = 1.e38; // Arbitrary large value
 
-Int_t THcDCHit::Compare(const TObject* obj) const
+//_____________________________________________________________________________
+void THcDCHit::Print( Option_t* opt ) const
 {
-  // Compare to sort by plane and counter
-  // Should we be able to move this into THcRawHit
-
-  const THcDCHit* hit = dynamic_cast<const THcDCHit*>(obj);
+  // Print hit info
 
-  if(!hit) return -1;
-  Int_t p1 = fPlane;
-  Int_t p2 = hit->fPlane;
-  if(p1 < p2) return -1;
-  else if(p1 > p2) return 1;
-  else {
-    Int_t c1 = fCounter;
-    Int_t c2 = hit->fCounter;
-    if(c1 < c2) return -1;
-    else if (c1 == c2) return 0;
-    else return 1;
-  }
+  cout << "Hit: wire=" << GetWireNum()
+       << "/" << (fWirePlane ? fWirePlane->GetName() : "??")
+       << " wpos="     << GetPos()
+       << " time="     << GetTime()
+       << " drift="    << GetDist();
+  //       << " res="      << GetResolution()
+    //       << " z="        << GetZ()
+  if( *opt != 'C' )
+    cout << endl;
 }
+
 //_____________________________________________________________________________
-THcDCHit& THcDCHit::operator=( const THcDCHit& rhs )
+Double_t THcDCHit::ConvertTimeToDist()
 {
-  // Assignment operator.
-
-  THcRawHit::operator=(rhs);
-  if ( this != &rhs ) {
-    fPlane = rhs.fPlane;
-    fCounter = rhs.fCounter;
-    fNHits = rhs.fNHits;
-    for(Int_t ihit=0;ihit<fNHits;ihit++) {
-      fTDC[ihit] = rhs.fTDC[ihit];
-    }
+  // Converts TDC time to drift distance
+  // Takes the (estimated) slope of the track as an argument
+  
+  THcDCTimeToDistConv* ttdConv = (fWire) ? fWire->GetTTDConv() : NULL;
+  
+  if (ttdConv) {
+    // If a time to distance algorithm exists, use it to convert the TDC time 
+    // to the drift distance
+    fDist = ttdConv->ConvertTimeToDist(fTime);
+    return fDist;
   }
-  return *this;
+  
+  Error("ConvertTimeToDist()", "No Time to dist algorithm available");
+  return 0.0;
+
 }
 
+//_____________________________________________________________________________
+Int_t THcDCHit::Compare( const TObject* obj ) const 
+{
+  // Used to sort hits
+  // A hit is "less than" another hit if it occurred on a lower wire number.
+  // Also, for hits on the same wire, the first hit on the wire (the one with
+  // the smallest time) is "less than" one with a higher time.  If the hits
+  // are sorted according to this scheme, they will be in order of increasing
+  // wire number and, for each wire, will be in the order in which they hit
+  // the wire
 
-//////////////////////////////////////////////////////////////////////////
-ClassImp(THcDCHit)
+  if( !obj || IsA() != obj->IsA() || !fWire )
+    return -1;
+
+  const THcDCHit* hit = static_cast<const THcDCHit*>( obj );
+ 
+  Int_t myWireNum = fWire->GetNum();
+  Int_t hitWireNum = hit->GetWire()->GetNum();
+  Int_t myPlaneNum = GetPlaneNum();
+  Int_t hitPlaneNum = hit->GetPlaneNum();
+  if (myPlaneNum < hitPlaneNum) return -1;
+  if (myPlaneNum > hitPlaneNum) return 1;
+  // If planes are the same, compare wire numbers
+  if (myWireNum < hitWireNum) return -1;
+  if (myWireNum > hitWireNum) return  1;
+  // If wire numbers are the same, compare times
+  Double_t hitTime = hit->GetTime();
+  if (fTime < hitTime) return -1;
+  if (fTime > hitTime) return  1;
+  return 0;
+}
 
+////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcDCHit.h b/src/THcDCHit.h
index 5523c79770c9a39f9a83c336faff7a330f4ed50f..c5ca7a74d3e14038ab2fc037cfd7bc31be6adee5 100644
--- a/src/THcDCHit.h
+++ b/src/THcDCHit.h
@@ -1,37 +1,86 @@
 #ifndef ROOT_THcDCHit
 #define ROOT_THcDCHit
 
-#include "THcRawHit.h"
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCHit                                                                 //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
 
-#define MAXHITS 16
+#include "TObject.h"
+#include "THcDCWire.h"
+#include "THcDriftChamberPlane.h"
+#include "THcDriftChamber.h"
+#include <cstdio>
 
-class THcDCHit : public THcRawHit {
+class THcDCHit : public TObject {
 
- public:
-
- THcDCHit(Int_t plane=0, Int_t counter=0) : THcRawHit(plane, counter), 
-    fNHits(0) {
+public:
+  THcDCHit( THcDCWire* wire=NULL, Int_t rawtime=0, Double_t time=0.0,
+	    THcDriftChamberPlane* wp=0) : 
+    fWire(wire), fRawTime(rawtime), fTime(time), fWirePlane(wp),
+    fDist(0.0), ftrDist(kBig) {
+    ConvertTimeToDist();
+    fCorrected = 0;
   }
-  THcDCHit& operator=( const THcDCHit& );
   virtual ~THcDCHit() {}
 
-  virtual void Clear( Option_t* opt="" ) { fNHits=0; }
+  virtual Double_t ConvertTimeToDist();
+  Int_t  Compare ( const TObject* obj ) const;
+  Bool_t IsSortable () const { return kTRUE; }
+  virtual void Print( Option_t* opt="" ) const;
+  
+  // Get and Set Functions
+  THcDCWire* GetWire() const { return fWire; }
+  Int_t    GetWireNum() const { return fWire->GetNum(); }
+  Int_t    GetRawTime() const { return fRawTime; }
+  Double_t GetTime()    const { return fTime; }
+  Double_t GetDist()    const { return fDist; }
+  Double_t GetPos()     const { return fWire->GetPos(); } //Position of hit wire
+  Double_t GetCoord()   const { return fCoord; }
+  Double_t GetdDist()   const { return fdDist; }
+  Int_t    GetCorrectedStatus() const { return fCorrected; }
 
-  void SetData(Int_t signal, Int_t data);
-  Int_t GetData(Int_t signal);
-  Int_t GetData(Int_t signal, Int_t ihit);
+  THcDriftChamberPlane* GetWirePlane() const { return fWirePlane; }
+  
 
-  virtual Bool_t  IsSortable () const {return kTRUE; }
-  virtual Int_t   Compare(const TObject* obj) const;
+  void     SetWire(THcDCWire * wire) { fWire = wire; }
+  void     SetRawTime(Int_t time)     { fRawTime = time; }
+  void     SetTime(Double_t time)     { fTime = time; }
+  void     SetDist(Double_t dist)     { fDist = dist; }
+  void     SetLeftRight(Int_t lr)   { fCoord = GetPos() + lr*fDist; fLR=lr;}
+  Int_t    GetLR() { return fLR; }
+  void     SetdDist(Double_t ddist)   { fdDist = ddist; }
+  void     SetFitDist(Double_t dist)  { ftrDist = dist; }
+  Int_t    GetPlaneNum() const { return fWirePlane->GetPlaneNum(); }
+  Int_t    GetPlaneIndex() const { return fWirePlane->GetPlaneIndex(); }
+  Int_t    GetChamberNum() const { return fWirePlane->GetChamberNum(); }
+  void     SetCorrectedStatus(Int_t c) { fCorrected = c; }
+  
+protected:
+  static const Double_t kBig;  //!
+  
+  THcDCWire*  fWire;     // Wire on which the hit occurred
+  Int_t       fRawTime;  // TDC value (channels)
+  Double_t    fTime;     // Time corrected for time offset of wire (s)
+  THcDriftChamberPlane* fWirePlane; //! Pointer to parent wire plane
+  Double_t    fDist;     // (Perpendicular) Drift Distance
+  Int_t       fLR;       // +1/-1 which side of wire
+  Double_t    fCoord;    // Actual coordinate of hit
+  Double_t    fdDist;    // uncertainty in fDist (for chi2 calc)
+  Double_t    ftrDist;   // (Perpendicular) distance from the track
+  Int_t       fCorrected; // Has this hit been corrected?
 
-  Int_t fNHits;
-  Int_t fTDC[MAXHITS];
+  THcDriftChamber* fChamber; //! Pointer to parent wire plane
 
- protected:
-
- private:
+  
+private:
+  THcDCHit( const THcDCHit& );
+  THcDCHit& operator=( const THcDCHit& );
+  
+  ClassDef(THcDCHit,2)             // Drift Chamber Hit
+};
 
-  ClassDef(THcDCHit, 0);	// DC hit class
-};  
+////////////////////////////////////////////////////////////////////////////////
 
 #endif
diff --git a/src/THcDCLookupTTDConv.cxx b/src/THcDCLookupTTDConv.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..766545742f99b2742adf2818373980eb09d61570
--- /dev/null
+++ b/src/THcDCLookupTTDConv.cxx
@@ -0,0 +1,60 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCLookupTTDConv                                                        //
+//                                                                           //
+// Upon initialization needs to be given the lookup table for time           //
+// to distance conversion.                                                   //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcDCLookupTTDConv.h"
+
+ClassImp(THcDCLookupTTDConv)
+
+
+//______________________________________________________________________________
+THcDCLookupTTDConv::THcDCLookupTTDConv(Double_t T0, Double_t MaxDriftDistance,
+				       Double_t BinSize, Int_t NumBins,
+				       Double_t* Table) :
+fT0(T0), fMaxDriftDistance(MaxDriftDistance), fBinSize(BinSize),
+  fNumBins(NumBins)
+{
+  //Normal constructor
+
+  fTable = new Double_t[fNumBins];
+  for(Int_t i=0;i<fNumBins;i++) {
+    fTable[i] = Table[i];
+  }
+
+}
+
+//______________________________________________________________________________
+THcDCLookupTTDConv::~THcDCLookupTTDConv()
+{
+  // Destructor. Remove variables from global list.
+
+}
+
+//______________________________________________________________________________
+Double_t THcDCLookupTTDConv::ConvertTimeToDist(Double_t time)
+{
+  // Lookup in table
+  Int_t ib = (time-fT0)/fBinSize;
+  Double_t frac = 0;
+  if(ib >= 0 && ib+1 < fNumBins) {
+    Double_t tfrac = (time - (ib*fBinSize + fT0)) / fBinSize;
+    frac = fTable[ib]*(1-tfrac) + fTable[ib+1]*tfrac;
+  } else if (ib+1 >= fNumBins) {
+    frac = 1.0;
+  }
+  
+  Double_t drift_distance = fMaxDriftDistance * frac;
+
+  // Engine subtracts a hdc_card_delay from this.  Seems
+  // to be zero in the PARAM files, bit is it always?  Delay implies
+  // time?  Whis is a time subtracted from a distance?
+
+  return(drift_distance);
+}  
+
+////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcDCLookupTTDConv.h b/src/THcDCLookupTTDConv.h
new file mode 100644
index 0000000000000000000000000000000000000000..3d6157436ddca4ab5150af81744fa6e831ef7b23
--- /dev/null
+++ b/src/THcDCLookupTTDConv.h
@@ -0,0 +1,38 @@
+#ifndef ROOT_THcDCLookupTTDConv
+#define ROOT_THcDCLookupTTDConv
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCLookupTTDConv                                                     //
+//                                                                           //
+// Uses a drift velocity (um/ns) to convert time (ns) into distance (cm)     //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+#include "THcDCTimeToDistConv.h"
+
+class THcDCLookupTTDConv : public THcDCTimeToDistConv{
+
+public:
+  THcDCLookupTTDConv(Double_t T0, Double_t MaxDriftDistance, Double_t BinSize,
+		     Int_t NumBins, Double_t* Table);
+
+  virtual ~THcDCLookupTTDConv();
+
+  virtual Double_t ConvertTimeToDist(Double_t time);
+
+
+protected:
+
+  Double_t fT0;
+  Double_t fMaxDriftDistance;
+  Double_t fBinSize;
+  Int_t fNumBins;
+  Double_t* fTable;
+
+  ClassDef(THcDCLookupTTDConv,0)             // Time to Distance conversion lookup
+};
+
+
+////////////////////////////////////////////////////////////////////////////////
+
+#endif
diff --git a/src/THcDCTimeToDistConv.cxx b/src/THcDCTimeToDistConv.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..15965892c2215cc98391b50d80e04c78b3250785
--- /dev/null
+++ b/src/THcDCTimeToDistConv.cxx
@@ -0,0 +1,21 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCTimeToDistConv                                                      //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcDCTimeToDistConv.h"
+
+
+ClassImp(THcDCTimeToDistConv)
+
+
+//______________________________________________________________________________
+THcDCTimeToDistConv::~THcDCTimeToDistConv()
+{
+  // Destructor. 
+
+}
+
+
+////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcDCTimeToDistConv.h b/src/THcDCTimeToDistConv.h
new file mode 100644
index 0000000000000000000000000000000000000000..2ff706206455a2e40d4ed6b8cfa574fc1145b800
--- /dev/null
+++ b/src/THcDCTimeToDistConv.h
@@ -0,0 +1,32 @@
+#ifndef ROOT_THcDCTimeToDistConv
+#define ROOT_THcDCTimeToDistConv
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCTimeToDistConv                                                      //
+//                                                                           //
+// Base class for algorithms for converting TDC time into perpendicular      //
+// drift distance                                                            //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "TObject.h"
+
+class THcDCTimeToDistConv : public TObject {
+
+public:
+  THcDCTimeToDistConv() {}
+  virtual ~THcDCTimeToDistConv();
+
+  virtual Double_t ConvertTimeToDist(Double_t time) = 0;
+
+private:
+
+  THcDCTimeToDistConv( const THcDCTimeToDistConv& );
+  THcDCTimeToDistConv& operator=( const THcDCTimeToDistConv& );
+
+  ClassDef(THcDCTimeToDistConv,0)             // Time to Distance conversion base class
+};
+
+////////////////////////////////////////////////////////////////////////////////
+
+#endif
diff --git a/src/THcDCTrack.cxx b/src/THcDCTrack.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..92503b0d1e11b6f1589c03be176445d8faa8a62e
--- /dev/null
+++ b/src/THcDCTrack.cxx
@@ -0,0 +1,59 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCTrack                                                                //
+//                                                                           //
+// Class representing a track found from linking DC Space points             //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcDCHit.h"
+#include "THcDCTrack.h"
+#include "THcSpacePoint.h"
+THcDCTrack::THcDCTrack(Int_t nplanes) : fnSP(0), fNHits(0)
+{
+  fHits.clear();
+  fCoords.resize(nplanes);
+  fResiduals.resize(nplanes);
+  fDoubleResiduals.resize(nplanes);
+}  
+
+void THcDCTrack::AddHit(THcDCHit * hit, Double_t dist, Int_t lr)
+{
+  // Add a hit to the track
+  Hit newhit;
+  newhit.dchit = hit;
+  newhit.distCorr = dist;
+  newhit.lr = lr;
+  fHits.push_back(newhit);
+  fNHits++;
+}
+void THcDCTrack::AddSpacePoint( THcSpacePoint* sp )
+{
+  // Add to list of space points in this track
+  // Need a check for maximum spacepoints of 10
+  fSp[fnSP++] = sp;
+  // Copy all the hits from the space point into the track
+  // Will need to also copy the corrected distance and lr information
+  for(Int_t ihit=0;ihit<sp->GetNHits();ihit++) {
+    AddHit(sp->GetHit(ihit),sp->GetHitDist(ihit),sp->GetHitLR(ihit));
+  }
+}
+
+void THcDCTrack::Clear( const Option_t* )
+{
+  // Clear the space point and hit lists
+  fnSP = 0;
+  ClearHits();
+  // Need to set default values  (0 or -100)
+  //fCoords.clear();
+  //fResiduals.clear();
+  //fDoubleResiduals.clear();
+}
+void THcDCTrack::ClearHits( )
+{
+  fNHits = 0;
+  fHits.clear();
+}
+
+ClassImp(THcDCTrack)
+
+///////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcDCTrack.h b/src/THcDCTrack.h
new file mode 100644
index 0000000000000000000000000000000000000000..cc97ff1c03c7e924bef06e537b78be51417e3c43
--- /dev/null
+++ b/src/THcDCTrack.h
@@ -0,0 +1,90 @@
+#ifndef ROOT_THcDCTrack
+#define ROOT_THcDCTrack
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCTrack                                                             //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+//#include "THaCluster.h"
+#include "TVector3.h"
+#include "TObject.h"
+
+//class THaVDCCluster;
+class THcDCPlane;
+class THaTrack;
+class THcDCHit;
+
+class THcDCTrack : public TObject {
+
+public:
+  THcDCTrack(Int_t nplanes);
+  virtual ~THcDCTrack() {};
+
+  virtual void AddSpacePoint(THcSpacePoint* sp);
+
+  //Get and Set Functions
+  //  Int_t* GetSpacePoints()               {return fspID;}
+  Int_t GetNSpacePoints()         const { return fnSP;}
+  //  Int_t GetSpacePointID(Int_t i)  const {return fspID[i];}
+  THcSpacePoint* GetSpacePoint(Int_t i) const {return fSp[i];}
+  THcDCHit* GetHit(Int_t i)       const {return fHits[i].dchit;}
+  Double_t GetHitDist(Int_t ihit) { return fHits[ihit].distCorr; };
+  Int_t GetHitLR(Int_t ihit) { return fHits[ihit].lr; };
+  Int_t GetNHits()                const {return fNHits;}
+  Int_t GetNFree()                const {return fNfree;}
+  Double_t GetCoord(Int_t ip)     const {return fCoords[ip];}
+  Double_t GetResidual(Int_t ip)     const {return fResiduals[ip];}
+  Double_t GetResidual1()     const {return fResiduals[0];}
+  void GetRay(Double_t *ray) const {ray[0]=fX_fp; ray[1]=fY_fp; ray[2]=fXp_fp; ray[3]=fYp_fp;}
+  Double_t GetX()                 const {return fX_fp;}
+  Double_t GetY()                 const {return fY_fp;}
+  Double_t GetXP()                 const {return fXp_fp;}
+  Double_t GetYP()                 const {return fYp_fp;}
+  Double_t GetChisq()              const {return fChi2_fp;}
+  void SetNFree(Int_t nfree)           {fNfree = nfree;}
+  void SetCoord(Int_t ip, Double_t coord) {fCoords[ip] = coord;}
+  void SetResidual(Int_t ip, Double_t coord) {fResiduals[ip] = coord;}
+  void SetDoubleResidual(Int_t ip, Double_t coord) {fDoubleResiduals[ip] = coord;}
+  void SetVector(Double_t x, Double_t y, Double_t z,
+		 Double_t xp, Double_t yp) {fX_fp = x; fY_fp=y; fZ_fp=z; fXp_fp=xp; fYp_fp=yp;}
+  void SetChisq(Double_t chi2)   {fChi2_fp = chi2;}
+
+  virtual void ClearHits( );
+
+  // TObject functions redefined
+  virtual void Clear( Option_t* opt="" );
+
+protected:
+  Int_t fnSP; /* Number of space points in this track */
+  THcSpacePoint* fSp[10];         /* List of space points in this track */
+
+  Int_t fNHits;
+  Int_t fNfree;		  /* Number of degrees of freedom */
+  struct Hit {
+    // This is the same structure as in THcSpacePoint.  Can we not
+    // duplicate this?
+    THcDCHit* dchit;
+    Double_t distCorr;
+    Int_t lr;
+  };
+  std::vector<Hit> fHits; /* List of hits for this track */
+  //std::vector<THcDCHit*> fHits; /* List of hits for this track */
+  std::vector<Double_t> fCoords; /* Coordinate on each plane */
+  std::vector<Double_t> fResiduals; /* Residual on each plane */
+  std::vector<Double_t> fDoubleResiduals; /* Residual on each plane for single stub mode */
+  Double_t fX_fp, fY_fp, fZ_fp;
+  Double_t fXp_fp, fYp_fp;
+  Double_t fChi2_fp;
+  
+  virtual void AddHit(THcDCHit * hit, Double_t dist, Int_t lr);
+  
+private:
+  // Hide copy ctor and op=
+  THcDCTrack( const THcDCTrack& );
+  THcDCTrack& operator=( const THcDCTrack& );
+
+  ClassDef(THcDCTrack,0)	// Full Drift Chamber track
+};
+#endif
diff --git a/src/THcDCWire.cxx b/src/THcDCWire.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..3b6520b68aff85373f8b8102774da3fa4cc871f4
--- /dev/null
+++ b/src/THcDCWire.cxx
@@ -0,0 +1,14 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCWire                                                                //
+//                                                                           //
+// Class to represent a drift chamber wire                                   //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcDCWire.h"
+
+ClassImp(THcDCWire)
+
+
+///////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcDCWire.h b/src/THcDCWire.h
new file mode 100644
index 0000000000000000000000000000000000000000..53f6fcbe39e317c450dfb8440b59c72cfd14c027
--- /dev/null
+++ b/src/THcDCWire.h
@@ -0,0 +1,51 @@
+#ifndef ROOT_THcDCWire
+#define ROOT_THcDCWire
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcDCWire                                                                //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+#include "TObject.h"
+
+class THcDCTimeToDistConv;
+
+class THcDCWire : public TObject {
+
+public:
+
+  THcDCWire( Int_t num=0, Double_t pos=0.0, Double_t offset=0.0,
+	     THcDCTimeToDistConv* ttd=NULL ) :
+    fNum(num), fFlag(0), fPos(pos), fTOffset(offset), fTTDConv(ttd) {}
+  virtual ~THcDCWire() {}
+
+  // Get and Set Functions
+  Int_t    GetNum()     const { return fNum;  }
+  Int_t    GetFlag()    const { return fFlag; }
+  Double_t GetPos()     const { return fPos; }
+  Double_t GetTOffset() const { return fTOffset; }
+  THcDCTimeToDistConv * GetTTDConv() { return fTTDConv; }
+
+  void SetNum  (Int_t num)  {fNum = num;}
+  void SetFlag (Int_t flag) {fFlag = flag;}
+  void SetPos  (Double_t pos)       { fPos = pos; }
+  void SetTOffset (Double_t tOffset){ fTOffset = tOffset; } 
+  void SetTTDConv (THcDCTimeToDistConv * ttdConv){ fTTDConv = ttdConv;}
+
+protected:
+  Int_t    fNum;                       //Wire Number
+  Int_t    fFlag;                      //Flag for errors (e.g. Bad wire)
+  Double_t fPos;                       //Position within the plane
+  Double_t fTOffset;                      //Timing Offset
+  THcDCTimeToDistConv* fTTDConv;     //!Time to Distance Converter
+
+private:
+  THcDCWire( const THcDCWire& );
+  THcDCWire& operator=( const THcDCWire& );
+ 
+  ClassDef(THcDCWire,0)             // Drift Chamber Wire class
+};
+
+////////////////////////////////////////////////////////////////////////////////
+
+#endif
diff --git a/src/THcDetectorMap.cxx b/src/THcDetectorMap.cxx
index 24ba354a105a37ccbc7ecffe62f500a5324a2137..647cbae045bbaf833812e8f20aea9f1b097f2eb9 100644
--- a/src/THcDetectorMap.cxx
+++ b/src/THcDetectorMap.cxx
@@ -4,12 +4,8 @@
 //
 // THcDetectorMap
 //
-// Class to read and hold Hall C style detector map
-//
-// Will need method to retrieve all map entries for a given
-// detector id.
-//
-// Not sure we will keep this class, but still need the parsing of the map file
+// Class to read and Hall C style detector map
+//   FillMap method builds a map for a specific detector
 //
 //////////////////////////////////////////////////////////////////////////
 
@@ -54,8 +50,11 @@ struct Functor
 };
 //_____________________________________________________________________________
 Int_t THcDetectorMap::FillMap(THaDetMap *detmap, const char *detectorname)
-// Should probably return a status
 {
+  // Build a DAQ hardware to detector element map for detector detectorname
+  // Reads through the entire list of mappings, adding one element to
+  // detmap for each electronics channel that maps to detectorname.
+
   list<ModChanList>::iterator imod;
   list<ChaninMod>::iterator ichan;
   ChaninMod Achan;
@@ -110,7 +109,8 @@ Int_t THcDetectorMap::FillMap(THaDetMap *detmap, const char *detectorname)
       }
     }
   }
-  if(mlist.size() <= 0) {
+//  if(mlist.size() <= 0) {
+  if(mlist.empty()) {
     return(-1);
   }
   Functor f;
@@ -170,15 +170,42 @@ Int_t THcDetectorMap::FillMap(THaDetMap *detmap, const char *detectorname)
   return(0);
 }
 
+//_____________________________________________________________________________
 void THcDetectorMap::Load(const char *fname)
 {
-  static const char* const here = "THcDetectorMap::Load";
+// Load a Hall C ENGINE style detector map file.  The map file maps
+// a given roc, slot/module, and channel # into a given detector id#, plane
+// number, counter number and signal type.  The mapping between detector
+// names and ids is found in the comments at the begging of the map file.
+// This method looks for those comments, of the form:
+//   XXX_ID = n
+// to establish that mapping between detector name and detector ID.
+//
+// Lines of the form
+//  DETECTOR = n  
+//  ROC = n
+//  SLOT = n
+// are used to establish the module (roc and slot) and the detector
+// for the mapping lines that follow.
+// The actual mappings are of the form 
+//  subadd, plane, counter [, signal]
+// Each of these lines, combined with the detector, roc, slot values
+// establish the roc, slot, subadess -> detector, plane, counter#, sigtype map
+// Other lines that may be in the map file are
+//  NSUBADD = n
+//  BSUB = n
+//  MASK = hex value
+// These define characteristics of the electronics module (# channels,
+//  The bit number specifying the location of the subaddress in a data word
+//  and hex mask that the data word is anded with to retrieve data)
+
   static const char* const whtspc = " \t";
 
   ifstream ifile;
 
   ifile.open(fname);
   if(!ifile.is_open()) {
+    static const char* const here = "THcDetectorMap::Load";
     Error(here, "error opening detector map file %s",fname);
     return;			// Need a success/failure argument?
   }
@@ -186,7 +213,7 @@ void THcDetectorMap::Load(const char *fname)
 
   Int_t roc=0;
   Int_t nsubadd=0;
-  Int_t mask=0;
+  //  Int_t mask=0;
   Int_t bsub=0;
   Int_t detector=0;
   Int_t slot=0;
@@ -251,8 +278,8 @@ void THcDetectorMap::Load(const char *fname)
 	roc = value;
       } else if (strcasecmp(varname,"nsubadd")==0) {
 	nsubadd = value;
-      } else if (strcasecmp(varname,"mask")==0) {
-	mask = value;
+      } else if (strcasecmp(varname,"mask")==0) { // mask not used here
+	//mask = value;
       } else if (strcasecmp(varname,"bsub")==0) {
 	bsub = value;
       } else if (strcasecmp(varname,"slot")==0) {
@@ -288,6 +315,7 @@ void THcDetectorMap::Load(const char *fname)
       if(nvals==4) {
 	signal= ((TObjString*)vararr->At(3))->GetString().Atoi();
       }
+      delete vararr;		// Discard result of Tokenize
 
       fTable[fNchans].roc=roc;
       fTable[fNchans].slot=slot;
@@ -301,9 +329,9 @@ void THcDetectorMap::Load(const char *fname)
       fNchans++;
     }
   }
-  cout << endl << "   Detector ID Map" << endl << endl;
+  cout << endl << " Detector ID Map" << endl << endl;
   for(Int_t i=0; i < fNIDs; i++) {
-    cout << i << " ";
+    cout << "   ";
     cout << fIDMap[i].name << " " << fIDMap[i].id << endl;
   }
   cout << endl;
diff --git a/src/THcDetectorMap.h b/src/THcDetectorMap.h
index 1dd95b2471267ffd7dee8ef096caf6e381b2091b..420f7de84400227c5352079a1a88d4b938e5d8de 100644
--- a/src/THcDetectorMap.h
+++ b/src/THcDetectorMap.h
@@ -60,7 +60,7 @@ class THcDetectorMap : public TObject {
 
  protected:
 
-  ClassDef(THcDetectorMap,0);
+  ClassDef(THcDetectorMap,0); // Map electronics channels to Detector, Plane, Counter, Signal
 };
 #endif
 
diff --git a/src/THcDriftChamber.cxx b/src/THcDriftChamber.cxx
index 2e8881df5333d56685e8084833ba368f400d9c54..61f5c02c76029a2d72c04ee6863822dd009e1fdf 100644
--- a/src/THcDriftChamber.cxx
+++ b/src/THcDriftChamber.cxx
@@ -1,18 +1,17 @@
 ///////////////////////////////////////////////////////////////////////////////
 //                                                                           //
-// THcDriftChamber                                                              //
+// THcDriftChamber                                                           //
 //                                                                           //
-// Class for a generic hodoscope consisting of multiple                      //
-// planes with multiple paddles with phototubes on both ends.                //
-// This differs from Hall A scintillator class in that it is the whole       //
-// hodoscope array, not just one plane.                                      //
+// Subdetector class to hold a bunch of planes constituting a chamber        //
+// This class will be created by the THcDC class which will also create      //
+// the plane objects.                                                        //
+// The THcDC class will then pass this class a list of the planes.           //
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
 #include "THcDriftChamber.h"
-#include "THaEvData.h"
-#include "THaDetMap.h"
-#include "THcDetectorMap.h"
+#include "THcDC.h"
+#include "THcDCHit.h"
 #include "THcGlobals.h"
 #include "THcParmList.h"
 #include "VarDef.h"
@@ -20,6 +19,8 @@
 #include "THaTrack.h"
 #include "TClonesArray.h"
 #include "TMath.h"
+#include "TVectorD.h"
+#include "THcSpacePoint.h"
 
 #include "THaTrackProj.h"
 
@@ -27,105 +28,188 @@
 #include <cstdio>
 #include <cstdlib>
 #include <iostream>
+#include <iomanip>
 
 using namespace std;
 
 //_____________________________________________________________________________
-THcDriftChamber::THcDriftChamber( const char* name, const char* description,
-				  THaApparatus* apparatus ) :
-  THaNonTrackingDetector(name,description,apparatus)
+THcDriftChamber::THcDriftChamber(
+ const char* name, const char* description,
+ const Int_t chambernum, THaDetectorBase* parent ) :
+  THaSubDetector(name,description,parent)
 {
   // Constructor
 
-  fTrackProj = new TClonesArray( "THaTrackProj", 5 );
+  //  fTrackProj = new TClonesArray( "THaTrackProj", 5 );
+  fTrackProj = NULL;
+  fNPlanes = 0;			// No planes until we make them
+
+  fChamberNum = chambernum;
+
+  fSpacePoints = new TClonesArray("THcSpacePoint",10);
+
+  fHMSStyleChambers = 0;	// Default
 }
 
 //_____________________________________________________________________________
-THcDriftChamber::THcDriftChamber( ) :
-  THaNonTrackingDetector()
+THcDriftChamber::THcDriftChamber() :
+  THaSubDetector()
 {
   // Constructor
-}
+  fTrackProj = NULL;
+  fSpacePoints = NULL;
+  fIsInit = 0;
 
+}
 //_____________________________________________________________________________
-THaAnalysisObject::EStatus THcDriftChamber::Init( const TDatime& date )
+void THcDriftChamber::Setup(const char* name, const char* description)
 {
-  static const char* const here = "Init()";
 
-  if( THaNonTrackingDetector::Init( date ) )
-    return fStatus;
-
-  // Replace with what we need for Hall C
-  //  const DataDest tmp[NDEST] = {
-  //    { &fRTNhit, &fRANhit, fRT, fRT_c, fRA, fRA_p, fRA_c, fROff, fRPed, fRGain },
-  //    { &fLTNhit, &fLANhit, fLT, fLT_c, fLA, fLA_p, fLA_c, fLOff, fLPed, fLGain }
-  //  };
-  //  memcpy( fDataDest, tmp, NDEST*sizeof(DataDest) );
+}
 
-  // Should probably put this in ReadDatabase as we will know the
-  // maximum number of hits after setting up the detector map
+//_____________________________________________________________________________
+Int_t THcDriftChamber::Decode( const THaEvData& evdata )
+{
+  return 0;
+}
 
-  THcHitList::InitHitList(fDetMap, "THcDCHit", 1000);
+//_____________________________________________________________________________
+THaAnalysisObject::EStatus THcDriftChamber::Init( const TDatime& date )
+{
+  //  static const char* const here = "Init()";
 
-  // Will need to determine which apparatus it belongs to and use the
-  // appropriate detector ID in the FillMap call
-  if( gHcDetectorMap->FillMap(fDetMap, "HDC") < 0 ) {
-    Error( Here(here), "Error filling detectormap for %s.", 
-	     "HSCIN");
-      return kInitError;
-  }
+  Setup(GetName(), GetTitle());
+  
+  EStatus status;
+  // This triggers call of ReadDatabase and DefineVariables
+  if( (status = THaSubDetector::Init( date )) )
+    return fStatus=status;
 
   return fStatus = kOK;
 }
 
+void THcDriftChamber::AddPlane(THcDriftChamberPlane *plane)
+{
+  plane->SetPlaneIndex(fNPlanes);
+  fPlanes.push_back(plane);
+ // HMS Specific
+  // Hard code Y plane numbers.  Eventually need to get from database
+  if (fHMSStyleChambers) {
+   if(fChamberNum == 1) {
+     YPlaneNum=2;
+     YPlanePNum=5;
+    if(plane->GetPlaneNum() == 2) YPlaneInd = fNPlanes;
+    if(plane->GetPlaneNum() == 5) YPlanePInd = fNPlanes;
+   } else {
+     YPlaneNum=8;
+     YPlanePNum=11;
+    if(plane->GetPlaneNum() == 8) YPlaneInd = fNPlanes;
+    if(plane->GetPlaneNum() == 11) YPlanePInd = fNPlanes;
+   }
+  } else {
+ // SOS Specific
+  // Hard code X plane numbers.   Eventually need to get from database
+   if(fChamberNum == 1) {
+     XPlaneNum=3;
+     XPlanePNum=4;
+    if(plane->GetPlaneNum() == 3) XPlaneInd = fNPlanes;
+    if(plane->GetPlaneNum() == 4) XPlanePInd = fNPlanes;
+   } else {
+     XPlaneNum=9;
+     XPlanePNum=10;
+    if(plane->GetPlaneNum() == 9) XPlaneInd = fNPlanes;
+    if(plane->GetPlaneNum() == 10) XPlanePInd = fNPlanes;
+   }
+  }
+  fNPlanes++;
+  return;
+}
+
 //_____________________________________________________________________________
 Int_t THcDriftChamber::ReadDatabase( const TDatime& date )
 {
-  // Read this detector's parameters from the database file 'fi'.
-  // This function is called by THaDetectorBase::Init() once at the
-  // beginning of the analysis.
-  // 'date' contains the date/time of the run being analyzed.
-
-  //  static const char* const here = "ReadDatabase()";
-
-  // Read data from database 
-  // Pull values from the THcParmList instead of reading a database
-  // file like Hall A does.
-
-  //  DBRequest list[] = {
-  //    { "TDC_offsetsL", fLOff, kDouble, fNelem },
-  //    { "TDC_offsetsR", fROff, kDouble, fNelem },
-  //    { "ADC_pedsL", fLPed, kDouble, fNelem },
-  //    { "ADC_pedsR", fRPed, kDouble, fNelem },
-  //    { "ADC_coefL", fLGain, kDouble, fNelem },
-  //    { "ADC_coefR", fRGain, kDouble, fNelem },
-  //    { "TDC_res",   &fTdc2T },
-  //    { "TransSpd",  &fCn },
-  //    { "AdcMIP",    &fAdcMIP },
-  //    { "NTWalk",    &fNTWalkPar, kInt },
-  //    { "Timewalk",  fTWalkPar, kDouble, 2*fNelem },
-  //    { "ReTimeOff", fTrigOff, kDouble, fNelem },
-  //    { "AvgRes",    &fResolution },
-  //    { "Atten",     &fAttenuation },
-  //    { 0 }
-  //  };
-
-  // We will probably want to add some kind of method to gHcParms to allow
-  // bulk retrieval of parameters of interest.
-
-  // Will need to determine which spectrometer in order to construct
-  // the parameter names (e.g. hscin_1x_nr vs. sscin_1x_nr)
-
-  fNPlanes = *(Int_t *)gHcParms->Find("hdc_num_planes")->GetValuePointer();
-
-  fNWires = new Int_t [fNPlanes];
-  Int_t* p= (Int_t *)gHcParms->Find("hdc_nrwire")->GetValuePointer();
-  for(Int_t i=0;i<fNPlanes;i++) {
-    fNWires[i] = p[i];
+
+  cout << "THcDriftChamber::ReadDatabase()" << endl;
+  char prefix[2];
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+  DBRequest list[]={
+    {"_remove_sppt_if_one_y_plane",&fRemove_Sppt_If_One_YPlane, kInt,0,1},
+    {"dc_wire_velocity", &fWireVelocity, kDouble},
+    {"SmallAngleApprox", &fSmallAngleApprox, kInt},
+    {"stub_max_xpdiff", &fStubMaxXPDiff, kDouble,0,1},
+    {"debugflagpr", &fhdebugflagpr, kInt},
+    {"debugstubchisq", &fdebugstubchisq, kInt},
+    {Form("dc_%d_zpos",fChamberNum), &fZPos, kDouble},
+    {0}
+  };
+  fRemove_Sppt_If_One_YPlane = 0; // Default
+  fStubMaxXPDiff = 0.05;	  // The HMS default.  Not used for SOS.
+  gHcParms->LoadParmValues((DBRequest*)&list,prefix);
+
+  // Get parameters parent knows about
+  THcDC* fParent;
+  fParent = (THcDC*) GetParent();
+  fMinHits = fParent->GetMinHits(fChamberNum);
+  fMaxHits = fParent->GetMaxHits(fChamberNum);
+  fMinCombos = fParent->GetMinCombos(fChamberNum);
+  fFixPropagationCorrection = fParent->GetFixPropagationCorrectionFlag();
+
+  fSpacePointCriterion = fParent->GetSpacePointCriterion(fChamberNum);
+  fMaxDist = TMath::Sqrt(fSpacePointCriterion/2.0); // For easy space points
+
+   if (fhdebugflagpr) cout << " cham = " << fChamberNum << " Set yplane num " << YPlaneNum << " "<< YPlanePNum << endl; 
+  // Generate the HAA3INV matrix for all the acceptable combinations
+  // of hit planes.  Try to make it as generic as possible 
+  // pindex=0 -> Plane 1 missing, pindex5 -> plane 6 missing.  Won't 
+  // replicate the exact values used in the ENGINE, because the engine
+  // had one big list of matrices for both chambers, while here we will
+  // have a list just for one chamber.  Also, call pindex, pmindex as
+  // we tend to use pindex as a plane index.
+  fCosBeta = new Double_t [fNPlanes];
+  fSinBeta = new Double_t [fNPlanes];
+  fTanBeta = new Double_t [fNPlanes];
+  fSigma = new Double_t [fNPlanes];
+  fPsi0 = new Double_t [fNPlanes];
+  fStubCoefs = new Double_t* [fNPlanes];
+  Int_t allplanes=0;
+  for(Int_t ip=0;ip<fNPlanes;ip++) {
+    fCosBeta[ip] = TMath::Cos(fPlanes[ip]->GetBeta());
+    fSinBeta[ip] = TMath::Sin(fPlanes[ip]->GetBeta());
+    fTanBeta[ip] = fSinBeta[ip]/fCosBeta[ip];
+    fSigma[ip] = fPlanes[ip]->GetSigma();
+    fPsi0[ip] = fPlanes[ip]->GetPsi0();
+    fStubCoefs[ip] = fPlanes[ip]->GetStubCoef();
+    allplanes |= 1<<ip;
+  }
+  // Unordered map introduced in C++-11
+  // Can use unordered_map if using C++-11
+  // May not want to use map a all for performance, but using it now
+  // for code clarity
+  for(Int_t ipm1=0;ipm1<fNPlanes+1;ipm1++) { // Loop over missing plane1
+    for(Int_t ipm2=ipm1;ipm2<fNPlanes+1;ipm2++) {
+      if(ipm1==ipm2 && ipm1<fNPlanes) continue;
+      TMatrixD* AA3 = new TMatrixD(3,3);
+      for(Int_t i=0;i<3;i++) {
+	for(Int_t j=i;j<3;j++) {
+	  (*AA3)[i][j] = 0.0;
+	  for(Int_t ip=0;ip<fNPlanes;ip++) {
+	    if(ipm1 != ip && ipm2 != ip) {
+	      (*AA3)[i][j] += fStubCoefs[ip][i]*fStubCoefs[ip][j];
+	    }
+	  }
+	  (*AA3)[j][i] = (*AA3)[i][j];
+	}
+      }
+      Int_t bitpat = allplanes & ~(1<<ipm1) & ~(1<<ipm2);
+      // Should check that it is invertable
+      //      if (fhdebugflagpr) cout << bitpat << " Determinant: " << AA3->Determinant() << endl;
+      AA3->Invert();
+      fAA3Inv[bitpat] = AA3;
+    }
   }
 
   fIsInit = true;
-
   return kOK;
 }
 
@@ -136,161 +220,1056 @@ Int_t THcDriftChamber::DefineVariables( EMode mode )
 
   if( mode == kDefine && fIsSetup ) return kOK;
   fIsSetup = ( mode == kDefine );
-
   // Register variables in global list
 
-  //  RVarDef vars[] = {
-  //    { "nlthit", "Number of Left paddles TDC times",  "fLTNhit" },
-  //    { "nrthit", "Number of Right paddles TDC times", "fRTNhit" },
-  //    { "nlahit", "Number of Left paddles ADCs amps",  "fLANhit" },
-  //    { "nrahit", "Number of Right paddles ADCs amps", "fRANhit" },
-  //    { "lt",     "TDC values left side",              "fLT" },
-  //    { "lt_c",   "Corrected times left side",         "fLT_c" },
-  //    { "rt",     "TDC values right side",             "fRT" },
-  //    { "rt_c",   "Corrected times right side",        "fRT_c" },
-  //    { "la",     "ADC values left side",              "fLA" },
-  //    { "la_p",   "Corrected ADC values left side",    "fLA_p" },
-  //    { "la_c",   "Corrected ADC values left side",    "fLA_c" },
-  //    { "ra",     "ADC values right side",             "fRA" },
-  //    { "ra_p",   "Corrected ADC values right side",   "fRA_p" },
-  //    { "ra_c",   "Corrected ADC values right side",   "fRA_c" },
-  //    { "nthit",  "Number of paddles with l&r TDCs",   "fNhit" },
-  //    { "t_pads", "Paddles with l&r coincidence TDCs", "fHitPad" },
-  //    { "y_t",    "y-position from timing (m)",        "fYt" },
-  //    { "y_adc",  "y-position from amplitudes (m)",    "fYa" },
-  //    { "time",   "Time of hit at plane (s)",          "fTime" },
-  //    { "dtime",  "Est. uncertainty of time (s)",      "fdTime" },
-  //    { "dedx",   "dEdX-like deposited in paddle",     "fAmpl" },
-  //    { "troff",  "Trigger offset for paddles",        "fTrigOff"},
-  //    { "trn",    "Number of tracks for hits",         "GetNTracks()" },
-  //    { "trx",    "x-position of track in det plane",  "fTrackProj.THaTrackProj.fX" },
-  //    { "try",    "y-position of track in det plane",  "fTrackProj.THaTrackProj.fY" },
-  //    { "trpath", "TRCS pathlen of track to det plane","fTrackProj.THaTrackProj.fPathl" },
-  //    { "trdx",   "track deviation in x-position (m)", "fTrackProj.THaTrackProj.fdX" },
-  //    { "trpad",  "paddle-hit associated with track",  "fTrackProj.THaTrackProj.fChannel" },
-  //    { 0 }
-  //  };
-  //  return DefineVarsFromList( vars, mode );
-  return kOK;
+   RVarDef vars[] = {
+     { "nhit", "Number of DC hits",  "fNhits" },
+     { "trawhit", "Number of True Raw hits", "fN_True_RawHits" },
+     { 0 }
+   };
+   return DefineVarsFromList( vars, mode );
+  //return kOK;
+
+}
+void THcDriftChamber::ProcessHits( void)
+{
+  // Make a list of hits for whole chamber
+  fNhits = 0;
+  fHits.clear();
+  fHits.reserve(10);
+
+  for(Int_t ip=0;ip<fNPlanes;ip++) {
+    TClonesArray* hitsarray = fPlanes[ip]->GetHits();
+    for(Int_t ihit=0;ihit<fPlanes[ip]->GetNHits();ihit++) {
+      fHits.push_back(static_cast<THcDCHit*>(hitsarray->At(ihit)));
+      fNhits++;
+    }
+  }
+  //  if (fhdebugflagpr) cout << "ThcDriftChamber::ProcessHits() " << fNhits << " hits" << endl;
+}
+
+
+void THcDriftChamber::PrintDecode( void )
+{
+  cout << " Num of nits = " << fNhits << endl;
+  cout << " Num " << " Plane "  << " Wire " <<  "  Wire-Center  " << " RAW TDC " << " Drift time" << endl;
+    for(Int_t ihit=0;ihit<fNhits;ihit++) {
+    THcDCHit* thishit = fHits[ihit];
+    cout << ihit << "       " <<thishit->GetPlaneNum()  << "     " << thishit->GetWireNum() << "     " <<  thishit->GetPos() << "    " << thishit->GetRawTime() << "    " << thishit->GetTime() << endl;
+    }
+}
+
+
+Int_t THcDriftChamber::FindSpacePoints( void )
+{
+
+  fSpacePoints->Clear();
+
+  Int_t plane_hitind=0;
+  Int_t planep_hitind=0;
+
+
+  fNSpacePoints=0;
+  fEasySpacePoint = 0;
+  if(fNhits >= fMinHits && fNhits < fMaxHits) {
+    for(Int_t ihit=0;ihit<fNhits;ihit++) {
+      THcDCHit* thishit = fHits[ihit];
+      Int_t ip=thishit->GetPlaneNum();  // This is the absolute plane mumber
+      if(ip==YPlaneNum  && fHMSStyleChambers) plane_hitind = ihit;
+      if(ip==YPlanePNum && fHMSStyleChambers) planep_hitind = ihit;
+      if(ip==XPlaneNum  && !fHMSStyleChambers) plane_hitind = ihit;
+      if(ip==XPlanePNum && !fHMSStyleChambers) planep_hitind = ihit;
+    }
+    Int_t PlaneInd=0,PlanePInd=0;
+    if (fHMSStyleChambers) {
+      PlaneInd=YPlaneInd;
+      PlanePInd=YPlanePInd;
+    } else {
+      PlaneInd=XPlaneInd;
+      PlanePInd=XPlanePInd;
+    }
+    if(fPlanes[PlaneInd]->GetNHits() == 1 && fPlanes[PlanePInd]->GetNHits() == 1
+       && pow( (fHits[plane_hitind]->GetPos() - fHits[planep_hitind]->GetPos()),2)
+       < fSpacePointCriterion
+       && fNhits <= 6) {	// An easy case, probably one hit per plane
+      if(fHMSStyleChambers) fEasySpacePoint = FindEasySpacePoint_HMS(plane_hitind, planep_hitind);
+      if(!fHMSStyleChambers) fEasySpacePoint = FindEasySpacePoint_SOS(plane_hitind, planep_hitind);
+    }
+    if(!fEasySpacePoint) {	// It's not easy
+      FindHardSpacePoints();
+    }
+
+    // We have our space points for this chamber
+    if(fNSpacePoints > 0) {
+      if(fHMSStyleChambers) {
+	if(fRemove_Sppt_If_One_YPlane == 1) {
+	  // The routine is specific to HMS
+	  //Int_t ndest=
+	    DestroyPoorSpacePoints(); // Only for HMS?
+	  // Loop over space points and remove those with less than 4 planes
+	  // hit and missing hits in Y,Y' planes
+	}
+	Int_t nadded=SpacePointMultiWire(); // Only for HMS?
+	if (nadded) if (fhdebugflagpr) cout << nadded << " Space Points added with SpacePointMultiWire()" << endl;
+      }
+      ChooseSingleHit();
+      SelectSpacePoints();
+      //      if(fNSpacePoints == 0) if (fhdebugflagpr) cout << "SelectSpacePoints() killed SP" << endl;
+    }
+    //    if (fhdebugflagpr) cout << fNSpacePoints << " Space Points remain" << endl;
+  }
+  return(fNSpacePoints);
 }
 
 //_____________________________________________________________________________
-THcDriftChamber::~THcDriftChamber()
+// HMS Specific
+Int_t THcDriftChamber::FindEasySpacePoint_HMS(Int_t yplane_hitind,Int_t yplanep_hitind)
 {
-  // Destructor. Remove variables from global list.
+  // Simplified HMS find_space_point routing.  It is given all y hits and
+  // checks to see if all x-like hits are close enough together to make
+  // a space point.
 
-  if( fIsSetup )
-    RemoveVariables();
-  if( fIsInit )
-    DeleteArrays();
-  if (fTrackProj) {
-    fTrackProj->Clear();
-    delete fTrackProj; fTrackProj = 0;
+  Int_t easy_space_point=0;
+  Double_t yt = (fHits[yplane_hitind]->GetPos() + fHits[yplanep_hitind]->GetPos())/2.0;
+  Double_t xt = 0.0;
+  Int_t num_xhits = 0;
+  Double_t x_pos[MAX_HITS_PER_POINT];
+
+  for(Int_t ihit=0;ihit<fNhits;ihit++) {
+    THcDCHit* thishit = fHits[ihit];
+    if(ihit!=yplane_hitind && ihit!=yplanep_hitind) { // x-like hit
+      // ysp and xsp are from h_generate_geometry
+      x_pos[ihit] = (thishit->GetPos()
+		     -yt*thishit->GetWirePlane()->GetYsp())
+	/thishit->GetWirePlane()->GetXsp();
+      xt += x_pos[ihit];
+      num_xhits++;
+    } else {
+      x_pos[ihit] = 0.0;
+    }
+  }
+  xt = (num_xhits>0?xt/num_xhits:0.0);
+  easy_space_point = 1; // Assume we have an easy space point
+  // Rule it out if x points don't cluster well enough
+  for(Int_t ihit=0;ihit<fNhits;ihit++) {
+    if(ihit!=yplane_hitind && ihit!=yplanep_hitind) { // select x-like hit
+      if(TMath::Abs(xt-x_pos[ihit]) >= fMaxDist)
+	{ easy_space_point=0; break;}
+    }
   }
+  if(easy_space_point) {	// Register the space point
+    THcSpacePoint* sp = (THcSpacePoint*)fSpacePoints->ConstructedAt(fNSpacePoints++);
+    sp->Clear();
+    sp->SetXY(xt, yt);
+    sp->SetCombos(0);
+    for(Int_t ihit=0;ihit<fNhits;ihit++) {
+      sp->AddHit(fHits[ihit]);
+    }
+  }
+  return(easy_space_point);
+}
+// SOS Specific
+Int_t THcDriftChamber::FindEasySpacePoint_SOS(Int_t xplane_hitind,Int_t xplanep_hitind)
+{
+  // Simplified SOS find_space_point routing.  It is given all x hits and
+  // checks to see if all y-like hits are close enough together to make
+  // a space point.
+
+  Int_t easy_space_point=0;
+  Double_t xt = (fHits[xplane_hitind]->GetPos() + fHits[xplanep_hitind]->GetPos())/2.0;
+  Double_t yt = 0.0;
+  Int_t num_yhits = 0;
+  Double_t y_pos[MAX_HITS_PER_POINT];
+
+  for(Int_t ihit=0;ihit<fNhits;ihit++) {
+    THcDCHit* thishit = fHits[ihit];
+    if(ihit!=xplane_hitind && ihit!=xplanep_hitind) { // y-like hit
+      // ysp and xsp are from h_generate_geometry
+      y_pos[ihit] = (thishit->GetPos()
+		     -xt*thishit->GetWirePlane()->GetXsp())
+	/thishit->GetWirePlane()->GetYsp();
+      yt += y_pos[ihit];
+      num_yhits++;
+    } else {
+      y_pos[ihit] = 0.0;
+    }
+  }
+  yt = (num_yhits>0?yt/num_yhits:0.0);
+  easy_space_point = 1; // Assume we have an easy space point
+  // Rule it out if x points don't cluster well enough
+  for(Int_t ihit=0;ihit<fNhits;ihit++) {
+    if(ihit!=xplane_hitind && ihit!=xplanep_hitind) { // select y-like hit
+      if(TMath::Abs(yt-y_pos[ihit]) >= fMaxDist)
+	{ easy_space_point=0; break;}
+    }
+  }
+  if(easy_space_point) {	// Register the space point
+    THcSpacePoint* sp = (THcSpacePoint*)fSpacePoints->ConstructedAt(fNSpacePoints++);
+    sp->Clear();
+    sp->SetXY(xt, yt);
+    sp->SetCombos(0);
+    for(Int_t ihit=0;ihit<fNhits;ihit++) {
+      sp->AddHit(fHits[ihit]);
+    }
+  }
+  return(easy_space_point);
 }
 
 //_____________________________________________________________________________
-void THcDriftChamber::DeleteArrays()
+// Generic
+Int_t THcDriftChamber::FindHardSpacePoints()
 {
-  // Delete member arrays. Used by destructor.
+  Int_t MAX_NUMBER_PAIRS=1000; // Where does this get set?
+  struct Pair {
+    THcDCHit* hit1;
+    THcDCHit* hit2;
+    Double_t x, y;
+  };
+  Pair pairs[MAX_NUMBER_PAIRS];
+  //	
+  Int_t ntest_points=0;
+  for(Int_t ihit1=0;ihit1<fNhits-1;ihit1++) {
+    THcDCHit* hit1=fHits[ihit1];
+    THcDriftChamberPlane* plane1 = hit1->GetWirePlane();
+    for(Int_t ihit2=ihit1+1;ihit2<fNhits;ihit2++) {
+      if(ntest_points < MAX_NUMBER_PAIRS) {
+	THcDCHit* hit2=fHits[ihit2];
+	THcDriftChamberPlane* plane2 = hit2->GetWirePlane();
+	Double_t determinate = plane1->GetXsp()*plane2->GetYsp()
+	  -plane1->GetYsp()*plane2->GetXsp();
+	if(TMath::Abs(determinate) > 0.3) { // 0.3 is sin(alpha1-alpha2)=sin(17.5)
+	  pairs[ntest_points].hit1 = hit1;
+	  pairs[ntest_points].hit2 = hit2;
+	  pairs[ntest_points].x = (hit1->GetPos()*plane2->GetYsp()
+				   - hit2->GetPos()*plane1->GetYsp())
+	    /determinate;
+	  pairs[ntest_points].y = (hit2->GetPos()*plane1->GetXsp()
+				   - hit1->GetPos()*plane2->GetXsp())
+	    /determinate;
+	  ntest_points++;
+	}
+      }
+    }
+  }
+  Int_t ncombos=0;
+  struct Combo {
+    Pair* pair1;
+    Pair* pair2;
+  };
+  Combo combos[10*MAX_NUMBER_PAIRS];
+  for(Int_t ipair1=0;ipair1<ntest_points-1;ipair1++) {
+    for(Int_t ipair2=ipair1+1;ipair2<ntest_points;ipair2++) {
+      if(ncombos < 10*MAX_NUMBER_PAIRS) {
+	Double_t dist2 = pow(pairs[ipair1].x - pairs[ipair2].x,2)
+	  + pow(pairs[ipair1].y - pairs[ipair2].y,2);
+	if(dist2 <= fSpacePointCriterion) {
+	  combos[ncombos].pair1 = &pairs[ipair1];
+	  combos[ncombos].pair2 = &pairs[ipair2];
+	  ncombos++;
+	}
+      }
+    }
+  }
+  // Loop over all valid combinations and build space points
+  //if (fhdebugflagpr) cout << "looking for hard Space Point combos = " << ncombos << endl;
+  for(Int_t icombo=0;icombo<ncombos;icombo++) {
+    THcDCHit* hits[4];
+    hits[0]=combos[icombo].pair1->hit1;
+    hits[1]=combos[icombo].pair1->hit2;
+    hits[2]=combos[icombo].pair2->hit1;
+    hits[3]=combos[icombo].pair2->hit2;
+    // Get Average Space point xt, yt
+    Double_t xt = (combos[icombo].pair1->x + combos[icombo].pair2->x)/2.0;
+    Double_t yt = (combos[icombo].pair1->y + combos[icombo].pair2->y)/2.0;
+    // Loop over space points
+    if(fNSpacePoints > 0) {
+      Int_t add_flag=1;
+      for(Int_t ispace=0;ispace<fNSpacePoints;ispace++) {
+	THcSpacePoint* sp = (THcSpacePoint*)(*fSpacePoints)[ispace];
+	if(sp->GetNHits() > 0) {
+	  Double_t sqdist_test = pow(xt - sp->GetX(),2) + pow(yt - sp->GetY(),2);
+	  // I (who is I) want to be careful if sqdist_test is bvetween 1 and
+	  // 3 fSpacePointCriterion.  Let me ignore not add a new point the
+	  if(sqdist_test < 3*fSpacePointCriterion) {
+	    add_flag = 0;	// do not add a new space point
+	  }
+	  if(sqdist_test < fSpacePointCriterion) {
+	    // This is a real match
+	    // Add the new hits to the existing space point
+	    Int_t iflag[4];
+	    iflag[0]=0;iflag[1]=0;iflag[2]=0;iflag[3]=0;
+	    // Find out which of the four hits in the combo are already
+	    // in the space point under consideration so that we don't
+	    // add duplicate hits to the space point
+	    for(Int_t isp_hit=0;isp_hit<sp->GetNHits();isp_hit++) {
+	      for(Int_t icm_hit=0;icm_hit<4;icm_hit++) { // Loop over combo hits
+		if(sp->GetHit(isp_hit)==hits[icm_hit]) {
+		  iflag[icm_hit] = 1;
+		}
+	      }
+	    }
+	    // Remove duplicated pionts in the combo so we don't add
+	    // duplicate hits to the space point
+	    for(Int_t icm1=0;icm1<3;icm1++) {
+	      for(Int_t icm2=icm1+1;icm2<4;icm2++) {
+		if(hits[icm1]==hits[icm2]) {
+		  iflag[icm2] = 1;
+		}
+	      }
+	    }
+	    // Add the unique combo hits to the space point
+	    for(Int_t icm=0;icm<4;icm++) {
+	      if(iflag[icm]==0) {
+		sp->AddHit(hits[icm]);
+	      }
+	    }
+	    sp->IncCombos();
+	    //            cout << " number of combos = " << sp->GetCombos() << endl;
+	    // Terminate loop since this combo can only belong to one space point
+	    break;
+	  }
+	}
+      }// End of loop over existing space points
+      // Create a new space point if more than 2*space_point_criteria
+      if(fNSpacePoints < MAX_SPACE_POINTS) {
+	if(add_flag) {
+          //if (fhdebugflagpr) cout << " add glag = " << add_flag << " space pts =  " << fNSpacePoints << endl ;
+	  THcSpacePoint* sp = (THcSpacePoint*)fSpacePoints->ConstructedAt(fNSpacePoints++);
+	  sp->Clear();
+	  sp->SetXY(xt, yt);
+	  sp->SetCombos(1);
+	  sp->AddHit(hits[0]);
+	  sp->AddHit(hits[1]);
+	  if(hits[0] != hits[2] && hits[1] != hits[2]) {
+	    sp->AddHit(hits[2]);
+	  }
+	  if(hits[0] != hits[3] && hits[1] != hits[3]) {
+	    sp->AddHit(hits[3]);
+	  }
+	}
+      }
+    } else {// Create first space point
+      // This duplicates code above.  Need to see if we can restructure
+      // to avoid
+      THcSpacePoint* sp = (THcSpacePoint*)fSpacePoints->ConstructedAt(fNSpacePoints++);
+      sp->Clear();
+      sp->SetXY(xt, yt);
+      sp->SetCombos(1);
+      sp->AddHit(hits[0]);
+      sp->AddHit(hits[1]);
+      if(hits[0] != hits[2] && hits[1] != hits[2]) {
+	sp->AddHit(hits[2]);
+      }
+      if(hits[0] != hits[3] && hits[1] != hits[3]) {
+	sp->AddHit(hits[3]);
+      }
+      //if (fhdebugflagpr) cout << "1st hard Space Point " << xt << " " << yt << " Space point # ="  << fNSpacePoints << " combos = " << sp->GetCombos() << endl;
+    }//End check on 0 space points
+  }//End loop over combos
+  //if (fhdebugflagpr) cout << " finished findspacept # of sp pts = " << fNSpacePoints << endl;
+  return(fNSpacePoints);
+}
 
-  delete [] fNWires;  fNWires = NULL;
-  //  delete [] fSpacing;  fSpacing = NULL;
-  //  delete [] fCenter;   fCenter = NULL; // This 2D. What is correct way to delete?
-
-  //  delete [] fRA_c;    fRA_c    = NULL;
-  //  delete [] fRA_p;    fRA_p    = NULL;
-  //  delete [] fRA;      fRA      = NULL;
-  //  delete [] fLA_c;    fLA_c    = NULL;
-  //  delete [] fLA_p;    fLA_p    = NULL;
-  //  delete [] fLA;      fLA      = NULL;
-  //  delete [] fRT_c;    fRT_c    = NULL;
-  //  delete [] fRT;      fRT      = NULL;
-  //  delete [] fLT_c;    fLT_c    = NULL;
-  //  delete [] fLT;      fLT      = NULL;
-  
-  //  delete [] fRGain;   fRGain   = NULL;
-  //  delete [] fLGain;   fLGain   = NULL;
-  //  delete [] fRPed;    fRPed    = NULL;
-  //  delete [] fLPed;    fLPed    = NULL;
-  //  delete [] fROff;    fROff    = NULL;
-  //  delete [] fLOff;    fLOff    = NULL;
-  //  delete [] fTWalkPar; fTWalkPar = NULL;
-  //  delete [] fTrigOff; fTrigOff = NULL;
-
-  //  delete [] fHitPad;  fHitPad  = NULL;
-  //  delete [] fTime;    fTime    = NULL;
-  //  delete [] fdTime;   fdTime   = NULL;
-  //  delete [] fYt;      fYt      = NULL;
-  //  delete [] fYa;      fYa      = NULL;
+//_____________________________________________________________________________
+// HMS Specific?
+Int_t THcDriftChamber::DestroyPoorSpacePoints()
+{
+  Int_t nhitsperplane[fNPlanes];
+
+  Int_t spacepointsgood[fNSpacePoints];
+  Int_t ngood=0;
+
+  for(Int_t i=0;i<fNSpacePoints;i++) {
+    spacepointsgood[i] = 0;
+  }
+  for(Int_t isp=0;isp<fNSpacePoints;isp++) {
+    Int_t nplanes_hit = 0;
+    for(Int_t ip=0;ip<fNPlanes;ip++) {
+      nhitsperplane[ip] = 0;
+    }
+    // Count # hits in each plane for this space point
+    THcSpacePoint* sp = (THcSpacePoint*)(*fSpacePoints)[isp];
+    for(Int_t ihit=0;ihit<sp->GetNHits();ihit++) {
+      THcDCHit* hit=sp->GetHit(ihit);
+      // hit_order(hit) = ihit;
+      Int_t ip = hit->GetPlaneIndex();
+      nhitsperplane[ip]++;
+    }
+    // Count # planes that have hits
+    for(Int_t ip=0;ip<fNPlanes;ip++) {
+      if(nhitsperplane[ip] > 0) {
+	nplanes_hit++;
+      }
+    }
+    if(nplanes_hit >= fMinHits && nhitsperplane[YPlaneInd]>0
+       && nhitsperplane[YPlanePInd] > 0) {
+      spacepointsgood[ngood++] = isp; // Build list of good points
+    } else {
+      //      if (fhdebugflagpr) cout << "Missing Y-hit!!";
+    }
+  }
+
+  // Remove the bad space points
+  Int_t nremoved=fNSpacePoints-ngood;
+  fNSpacePoints = ngood;
+  for(Int_t isp=0;isp<fNSpacePoints;isp++) { // New index num ber
+    Int_t osp=spacepointsgood[isp]; // Original index number
+    if(osp > isp) {
+      // Does this work, or do we have to copy each member?
+      // If it doesn't we should overload the = operator
+      //(*fSpacePoints)[isp] = (*fSpacePoints)[osp];
+        THcSpacePoint* spi = (THcSpacePoint*)(*fSpacePoints)[isp];
+        THcSpacePoint* spo = (THcSpacePoint*)(*fSpacePoints)[osp];
+        spi->Clear();
+        Double_t xt,yt;
+        xt=spo->GetX();
+        yt=spo->GetY();
+        spi->SetXY(xt, yt);
+        for(Int_t ihit=0;ihit<spo->GetNHits();ihit++) {
+            THcDCHit* hit = spo->GetHit(ihit);
+           spi->AddHit(hit);
+	}         
+    }
+  }
+  return nremoved;
+}
+    
+//_____________________________________________________________________________
+// HMS Specific?
+  /*
+   Purpose and Methods :  This routine loops over space points and 
+                          looks at all hits in the space
+                          point. If more than 1 hit is in the same 
+                          plane then the space point is cloned with
+                          all combinations of 1 wire per plane.  The 
+                          requirements for cloning are:  1) at least 
+                          4 planes fire, and 2) no more than 6 planes 
+                          have multiple hits.      
+  */
+Int_t THcDriftChamber::SpacePointMultiWire()
+{
+  Int_t nhitsperplane[fNPlanes];
+  THcDCHit* hits_plane[fNPlanes][MAX_HITS_PER_POINT];
+
+  Int_t nsp_check;
+  //Int_t nplanes_single;
+
+  Int_t nsp_tot=fNSpacePoints;
+  Int_t nsp_totl=fNSpacePoints;
+  //if (fhdebugflagpr) cout << "Start  Multiwire # of sp pts = " << nsp_totl << endl; 
+
+  for(Int_t isp=0;isp<nsp_totl;isp++) {
+    Int_t nplanes_hit = 0;	// Number of planes with hits
+    Int_t nplanes_mult = 0;	// Number of planes with multiple hits
+    Int_t nsp_new = 1;
+    Int_t newsp_num=0;
+    //if (fhdebugflagpr) cout << "Looping thru space pts at # = " << isp << " total = " << fNSpacePoints << endl; 
+
+    for(Int_t ip=0;ip<fNPlanes;ip++) {
+      nhitsperplane[ip] = 0;
+       for(Int_t ih=0;ih<MAX_HITS_PER_POINT;ih++) {
+         hits_plane[ip][ih] = 0;
+       }
+    }
+    // Sort Space Points hits by plane
+    THcSpacePoint* sp = (THcSpacePoint*)(*fSpacePoints)[isp];
+    for(Int_t ihit=0;ihit<sp->GetNHits();ihit++) { // All hits in SP
+      THcDCHit* hit=sp->GetHit(ihit);
+      //      hit_order Make a hash
+      // hash(hit) = ihit;
+      Int_t ip = hit->GetPlaneIndex();
+      hits_plane[ip][nhitsperplane[ip]++] = hit;
+      //if (fhdebugflagpr) cout << " hit = " << ihit+1 << " plane index = " << ip << " nhitsperplane = " << nhitsperplane[ip] << endl;
+    }
+    for(Int_t ip=0;ip<fNPlanes;ip++) {
+      if(nhitsperplane[ip] > 0) {
+	nplanes_hit++;
+	nsp_new *= nhitsperplane[ip];
+	if(nhitsperplane[ip] > 1) nplanes_mult++;
+        //if (fhdebugflagpr) cout << "Found plane with multi hits plane =" << ip+1 << " nplane_hit = "<< nplanes_hit << " nsp_new = " <<nsp_new << " nplane_mult = "<< nplanes_mult  << endl; 
+      }
+    }
+    --nsp_new;
+    nsp_check=nsp_tot + nsp_new;
+    //nplanes_single = nplanes_hit - nplanes_mult;
+    //if (fhdebugflagpr) cout << " # of new space points = " << nsp_new << " total now = " << nsp_tot<< endl;
+    // Check if cloning conditions are met
+    Int_t ntot = 0;
+    if(nplanes_hit >= 4 && nplanes_mult < 4 && nplanes_mult >0
+       && nsp_check < 20) {
+      //if (fhdebugflagpr) cout << " Cloning space point " << endl;      
+      // Order planes by decreasing # of hits
+      
+      Int_t maxplane[fNPlanes];
+      for(Int_t ip=0;ip<fNPlanes;ip++) {
+	maxplane[ip] = ip;
+      }
+      // Sort by decreasing # of hits
+      for(Int_t ip1=0;ip1<fNPlanes-1;ip1++) {
+	for(Int_t ip2=ip1+1;ip2<fNPlanes;ip2++) {
+	  if(nhitsperplane[maxplane[ip2]] > nhitsperplane[maxplane[ip1]]) {
+	    Int_t temp = maxplane[ip1];
+	    maxplane[ip1] = maxplane[ip2];
+	    maxplane[ip2] = temp;
+	  }
+	}
+      }
+      // First fill clones with 1 hit each from the 3 planes with the most hits
+      for(Int_t n1=0;n1<nhitsperplane[maxplane[0]];n1++) {
+	for(Int_t n2=0;n2<nhitsperplane[maxplane[1]];n2++) {
+	  for(Int_t n3=0;n3<nhitsperplane[maxplane[2]];n3++) {
+	    ntot++;
+	    newsp_num = fNSpacePoints; // 
+	    //if (fhdebugflagpr) cout << " new space pt num = " << newsp_num  << " " << fNSpacePoints <<  endl;
+	    //THcSpacePoint* newsp;
+	    if(n1==0 && n2==0 && n3==0) {
+	      newsp_num = isp; // Copy over the original SP
+	      THcSpacePoint* newsp = (THcSpacePoint*)fSpacePoints->ConstructedAt(newsp_num);//= (THcSpacePoint*)(*fSpacePoints)[newsp_num];
+              //if (fhdebugflagpr) cout << " Copy over original SP " << endl;
+	      // newsp = sp;
+	      Int_t combos_save=sp->GetCombos();
+	      newsp->Clear();	// Clear doesn't clear X, Y
+	      // if (fhdebugflagpr) cout << " original sp #hits combos X y " << sp->GetCombos() << sp->GetNHits() << sp->GetX() << " " <<  sp->GetY() << endl;
+              newsp->SetXY(sp->GetX(), sp->GetY());
+	      newsp->SetCombos(combos_save);
+	      newsp->AddHit(hits_plane[maxplane[0]][n1]);
+	      newsp->AddHit(hits_plane[maxplane[1]][n2]);
+	      newsp->AddHit(hits_plane[maxplane[2]][n3]);
+	      newsp->AddHit(hits_plane[maxplane[3]][0]);
+	      if(nhitsperplane[maxplane[4]] == 1) {
+		newsp->AddHit(hits_plane[maxplane[4]][0]);
+		if(nhitsperplane[maxplane[5]] == 1) 
+		  newsp->AddHit(hits_plane[maxplane[5]][0]);
+	      }
+	    } else {
+	      // if (fhdebugflagpr) cout << " setting other sp " << "# space pts now = " << fNSpacePoints << endl;
+	      THcSpacePoint* newsp = (THcSpacePoint*)fSpacePoints->ConstructedAt(newsp_num);
+              fNSpacePoints++; 
+	      Int_t combos_save=sp->GetCombos();
+	      newsp->Clear();
+	      newsp->SetXY(sp->GetX(), sp->GetY());
+	      newsp->SetCombos(combos_save);
+	      newsp->AddHit(hits_plane[maxplane[0]][n1]);
+	      newsp->AddHit(hits_plane[maxplane[1]][n2]);
+	      newsp->AddHit(hits_plane[maxplane[2]][n3]);
+	      newsp->AddHit(hits_plane[maxplane[3]][0]);
+	      if(nhitsperplane[maxplane[4]] == 1) {
+		newsp->AddHit(hits_plane[maxplane[4]][0]);
+		if(nhitsperplane[maxplane[5]] == 1) 
+		  newsp->AddHit(hits_plane[maxplane[5]][0]);
+	      }
+	    }
+	  }
+	}
+      }
+      // In the ENGINE, we loop over the clones and order the hits in the
+      // same order as the parent SP.  It is not done here because it is a little
+      // tricky.  Is it necessary?
+      nsp_tot += (ntot-1);
+    } else {
+      ntot=1; // space point not to be cloned
+    }
+  }
+  assert (nsp_tot > 0); // program terminates if nsp_tot <=0
+  Int_t nadded=0;
+  if(nsp_tot <= 20) {
+    nadded = nsp_tot - fNSpacePoints;
+    // fNSpacePoints = nsp_tot;
+  }
+  //if (fhdebugflagpr) cout << " Added space pts " << nadded << " total space pts = " << fNSpacePoints << endl;      
+ 
+  // In Fortran, fill in zeros.
+  return(nadded);
 }
 
 //_____________________________________________________________________________
-inline 
-void THcDriftChamber::ClearEvent()
+// Generic
+void THcDriftChamber::ChooseSingleHit()
 {
-  // Reset per-event data.
+  // Look at all hits in a space point.  If two hits are in the same plane,
+  // reject the one with the longer drift time.
 
-  fTrackProj->Clear();
+  for(Int_t isp=0;isp<fNSpacePoints;isp++) {
+    THcSpacePoint* sp = (THcSpacePoint*)(*fSpacePoints)[isp];
+    Int_t startnum = sp->GetNHits();
+    Int_t goodhit[startnum];
+    
+    for(Int_t ihit=0;ihit<startnum;ihit++) {
+      goodhit[ihit] = 1;
+    }
+    // For each plane, mark all hits longer than the shortest drift time
+    for(Int_t ihit1=0;ihit1<startnum-1;ihit1++) {
+      THcDCHit* hit1 = sp->GetHit(ihit1);
+      Int_t plane1=hit1->GetPlaneIndex();
+      Double_t tdrift1 = hit1->GetTime();
+      for(Int_t ihit2=ihit1+1;ihit2<startnum;ihit2++) {
+	THcDCHit* hit2 = sp->GetHit(ihit2);
+	Int_t plane2=hit2->GetPlaneIndex();
+	Double_t tdrift2 = hit2->GetTime();
+	if(plane1 == plane2) {
+	  if(tdrift1 > tdrift2) {
+	    goodhit[ihit1] = 0;
+	  } else {
+	    goodhit[ihit2] = 0;
+	  }
+	  // if (fhdebugflagpr) cout << " Rejecting hit " << ihit1 << " " << tdrift1 << " " << ihit2 << " " << tdrift2 << endl; 
+	}
+      }
+    }
+    // Gather the remaining hits
+    Int_t finalnum = 0;
+    for(Int_t ihit=0;ihit<startnum;ihit++) {
+      //THcDCHit* hit = sp->GetHit(ihit);
+	//	if (fhdebugflagpr) cout << " good hit = "<< ihit << " " << goodhit[ihit] << " time = " << hit->GetTime() << endl;
+      if(goodhit[ihit] > 0) {	// Keep this hit
+	if (ihit > finalnum) {	// Move hit 
+	  sp->ReplaceHit(finalnum++, sp->GetHit(ihit));
+	} else {
+          finalnum++ ;
+        }
+      }
+    }
+    sp->SetNHits(finalnum);
+    // if (fhdebugflagpr) cout << " choose single hit start # of hits = " <<  startnum << " final # = " <<finalnum << endl; 
+  }
+}
+//_____________________________________________________________________________
+// Generic
+void THcDriftChamber::SelectSpacePoints()
+//    This routine goes through the list of space_points and space_point_hits
+//    found by find_space_points and only accepts those with 
+//    number of hits > min_hits
+//    number of combinations > min_combos
+{
+  Int_t sp_count=0;
+  for(Int_t isp=0;isp<fNSpacePoints;isp++) {
+    // Include fEasySpacePoint because ncombos not filled in
+    THcSpacePoint* sp = (THcSpacePoint*)(*fSpacePoints)[isp];
+    // if (fhdebugflagpr) cout << " looping sp points " << sp->GetCombos() << " " << fMinCombos << " " << fEasySpacePoint << " " << sp->GetNHits() << " " <<  fMinHits << endl;
+    if(sp->GetCombos() >= fMinCombos || fEasySpacePoint) {
+      if(sp->GetNHits() >= fMinHits) {
+	if(isp > sp_count) {
+	  //	  (*fSpacePoints)[sp_count] = (*fSpacePoints)[isp];
+        THcSpacePoint* sp1 = (THcSpacePoint*)(*fSpacePoints)[sp_count];
+        //if (fhdebugflagpr) cout << " select space pt = " << isp << endl;
+        sp1->Clear();
+        Double_t xt,yt;
+        xt=sp->GetX();
+        yt=sp->GetY();
+        sp1->SetXY(xt, yt);
+        sp1->SetCombos(sp->GetCombos());
+        for(Int_t ihit=0;ihit<sp->GetNHits();ihit++) {
+            THcDCHit* hit = sp->GetHit(ihit);
+           sp1->AddHit(hit);
+	}         
+	}     
+	sp_count++;
+      }
+    }
+  }
+  // if(sp_count < fNSpacePoints)    if (fhdebugflagpr) cout << "Reduced from " << fNSpacePoints << " to " << sp_count << " space points" << endl;
+  fNSpacePoints = sp_count;
+  //for(Int_t isp=0;isp<fNSpacePoints;isp++) {
+  //  THcSpacePoint* sp = (THcSpacePoint*)(*fSpacePoints)[isp];
+    //if (fhdebugflagpr) cout << " sp pt = " << isp+1 << " # of hits = " << sp->GetNHits() << endl;
+    //for(Int_t ihit=0;ihit<sp->GetNHits();ihit++) {
+  //THcDCHit* hit = sp->GetHit(ihit);
+      //THcDriftChamberPlane* plane=hit->GetWirePlane();
+      //        if (fhdebugflagpr) cout << ihit+1 << "selecting " << plane->GetPlaneNum() << " " << plane->GetChamberNum() << " " << hit->GetTime() << " " << hit->GetDist() << " " << plane->GetCentralTime() << " " << plane->GetDriftTimeSign() << endl;
+  //    }
+  //  }
+}
+
+void THcDriftChamber::CorrectHitTimes()
+{
+  // Use the rough hit positions in the chambers to correct the drift time
+  // for hits in the space points.
+
+  // Assume all wires for a plane are read out on the same side (l/r or t/b).
+  // If the wire is closer to horizontal, read out left/right.  If nearer
+  // vertical, assume top/bottom.  (Note, this is not always true for the
+  // SOS u and v planes.  They have 1 card each on the side, but the overall
+  // time offset per card will cancel much of the error caused by this.  The
+  // alternative is to check by card, rather than by plane and this is harder.
+  //if (fhdebugflagpr) cout << "In correcthittimes fNSpacePoints = " << fNSpacePoints << endl;
+  for(Int_t isp=0;isp<fNSpacePoints;isp++) {
+    THcSpacePoint* sp = (THcSpacePoint*)(*fSpacePoints)[isp];
+    Double_t x = sp->GetX();
+    Double_t y = sp->GetY();
+    for(Int_t ihit=0;ihit<sp->GetNHits();ihit++) {
+      THcDCHit* hit = sp->GetHit(ihit);
+      THcDriftChamberPlane* plane=hit->GetWirePlane();
+
+      // How do we know this correction only gets applied once?  Is
+      // it determined that a given hit can only belong to one space point?
+      Double_t time_corr = plane->GetReadoutX() ?
+	y*plane->GetReadoutCorr()/fWireVelocity :
+	x*plane->GetReadoutCorr()/fWireVelocity;
+      
+      //     if (fhdebugflagpr) cout << "Correcting hit " << hit << " " << plane->GetPlaneNum() << " " << isp << "/" << ihit << "  " << x << "," << y << endl;
+      // Fortran ENGINE does not do this check, so hits can get "corrected"
+      // multiple times if they belong to multiple space points.
+      // To reproduce the precise ENGINE behavior, remove this if condition.
+      if(fFixPropagationCorrection==0) { // ENGINE behavior
+	hit->SetTime(hit->GetTime() - plane->GetCentralTime()
+		     + plane->GetDriftTimeSign()*time_corr);
+	hit->ConvertTimeToDist();
+	//      hit->SetCorrectedStatus(1);
+      } else {
+	// New behavior: Save corrected distance with the hit in the space point
+	// so that the same hit can have a different correction depending on
+	// which space point it is in.
+	//
+	// This is a hack now because the converttimetodist method is connected to the hit
+	// so I compute the corrected time and distance, and then restore the original
+	// time and distance.  Can probably add a method to hit that does a conversion on a time
+	// but does not modify the hit data.
+	Double_t time=hit->GetTime();
+	Double_t dist=hit->GetDist();
+	hit->SetTime(time - plane->GetCentralTime()
+		     + plane->GetDriftTimeSign()*time_corr);
+	hit->ConvertTimeToDist();
+	sp->SetHitDist(ihit, hit->GetDist());
+	hit->SetTime(time);	// Restore time
+	hit->SetDist(dist);	// Restore distance
+      }
+    }
+  }
+}	   
+UInt_t THcDriftChamber::Count1Bits(UInt_t x)
+// From http://graphics.stanford.edu/~seander/bithacks.html
+{
+  x = x - ((x >> 1) & 0x55555555);
+  x = (x & 0x33333333) + ((x >> 2) & 0x33333333);
+  return (((x + (x >> 4)) & 0x0F0F0F0F) * 0x01010101) >> 24;
 }
 
 //_____________________________________________________________________________
-Int_t THcDriftChamber::Decode( const THaEvData& evdata )
+void THcDriftChamber::LeftRight()
 {
+  // For each space point,
+  // Fit stubs to all possible left-right combinations of drift distances
+  // and choose the set with the minimum chi**2.
+
+  for(Int_t isp=0; isp<fNSpacePoints; isp++) {
+    // Build a bit pattern of which planes are hit
+    THcSpacePoint* sp = (THcSpacePoint*)(*fSpacePoints)[isp];
+    Int_t nhits = sp->GetNHits();
+    UInt_t bitpat  = 0;		// Bit pattern of which planes are hit
+    Double_t minchi2 = 1.0e10;
+    Double_t tmp_minchi2;
+    Double_t minxp = 0.25;
+    Int_t hasy1 = -1;
+    Int_t hasy2 = -1;
+    Int_t plusminusknown[nhits];
+    Int_t plusminusbest[nhits];
+    Int_t plusminus[nhits];	// ENGINE makes this array float.  Why?
+    Int_t tmp_plusminus[nhits];
+    Int_t plane_list[nhits];
+    Double_t stub[4];
+    Double_t tmp_stub[4];
+    Int_t nplusminus;
+
+    if(nhits < 0) {
+      if (fhdebugflagpr) cout << "THcDriftChamber::LeftRight() nhits < 0" << endl;
+    } else if (nhits==0) {
+      if (fhdebugflagpr) cout << "THcDriftChamber::LeftRight() nhits = 0" << endl;
+    }
+    for(Int_t ihit=0;ihit < nhits;ihit++) {
+      THcDCHit* hit = sp->GetHit(ihit);
+      Int_t pindex = hit->GetPlaneIndex();
+      plane_list[ihit] = pindex;
 
-  // Get the Hall C style hitlist (fRawHitList) for this event
-  Int_t nhits = THcHitList::DecodeToHitList(evdata);
+      bitpat |= 1<<pindex;
 
-  // fRawHitList is TClones array of THcDCHit objects
-  for(Int_t ihit = 0; ihit < fNRawHits ; ihit++) {
-    THcDCHit* hit = (THcDCHit *) fRawHitList->At(ihit);
-    cout << ihit << " : " << hit->fPlane << ":" << hit->fCounter << " : "
-	 << endl;
-    for(Int_t imhit = 0; imhit < hit->fNHits; imhit++) {
-      cout << "                     " << imhit << " " << hit->fTDC[imhit]
-	   << endl;
+      plusminusknown[ihit] = 0;
+
+      if(pindex == YPlaneInd) hasy1 = ihit;
+      if(pindex == YPlanePInd) hasy2 = ihit;
+    }
+    nplusminus = 1<<nhits;
+    if(fHMSStyleChambers) {
+      Int_t smallAngOK = (hasy1>=0) && (hasy2>=0);
+      if(fSmallAngleApprox !=0 && smallAngOK) { // to small Angle L/R for Y,Y' planes
+	if(sp->GetHit(hasy2)->GetPos() <=
+	   sp->GetHit(hasy1)->GetPos()) {
+	  plusminusknown[hasy1] = -1;
+	  plusminusknown[hasy2] = 1;
+	} else {
+	  plusminusknown[hasy1] = 1;
+	  plusminusknown[hasy2] = -1;
+	}
+	nplusminus = 1<<(nhits-2);
+	//	if (fhdebugflagpr) cout << " Small angle approx = " << smallAngOK << " " << plusminusknown[hasy1] << endl;
+	//if (fhdebugflagpr) cout << "pm =  " << plusminusknown[hasy2] << " " << hasy1 << " " << hasy2 << endl;
+	//if (fhdebugflagpr) cout << " Plane index " << YPlaneInd << " " << YPlanePInd << endl;
+      }
+    } else {			// SOS Style
+      if(fSmallAngleApprox !=0) {
+	// Brookhaven style chamber L/R code
+	Int_t npaired=0;
+	for(Int_t ihit1=0;ihit1 < nhits;ihit1++) {
+	  THcDCHit* hit1 = sp->GetHit(ihit1);
+	  Int_t pindex1=hit1->GetPlaneIndex();
+	  if((pindex1%2)==0) { // Odd plane (or even index)
+	    for(Int_t ihit2=0;ihit2<nhits;ihit2++) {
+	      THcDCHit* hit2 = sp->GetHit(ihit2);
+	      if(hit2->GetPlaneIndex()-pindex1 == 1) { // Adjacent plane
+		if(hit2->GetPos() <= hit1->GetPos()) {
+		  plusminusknown[ihit1] = -1;
+		  plusminusknown[ihit2] = 1;
+		} else {
+		  plusminusknown[ihit1] = 1;
+		  plusminusknown[ihit2] = -1;
+		}
+		npaired+=2;
+	      }
+	    }
+	  }
+	}
+	nplusminus = 1 << (nhits-npaired);
+      }
+    }
+    if(nhits < 2) {
+      if (fdebugstubchisq) cout << "THcDriftChamber::LeftRight: numhits-2 < 0" << endl;
+    } else if (nhits == 2) {
+      if (fdebugstubchisq) cout << "THcDriftChamber::LeftRight: numhits-2 = 0" << endl;
+    }
+    Int_t nplaneshit = Count1Bits(bitpat);
+    //if (fhdebugflagpr) cout << " num of pm = " << nplusminus << " num of hits =" << nhits << endl;
+    // Use bit value of integer word to set + or -
+    // Loop over all combinations of left right.
+    for(Int_t pmloop=0;pmloop<nplusminus;pmloop++) {
+      Int_t iswhit = 1;
+      for(Int_t ihit=0;ihit<nhits;ihit++) {
+	if(plusminusknown[ihit]!=0) {
+	  plusminus[ihit] = plusminusknown[ihit];
+	} else {
+	  // Max hits per point has to be less than 32.  
+	  if(pmloop & iswhit) {
+	    plusminus[ihit] = 1;
+	  } else {
+	    plusminus[ihit] = -1;
+	  }
+	  iswhit <<= 1;
+	}
+      }
+      if (nplaneshit >= fNPlanes-1) {
+	Double_t chi2 = FindStub(nhits, sp,
+				     plane_list, bitpat, plusminus, stub);
+	if (fdebugstubchisq) cout << " pmloop = " << pmloop << " chi2 = " << chi2 << endl;
+	if(chi2 < minchi2) {
+	  if(fHMSStyleChambers) { // Perhaps a different flag here
+	    // Take best chi2 IF x' of the stub agrees with x' as expected from x.
+	    // Sometimes an incorrect x' gives a good chi2 for the stub, even though it is
+	    // not the correct left/right combination for the real track.
+	    // Rotate x'(=stub(3)) to hut coordinates and compare to x' expected from x.
+	    // THIS ASSUMES STANDARD HMS TUNE!!!!, for which x' is approx. x/875.
+	    if(stub[2]*fTanBeta[plane_list[0]]==-1.0) {
+	      if (fhdebugflagpr) cout << "THcDriftChamber::LeftRight() Error 3" << endl;
+	    }
+	    Double_t xp_fit=stub[2]-fTanBeta[plane_list[0]]
+	      /(1+stub[2]*fTanBeta[plane_list[0]]);
+	    // Tune depdendent.  Definitely HMS specific
+	    Double_t xp_expect = sp->GetX()/875.0;
+	    if(TMath::Abs(xp_fit-xp_expect)<fStubMaxXPDiff) {
+	      minchi2 = chi2;
+	      for(Int_t ihit=0;ihit<nhits;ihit++) {
+		plusminusbest[ihit] = plusminus[ihit];
+	      }
+	      Double_t *spstub = sp->GetStubP();
+	      for(Int_t i=0;i<4;i++) {
+		spstub[i] = stub[i];
+	      }
+	    } else {		// Record best stub failing angle cut
+	      tmp_minchi2 = chi2;
+	      for(Int_t ihit=0;ihit<nhits;ihit++) {
+		tmp_plusminus[ihit] = plusminus[ihit];
+	      }
+	      for(Int_t i=0;i<4;i++) {
+		tmp_stub[i] = stub[i];
+	      }
+	    }
+	  } else { // Not HMS specific
+	    minchi2 = chi2;
+	    for(Int_t ihit=0;ihit<nhits;ihit++) {
+	      plusminusbest[ihit] = plusminus[ihit];
+	    }
+	    Double_t *spstub = sp->GetStubP();
+	    for(Int_t i=0;i<4;i++) {
+	      spstub[i] = stub[i];
+	    }
+	  }
+	}
+      } else if (nplaneshit >= fNPlanes-2 && fHMSStyleChambers) { // Two planes missing
+	Double_t chi2 = FindStub(nhits, sp,
+				     plane_list, bitpat, plusminus, stub); 
+	//if(debugging)
+	//if (fhdebugflagpr) cout << "pmloop=" << pmloop << " Chi2=" << chi2 << endl;
+	// Isn't this a bad idea, doing == with reals
+	if(stub[2]*fTanBeta[plane_list[0]] == -1.0) {
+	  if (fhdebugflagpr) cout << "THcDriftChamber::LeftRight() Error 3" << endl;
+	}
+	Double_t xp_fit=stub[2]-fTanBeta[plane_list[0]]
+	  /(1+stub[2]*fTanBeta[plane_list[0]]);
+	if(TMath::Abs(xp_fit) <= minxp) {
+	  minxp = TMath::Abs(xp_fit);
+	  minchi2 = chi2;
+	  for(Int_t ihit=0;ihit<nhits;ihit++) {
+	    plusminusbest[ihit] = plusminus[ihit];
+	  }
+	  Double_t *spstub = sp->GetStubP();
+	  for(Int_t i=0;i<4;i++) {
+	    spstub[i] = stub[i];
+	  }
+	}
+      } else {
+	if (fhdebugflagpr) cout << "Insufficient planes hit in THcDriftChamber::LeftRight()" << bitpat <<endl;
+      }
+    } // End loop of pm combinations
+
+    Double_t *spstub = sp->GetStubP();
+    if(minchi2 > 9.9e9) {	// No track passed angle cut
+      minchi2 = tmp_minchi2;
+      for(Int_t ihit=0;ihit<nhits;ihit++) {
+	plusminusbest[ihit] = tmp_plusminus[ihit];
+      }
+      for(Int_t i=0;i<4;i++) {
+	spstub[i] = tmp_stub[i];
+      }
+      
+    }
+
+    // Calculate final coordinate based on plusminusbest
+    // Update the hit positions in the space points
+    for(Int_t ihit=0; ihit<nhits; ihit++) {
+      // Save left/right status with the hit and in the space point
+      // In THcDC will decide which to used based on fix_lr flag
+      sp->GetHit(ihit)->SetLeftRight(plusminusbest[ihit]);
+      sp->SetHitLR(ihit, plusminusbest[ihit]);
+    }
+
+    // Stubs are calculated in rotated coordinate system
+    // (I think this rotates in case chambers not perpendicular to central ray)
+    Int_t pindex=plane_list[0];
+    if(spstub[2] - fTanBeta[pindex] == -1.0) {
+      if (fhdebugflagpr) cout << "THcDriftChamber::LeftRight(): stub3 error" << endl;
+    }
+    stub[2] = (spstub[2] - fTanBeta[pindex])
+      / (1.0 + spstub[2]*fTanBeta[pindex]);
+    if(spstub[2]*fSinBeta[pindex] ==  -fCosBeta[pindex]) {
+      if (fhdebugflagpr) cout << "THcDriftChamber::LeftRight(): stub4 error" << endl;
+    }
+    stub[3] = spstub[3]
+      / (spstub[2]*fSinBeta[pindex]+fCosBeta[pindex]);
+    stub[0] = spstub[0]*fCosBeta[pindex]
+      - spstub[0]*stub[2]*fSinBeta[pindex];
+    stub[1] = spstub[1]
+      - spstub[1]*stub[3]*fSinBeta[pindex];
+    for(Int_t i=0;i<4;i++) {
+      spstub[i] = stub[i];
+    }
+    //if (fhdebugflagpr) cout << " Left/Right space pt " << isp+1 << " " << stub[0]<< " " << stub[1] << " " << stub[2]<< " " << stub[3] << endl;
+      }
+  // Option to print stubs
+}
+//_____________________________________________________________________________
+Double_t THcDriftChamber::FindStub(Int_t nhits, THcSpacePoint *sp,
+				       Int_t* plane_list, UInt_t bitpat,
+				       Int_t* plusminus, Double_t* stub)
+{
+  // For a given combination of L/R, fit a stub to the space point
+  // This method does a linear least squares fit of a line to the
+  // hits in an individual chamber.  It assumes that the y slope is 0 
+  // The wire coordinate is calculated by
+  //          wire center + plusminus*(drift distance).
+  // Method is called in a loop over all combinations of plusminus
+  Double_t zeros[] = {0.0,0.0,0.0};
+  TVectorD TT; TT.Use(3, zeros); // X, X', Y
+  Double_t dpos[nhits];
+
+  for(Int_t ihit=0;ihit<nhits; ihit++) {
+    dpos[ihit] = sp->GetHit(ihit)->GetPos()
+      + plusminus[ihit]*sp->GetHit(ihit)->GetDist()
+      - fPsi0[plane_list[ihit]];
+    for(Int_t index=0;index<3;index++) {
+      TT[index]+= dpos[ihit]*fStubCoefs[plane_list[ihit]][index]
+	/fSigma[plane_list[ihit]];
     }
   }
-  cout << endl;
+  //  fAA3Inv[bitpat]->Print();
+  //  if (fhdebugflagpr) cout << TT[0] << " " << TT[1] << " " << TT[2] << endl;
+  //  TT->Print();
+
+  TT *= *fAA3Inv[bitpat];
+  // if (fhdebugflagpr) cout << TT[0] << " " << TT[1] << " " << TT[2] << endl;
 
-  return nhits;
+  // Calculate Chi2.  Remember one power of sigma is in fStubCoefs
+  stub[0] = TT[0];
+  stub[1] = TT[1];
+  stub[2] = TT[2];
+  stub[3] = 0.0;
+  Double_t chi2=0.0;
+  for(Int_t ihit=0;ihit<nhits; ihit++) {
+    chi2 += pow( dpos[ihit]/fSigma[plane_list[ihit]]
+		 - fStubCoefs[plane_list[ihit]][0]*stub[0]
+		 - fStubCoefs[plane_list[ihit]][1]*stub[1]
+		 - fStubCoefs[plane_list[ihit]][2]*stub[2]
+		 , 2);
+  }
+  return(chi2);
 }
 
 //_____________________________________________________________________________
-Int_t THcDriftChamber::ApplyCorrections( void )
+THcDriftChamber::~THcDriftChamber()
 {
-  return(0);
+  // Destructor. Remove variables from global list.
+
+  if (fhdebugflagpr) cout << fChamberNum << ": delete fSpacePoints: " << hex << fSpacePoints << endl;
+  delete fSpacePoints;
+  // Should delete the matrices
+
+  if( fIsSetup )
+    RemoveVariables();
+  if( fIsInit )
+    DeleteArrays();
+  if (fTrackProj) {
+    fTrackProj->Clear();
+    delete fTrackProj; fTrackProj = 0;
+  }
 }
 
 //_____________________________________________________________________________
-Int_t THcDriftChamber::CoarseProcess( TClonesArray& /* tracks */ )
+void THcDriftChamber::DeleteArrays()
 {
-  // Calculation of coordinates of particle track cross point with scint
-  // plane in the detector coordinate system. For this, parameters of track 
-  // reconstructed in THaVDC::CoarseTrack() are used.
-  //
-  // Apply corrections and reconstruct the complete hits.
-  //
-  //  static const Double_t sqrt2 = TMath::Sqrt(2.);
-  
-  ApplyCorrections();
+  // Delete member arrays. Used by destructor.
+  delete fCosBeta; fCosBeta = NULL;
+  delete fSinBeta; fSinBeta = NULL;
+  delete fTanBeta; fTanBeta = NULL;
+  delete fSigma; fSigma = NULL;
+  delete fPsi0; fPsi0 = NULL;
+  delete fStubCoefs; fStubCoefs = NULL;
+
+  // Need to delete each element of the fAA3Inv map
 
-  return 0;
 }
 
 //_____________________________________________________________________________
-Int_t THcDriftChamber::FineProcess( TClonesArray& tracks )
+inline 
+void THcDriftChamber::Clear( const Option_t* )
 {
-  // Reconstruct coordinates of particle track cross point with scintillator
-  // plane, and copy the data into the following local data structure:
-  //
-  // Units of measurements are meters.
+  // Reset per-event data.
+  //  fNhits = 0;
 
-  // Calculation of coordinates of particle track cross point with scint
-  // plane in the detector coordinate system. For this, parameters of track 
-  // reconstructed in THaVDC::FineTrack() are used.
+  //  fTrackProj->Clear();
+  fNhits = 0;
 
-  return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcDriftChamber::ApplyCorrections( void )
+{
+  return(0);
 }
 
 ClassImp(THcDriftChamber)
diff --git a/src/THcDriftChamber.h b/src/THcDriftChamber.h
index b9f7be4e68c9e8ddd9899a9af31cc7ac90237e73..f20daa4649d978830e2eef3426a96f9f4de777ed 100644
--- a/src/THcDriftChamber.h
+++ b/src/THcDriftChamber.h
@@ -7,71 +7,136 @@
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
+#include "THaSubDetector.h"
+#include "THcDriftChamberPlane.h"
 #include "TClonesArray.h"
-#include "THaNonTrackingDetector.h"
-#include "THcHitList.h"
-#include "THcDCHit.h"
+#include "TMatrixD.h"
 
-class THaScCalib;
+#include <map>
+#include <vector>
 
-class THcDriftChamber : public THaNonTrackingDetector, public THcHitList {
+#define MAX_SPACE_POINTS 100
+#define MAX_HITS_PER_POINT 20
+
+//#include "TMath.h"
+
+//class THaScCalib;
+class TClonesArray;
+class THcSpacePoint;
+
+class THcDriftChamber : public THaSubDetector {
 
 public:
-  THcDriftChamber( const char* name, const char* description = "",
-		   THaApparatus* a = NULL );
+  THcDriftChamber( const char* name, const char* description, Int_t chambernum,
+		   THaDetectorBase* parent = NULL );
   virtual ~THcDriftChamber();
 
-  virtual Int_t      Decode( const THaEvData& );
+  virtual Int_t Decode( const THaEvData& );
   virtual EStatus    Init( const TDatime& run_time );
-  virtual Int_t      CoarseProcess( TClonesArray& tracks );
-  virtual Int_t      FineProcess( TClonesArray& tracks );
   
+  virtual void       AddPlane(THcDriftChamberPlane *plane);
   virtual Int_t      ApplyCorrections( void );
+  virtual void       ProcessHits( void );
+  virtual Int_t      FindSpacePoints( void ) ;
+  virtual void       PrintDecode( void ) ;
+  virtual void       CorrectHitTimes( void ) ;
+  virtual void       LeftRight(void);
 
-  //  Int_t GetNHits() const { return fNhit; }
-  
+
+  virtual void   Clear( Option_t* opt="" );
+
+  Int_t GetNHits() const { return fNhits; }
+  Int_t GetNSpacePoints() const { return(fNSpacePoints);}
   Int_t GetNTracks() const { return fTrackProj->GetLast()+1; }
   const TClonesArray* GetTrackHits() const { return fTrackProj; }
-  
-  friend class THaScCalib;
+  TClonesArray* GetSpacePointsP() const { return(fSpacePoints);}
+  Int_t GetChamberNum() const { return fChamberNum;}
+  Double_t GetZPos() const {return fZPos;}
+  //  friend class THaScCalib;
+  void SetHMSStyleFlag(Int_t flag) {fHMSStyleChambers = flag;}
 
-  THcDriftChamber();  // for ROOT I/O
+  THcDriftChamber(); // for ROOT I/O
 protected:
+  Int_t f;
 
   // Calibration
 
   // Per-event data
-
-
-  // Potential Hall C parameters.  Mostly here for demonstration
-  Int_t fNPlanes;
-  Int_t* fNWires;		// Number of wires per plane
+  Int_t fNhits;
+  Int_t fNthits;
+  Int_t fN_True_RawHits;
+
+  Int_t fNPlanes;		// Number of planes in the chamber
+
+  Int_t fChamberNum;
+
+  // HMS Specific
+  Int_t YPlaneInd; 		// Index of Yplane for this chamber
+  Int_t YPlanePInd; 		// Index of Yplanep for this chamber
+  Int_t YPlaneNum;		// Absolute plane number of Yplane
+  Int_t YPlanePNum;		// Absolute plane number of Yplanep
+  // SOS Specific
+  Int_t XPlaneInd; 		// Index of Xplane for this chamber
+  Int_t XPlanePInd; 		// Index of Xplanep for this chamber
+  Int_t XPlaneNum;		// Absolute plane number of Xplane
+  Int_t XPlanePNum;		// Absolute plane number of Xplanep
+
+  // Parameters 
+  Int_t fMinHits; 		// Minimum hits required to do something
+  Int_t fMaxHits; 		// Maximum required to do something
+  Int_t fMinCombos;             // Minimum # pairs in a space point
+  Int_t fRemove_Sppt_If_One_YPlane;
+  Double_t fWireVelocity;
+  Int_t fSmallAngleApprox;
+  Double_t fStubMaxXPDiff;
+  Int_t fFixPropagationCorrection;
+  Int_t fHMSStyleChambers;
+  Int_t fhdebugflagpr;
+  Int_t fdebugstubchisq;
+  Double_t fZPos;
+  Double_t fXCenter;
+  Double_t fYCenter;
+  Double_t fSpacePointCriterion;
+  Double_t fMaxDist; 		// Max dist used in EasySpacePoint methods
+  Double_t* fSinBeta;
+  Double_t* fCosBeta;
+  Double_t* fTanBeta;
+  Double_t* fSigma;
+  Double_t* fPsi0;
+  Double_t** fStubCoefs;
+
+  std::vector<THcDriftChamberPlane*> fPlanes;
+  //  THcDriftChamberPlane* fPlanes[20]; // List of plane objects
 
   TClonesArray*  fTrackProj;  // projection of track onto scintillator plane
                               // and estimated match to TOF paddle
-  // Useful derived quantities
-  // double tan_angle, sin_angle, cos_angle;
-  
-  //  static const char NDEST = 2;
-  //  struct DataDest {
-  //    Int_t*    nthit;
-  //    Int_t*    nahit;
-  //    Double_t*  tdc;
-  //    Double_t*  tdc_c;
-  //    Double_t*  adc;
-  //    Double_t*  adc_p;
-  //    Double_t*  adc_c;
-  //    Double_t*  offset;
-  //    Double_t*  ped;
-  //    Double_t*  gain;
-  //  } fDataDest[NDEST];     // Lookup table for decoder
-
-  void           ClearEvent();
+  //  void           ClearEvent();
   void           DeleteArrays();
   virtual Int_t  ReadDatabase( const TDatime& date );
   virtual Int_t  DefineVariables( EMode mode = kDefine );
 
-  ClassDef(THcDriftChamber,0)   // Generic hodoscope class
+  void Setup(const char* name, const char* description);
+  Int_t      FindEasySpacePoint_HMS(Int_t yplane_hitind, Int_t yplanep_hitind);
+  Int_t      FindEasySpacePoint_SOS(Int_t xplane_hitind, Int_t xplanep_hitind);
+  Int_t      FindHardSpacePoints(void);
+  Int_t      DestroyPoorSpacePoints(void);
+  Int_t      SpacePointMultiWire(void);
+  void       ChooseSingleHit(void);
+  void       SelectSpacePoints(void);
+  UInt_t     Count1Bits(UInt_t x);
+  Double_t   FindStub(Int_t nhits, THcSpacePoint *sp,
+		      Int_t* plane_list, UInt_t bitpat,
+		      Int_t* plusminus, Double_t* stub);
+
+  std::vector<THcDCHit*> fHits;	/* All hits for this chamber */
+  TClonesArray *fSpacePoints;
+  Int_t fNSpacePoints;
+  Int_t fEasySpacePoint;	/* This event is an easy space point */
+
+  Double_t* stubcoef[4]; 
+  std::map<int,TMatrixD*> fAA3Inv;
+
+  ClassDef(THcDriftChamber,0)   // A single drift chamber
 };
 
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcDriftChamberPlane.cxx b/src/THcDriftChamberPlane.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..59516413f569d69fc356f030059fb0b0b19337cf
--- /dev/null
+++ b/src/THcDriftChamberPlane.cxx
@@ -0,0 +1,346 @@
+//*-- Author :
+
+//////////////////////////////////////////////////////////////////////////
+//
+// THcDriftChamberPlane
+//
+//////////////////////////////////////////////////////////////////////////
+
+#include "THcDriftChamberPlane.h"
+#include "THcDCWire.h"
+#include "THcDCHit.h"
+#include "THcDCLookupTTDConv.h"
+#include "THcSignalHit.h"
+#include "THcGlobals.h"
+#include "THcParmList.h"
+#include "THcHitList.h"
+#include "THcDC.h"
+#include "THcHodoscope.h"
+#include "TClass.h"
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+
+using namespace std;
+
+ClassImp(THcDriftChamberPlane)
+
+//______________________________________________________________________________
+THcDriftChamberPlane::THcDriftChamberPlane( const char* name, 
+					    const char* description,
+					    const Int_t planenum,
+					    THaDetectorBase* parent )
+  : THaSubDetector(name,description,parent)
+{
+  // Normal constructor with name and description
+  fHits = new TClonesArray("THcDCHit",100);
+  fWires = new TClonesArray("THcDCWire", 100);
+  fTTDConv = NULL;
+
+  fPlaneNum = planenum;
+}
+
+//_____________________________________________________________________________
+THcDriftChamberPlane::THcDriftChamberPlane() :
+  THaSubDetector()
+{
+  // Constructor
+  fHits = NULL;
+  fWires = NULL;
+  fTTDConv = NULL;
+}
+//______________________________________________________________________________
+THcDriftChamberPlane::~THcDriftChamberPlane()
+{
+  // Destructor
+  delete fWires;
+  delete fHits;
+  delete fTTDConv;
+
+}
+THaAnalysisObject::EStatus THcDriftChamberPlane::Init( const TDatime& date )
+{
+  // Extra initialization for scintillator plane: set up DataDest map
+
+  cout << "THcDriftChamberPlane::Init called " << GetName() << endl;
+
+  if( IsZombie())
+    return fStatus = kInitError;
+
+  // How to get information for parent
+  //  if( GetParent() )
+  //    fOrigin = GetParent()->GetOrigin();
+
+  EStatus status;
+  if( (status=THaSubDetector::Init( date )) )
+    return fStatus = status;
+
+  return fStatus = kOK;
+
+}
+
+//_____________________________________________________________________________
+Int_t THcDriftChamberPlane::ReadDatabase( const TDatime& date )
+{
+
+  // See what file it looks for
+  
+  char prefix[2];
+  UInt_t NumDriftMapBins;
+  Double_t DriftMapFirstBin;
+  Double_t DriftMapBinSize;
+  
+  prefix[0]=tolower(GetParent()->GetPrefix()[0]);
+  prefix[1]='\0';
+  DBRequest list[]={
+    {"driftbins", &NumDriftMapBins, kInt},
+    {"drift1stbin", &DriftMapFirstBin, kDouble},
+    {"driftbinsz", &DriftMapBinSize, kDouble},
+    {0}
+  };
+  gHcParms->LoadParmValues((DBRequest*)&list,prefix);
+
+  Double_t *DriftMap = new Double_t[NumDriftMapBins];
+  DBRequest list2[]={
+    {Form("wc%sfract",GetName()),DriftMap,kDouble,NumDriftMapBins},
+    {0}
+  };
+  gHcParms->LoadParmValues((DBRequest*)&list2,prefix);
+
+  // Retrieve parameters we need from parent class
+  THcDC* fParent;
+
+  fParent = (THcDC*) GetParent();
+  // These are single variables here, but arrays in THcDriftChamber.
+  fSigma = fParent->GetSigma(fPlaneNum);
+  fChamberNum = fParent->GetNChamber(fPlaneNum);
+  fNWires = fParent->GetNWires(fPlaneNum);
+  fWireOrder = fParent->GetWireOrder(fPlaneNum);
+  fPitch = fParent->GetPitch(fPlaneNum);
+  fCentralWire = fParent->GetCentralWire(fPlaneNum);
+  fTdcWinMin = fParent->GetTdcWinMin(fPlaneNum);
+  fTdcWinMax = fParent->GetTdcWinMax(fPlaneNum);
+  fPlaneTimeZero = fParent->GetPlaneTimeZero(fPlaneNum);
+  fCenter = fParent->GetCenter(fPlaneNum);
+  fCentralTime = fParent->GetCentralTime(fPlaneNum);
+  fDriftTimeSign = fParent->GetDriftTimeSign(fPlaneNum);
+
+  fNSperChan = fParent->GetNSperChan();
+
+  // Calculate Geometry Constants
+  // Do we want to move all this to the Chamber of DC Package leve
+  // as that is where these things will be needed?
+  Double_t z0 = fParent->GetZPos(fPlaneNum);
+  Double_t alpha = fParent->GetAlphaAngle(fPlaneNum);
+  Double_t beta = fParent->GetBetaAngle(fPlaneNum);
+  fBeta = beta;
+  Double_t gamma = fParent->GetGammaAngle(fPlaneNum);
+  Double_t cosalpha = TMath::Cos(alpha);
+  Double_t sinalpha = TMath::Sin(alpha);
+  Double_t cosbeta = TMath::Cos(beta);
+  Double_t sinbeta = TMath::Sin(beta);
+  Double_t cosgamma = TMath::Cos(gamma);
+  Double_t singamma = TMath::Sin(gamma);
+
+  Double_t hzchi = -cosalpha*sinbeta + sinalpha*cosbeta*singamma;
+  Double_t hzpsi =  sinalpha*sinbeta + cosalpha*cosbeta*singamma;
+  Double_t hxchi = -cosalpha*cosbeta - sinalpha*sinbeta*singamma;
+  Double_t hxpsi =  sinalpha*cosbeta - cosalpha*sinbeta*singamma;
+  Double_t hychi =  sinalpha*cosgamma;
+  Double_t hypsi =  cosalpha*cosgamma;
+  Double_t stubxchi = -cosalpha;
+  Double_t stubxpsi = sinalpha;
+  Double_t stubychi = sinalpha;
+  Double_t stubypsi = cosalpha;
+
+  if(cosalpha <= 0.707) { // x-like wire, need dist from x=0 line
+    fReadoutX = 1;
+    fReadoutCorr = 1/sinalpha;
+  } else {
+    fReadoutX = 0;
+    fReadoutCorr = 1/cosalpha;
+  }
+
+  Double_t sumsqupsi = hzpsi*hzpsi+hxpsi*hxpsi+hypsi*hypsi;
+  Double_t sumsquchi = hzchi*hzchi+hxchi*hxchi+hychi*hychi;
+  Double_t sumcross = hzpsi*hzchi + hxpsi*hxchi + hypsi*hychi;
+  Double_t denom1 = sumsqupsi*sumsquchi-sumcross*sumcross;
+  fPsi0 = (-z0*hzpsi*sumsquchi
+		    +z0*hzchi*sumcross) / denom1;
+  Double_t hchi0 = (-z0*hzchi*sumsqupsi
+		    +z0*hzpsi*sumcross) / denom1;
+  Double_t hphi0 = TMath::Sqrt(pow(z0+hzpsi*fPsi0+hzchi*hchi0,2)
+			       + pow(hxpsi*fPsi0+hxchi*hchi0,2)
+			       + pow(hypsi*fPsi0+hychi*hchi0,2) );
+  if(z0 < 0.0) hphi0 = -hphi0;
+  
+  Double_t denom2 = stubxpsi*stubychi - stubxchi*stubypsi;
+
+  // Why are there 4, but only 3 used?
+  fStubCoef[0] = stubychi/(fSigma*denom2);   // sin(a)/sigma
+  fStubCoef[1] = -stubxchi/(fSigma*denom2);   // cos(a)/sigma
+  fStubCoef[2] = hphi0*fStubCoef[0];     // z0*sin(a)/sig
+  fStubCoef[3] = hphi0*fStubCoef[1];     // z0*cos(a)/sig
+
+  fXsp = hychi/denom2;		// sin(a)
+  fYsp = -hxchi/denom2;		// cos(a)
+
+  // Comput track fitting coefficients
+#define LOCRAYZT 0.0
+  fPlaneCoef[0]= hzchi;		      // = 0.
+  fPlaneCoef[1]=-hzchi;		      // = 0.
+  fPlaneCoef[2]= hychi*(z0-LOCRAYZT);  // sin(a)*(z-hlocrayzt)
+  fPlaneCoef[3]= hxchi*(LOCRAYZT-z0);  // cos(a)*(z-hlocrayzt)
+  fPlaneCoef[4]= hychi;		       // sin(a)
+  fPlaneCoef[5]=-hxchi;		       // cos(a)
+  fPlaneCoef[6]= hzchi*hypsi - hychi*hzpsi; // 0.
+  fPlaneCoef[7]=-hzchi*hxpsi + hxchi*hzpsi; // 0.
+  fPlaneCoef[8]= hychi*hxpsi - hxchi*hypsi; // 1.
+
+  //  cout << fPlaneNum << " " << fNWires << " " << fWireOrder << endl;
+
+  fTTDConv = new THcDCLookupTTDConv(DriftMapFirstBin,fPitch/2,DriftMapBinSize,
+				    NumDriftMapBins,DriftMap);
+  delete [] DriftMap;
+
+  Int_t nWires = fParent->GetNWires(fPlaneNum);
+  // For HMS, wire numbers start with one, but arrays start with zero.
+  // So wire number is index+1
+  for (int i=0; i<nWires; i++) {
+    Double_t pos = fPitch*( (fWireOrder==0?(i+1):fNWires-i) 
+			    - fCentralWire) - fCenter;
+    new((*fWires)[i]) THcDCWire( i+1, pos , 0.0, fTTDConv);
+    //if( something < 0 ) wire->SetFlag(1);
+  }
+
+  THaApparatus* app = GetApparatus();
+  const char* nm = "hod";
+  if(  !app || 
+      !(fglHod = dynamic_cast<THcHodoscope*>(app->GetDetector(nm))) ) {
+    static const char* const here = "ReadDatabase()";
+    Warning(Here(here),"Hodoscope \"%s\" not found. "
+	    "Event-by-event time offsets will NOT be used!!",nm);
+  }
+
+  return kOK;
+}
+//_____________________________________________________________________________
+Int_t THcDriftChamberPlane::DefineVariables( EMode mode )
+{
+  // Initialize global variables and lookup table for decoder
+
+  //  cout << "THcDriftChamberPlane::DefineVariables called " << GetName() << endl;
+
+  if( mode == kDefine && fIsSetup ) return kOK;
+  fIsSetup = ( mode == kDefine );
+
+  // Register variables in global list
+  RVarDef vars[] = {
+    {"tdchits", "List of TDC hits", 
+     "fHits.THcDCHit.GetWireNum()"},
+    {"rawtdc", "Raw TDC Values", 
+     "fHits.THcDCHit.GetRawTime()"},
+    {"time","Drift times",
+     "fHits.THcDCHit.GetTime()"},
+    {"dist","Drift distancess",
+     "fHits.THcDCHit.GetDist()"},
+    {"nhit", "Number of hits", "GetNHits()"},
+    { 0 }
+  };
+
+  return DefineVarsFromList( vars, mode );
+}
+
+//_____________________________________________________________________________
+void THcDriftChamberPlane::Clear( Option_t* )
+{
+  //cout << " Calling THcDriftChamberPlane::Clear " << GetName() << endl;
+  // Clears the hit lists
+  fHits->Clear();
+}
+
+//_____________________________________________________________________________
+Int_t THcDriftChamberPlane::Decode( const THaEvData& evdata )
+{
+  // Doesn't actually get called.  Use Fill method instead
+  cout << " Calling THcDriftChamberPlane::Decode " << GetName() << endl;
+
+  return 0;
+}
+//_____________________________________________________________________________
+Int_t THcDriftChamberPlane::CoarseProcess( TClonesArray& tracks )
+{
+ 
+  //  HitCount();
+
+ return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcDriftChamberPlane::FineProcess( TClonesArray& tracks )
+{
+  return 0;
+}
+Int_t THcDriftChamberPlane::ProcessHits(TClonesArray* rawhits, Int_t nexthit)
+{
+  // Extract the data for this plane from hit list
+  // Assumes that the hit list is sorted by plane, so we stop when the
+  // plane doesn't agree and return the index for the next hit.
+
+  Double_t StartTime = 0.0;
+  // Would be nice to have a way to determine that the hodoscope decode was
+  // actually called for this event.
+  if( fglHod ) StartTime = fglHod->GetStartTime();
+  //cout << "Start time " << StartTime << endl;
+
+  //Int_t nTDCHits=0;
+  fHits->Clear();
+
+  Int_t nrawhits = rawhits->GetLast()+1;
+  // cout << "THcDriftChamberPlane::ProcessHits " << fPlaneNum << " " << nexthit << "/" << nrawhits << endl;
+  fNRawhits=0;
+  Int_t ihit = nexthit;
+  Int_t nextHit = 0;
+  while(ihit < nrawhits) {
+    THcRawDCHit* hit = (THcRawDCHit *) rawhits->At(ihit);
+    if(hit->fPlane > fPlaneNum) {
+      break;
+    }
+    Int_t wireNum = hit->fCounter;
+    THcDCWire* wire = GetWire(wireNum);
+    Int_t wire_last = -1;
+    for(UInt_t mhit=0; mhit<hit->fNHits; mhit++) {
+      fNRawhits++;
+      /* Sort into early, late and ontime */
+      Int_t rawtdc = hit->fTDC[mhit];
+      if(rawtdc < fTdcWinMin) {
+	// Increment early counter  (Actually late because TDC is backward)
+      } else if (rawtdc > fTdcWinMax) {
+	// Increment late count 
+      } else {
+	// A good hit
+	if(wire_last == wireNum) {
+	  // Increment extra hit counter 
+	  // Are we choosing the correct hit in the case of multiple hits?
+	  // Are we choose the same hit that ENGINE chooses?
+	  // cout << "Extra hit " << fPlaneNum << " " << wireNum << " " << rawtdc << endl;
+	} else {
+	  Double_t time = -StartTime   // (comes from h_trans_scin
+	    - rawtdc*fNSperChan + fPlaneTimeZero;
+	  // How do we get this start time from the hodoscope to here
+	  // (or at least have it ready by coarse process)
+	  new( (*fHits)[nextHit++] ) THcDCHit(wire, rawtdc, time, this);
+	}
+	wire_last = wireNum;
+      }
+    }
+    ihit++;
+  }
+  return(ihit);
+}
+
+    
+  
+  
diff --git a/src/THcDriftChamberPlane.h b/src/THcDriftChamberPlane.h
new file mode 100644
index 0000000000000000000000000000000000000000..95c793cd6be99252e97756fc68909d927f3696ac
--- /dev/null
+++ b/src/THcDriftChamberPlane.h
@@ -0,0 +1,118 @@
+#ifndef ROOT_THcDriftChamberPlane
+#define ROOT_THcDriftChamberPlane
+
+//////////////////////////////////////////////////////////////////////////////
+//                         
+// THcDriftChamberPlane
+//
+// A Hall C scintillator plane
+//
+// May want to later inherit from a THcPlane class if there are similarities
+// in what a plane is shared with other detector types (shower, etc.)
+// 
+//////////////////////////////////////////////////////////////////////////////
+
+#include "THaSubDetector.h"
+#include "TClonesArray.h"
+#include <cassert>
+
+class THaEvData;
+class THcDCWire;
+class THcDCHit;
+class THcDCTimeToDistConv;
+class THcHodoscope;
+
+/*class THaSignalHit;*/
+
+class THcDriftChamberPlane : public THaSubDetector {
+  
+public:
+  THcDriftChamberPlane( const char* name, const char* description,
+			Int_t planenum, THaDetectorBase* parent = NULL);
+  virtual ~THcDriftChamberPlane();
+
+  virtual void    Clear( Option_t* opt="" );
+  virtual Int_t Decode( const THaEvData& );
+  virtual EStatus Init( const TDatime& run_time );
+
+  virtual Int_t CoarseProcess( TClonesArray& tracks );
+  virtual Int_t FineProcess( TClonesArray& tracks );
+          Bool_t   IsTracking() { return kFALSE; }
+  virtual Bool_t   IsPid()      { return kFALSE; }
+
+  virtual Int_t ProcessHits(TClonesArray* rawhits, Int_t nexthit);
+
+  // Get and Set functions
+  Int_t        GetNWires()   const { return fWires->GetLast()+1; }
+  THcDCWire*  GetWire(Int_t i) const
+  { assert( i>=1 && i<=GetNWires() );
+    return (THcDCWire*)fWires->UncheckedAt(i-1); }
+
+  Int_t         GetNHits() const { return fHits->GetLast()+1; }
+  Int_t         GetNRawhits() const {return fNRawhits; }
+  TClonesArray* GetHits()  const { return fHits; }
+
+  Int_t        GetPlaneNum() const { return fPlaneNum; }
+  Int_t        GetChamberNum() const { return fChamberNum; }
+  void         SetPlaneIndex(Int_t index) { fPlaneIndex = index; }
+  Int_t        GetPlaneIndex() { return fPlaneIndex; }
+  Double_t     GetXsp() const { return fXsp; }
+  Double_t     GetYsp() const { return fYsp; }
+  Int_t        GetReadoutX() { return fReadoutX; }
+  Double_t     GetReadoutCorr() { return fReadoutCorr; }
+  Double_t     GetCentralTime() { return fCentralTime; }
+  Int_t        GetDriftTimeSign() { return fDriftTimeSign; }
+  Double_t     GetBeta() { return fBeta; }
+  Double_t     GetSigma() { return fSigma; }
+  Double_t     GetPsi0() { return fPsi0; }
+  Double_t*    GetStubCoef() { return fStubCoef; }
+  Double_t*    GetPlaneCoef() { return fPlaneCoef; }
+
+  THcDriftChamberPlane(); // for ROOT I/O
+protected:
+
+  TClonesArray* fParentHitList;
+
+  TClonesArray* fHits;
+  TClonesArray* fWires;
+
+  Int_t fPlaneNum;
+  Int_t fPlaneIndex;		/* Index of this plane within it's chamber */
+  Int_t fChamberNum;
+  Int_t fNRawhits;
+  Int_t fNWires;
+  Int_t fWireOrder;
+  Int_t fTdcWinMin;
+  Int_t fTdcWinMax;
+  Double_t fPitch;
+  Double_t fCentralWire;
+  Double_t fPlaneTimeZero;
+  Double_t fXsp;
+  Double_t fYsp;
+  Double_t fSigma;
+  Double_t fPsi0;
+  Double_t fStubCoef[4];
+  Double_t fBeta;
+  Double_t fPlaneCoef[9];
+
+  Int_t fReadoutX;
+  Double_t fReadoutCorr;
+  Double_t fCentralTime;
+  Int_t fDriftTimeSign;
+
+  Double_t fCenter;
+
+  Double_t fNSperChan;		/* TDC bin size */
+
+  virtual Int_t  ReadDatabase( const TDatime& date );
+  virtual Int_t  DefineVariables( EMode mode = kDefine );
+
+  THcDCTimeToDistConv* fTTDConv;  // Time-to-distance converter for this plane's wires
+
+  THcHodoscope* fglHod;		// Hodoscope to get start time
+
+  ClassDef(THcDriftChamberPlane,0); // A single plane within a THcDriftChamber
+};
+#endif
+
+
diff --git a/src/THcFormula.cxx b/src/THcFormula.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..7740c06948fb0d75bcd6c1924e4d81c985d25c1e
--- /dev/null
+++ b/src/THcFormula.cxx
@@ -0,0 +1,217 @@
+//*-- Author :    Stephen Wood  17-Oct-2013
+
+//////////////////////////////////////////////////////////////////////////
+//
+// THcFormula
+//
+// Tweaked THaFormula.  If cutname.scaler is used in a formula, then
+// it is evaluated as the number of times that the cut passed.
+// Use EVariableType of kUndefined to indicate cut scaler in list of
+// variables used in the formula
+//
+//////////////////////////////////////////////////////////////////////////
+
+#include "THcFormula.h"
+#include "THcParmList.h"
+#include "THaVarList.h"
+#include "THaCutList.h"
+#include "THaCut.h"
+
+#include <iostream>
+
+using namespace std;
+
+static const Double_t kBig = 1e38; // Error value
+
+//_____________________________________________________________________________
+THcFormula::THcFormula(const char* name, const char* expression, 
+		       const THcParmList* plst, const THaVarList* vlst,
+		       const THaCutList* clst ) :
+  THaFormula()
+{
+
+  // We have to duplicate the TFormula constructor code here because of
+  // the calls DefinedVariable.  Our version will only get called if
+  // to Compile(). Compile() only works if fParmList is set. 
+  fParmList = plst;
+  fVarList = vlst;
+  fCutList = clst;
+
+  SetName(name);
+
+  //eliminate blanks in expression
+  Int_t nch = strlen(expression);
+  char *expr = new char[nch+1];
+  Int_t j = 0;
+  for (Int_t i=0;i<nch;i++) {
+     if (expression[i] == ' ') continue;
+     if (i > 0 && (expression[i] == '*') && (expression[i-1] == '*')) {
+        expr[j-1] = '^';
+        continue;
+     }
+     expr[j] = expression[i]; j++;
+   }
+  expr[j] = 0;
+  if (j) SetTitle(expr);
+  delete [] expr;
+
+  Compile();   // This calls our own Compile()
+}
+
+//_____________________________________________________________________________
+THcFormula& THcFormula::operator=( const THcFormula& rhs )
+{
+  if( this != &rhs ) {
+    TFormula::operator=(rhs);
+    fNcodes = rhs.fNcodes;
+    fParmList = rhs.fParmList;
+    fVarList = rhs.fVarList;
+    fCutList = rhs.fCutList;
+    fError = rhs.fError;
+    fRegister = rhs.fRegister;
+    delete [] fVarDef;
+    fVarDef = new FVarDef_t[ kMAXCODES ];
+    memcpy( fVarDef, rhs.fVarDef, kMAXCODES*sizeof(FVarDef_t));
+  }
+  return *this;
+}
+
+//_____________________________________________________________________________
+THcFormula::~THcFormula()
+{
+  // Destructor
+}
+
+//_____________________________________________________________________________
+Int_t THcFormula::DefinedCut( const TString& name )
+{
+  // Check if 'name' is a known cut. If so, enter it in the local list of 
+  // variables used in this formula.
+
+  EVariableType thistype;
+  TString realname;
+  Int_t period = name.Index('.');
+  if(period < 0) {
+    realname = name;
+    thistype = kCut;
+  } else {
+    realname = name(0,period);
+    TString attribute(name(period+1,name.Length()-period-1));
+    if(attribute.CompareTo("scaler")==0 || attribute.CompareTo("npassed")==0) {
+      thistype = (EVariableType) kCutScaler;
+    } else if (attribute.CompareTo("ncalled")==0) {
+      thistype = (EVariableType) kCutNCalled;
+    } else {
+      thistype = kUndefined;
+    }
+  }
+
+  // Cut names are obviously only valid if there is a list of existing cuts
+  if( fCutList ) {
+    const THaCut* pcut = fCutList->FindCut( realname );
+    if( pcut ) {
+      if( fNcodes >= kMAXCODES ) return -1;
+      // See if this cut already used earlier in this new cut
+      FVarDef_t* def = fVarDef;
+      for( Int_t i=0; i<fNcodes; i++, def++ ) {
+	if( def->type == thistype && pcut == def->code )
+	  return i;
+      }
+      def->type = thistype;
+      def->code  = pcut;
+      def->index = 0;
+      fNpar = 0;
+      return fNcodes++;
+    }
+  }
+  return -1;
+}
+
+//_____________________________________________________________________________
+Double_t THcFormula::DefinedValue( Int_t i )
+{
+  // Get value of i-th variable in the formula
+  // If the i-th variable is a cut, return its last result
+  // (calculated at the last evaluation).
+  // If the variable is a string, return value of its character value
+  
+#ifdef WITH_DEBUG
+  R__ASSERT( i>=0 && i<fNcodes );
+#endif
+  FVarDef_t* def = fVarDef+i;
+  const void* ptr = def->code;
+  if( !ptr ) return kBig;
+  switch( (Int_t) def->type ) {
+  case kVariable:
+  case kString:
+    return reinterpret_cast<const THaVar*>(ptr)->GetValue( def->index );
+    break;
+  case kCut:
+    return reinterpret_cast<const THaCut*>(ptr)->GetResult();
+    break;
+  case kCutScaler:
+    return reinterpret_cast<const THaCut*>(ptr)->GetNPassed();
+    break;
+  case kCutNCalled:
+    return reinterpret_cast<const THaCut*>(ptr)->GetNCalled();
+    break;
+  default:
+    return kBig;
+  }
+}  
+
+
+//_____________________________________________________________________________
+Int_t THcFormula::DefinedGlobalVariable( const TString& name )
+{
+  // Check if 'name' is a known global variable. If so, enter it in the
+  // local list of variables used in this formula.
+
+  // No list of variables or too many variables in this formula?
+  if( (!fVarList && !fParmList) || fNcodes >= kMAXCODES )
+    return -2;
+
+
+  // Parse name for array syntax
+  THaArrayString var(name);
+  if( var.IsError() )
+    return -1;
+
+  // First check if this name is a Parameter
+  const THaVar* obj = fParmList->Find( var.GetName() );
+  if ( !obj) {  // If not, find a global variable with this name
+    obj = fVarList->Find( var.GetName() );
+    if( !obj )
+      return -1;
+  }
+
+  // Error if array requested but the corresponding variable is not an array
+  if( var.IsArray() && !obj->IsArray() )
+    return -2;
+
+  // Subscript(s) within bounds?
+  Int_t index = 0;
+  if( var.IsArray() 
+      && (index = obj->Index( var )) <0 ) return -2;
+		    
+  // Check if this variable already used in this formula
+  FVarDef_t* def = fVarDef;
+  for( Int_t i=0; i<fNcodes; i++, def++ ) {
+    if( obj == def->code && index == def->index )
+      return i;
+  }
+  // If this is a new variable, add it to the list
+  def->type = kVariable;
+  def->code = obj;
+  def->index = index;
+
+  // No parameters ever for a THaFormula
+  fNpar = 0;
+
+  return fNcodes++;
+}
+
+
+//_____________________________________________________________________________
+
+ClassImp(THcFormula)
diff --git a/src/THcFormula.h b/src/THcFormula.h
new file mode 100644
index 0000000000000000000000000000000000000000..0294ee6417a21b59cbb21a388ad301d79225eb9a
--- /dev/null
+++ b/src/THcFormula.h
@@ -0,0 +1,37 @@
+#ifndef ROOT_THcFormula
+#define ROOT_THcFormula
+
+//////////////////////////////////////////////////////////////////////////
+//
+// THcFormula
+// 
+//////////////////////////////////////////////////////////////////////////
+
+#include "THcGlobals.h"
+#include "THaFormula.h"
+
+class THaParmList;
+
+class THcFormula : public THaFormula {
+
+public:
+
+  THcFormula( const char* name, const char* formula, 
+	      const THcParmList*, const THaVarList*,
+	      const THaCutList* clst);
+  THcFormula& operator=( const THcFormula& rhs );
+  virtual ~THcFormula();
+
+  virtual Double_t DefinedValue( Int_t i);
+  virtual Int_t    DefinedCut( const TString& variable);
+  virtual Int_t    DefinedGlobalVariable( const TString& variable);
+
+protected:
+
+  enum {kCutScaler = kString+1};
+  enum {kCutNCalled = kCutScaler+1};
+  const THcParmList* fParmList; // Pointer to list of parameters
+  ClassDef(THcFormula,0) // Formula with cut scalers
+};
+
+#endif
diff --git a/src/THcHallCSpectrometer.cxx b/src/THcHallCSpectrometer.cxx
index 53c141cfde5b35821d78c79b122cc8f84557b82a..7ec7c3c017881253a7d82ae8c2b769a909d1992c 100644
--- a/src/THcHallCSpectrometer.cxx
+++ b/src/THcHallCSpectrometer.cxx
@@ -40,23 +40,52 @@
 //  'reference distance', corresponding to the pathlength correction
 //  matrix.
 //
+//
+//  Golden track using scin. Zafar Ahmed. August 19 2014
+//      Goldent track is moved to THcHallCSpectrometer::TrackCalc()
+//      if  fSelUsingScin == 0 then golden track is calculated just 
+//      like podd. i.e. it is the first track with minimum chi2/ndf 
+//      with sorting ON
+//
+//      if fSelUsingScin == 1 then golden track is calculetd just like
+//      engine/HTRACKING/h_select_best_track_using_scin.h. This method 
+//      gives the best track with minimum value of chi2/ndf but with 
+//      additional cuts on the tracks. These cuts are on dedx, beta 
+//      and on energy.
+//
+//  Golden track using prune. Zafar Ahmed. September 23 2014
+//      Selection of golden track using prune method is added.
+//      A bug is also fixed in THcHodoscope class
+//      Number of pmts hits, focal plane time, good time for plane 4 
+//      and good time for plane 3 are set to the tracks in 
+//      THcHodoscope class.
+//
 //////////////////////////////////////////////////////////////////////////
 
 #include "THcHallCSpectrometer.h"
 #include "THaTrackingDetector.h"
+#include "THcGlobals.h"
+#include "THcParmList.h"
 #include "THaTrack.h"
 #include "THaTrackProj.h"
 #include "THaTriggerTime.h"
 #include "TMath.h"
 #include "TList.h"
 
-#include "TList.h"
-#include "TMath.h"
+#include "THcRawShowerHit.h"
+#include "THcSignalHit.h"
+#include "THcShower.h"
+#include "THcHitList.h"
+#include "THcHodoscope.h"
 
-#ifdef WITH_DEBUG
+#include <vector>
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
 #include <iostream>
-#endif
+#include <fstream>
 
+using std::vector;
 using namespace std;
 
 //_____________________________________________________________________________
@@ -68,13 +97,32 @@ THcHallCSpectrometer::THcHallCSpectrometer( const char* name, const char* descri
 
   //sc_ref = static_cast<THaScintillator*>(GetDetector("s1"));
 
-  SetTrSorting(kFALSE);
+  SetTrSorting(kTRUE);
 }
 
 //_____________________________________________________________________________
 THcHallCSpectrometer::~THcHallCSpectrometer()
 {
   // Destructor
+
+  DefineVariables( kDelete );
+}
+
+//_____________________________________________________________________________
+Int_t THcHallCSpectrometer::DefineVariables( EMode mode )
+{
+  // Define/delete standard variables for a spectrometer (tracks etc.)
+  // Can be overridden or extended by derived (actual) apparatuses
+  if( mode == kDefine && fIsSetup ) return kOK;
+  THaSpectrometer::DefineVariables( mode );
+  fIsSetup = ( mode == kDefine );
+  RVarDef vars[] = {
+    { "tr.betachisq", "Chi2 of beta", "fTracks.THaTrack.GetBetaChi2()"},
+    { 0 }
+  };
+
+  
+  return DefineVarsFromList( vars, mode );
 }
 
 //_____________________________________________________________________________
@@ -95,25 +143,270 @@ Bool_t THcHallCSpectrometer::GetTrSorting() const
 }
  
 //_____________________________________________________________________________
-Int_t THcHallCSpectrometer::FindVertices( TClonesArray& tracks )
+void THcHallCSpectrometer::InitializeReconstruction()
+{
+  fNReconTerms = 0;
+  fReconTerms.clear();
+  fAngSlope_x = 0.0;
+  fAngSlope_y = 0.0;
+  fAngOffset_x = 0.0;
+  fAngOffset_y = 0.0;
+  fDetOffset_x = 0.0;
+  fDetOffset_y = 0.0;
+  fZTrueFocus = 0.0;
+}
+//_____________________________________________________________________________
+Int_t THcHallCSpectrometer::ReadDatabase( const TDatime& date )
 {
-  // Reconstruct target coordinates for all tracks found in the focal plane.
 
-  TIter nextTrack( fTrackingDetectors );
+  static const char* const here = "THcHallCSpectrometer::ReadDatabase";
 
-  nextTrack.Reset();
-  while( THaTrackingDetector* theTrackDetector =
-	 static_cast<THaTrackingDetector*>( nextTrack() )) {
 #ifdef WITH_DEBUG
-    if( fDebug>1 ) cout << "Call FineTrack() for " 
-			<< theTrackDetector->GetName() << "... ";
-#endif
-    theTrackDetector->FindVertices( tracks );
-#ifdef WITH_DEBUG
-    if( fDebug>1 ) cout << "done.\n";
+  cout << "In THcHallCSpectrometer::ReadDatabase()" << endl;
 #endif
+
+  // --------------- To get energy from THcShower ----------------------
+
+  const char* detector_name = "hod";  
+  //THaApparatus* app = GetDetector();
+  THaDetector* det = GetDetector("hod");
+  // THaDetector* det = app->GetDetector( shower_detector_name );
+  
+  if( !dynamic_cast<THcHodoscope*>(det) ) {
+    Error("THcHallCSpectrometer", "Cannot find hodoscope detector %s",
+    	  detector_name );
+     return fStatus = kInitError;
+  }
+  
+  fHodo = static_cast<THcHodoscope*>(det);     // fHodo is a membervariable
+
+  // fShower = static_cast<THcShower*>(det);     // fShower is a membervariable
+  
+  // --------------- To get energy from THcShower ----------------------
+
+
+  // Get the matrix element filename from the variable store
+  // Read in the matrix
+
+  InitializeReconstruction();
+
+  char prefix[2];
+
+  cout << " GetName() " << GetName() << endl;
+
+  prefix[0]=tolower(GetName()[0]);
+  prefix[1]='\0';
+
+  string reconCoeffFilename;
+  DBRequest list[]={
+    {"_recon_coeff_filename", &reconCoeffFilename,     kString               },
+    {"theta_offset",          &fThetaOffset,           kDouble               },
+    {"phi_offset",            &fPhiOffset,             kDouble               },
+    {"delta_offset",          &fDeltaOffset,           kDouble               },
+    {"thetacentral_offset",   &fThetaCentralOffset,    kDouble               },
+    {"_oopcentral_offset",    &fOopCentralOffset,      kDouble               },
+    {"pcentral_offset",       &fPCentralOffset,        kDouble               },
+    {"pcentral",              &fPcentral,              kDouble               },
+    {"theta_lab",             &fTheta_lab,             kDouble               },
+    {"partmass",              &fPartMass,              kDouble               },
+    {"sel_using_scin",        &fSelUsingScin,          kInt,            0,  1},
+    {"sel_using_prune",       &fSelUsingPrune,         kInt,            0,  1},
+    {"sel_ndegreesmin",       &fSelNDegreesMin,        kDouble,         0,  1},
+    {"sel_dedx1min",          &fSeldEdX1Min,           kDouble,         0,  1},
+    {"sel_dedx1max",          &fSeldEdX1Max,           kDouble,         0,  1},
+    {"sel_betamin",           &fSelBetaMin,            kDouble,         0,  1},
+    {"sel_betamax",           &fSelBetaMax,            kDouble,         0,  1},
+    {"sel_etmin",             &fSelEtMin,              kDouble,         0,  1},
+    {"sel_etmax",             &fSelEtMax,              kDouble,         0,  1},
+    {"hodo_num_planes",       &fNPlanes,               kInt                  },
+    {"scin_2x_zpos",          &fScin2XZpos,            kDouble,         0,  1},
+    {"scin_2x_dzpos",         &fScin2XdZpos,           kDouble,         0,  1},
+    {"scin_2y_zpos",          &fScin2YZpos,            kDouble,         0,  1},
+    {"scin_2y_dzpos",         &fScin2YdZpos,           kDouble,         0,  1},
+    {"prune_xp",              &fPruneXp,               kDouble,         0,  1},
+    {"prune_yp",              &fPruneYp,               kDouble,         0,  1},
+    {"prune_ytar",            &fPruneYtar,             kDouble,         0,  1},
+    {"prune_delta",           &fPruneDelta,            kDouble,         0,  1},
+    {"prune_beta",            &fPruneBeta,             kDouble,         0,  1},
+    {"prune_df",              &fPruneDf,               kDouble,         0,  1},
+    {"prune_chibeta",         &fPruneChiBeta,          kDouble,         0,  1},
+    {"prune_npmt",            &fPruneNPMT,           kDouble,         0,  1},
+    {"prune_fptime",          &fPruneFpTime,             kDouble,         0,  1},
+    {0}
+  };
+
+  // Default values
+  fSelUsingScin = 0;
+  fSelUsingPrune = 0;
+
+  gHcParms->LoadParmValues((DBRequest*)&list,prefix);
+
+  EnforcePruneLimits();
+  
+  cout <<  "\n\n\nhodo planes = " << fNPlanes << endl;
+  cout <<  "sel using scin = "    << fSelUsingScin << endl;
+  cout <<  "fPruneXp = "          <<  fPruneXp << endl; 
+  cout <<  "fPruneYp = "          <<  fPruneYp << endl; 
+  cout <<  "fPruneYtar = "        <<  fPruneYtar << endl; 
+  cout <<  "fPruneDelta = "       <<  fPruneDelta << endl; 
+  cout <<  "fPruneBeta = "        <<  fPruneBeta << endl; 
+  cout <<  "fPruneDf = "          <<  fPruneDf << endl; 
+  cout <<  "fPruneChiBeta = "     <<  fPruneChiBeta << endl; 
+  cout <<  "fPruneFpTime = "      <<  fPruneFpTime << endl; 
+  cout <<  "fPruneNPMT = "        <<  fPruneNPMT << endl; 
+  cout <<  "sel using prune = "   <<  fSelUsingPrune << endl;
+  cout <<  "fPartMass = "         <<  fPartMass << endl;
+  cout <<  "fPcentral = "         <<  fPcentral << " " <<fPCentralOffset << endl; 
+  cout <<  "fThate_lab = "        <<  fTheta_lab << " " <<fThetaCentralOffset << endl; 
+  fPcentral= fPcentral*(1.+fPCentralOffset/100.);
+  // Check that these offsets are in radians
+  fTheta_lab=fTheta_lab + fThetaCentralOffset*TMath::RadToDeg();
+  Double_t ph = 0.0+fPhiOffset*TMath::RadToDeg();
+
+  SetCentralAngles(fTheta_lab, ph, false);
+  Double_t off_x = 0.0, off_y = 0.0, off_z = 0.0;
+  fPointingOffset.SetXYZ( off_x, off_y, off_z );
+  
+  //
+  ifstream ifile;
+  ifile.open(reconCoeffFilename.c_str());
+  if(!ifile.is_open()) {
+    Error(here, "error opening reconstruction coefficient file %s",reconCoeffFilename.c_str());
+    return kInitError; // Is this the right return code?
+  }
+  
+  string line="!";
+  int good=1;
+  while(good && line[0]=='!') {
+    good = getline(ifile,line).good();
+    //    cout << line << endl;
+  }
+  // Read in focal plane rotation coefficients
+  // Probably not used, so for now, just paste in fortran code as a comment
+  while(good && line.compare(0,4," ---")!=0) {
+    //  if(line(1:13).eq.'h_ang_slope_x')read(line,1201,err=94)h_ang_slope_x
+    //  if(line(1:13).eq.'h_ang_slope_y')read(line,1201,err=94)h_ang_slope_y
+    //  if(line(1:14).eq.'h_ang_offset_x')read(line,1201,err=94)h_ang_offset_x
+    //  if(line(1:14).eq.'h_ang_offset_y')read(line,1201,err=94)h_ang_offset_y
+    //  if(line(1:14).eq.'h_det_offset_x')read(line,1201,err=94)h_det_offset_x
+    //  if(line(1:14).eq.'h_det_offset_y')read(line,1201,err=94)h_det_offset_y
+    //  if(line(1:14).eq.'h_z_true_focus')read(line,1201,err=94)h_z_true_focus
+    good = getline(ifile,line).good();
+  }
+  // Read in reconstruction coefficients and exponents
+  line=" ";
+  good = getline(ifile,line).good();
+  //  cout << line << endl;
+  fNReconTerms = 0;
+  fReconTerms.clear();
+  fReconTerms.reserve(500);
+  //cout << "Reading matrix elements" << endl;
+  while(good && line.compare(0,4," ---")!=0) {
+    fReconTerms.push_back(reconTerm());
+    sscanf(line.c_str()," %le %le %le %le %1d%1d%1d%1d%1d"
+	   ,&fReconTerms[fNReconTerms].Coeff[0],&fReconTerms[fNReconTerms].Coeff[1]
+	   ,&fReconTerms[fNReconTerms].Coeff[2],&fReconTerms[fNReconTerms].Coeff[3]
+	   ,&fReconTerms[fNReconTerms].Exp[0]
+	   ,&fReconTerms[fNReconTerms].Exp[1]
+	   ,&fReconTerms[fNReconTerms].Exp[2]
+	   ,&fReconTerms[fNReconTerms].Exp[3]
+	   ,&fReconTerms[fNReconTerms].Exp[4]);
+    fNReconTerms++;
+    good = getline(ifile,line).good();    
+  }
+  cout << "Read " << fNReconTerms << " matrix element terms"  << endl;
+  if(!good) {
+    Error(here, "Error processing reconstruction coefficient file %s",reconCoeffFilename.c_str());
+    return kInitError; // Is this the right return code?
+  }
+  return kOK;
+}
+
+//_____________________________________________________________________________
+void THcHallCSpectrometer::EnforcePruneLimits()
+{
+  // Enforce minimum values for the prune cuts
+  
+  fPruneXp      = TMath::Max( 0.08, fPruneXp); 
+  fPruneYp      = TMath::Max( 0.04, fPruneYp); 
+  fPruneYtar    = TMath::Max( 4.0,  fPruneYtar); 
+  fPruneDelta   = TMath::Max( 13.0, fPruneDelta); 
+  fPruneBeta    = TMath::Max( 0.1,  fPruneBeta); 
+  fPruneDf      = TMath::Max( 1.0,  fPruneDf); 
+  fPruneChiBeta = TMath::Max( 2.0,  fPruneChiBeta); 
+  fPruneFpTime  = TMath::Max( 5.0,  fPruneFpTime); 
+  fPruneNPMT    = TMath::Max( 6.0,  fPruneNPMT);
+}
+
+//_____________________________________________________________________________
+Int_t THcHallCSpectrometer::FindVertices( TClonesArray& tracks )
+{
+  // Reconstruct target coordinates for all tracks found in the focal plane.
+
+  // In Hall A, this is passed off to the tracking detectors.
+  // In Hall C, we do the target traceback here since the traceback should
+  // not depend on which tracking detectors are used.
+
+  fNtracks = tracks.GetLast()+1;
+
+  for (Int_t it=0;it<tracks.GetLast()+1;it++) {
+    THaTrack* track = static_cast<THaTrack*>( tracks[it] );
+
+    Double_t hut[5];
+    Double_t hut_rot[5];
+    
+    hut[0] = track->GetX()/100.0 + fZTrueFocus*track->GetTheta() + fDetOffset_x;//m
+    hut[1] = track->GetTheta() + fAngOffset_x;//radians
+    hut[2] = track->GetY()/100.0 + fZTrueFocus*track->GetPhi() + fDetOffset_y;//m
+    hut[3] = track->GetPhi() + fAngOffset_y;//radians
+
+    Double_t gbeam_y = 0.0;// This will be the y position from the fast raster
+
+    hut[4] = -gbeam_y/100.0;
+
+    // Retrieve the focal plane coordnates
+    // Do the transpormation
+    // Stuff results into track
+    hut_rot[0] = hut[0];
+    hut_rot[1] = hut[1] + hut[0]*fAngSlope_x;
+    hut_rot[2] = hut[2];
+    hut_rot[3] = hut[3] + hut[2]*fAngSlope_y;
+    hut_rot[4] = hut[4];
+
+    // Compute COSY sums
+    Double_t sum[4];
+    for(Int_t k=0;k<4;k++) {
+      sum[k] = 0.0;
+    }
+    for(Int_t iterm=0;iterm<fNReconTerms;iterm++) {
+      Double_t term=1.0;
+      for(Int_t j=0;j<5;j++) {
+	if(fReconTerms[iterm].Exp[j]!=0) {
+	  term *= pow(hut_rot[j],fReconTerms[iterm].Exp[j]);
+	}
+      }
+      for(Int_t k=0;k<4;k++) {
+	sum[k] += term*fReconTerms[iterm].Coeff[k];
+      }
+    }
+    // Transfer results to track
+    // No beam raster yet
+    //; In transport coordinates phi = hyptar = dy/dz and theta = hxptar = dx/dz 
+    //;    but for unknown reasons the yp offset is named  htheta_offset
+    //;    and  the xp offset is named  hphi_offset
+
+    track->SetTarget(0.0, sum[1]*100.0, sum[0]+fPhiOffset, sum[2]+fThetaOffset);
+    track->SetDp(sum[3]*100.0+fDeltaOffset);	// Percent.  (Don't think podd cares if it is % or fraction)
+    // There is an hpcentral_offset that needs to be applied somewhere.
+    // (happly_offs)
+    track->SetMomentum(fPcentral*(1+track->GetDp()/100.0));
+
   }
 
+
+  // ------------------ Moving it to TrackCalc --------------------
+
+  /*
   // If enabled, sort the tracks by chi2/ndof
   if( GetTrSorting() )
     fTracks->Sort();
@@ -138,102 +431,456 @@ Int_t THcHallCSpectrometer::FindVertices( TClonesArray& tracks )
   } else
     fGoldenTrack = NULL;
 
+  */
+  // ------------------ Moving it to TrackCalc --------------------
+
   return 0;
 }
 
 //_____________________________________________________________________________
 Int_t THcHallCSpectrometer::TrackCalc()
 {
-  // Additioal track calculations. At present, we only calculate beta here.
+
+  if ( ( fSelUsingScin == 0 ) && ( fSelUsingPrune == 0 ) ) {
+    BestTrackSimple();
+  } else if (fSelUsingPrune !=0) {
+    BestTrackUsingPrune();
+  } else {
+    BestTrackUsingScin();
+  }
 
   return TrackTimes( fTracks );
 }
 
 //_____________________________________________________________________________
-Int_t THcHallCSpectrometer::TrackTimes( TClonesArray* Tracks ) {
-  // Do the actual track-timing (beta) calculation.
-  // Use multiple scintillators to average together and get "best" time at S1.
-  //
-  // To be useful, a meaningful timing resolution should be assigned
-  // to each Scintillator object (part of the database).
+Int_t THcHallCSpectrometer::BestTrackSimple()
+{
   
-  if ( !Tracks ) return -1;
+  if( GetTrSorting() )
+    fTracks->Sort();
   
-  THaTrack *track=0;
-  Int_t ntrack = GetNTracks();
+  // Find the "Golden Track". 
+  //  if( GetNTracks() > 0 ) {
+  if( fNtracks > 0 ) {
+    // Select first track in the array. If there is more than one track
+    // and track sorting is enabled, then this is the best fit track
+    // (smallest chi2/ndof).  Otherwise, it is the track with the best
+    // geometrical match (smallest residuals) between the U/V clusters
+    // in the upper and lower VDCs (old behavior).
+    // 
+    // Chi2/dof is a well-defined quantity, and the track selected in this
+    // way is immediately physically meaningful. The geometrical match
+    // criterion is mathematically less well defined and not usually used
+    // in track reconstruction. Hence, chi2 sortiing is preferable, albeit
+    // obviously slower.
+      
+    fGoldenTrack = static_cast<THaTrack*>( fTracks->At(0) );
+    fTrkIfo      = *fGoldenTrack;
+    fTrk         = fGoldenTrack;
+  } else
+    fGoldenTrack = NULL;
 
-  // linear regression to:  t = t0 + pathl/(beta*c)
-  //   where t0 is the time of the track at the reference plane (sc_ref).
-  //   t0 and beta are solved for.
-  //
-#if 0
-  for ( Int_t i=0; i < ntrack; i++ ) {
-    track = static_cast<THaTrack*>(Tracks->At(i));
-    THaTrackProj* tr_ref = static_cast<THaTrackProj*>
-      (sc_ref->GetTrackHits()->At(i));
-    
-    Double_t pathlref = tr_ref->GetPathLen();
-    
-    Double_t wgt_sum=0.,wx2=0.,wx=0.,wxy=0.,wy=0.;
-    Int_t ncnt=0;
+  return(0);
+}
+
+//_____________________________________________________________________________
+Int_t THcHallCSpectrometer::BestTrackUsingScin()
+{
+  Double_t chi2Min;
+
+  if( fNtracks > 0 ) {
+    fGoodTrack = -1;
+    chi2Min = 10000000000.0;
+    Int_t y2Dmin = 100;
+    Int_t x2Dmin = 100;
+
+    Bool_t* x2Hits        = new Bool_t [fHodo->GetNPaddles(2)];
+    Bool_t* y2Hits        = new Bool_t [fHodo->GetNPaddles(3)];
+    for (UInt_t j = 0; j < fHodo->GetNPaddles(2); j++ ){ 
+      x2Hits[j] = kFALSE;
+    }
+    for (UInt_t j = 0; j < fHodo->GetNPaddles(3); j++ ){ 
+      y2Hits[j] = kFALSE;
+    }
+      
+    for (Int_t rawindex=0; rawindex<fHodo->GetTotHits(); rawindex++) {
+      Int_t ip = fHodo->GetGoodRawPlane(rawindex);
+      if(ip==2) {	// X2
+	Int_t goodRawPad = fHodo->GetGoodRawPad(rawindex);
+	x2Hits[goodRawPad] = kTRUE;
+      } else if (ip==3) { // Y2
+	Int_t goodRawPad = fHodo->GetGoodRawPad(rawindex);
+	y2Hits[goodRawPad] = kTRUE;
+      }
+    }
+
+    for (Int_t itrack = 0; itrack < fNtracks; itrack++ ){
+      Double_t chi2PerDeg;
+
+      THaTrack* aTrack = static_cast<THaTrack*>( fTracks->At(itrack) );      
+      if (!aTrack) return -1;	
+
+      if ( aTrack->GetNDoF() > fSelNDegreesMin ){
+	chi2PerDeg =  aTrack->GetChi2() / aTrack->GetNDoF();
+
+	if( ( aTrack->GetDedx()    > fSeldEdX1Min )   && 
+	    ( aTrack->GetDedx()    < fSeldEdX1Max )   && 
+	    ( aTrack->GetBeta()    > fSelBetaMin  )   &&
+	    ( aTrack->GetBeta()    < fSelBetaMax  )   &&
+	    ( aTrack->GetEnergy()  > fSelEtMin    )   && 
+	    ( aTrack->GetEnergy()  < fSelEtMax    ) )  	    	    
+	  {
+	    Int_t x2D, y2D;
+	      	      
+	    if ( fNtracks > 1 ){
+	      Double_t hitpos3  = aTrack->GetX() + aTrack->GetTheta() * ( fScin2XZpos + 0.5 * fScin2XdZpos );
+	      Int_t icounter3  = TMath::Nint( ( hitpos3 - fHodo->GetPlaneCenter(2) ) / fHodo->GetPlaneSpacing(2) ) + 1;
+	      Int_t hitCnt3  = TMath::Max( TMath::Min(icounter3, (Int_t) fHodo->GetNPaddles(2) ) , 1); // scin_2x_nr = 16
+	      //	      fHitDist3 = fHitPos3 - ( fHodo->GetPlaneSpacing(2) * ( hitCnt3 - 1 ) + fHodo->GetPlaneCenter(2) );
+	      Double_t hitpos4 = aTrack->GetY() + aTrack->GetPhi() * ( fScin2YZpos + 0.5 * fScin2YdZpos );
+	      Int_t icounter4  = TMath::Nint( ( fHodo->GetPlaneCenter(3) - hitpos4 ) / fHodo->GetPlaneSpacing(3) ) + 1;
+	      Int_t hitCnt4  = TMath::Max( TMath::Min(icounter4, (Int_t) fHodo->GetNPaddles(3) ) , 1); // scin_2y_nr = 10
+	      //	      fHitDist4 = fHitPos4 - ( fHodo->GetPlaneCenter(3) - fHodo->GetPlaneSpacing(3) * ( hitCnt4 - 1 ) );
+	      // Plane 3
+	      Int_t mindiff=1000;
+	      for (UInt_t i = 0; i <  fHodo->GetNPaddles(2); i++ ){
+		if ( x2Hits[i] ) {
+		  Int_t diff = TMath::Abs((Int_t)hitCnt3-(Int_t)i-1);
+		  if (diff < mindiff) mindiff = diff;
+		}
+	      }
+	      if(mindiff < 1000) {
+		x2D = mindiff;
+	      } else {
+		x2D = 0;	// Is this what we really want if there were no hits on this plane?
+	      }
+
+	      // Plane 4
+	      mindiff = 1000;
+	      for (UInt_t i = 0; i < fHodo->GetNPaddles(3); i++ ){
+		if ( y2Hits[i] ) {		    
+		  Int_t diff = TMath::Abs((Int_t)hitCnt4-(Int_t)i-1);
+		  if (diff < mindiff) mindiff = diff;
+		}
+	      }
+	      if(mindiff < 1000) {
+		y2D = mindiff;
+	      } else {
+		y2D = 0;	// Is this what we really want if there were no hits on this plane?
+	      }
+	    } else { // Only a single track
+	      x2D = 0.;
+	      y2D = 0.;
+	    }
+
+	    if ( y2D <= y2Dmin ) {
+	      if ( y2D < y2Dmin ) {
+		x2Dmin = 100;
+		chi2Min = 10000000000.;
+	      } // y2D min
+
+	      if ( x2D <= x2Dmin ){
+		if ( x2D < x2Dmin ){
+		  chi2Min = 10000000000.0;
+		} // condition x2D
+		if ( chi2PerDeg < chi2Min ){
+
+		  fGoodTrack = itrack; // fGoodTrack = itrack
+		  y2Dmin = y2D;
+		  x2Dmin = x2D;
+		  chi2Min = chi2PerDeg;
+
+		  fGoldenTrack = static_cast<THaTrack*>( fTracks->At( fGoodTrack ) );
+		  fTrkIfo      = *fGoldenTrack;
+		  fTrk         = fGoldenTrack;
+		}		  
+	      } // condition x2D
+	    } // condition y2D
+	  } // conditions for dedx, beta and trac energy		  
+      } // confition for fNFreeFP greater than fSelNDegreesMin
+    } // loop over tracks      
+
+    // Fall back to using track with minimum chi2
+    if ( fGoodTrack == -1 ){
+      
+      chi2Min = 10000000000.0;
+      for (Int_t iitrack = 0; iitrack < fNtracks; iitrack++ ){
+	Double_t chi2PerDeg;
+	THaTrack* aTrack = dynamic_cast<THaTrack*>( fTracks->At(iitrack) );
+	if (!aTrack) return -1;
+	  
+	if ( aTrack->GetNDoF() > fSelNDegreesMin ){
+	  chi2PerDeg =  aTrack->GetChi2() / aTrack->GetNDoF();
+
+	  if ( chi2PerDeg < chi2Min ){
+	      
+	    fGoodTrack = iitrack;
+	    chi2Min = chi2PerDeg;
+
+	    fGoldenTrack = aTrack;
+	    fTrkIfo      = *fGoldenTrack;
+	    fTrk         = fGoldenTrack;
+
+	  }
+	}
+      } // loop over trakcs
+
+    } 
+
+  } else // Condition for fNtrack > 0
+    fGoldenTrack = NULL;
+
+  return(0);
+}
     
-    // linear regression to get beta and time at ref.
-    TIter nextSc( fNonTrackingDetectors );
-    THaNonTrackingDetector *det;
-    while ( ( det = static_cast<THaNonTrackingDetector*>(nextSc()) ) ) {
-      THaScintillator *sc = dynamic_cast<THaScintillator*>(det);
-      if ( !sc ) continue;
-
-      const THaTrackProj *trh = static_cast<THaTrackProj*>(sc->GetTrackHits()->At(i));
+//_____________________________________________________________________________
+Int_t THcHallCSpectrometer::BestTrackUsingPrune()
+{  
+  Int_t nGood;
+  Double_t chi2Min;
+
+  if ( fNtracks > 0 ) {
+    chi2Min   = 10000000000.0;
+    fGoodTrack = 0;    
+    Bool_t* keep      = new Bool_t [fNtracks];  
+    Int_t* reject    = new Int_t  [fNtracks];  
+
+    THaTrack *testTracks[fNtracks];
+
+    // ! Initialize all tracks to be good
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){
+      keep[ptrack] = kTRUE;
+      reject[ptrack] = 0;
+      testTracks[ptrack] = static_cast<THaTrack*>( fTracks->At(ptrack) );      
+      if (!testTracks[ptrack]) return -1;	
+    }      
       
-      Int_t pad = trh->GetChannel();
-      if (pad<0) continue;
-      Double_t pathl = (trh->GetPathLen()-pathlref);
-      Double_t time = (sc->GetTimes())[pad];
-      Double_t wgt = (sc->GetTuncer())[pad];
+    // ! Prune on xptar
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){
+      if ( ( TMath::Abs( testTracks[ptrack]->GetTTheta() ) < fPruneXp ) && ( keep[ptrack] ) ){	  
+	nGood ++;
+      }	
+    }
+    if ( nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){
+	if ( TMath::Abs( testTracks[ptrack]->GetTTheta() ) >= fPruneXp ){
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 1;
+	}
+      }
+    }
       
-      if (pathl>.5*kBig || time>.5*kBig) continue;
-      if (wgt>0) wgt = 1./(wgt*wgt);
-      else continue;
+    // ! Prune on yptar
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){
+      if ( ( TMath::Abs( testTracks[ptrack]->GetTPhi() ) < fPruneYp ) && ( keep[ptrack] ) ){
+	nGood ++; 
+      }
+    }
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){
+	if ( TMath::Abs( testTracks[ptrack]->GetTPhi() ) >= fPruneYp ){
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 2;
+  
+	}		
+      }
+    }
       
-      wgt_sum += wgt;
-      wx2 += wgt*pathl*pathl;
-      wx  += wgt*pathl;
-      wxy += wgt*pathl*time;
-      wy  += wgt*time;
-      ncnt++;
-    }
-
-    Double_t beta = kBig;
-    Double_t dbeta = kBig;
-    Double_t time = kBig;
-    Double_t dt = kBig;
-    
-    Double_t delta = wgt_sum*wx2-wx*wx;
-    
-    if (delta != 0.) {
-      time = (wx2*wy-wx*wxy)/delta;
-      dt = TMath::Sqrt(wx2/delta);
-      Double_t invbeta = (wgt_sum*wxy-wx*wy)/delta;
-      if (invbeta != 0.) {
-#if ROOT_VERSION_CODE >= ROOT_VERSION(3,4,0)
-	Double_t c = TMath::C();
-#else
-	Double_t c = 2.99792458e8;
-#endif
-	beta = 1./(c*invbeta);
-	dbeta = TMath::Sqrt(wgt_sum/delta)/(c*invbeta*invbeta);
+    // !     Prune on ytar
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	
+      if ( ( TMath::Abs( testTracks[ptrack]->GetTY() ) < fPruneYtar ) && ( keep[ptrack] ) ){
+	nGood ++; 
+      }	
+    }      
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){
+	if ( TMath::Abs( testTracks[ptrack]->GetTY() ) >= fPruneYtar ){
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 10;
+	}
       }
-    } 
+    }
+  
+    // !     Prune on delta
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	
+      if ( ( TMath::Abs( testTracks[ptrack]->GetDp() ) < fPruneDelta ) && ( keep[ptrack] ) ){
+	nGood ++; 
+      }	
+    }            
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){
+	if ( TMath::Abs( testTracks[ptrack]->GetDp() ) >= fPruneDelta ){
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 20;
+	}
+      }
+    }      
+            
+    // !     Prune on beta
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      
+      Double_t p = testTracks[ptrack]->GetP();
+      Double_t betaP = p / TMath::Sqrt( p * p + fPartMass * fPartMass );       
+      if ( ( TMath::Abs( testTracks[ptrack]->GetBeta() - betaP ) < fPruneBeta ) && ( keep[ptrack] ) ){
+	nGood ++; 
+      }	
+    }
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      
+	Double_t p = testTracks[ptrack]->GetP();
+	Double_t betaP = p / TMath::Sqrt( p * p + fPartMass * fPartMass );       
+	if ( TMath::Abs( testTracks[ptrack]->GetBeta() - betaP ) >= fPruneBeta ) {	    
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 100;	          
+	}	  
+      }	
+    }
+  
+    // !     Prune on deg. freedom for track chisq
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      	
+      if ( ( testTracks[ptrack]->GetNDoF() >= fPruneDf ) && ( keep[ptrack] ) ){
+	nGood ++; 	  
+      }		
+    }          
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      
+	if ( testTracks[ptrack]->GetNDoF() < fPruneDf ){	  
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 200;
+	}
+      }
+    }
 
-    track->SetBeta(beta);
-    track->SetdBeta(dbeta);
-    track->SetTime(time);
-    track->SetdTime(dt);
-  }
-#endif  
+    //!     Prune on num pmt hits
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      	
+      if ( ( testTracks[ptrack]->GetNPMT() >= fPruneNPMT ) && ( keep[ptrack] ) ){
+	nGood ++; 	  
+      }	        		
+    }
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      
+	if ( testTracks[ptrack]->GetNPMT() < fPruneNPMT ){
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 100000;
+	}
+      }
+    }
+
+    // !     Prune on beta chisqr
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      	
+      if ( ( testTracks[ptrack]->GetBetaChi2() < fPruneChiBeta ) && 
+	   ( testTracks[ptrack]->GetBetaChi2() > 0.01 )          &&   ( keep[ptrack] ) ){
+	nGood ++; 	  
+      }	        			
+    }
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      
+	if ( ( testTracks[ptrack]->GetBetaChi2() >= fPruneChiBeta ) || 
+	     ( testTracks[ptrack]->GetBetaChi2() <= 0.01          ) ){
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 1000;
+	}	  	  
+      }
+    }
+
+    // !     Prune on fptime
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      	
+      if ( ( TMath::Abs( testTracks[ptrack]->GetFPTime() - fHodo->GetStartTimeCenter() ) < fPruneFpTime )  &&   
+	   ( keep[ptrack] ) ){
+	nGood ++; 	  
+      }	        			
+    }
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      
+	if ( TMath::Abs( testTracks[ptrack]->GetFPTime() - fHodo->GetStartTimeCenter() ) >= fPruneFpTime ) {
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 2000;	    	    
+	}
+      }
+    }
+      
+    // !     Prune on Y2 being hit
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      	
+      if ( ( testTracks[ptrack]->GetGoodPlane4() == 1 )  &&  keep[ptrack] ) {
+	nGood ++; 	  	  
+      }	        			
+    }
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      
+	if ( testTracks[ptrack]->GetGoodPlane4() != 1 ) {
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 10000;	    	    
+	}
+      }
+    }      
+  
+    // !     Prune on X2 being hit
+    nGood = 0;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      	
+      if ( ( testTracks[ptrack]->GetGoodPlane3() == 1 )  &&  keep[ptrack] ) {
+	nGood ++; 	  	  
+      }	        			
+    }
+    if (nGood > 0 ) {
+      for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      
+	if ( testTracks[ptrack]->GetGoodPlane3() != 1 ) {
+	  keep[ptrack] = kFALSE;
+	  reject[ptrack] = reject[ptrack] + 20000;	    	    	    	    
+	}
+      }
+    }      
+      
+    // !     Pick track with best chisq if more than one track passed prune tests
+    Double_t chi2PerDeg = 0.;
+    for (Int_t ptrack = 0; ptrack < fNtracks; ptrack++ ){	      	
+
+      chi2PerDeg =  testTracks[ptrack]->GetChi2() / testTracks[ptrack]->GetNDoF();
+
+      if ( ( chi2PerDeg < chi2Min ) && ( keep[ptrack] ) ){
+	fGoodTrack = ptrack;
+	chi2Min = chi2PerDeg;
+      }	
+    }      
+
+    fGoldenTrack = static_cast<THaTrack*>( fTracks->At(fGoodTrack) );
+    fTrkIfo      = *fGoldenTrack;
+    fTrk         = fGoldenTrack;
+      
+  } else // Condition for fNtrack > 0
+    fGoldenTrack = NULL;
+
+  return(0);
+}
+
+//_____________________________________________________________________________
+Int_t THcHallCSpectrometer::TrackTimes( TClonesArray* Tracks ) {
+  // Do the actual track-timing (beta) calculation.
+  // Use multiple scintillators to average together and get "best" time at S1.
+  //
+  // To be useful, a meaningful timing resolution should be assigned
+  // to each Scintillator object (part of the database).
+
+  
   return 0;
 }
 
+//_____________________________________________________________________________
+Int_t THcHallCSpectrometer::ReadRunDatabase( const TDatime& date )
+{
+  // Override THaSpectrometer with nop method.  All needed kinamatics
+  // read in ReadDatabase.
+  
+  return kOK;
+}
+
 //_____________________________________________________________________________
 ClassImp(THcHallCSpectrometer)
diff --git a/src/THcHallCSpectrometer.h b/src/THcHallCSpectrometer.h
index f560bbff1dba69b8887ebcee648add6c155bfd2e..cfb1335defedc56c6de3d2d0659e89b5926d86be 100644
--- a/src/THcHallCSpectrometer.h
+++ b/src/THcHallCSpectrometer.h
@@ -9,6 +9,28 @@
 
 #include "THaSpectrometer.h"
 
+#include <vector>
+
+#include "TClonesArray.h"
+#include "THaNonTrackingDetector.h"
+#include "THcHitList.h"
+#include "THcRawHodoHit.h"
+#include "THcScintillatorPlane.h"
+#include "THcShower.h"
+
+//#include "THaTrackingDetector.h"
+//#include "THcHitList.h"
+#include "THcSpacePoint.h"
+#include "THcDriftChamberPlane.h"
+#include "THcDriftChamber.h"
+#include "TMath.h"
+
+#include "THaSubDetector.h"
+#include "TClonesArray.h"
+#include <iostream>
+#include <fstream>
+
+
 //class THaScintillator;
 
 class THcHallCSpectrometer : public THaSpectrometer {
@@ -17,20 +39,106 @@ public:
   THcHallCSpectrometer( const char* name, const char* description );
   virtual ~THcHallCSpectrometer();
 
+  virtual Int_t   ReadDatabase( const TDatime& date );
+  virtual void    EnforcePruneLimits();
   virtual Int_t   FindVertices( TClonesArray& tracks );
   virtual Int_t   TrackCalc();
+  virtual Int_t   BestTrackSimple();
+  virtual Int_t   BestTrackUsingScin();
+  virtual Int_t   BestTrackUsingPrune();
   virtual Int_t   TrackTimes( TClonesArray* tracks );
 
+  virtual Int_t   ReadRunDatabase( const TDatime& date );
+  virtual Int_t  DefineVariables( EMode mode = kDefine );
+
   Bool_t SetTrSorting( Bool_t set = kFALSE );
   Bool_t GetTrSorting() const;
-  
+
+  // Mass of nominal detected particle type
+  Double_t GetParticleMass() const {return fPartMass; }
+  Double_t GetBetaAtPcentral() const { return
+      fPcentral/TMath::Sqrt(fPcentral*fPcentral+fPartMass*fPartMass);}
+
 protected:
+  void InitializeReconstruction();
+
+  //  Bool_t*      fKeep;
+  //  Int_t*       fReject;
+
+  Double_t     fPartMass;
+  Double_t     fPruneXp;
+  Double_t     fPruneYp;
+  Double_t     fPruneYtar;
+  Double_t     fPruneDelta;
+  Double_t     fPruneBeta;
+  Double_t     fPruneDf;
+  Double_t     fPruneChiBeta;
+  Double_t     fPruneFpTime;
+  Double_t     fPruneNPMT;
+
+  Int_t        fGoodTrack;
+  Int_t        fSelUsingScin;
+  Int_t        fSelUsingPrune;
+  Int_t        fNPlanes;
+  Int_t        fNtracks;
+
+  Double_t     fSelNDegreesMin;
+  Double_t     fSeldEdX1Min;
+  Double_t     fSeldEdX1Max;
+  Double_t     fSelBetaMin;
+  Double_t     fSelBetaMax;
+  Double_t     fSelEtMin;
+  Double_t     fSelEtMax;
+  Double_t     fScin2XZpos;
+  Double_t     fScin2XdZpos;
+  Double_t     fScin2YZpos;
+  Double_t     fScin2YdZpos;
+
+  Double_t     fHodoCenter4, fHodoCenter3;
+  Double_t     fScin2YSpacing, fScin2XSpacing;
+
+  //  Int_t**   fHodScinHit;                // [4] Array
+
+  THcShower* fShower;
+  THcHodoscope* fHodo;
+
+  Int_t fNReconTerms;
+  struct reconTerm {
+    Double_t Coeff[4];
+    Int_t Exp[5];
+    reconTerm() {
+      for(Int_t i=0;i<4;i++) {
+	Coeff[i] = 0.0;
+      }
+      for(Int_t i=0;i<5;i++) {
+	Exp[i] = 0;
+      }
+    }
+  };
+  std::vector<reconTerm> fReconTerms;
+  //  Double_t fReconCoeff[fMaxReconElements][4];
+  //  Int_t fReconExponents[fMaxReconElements][5];
+  Double_t fAngSlope_x;
+  Double_t fAngSlope_y;
+  Double_t fAngOffset_x;
+  Double_t fAngOffset_y;
+  Double_t fDetOffset_x;
+  Double_t fDetOffset_y;
+  Double_t fZTrueFocus;
+  Double_t fThetaOffset; // Zero order term in yptar optics  matrix (rad)
+  Double_t fPhiOffset; // Zero order term in xptar optics matrix (rad)
+  Double_t fDeltaOffset; // Zero order term in delta optics matrix (%)
+  Double_t fThetaCentralOffset; // Offset of Central spectrometer angle (rad)
+  Double_t fOopCentralOffset; //Offset of central out-of-plane angle (rad) 
+  Double_t fPCentralOffset; // Offset Central spectrometer momentum (%)
+  Double_t fTheta_lab; // Central spectrometer angle (deg)
+  // For spectrometer central momentum use fPcentral in THaSpectrometer.h
   //  THaScintillator *sc_ref;  // calculate time track hits this plane
 
   // Flag for fProperties indicating that tracks are to be sorted by chi2
   static const UInt_t kSortTracks = BIT(16);
 
-  ClassDef(THcHallCSpectrometer,0) //A Hall A High Resolution Spectrometer
+  ClassDef(THcHallCSpectrometer,0) //A Hall C Spectrometer
 };
 
 #endif
diff --git a/src/THcHitList.cxx b/src/THcHitList.cxx
index 81464d6ec6aff6984bc571bb88a2ef3ef62674f4..cc18bcff15f96fa8d5275380870e57027e467399 100644
--- a/src/THcHitList.cxx
+++ b/src/THcHitList.cxx
@@ -4,9 +4,9 @@
 //
 // THcHitList
 //
-// Add hitlist to the Hall A detector base
-// May not need to inherit from THaDetectorBase since we may end up
-// replacing most of the methods
+// Class to build a Hall C ENGINE style list of raw hits from the raw data.
+// Detectors that use hit lists need to inherit from this class
+// as well as THaTrackingDetector or THaNonTrackingDetector
 //
 //////////////////////////////////////////////////////////////////////////
 
@@ -30,31 +30,31 @@ THcHitList::~THcHitList() {
 
 void THcHitList::InitHitList(THaDetMap* detmap,
 				  const char *hitclass, Int_t maxhits) {
-  // Probably called by ReadDatabase
+  // Save the electronics to detector mapping
+  // Initialize a hit array of hits of class hitclass
 
   fRawHitList = new TClonesArray(hitclass, maxhits);
   fRawHitClass = fRawHitList->GetClass();
   fNMaxRawHits = maxhits;
   fNRawHits = 0;
   for(Int_t i=0;i<maxhits;i++) {
-#if ROOT_VERSION_CODE >= ROOT_VERSION(5,32,0)
     fRawHitList->ConstructedAt(i);
-#else
-  // The essence of the ConstructedAt code explictly
-    TObject* obj = (*fRawHitList)[i];
-    R__ASSERT( obj );  // should never happen ...
-    if( !obj->TestBit(TObject::kNotDeleted) )
-      fRawHitClass->New(obj);
-#endif
   }
   
   fdMap = detmap;
 }
 
 Int_t THcHitList::DecodeToHitList( const THaEvData& evdata ) {
-  THcRawHit* rawhit;
+  // Clear the hit list
+  // Find all populated channels belonging to the detector and add
+  // the data to the hitlist.  A given counter in the detector can have
+  // at most one entry in the hit list.  However, the raw "hit" can contain
+  // multiple signal types (e.g. ADC+, ADC-, TDC+, TDC-), or multiple
+  // hits for multihit tdcs.
+  // The hit list is sorted (by plane, counter) after filling.
+
   // cout << " Clearing TClonesArray " << endl;
-  fRawHitList->Clear("C");
+  fRawHitList->Clear( );
   fNRawHits = 0;
 
   for ( Int_t i=0; i < fdMap->GetSize(); i++ ) {
@@ -63,6 +63,7 @@ Int_t THcHitList::DecodeToHitList( const THaEvData& evdata ) {
     // Loop over all channels that have a hit.
     //    cout << "Crate/Slot: " << d->crate << "/" << d->slot << endl;
     for ( Int_t j=0; j < evdata.GetNumChan( d->crate, d->slot); j++) {
+      THcRawHit* rawhit=0;
       
       Int_t chan = evdata.GetNextChan( d->crate, d->slot, j );
       if( chan < d->lo || chan > d->hi ) continue;     // Not one of my channels
@@ -76,7 +77,7 @@ Int_t THcHitList::DecodeToHitList( const THaEvData& evdata ) {
       // << counter << " " << signal << endl;
       // Search hit list for plane and counter
       // We could do sorting 
-      Int_t thishit = 0;
+      UInt_t thishit = 0;
       while(thishit < fNRawHits) {
 	rawhit = (THcRawHit*) (*fRawHitList)[thishit];
 	if (plane == rawhit->fPlane
@@ -89,6 +90,7 @@ Int_t THcHitList::DecodeToHitList( const THaEvData& evdata ) {
 
       if(thishit == fNRawHits) {
 	rawhit = (THcRawHit*) (*fRawHitList)[thishit];
+	rawhit->Clear();	// Blank out hit contents
 	fNRawHits++;
 	rawhit->fPlane = plane;
 	rawhit->fCounter = counter;
diff --git a/src/THcHitList.h b/src/THcHitList.h
index be90264a614912a2c85122ea76367863040ce356..27c299745591c5ade46900c7ccf638f6057eb5fd 100644
--- a/src/THcHitList.h
+++ b/src/THcHitList.h
@@ -20,7 +20,7 @@ using namespace std;
 
 class THcHitList {
 
- public:
+public:
 
   virtual ~THcHitList();
 
@@ -30,19 +30,17 @@ class THcHitList {
   void          InitHitList(THaDetMap* detmap,
 			    const char *hitclass, Int_t maxhits);
 
-  // This is a list of pointers to hit objects
-  // Instead should we have a list of the actual objects so that we are
-  // no delting and creating objects all the time.
-  //
-  Int_t         fNRawHits;
+  TClonesArray* GetHitList() const {return fRawHitList; }
+
+  UInt_t         fNRawHits;
   Int_t         fNMaxRawHits;
   TClonesArray* fRawHitList; // List of raw hits
   TClass* fRawHitClass;		  // Class of raw hit object to use
 
   THaDetMap*    fdMap;
 
- protected:
+protected:
 
-  ClassDef(THcHitList,0)
+  ClassDef(THcHitList,0);  // List of raw hits sorted by plane, counter
 };
 #endif
diff --git a/src/THcHodoscope.cxx b/src/THcHodoscope.cxx
index 7606f76074a360de5a0c12d71d8aff3066f17459..849eab2d107bc61062a31024b07b6efa17588226 100644
--- a/src/THcHodoscope.cxx
+++ b/src/THcHodoscope.cxx
@@ -7,12 +7,30 @@
 // This differs from Hall A scintillator class in that it is the whole       //
 // hodoscope array, not just one plane.                                      //
 //                                                                           //
+// Date July 8 2014:                                                         //
+// Zafr Ahmed                                                                //
+// Beta and chis square are calculated for each of the hodoscope track.      //
+// Two new variables are added. fBeta and fBetaChisq                         //
+//                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
+#include "THcSignalHit.h"
+#include "THcShower.h"
+#include "THcCherenkov.h"
+#include "THcHallCSpectrometer.h"
+
+#include "THcHitList.h"
+#include "THcRawShowerHit.h"
+#include "TClass.h"
+#include "math.h"
+#include "THaSubDetector.h"
+
 #include "THcHodoscope.h"
 #include "THaEvData.h"
 #include "THaDetMap.h"
 #include "THcDetectorMap.h"
+#include "THaGlobals.h"
+#include "THaCutList.h"
 #include "THcGlobals.h"
 #include "THcParmList.h"
 #include "VarDef.h"
@@ -22,13 +40,16 @@
 #include "TMath.h"
 
 #include "THaTrackProj.h"
+#include <vector>
 
 #include <cstring>
 #include <cstdio>
 #include <cstdlib>
 #include <iostream>
+#include <fstream>
 
 using namespace std;
+using std::vector;
 
 //_____________________________________________________________________________
 THcHodoscope::THcHodoscope( const char* name, const char* description,
@@ -37,7 +58,11 @@ THcHodoscope::THcHodoscope( const char* name, const char* description,
 {
   // Constructor
 
-  fTrackProj = new TClonesArray( "THaTrackProj", 5 );
+  //fTrackProj = new TClonesArray( "THaTrackProj", 5 );
+  // Construct the planes
+  fNPlanes = 0;			// No planes until we make them
+  fStartTime=-1e5;
+  fGoodStartTime=kFALSE;
 }
 
 //_____________________________________________________________________________
@@ -48,25 +73,130 @@ THcHodoscope::THcHodoscope( ) :
 }
 
 //_____________________________________________________________________________
-THaAnalysisObject::EStatus THcHodoscope::Init( const TDatime& date )
+void THcHodoscope::Setup(const char* name, const char* description)
 {
-  static const char* const here = "Init()";
 
-  if( THaNonTrackingDetector::Init( date ) )
-    return fStatus;
+  //  static const char* const here = "Setup()";
+  //  static const char* const message = 
+  //    "Must construct %s detector with valid name! Object construction failed.";
 
-  // Construct the planes
-  fPlane = new THcScintillatorPlane* [fNPlanes];
-  for(Int_t ip=0; ip<fNPlanes; ip++) {
-    // Create a name and description
-    // Is it going to be a problem that I create these object in init?
-    // I could actually do it in the constructor, since the parameters
-    // will already have been read.  Then I don't have to manually call
-    // ReadDatabase for each plane
-    GetTitle()
-    fPlane[ip] = THcScintillatorPlane( name, description); 
+  cout << "In THcHodoscope::Setup()" << endl;
+  // Base class constructor failed?
+  if( IsZombie()) return;
+
+  fDebug   = 1;  // Keep this at one while we're working on the code    
+
+  char prefix[2];
+
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+
+  string planenamelist;
+  DBRequest listextra[]={
+    {"hodo_num_planes", &fNPlanes, kInt},
+    {"hodo_plane_names",&planenamelist, kString},
+    {0}
+  };
+  //fNPlanes = 4; 		// Default if not defined
+  gHcParms->LoadParmValues((DBRequest*)&listextra,prefix);
+  
+  cout << "Plane Name List : " << planenamelist << endl;
+
+  vector<string> plane_names = vsplit(planenamelist);
+  // Plane names  
+  if(plane_names.size() != (UInt_t) fNPlanes) {
+    cout << "ERROR: Number of planes " << fNPlanes << " doesn't agree with number of plane names " << plane_names.size() << endl;
+    // Should quit.  Is there an official way to quit?
+  }
+  fPlaneNames = new char* [fNPlanes];
+  for(Int_t i=0;i<fNPlanes;i++) {
+    fPlaneNames[i] = new char[plane_names[i].length()+1];
+    strcpy(fPlaneNames[i], plane_names[i].c_str());
+  }
+
+  // Probably shouldn't assume that description is defined
+  char* desc = new char[strlen(description)+100];
+  fPlanes = new THcScintillatorPlane* [fNPlanes];
+  for(Int_t i=0;i < fNPlanes;i++) {
+    strcpy(desc, description);
+    strcat(desc, " Plane ");
+    strcat(desc, fPlaneNames[i]);
+    fPlanes[i] = new THcScintillatorPlane(fPlaneNames[i], desc, i+1, this); // Number planes starting from zero!!
+    cout << "Created Scintillator Plane " << fPlaneNames[i] << ", " << desc << endl;
   }
 
+  // --------------- To get energy from THcShower ----------------------
+  const char* shower_detector_name = "cal";  
+  //  THaApparatus* app;
+  THcHallCSpectrometer *app = dynamic_cast<THcHallCSpectrometer*>(GetApparatus());
+  THaDetector* det = app->GetDetector( shower_detector_name );
+
+  if( dynamic_cast<THcShower*>(det) ) {
+    fShower = dynamic_cast<THcShower*>(det);
+  }
+  else if( !dynamic_cast<THcShower*>(det) ) {
+    cout << "Warining: calorimeter analysis module " 
+	 << shower_detector_name << " not loaded for spectrometer "
+	 << prefix << endl;
+    
+    fShower = NULL;
+  }
+  
+  // --------------- To get energy from THcShower ----------------------
+
+  // --------------- To get NPEs from THcCherenkov -------------------
+  const char* chern_detector_name = "cher";
+  THaDetector* detc = app->GetDetector( chern_detector_name );
+  
+  if( dynamic_cast<THcCherenkov*>(detc) ) {
+    fChern = dynamic_cast<THcCherenkov*>(detc);  
+  }
+  else if( !dynamic_cast<THcCherenkov*>(detc) ) {
+    cout << "Warining: Cherenkov detector analysis module " 
+	 << chern_detector_name << " not loaded for spectrometer "
+	 << prefix << endl;
+    
+    fChern = NULL;
+  }
+  
+  // --------------- To get NPEs from THcCherenkov -------------------
+
+  fScinShould = 0;
+  fScinDid = 0;
+  gHcParms->Define(Form("%shodo_did",prefix),"Total hodo tracks",fScinDid);
+  gHcParms->Define(Form("%shodo_should",prefix),"Total hodo triggers",fScinShould);
+
+  // Save the nominal particle mass
+  fPartMass = app->GetParticleMass();
+  fBetaNominal = app->GetBetaAtPcentral();
+
+  delete [] desc;
+}
+
+//_____________________________________________________________________________
+THaAnalysisObject::EStatus THcHodoscope::Init( const TDatime& date )
+{
+  cout << "In THcHodoscope::Init()" << endl;
+  Setup(GetName(), GetTitle());
+
+  // Should probably put this in ReadDatabase as we will know the
+  // maximum number of hits after setting up the detector map
+  // But it needs to happen before the sub detectors are initialized
+  // so that they can get the pointer to the hitlist.
+
+
+  InitHitList(fDetMap, "THcRawHodoHit", 100);
+
+  EStatus status;
+  // This triggers call of ReadDatabase and DefineVariables
+  if( (status = THaNonTrackingDetector::Init( date )) )
+    return fStatus=status;
+
+  for(Int_t ip=0;ip<fNPlanes;ip++) {
+    if((status = fPlanes[ip]->Init( date ))) {
+      return fStatus=status;
+    }
+  }
 
   // Replace with what we need for Hall C
   //  const DataDest tmp[NDEST] = {
@@ -75,122 +205,333 @@ THaAnalysisObject::EStatus THcHodoscope::Init( const TDatime& date )
   //  };
   //  memcpy( fDataDest, tmp, NDEST*sizeof(DataDest) );
 
-  // Should probably put this in ReadDatabase as we will know the
-  // maximum number of hits after setting up the detector map
-
-  THcHitList::InitHitList(fDetMap, "THcHodoscopeHit", 100);
-
-  // Will need to determine which apparatus it belongs to and use the
-  // appropriate detector ID in the FillMap call
-  if( gHcDetectorMap->FillMap(fDetMap, "HSCIN") < 0 ) {
+  char EngineDID[]="xSCIN";
+  EngineDID[0] = toupper(GetApparatus()->GetName()[0]);
+  if( gHcDetectorMap->FillMap(fDetMap, EngineDID) < 0 ) {
+    static const char* const here = "Init()";
     Error( Here(here), "Error filling detectormap for %s.", 
-	     "HSCIN");
+	     EngineDID);
       return kInitError;
   }
 
+  fNScinHits     = new Int_t [fNPlanes];
+  fGoodPlaneTime = new Bool_t [fNPlanes];
+  fNPlaneTime    = new Int_t [fNPlanes];
+  fSumPlaneTime  = new Double_t [fNPlanes];
+
+  //  Double_t  fHitCnt4 = 0., fHitCnt3 = 0.;
+  
+  // Int_t m = 0;
+  // fScinHit = new Double_t*[fNPlanes];         
+  // for ( m = 0; m < fNPlanes; m++ ){
+  //   fScinHit[m] = new Double_t[fNPaddle[0]];
+  // }
+  
+
   return fStatus = kOK;
 }
+//_____________________________________________________________________________
+Double_t THcHodoscope::DefineDoubleVariable(const char* fName)
+{
+  // Define a variale of type double by looking it up in the THcParmList
+  char prefix[2];
+  char parname[100];
+  Double_t tmpvar=-1e6;
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+  strcpy(parname,prefix);
+  strcat(parname,fName);
+  if (gHcParms->Find(parname)) {
+    tmpvar=*(Double_t *)gHcParms->Find(parname)->GetValuePointer();
+    if (fDebug>=1)  cout << parname << " "<< tmpvar << endl;
+  } else {
+    cout << "*** ERROR!!! Could not find " << parname << " in the list of variables! ***" << endl;
+  }
+  return tmpvar;
+}
+
+//_____________________________________________________________________________
+Int_t THcHodoscope::DefineIntVariable(const char* fName)
+{
+  // Define a variale of type int by looking it up in the THcParmList
+  char prefix[2];
+  char parname[100];
+  Int_t tmpvar=-100000;
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+  strcpy(parname,prefix);
+  strcat(parname,fName);
+  if (gHcParms->Find(parname)) {
+    tmpvar=*(Int_t *)gHcParms->Find(parname)->GetValuePointer();
+    if (fDebug>=1)  cout << parname << " "<< tmpvar << endl;
+  } else {
+    cout << "*** ERROR!!! Could not find " << parname << " in the list of variables! ***" << endl;
+  }
+  return tmpvar;
+}
+
+//_____________________________________________________________________________
+void THcHodoscope::DefineArray(const char* fName, const Int_t index, Double_t *myArray)
+{
+  char prefix[2];
+  char parname[100];
+  //  Int_t tmpvar=-100000;
+   prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+  strcpy(parname,prefix);
+  strcat(parname,fName);
+  if (gHcParms->Find(parname)) {
+    if (fDebug >=1) cout <<parname;
+    Double_t* p = (Double_t *)gHcParms->Find(parname)->GetValuePointer();
+    for(Int_t i=0;i<index;i++) {
+      myArray[i] = p[i];
+      if (fDebug>=1)    cout << " " << myArray[i];
+    }
+    if (fDebug>=1)  cout << endl;
+
+  }
+  else {
+    cout <<" Could not find "<<parname<<" in the DataBase!!!\n";
+  }
+}
+
+//_____________________________________________________________________________
+void THcHodoscope::DefineArray(const char* fName, char** Suffix, const Int_t index, Double_t *myArray)
+{
+  // Try to read an array made up of what used to be (in the f77 days) a number of variables
+  // example: hscin_1x_center, hscin_1y_center, hscin_2x_center, hscin_2y_center will become scin_center
+  //
+  char prefix[2];
+  char parname[100],parname2[100];
+  //  
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+  strcpy(parname,prefix);
+  strcat(parname,fName);
+  for(Int_t i=0;i<index;i++) {
+    strcpy(parname2,Form(parname,Suffix[i]));
+    if (gHcParms->Find(parname2)) {
+      if (fDebug >=1) cout <<parname2;
+      myArray[i] = *(Double_t *)gHcParms->Find(parname2)->GetValuePointer();
+      if (fDebug>=1)    cout << " " << myArray[i];
+    }
+    if (fDebug>=1)  cout << endl;
+    else {
+      cout <<" Could not find "<<parname2<<" in the DataBase!!!\n";
+    }
+  }
+}
+
+//_____________________________________________________________________________
+void THcHodoscope::DefineArray(const char* fName, char** Suffix, const Int_t index, Int_t *myArray)
+{
+  // Try to read an array made up of what used to be (in the f77 days) a number of variables
+  // example: hscin_1x_center, hscin_1y_center, hscin_2x_center, hscin_2y_center will become scin_center
+  //
+  char prefix[2];
+  char parname[100],parname2[100];
+  //  
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+  strcpy(parname,prefix);
+  strcat(parname,fName);
+  for(Int_t i=0;i<index;i++) {
+    strcpy(parname2,Form(parname,Suffix[i]));
+    if (gHcParms->Find(parname2)) {
+      if (fDebug >=1) cout <<parname2;
+      myArray[i] = *(Int_t *)gHcParms->Find(parname2)->GetValuePointer();
+      if (fDebug>=1)    cout << " " << myArray[i];
+    }
+    if (fDebug>=1)  cout << endl;
+    else {
+      cout <<" Could not find "<<parname2<<" in the DataBase!!!\n";
+    }
+  }
+}
 
 //_____________________________________________________________________________
 Int_t THcHodoscope::ReadDatabase( const TDatime& date )
 {
+
   // Read this detector's parameters from the database file 'fi'.
   // This function is called by THaDetectorBase::Init() once at the
   // beginning of the analysis.
   // 'date' contains the date/time of the run being analyzed.
 
   //  static const char* const here = "ReadDatabase()";
+  char prefix[2];
+  char parname[100];
 
   // Read data from database 
   // Pull values from the THcParmList instead of reading a database
   // file like Hall A does.
 
-  //  DBRequest list[] = {
-  //    { "TDC_offsetsL", fLOff, kDouble, fNelem },
-  //    { "TDC_offsetsR", fROff, kDouble, fNelem },
-  //    { "ADC_pedsL", fLPed, kDouble, fNelem },
-  //    { "ADC_pedsR", fRPed, kDouble, fNelem },
-  //    { "ADC_coefL", fLGain, kDouble, fNelem },
-  //    { "ADC_coefR", fRGain, kDouble, fNelem },
-  //    { "TDC_res",   &fTdc2T },
-  //    { "TransSpd",  &fCn },
-  //    { "AdcMIP",    &fAdcMIP },
-  //    { "NTWalk",    &fNTWalkPar, kInt },
-  //    { "Timewalk",  fTWalkPar, kDouble, 2*fNelem },
-  //    { "ReTimeOff", fTrigOff, kDouble, fNelem },
-  //    { "AvgRes",    &fResolution },
-  //    { "Atten",     &fAttenuation },
-  //    { 0 }
-  //  };
-
-  // We will probably want to add some kind of method to gHcParms to allow
-  // bulk retrieval of parameters of interest.
-
   // Will need to determine which spectrometer in order to construct
   // the parameter names (e.g. hscin_1x_nr vs. sscin_1x_nr)
 
-  fNPlanes = 4;			// Hardwire for now
-
-  fNPaddle = new Int_t [4];
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  //
+  prefix[1]='\0';
+  strcpy(parname,prefix);
+  strcat(parname,"scin_");
+  //  Int_t plen=strlen(parname);
+  cout << " readdatabse hodo fnplanes = " << fNPlanes << endl;
 
-  fNPaddle[0] = *(Int_t *)gHcParms->Find("hscin_1x_nr")->GetValuePointer();
-  fNPaddle[1] = *(Int_t *)gHcParms->Find("hscin_1y_nr")->GetValuePointer();
-  fNPaddle[2] = *(Int_t *)gHcParms->Find("hscin_2x_nr")->GetValuePointer();
-  fNPaddle[3] = *(Int_t *)gHcParms->Find("hscin_2y_nr")->GetValuePointer();
+  fNPaddle = new UInt_t [fNPlanes];
 
-  fSpacing = new Double_t [4];
-  fSpacing[0] = gHcParms->Find("hscin_1x_spacing")->GetValue(0);
-  fSpacing[1] = gHcParms->Find("hscin_1y_spacing")->GetValue(0);
-  fSpacing[2] = gHcParms->Find("hscin_2x_spacing")->GetValue(0);
-  fSpacing[3] = gHcParms->Find("hscin_2y_spacing")->GetValue(0);
+  fFPTime = new Double_t [fNPlanes];
+  fPlaneCenter = new Double_t[fNPlanes];
+  fPlaneSpacing = new Double_t[fNPlanes];
 
-  fCenter = new Double_t* [4];
-  Double_t* p;
-  Int_t iplane;
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  //
+  prefix[1]='\0';
 
-  iplane = 0;
-  p = (Double_t *)gHcParms->Find("hscin_1x_center")->GetValuePointer();
-  fCenter[iplane] = new Double_t [fNPaddle[iplane]];
-  // Print out some parameters just to demonstrate that it works
-  cout << iplane;
-  for(Int_t i=0;i<fNPaddle[iplane];i++) {
-    fCenter[iplane][i] = p[i];
-    cout << " " << fCenter[iplane][i];
+  for(Int_t i=0;i<fNPlanes;i++) {
+    
+    DBRequest list[]={
+      {Form("scin_%s_nr",fPlaneNames[i]), &fNPaddle[i], kInt},
+      {0}
+    };
+    gHcParms->LoadParmValues((DBRequest*)&list,prefix);
   }
-  cout << endl;
 
-  iplane = 1;
-  p = (Double_t *)gHcParms->Find("hscin_1y_center")->GetValuePointer();
-  fCenter[iplane] = new Double_t [fNPaddle[iplane]];
-  cout << iplane;
-  for(Int_t i=0;i<fNPaddle[iplane];i++) {
-    fCenter[iplane][i] = p[i];
-    cout << " " << fCenter[iplane][i];
+  // GN added
+  // reading variables from *hodo.param
+  fMaxScinPerPlane=fNPaddle[0];
+  for (Int_t i=1;i<fNPlanes;i++) {
+    fMaxScinPerPlane=(fMaxScinPerPlane > fNPaddle[i])? fMaxScinPerPlane : fNPaddle[i];
   }
-  cout << endl;
+// need this for "padded arrays" i.e. 4x16 lists of parameters (GN)
+  fMaxHodoScin=fMaxScinPerPlane*fNPlanes; 
+  if (fDebug>=1)  cout <<"fMaxScinPerPlane = "<<fMaxScinPerPlane<<" fMaxHodoScin = "<<fMaxHodoScin<<endl;
+  
+  fHodoVelLight=new Double_t [fMaxHodoScin];
+  fHodoPosSigma=new Double_t [fMaxHodoScin];
+  fHodoNegSigma=new Double_t [fMaxHodoScin];
+  fHodoPosMinPh=new Double_t [fMaxHodoScin];
+  fHodoNegMinPh=new Double_t [fMaxHodoScin];
+  fHodoPosPhcCoeff=new Double_t [fMaxHodoScin];
+  fHodoNegPhcCoeff=new Double_t [fMaxHodoScin];
+  fHodoPosTimeOffset=new Double_t [fMaxHodoScin];
+  fHodoNegTimeOffset=new Double_t [fMaxHodoScin];
+  fHodoPosPedLimit=new Int_t [fMaxHodoScin];
+  fHodoNegPedLimit=new Int_t [fMaxHodoScin];
+  fHodoPosInvAdcOffset=new Double_t [fMaxHodoScin];
+  fHodoNegInvAdcOffset=new Double_t [fMaxHodoScin];
+  fHodoPosInvAdcLinear=new Double_t [fMaxHodoScin];
+  fHodoNegInvAdcLinear=new Double_t [fMaxHodoScin];
+  fHodoPosInvAdcAdc=new Double_t [fMaxHodoScin];
+  fHodoNegInvAdcAdc=new Double_t [fMaxHodoScin];
+  
+  fNHodoscopes = 2;
+  fxLoScin = new Int_t [fNHodoscopes]; 
+  fxHiScin = new Int_t [fNHodoscopes]; 
+  fyLoScin = new Int_t [fNHodoscopes]; 
+  fyHiScin = new Int_t [fNHodoscopes]; 
+  fHodoSlop = new Double_t [fNPlanes];
 
-  iplane = 2;
-  p = (Double_t *)gHcParms->Find("hscin_2x_center")->GetValuePointer();
-  fCenter[iplane] = new Double_t [fNPaddle[iplane]];
-  cout << iplane;
-  for(Int_t i=0;i<fNPaddle[iplane];i++) {
-    fCenter[iplane][i] = p[i];
-    cout << " " << fCenter[iplane][i];
-  }
-  cout << endl;
+  DBRequest list[]={
+    {"start_time_center",                &fStartTimeCenter,                      kDouble},
+    {"start_time_slop",                  &fStartTimeSlop,                        kDouble},
+    {"scin_tdc_to_time",                 &fScinTdcToTime,                        kDouble},
+    {"scin_tdc_min",                     &fScinTdcMin,                           kDouble},
+    {"scin_tdc_max",                     &fScinTdcMax,                           kDouble},
+    {"tof_tolerance",                    &fTofTolerance,          kDouble,         0,  1},
+    {"pathlength_central",               &fPathLengthCentral,                    kDouble},
+    {"hodo_vel_light",                   &fHodoVelLight[0],       kDouble,  fMaxHodoScin},
+    {"hodo_pos_sigma",                   &fHodoPosSigma[0],       kDouble,  fMaxHodoScin},
+    {"hodo_neg_sigma",                   &fHodoNegSigma[0],       kDouble,  fMaxHodoScin},
+    {"hodo_pos_minph",                   &fHodoPosMinPh[0],       kDouble,  fMaxHodoScin},
+    {"hodo_neg_minph",                   &fHodoNegMinPh[0],       kDouble,  fMaxHodoScin},
+    {"hodo_pos_phc_coeff",               &fHodoPosPhcCoeff[0],    kDouble,  fMaxHodoScin},
+    {"hodo_neg_phc_coeff",               &fHodoNegPhcCoeff[0],    kDouble,  fMaxHodoScin},
+    {"hodo_pos_time_offset",             &fHodoPosTimeOffset[0],  kDouble,  fMaxHodoScin},
+    {"hodo_neg_time_offset",             &fHodoNegTimeOffset[0],  kDouble,  fMaxHodoScin},
+    {"hodo_pos_ped_limit",               &fHodoPosPedLimit[0],    kInt,     fMaxHodoScin},
+    {"hodo_neg_ped_limit",               &fHodoNegPedLimit[0],    kInt,     fMaxHodoScin},
+    {"tofusinginvadc",                   &fTofUsingInvAdc,        kInt,            0,  1},       
+    {"xloscin",                          &fxLoScin[0],            kInt,     (UInt_t) fNHodoscopes},
+    {"xhiscin",                          &fxHiScin[0],            kInt,     (UInt_t) fNHodoscopes},
+    {"yloscin",                          &fyLoScin[0],            kInt,     (UInt_t) fNHodoscopes},
+    {"yhiscin",                          &fyHiScin[0],            kInt,     (UInt_t) fNHodoscopes},
+    {"track_eff_test_num_scin_planes",   &fTrackEffTestNScinPlanes,                 kInt},
+    {"cer_npe",                          &fNCerNPE,               kDouble,         0,  1},
+    {"normalized_energy_tot",            &fNormETot,              kDouble,         0,  1},
+    {"hodo_slop",                        fHodoSlop,               kDouble,  fNPlanes},
+    {0}
+  };
+  
+  fTofUsingInvAdc = 0;		// Default if not defined
+  fTofTolerance = 3.0;		// Default if not defined
+  fNCerNPE = 2.0;
+  fNormETot = 0.7;
 
-  iplane = 3;
-  p = (Double_t *)gHcParms->Find("hscin_2y_center")->GetValuePointer();
-  fCenter[iplane] = new Double_t [fNPaddle[iplane]];
-  cout << iplane;
-  for(Int_t i=0;i<fNPaddle[iplane];i++) {
-    fCenter[iplane][i] = p[i];
-    cout << " " << fCenter[iplane][i];
-  }
-  cout << endl;
+  gHcParms->LoadParmValues((DBRequest*)&list,prefix);
 
-  fIsInit = true;
+  cout << " x1 lo = " << fxLoScin[0] 
+       << " x2 lo = " << fxLoScin[1] 
+       << " x1 hi = " << fxHiScin[0] 
+       << " x2 hi = " << fxHiScin[1] 
+       << endl;
+
+  cout << " y1 lo = " << fyLoScin[0] 
+       << " y2 lo = " << fyLoScin[1] 
+       << " y1 hi = " << fyHiScin[0] 
+       << " y2 hi = " << fyHiScin[1] 
+       << endl;
 
+  cout << "Hdososcope planes hits for trigger = " << fTrackEffTestNScinPlanes 
+       << " normalized energy min = " << fNormETot
+       << " number of photo electrons = " << fNCerNPE
+       << endl;
+
+  if (fTofUsingInvAdc) {
+    DBRequest list2[]={
+      {"hodo_pos_invadc_offset",&fHodoPosInvAdcOffset[0],kDouble,fMaxHodoScin},
+      {"hodo_neg_invadc_offset",&fHodoNegInvAdcOffset[0],kDouble,fMaxHodoScin},
+      {"hodo_pos_invadc_linear",&fHodoPosInvAdcLinear[0],kDouble,fMaxHodoScin},
+      {"hodo_neg_invadc_linear",&fHodoNegInvAdcLinear[0],kDouble,fMaxHodoScin},
+      {"hodo_pos_invadc_adc",&fHodoPosInvAdcAdc[0],kDouble,fMaxHodoScin},
+      {"hodo_neg_invadc_adc",&fHodoNegInvAdcAdc[0],kDouble,fMaxHodoScin},
+      {0}
+    };
+    gHcParms->LoadParmValues((DBRequest*)&list2,prefix);
+  };
+  if (fDebug >=1) {
+    cout <<"******* Testing Hodoscope Parameter Reading ***\n";
+    cout<<"StarTimeCenter = "<<fStartTimeCenter<<endl;
+    cout<<"StartTimeSlop = "<<fStartTimeSlop<<endl;
+    cout <<"ScintTdcToTime = "<<fScinTdcToTime<<endl;
+    cout <<"TdcMin = "<<fScinTdcMin<<" TdcMax = "<<fScinTdcMax<<endl;
+    cout <<"TofTolerance = "<<fTofTolerance<<endl;
+    cout <<"*** VelLight ***\n";
+    for (Int_t i1=0;i1<fNPlanes;i1++) {
+      cout<<"Plane "<<i1<<endl;
+      for (UInt_t i2=0;i2<fMaxScinPerPlane;i2++) {
+	cout<<fHodoVelLight[GetScinIndex(i1,i2)]<<" ";
+      }
+      cout <<endl;
+    }
+    cout <<endl<<endl;
+    // check fHodoPosPhcCoeff
+    /*
+    cout <<"fHodoPosPhcCoeff = ";
+    for (int i1=0;i1<fMaxHodoScin;i1++) {
+      cout<<this->GetHodoPosPhcCoeff(i1)<<" ";
+    }
+    cout<<endl;
+    */
+  }
+  //
+  if ((fTofTolerance > 0.5) && (fTofTolerance < 10000.)) {
+    cout << "USING "<<fTofTolerance<<" NSEC WINDOW FOR FP NO_TRACK CALCULATIONS.\n";
+  }
+  else {
+    fTofTolerance= 3.0;
+    cout << "*** USING DEFAULT 3 NSEC WINDOW FOR FP NO_TRACK CALCULATIONS!! ***\n";
+  }
+  fIsInit = true;
   return kOK;
 }
 
@@ -198,51 +539,25 @@ Int_t THcHodoscope::ReadDatabase( const TDatime& date )
 Int_t THcHodoscope::DefineVariables( EMode mode )
 {
   // Initialize global variables and lookup table for decoder
-
+  cout << "THcHodoscope::DefineVariables called " << GetName() << endl;
   if( mode == kDefine && fIsSetup ) return kOK;
   fIsSetup = ( mode == kDefine );
 
   // Register variables in global list
 
-  //  RVarDef vars[] = {
-    //    hpostdc1 HMS s1x+ TDC hits
-    //    hnegtdc1 HMS s1x+ TDC hits
-    //...
-    //    hnegtdc4 HMS s2y- TDC hits
-
-  //  RVarDef vars[] = {
-  //    { "nlthit", "Number of Left paddles TDC times",  "fLTNhit" },
-  //    { "nrthit", "Number of Right paddles TDC times", "fRTNhit" },
-  //    { "nlahit", "Number of Left paddles ADCs amps",  "fLANhit" },
-  //    { "nrahit", "Number of Right paddles ADCs amps", "fRANhit" },
-  //    { "lt",     "TDC values left side",              "fLT" },
-  //    { "lt_c",   "Corrected times left side",         "fLT_c" },
-  //    { "rt",     "TDC values right side",             "fRT" },
-  //    { "rt_c",   "Corrected times right side",        "fRT_c" },
-  //    { "la",     "ADC values left side",              "fLA" },
-  //    { "la_p",   "Corrected ADC values left side",    "fLA_p" },
-  //    { "la_c",   "Corrected ADC values left side",    "fLA_c" },
-  //    { "ra",     "ADC values right side",             "fRA" },
-  //    { "ra_p",   "Corrected ADC values right side",   "fRA_p" },
-  //    { "ra_c",   "Corrected ADC values right side",   "fRA_c" },
-  //    { "nthit",  "Number of paddles with l&r TDCs",   "fNhit" },
-  //    { "t_pads", "Paddles with l&r coincidence TDCs", "fHitPad" },
-  //    { "y_t",    "y-position from timing (m)",        "fYt" },
-  //    { "y_adc",  "y-position from amplitudes (m)",    "fYa" },
-  //    { "time",   "Time of hit at plane (s)",          "fTime" },
-  //    { "dtime",  "Est. uncertainty of time (s)",      "fdTime" },
-  //    { "dedx",   "dEdX-like deposited in paddle",     "fAmpl" },
-  //    { "troff",  "Trigger offset for paddles",        "fTrigOff"},
-  //    { "trn",    "Number of tracks for hits",         "GetNTracks()" },
-  //    { "trx",    "x-position of track in det plane",  "fTrackProj.THaTrackProj.fX" },
-  //    { "try",    "y-position of track in det plane",  "fTrackProj.THaTrackProj.fY" },
-  //    { "trpath", "TRCS pathlen of track to det plane","fTrackProj.THaTrackProj.fPathl" },
-  //    { "trdx",   "track deviation in x-position (m)", "fTrackProj.THaTrackProj.fdX" },
-  //    { "trpad",  "paddle-hit associated with track",  "fTrackProj.THaTrackProj.fChannel" },
-  //    { 0 }
-  //  };
-  //  return DefineVarsFromList( vars, mode );
-  return kOK;
+  RVarDef vars[] = {
+    // Move these into THcHallCSpectrometer using track fTracks
+    {"fpHitsTime",      "Time at focal plane from all hits",         "fFPTime"},
+    {"starttime",       "Hodoscope Start Time",                      "fStartTime"},
+    {"goodstarttime",   "Hodoscope Good Start Time",                 "fGoodStartTime"},
+    {"goodscinhit",     "Hit in fid area",                           "fGoodScinHits"},
+    //    {"goodscinhitx",    "Hit in fid x range",                        "fGoodScinHitsX"},
+    {"scinshould",      "Total scin Hits in fid area",               "fScinShould"},
+    {"scindid",         "Total scin Hits in fid area with a track",  "fScinDid"},
+    { 0 }
+  };
+  return DefineVarsFromList( vars, mode );
+  //  return kOK;
 }
 
 //_____________________________________________________________________________
@@ -250,6 +565,10 @@ THcHodoscope::~THcHodoscope()
 {
   // Destructor. Remove variables from global list.
 
+  delete [] fFPTime;
+  delete [] fPlaneCenter;
+  delete [] fPlaneSpacing;
+
   if( fIsSetup )
     RemoveVariables();
   if( fIsInit )
@@ -264,36 +583,38 @@ THcHodoscope::~THcHodoscope()
 void THcHodoscope::DeleteArrays()
 {
   // Delete member arrays. Used by destructor.
-
-  delete [] fNPaddle;  fNPaddle = NULL;
-  delete [] fSpacing;  fSpacing = NULL;
-  delete [] fCenter;   fCenter = NULL; // This 2D. What is correct way to delete?
-
-  //  delete [] fRA_c;    fRA_c    = NULL;
-  //  delete [] fRA_p;    fRA_p    = NULL;
-  //  delete [] fRA;      fRA      = NULL;
-  //  delete [] fLA_c;    fLA_c    = NULL;
-  //  delete [] fLA_p;    fLA_p    = NULL;
-  //  delete [] fLA;      fLA      = NULL;
-  //  delete [] fRT_c;    fRT_c    = NULL;
-  //  delete [] fRT;      fRT      = NULL;
-  //  delete [] fLT_c;    fLT_c    = NULL;
-  //  delete [] fLT;      fLT      = NULL;
+  // Int_t k;  
+  // for( k = 0; k < fNPlanes; k++){
+  //   delete [] fScinHit[k];
+  // }
+  // delete [] fScinHit;
   
-  //  delete [] fRGain;   fRGain   = NULL;
-  //  delete [] fLGain;   fLGain   = NULL;
-  //  delete [] fRPed;    fRPed    = NULL;
-  //  delete [] fLPed;    fLPed    = NULL;
-  //  delete [] fROff;    fROff    = NULL;
-  //  delete [] fLOff;    fLOff    = NULL;
-  //  delete [] fTWalkPar; fTWalkPar = NULL;
-  //  delete [] fTrigOff; fTrigOff = NULL;
-
-  //  delete [] fHitPad;  fHitPad  = NULL;
-  //  delete [] fTime;    fTime    = NULL;
-  //  delete [] fdTime;   fdTime   = NULL;
-  //  delete [] fYt;      fYt      = NULL;
-  //  delete [] fYa;      fYa      = NULL;
+  delete [] fxLoScin;             fxLoScin = NULL;
+  delete [] fxHiScin;             fxHiScin = NULL;
+  delete [] fHodoSlop;            fHodoSlop = NULL;
+
+  delete [] fNPaddle;             fNPaddle = NULL;
+  delete [] fHodoVelLight;        fHodoVelLight = NULL;
+  delete [] fHodoPosSigma;        fHodoPosSigma = NULL;
+  delete [] fHodoNegSigma;        fHodoNegSigma = NULL;
+  delete [] fHodoPosMinPh;        fHodoPosMinPh = NULL;
+  delete [] fHodoNegMinPh;        fHodoNegMinPh = NULL;
+  delete [] fHodoPosPhcCoeff;     fHodoPosPhcCoeff = NULL;
+  delete [] fHodoNegPhcCoeff;     fHodoNegPhcCoeff = NULL;
+  delete [] fHodoPosTimeOffset;   fHodoPosTimeOffset = NULL;
+  delete [] fHodoNegTimeOffset;   fHodoNegTimeOffset = NULL;
+  delete [] fHodoPosPedLimit;     fHodoPosPedLimit = NULL;
+  delete [] fHodoNegPedLimit;     fHodoNegPedLimit = NULL;
+  delete [] fHodoPosInvAdcOffset; fHodoPosInvAdcOffset = NULL;
+  delete [] fHodoNegInvAdcOffset; fHodoNegInvAdcOffset = NULL;
+  delete [] fHodoPosInvAdcLinear; fHodoPosInvAdcLinear = NULL;
+  delete [] fHodoNegInvAdcLinear; fHodoNegInvAdcLinear = NULL;
+  delete [] fHodoPosInvAdcAdc;    fHodoPosInvAdcAdc = NULL;
+  delete [] fGoodPlaneTime;       fGoodPlaneTime = NULL;
+  delete [] fNPlaneTime;          fNPlaneTime = NULL;
+  delete [] fSumPlaneTime;        fSumPlaneTime = NULL;
+  delete [] fNScinHits;           fNScinHits = NULL;
+
 }
 
 //_____________________________________________________________________________
@@ -302,24 +623,100 @@ void THcHodoscope::ClearEvent()
 {
   // Reset per-event data.
 
-  fTrackProj->Clear();
+  //  for ( Int_t imaxhit = 0; imaxhit < MAXHODHITS; imaxhit++ ){
+  //    fBeta[imaxhit] = 0.;
+  //    fBetaChisq[imaxhit] = 0.;
+  //  }
+
+  for(Int_t ip=0;ip<fNPlanes;ip++) {
+    fPlanes[ip]->Clear();
+    fFPTime[ip]=0.;
+    fPlaneCenter[ip]=0.;
+    fPlaneSpacing[ip]=0.;
+  }
+  fdEdX.clear();
+  fScinHitPaddle.clear();
+  fNScinHit.clear();
+  fNClust.clear();
+  fThreeScin.clear();
+  fGoodScinHitsX.clear();
 }
 
 //_____________________________________________________________________________
 Int_t THcHodoscope::Decode( const THaEvData& evdata )
 {
-
+  ClearEvent();
   // Get the Hall C style hitlist (fRawHitList) for this event
-  Int_t nhits = THcHitList::DecodeToHitList(evdata);
+  Int_t nhits = DecodeToHitList(evdata);
+  //
+  // GN: print event number so we can cross-check with engine
+  // if (evdata.GetEvNum()>1000) 
+  //   cout <<"\nhcana_event " << evdata.GetEvNum()<<endl;
+  
+  fCheckEvent = evdata.GetEvNum();
+  fEventType =  evdata.GetEvType();
 
-  // fRawHitList is TClones array of THcHodoscopeHit objects
+  if(gHaCuts->Result("Pedestal_event")) {
+    Int_t nexthit = 0;
+    for(Int_t ip=0;ip<fNPlanes;ip++) {
+            
+      nexthit = fPlanes[ip]->AccumulatePedestals(fRawHitList, nexthit);
+    }
+    fAnalyzePedestals = 1;	// Analyze pedestals first normal events
+    return(0);
+  }
+  if(fAnalyzePedestals) {
+    for(Int_t ip=0;ip<fNPlanes;ip++) {
+      
+      fPlanes[ip]->CalculatePedestals();
+    }
+    fAnalyzePedestals = 0;	// Don't analyze pedestals next event
+  }
+
+  // Let each plane get its hits
+  Int_t nexthit = 0;
+
+  fStartTime=0;
+  fNfptimes=0;
+  for(Int_t ip=0;ip<fNPlanes;ip++) {
+
+    fPlaneCenter[ip] = fPlanes[ip]->GetPosCenter(0) + fPlanes[ip]->GetPosOffset();
+    fPlaneSpacing[ip] = fPlanes[ip]->GetSpacing();
+    
+    //    nexthit = fPlanes[ip]->ProcessHits(fRawHitList, nexthit);
+    // GN: select only events that have reasonable TDC values to start with
+    // as per the Engine h_strip_scin.f
+    nexthit = fPlanes[ip]->ProcessHits(fRawHitList,nexthit);
+    if (fPlanes[ip]->GetNScinHits()>0) {
+      fPlanes[ip]->PulseHeightCorrection();
+      // GN: allow for more than one fptime per plane!!
+      for (Int_t i=0;i<fPlanes[ip]->GetNScinGoodHits();i++) {
+	if (TMath::Abs(fPlanes[ip]->GetFpTime(i)-fStartTimeCenter)<=fStartTimeSlop) {
+	  fStartTime=fStartTime+fPlanes[ip]->GetFpTime(i);
+	  // GN write stuff out so I can compare with engine
+	  ///	  cout<<"hcana event= "<<evdata.GetEvNum()<<" fNfptimes= "<<fNfptimes<<" fptime= "<<fPlanes[ip]->GetFpTime(i)<<endl;
+	  fNfptimes++;
+	}
+      }
+    }
+  }
+  if (fNfptimes>0) {
+    fStartTime=fStartTime/fNfptimes;
+    fGoodStartTime=kTRUE;
+  } else {
+    fGoodStartTime=kFALSE;
+    fStartTime=fStartTimeCenter;
+  }
+#if 0
   for(Int_t ihit = 0; ihit < fNRawHits ; ihit++) {
-    THcHodoscopeHit* hit = (THcHodoscopeHit *) fRawHitList->At(ihit);
+    THcRawHodoHit* hit = (THcRawHodoHit *) fRawHitList->At(ihit);
     cout << ihit << " : " << hit->fPlane << ":" << hit->fCounter << " : "
 	 << hit->fADC_pos << " " << hit->fADC_neg << " "  <<  hit->fTDC_pos
 	 << " " <<  hit->fTDC_neg << endl;
   }
   cout << endl;
+#endif
+  ///  fStartTime = 500;		// Drift Chamber will need this
 
   return nhits;
 }
@@ -329,7 +726,6 @@ Int_t THcHodoscope::ApplyCorrections( void )
 {
   return(0);
 }
-
 //_____________________________________________________________________________
 Double_t THcHodoscope::TimeWalkCorrection(const Int_t& paddle,
 					     const ESide side)
@@ -338,35 +734,818 @@ Double_t THcHodoscope::TimeWalkCorrection(const Int_t& paddle,
 }
 
 //_____________________________________________________________________________
-Int_t THcHodoscope::CoarseProcess( TClonesArray& /* tracks */ )
+Int_t THcHodoscope::CoarseProcess( TClonesArray&  tracks  )
 {
-  // Calculation of coordinates of particle track cross point with scint
-  // plane in the detector coordinate system. For this, parameters of track 
-  // reconstructed in THaVDC::CoarseTrack() are used.
-  //
-  // Apply corrections and reconstruct the complete hits.
-  //
-  //  static const Double_t sqrt2 = TMath::Sqrt(2.);
-  
-  ApplyCorrections();
 
+  ApplyCorrections();
+ 
   return 0;
 }
 
 //_____________________________________________________________________________
 Int_t THcHodoscope::FineProcess( TClonesArray& tracks )
 {
-  // Reconstruct coordinates of particle track cross point with scintillator
-  // plane, and copy the data into the following local data structure:
+
+  Int_t ntracks = tracks.GetLast()+1; // Number of reconstructed tracks
+  Int_t timehist[200];
+  // -------------------------------------------------
+
+  fGoodScinHits = 0;
+  fScinShould = 0; fScinDid = 0;
+
+  if (tracks.GetLast()+1 > 0 ) {
+
+    // **MAIN LOOP: Loop over all tracks and get corrected time, tof, beta...
+    Double_t* nPmtHit = new Double_t [ntracks];
+    Double_t* timeAtFP = new Double_t [ntracks];
+    for ( Int_t itrack = 0; itrack < ntracks; itrack++ ) { // Line 133
+      nPmtHit[itrack]=0;
+      timeAtFP[itrack]=0;
+
+      THaTrack* theTrack = dynamic_cast<THaTrack*>( tracks.At(itrack) );
+      if (!theTrack) return -1;
+      
+      for (Int_t ip = 0; ip < fNPlanes; ip++ ){ 
+	fGoodPlaneTime[ip] = kFALSE; 
+	fNScinHits[ip] = 0;
+	fNPlaneTime[ip] = 0;
+	fSumPlaneTime[ip] = 0.;
+      }
+      std::vector<Double_t> dedx_temp;
+      fdEdX.push_back(dedx_temp); // Create array of dedx per hit
+      
+      Int_t nFPTime = 0;
+      Double_t betaChiSq = -3;
+      Double_t beta = 0;
+      //      timeAtFP[itrack] = 0.;
+      Double_t sumFPTime = 0.; // Line 138
+      fNScinHit.push_back(0);
+      Double_t p = theTrack->GetP(); // Line 142 
+      Double_t betaP = p/( TMath::Sqrt( p * p + fPartMass * fPartMass) );
+      
+      //! Calculate all corrected hit times and histogram
+      //! This uses a copy of code below. Results are save in time_pos,neg
+      //! including the z-pos. correction assuming nominal value of betap
+      //! Code is currently hard-wired to look for a peak in the
+      //! range of 0 to 100 nsec, with a group of times that all
+      //! agree withing a time_tolerance of time_tolerance nsec. The normal
+      //! peak position appears to be around 35 nsec.
+      //! NOTE: if want to find farticles with beta different than
+      //! reference particle, need to make sure this is big enough
+      //! to accomodate difference in TOF for other particles
+      //! Default value in case user hasnt definedd something reasonable
+      // Line 162 to 171 is already done above in ReadDatabase
+      
+      for (Int_t j=0; j<200; j++) { timehist[j]=0; } // Line 176
+      
+      // Loop over scintillator planes.
+      // In ENGINE, its loop over good scintillator hits.
+      
+      fTOFCalc.clear();
+      Int_t ihhit = 0;		// Hit # overall
+      for(Int_t ip = 0; ip < fNPlanes; ip++ ) {
+	
+	fNScinHits[ip] = fPlanes[ip]->GetNScinHits();
+	TClonesArray* scinPosADC = fPlanes[ip]->GetPosADC();
+	TClonesArray* scinNegADC = fPlanes[ip]->GetNegADC();
+	TClonesArray* scinPosTDC = fPlanes[ip]->GetPosTDC();
+	TClonesArray* scinNegTDC = fPlanes[ip]->GetNegTDC();  
+
+	// first loop over hits with in a single plane
+	fTOFPInfo.clear();
+	for (Int_t iphit = 0; iphit < fNScinHits[ip]; iphit++ ){
+	  // iphit is hit # within a plane
+	  	  
+	  fTOFPInfo.push_back(TOFPInfo());
+	  // Can remove these as we will initialize in the constructor
+	  fTOFPInfo[iphit].time_pos = -99.0;
+	  fTOFPInfo[iphit].time_neg = -99.0;
+	  fTOFPInfo[iphit].keep_pos = kFALSE;
+	  fTOFPInfo[iphit].keep_neg = kFALSE;
+	  fTOFPInfo[iphit].scin_pos_time = 0.0;
+	  fTOFPInfo[iphit].scin_neg_time = 0.0;
+	  
+	  Int_t paddle = ((THcSignalHit*)scinPosTDC->At(iphit))->GetPaddleNumber()-1;
+	  
+	  Double_t xHitCoord = theTrack->GetX() + theTrack->GetTheta() *
+	    ( fPlanes[ip]->GetZpos() +
+	      ( paddle % 2 ) * fPlanes[ip]->GetDzpos() ); // Line 183
+	  
+	  Double_t yHitCoord = theTrack->GetY() + theTrack->GetPhi() *
+	    ( fPlanes[ip]->GetZpos() +
+	      ( paddle % 2 ) * fPlanes[ip]->GetDzpos() ); // Line 184
+	  	  
+	  Double_t scinTrnsCoord, scinLongCoord;
+	  if ( ( ip == 0 ) || ( ip == 2 ) ){ // !x plane. Line 185
+	    scinTrnsCoord = xHitCoord;
+	    scinLongCoord = yHitCoord;
+	  }
+	  
+	  else if ( ( ip == 1 ) || ( ip == 3 ) ){ // !y plane. Line 188
+	    scinTrnsCoord = yHitCoord;
+	    scinLongCoord = xHitCoord;
+	  }
+	  else { return -1; } // Line 195
+	  
+	  Double_t scinCenter = fPlanes[ip]->GetPosCenter(paddle) + fPlanes[ip]->GetPosOffset();
+
+	  // Index to access the 2d arrays of paddle/scintillator properties
+	  Int_t fPIndex = fNPlanes * paddle + ip;
+	  
+
+	  if ( TMath::Abs( scinCenter - scinTrnsCoord ) <
+	       ( fPlanes[ip]->GetSize() * 0.5 + fPlanes[ip]->GetHodoSlop() ) ){ // Line 293
+	    
+	    if ( ( ((THcSignalHit*)scinPosTDC->At(iphit))->GetData() > fScinTdcMin ) &&
+		 ( ((THcSignalHit*)scinPosTDC->At(iphit))->GetData() < fScinTdcMax ) ) { // Line 199
+	      
+	      Double_t adcPh = ((THcSignalHit*)scinPosADC->At(iphit))->GetData();
+	      fTOFPInfo[iphit].adcPh = adcPh;
+	      Double_t path = fPlanes[ip]->GetPosLeft() - scinLongCoord;
+	      fTOFPInfo[iphit].path = path;
+	      Double_t time = ((THcSignalHit*)scinPosTDC->At(iphit))->GetData() * fScinTdcToTime;
+	      time = time - fHodoPosPhcCoeff[fPIndex] *
+		TMath::Sqrt( TMath::Max( 0., ( ( adcPh / fHodoPosMinPh[fPIndex] ) - 1 ) ) );
+	      time = time - ( path / fHodoVelLight[fPIndex] ) - ( fPlanes[ip]->GetZpos() +  
+			    ( paddle % 2 ) * fPlanes[ip]->GetDzpos() ) / ( 29.979 * betaP ) *
+		            TMath::Sqrt( 1. + theTrack->GetTheta() * theTrack->GetTheta() +
+			    theTrack->GetPhi() * theTrack->GetPhi() );
+	      fTOFPInfo[iphit].time = time;
+	      fTOFPInfo[iphit].time_pos = time - fHodoPosTimeOffset[fPIndex];
+	      
+	      for ( Int_t k = 0; k < 200; k++ ){ // Line 211
+		Double_t tmin = 0.5 * ( k + 1 ) ;
+		if ( ( fTOFPInfo[iphit].time_pos > tmin ) && ( fTOFPInfo[iphit].time_pos < ( tmin + fTofTolerance ) ) )
+		  timehist[k] ++;
+	      }
+	    } // TDC pos hit condition
+	    
+	    
+	    if ( ( ((THcSignalHit*)scinNegTDC->At(iphit))->GetData() > fScinTdcMin ) &&
+		 ( ((THcSignalHit*)scinNegTDC->At(iphit))->GetData() < fScinTdcMax ) ) { // Line 218
+	      
+	      Double_t adcPh = ((THcSignalHit*)scinNegADC->At(iphit))->GetData();
+	      fTOFPInfo[iphit].adcPh = adcPh;
+	      Double_t path =  scinLongCoord - fPlanes[ip]->GetPosRight();
+	      fTOFPInfo[iphit].path = path;
+	      Double_t time = ((THcSignalHit*)scinNegTDC->At(iphit))->GetData() * fScinTdcToTime;
+	      time =time - fHodoNegPhcCoeff[fPIndex] * 
+		TMath::Sqrt( TMath::Max( 0., ( ( adcPh / fHodoNegMinPh[fPIndex] ) - 1 ) ) );
+	      time = time - ( path / fHodoVelLight[fPIndex] ) - ( fPlanes[ip]->GetZpos() +
+			      ( paddle % 2 ) * fPlanes[ip]->GetDzpos() ) / ( 29.979 * betaP ) *
+		TMath::Sqrt( 1. + theTrack->GetTheta() * theTrack->GetTheta() +
+			     theTrack->GetPhi() * theTrack->GetPhi() );
+	      fTOFPInfo[iphit].time = time;
+	      fTOFPInfo[iphit].time_neg = time - fHodoNegTimeOffset[fPIndex];
+	      
+	      for ( Int_t k = 0; k < 200; k++ ){ // Line 230
+		Double_t tmin = 0.5 * ( k + 1 );
+		if ( ( fTOFPInfo[iphit].time_neg > tmin ) && ( fTOFPInfo[iphit].time_neg < ( tmin + fTofTolerance ) ) )
+		  timehist[k] ++;
+	      }
+	    } // TDC neg hit condition
+	  } // condition for cenetr on a paddle
+	} // First loop over hits in a plane <---------
+
+	//-----------------------------------------------------------------------------------------------
+	//------------- First large loop over scintillator hits in a plane ends here --------------------
+	//-----------------------------------------------------------------------------------------------
+	
+	Int_t jmax = 0; // Line 240
+	Int_t maxhit = 0;
+	
+	for ( Int_t k = 0; k < 200; k++ ){
+	  if ( timehist[k] > maxhit ){
+	    jmax = k+1;
+	    maxhit = timehist[k];
+	  }
+	}
+	
+	if ( jmax > 0 ){ // Line 248. Here I followed the code of THcSCintilaltorPlane::PulseHeightCorrection
+	  Double_t tmin = 0.5 * jmax;
+	  for(Int_t iphit = 0; iphit < fNScinHits[ip]; iphit++) { // Loop over sinc. hits. in plane
+	    if ( ( fTOFPInfo[iphit].time_pos > tmin ) && ( fTOFPInfo[iphit].time_pos < ( tmin + fTofTolerance ) ) ) {
+	      fTOFPInfo[iphit].keep_pos=kTRUE;
+	    }	
+	    if ( ( fTOFPInfo[iphit].time_neg > tmin ) && ( fTOFPInfo[iphit].time_neg < ( tmin + fTofTolerance ) ) ){
+	      fTOFPInfo[iphit].keep_neg=kTRUE;
+	    }	
+	  }
+	} // jmax > 0 condition
+	
+	//---------------------------------------------------------------------------------------------	
+	// ---------------------- Scond loop over scint. hits in a plane ------------------------------
+	//---------------------------------------------------------------------------------------------
+
+	for (Int_t iphit = 0; iphit < fNScinHits[ip]; iphit++ ){
+	  
+	  fTOFCalc.push_back(TOFCalc());
+	  // Do we set back to false for each track, or just once per event?
+	  fTOFCalc[ihhit].good_scin_time = kFALSE;
+	  // These need a track index too to calculate efficiencies
+	  fTOFCalc[ihhit].good_tdc_pos = kFALSE;
+	  fTOFCalc[ihhit].good_tdc_neg = kFALSE;
+	  fTOFCalc[ihhit].pindex = ip;
+
+	  //	  ihhit ++;
+	  //	  fRawIndex ++;   // Is fRawIndex ever different from ihhit
+	  Int_t rawindex = ihhit;
+
+	  Int_t paddle = ((THcSignalHit*)scinPosTDC->At(iphit))->GetPaddleNumber()-1;
+	  fTOFCalc[ihhit].hit_paddle = paddle;
+	  fTOFCalc[rawindex].good_raw_pad = paddle;
+	  
+	  Double_t xHitCoord = theTrack->GetX() + theTrack->GetTheta() *
+	    ( fPlanes[ip]->GetZpos() + ( paddle % 2 ) * fPlanes[ip]->GetDzpos() ); // Line 277
+	  Double_t yHitCoord = theTrack->GetY() + theTrack->GetPhi() *
+	    ( fPlanes[ip]->GetZpos() + ( paddle % 2 ) * fPlanes[ip]->GetDzpos() ); // Line 278
+	  
+	  Double_t scinTrnsCoord, scinLongCoord;
+	  if ( ( ip == 0 ) || ( ip == 2 ) ){ // !x plane. Line 278
+	    scinTrnsCoord = xHitCoord;
+	    scinLongCoord = yHitCoord;
+	  }
+	  else if ( ( ip == 1 ) || ( ip == 3 ) ){ // !y plane. Line 281
+	    scinTrnsCoord = yHitCoord;
+	    scinLongCoord = xHitCoord;
+	  }
+	  else { return -1; } // Line 288
+	  
+	  Double_t scinCenter = fPlanes[ip]->GetPosCenter(paddle) + fPlanes[ip]->GetPosOffset();
+	  Int_t fPIndex = fNPlanes * paddle + ip;
+	  
+	  // ** Check if scin is on track
+	  if ( TMath::Abs( scinCenter - scinTrnsCoord ) >
+	       ( fPlanes[ip]->GetSize() * 0.5 + fPlanes[ip]->GetHodoSlop() ) ){ // Line 293
+	  }
+	  else{	    
+	    // * * Check for good TDC
+	    if ( ( ((THcSignalHit*)scinPosTDC->At(iphit))->GetData() > fScinTdcMin ) &&
+		 ( ((THcSignalHit*)scinPosTDC->At(iphit))->GetData() < fScinTdcMax ) &&
+		 ( fTOFPInfo[iphit].keep_pos ) ) { // 301
+	      
+	      // ** Calculate time for each tube with a good tdc. 'pos' side first.
+	      fTOFCalc[ihhit].good_tdc_pos = kTRUE;
+	      Double_t adcPh = ((THcSignalHit*)scinPosADC->At(iphit))->GetData();
+	      fTOFPInfo[iphit].adcPh = adcPh;
+	      Double_t path = fPlanes[ip]->GetPosLeft() - scinLongCoord;
+	      fTOFPInfo[iphit].path = path;
+	      
+	      // * Convert TDC value to time, do pulse height correction, correction for
+	      // * propogation of light thru scintillator, and offset.	      
+	      Double_t time = ((THcSignalHit*)scinPosTDC->At(iphit))->GetData() * fScinTdcToTime;
+	      time = time - ( fHodoPosPhcCoeff[fPIndex] * TMath::Sqrt( TMath::Max( 0. , 
+					( ( adcPh / fHodoPosMinPh[fPIndex] ) - 1 ) ) ) );
+	      time = time - ( path / fHodoVelLight[fPIndex] );
+	      fTOFPInfo[iphit].time = time;
+	      fTOFPInfo[iphit].scin_pos_time = time - fHodoPosTimeOffset[fPIndex];
+	      
+	    } // check for good pos TDC condition
+	    
+	    // ** Repeat for pmts on 'negative' side
+	    if ( ( ((THcSignalHit*)scinNegTDC->At(iphit))->GetData() > fScinTdcMin ) &&
+		 ( ((THcSignalHit*)scinNegTDC->At(iphit))->GetData() < fScinTdcMax ) &&
+		 ( fTOFPInfo[iphit].keep_neg ) ) { //
+	      
+	      // ** Calculate time for each tube with a good tdc. 'pos' side first.
+	      fTOFCalc[ihhit].good_tdc_neg = kTRUE;
+	      //	      fNtof ++;
+	      Double_t adcPh = ((THcSignalHit*)scinNegADC->At(iphit))->GetData();
+	      fTOFPInfo[iphit].adcPh = adcPh;
+	      //	      Double_t path = fPlanes[ip]->GetPosRight() - scinLongCoord;
+	      Double_t path = scinLongCoord - fPlanes[ip]->GetPosRight();
+	      fTOFPInfo[iphit].path = path;
+	      
+	      // * Convert TDC value to time, do pulse height correction, correction for
+	      // * propogation of light thru scintillator, and offset.
+	      Double_t time = ((THcSignalHit*)scinNegTDC->At(iphit))->GetData() * fScinTdcToTime;
+	      time = time - ( fHodoNegPhcCoeff[fPIndex] *
+			   TMath::Sqrt( TMath::Max( 0. , ( ( adcPh / fHodoNegMinPh[fPIndex] ) - 1 ) ) ) );
+	      time = time - ( path / fHodoVelLight[fPIndex] );
+	      fTOFPInfo[iphit].time = time;
+	      fTOFPInfo[iphit].scin_neg_time = time - fHodoNegTimeOffset[fPIndex];
+      
+	    } // check for good neg TDC condition
+	    
+	    // ** Calculate ave time for scin and error.
+	    if ( fTOFCalc[ihhit].good_tdc_pos ){
+	      if ( fTOFCalc[ihhit].good_tdc_neg ){	
+		fTOFCalc[ihhit].scin_time  = ( fTOFPInfo[iphit].scin_pos_time + 
+					       fTOFPInfo[iphit].scin_neg_time ) / 2.;
+		fTOFCalc[ihhit].scin_sigma = TMath::Sqrt( fHodoPosSigma[fPIndex] * fHodoPosSigma[fPIndex] + 
+							  fHodoNegSigma[fPIndex] * fHodoNegSigma[fPIndex] )/2.;
+		fTOFCalc[ihhit].good_scin_time = kTRUE;
+	      }
+	      else{
+		fTOFCalc[ihhit].scin_time = fTOFPInfo[iphit].scin_pos_time;
+		fTOFCalc[ihhit].scin_sigma = fHodoPosSigma[fPIndex];
+		fTOFCalc[ihhit].good_scin_time = kTRUE;
+	      }
+	    }
+	    else {
+	      if ( fTOFCalc[ihhit].good_tdc_neg ){
+		fTOFCalc[ihhit].scin_time = fTOFPInfo[iphit].scin_neg_time;
+		fTOFCalc[ihhit].scin_sigma = fHodoNegSigma[fPIndex];
+		fTOFCalc[ihhit].good_scin_time = kTRUE;
+	      }
+	    } // In h_tof.f this includes the following if condition for time at focal plane
+	    // // because it is written in FORTRAN code
+
+	    // c     Get time at focal plane
+	    if ( fTOFCalc[ihhit].good_scin_time ){
+	      
+	      // scin_time_fp doesn't need to be an array
+	      Double_t scin_time_fp = fTOFCalc[ihhit].scin_time -
+	       	( fPlanes[ip]->GetZpos() + ( paddle % 2 ) * fPlanes[ip]->GetDzpos() ) /
+	       	( 29.979 * betaP ) *
+	       	TMath::Sqrt( 1. + theTrack->GetTheta() * theTrack->GetTheta() +
+	       		     theTrack->GetPhi() * theTrack->GetPhi() );
+
+	      sumFPTime = sumFPTime + scin_time_fp;
+	      nFPTime ++;
+
+	      fSumPlaneTime[ip] = fSumPlaneTime[ip] + scin_time_fp;
+	      fNPlaneTime[ip] ++;
+	      fNScinHit[itrack] ++;
+	      
+	      if ( ( fTOFCalc[ihhit].good_tdc_pos ) && ( fTOFCalc[ihhit].good_tdc_neg ) ){
+	      	nPmtHit[itrack] = nPmtHit[itrack] + 2;
+	      }
+	      else {
+	      	nPmtHit[itrack] = nPmtHit[itrack] + 1;
+	      }
+
+	      fdEdX[itrack].push_back(0.0);
+	      
+	      // --------------------------------------------------------------------------------------------
+	      if ( fTOFCalc[ihhit].good_tdc_pos ){
+		if ( fTOFCalc[ihhit].good_tdc_neg ){
+		  fdEdX[itrack][fNScinHit[itrack]-1]=
+		    TMath::Sqrt( TMath::Max( 0., ((THcSignalHit*)scinPosADC->At(iphit))->GetData() *
+                                                 ((THcSignalHit*)scinNegADC->At(iphit))->GetData() ) );
+		}
+		else{
+		  fdEdX[itrack][fNScinHit[itrack]-1]=
+		    TMath::Max( 0., ((THcSignalHit*)scinPosADC->At(iphit))->GetData() );
+	       	}
+	      }
+	      else{
+		if ( fTOFCalc[ihhit].good_tdc_neg ){
+		  fdEdX[itrack][fNScinHit[itrack]-1]=
+		    TMath::Max( 0., ((THcSignalHit*)scinNegADC->At(iphit))->GetData() );
+		}
+		else{
+		  fdEdX[itrack][fNScinHit[itrack]-1]=0.0;
+		}
+	      }
+	      // --------------------------------------------------------------------------------------------
+
+
+	    } // time at focal plane condition
+	  } // on track else condition
+	  
+	  // ** See if there are any good time measurements in the plane.
+	  if ( fTOFCalc[ihhit].good_scin_time ){
+	    fGoodPlaneTime[ip] = kTRUE;
+	    fTOFCalc[ihhit].dedx = fdEdX[itrack][fNScinHit[itrack]-1];
+	  } else {
+	    fTOFCalc[ihhit].dedx = 0.0;
+	  }
+
+	  // Can this be done after looping over hits and planes?
+	  if ( fGoodPlaneTime[2] )	theTrack->SetGoodPlane3( 1 );
+	  if ( !fGoodPlaneTime[2] )	theTrack->SetGoodPlane3( 0 );
+	  if ( fGoodPlaneTime[3] )	theTrack->SetGoodPlane4( 1 );
+	  if ( !fGoodPlaneTime[3] )	theTrack->SetGoodPlane4( 0 );
+
+	  ihhit ++;
+
+	} // Second loop over hits of a scintillator plane ends here
+      } // Loop over scintillator planes ends here
+
+      //------------------------------------------------------------------------------
+      //------------------------------------------------------------------------------
+      //------------------------------------------------------------------------------
+      //------------------------------------------------------------------------------
+      //------------------------------------------------------------------------------
+      //------------------------------------------------------------------------------
+      //------------------------------------------------------------------------------
+      //------------------------------------------------------------------------------
+
+      // * * Fit beta if there are enough time measurements (one upper, one lower)
+      // From h_tof_fit
+      if ( ( ( fGoodPlaneTime[0] ) || ( fGoodPlaneTime[1] ) ) && 
+	   ( ( fGoodPlaneTime[2] ) || ( fGoodPlaneTime[3] ) ) ){	
+	
+	Double_t sumW = 0.;
+	Double_t sumT = 0.;
+	Double_t sumZ = 0.;
+	Double_t sumZZ = 0.;
+	Double_t sumTZ = 0.;
+
+	ihhit = 0;  
+	for (Int_t ip = 0; ip < fNPlanes; ip++ ){
+	  
+	  if (!fPlanes[ip])
+	    return -1;
+	  
+	  fNScinHits[ip] = fPlanes[ip]->GetNScinHits();	  
+	  for (Int_t iphit = 0; iphit < fNScinHits[ip]; iphit++ ){
+	    
+	    if ( fTOFCalc[ihhit].good_scin_time ) {
+	      
+	      Double_t scinWeight = 1 / ( fTOFCalc[ihhit].scin_sigma * fTOFCalc[ihhit].scin_sigma );
+	      Double_t zPosition = ( fPlanes[ip]->GetZpos() + ( fTOFCalc[ihhit].hit_paddle % 2 ) * 
+			     fPlanes[ip]->GetDzpos() );
+	      
+	      sumW  += scinWeight;
+	      sumT  += scinWeight * fTOFCalc[ihhit].scin_time;
+	      sumZ  += scinWeight * zPosition;
+	      sumZZ += scinWeight * ( zPosition * zPosition );
+	      sumTZ += scinWeight * zPosition * fTOFCalc[ihhit].scin_time;
+	      	      
+	    } // condition of good scin time
+	    ihhit ++;
+	  } // loop over hits of plane
+	} // loop over planes
+	
+	Double_t tmp = sumW * sumZZ - sumZ * sumZ ;
+	Double_t t0 = ( sumT * sumZZ - sumZ * sumTZ ) / tmp ;
+	Double_t tmpDenom = sumW * sumTZ - sumZ * sumT;
+	
+	if ( TMath::Abs( tmpDenom ) > ( 1 / 10000000000.0 ) ) {
+	  
+	  beta = tmp / tmpDenom;
+	  betaChiSq = 0.;	  
+	  ihhit = 0;
+
+	  for (Int_t ip = 0; ip < fNPlanes; ip++ ){                           // Loop over planes
+	    if (!fPlanes[ip])
+	      return -1;
+	    
+	    fNScinHits[ip] = fPlanes[ip]->GetNScinHits();	  
+	    for (Int_t iphit = 0; iphit < fNScinHits[ip]; iphit++ ){                    // Loop over hits of a plane
+	      
+	      if ( fTOFCalc[ihhit].good_scin_time ){
+		
+		Double_t zPosition = ( fPlanes[ip]->GetZpos() + ( fTOFCalc[ihhit].hit_paddle % 2 ) * 
+			       fPlanes[ip]->GetDzpos() );
+		Double_t timeDif = ( fTOFCalc[ihhit].scin_time - t0 );		
+		betaChiSq += ( ( zPosition / beta - timeDif ) * 
+				( zPosition / beta - timeDif ) )  / 
+		              ( fTOFCalc[ihhit].scin_sigma * fTOFCalc[ihhit].scin_sigma );
+		
+	      } // condition for good scin time
+	      ihhit++;
+	    } // loop over hits of a plane
+	  } // loop over planes
+	  
+	  Double_t pathNorm = TMath::Sqrt( 1. + theTrack->GetTheta() * theTrack->GetTheta() + 
+				       theTrack->GetPhi()   * theTrack->GetPhi() );
+
+	  beta = beta / pathNorm;
+	  beta = beta / 29.979;    // velocity / c	  
+	  
+	}  // condition for fTmpDenom	
+	else {
+	  beta = 0.;
+	  betaChiSq = -2.;
+	} // else condition for fTmpDenom
+      }
+      else {
+	beta = 0.;
+	betaChiSq = -1;
+      }
+      
+      if ( nFPTime != 0 ){
+      	timeAtFP[itrack] = ( sumFPTime / nFPTime ); 
+      }
+      //
+      // ---------------------------------------------------------------------------
+            
+      Double_t FPTimeSum=0.0;
+      Int_t nFPTimeSum=0;
+      for (Int_t ip = 0; ip < fNPlanes; ip++ ){
+	if ( fNPlaneTime[ip] != 0 ){
+	  fFPTime[ip] = ( fSumPlaneTime[ip] / fNPlaneTime[ip] );
+	  FPTimeSum += fSumPlaneTime[ip];
+	  nFPTimeSum += fNPlaneTime[ip];
+	}
+	else{
+	  fFPTime[ip] = 1000. * ( ip + 1 );
+	}
+      }
+      Double_t fptime = FPTimeSum/nFPTimeSum;
+      
+      Double_t dedx=0.0;
+      for(UInt_t ih=0;ih<fTOFCalc.size();ih++) {
+	if(fTOFCalc[ih].good_scin_time) {
+	  dedx = fTOFCalc[ih].dedx;
+	  break;
+	}
+      }
+      theTrack->SetDedx(dedx);
+      theTrack->SetFPTime(fptime);
+      theTrack->SetBeta(beta);
+      theTrack->SetBetaChi2( betaChiSq );
+      theTrack->SetNPMT(nPmtHit[itrack]);
+      theTrack->SetFPTime( timeAtFP[itrack]);
+
+      
+    } // Main loop over tracks ends here.
+
+  } // If condition for at least one track
+
+  //-----------------------------------------------------------------------
   //
-  // Units of measurements are meters.
+  //   Trnslation of h_track_tests.f file for tracking efficiency
+  //
+  //-----------------------------------------------------------------------
+
+  //************************now look at some hodoscope tests
+  //  *second, we move the scintillators.  here we use scintillator cuts to see
+  //  *if a track should have been found.
+
+  for(Int_t ip = 0; ip < fNPlanes; ip++ ) {
+
+    std::vector<Double_t> scin_temp;
+    fScinHitPaddle.push_back(scin_temp); // Create array of hits per plane
+
+    for (UInt_t ipaddle = 0; ipaddle < fNPaddle[0]; ipaddle++ ){
+	  fScinHitPaddle[ip].push_back(0.0);
+	  fScinHitPaddle[ip][ipaddle] = 0.0;	  
+    }
+  }
+
+  for(Int_t ip = 0; ip < fNPlanes; ip++ ) {
+    if (!fPlanes[ip])
+      return -1;
+
+    TClonesArray* scinPosTDC = fPlanes[ip]->GetPosTDC();
+    TClonesArray* scinNegTDC = fPlanes[ip]->GetNegTDC();
+
+    fNScinHits[ip] = fPlanes[ip]->GetNScinHits();
+    for (Int_t iphit = 0; iphit < fNScinHits[ip]; iphit++ ){
+      Int_t paddlePos = ((THcSignalHit*)scinPosTDC->At(iphit))->GetPaddleNumber()-1;
+      Int_t paddleNeg = ((THcSignalHit*)scinNegTDC->At(iphit))->GetPaddleNumber()-1;
+      if ( paddlePos != paddleNeg )
+	return -1;
+      
+      fScinHitPaddle[ip][paddlePos] = 1;
+    }
+  }
+
+  //  *next, look for clusters of hits in a scin plane.  a cluster is a group of
+  //  *adjacent scintillator hits separated by a non-firing scintillator.
+  //  *Wwe count the number of three adjacent scintillators too.  (A signle track
+  //  *shouldn't fire three adjacent scintillators.
+
+  for(Int_t ip = 0; ip < fNPlanes; ip++ ) {
+    // Planes ip = 0 = 1X
+    // Planes ip = 2 = 2X
+    if (!fPlanes[ip]) return -1;
+    fNClust.push_back(0);
+    fThreeScin.push_back(0);
+  }
+
+  // *look for clusters in x planes... (16 scins)  !this assume both x planes have same
+  // *number of scintillators.
+  Int_t icount;
+  for (Int_t ip = 0; ip < 3; ip +=2 ) {
+    icount = 0;
+    if ( fScinHitPaddle[ip][0] == 1 )
+      icount ++;
+
+    for (Int_t ipaddle = 0; ipaddle < (Int_t) fNPaddle[0] - 1; ipaddle++ ){
+      // !look for number of clusters of 1 or more hits
+
+      if ( ( fScinHitPaddle[ip][ipaddle] == 0 ) &&
+	   ( fScinHitPaddle[ip][ipaddle + 1] == 1 ) )
+	icount ++;
+      
+    } // Loop over  paddles
+
+    fNClust[ip] = icount;
+    icount = 0;
+
+    for (Int_t ipaddle = 0; ipaddle < (Int_t) fNPaddle[0] - 2; ipaddle++ ){
+      // !look for three or more adjacent hits
+
+      if ( ( fScinHitPaddle[ip][ipaddle] == 1 ) &&
+	   ( fScinHitPaddle[ip][ipaddle + 1] == 1 ) &&
+	   ( fScinHitPaddle[ip][ipaddle + 2] == 1 ) )
+	icount ++;
+    } // Second loop over paddles
+
+    if ( icount > 0 )
+      fThreeScin[ip] = 1;
+
+  } // Loop over X plane
+
+  // *look for clusters in y planes... (10 scins)  !this assume both y planes have same  
+  // *number of scintillators.
+
+  for (Int_t ip = 1; ip < 4; ip +=2 ) {
+    // Planes ip = 1 = 1Y
+    // Planes ip = 3 = 2Y
+    if (!fPlanes[ip]) return -1;
+
+    icount = 0;
+    if ( fScinHitPaddle[ip][0] == 1 )
+      icount ++;
+
+    for (Int_t ipaddle = 0; ipaddle < (Int_t) fNPaddle[1] - 1; ipaddle++ ){
+      //  !look for number of clusters of 1 or more hits
+
+      if ( ( fScinHitPaddle[ip][ipaddle] == 0 ) &&
+	   ( fScinHitPaddle[ip][ipaddle + 1] == 1 ) )
+	icount ++;
 
-  // Calculation of coordinates of particle track cross point with scint
-  // plane in the detector coordinate system. For this, parameters of track 
-  // reconstructed in THaVDC::FineTrack() are used.
+    } // Loop over Y paddles
 
+    fNClust[ip] = icount;
+    icount = 0;
+
+    for (Int_t ipaddle = 0; ipaddle < (Int_t) fNPaddle[1] - 2; ipaddle++ ){
+      // !look for three or more adjacent hits
+
+      if ( ( fScinHitPaddle[ip][ipaddle] == 1 ) &&
+	   ( fScinHitPaddle[ip][ipaddle + 1] == 1 ) &&
+	   ( fScinHitPaddle[ip][ipaddle + 2] == 1 ) )
+	icount ++;
+
+    } // Second loop over Y paddles
+
+    if ( icount > 0 )
+      fThreeScin[ip] = 1;
+
+  }// Loop over Y planes
+
+  // *now put some "tracking" like cuts on the hslopes, based only on scins...
+  // *by "slope" here, I mean the difference in the position of scin hits in two
+  // *like-planes.  For example, a track that those great straight through will 
+  // *have a slope of zero.  If it moves one scin over from s1x to s2x it has an
+  // *x-slope of 1...  I pick the minimum slope if there are multiple scin hits.
+
+  Double_t bestXpScin = 100.0;
+  Double_t bestYpScin = 100.0;
+
+  for (Int_t ipaddle = 0; ipaddle < (Int_t) fNPaddle[0]; ipaddle++ ){
+    for (Int_t ipaddle2 = 0; ipaddle2 < (Int_t) fNPaddle[0]; ipaddle2++ ){
+
+      if ( ( fScinHitPaddle[0][ipaddle] == 1 ) &&
+	   ( fScinHitPaddle[2][ipaddle2] == 1 ) ){
+
+	Double_t slope = TMath::Abs(ipaddle - ipaddle2);
+
+	if ( slope < bestXpScin ) {
+	  bestXpScin = slope;
+
+	}
+      }
+    }  // Second loop over X paddles
+  } // First loop over X paddles
+
+
+  for (Int_t ipaddle = 0; ipaddle < (Int_t) fNPaddle[1]; ipaddle++ ){
+    for (Int_t ipaddle2 = 0; ipaddle2 < (Int_t) fNPaddle[1]; ipaddle2++ ){
+
+      if ( ( fScinHitPaddle[1][ipaddle] == 1 ) &&
+	   ( fScinHitPaddle[3][ipaddle2] == 1 ) ){
+
+	Double_t slope = TMath::Abs(ipaddle - ipaddle2);
+
+	if ( slope < bestYpScin ) {
+	  bestYpScin = slope;	
+	}
+      }
+    }  // Second loop over Y paddles
+  } // First loop over Y paddles
+
+  // *next we mask out the edge scintillators, and look at triggers that happened
+  // *at the center of the acceptance.  To change which scins are in the mask
+  // *change the values of h*loscin and h*hiscin in htracking.param
+
+  //      fGoodScinHits = 0;
+  for (Int_t ifidx = fxLoScin[0]; ifidx < (Int_t) fxHiScin[0]; ifidx ++ ){
+    fGoodScinHitsX.push_back(0);
+  }
+
+  // *first x plane.  first see if there are hits inside the scin region
+  for (Int_t ifidx = fxLoScin[0]-1; ifidx < fxHiScin[0]; ifidx ++ ){
+    if ( fScinHitPaddle[0][ifidx] == 1 ){
+      fHitSweet1X = 1;
+      fSweet1XScin = ifidx + 1;
+    }
+  }
+
+  // *  next make sure nothing fired outside the good region
+  for (Int_t ifidx = 0; ifidx < fxLoScin[0]-1; ifidx ++ ){
+    if ( fScinHitPaddle[0][ifidx] == 1 ){ fHitSweet1X = -1; }
+  }
+  for (Int_t ifidx = fxHiScin[0]; ifidx < (Int_t) fNPaddle[0]; ifidx ++ ){
+    if ( fScinHitPaddle[0][ifidx] == 1 ){ fHitSweet1X = -1; }
+  }
+
+  // *second x plane.  first see if there are hits inside the scin region
+  for (Int_t ifidx = fxLoScin[1]-1; ifidx < fxHiScin[1]; ifidx ++ ){
+    if ( fScinHitPaddle[2][ifidx] == 1 ){
+      fHitSweet2X = 1;
+      fSweet2XScin = ifidx + 1;
+    }
+  }
+  // *  next make sure nothing fired outside the good region
+  for (Int_t ifidx = 0; ifidx < fxLoScin[1]-1; ifidx ++ ){
+    if ( fScinHitPaddle[2][ifidx] == 1 ){ fHitSweet2X = -1; }
+  }
+  for (Int_t ifidx = fxHiScin[1]; ifidx < (Int_t) fNPaddle[2]; ifidx ++ ){
+    if ( fScinHitPaddle[2][ifidx] == 1 ){ fHitSweet2X = -1; }
+  }
+
+  // *first y plane.  first see if there are hits inside the scin region
+  for (Int_t ifidx = fyLoScin[0]-1; ifidx < fyHiScin[0]; ifidx ++ ){
+    if ( fScinHitPaddle[1][ifidx] == 1 ){
+      fHitSweet1Y = 1;
+      fSweet1YScin = ifidx + 1;
+    }
+  }
+  // *  next make sure nothing fired outside the good region
+  for (Int_t ifidx = 0; ifidx < fyLoScin[0]-1; ifidx ++ ){
+    if ( fScinHitPaddle[1][ifidx] == 1 ){ fHitSweet1Y = -1; }
+  }
+  for (Int_t ifidx = fyHiScin[0]; ifidx < (Int_t) fNPaddle[1]; ifidx ++ ){
+    if ( fScinHitPaddle[1][ifidx] == 1 ){ fHitSweet1Y = -1; }
+  }
+
+  // *second y plane.  first see if there are hits inside the scin region
+  for (Int_t ifidx = fyLoScin[1]-1; ifidx < fyHiScin[1]; ifidx ++ ){
+    if ( fScinHitPaddle[3][ifidx] == 1 ){
+      fHitSweet2Y = 1;
+      fSweet2YScin = ifidx + 1;
+    }
+  }
+
+  // *  next make sure nothing fired outside the good region
+  for (Int_t ifidx = 0; ifidx < fyLoScin[1]-1; ifidx ++ ){
+    if ( fScinHitPaddle[3][ifidx] == 1 ){ fHitSweet2Y = -1; }
+  }
+  for (Int_t ifidx = fyHiScin[1]; ifidx < (Int_t) fNPaddle[3]; ifidx ++ ){
+    if ( fScinHitPaddle[3][ifidx] == 1 ){ fHitSweet2Y = -1; }
+  }
+
+  fTestSum = fHitSweet1X + fHitSweet2X + fHitSweet1Y + fHitSweet2Y;
+
+  // * now define a 3/4 or 4/4 trigger of only good scintillators the value
+  // * is specified in htracking.param...
+  if ( fTestSum > fTrackEffTestNScinPlanes ){
+    fGoodScinHits = 1;
+    for (Int_t ifidx = fxLoScin[0]; ifidx < fxHiScin[0]; ifidx ++ ){
+      if ( fSweet1XScin == ifidx )
+	fGoodScinHitsX[ifidx] = 1;
+    }
+  }
+
+  // * require front/back hodoscopes be close to each other
+  if ( ( fGoodScinHits == 1 ) && ( fTrackEffTestNScinPlanes == 4 ) ){
+    if ( TMath::Abs( fSweet1XScin - fSweet2XScin ) > 3 )
+      fGoodScinHits = 0;
+    if ( TMath::Abs( fSweet1YScin - fSweet2YScin ) > 2 )
+      fGoodScinHits = 0;
+  }
+
+
+  if ( !fChern || !fShower ) { 
+    return 0;    
+  }
+
+  
+  if ( ( fGoodScinHits == 1 ) && ( fShower->GetNormETot() > fNormETot ) &&
+       ( fChern->GetCerNPE() > fNCerNPE ) )
+    fScinShould = 1;
+  
+  if ( ( fGoodScinHits == 1 ) && ( fShower->GetNormETot() > fNormETot ) &&
+       ( fChern->GetCerNPE() > fNCerNPE ) && ( tracks.GetLast() + 1 > 0 ) ) {
+      fScinDid = 1;
+  }
+  
   return 0;
+  
+}
+//_____________________________________________________________________________
+Int_t THcHodoscope::GetScinIndex( Int_t nPlane, Int_t nPaddle ) {
+  // GN: Return the index of a scintillator given the plane # and the paddle #
+  // This assumes that both planes and 
+  // paddles start counting from 0!
+  // Result also counts from 0.
+  return fNPlanes*nPaddle+nPlane;
+}
+//_____________________________________________________________________________
+Int_t THcHodoscope::GetScinIndex( Int_t nSide, Int_t nPlane, Int_t nPaddle ) {
+  return nSide*fMaxHodoScin+fNPlanes*nPaddle+nPlane-1;
+}
+//_____________________________________________________________________________
+Double_t THcHodoscope::GetPathLengthCentral() {
+  return fPathLengthCentral;
 }
-
 ClassImp(THcHodoscope)
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcHodoscope.h b/src/THcHodoscope.h
index df56b5376606de6b139ca51eafc5514e3f828beb..b0af34fba9f647f4acb7cdfa0247247037bebc0a 100644
--- a/src/THcHodoscope.h
+++ b/src/THcHodoscope.h
@@ -7,11 +7,29 @@
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
+#include <vector>
+
 #include "TClonesArray.h"
 #include "THaNonTrackingDetector.h"
 #include "THcHitList.h"
-#include "THcHodoscopeHit.h"
+#include "THcRawHodoHit.h"
 #include "THcScintillatorPlane.h"
+#include "THcShower.h"
+#include "THcCherenkov.h"
+
+#include "THaTrackingDetector.h"
+#include "THcHitList.h"
+#include "THcRawDCHit.h"
+#include "THcSpacePoint.h"
+#include "THcDriftChamberPlane.h"
+#include "THcDriftChamber.h"
+#include "TMath.h"
+
+#include "THaSubDetector.h"
+#include "TClonesArray.h"
+#include <iostream>
+#include <fstream>
+
 
 class THaScCalib;
 
@@ -24,36 +42,168 @@ public:
 
   virtual Int_t      Decode( const THaEvData& );
   virtual EStatus    Init( const TDatime& run_time );
+  
   virtual Int_t      CoarseProcess( TClonesArray& tracks );
   virtual Int_t      FineProcess( TClonesArray& tracks );
   
   virtual Int_t      ApplyCorrections( void );
-
-  //  Int_t GetNHits() const { return fNhit; }
-  
+  Double_t GetStartTime() const { return fStartTime; }
+  Bool_t IsStartTimeGood() const {return fGoodStartTime;};
+  Int_t GetNfptimes() const {return fNfptimes;};
+  Int_t GetScinIndex(Int_t nPlane, Int_t nPaddle);
+  Int_t GetScinIndex(Int_t nSide, Int_t nPlane, Int_t nPaddle);
+  Double_t GetPathLengthCentral();
   Int_t GetNTracks() const { return fTrackProj->GetLast()+1; }
+  Double_t GetTdcMin() const {return fScinTdcMin;}
+  Double_t GetTdcMax() const {return fScinTdcMax;}
+  Double_t GetTofTolerance() const {return fTofTolerance;}
+  Double_t GetTdcToTime() const {return fScinTdcToTime;}
+  Double_t GetBetaNominal() const {return fBetaNominal;}
+  Double_t GetHodoPosPhcCoeff(Int_t iii) const {return fHodoPosPhcCoeff[iii];}
+  Double_t GetHodoNegPhcCoeff(Int_t iii) const {return fHodoNegPhcCoeff[iii];}
+  Double_t GetHodoPosMinPh(Int_t iii) const {return fHodoPosMinPh[iii];}
+  Double_t GetHodoNegMinPh(Int_t iii) const {return fHodoNegMinPh[iii];}
+  Double_t GetHodoPosTimeOffset(Int_t iii) const {return fHodoPosTimeOffset[iii];}
+  Double_t GetHodoNegTimeOffset(Int_t iii) const {return fHodoNegTimeOffset[iii];}
+  Double_t GetHodoVelLight(Int_t iii) const {return fHodoVelLight[iii];}
+  Double_t GetStartTimeCenter() const {return fStartTimeCenter;}
+  Double_t GetStartTimeSlop() const {return fStartTimeSlop;}
+  Double_t GetBetaNotrk() const {return fBetaNotrk;}
+
+  Int_t GetGoodRawPad(Int_t iii){return fTOFCalc[iii].good_raw_pad;}
+  Int_t GetGoodRawPlane(Int_t iii){return fTOFCalc[iii].pindex;}
+  Int_t GetNScinHits(Int_t iii){return fNScinHits[iii];}
+  Int_t GetTotHits(){return fTOFCalc.size();}
+
+  UInt_t GetNPaddles(Int_t iii) { return fNPaddle[iii];}
+  Double_t GetHodoSlop(Int_t iii) { return fHodoSlop[iii];}
+  Double_t GetPlaneCenter(Int_t iii) { return fPlaneCenter[iii];}
+  Double_t GetPlaneSpacing(Int_t iii) { return fPlaneSpacing[iii];}
+
+  //  Double_t GetBeta() const {return fBeta[];}
+
+  // Not used
+  //Double_t GetBeta(Int_t itrack) const {return fBeta[itrack];} // Ahmed
+  //  Int_t GetEvent(){ return fCheckEvent;}
+
+  Double_t GetHodoPosSigma(Int_t iii) const {return fHodoPosSigma[iii];}
+  Double_t GetHodoNegSigma(Int_t iii) const {return fHodoNegSigma[iii];}
+
+
   const TClonesArray* GetTrackHits() const { return fTrackProj; }
-  
+
   friend class THaScCalib;
 
   THcHodoscope();  // for ROOT I/O
 protected:
 
+  Int_t fAnalyzePedestals;
+
   // Calibration
 
   // Per-event data
+  Bool_t fGoodStartTime;
+  Double_t fStartTime; 
+  Int_t fNfptimes;
 
+  Double_t fBetaNotrk;
+  // Per-event data
 
   // Potential Hall C parameters.  Mostly here for demonstration
-  Int_t fNPlanes;
-  Int_t* fNPaddle;		// Number of paddles per plane
-  Double_t* fSpacing;		// Paddle spacing in cm
-  Double_t** fCenter;           // Center position of each paddle
+  Int_t fNPlanes;		// Number of planes
+  UInt_t fMaxScinPerPlane,fMaxHodoScin; // max number of scin/plane; product of the first two 
+  Double_t fStartTimeCenter, fStartTimeSlop, fScinTdcToTime;
+  Double_t fTofTolerance;
+  Double_t fPathLengthCentral;
+  Double_t fScinTdcMin, fScinTdcMax; // min and max TDC values
+  char** fPlaneNames;
+  UInt_t* fNPaddle;		// Number of paddles per plane
+
+  Double_t* fHodoVelLight;
+  Double_t* fHodoPosSigma;
+  Double_t* fHodoNegSigma;
+
+  Double_t* fHodoPosMinPh;
+  Double_t* fHodoNegMinPh;
+  Double_t* fHodoPosPhcCoeff;
+  Double_t* fHodoNegPhcCoeff;
+  Double_t* fHodoPosTimeOffset;
+  Double_t* fHodoNegTimeOffset;
+  Int_t* fHodoPosPedLimit;
+  Int_t* fHodoNegPedLimit;
+  Int_t fTofUsingInvAdc;
+  Double_t* fHodoPosInvAdcOffset;
+  Double_t* fHodoNegInvAdcOffset;
+  Double_t* fHodoPosInvAdcLinear;
+  Double_t* fHodoNegInvAdcLinear;
+  Double_t* fHodoPosInvAdcAdc;
+  Double_t* fHodoNegInvAdcAdc;
 
-  THcScintillatorPlane** fPlane; // List of plane objects
+  Double_t fPartMass;		// Nominal particle mass
+  Double_t fBetaNominal;	// Beta for central ray of nominal particle type
+
+  THcScintillatorPlane** fPlanes; // List of plane objects
 
   TClonesArray*  fTrackProj;  // projection of track onto scintillator plane
                               // and estimated match to TOF paddle
+
+  //--------------------------   Ahmed   -----------------------------
+
+  THcShower* fShower;
+  THcCherenkov* fChern;
+
+
+  Int_t        fCheckEvent;
+  Int_t        fEventType;
+
+  Int_t        fGoodTrack;
+  Double_t     fScin2XZpos;
+  Double_t     fScin2XdZpos;
+  Double_t     fScin2YZpos;
+  Double_t     fScin2YdZpos;
+
+  Double_t     fChi2Min;
+  Double_t*    fPlaneCenter;
+  Double_t*    fPlaneSpacing;
+
+  Double_t     fNormETot;
+  Double_t     fNCerNPE;
+  Double_t*    fHodoSlop;
+  Int_t        fTestSum;
+  Int_t        fTrackEffTestNScinPlanes;
+  Int_t        fGoodScinHits;
+  Int_t        fScinShould;
+  Int_t        fScinDid;
+  Int_t*       fxLoScin;
+  Int_t*       fxHiScin;
+  Int_t*       fyLoScin;
+  Int_t*       fyHiScin;
+  Int_t        fNHodoscopes;
+
+  Int_t fHitSweet1X;
+  Int_t fHitSweet1Y;
+  Int_t fHitSweet2X;
+  Int_t fHitSweet2Y;
+  
+  Int_t fSweet1XScin;
+  Int_t fSweet1YScin;
+  Int_t fSweet2XScin;
+  Int_t fSweet2YScin;
+
+  //  Double_t**   fScinHit;                // [fNPlanes] Array
+
+  Double_t*    fFPTime;               // [fNPlanes] Array 
+
+
+  Double_t* fSumPlaneTime; // [fNPlanes]
+
+  Int_t* fNScinHits;  // [fNPlanes]
+  Int_t* fNPlaneTime; // [fNPlanes]
+
+  Bool_t* fGoodPlaneTime;  // [fNPlanes]
+
+  //----------------------------------------------------------------
+
   // Useful derived quantities
   // double tan_angle, sin_angle, cos_angle;
   
@@ -71,17 +221,67 @@ protected:
   //    Double_t*  gain;
   //  } fDataDest[NDEST];     // Lookup table for decoder
 
+  // Used in TOF calculation (FineProcess) to hold information about hits
+  // within a given plane
+  struct TOFPInfo {
+    Double_t time_pos;
+    Double_t time_neg;
+    Bool_t keep_pos;
+    Bool_t keep_neg;
+    Double_t adcPh;
+    Double_t path;
+    Double_t time;
+    Double_t scin_pos_time;
+    Double_t scin_neg_time;
+    TOFPInfo () : time_pos(-99.0), time_neg(-99.0), keep_pos(kFALSE),
+		  keep_neg(kFALSE), scin_pos_time(0.0), scin_neg_time(0.0) {}
+  };
+  std::vector<TOFPInfo> fTOFPInfo;
+  
+  // Used to hold information about all hits within the hodoscope for the TOF
+  struct TOFCalc {
+    Int_t hit_paddle;
+    Int_t pindex;		// Plane index
+    Int_t good_raw_pad;
+    Bool_t good_scin_time;
+    Bool_t good_tdc_pos;
+    Bool_t good_tdc_neg;
+    Double_t scin_time;
+    Double_t scin_sigma;
+    Double_t dedx;
+    TOFCalc() : good_scin_time(kFALSE), good_tdc_pos(kFALSE),
+		good_tdc_neg(kFALSE) {}
+  };
+  std::vector<TOFCalc> fTOFCalc;
+    // This doesn't work because we clear this structure each track
+    // Do we need an vector of vectors of structures?
+    // Start with a separate vector of vectors for now.
+  std::vector<std::vector<Double_t> > fdEdX;	        // Vector over track #
+  std::vector<Int_t > fNScinHit;		        // # scins hit for the track
+  std::vector<std::vector<Double_t> > fScinHitPaddle;	// Vector over hits in a plane #
+  std::vector<Int_t > fNClust;		                // # scins clusters for the plane
+  std::vector<Int_t > fThreeScin;	                // # scins three clusters for the plane
+  std::vector<Int_t > fGoodScinHitsX;                   // # hits in fid x range
+  // Could combine the above into a structure
+
+  //
+    
   void           ClearEvent();
   void           DeleteArrays();
   virtual Int_t  ReadDatabase( const TDatime& date );
   virtual Int_t  DefineVariables( EMode mode = kDefine );
-
+  Double_t DefineDoubleVariable(const char* fName);
+  Int_t    DefineIntVariable(const char* fName);
+  void DefineArray(const char* fName, const Int_t index, Double_t *myArray);
+  void DefineArray(const char* fName, char** Suffix, const Int_t index, Double_t *myArray);
+  void DefineArray(const char* fName, char** Suffix, const Int_t index, Int_t *myArray);
   enum ESide { kLeft = 0, kRight = 1 };
   
   virtual  Double_t TimeWalkCorrection(const Int_t& paddle,
 					   const ESide side);
+  void Setup(const char* name, const char* description);
 
-  ClassDef(THcHodoscope,0)   // Generic hodoscope class
+  ClassDef(THcHodoscope,0)   // Hodoscope detector
 };
 
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcInterface.cxx b/src/THcInterface.cxx
index 887c578e365631a327e1fcc1ad3b40faf65f01f9..e7c1d5b2e7631c6da07be1c5fa9148e655ea5442 100644
--- a/src/THcInterface.cxx
+++ b/src/THcInterface.cxx
@@ -38,15 +38,15 @@
 
 using namespace std;
 
-THaVarList*  gHaVars     = NULL;  // List of symbolic analyzer variables
-THaCutList*  gHaCuts     = NULL;  // List of global analyzer cuts/tests
-TList*       gHaApps     = NULL;  // List of Apparatuses
-TList*       gHaScalers  = NULL;  // List of scaler groups
-TList*       gHaPhysics  = NULL;  // List of physics modules
-THaRunBase*  gHaRun      = NULL;  // The currently active run
-TClass*      gHaDecoder  = NULL;  // Class(!) of decoder to use
-THaDB*       gHaDB       = NULL;  // Database system to use
-THaTextvars* gHaTextvars = NULL;  // Text variable definitions
+//THaVarList*  gHaVars     = NULL;  // List of symbolic analyzer variables
+//THaCutList*  gHaCuts     = NULL;  // List of global analyzer cuts/tests
+//TList*       gHaApps     = NULL;  // List of Apparatuses
+//TList*       gHaScalers  = NULL;  // List of scaler groups
+//TList*       gHaPhysics  = NULL;  // List of physics modules
+//THaRunBase*  gHaRun      = NULL;  // The currently active run
+//TClass*      gHaDecoder  = NULL;  // Class(!) of decoder to use
+//THaDB*       gHaDB       = NULL;  // Database system to use
+//THaTextvars* gHaTextvars = NULL;  // Text variable definitions
 
 THcParmList* gHcParms     = NULL;  // List of symbolic analyzer variables
 THcDetectorMap* gHcDetectorMap = NULL; // Global (Hall C style) detector map
@@ -73,7 +73,7 @@ THcInterface::THcInterface( const char* appClassName, int* argc, char** argv,
   if( !noLogo )
     PrintLogo();
 
-  SetPrompt("analyzer [%d] ");
+  SetPrompt("analyzerThcInterface [%d] ");
   gHaVars    = new THaVarList;
   gHcParms    = new THcParmList;
   gHaCuts    = new THaCutList( gHaVars );
@@ -86,6 +86,9 @@ THcInterface::THcInterface( const char* appClassName, int* argc, char** argv,
   //  gHaDB      = new THaFileDB();
   gHaTextvars = new THaTextvars;
 
+  //  cout << "In THcInterface ... " << endl;
+  //  cout << "Decoder => " << gHaDecoder << endl;
+
   // Set the maximum size for a file written by Podd contained by the TTree
   //  putting it to 1.5 GB, down from the default 1.9 GB since something odd
   //  happens for larger files
@@ -231,6 +234,7 @@ void THcInterface::PrintLogo( Bool_t lite )
 TClass* THcInterface::GetDecoder()
 {
   // Get class of the current decoder
+  cout << "In THcInterface::GetDecoder ... " << gHaDecoder << endl;
   return gHaDecoder;
 }
 
@@ -251,6 +255,8 @@ TClass* THcInterface::SetDecoder( TClass* c )
     return NULL;
   }
 
+  cout << "In THcInterface::SetDecoder ... " << c << endl;
+
   gHaDecoder = c;
   return gHaDecoder;
 }
diff --git a/src/THcParmList.cxx b/src/THcParmList.cxx
index 33087c882e7971c8d6f03013ff9bd2e9d9188e6d..e6caee667ac2d9aaf70b92790fbd6acdad46678a 100644
--- a/src/THcParmList.cxx
+++ b/src/THcParmList.cxx
@@ -10,11 +10,13 @@
 
 #include "TObjArray.h"
 #include "TObjString.h"
+#include "TSystem.h"
 
 #include "THcParmList.h"
 #include "THaVar.h"
 #include "THaFormula.h"
 
+#include "TMath.h"
 
 /* #incluce <algorithm> include <fstream> include <cstring> */
 #include <iostream>
@@ -23,19 +25,35 @@
 #include <cstdlib>
 
 using namespace std;
+Int_t  fDebug   = 1;  // Keep this at one while we're working on the code    
 
 ClassImp(THcParmList)
 
+THcParmList::THcParmList() : THaVarList()
+{
+  TextList = new THaTextvars;
+}
+
 inline static bool IsComment( const string& s, string::size_type pos )
 {
   return ( pos != string::npos && pos < s.length() &&
 	   (s[pos] == '#' || s[pos] == ';' || s.substr(pos,2) == "//") );
 }
 
-void THcParmList::Load( const char* fname )
+void THcParmList::Load( const char* fname, Int_t RunNumber )
 {
+  // Read a CTP style parameter file.
+  //
+  // Parameter values and arrays of values are cached in a THaVarList
+  // and are available for use elsewhere in the analyzer.
+  // Text strings are saved in a THaTextvars list.
+  // Parameter files can contain "include" statements of the form
+  //   #include "filename"
+  //
+  // If a run number is given, ignore input until a line with a matching
+  // run number or run number range is found.  All parameters following
+  // the are read until a non matching run number or range is encountered.
 
-  static const char* const here   = "THcParmList::LoadFromFile";
   static const char* const whtspc = " \t";
 
   ifstream ifiles[100];		// Should use stack instead
@@ -43,30 +61,40 @@ void THcParmList::Load( const char* fname )
   Int_t nfiles=0;
   ifiles[nfiles].open(fname);
   if(ifiles[nfiles].is_open()) {
-    cout << nfiles << ": " << "Opened \"" << fname << "\"" << endl;
+    cout << "Opening parameter file: [" << nfiles << "] " << fname << endl;
     nfiles++;
   }
 
   if(!nfiles) {
+    static const char* const here   = "THcParmList::LoadFromFile";
     Error (here, "error opening parameter file %s",fname);
     return;			// Need a success argument returned
   }
   
   string line;
-  Int_t nlines_read = 0, nparameters_read = 0;
   char varname[100];
+  Int_t InRunRange;
+  Int_t currentindex = 0;
 
   varname[0] = '\0';
 
+  if(RunNumber > 0) {
+    InRunRange = 0;		// Wait until run number range matching RunNumber is found
+    cout << "Reading Parameters for run " << RunNumber << endl;
+  } else {
+    InRunRange = 1;		// Interpret all lines
+  }
+
   while(nfiles) {
     string current_comment("");
-    string existing_comment("");
+    // EJB_Note:  existing_comment is never used.
+    // string existing_comment("");
     string::size_type start, pos = 0;
 
     if(!getline(ifiles[nfiles-1],line)) {
       ifiles[nfiles-1].close();
       nfiles--;
-      cout << nfiles << ": " << "Closed" << endl;
+      //      cout << nfiles << ": " << "Closed" << endl;
       continue;
     }
     // Look for include statement
@@ -84,16 +112,15 @@ void THcParmList::Load( const char* fname )
       } else {
 	line.erase(line.find_first_of(whtspc));
       }
-      cout << line << endl;
+      //      cout << line << endl;
       ifiles[nfiles].open(line.c_str());
       if(ifiles[nfiles].is_open()) {
-	cout << nfiles << ": " << "Opened \"" << line << "\"" << endl;
+	cout << "Opening parameter file: [" << nfiles << "] " << line << endl;
 	nfiles++;
       }
       continue;
     }
 
-
     // Blank line or comment?
     if( line.empty()
 	|| (start = line.find_first_not_of( whtspc )) == string::npos
@@ -108,12 +135,12 @@ void THcParmList::Load( const char* fname )
 	current_comment.assign(line,pos+1,line.length());
 	line.erase(pos);	// Strip off comment
 	// Strip leading white space from comment
-	cout << "CommentA: " << current_comment << endl;
+	//cout << "CommentA: " << current_comment << endl;
 	pos = current_comment.find_first_not_of(whtspc);
 	if(pos!=string::npos && pos > 0 && pos < current_comment.length()) {
 	  current_comment.erase(0,pos);
 	}
-	cout << "CommentB: " << current_comment << endl;
+	//cout << "CommentB: " << current_comment << endl;
 	break;
       }
     }
@@ -132,33 +159,103 @@ void THcParmList::Load( const char* fname )
       cout << "Skipping: " << line << endl;
       continue;
     }
-    // Ignore string assingments
-    if(line.find_first_of("\"'")!=string::npos) {
-      cout << "Skipping string assignment: " << line << endl;
-      continue;
-    }
 
-    // Get rid of all white space
-    while((pos=line.find_first_of(whtspc)) != string::npos) {
-      line.erase(pos,1);
+    // Get rid of all white space not in quotes
+    // Step through one char at a time 
+    pos = 0;
+    int inquote=0;
+    char quotechar=' ';
+    // cout << "Unstripped line: |" << line << "|" << endl;
+    while(pos<line.length()) {
+      if(inquote) {
+	if(line[pos++] == quotechar) { // Possibly end of quoted string
+	  if(line[pos] == quotechar) { // Protected quote
+	    pos++;		// Skip the protected quote
+	  } else {		// End of quoted string
+	    inquote = 0;
+	    quotechar = ' ';
+	    pos++;
+	  }
+	}
+      } else {
+	if(line[pos] == ' ' || line[pos] == '\t') {
+	  line.erase(pos,1);
+	} else if(line[pos] == '"' || line[pos] == '\'') {
+	  quotechar = line[pos++];\
+	  inquote = 1;
+	} else {
+	  pos++;
+	}
+      }
     }
+    // cout << "Stripped line: |" << line << "|" << endl;
+
     // Need to do something to bug out if line is empty
 
+    // If in Engine database mode, check if line is a number range AAAA-BBBB
+    if(RunNumber>0) {
+      if(line.find_first_not_of("0123456789-")==string::npos) { // Interpret as runnum range
+	if( (pos=line.find_first_of("-")) != string::npos) {
+	  Int_t RangeStart=atoi(line.substr(0,pos).c_str());
+	  Int_t RangeEnd=atoi(line.substr(pos+1,string::npos).c_str());
+	  if(RunNumber >= RangeStart && RunNumber <= RangeEnd) {
+	    InRunRange = 1;
+	  } else {
+	    InRunRange = 0;
+	  }
+	} else {		// A single number.  Run 
+	  if(atoi(line.c_str()) == RunNumber) {
+	    InRunRange = 1;
+	  } else {
+	    InRunRange = 0;
+	  }
+	}
+	continue;		// Skip to next line
+      }
+    }
+
+    if(!InRunRange) continue;
+
     // Interpret left of = as var name
     Int_t valuestartpos=0;  // Stays zero if no = found
-    Int_t existinglength=0;
     Int_t ttype = 0;     // Are any of the values floating point?
     if((pos=line.find_first_of("="))!=string::npos) {
       strcpy(varname, (line.substr(0,pos)).c_str());
       valuestartpos = pos+1;
+      currentindex = 0;
     }
 
+    // If first char after = is a quote, then this is a string assignment
+    if(line[valuestartpos] == '"' || line[valuestartpos] == '\'') {
+      quotechar = line[valuestartpos++];
+      // Scan until end of line or terminating quote
+      //      valuestartpos++;
+      pos = valuestartpos;
+      while(pos<line.length()) {
+	if(line[pos++] == quotechar) { // Possibly end of quoted string
+	  if(line[pos] == quotechar) { // Protected quote
+	    pos++;
+	  } else {
+	    pos--;
+	    break;
+	  }
+	}
+      }
+      if(TextList) {
+	// Should check that a numerical assignment doesn't exist, but for
+	// now, the same variable name can be used for strings and numbers
+	string varnames(varname);
+	AddString(varnames, line.substr(valuestartpos,pos-valuestartpos));
+      }
+      continue;
+    }
+      
     TString values((line.substr(valuestartpos)).c_str());
     TObjArray *vararr = values.Tokenize(",");
     Int_t nvals = vararr->GetLast()+1;
     
-    Int_t* ip;
-    Double_t* fp;
+    Int_t* ip=0;
+    Double_t* fp=0;
     // or expressions
     for(Int_t i=0;(ttype==0&&i<nvals);i++) {
       TString valstr = ((TObjString *)vararr->At(i))->GetString();
@@ -173,20 +270,43 @@ void THcParmList::Load( const char* fname )
       }
     }
 
-    if(valuestartpos==0) {	// We are adding to an existing array
-      // Copy out the array and delete the variable to be recreated
-      THaVar* existingvar=Find(varname);
-      if(existingvar) {
-	string existingcomment;
-	existingcomment.assign(existingvar->GetTitle());
-	if(!existingcomment.empty()) {
-	  current_comment.assign(existingcomment);
-	}
-	existinglength=existingvar->GetLen();
-	Int_t existingtype=existingvar->GetType();
+    // New pseudo code
+    // currentindex = where next item goes
+    // nvals = number of new items on line
+    // newlength = curentindex+nvals
+
+    // if (variable already exists)   (valuestartpos is 0 or a find succeeded)
+    //       get existinglegnth
+    //       if (existinglength > newlength && type doesn't change) {
+    //            copy nvals values directly into array
+    //       else
+    //            make new longer array of length max(existinglength, newlength)
+    //            copy existinglength values into longer array changing type if needed
+    //            delete old varname
+    //            recreate varname of proper length
+    // else (variable doesn't exist)
+    //      make array of newlength
+    //      create varname
+    //  
+    // There is some code duplication here.  Refactor later
+
+    Int_t newlength = currentindex + nvals;
+    THaVar* existingvar=Find(varname);
+    if(existingvar) {
+      string existingcomment;
+      existingcomment.assign(existingvar->GetTitle());
+      if(!existingcomment.empty()) {
+	current_comment.assign(existingcomment);
+      }
+      Int_t existingtype=existingvar->GetType();
+      Int_t existinglength=existingvar->GetLen();
+      if(newlength > existinglength ||
+	 (existingtype == kInt && ttype > 0)) { // Length or type change needed
+	if(newlength < existinglength) newlength = existinglength;
+	Int_t newtype=-1;
 	if(ttype>0 || existingtype == kDouble) {
-	  ttype = 1;
-	  fp = new Double_t[nvals+existinglength];
+	  newtype = kDouble;
+	  fp = new Double_t[newlength];
 	  if(existingtype == kDouble) {
 	    Double_t* existingp= (Double_t*) existingvar->GetValuePointer();
 	    for(Int_t i=0;i<existinglength;i++) {
@@ -201,7 +321,8 @@ void THcParmList::Load( const char* fname )
 	    cout << "Whoops!" << endl;
 	  }
 	} else if(existingtype == kInt) {	// Stays int
-	  ip = new Int_t[nvals+existinglength];
+	  newtype = kInt;
+	  ip = new Int_t[newlength];
 	  Int_t* existingp= (Int_t*) existingvar->GetValuePointer();
 	  for(Int_t i=0;i<existinglength;i++) {
 	    ip[i] = existingp[i];
@@ -209,49 +330,100 @@ void THcParmList::Load( const char* fname )
 	} else {
 	  cout << "Whoops!" << endl;
 	}
+	// Now copy new values in
+	for(Int_t i=0;i<nvals;i++) {
+	  TString valstr = ((TObjString *)vararr->At(i))->GetString();
+	  if(newtype == kInt) {
+	    ip[currentindex+i] = valstr.Atoi();
+	  } else {
+	    if(valstr.IsFloat()) {
+	      fp[currentindex+i] = valstr.Atof();
+	    } else {
+	      THaFormula* formula = new THaFormula("temp",valstr.Data()
+						   ,this, 0);
+	      fp[currentindex+i] = formula->Eval();
+	      delete formula;
+	    }
+	  }
+	}
+	currentindex += nvals;
+	// Remove old variable and recreate
+	if(existingtype == kDouble) {
+	  delete [] (Double_t*) existingvar->GetValuePointer();
+	} else if (existingtype == kInt) {
+	  delete [] (Int_t*) existingvar->GetValuePointer();
+	}
 	RemoveName(varname);
-      }
-    }
-	
-    if(nvals > 0) {		// It's an array
-      // Type the array floating unless all are ints.  (if any variables
-      // or expressions, go floating)
-      // Allocate the array
-      if(existinglength==0) {
-	if(ttype==0) {
-	  ip = new Int_t[nvals];
+	char *arrayname=new char [strlen(varname)+20];
+	sprintf(arrayname,"%s[%d]",varname,newlength);
+	if(newtype == kInt) {
+	  Define(arrayname, current_comment.c_str(), *ip);
+	} else {
+	  Define(arrayname, current_comment.c_str(), *fp);
+	}
+	delete[] arrayname;
+      } else {
+	// Existing array long enough and of right type, just copy to it.
+	if(ttype == 0 && existingtype == kInt) {
+	  Int_t* existingp= (Int_t*) existingvar->GetValuePointer();
+	  for(Int_t i=0;i<nvals;i++) {
+	    TString valstr = ((TObjString *)vararr->At(i))->GetString();
+	    existingp[currentindex+i] = valstr.Atoi();
+	  }
 	} else {
-	  fp = new Double_t[nvals];
+	  Double_t* existingp= (Double_t*) existingvar->GetValuePointer();
+	  for(Int_t i=0;i<nvals;i++) {
+	    TString valstr = ((TObjString *)vararr->At(i))->GetString();
+	    if(valstr.IsFloat()) {
+	      existingp[currentindex+i] = valstr.Atof();
+	    } else {
+	      THaFormula* formula = new THaFormula("temp",valstr.Data()
+						   ,this, 0);
+	      existingp[currentindex+i] = formula->Eval();
+	      delete formula;
+	    }
+	  }
 	}
+	currentindex += nvals;
+      }	
+    } else {
+      if(currentindex !=0) {
+	cout << "currentindex=" << currentindex << " shouldn't be!" << endl;
+      }
+      if(ttype==0) {
+	ip = new Int_t[nvals];
+      } else {
+	fp = new Double_t[nvals];
       }
       for(Int_t i=0;i<nvals;i++) {
 	TString valstr = ((TObjString *)vararr->At(i))->GetString();
 	if(ttype==0) {
-	  ip[existinglength+i] = valstr.Atoi();
+	  ip[i] = valstr.Atoi();
 	} else {
 	  if(valstr.IsFloat()) {
-	    fp[existinglength+i] = valstr.Atof();
+	    fp[i] = valstr.Atof();
 	  } else {
 	    THaFormula* formula = new THaFormula("temp",valstr.Data()
 						 ,this, 0);
-	    fp[existinglength+i] = formula->Eval();
+	    fp[i] = formula->Eval();
 	    delete formula;
 	  }
 	}
-	//	cout << i << " " << valstr << endl;;
       }
+      currentindex = nvals;
+      
       char *arrayname=new char [strlen(varname)+20];
-      sprintf(arrayname,"%s[%d]",varname,nvals+existinglength);
+      sprintf(arrayname,"%s[%d]",varname,nvals);
       if(ttype==0) {
 	Define(arrayname, current_comment.c_str(), *ip);
       } else {
 	Define(arrayname, current_comment.c_str(), *fp);
       }
       delete[] arrayname;
-    } else {
-      cout << "nvals is zero??  Maybe continued on next line" << endl;
     }
 
+    delete vararr;		// Discard result of Tokenize
+
     //    cout << line << endl;
 
   }
@@ -259,4 +431,274 @@ void THcParmList::Load( const char* fname )
   return;
 
 }
-//
+//_____________________________________________________________________________
+Int_t THcParmList::LoadParmValues(const DBRequest* list, const char* prefix)
+{
+  // Load a number of entries from the database.
+  // For array entries, the number of elements to be read in
+  // must be given, and the memory already allocated
+  // NOTE: initial code taken wholesale from THaDBFile. 
+  // GN 2012
+  // If prefix is specified, prepend each requested parameter name with
+  // the prefix.
+  
+  const DBRequest *ti = list;
+  Int_t cnt=0;
+  Int_t this_cnt=0;
+
+  if( !prefix ) prefix = "";
+
+  while ( ti && ti->name ) {
+    string keystr(prefix); keystr.append(ti->name);
+    const char* key = keystr.c_str();
+    ///    cout <<"Now at "<<ti->name<<endl;
+    this_cnt = 0;
+    if(this->Find(key)) {
+      VarType ty = this->Find(key)->GetType();
+      if (ti->nelem>1) {
+	// it is an array, use the appropriateinterface
+	switch (ti->type) {
+	case (kDouble) :
+	  this_cnt = GetArray(key,static_cast<Double_t*>(ti->var),ti->nelem);
+	  break;
+	case (kInt) :
+	  this_cnt = GetArray(key,static_cast<Int_t*>(ti->var),ti->nelem);
+	  break;
+	default:
+	  Error("THcParmList","Invalid type to read %s",key);
+	  break;
+	}
+
+      } else {
+	switch (ti->type) {
+	case (kDouble) :
+	  if(ty == kInt) {
+	    *static_cast<Double_t*>(ti->var)=*(Int_t *)this->Find(key)->GetValuePointer();	    
+	  } else if (ty == kDouble) {
+	    *static_cast<Double_t*>(ti->var)=*(Double_t *)this->Find(key)->GetValuePointer();
+	  } else {
+	    cout << "*** ERROR!!! Type Mismatch " << key << endl;
+	  }
+	  this_cnt=1;
+
+	  break;
+	case (kInt) :
+	  if(ty == kInt) {
+	    *static_cast<Int_t*>(ti->var)=*(Int_t *)this->Find(key)->GetValuePointer();
+	  } else if (ty == kDouble) {
+	    *static_cast<Int_t*>(ti->var)=TMath::Nint(*(Double_t *)this->Find(key)->GetValuePointer());
+	    cout << "*** WARNING!!!  Rounded " << key << " to nearest integer " << endl;
+	  } else {
+	    cout << "*** ERROR!!! Type Mismatch " << key << endl;
+	  }
+	  this_cnt=1;
+	  break;
+	default:
+	  Error("THcParmList","Invalid type to read %s",key);
+	  break;
+	}
+      }
+    } else {			// See if it is a text variable
+      const char* value = GetString(key);
+      if(value) {
+	this_cnt = 1;
+	if(ti->type == kString) {
+	  *((string*)ti->var) = string(value);
+	} else if (ti->type == kTString) {
+	  *((TString*)ti->var) = (TString) value;
+	} else {
+	  Error("THcParmList","No conversion for strings: %s",key);
+	}
+      }
+    }
+    if (this_cnt<=0) {
+      if ( !ti->optional ) {
+	Fatal("THcParmList","Could not find %s in database!",key);
+      }
+    }
+    cnt += this_cnt;
+    ti++;
+  }
+  return cnt;
+}
+
+//  READING AN ARRAY INTO A C-style ARRAY
+//_____________________________________________________________________________
+Int_t THcParmList::GetArray(const char* attr, Int_t* array, Int_t size)
+{
+  // Read in a set of Int_t's in to a C-style array.
+  
+  return ReadArray(attr,array,size);
+}
+//_____________________________________________________________________________
+Int_t THcParmList::GetArray(const char* attr, Double_t* array, Int_t size)
+{
+  // Read in a set of Double_t's in to a vector.
+  
+  return ReadArray(attr,array,size);
+}
+
+//_____________________________________________________________________________
+template<class T>
+Int_t THcParmList::ReadArray(const char* attrC, T* array, Int_t size)
+{
+  // Copy values from parameter store to array
+  // No resizing is done, so only 'size' elements may be stored.
+
+  Int_t cnt=0;
+
+  THaVar *var = Find(attrC);
+  if(!var) return(cnt);
+  VarType ty = var->GetType();
+  if( ty != kInt && ty != kDouble) {
+    cout << "*** ERROR: " << attrC << " has unsupported type " << ty << endl;
+    return(cnt);
+  }
+  Int_t sz = var->GetLen();
+  const void *vp = var->GetValuePointer();
+  if(size != sz) {
+    cout << "*** WARNING: requested " << size << " elements of " << attrC <<
+      " which has length " << sz << endl;
+  }
+  if(size<sz) sz = size;
+  Int_t donint = 0;
+  if(ty == kDouble && typeid(array[0]) == typeid(Int_t)) {
+    donint = 1;			// Use nint when putting doubles in nint
+    cout << "*** WARNING!!!  Rounded " << attrC << " elements to nearest integer " << endl;
+  }
+  for(cnt=0;cnt<sz;cnt++) {
+    if(ty == kInt) {
+      array[cnt] = ((Int_t*)vp)[cnt];
+    } else
+      if(donint) {
+	array[cnt] = TMath::Nint(((Double_t*)vp)[cnt]);
+      } else {
+	array[cnt] = ((Double_t*)vp)[cnt];
+      }
+  }
+  return(cnt);
+}
+
+//_____________________________________________________________________________
+void THcParmList::PrintFull( Option_t* option ) const
+{
+  // Print all the numeric parameter desciptions and values.
+  // Print all the text parameters
+  THaVarList::PrintFull(option);
+  TextList->Print();
+}
+#ifdef WITH_CCDB
+//_____________________________________________________________________________
+Int_t THcParmList::OpenCCDB(Int_t runnum)
+{
+  // Use the Environment variable "CCDB_CONNECTION" as the
+  // connection string
+  const char* connection_string = gSystem->Getenv("CCDB_CONNECTION");
+
+  return(OpenCCDB(runnum,connection_string));
+}
+Int_t THcParmList::OpenCCDB(Int_t runnum, const char* connection_string)
+{
+  // Connect to a CCDB database pointed to by connection_string
+
+  std::string s (connection_string);
+  CCDB_obj = new SQLiteCalibration(runnum);
+  Int_t result = CCDB_obj->Connect(s);
+  if(!result) return -1;	// Need some error codes
+  cout << "Opened " << s << " for run " << runnum << endl;
+  return 0;
+}
+Int_t THcParmList::CloseCCDB()
+{
+  delete CCDB_obj;
+  return(0);
+}
+Int_t THcParmList::LoadCCDBDirectory(const char* directory, 
+				     const char* prefix)
+{
+  // Load all parameters in directory
+  // Prepend prefix onto the name of each
+
+  std::string dirname (directory);
+
+  if(dirname[dirname.length()-1]!='/') {
+    dirname.append("/");
+  }
+  Int_t dirlen=dirname.length();
+
+  vector<string> namepaths;
+  CCDB_obj->GetListOfNamepaths(namepaths);
+  for(UInt_t iname=0;iname<namepaths.size();iname++) {
+    std::string varname (namepaths[iname]);
+    if(varname.compare(0,dirlen,dirname) == 0) {
+      varname.replace(0,dirlen,prefix);
+      //      cout << namepaths[iname] << " -> " << varname << endl;
+
+      // To what extent is there duplication here with Load() method?
+
+      // Retrieve assignment
+      Assignment* assignment = CCDB_obj->GetAssignment(namepaths[iname], true);
+      ConstantsTypeColumn::ColumnTypes ccdbtype=assignment->GetValueType(0);
+      Int_t ccdbncolumns=assignment->GetColumnsCount();
+      Int_t ccdbnrows=assignment->GetRowsCount();
+      std::string title = assignment->GetTypeTable()->GetComment();
+
+      // Only load single column tables
+      if(ccdbncolumns == 1) {
+
+	THaVar* existingvar=Find(varname.c_str());
+	// Need to append [size] to end of varname
+	char sizestring[20];
+	sprintf(sizestring,"[%d]",ccdbnrows);
+	std::string size_str (sizestring);
+	std::string varnamearray (varname);
+	varnamearray.append(size_str);
+
+	// Select data type
+	if(ccdbtype==ConstantsTypeColumn::cIntColumn) {
+	  vector<vector<int> > data;
+	  CCDB_obj->GetCalib(data, namepaths[iname]);
+
+	  if(existingvar) {
+	    RemoveName(varname.c_str());
+	  }
+
+	  Int_t* ip = new Int_t[data.size()];
+	  for(UInt_t row=0;row<data.size(); row++) {
+	    ip[row] = data[row][0];
+	  }
+	  Define(varnamearray.c_str(), title.c_str(), *ip);
+
+	} else if (ccdbtype==ConstantsTypeColumn::cDoubleColumn) {
+	  vector<vector<double> > data;
+	  CCDB_obj->GetCalib(data, namepaths[iname]);
+
+	  if(existingvar) {
+	    RemoveName(varname.c_str());
+	  }
+
+	  Double_t* fp = new Double_t[data.size()];
+	  for(UInt_t row=0;row<data.size(); row++) {
+	    fp[row] = data[row][0];
+	  }
+	  Define(varnamearray.c_str(), title.c_str(), *fp);
+	} else if (ccdbtype==ConstantsTypeColumn::cStringColumn) {
+	  if(ccdbnrows > 1) {
+	    cout << namepaths[iname] << ": Only first element of CCDB string array loaded."  << endl;
+	  }
+	  vector<vector<string> > data;
+	  CCDB_obj->GetCalib(data, namepaths[iname]);
+	  AddString(varname, data[0][0]);
+	} else {
+	  cout << namepaths[iname] << ": Unsupported CCDB data type: " << ccdbtype << endl;
+	}
+      } else {
+	cout << namepaths[iname] << ": Multicolumn CCDB variables not supported" << endl;
+      }
+    }	
+  }
+  return 0;
+}
+
+#endif
+  
diff --git a/src/THcParmList.h b/src/THcParmList.h
index 03e0f4c67fd40d912c4386b3e5a66847bcb869ab..d1a2fd667976fdfb3c5dbcafb5af2417d541b37d 100644
--- a/src/THcParmList.h
+++ b/src/THcParmList.h
@@ -8,15 +8,67 @@
 //////////////////////////////////////////////////////////////////////////
 
 #include "THaVarList.h"
+#include "THaTextvars.h"
+
+#ifdef WITH_CCDB
+#ifdef __CINT__
+struct pthread_cond_t;
+struct pthread_mutex_t;
+#endif
+#include <CCDB/Calibration.h>
+#include <CCDB/SQLiteCalibration.h>
+using namespace ccdb;
+#endif
+
+using namespace std;
+
+
 
 class THcParmList : public THaVarList {
 
 public:
  
-  THcParmList() : THaVarList() {}
-  virtual ~THcParmList() { Clear(); }
+  THcParmList();
+  virtual ~THcParmList() { Clear(); delete TextList; }
+
+  virtual void Load( const char *fname, Int_t RunNumber=0);
+
+  virtual void PrintFull(Option_t *opt="") const;
+
+  const char* GetString(const std::string& name) const {
+    return(TextList->Get(name, 0));
+  }
+
+  Int_t AddString(const std::string& name, const std::string& value) {
+    return(TextList->Add(name, value));
+  }
+  void RemoveString(const std::string& name) {
+    TextList->Remove(name);
+  }
+
+  Int_t LoadParmValues(const DBRequest* list, const char* prefix=""); // assign values to the variables in list
+
+  Int_t GetArray(const char* attr, Int_t* array, Int_t size);
+  Int_t GetArray(const char* attr, Double_t* array, Int_t size);
+
+#ifdef WITH_CCDB
+  Int_t OpenCCDB(Int_t runnum);
+  Int_t OpenCCDB(Int_t runnum, const char* connection_string);
+  Int_t CloseCCDB();
+  Int_t LoadCCDBDirectory(const char* directory, 
+			  const char* prefix);
+#endif
+
+private:
+
+  THaTextvars* TextList;
+
+#ifdef WITH_CCDB
+  SQLiteCalibration* CCDB_obj;
+#endif
 
-  virtual void Load( const char *fname);
+  template<class T>
+    Int_t ReadArray(const char* attrC, T* array, Int_t size);
 
 protected:
 
diff --git a/src/THcRaster.cxx b/src/THcRaster.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..2afed7eee17915da369a572239b15155b4a20254
--- /dev/null
+++ b/src/THcRaster.cxx
@@ -0,0 +1,312 @@
+// Author : Buddhini Waidyawansa
+// Date : 12-09-2013
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcRaster                                                                 //
+//                                                                           //
+//  A class to decode the fast raster signals.                               //
+//  Measures the two magnet currents which are propotioanl to horizontal and //
+//  vertical beam position                                                   //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcRaster.h"
+#include "THaEvData.h"
+#include "THaDetMap.h"
+
+
+#include "THcParmList.h"
+#include "THcGlobals.h"
+#include "THaGlobals.h"
+
+
+//#include "THcHitList.h"
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+#include <fstream>
+
+
+using namespace std;
+
+//_____________________________________________________________________________
+THcRaster::THcRaster( const char* name, const char* description,
+		      THaApparatus* apparatus ) :
+  THaBeamDet(name,description,apparatus)
+{
+
+  fAnalyzePedestals = 0;
+  fNPedestalEvents = 0;
+  fRawXADC = 0;
+  fRawYADC = 0;
+  fXADC = 0;
+  fYADC = 0;
+  fXpos = 0;
+  fYpos = 0;
+  fFrCalMom = 0;
+  fFrXADCperCM = 0;
+  fFrXADCperCM = 0;
+
+  for(Int_t i=0;i<2;i++){
+    fPedADC[i] = 0;
+    fAvgPedADC[i] = 0;
+  }
+}
+
+
+//_____________________________________________________________________________
+THcRaster::~THcRaster()
+{
+}
+
+
+ 
+
+//_____________________________________________________________________________
+Int_t THcRaster::ReadDatabase( const TDatime& date )
+{
+
+  // Read parameters such as calibration factor, of this detector from the database.
+  cout << "THcRaster::ReadDatabase()" << endl;
+
+  char prefix[2];
+
+  //cout << " THcRaster::ReadDatabase GetName() called " << GetName() << endl;
+  //  prefix[0]=tolower(GetName()[0]);
+  // bpw- The prefix is hardcoded so that we don't have to change the gbeam.param file. o/w to get the following variables, we need to change to parameter names to rfr_cal_mom, etc where "r" comes from prefix[0]=tolower(GetName()[0]).
+  prefix[0]='g';
+  prefix[1]='\0';
+
+
+  // string names;
+  DBRequest list[]={
+    {"fr_cal_mom",&fFrCalMom, kDouble},
+    {"frx_adcpercm",&fFrXADCperCM, kDouble},
+    {"fry_adcpercm",&fFrYADCperCM, kDouble},
+    {"pbeam",&fgpbeam, kDouble},
+    {0}
+  };
+
+  // get the calibration factors from gbeam.param file
+   gHcParms->LoadParmValues((DBRequest*)&list,prefix);
+
+  return kOK;
+
+}
+
+
+//_____________________________________________________________________________
+Int_t THcRaster::DefineVariables( EMode mode )
+{
+  // Initialize global variables for histogramming and tree
+
+  cout << "THcRaster::DefineVariables called " << GetName() << endl;
+
+  if( mode == kDefine && fIsSetup ) return kOK;
+  fIsSetup = ( mode == kDefine );
+  
+  // Register variables in global list
+
+  RVarDef vars[] = {
+    {"frx_raw_adc",  "Raster X raw ADC",    "fRawXADC"},
+    {"fry_raw_adc",  "Raster Y raw ADC",    "fRawYADC"},
+    {"frx_adc",  "Raster X ADC",    "fXADC"},
+    {"fry_adc",  "Raster Y ADC",    "fYADC"},
+    {"frx",  "Raster X position",    "fXpos"},
+    {"fry",  "Raster Y position",    "fYpos"},
+    { 0 }
+  };
+
+  return DefineVarsFromList( vars, mode );
+}
+
+//_____________________________________________________________________________
+THaAnalysisObject::EStatus THcRaster::Init( const TDatime& date )
+{
+  cout << "THcRaster::Init()" << endl;
+
+  THcHitList::InitHitList(fDetMap,"THcRasterRawHit",4);
+
+  EStatus status;
+  if( (status = THaBeamDet::Init( date )) )
+    return fStatus=status;
+
+  // Fill detector map with RASTER type channels
+  if( gHcDetectorMap->FillMap(fDetMap, "RASTER") < 0 ) {
+    static const char* const here = "Init()";
+    Error( Here(here), "Error filling detectormap for %s.", 
+  	   "RASTER");
+    return kInitError;
+  }
+
+  return fStatus = kOK;
+
+}
+
+
+//_____________________________________________________________________________
+void THcRaster::AccumulatePedestals(TClonesArray* rawhits)
+{
+  /*
+  Extract data from the hit list, accumulating into arrays for
+  calculating pedestals. 
+  From ENGINE/g_analyze_misc.f - 
+  
+  * JRA: Code to check FR pedestals.  Since the raster is a fixed frequency
+  * and the pedestals come at a fixed rate, it is possible to keep getting
+  * the same value for each pedestal event, and get the wrong zero value.
+  * (see HCLOG #28325).  So calculate pedestal from first 1000 REAL
+  * events and compare to value from pedestal events.  Error on each
+  * measurement is RMS/sqrt(1000), error on diff is *sqrt(2), so 3 sigma
+  * check is 3*sqrt(2)*RMS/sqrt(1000) = .13*RMS
+  !
+  ! Can't use RMS, since taking sum of pedestal**2 for these signals
+  ! gives rollover for integer*4.  Just assume signal is +/-2000
+  ! channels, gives sigma of 100 channels, so check for diff>130.
+  !
+  */
+
+  Int_t nrawhits = rawhits->GetLast()+1;
+
+  Int_t ihit=0;
+
+  while(ihit<nrawhits) {
+    THcRasterRawHit* hit = (THcRasterRawHit *) fRawHitList->At(ihit);
+    if(hit->fADC_xsig>0) {
+      fPedADC[0] += hit->fADC_xsig;
+      //std::cout<<" raster x pedestal collect "<<fPedADC[0]<<std::endl;
+    }
+    if(hit->fADC_ysig>0) {
+      fPedADC[1] += hit->fADC_ysig;
+      //std::cout<<" raster y pedestal collect "<<fPedADC[1]<<std::endl;
+    }
+
+    ihit++;
+  }
+
+}
+
+
+//_____________________________________________________________________________
+void THcRaster::CalculatePedestals( )
+{
+  /*
+  Use the accumulated pedestal data to calculate pedestals
+  From ENGINE/g_analyze_misc.f - 
+  
+     if (numfr.eq.1000) then
+       avefrx = sumfrx / float(numfr)
+       avefry = sumfry / float(numfr)
+       if (abs(avefrx-gfrx_adc_ped).gt.130.) then
+         write(6,*) 'FRPED: peds give <frx>=',gfrx_adc_ped,
+  $          '  realevents give <frx>=',avefrx
+       endif
+       if (abs(avefry-gfry_adc_ped).gt.130.) then
+         write(6,*) 'FRPED: peds give <fry>=',gfry_adc_ped,
+  $          '  realevents give <fry>=',avefry
+       endif
+     endif
+  */
+  for(Int_t i=0;i<2;i++){
+    fAvgPedADC[i] = fPedADC[i]/ fNPedestalEvents; 
+    // std::cout<<" raster pedestal "<<fAvgPedADC[i]<<std::endl;
+  }
+
+}
+
+
+//_____________________________________________________________________________
+Int_t THcRaster::Decode( const THaEvData& evdata )
+{
+
+  // loops over all channels defined in the detector map
+  // copies raw data into local variables
+  // performs pedestal subtraction
+
+
+  // Get the Hall C style hitlist (fRawHitList) for this event
+  Int_t fNhits = THcHitList::DecodeToHitList(evdata);
+  
+  // Get the pedestals from the first 1000 events
+  //if(fNPedestalEvents < 10) 
+  if((gHaCuts->Result("Pedestal_event")) & (fNPedestalEvents < 1000)){
+      AccumulatePedestals(fRawHitList);    
+      fAnalyzePedestals = 1;	// Analyze pedestals first normal events
+      fNPedestalEvents++;
+      
+      return(0);
+    }
+  if(fAnalyzePedestals) {
+    CalculatePedestals();
+    fAnalyzePedestals = 0;	// Don't analyze pedestals next event
+  }
+
+  Int_t ihit = 0;
+  
+  while(ihit < fNhits) {
+    THcRasterRawHit* hit = (THcRasterRawHit *) fRawHitList->At(ihit);
+    
+    if(hit->fADC_xsig>0) {
+      fRawXADC = hit->fADC_xsig;
+      //std::cout<<" Raw X ADC = "<<fRawXADC<<std::endl;
+    }
+    
+    if(hit->fADC_ysig>0) {
+      fRawYADC = hit->fADC_ysig;
+      //std::cout<<" Raw Y ADC = "<<fRawYADC<<std::endl;
+    } 
+    ihit++;
+  }  
+
+  return 0;
+  
+}
+
+
+
+
+
+//_____________________________________________________________________________
+Int_t THcRaster::Process( ){
+
+  Double_t eBeam = 0.001;
+  /*
+    calculate raster position from ADC value.
+    From ENGINE/g_analyze_misc.f -
+    
+    gfrx_adc = gfrx_raw_adc - gfrx_adc_ped
+    gfry_adc = gfry_raw_adc - gfry_adc_ped
+  */
+
+  // calculate the raster currents
+  fXADC =  fRawXADC-fAvgPedADC[0];
+  fYADC =  fRawYADC-fAvgPedADC[1];
+  //std::cout<<" Raw X ADC = "<<fXADC<<" Raw Y ADC = "<<fYADC<<std::endl;
+
+  /*
+    calculate the raster positions
+
+    gfrx = (gfrx_adc/gfrx_adcpercm)*(gfr_cal_mom/ebeam)
+    gfry = (gfry_adc/gfry_adcpercm)*(gfr_cal_mom/ebeam)
+  */
+ 
+  if(gHcParms->Find("gpbeam")){
+    eBeam=*(Double_t *)gHcParms->Find("gpbeam")->GetValuePointer();
+  }
+  fXpos = (fXADC/fFrXADCperCM)*(fFrCalMom/eBeam);
+  fYpos = (fYADC/fFrYADCperCM)*(fFrCalMom/eBeam);
+
+  // std::cout<<" X = "<<fXpos<<" Y = "<<fYpos<<std::endl;
+  
+  fDirection.SetXYZ(0.0,0.0,1.0); // Set arbitrarily to avoid run time warnings
+
+  return 0;
+}
+
+
+
+ClassImp(THcRaster)
+////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcRaster.h b/src/THcRaster.h
new file mode 100644
index 0000000000000000000000000000000000000000..29d3f0829b1f2fe273a78c8d173e1cef45891b4a
--- /dev/null
+++ b/src/THcRaster.h
@@ -0,0 +1,77 @@
+#ifndef ROOT_THcRaster
+#define ROOT_THcRaster
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcRaster                                                                 //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THaBeamDet.h"
+#include "TVector.h"
+#include "TClonesArray.h"
+#include "THcHitList.h"
+#include "THcDetectorMap.h"
+#include "THcRasterRawHit.h"
+#include "THaCutList.h"
+
+class THcRaster : public THaBeamDet, public THcHitList {
+
+ public:
+
+  THcRaster(const char* name, const char* description ="",THaApparatus* a = NULL );
+
+  ~THcRaster();
+  EStatus    Init( const TDatime& run_time );
+
+  Int_t      Decode( const THaEvData& );
+  Int_t      Process();
+
+  //  TVector3 GetPosition()  const { return fPosition[2]; }
+  TVector3 GetPosition()  const { return fPosition[0]; }
+  TVector3 GetDirection() const { return fDirection; } // Hall C we don't use raster direction yet.
+
+  Double_t GetCurrentX() { return fRawPos[0]; }
+  Double_t GetCurrentY() { return fRawPos[1]; }
+
+ protected:
+
+  /* void InitializeReconstruction(); */
+  Int_t  ReadDatabase( const TDatime& date );
+  Int_t DefineVariables( EMode mode );
+
+  Double_t       fgpbeam;   //beam momentum
+
+  Double_t       fRawXADC;  // X raw ADC
+  Double_t       fRawYADC;  // Y raw ADC
+  Double_t       fXADC;     // X ADC
+  Double_t       fYADC;     // Y ADC
+  Double_t       fXpos;     // X position
+  Double_t       fYpos;     // Y position
+  
+
+  Double_t       fPedADC[2];     // ADC poedestals 
+  Double_t       fAvgPedADC[2];     // Avergage ADC poedestals 
+
+  Double_t       fRawPos[2];     // current in Raster ADCs for position
+  TVector3       fPosition[2];   // Beam position at 1st, 2nd BPM or at the target (meters)
+  TVector3       fDirection;
+
+ private:
+  Bool_t    fAnalyzePedestals;
+  Int_t     fNPedestalEvents;
+  Double_t  fFrCalMom;
+  Double_t  fFrXADCperCM;
+  Double_t  fFrYADCperCM;
+
+
+  void   CalculatePedestals();
+  void   AccumulatePedestals(TClonesArray* rawhits);
+
+  ClassDef(THcRaster, 0);	// add THcRaster to ROOT library
+};  
+
+////////////////////////////////////////////////////////////////////////////////
+
+
+#endif
diff --git a/src/THcRasterRawHit.cxx b/src/THcRasterRawHit.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..3603d358e1898b8e3666d0763e6227416253dddd
--- /dev/null
+++ b/src/THcRasterRawHit.cxx
@@ -0,0 +1,92 @@
+// Author : Buddhini Waidyawansa
+// Date : 23-01-2014
+
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcRasterRawHit                                                           //
+//                                                                           //
+// Class representing a single raw hit for the raster                        //
+//                                                                           //
+// Contains the X, Y raster voltage signals and sync signals                 //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+
+#include "THcRasterRawHit.h"
+
+using namespace std;
+
+
+void THcRasterRawHit::SetData(Int_t signal, Int_t data) {
+  if(signal==0) {
+    fADC_xsync = data;
+  } else if (signal==1) {
+    fADC_xsig = data;
+  } else if(signal==2) {
+    fADC_ysync = data;
+  } else if (signal==3) {
+    fADC_ysig = data;
+  }
+
+  // std::cout<<" xsync = "<<fADC_xsync
+  // 	   <<" xsig  = "<<fADC_xsig
+  // 	   <<" ysync  = "<<fADC_ysync
+  // 	   <<" ysig  = "<<fADC_ysig << std::endl;
+
+}
+
+Int_t THcRasterRawHit::GetData(Int_t signal) {
+
+  if(signal==1) {
+    return(fADC_xsync);
+  } else if (signal==2) {
+    return(fADC_xsig);
+  } else if(signal==3) {
+    return(fADC_ysync);
+  } else if (signal==4) {
+    return(fADC_ysig);
+  }
+  return(-1); 
+}
+
+// Int_t THcRasterRawHit::Compare(const TObject* obj) const
+// {
+//   // Compare to sort by the plane
+//   // There is only one raster so no need for an additional check on the counter
+
+//   const THcRasterRawHit* hit = dynamic_cast<const THcRasterRawHit*>(obj);
+
+//   if(!hit) return -1;
+//   Int_t p1 = fPlane;
+//   Int_t p2 = hit->fPlane;
+//   if(p1 < p2) return -1;
+//   else if(p1 > p2) return 1;
+
+// }
+
+//_____________________________________________________________________________
+THcRasterRawHit& THcRasterRawHit::operator=( const THcRasterRawHit& rhs )
+{
+  // Assignment operator.
+
+  THcRawHit::operator=(rhs);
+  if ( this != &rhs ) {
+    fPlane     = rhs.fPlane;
+    fCounter   = rhs.fCounter;
+    fADC_xsync = rhs.fADC_xsync;
+    fADC_xsig  = rhs.fADC_xsig;
+    fADC_ysync = rhs.fADC_ysync;
+    fADC_ysig  = rhs.fADC_ysig;
+  }
+  return *this;
+}
+
+
+//////////////////////////////////////////////////////////////////////////
+ClassImp(THcRasterRawHit)
+
diff --git a/src/THcRasterRawHit.h b/src/THcRasterRawHit.h
new file mode 100644
index 0000000000000000000000000000000000000000..c35f51e2f7c9985392104ae938800681d534814e
--- /dev/null
+++ b/src/THcRasterRawHit.h
@@ -0,0 +1,44 @@
+#ifndef ROOT_THcRasterRawHit
+#define ROOT_THcRasterRawHit
+
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcRasterRawHit                                                           //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcRawHit.h"
+
+class THcRasterRawHit : public THcRawHit {
+
+ public:
+
+ THcRasterRawHit(Int_t plane=0, Int_t counter=0) : THcRawHit(plane, counter), 
+    fADC_xsig(-1), fADC_ysig(-1),
+    fADC_xsync(-1), fADC_ysync(-1) {
+  }
+
+  THcRasterRawHit& operator=( const THcRasterRawHit& );
+  ~THcRasterRawHit() {}
+  
+  void Clear( Option_t* opt="" )
+  { fADC_xsig = -1; fADC_ysig = -1; fADC_xsync = -1; fADC_ysync = -1; }
+  
+  void SetData(Int_t signal, Int_t data);
+  Int_t GetData(Int_t signal);
+
+  // signals
+  Int_t fADC_xsig;
+  Int_t fADC_ysig;
+  Int_t fADC_xsync;
+  Int_t fADC_ysync;
+
+ protected:
+
+ private:
+
+  ClassDef(THcRasterRawHit, 0);	// Raw hit class for raster data
+};  
+
+#endif
diff --git a/src/THcRasteredBeam.cxx b/src/THcRasteredBeam.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..b29ce6b5ce13d9028d06a66960a60b346cecbc5c
--- /dev/null
+++ b/src/THcRasteredBeam.cxx
@@ -0,0 +1,73 @@
+// Author : Buddhini Waidyawansa
+// Date : 01-08-2014
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcRasteredBeam                                                           //
+//                                                                           //
+//  A class to handle the raster processing tasks                            //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcRasteredBeam.h"
+#include "THcRaster.h"
+#include "TMath.h"
+#include "TDatime.h"
+#include "TList.h"
+
+#include "VarDef.h"
+
+//_____________________________________________________________________________
+THcRasteredBeam::THcRasteredBeam( const char* name, const char* description ) :
+    THaBeam( name, description ) 
+{
+  AddDetector( new THcRaster("raster","raster",this) );
+}
+
+
+//_____________________________________________________________________________
+Int_t THcRasteredBeam::Reconstruct()
+{
+
+  TIter nextDet( fDetectors ); 
+
+  nextDet.Reset();
+
+  // This apparatus assumes that there is only one detector 
+  // in the list. If someone adds detectors by hand, the first 
+  // detector in the list will be used to get the beam position
+  // the others will be processed
+  // -- Iam not sure why the code is written like this. But for now, I am 
+  // going to work with this code as it is since all I need for is to
+  // decode the raster - Buddhini
+
+  
+  if (THaBeamDet* theBeamDet=
+      static_cast<THaBeamDet*>( nextDet() )) {
+    theBeamDet->Process();
+    fPosition = theBeamDet->GetPosition();
+    fDirection = theBeamDet->GetDirection();
+  }
+  else {
+    Error( Here("THcRasteredBeam::Reconstruct"), 
+	   "Beamline Detectors Missing in Detector List" );
+  }
+
+
+  // Process any other detectors that may have been added (by default none)
+  while (THaBeamDet * theBeamDet=
+	 static_cast<THaBeamDet*>( nextDet() )) {
+    theBeamDet->Process();
+  }
+
+  Update();
+
+  return 0;
+
+}
+
+//_____________________________________________________________________________
+ClassImp(THcRasteredBeam)
+
+
+////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcRasteredBeam.h b/src/THcRasteredBeam.h
new file mode 100644
index 0000000000000000000000000000000000000000..2e78151771d201122d5db71c9004931bde1b2884
--- /dev/null
+++ b/src/THcRasteredBeam.h
@@ -0,0 +1,31 @@
+#ifndef ROOT_THcRasteredBeam
+#define ROOT_THcRasteredBeam
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcRasteredBeam                                                           //
+// A beam with rastered beam, analyzed event by event using raster currents  //
+// This is identical to THaRasteredBeam except that we need to use THcRaster //
+// For raster signal processing.                                             //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THaBeam.h"
+
+
+class THcRasteredBeam : public THaBeam {
+
+ public:
+
+  THcRasteredBeam( const char* name, const char* description) ;
+
+  virtual ~THcRasteredBeam(){};
+
+  virtual Int_t Reconstruct() ;
+
+  ClassDef(THcRasteredBeam, 0);	// add THcRasteredBeam to ROOT library
+};  
+
+////////////////////////////////////////////////////////////////////////////////
+
+#endif
diff --git a/src/THcRawDCHit.cxx b/src/THcRawDCHit.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..46ce22abc87269a4290f7af7888264e624adaf38
--- /dev/null
+++ b/src/THcRawDCHit.cxx
@@ -0,0 +1,78 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcRawDCHit                                                                  //
+//                                                                           //
+// Class representing for drift chamber wire (or other device with           //
+//   a single multihit TDC channel per detector element                      //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcRawDCHit.h"
+
+using namespace std;
+
+
+void THcRawDCHit::SetData(Int_t signal, Int_t data) {
+  fTDC[fNHits++] = data;
+}
+
+// Return just the first hit
+Int_t THcRawDCHit::GetData(Int_t signal) {
+  if(fNHits>0) {
+    return(fTDC[0]);
+  } else {
+    return(-1);
+  }
+}
+
+// Return a requested hit
+Int_t THcRawDCHit::GetData(Int_t signal, UInt_t ihit) {
+  if(ihit >=0 && ihit< fNHits) {
+    return(fTDC[ihit]);
+  } else {
+    return(-1);
+  }
+}
+
+
+Int_t THcRawDCHit::Compare(const TObject* obj) const
+{
+  // Compare to sort by plane and counter
+  // Should we be able to move this into THcRawHit
+
+  const THcRawDCHit* hit = dynamic_cast<const THcRawDCHit*>(obj);
+
+  if(!hit) return -1;
+  Int_t p1 = fPlane;
+  Int_t p2 = hit->fPlane;
+  if(p1 < p2) return -1;
+  else if(p1 > p2) return 1;
+  else {
+    Int_t c1 = fCounter;
+    Int_t c2 = hit->fCounter;
+    if(c1 < c2) return -1;
+    else if (c1 == c2) return 0;
+    else return 1;
+  }
+}
+//_____________________________________________________________________________
+THcRawDCHit& THcRawDCHit::operator=( const THcRawDCHit& rhs )
+{
+  // Assignment operator.
+
+  THcRawHit::operator=(rhs);
+  if ( this != &rhs ) {
+    fPlane = rhs.fPlane;
+    fCounter = rhs.fCounter;
+    fNHits = rhs.fNHits;
+    for(UInt_t ihit=0;ihit<fNHits;ihit++) {
+      fTDC[ihit] = rhs.fTDC[ihit];
+    }
+  }
+  return *this;
+}
+
+
+//////////////////////////////////////////////////////////////////////////
+ClassImp(THcRawDCHit)
+
diff --git a/src/THcRawDCHit.h b/src/THcRawDCHit.h
new file mode 100644
index 0000000000000000000000000000000000000000..18668d65a5ebd7464b2b1bb856f832d405b0fbef
--- /dev/null
+++ b/src/THcRawDCHit.h
@@ -0,0 +1,39 @@
+#ifndef ROOT_THcRawDCHit
+#define ROOT_THcRawDCHit
+
+#include "THcRawHit.h"
+
+#define MAXHITS 16
+
+class THcRawDCHit : public THcRawHit {
+
+public:
+  friend class THcDriftChamberPlane;
+  friend class THcDC;
+
+  THcRawDCHit(Int_t plane=0, Int_t counter=0) : THcRawHit(plane, counter), 
+    fNHits(0) {
+  }
+  THcRawDCHit& operator=( const THcRawDCHit& );
+  virtual ~THcRawDCHit() {}
+
+  virtual void Clear( Option_t* opt="" ) { fNHits=0; }
+
+  void SetData(Int_t signal, Int_t data);
+  Int_t GetData(Int_t signal);
+  Int_t GetData(Int_t signal, UInt_t ihit);
+
+  virtual Bool_t  IsSortable () const {return kTRUE; }
+  virtual Int_t   Compare(const TObject* obj) const;
+
+
+protected:
+  UInt_t fNHits;
+  Int_t fTDC[MAXHITS];
+
+private:
+
+  ClassDef(THcRawDCHit, 0);	// Raw Drift Chamber hit
+};  
+
+#endif
diff --git a/src/THcRawHit.cxx b/src/THcRawHit.cxx
index 3e37972a189932d7dd987a50bcbdf8ec59388f37..e2cd54e6116145954a70011f6c9888519cec4dd6 100644
--- a/src/THcRawHit.cxx
+++ b/src/THcRawHit.cxx
@@ -10,12 +10,10 @@
 
 #include "THcRawHit.h"
 
-//THcRawHit::~THcRawHit()
-//{}
 
 Int_t THcRawHit::Compare(const TObject* obj) const
 {
-  // Compare to sort by plane and counter
+  // Comparision function for Sort().
 
   const THcRawHit* hit = dynamic_cast<const THcRawHit*>(obj);
 
diff --git a/src/THcRawHit.h b/src/THcRawHit.h
index 7372463c724a5e66229e48ad9bfb3b3bf270a6af..1ee7d16431cc7d2d6e95b32e2750e5ccdabdf3f4 100644
--- a/src/THcRawHit.h
+++ b/src/THcRawHit.h
@@ -39,7 +39,7 @@ public:
 
  private:
 
-  ClassDef(THcRawHit,0)      // Track ID abstract base class
+  ClassDef(THcRawHit,0)      // Raw Hit Base Class
 };
 
 #endif
diff --git a/src/THcHodoscopeHit.cxx b/src/THcRawHodoHit.cxx
similarity index 66%
rename from src/THcHodoscopeHit.cxx
rename to src/THcRawHodoHit.cxx
index 9e3ea84e1dc023c6da80218f36b880d638c7ea1c..dc2021a921514093a133e2b80a0caf1fe7621b26 100644
--- a/src/THcHodoscopeHit.cxx
+++ b/src/THcRawHodoHit.cxx
@@ -1,6 +1,6 @@
 ///////////////////////////////////////////////////////////////////////////////
 //                                                                           //
-// THcHodoscopeHit                                                           //
+// THcRawHodoHit                                                           //
 //                                                                           //
 // Class representing a single raw hit for a hodoscope paddle                //
 //                                                                           //
@@ -8,12 +8,17 @@
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
-#include "THcHodoscopeHit.h"
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+
+#include "THcRawHodoHit.h"
 
 using namespace std;
 
 
-void THcHodoscopeHit::SetData(Int_t signal, Int_t data) {
+void THcRawHodoHit::SetData(Int_t signal, Int_t data) {
   if(signal==0) {
     fADC_pos = data;
   } else if (signal==1) {
@@ -25,7 +30,7 @@ void THcHodoscopeHit::SetData(Int_t signal, Int_t data) {
   }
 }
 
-Int_t THcHodoscopeHit::GetData(Int_t signal) {
+Int_t THcRawHodoHit::GetData(Int_t signal) {
   if(signal==0) {
     return(fADC_pos);
   } else if (signal==1) {
@@ -38,29 +43,8 @@ Int_t THcHodoscopeHit::GetData(Int_t signal) {
   return(-1); // Actually should throw exception
 }
 
-#if 0
-Int_t THcHodoscopeHit::Compare(const TObject* obj) const
-{
-  // Compare to sort by plane and counter
-
-  const THcHodoscopeHit* hit = dynamic_cast<const THcHodoscopeHit*>(obj);
-
-  if(!hit) return -1;
-  Int_t p1 = fPlane;
-  Int_t p2 = hit->fPlane;
-  if(p1 < p2) return -1;
-  else if(p1 > p2) return 1;
-  else {
-    Int_t c1 = fCounter;
-    Int_t c2 = hit->fCounter;
-    if(c1 < c2) return -1;
-    else if (c1 == c2) return 0;
-    else return 1;
-  }
-}
-#endif
 //_____________________________________________________________________________
-THcHodoscopeHit& THcHodoscopeHit::operator=( const THcHodoscopeHit& rhs )
+THcRawHodoHit& THcRawHodoHit::operator=( const THcRawHodoHit& rhs )
 {
   // Assignment operator.
 
@@ -78,5 +62,5 @@ THcHodoscopeHit& THcHodoscopeHit::operator=( const THcHodoscopeHit& rhs )
 
 
 //////////////////////////////////////////////////////////////////////////
-ClassImp(THcHodoscopeHit)
+ClassImp(THcRawHodoHit)
 
diff --git a/src/THcHodoscopeHit.h b/src/THcRawHodoHit.h
similarity index 60%
rename from src/THcHodoscopeHit.h
rename to src/THcRawHodoHit.h
index 0bac2d1a1f9a231325dfb83a2a31e58f1ef95e67..e0c56a657ea31c19082e54bea225f2ce292d8bbf 100644
--- a/src/THcHodoscopeHit.h
+++ b/src/THcRawHodoHit.h
@@ -1,18 +1,19 @@
-#ifndef ROOT_THcHodoscopeHit
-#define ROOT_THcHodoscopeHit
+#ifndef ROOT_THcRawHodoHit
+#define ROOT_THcRawHodoHit
 
 #include "THcRawHit.h"
 
-class THcHodoscopeHit : public THcRawHit {
+class THcRawHodoHit : public THcRawHit {
 
  public:
+  friend class THcScintillatorPlane;
 
- THcHodoscopeHit(Int_t plane=0, Int_t counter=0) : THcRawHit(plane, counter), 
+  THcRawHodoHit(Int_t plane=0, Int_t counter=0) : THcRawHit(plane, counter), 
     fADC_pos(-1), fADC_neg(-1),
     fTDC_pos(-1), fTDC_neg(-1) {
   }
-  THcHodoscopeHit& operator=( const THcHodoscopeHit& );
-  virtual ~THcHodoscopeHit() {}
+  THcRawHodoHit& operator=( const THcRawHodoHit& );
+  virtual ~THcRawHodoHit() {}
 
   virtual void Clear( Option_t* opt="" )
     { fADC_pos = -1; fADC_neg = -1; fTDC_pos = -1; fTDC_neg = -1; }
@@ -23,16 +24,15 @@ class THcHodoscopeHit : public THcRawHit {
   //  virtual Bool_t  IsSortable () const {return kTRUE; }
   //  virtual Int_t   Compare(const TObject* obj) const;
 
+ protected:
   Int_t fADC_pos;
   Int_t fADC_neg;
   Int_t fTDC_pos;
   Int_t fTDC_neg;
 
- protected:
-
  private:
 
-  ClassDef(THcHodoscopeHit, 0);	// Hodoscope hit class
+  ClassDef(THcRawHodoHit, 0);	// Raw Hodoscope hit
 };  
 
 #endif
diff --git a/src/THcRawShowerHit.cxx b/src/THcRawShowerHit.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..8ced5a70365be362f8dda2cab007c67edc0861c1
--- /dev/null
+++ b/src/THcRawShowerHit.cxx
@@ -0,0 +1,54 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcRawShowerHit                                                           //
+//                                                                           //
+// Class representing a single raw hit for a hodoscope paddle                //
+//                                                                           //
+// Contains plane, counter and pos/neg adc and tdc values                    //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcRawShowerHit.h"
+
+using namespace std;
+
+
+void THcRawShowerHit::SetData(Int_t signal, Int_t data) {
+  if(signal==0) {
+    fADC_pos = data;
+  } else if (signal==1) {
+    fADC_neg = data;
+  } 
+}
+
+Int_t THcRawShowerHit::GetData(Int_t signal) {
+  if(signal==0) {
+    return(fADC_pos);
+  } else if (signal==1) {
+    return(fADC_neg);
+  } 
+
+  return(-1); // Actually should throw exception
+}
+
+//_____________________________________________________________________________
+THcRawShowerHit& THcRawShowerHit::operator=( const THcRawShowerHit& rhs )
+{
+  // Assignment operator.
+
+  THcRawHit::operator=(rhs);
+  if ( this != &rhs ) {
+    fPlane = rhs.fPlane;
+    fCounter = rhs.fCounter;
+    fADC_pos = rhs.fADC_pos;
+    fADC_neg = rhs.fADC_neg;
+
+  }
+  return *this;
+}
+
+
+//////////////////////////////////////////////////////////////////////////
+ClassImp(THcRawShowerHit)
+
+ 
diff --git a/src/THcRawShowerHit.h b/src/THcRawShowerHit.h
new file mode 100644
index 0000000000000000000000000000000000000000..76f0d140a5cae64d1dbff7ce837d276ee6da002f
--- /dev/null
+++ b/src/THcRawShowerHit.h
@@ -0,0 +1,36 @@
+#ifndef ROOT_THcRawShowerHit
+#define ROOT_THcRawShowerHit
+
+#include "THcRawHit.h"
+
+class THcRawShowerHit : public THcRawHit {
+
+ public:
+  friend class THcShowerPlane;
+
+  THcRawShowerHit(Int_t plane=0, Int_t counter=0) : THcRawHit(plane, counter), 
+    fADC_pos(-1), fADC_neg(-1){
+  }
+  THcRawShowerHit& operator=( const THcRawShowerHit& );
+  virtual ~THcRawShowerHit() {}
+
+  virtual void Clear( Option_t* opt="" )
+    { fADC_pos = -1; fADC_neg = -1; }
+
+  void SetData(Int_t signal, Int_t data);
+  Int_t GetData(Int_t signal);
+
+  //  virtual Bool_t  IsSortable () const {return kTRUE; }
+  //  virtual Int_t   Compare(const TObject* obj) const;
+
+ protected:
+  Int_t fADC_pos;
+  Int_t fADC_neg;
+
+ private:
+
+  ClassDef(THcRawShowerHit, 0);	// Raw Shower counter hit
+};  
+
+#endif
+ 
diff --git a/src/THcScintillatorPlane.cxx b/src/THcScintillatorPlane.cxx
index a2b30d01727ee7741520c2c852c94ea9864870d3..e9355f94f3e51ab1d5c1bed7387e9395ac3538b6 100644
--- a/src/THcScintillatorPlane.cxx
+++ b/src/THcScintillatorPlane.cxx
@@ -5,24 +5,672 @@
 // THcScintillatorPlane
 //
 //////////////////////////////////////////////////////////////////////////
-
+#include "TMath.h"
 #include "THcScintillatorPlane.h"
+#include "TClonesArray.h"
+#include "THcSignalHit.h"
+#include "THcGlobals.h"
+#include "THcParmList.h"
+#include "THcHitList.h"
+#include "THcHodoscope.h"
+#include "TClass.h"
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+
+using namespace std;
 
 ClassImp(THcScintillatorPlane)
 
 //______________________________________________________________________________
 THcScintillatorPlane::THcScintillatorPlane( const char* name, 
-		    const char* description,
-		    THaApparatus* apparatus )
-  : THaNonTrackingDetector(name,description,apparatus)
+					    const char* description,
+					    const Int_t planenum,
+					    THaDetectorBase* parent )
+  : THaSubDetector(name,description,parent)
 {
   // Normal constructor with name and description
+  fPosTDCHits = new TClonesArray("THcSignalHit",16);
+  fNegTDCHits = new TClonesArray("THcSignalHit",16);
+  fPosADCHits = new TClonesArray("THcSignalHit",16);
+  fNegADCHits = new TClonesArray("THcSignalHit",16);
+  frPosTDCHits = new TClonesArray("THcSignalHit",16);
+  frNegTDCHits = new TClonesArray("THcSignalHit",16);
+  frPosADCHits = new TClonesArray("THcSignalHit",16);
+  frNegADCHits = new TClonesArray("THcSignalHit",16);
+  fPlaneNum = planenum;
+  fTotPlanes = planenum;
+  fNScinHits = 0; 
+  //
+  fMaxHits=53;
 
+  fpTimes = new Double_t [fMaxHits];
+  fScinTime = new Double_t [fMaxHits];
+  fScinSigma = new Double_t [fMaxHits];
+  fScinZpos = new Double_t [fMaxHits];
+  fPosCenter = NULL;
 }
 
 //______________________________________________________________________________
 THcScintillatorPlane::~THcScintillatorPlane()
 {
   // Destructor
+  delete fPosTDCHits;
+  delete fNegTDCHits;
+  delete fPosADCHits;
+  delete fNegADCHits;
+  delete frPosTDCHits;
+  delete frNegTDCHits;
+  delete frPosADCHits;
+  delete frNegADCHits;
+  delete fpTimes;
+  delete fScinTime;
+  delete fScinSigma;
+  delete fScinZpos;
+  delete fPosCenter;
+
+}
+
+//______________________________________________________________________________
+THaAnalysisObject::EStatus THcScintillatorPlane::Init( const TDatime& date )
+{
+  // Extra initialization for scintillator plane: set up DataDest map
+
+  cout << "THcScintillatorPlane::Init called " << GetName() << endl;
+
+  if( IsZombie())
+    return fStatus = kInitError;
+
+  // How to get information for parent
+  //  if( GetParent() )
+  //    fOrigin = GetParent()->GetOrigin();
+
+  EStatus status;
+  if( (status=THaSubDetector::Init( date )) )
+    return fStatus = status;
+
+  // Get the Hodoscope hitlist
+  // Can't seem to cast to THcHitList.  What to do if we want to use
+  // THcScintillatorPlane as a subdetector to other than THcHodoscope?
+  //  fParentHitList = static_cast<THcHodoscope*>(GetParent())->GetHitList();
+
+  return fStatus = kOK;
+
+}
+
+//_____________________________________________________________________________
+Int_t THcScintillatorPlane::ReadDatabase( const TDatime& date )
+{
+
+  // See what file it looks for
+  
+  //  static const char* const here = "ReadDatabase()";
+  char prefix[2];
+  char parname[100];
+  
+  prefix[0]=tolower(GetParent()->GetPrefix()[0]);
+  prefix[1]='\0';
+
+  // need this further down so read them first! GN
+  strcpy(parname,prefix);
+  strcat(parname,"scin_");
+  strcat(parname,GetName());
+  strcat(parname,"_nr");
+  fNelem = *(Int_t *)gHcParms->Find(parname)->GetValuePointer();
+  //
+  // Based on the signs of these quantities in the .pos file the correspondence 
+  // should be bot=>left  and top=>right when comparing x and y-type scintillators
+  char tmpleft[6], tmpright[6];
+  if (fPlaneNum==1 || fPlaneNum==3) {
+    strcpy(tmpleft,"left");
+    strcpy(tmpright,"right");
+  } 
+  else {
+    strcpy(tmpleft,"bot");
+    strcpy(tmpright,"top");
+  }
+
+  delete [] fPosCenter; fPosCenter = new Double_t[fNelem];
+
+  DBRequest list[]={
+    {Form("scin_%s_zpos",GetName()), &fZpos, kDouble},
+    {Form("scin_%s_dzpos",GetName()), &fDzpos, kDouble},
+    {Form("scin_%s_size",GetName()), &fSize, kDouble},
+    {Form("scin_%s_spacing",GetName()), &fSpacing, kDouble},
+    {Form("scin_%s_%s",GetName(),tmpleft), &fPosLeft,kDouble},
+    {Form("scin_%s_%s",GetName(),tmpright), &fPosRight,kDouble},
+    {Form("scin_%s_offset",GetName()), &fPosOffset, kDouble},
+    {Form("scin_%s_center",GetName()), fPosCenter,kDouble,fNelem},
+    {0}
+  };
+  gHcParms->LoadParmValues((DBRequest*)&list,prefix);
+  // fetch the parameter from the temporary list
+
+  // Retrieve parameters we need from parent class
+  fHodoSlop= ((THcHodoscope*) GetParent())->GetHodoSlop(fPlaneNum-1);
+  
+  cout <<" plane num = "<<fPlaneNum<<endl;
+  cout <<" nelem     = "<<fNelem<<endl;
+  cout <<" zpos      = "<<fZpos<<endl;
+  cout <<" dzpos     = "<<fDzpos<<endl;
+  cout <<" spacing   = "<<fSpacing<<endl;
+  cout <<" size      = "<<fSize<<endl;
+  cout <<" hodoslop  = "<<fHodoSlop<<endl;
+  cout <<"PosLeft = "<<fPosLeft<<endl;
+  cout <<"PosRight = "<<fPosRight<<endl;
+  cout <<"PosOffset = "<<fPosOffset<<endl;
+  cout <<"PosCenter[0] = "<<fPosCenter[0]<<endl;
+  
+  // Think we will make special methods to pass most
+  // How generic do we want to make this class?  
+  // The way we get parameter data is going to be pretty specific to
+  // our parameter file naming conventions.  But on the other hand,
+  // the Hall A analyzer read database is pretty specific.
+  // Is there any way for this class to know which spectrometer he
+  // belongs too?
+
+
+  // Create arrays to hold results here
+  InitializePedestals();
+
+  return kOK;
+}
+//_____________________________________________________________________________
+Int_t THcScintillatorPlane::DefineVariables( EMode mode )
+{
+  // Initialize global variables and lookup table for decoder
+
+  cout << "THcScintillatorPlane::DefineVariables called " << GetName() << endl;
+
+  if( mode == kDefine && fIsSetup ) return kOK;
+  fIsSetup = ( mode == kDefine );
+
+  // Register variables in global list
+  RVarDef vars[] = {
+    {"postdchits", "List of Positive TDC hits", 
+     "frPosTDCHits.THcSignalHit.GetPaddleNumber()"},
+    {"negtdchits", "List of Negative TDC hits", 
+     "frNegTDCHits.THcSignalHit.GetPaddleNumber()"},
+    {"posadchits", "List of Positive ADC hits", 
+     "frPosADCHits.THcSignalHit.GetPaddleNumber()"},
+    {"negadchits", "List of Negative ADC hits", 
+     "frNegADCHits.THcSignalHit.GetPaddleNumber()"},
+    {"fptime", "Time at focal plane", 
+     "GetFpTime()"},
+    { 0 }
+  };
+
+  return DefineVarsFromList( vars, mode );
+}
+
+//_____________________________________________________________________________
+void THcScintillatorPlane::Clear( Option_t* )
+{
+  //cout << " Calling THcScintillatorPlane::Clear " << GetName() << endl;
+  // Clears the hit lists
+  fPosTDCHits->Clear();
+  fNegTDCHits->Clear();
+  fPosADCHits->Clear();
+  fNegADCHits->Clear();
+  frPosTDCHits->Clear();
+  frNegTDCHits->Clear();
+  frPosADCHits->Clear();
+  frNegADCHits->Clear();
+  fpTime = -1.e4;
+}
+
+//_____________________________________________________________________________
+Int_t THcScintillatorPlane::Decode( const THaEvData& evdata )
+{
+  // Doesn't actually get called.  Use Fill method instead
+  cout << " Calling THcScintillatorPlane::Decode " << GetName() << endl;
+
+  return 0;
+}
+//_____________________________________________________________________________
+Int_t THcScintillatorPlane::CoarseProcess( TClonesArray& tracks )
+{
+ 
+  cout <<"*******************************\n";
+  cout <<"NOW IN THcScintilatorPlane::CoarseProcess!!!!\n";
+  cout <<"*******************************\n";
+  //  HitCount();
+
+ return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcScintillatorPlane::FineProcess( TClonesArray& tracks )
+{
+  return 0;
+}
+//_____________________________________________________________________________
+Int_t THcScintillatorPlane::ProcessHits(TClonesArray* rawhits, Int_t nexthit)
+{
+  // Extract the data for this plane from hit list
+  // Assumes that the hit list is sorted by plane, so we stop when the
+  // plane doesn't agree and return the index for the next hit.
+  // GN: Select only events that have at least one of their TDC signals in the
+  // right range. 
+  // Also subtract the pedestals from the adc signal (as per the ENGINE) we're not checking here
+  // if the actual ADC is larger than the pedestal value we subtract!!
+
+  Double_t mintdc, maxtdc;
+  //raw
+  Int_t nrPosTDCHits=0;
+  Int_t nrNegTDCHits=0;
+  Int_t nrPosADCHits=0;
+  Int_t nrNegADCHits=0;
+  frPosTDCHits->Clear();
+  frNegTDCHits->Clear();
+  frPosADCHits->Clear();
+  frNegADCHits->Clear();
+  //stripped
+  Int_t nPosTDCHits=0;
+  Int_t nNegTDCHits=0;
+  Int_t nPosADCHits=0;
+  Int_t nNegADCHits=0;
+  fNScinHits=0;
+  fPosTDCHits->Clear();
+  fNegTDCHits->Clear();
+  fPosADCHits->Clear();
+  fNegADCHits->Clear();
+  Int_t nrawhits = rawhits->GetLast()+1;
+  // cout << "THcScintillatorPlane::ProcessHits " << fPlaneNum << " " << nexthit << "/" << nrawhits << endl;
+  mintdc=((THcHodoscope *)GetParent())->GetTdcMin();
+  maxtdc=((THcHodoscope *)GetParent())->GetTdcMax();
+  Int_t ihit = nexthit;
+
+  //  cout << "THcScintillatorPlane: raw htis = " << nrawhits << endl;
+  
+  while(ihit < nrawhits) {
+    THcRawHodoHit* hit = (THcRawHodoHit *) rawhits->At(ihit);
+    if(hit->fPlane > fPlaneNum) {
+      break;
+    }
+    Int_t padnum=hit->fCounter;
+
+    Int_t index=padnum-1;
+    if (hit->fTDC_pos > 0) 
+      ((THcSignalHit*) frPosTDCHits->ConstructedAt(nrPosTDCHits++))->Set(padnum, hit->fTDC_pos);
+    if (hit->fTDC_neg > 0) 
+      ((THcSignalHit*) frNegTDCHits->ConstructedAt(nrNegTDCHits++))->Set(padnum, hit->fTDC_neg);
+    if ((hit->fADC_pos-fPosPed[index]) >= 50) 
+      ((THcSignalHit*) frPosADCHits->ConstructedAt(nrPosADCHits++))->Set(padnum, hit->fADC_pos-fPosPed[index]);
+    if ((hit->fADC_neg-fNegPed[index]) >= 50) 
+      ((THcSignalHit*) frNegADCHits->ConstructedAt(nrNegADCHits++))->Set(padnum, hit->fADC_neg-fNegPed[index]);
+    // check TDC values
+    if (((hit->fTDC_pos >= mintdc) && (hit->fTDC_pos <= maxtdc)) ||
+	((hit->fTDC_neg >= mintdc) && (hit->fTDC_neg <= maxtdc))) {
+
+      //TDC positive hit
+      THcSignalHit *sighit = (THcSignalHit*) fPosTDCHits->ConstructedAt(nPosTDCHits++);
+      sighit->Set(padnum, hit->fTDC_pos);
+      // TDC negative hit
+      THcSignalHit *sighit2 = (THcSignalHit*) fNegTDCHits->ConstructedAt(nNegTDCHits++);
+      sighit2->Set(padnum, hit->fTDC_neg);
+      // ADC positive hit
+      THcSignalHit *sighit3 = (THcSignalHit*) fPosADCHits->ConstructedAt(nPosADCHits++);
+      sighit3->Set(padnum, hit->fADC_pos-fPosPed[index]);
+      // ADC negative hit
+      THcSignalHit *sighit4 = (THcSignalHit*) fNegADCHits->ConstructedAt(nNegADCHits++);
+      sighit4->Set(padnum, hit->fADC_neg-fNegPed[index]);      
+      fNScinHits++;
+    }
+    else {
+    }
+    ihit++;
+  }
 
+  //  cout << "THcScintillatorPlane: ihit = " << ihit << endl;
+
+  return(ihit);
+}
+//________________________________________________________________________________
+
+Int_t THcScintillatorPlane::PulseHeightCorrection()
+{
+  // Perform pulse height correction of the TDC values as in the original h_trans_scin
+  // see original comments below
+  /*! Calculate all corrected hit times and histogram
+    ! This uses a copy of code below. Results are save in time_pos,neg
+    ! including the z-pos. correction assuming nominal value of betap
+    ! Code is currently hard-wired to look for a peak in the
+    ! range of 0 to 100 nsec, with a group of times that all
+    ! agree withing a time_tolerance of time_tolerance nsec. The normal
+    ! peak position appears to be around 35 nsec (SOS0 or 31 nsec (HMS)
+    ! NOTE: if want to find particles with beta different than
+    !       reference particle, need to make sure this is big enough
+    !       to accomodate difference in TOF for other particles
+    ! Default value in case user hasn't defined something reasonable */
+  Int_t i,j,index;
+  Double_t mintdc, maxtdc,tdctotime,toftolerance;
+  Double_t pos_ph[53],neg_ph[53],postime[53],negtime[53],scin_corrected_time[53]; // the 53 should go in a param file (was hmax_scin_hits originally)
+  // Bool_t keep_pos[53],keep_neg[53]; // are these all really needed?
+  Bool_t two_good_times[53];
+  Double_t dist_from_center,scint_center,hit_position,time_pos[100],time_neg[100];
+  Int_t timehist[200],jmax,maxhit,nfound=0; // This seems as a pretty old-fashioned way of doing things. Is there a better way?
+
+
+  // protect against spam events
+  if (fNScinHits>1000) {
+    cout <<"Too many hits "<<fNScinHits<<" in this event! Skipping!\n";
+    return -1;
+  }
+  // zero out histogram 
+  for (i=0;i<200;i++) {
+    timehist[i]=0;
+  }
+  for (i=0;i<fMaxHits;i++) {
+    //    keep_pos[i]=kFALSE;
+    //    keep_neg[i]=kFALSE;
+    two_good_times[i]=kFALSE;
+  }
+
+  mintdc=((THcHodoscope *)GetParent())->GetTdcMin();
+  maxtdc=((THcHodoscope *)GetParent())->GetTdcMax();
+  tdctotime=((THcHodoscope *)GetParent())->GetTdcToTime();
+  toftolerance=((THcHodoscope *)GetParent())->GetTofTolerance();
+  Double_t betanominal=((THcHodoscope *)GetParent())->GetBetaNominal();
+
+  fpTime=-1e5;
+  for (i=0;i<fNScinHits;i++) {
+    if ((((THcSignalHit*) fPosTDCHits->At(i))->GetData()>=mintdc) &&
+	(((THcSignalHit*) fPosTDCHits->At(i))->GetData()<=maxtdc) &&
+	(((THcSignalHit*) fNegTDCHits->At(i))->GetData()>=mintdc) &&
+	(((THcSignalHit*) fNegTDCHits->At(i))->GetData()<=maxtdc)) {
+	  pos_ph[i]=((THcSignalHit*) fPosADCHits->At(i))->GetData();
+	  postime[i]=((THcSignalHit*) fPosTDCHits->At(i))->GetData()*tdctotime;
+	  j=((THcSignalHit*)fPosTDCHits->At(i))->GetPaddleNumber()-1;
+	  index=((THcHodoscope *)GetParent())->GetScinIndex(fPlaneNum-1,j);
+	  postime[i]=postime[i]-((THcHodoscope *)GetParent())->GetHodoPosPhcCoeff(index)*
+	    TMath::Sqrt(TMath::Max(0.,(pos_ph[i]/((THcHodoscope *)GetParent())->GetHodoPosMinPh(index)-1)));
+	  postime[i]=postime[i]-((THcHodoscope *)GetParent())->GetHodoPosTimeOffset(index);
+
+	  neg_ph[i]=((THcSignalHit*) fNegADCHits->At(i))->GetData();
+	  negtime[i]=((THcSignalHit*) fNegTDCHits->At(i))->GetData()*tdctotime;
+	  j=((THcSignalHit*)fNegTDCHits->At(i))->GetPaddleNumber()-1;
+	  index=((THcHodoscope *)GetParent())->GetScinIndex(fPlaneNum-1,j);
+	  negtime[i]=negtime[i]-((THcHodoscope *)GetParent())->GetHodoNegPhcCoeff(index)*
+	    TMath::Sqrt(TMath::Max(0.,(neg_ph[i]/((THcHodoscope *)GetParent())->GetHodoNegMinPh(index)-1)));
+	  negtime[i]=negtime[i]-((THcHodoscope *)GetParent())->GetHodoNegTimeOffset(index);
+
+	  // ***************
+	  ///	  cout <<"hcana i = "<<i<<endl;
+	  ///  cout <<"hcana tdc_pos = "<<((THcSignalHit*) fPosTDCHits->At(i))->GetData()<<endl;
+	  ///cout <<"hcana pos_ph = "<<pos_ph[i]<<endl;
+	  //	  cout <<"hcana pos_phc_coeff = "<<((THcHodoscope *)GetParent())->GetHodoPosPhcCoeff(index)<<endl;
+	  //	  cout <<"hcana postime = "<<postime[i]<<endl;
+	  //cout <<"hcana negtime = "<<negtime[i]<<endl;
+	  //*************
+
+	  // Find hit position.  If postime larger, then hit was nearer negative side.
+	  dist_from_center=0.5*(negtime[i]-postime[i])*((THcHodoscope *)GetParent())->GetHodoVelLight(index);
+	  scint_center=0.5*(fPosLeft+fPosRight);
+	  hit_position=scint_center+dist_from_center;
+	  hit_position=TMath::Min(hit_position,fPosLeft);
+	  hit_position=TMath::Max(hit_position,fPosRight);
+	  postime[i]=postime[i]-(fPosLeft-hit_position)/((THcHodoscope *)GetParent())->GetHodoVelLight(index);
+	  negtime[i]=negtime[i]-(hit_position-fPosRight)/((THcHodoscope *)GetParent())->GetHodoVelLight(index);
+
+	  time_pos[i]=postime[i]-(fZpos+(j%2)*fDzpos)/(29.979*betanominal);
+	  time_neg[i]=negtime[i]-(fZpos+(j%2)*fDzpos)/(29.979*betanominal);
+	  nfound++;
+	  for (int k=0;k<200;k++) {
+	    Double_t tmin=0.5*(k+1);
+	    if ((time_pos[i]> tmin) && (time_pos[i] < tmin+toftolerance)) {
+	      timehist[k]++;
+	    }
+	    if ((time_neg[i]> tmin) && (time_neg[i] < tmin+toftolerance)) {
+	      timehist[k]++;
+	    }
+	  }
+	  nfound++;
+    }
+  }
+  // Find the bin with most hits
+  jmax=0;
+  maxhit=0;
+  for (i=0;i<200;i++) {
+    if (timehist[i]>maxhit) {
+      jmax=i;
+      maxhit=timehist[i];
+    }
+  }
+  // Resume regular tof code, now using time filer(?) from above
+  // Check for TWO good TDC hits
+  for (i=0;i<fNScinHits;i++) {
+    if ((((THcSignalHit*) fPosTDCHits->At(i))->GetData()>=mintdc) &&
+	(((THcSignalHit*) fPosTDCHits->At(i))->GetData()<=maxtdc) &&
+	(((THcSignalHit*) fNegTDCHits->At(i))->GetData()>=mintdc) &&
+	(((THcSignalHit*) fNegTDCHits->At(i))->GetData()<=maxtdc)) {
+      if(jmax>0) {
+	Double_t tmin = 0.5*jmax;
+	if ((time_pos[i]>tmin) && (time_pos[i]<tmin+toftolerance) &&
+	    (time_neg[i]>tmin) && (time_neg[i]<tmin+toftolerance))
+	  two_good_times[i]=kTRUE;
+      }
+    }
+  } // end of loop that finds tube setting time
+  for (i=0;i<fNScinHits;i++) {
+    if (two_good_times[i]) { // both tubes fired
+      // correct time for everything except veloc. correction in order
+      // to find hit location from difference in TDC.
+      pos_ph[i]=((THcSignalHit*) fPosADCHits->At(i))->GetData();
+      postime[i]=((THcSignalHit*) fPosTDCHits->At(i))->GetData()*tdctotime;
+      j=((THcSignalHit*)fPosTDCHits->At(i))->GetPaddleNumber()-1;
+      index=((THcHodoscope *)GetParent())->GetScinIndex(fPlaneNum-1,j);
+      postime[i]=postime[i]-((THcHodoscope *)GetParent())->GetHodoPosPhcCoeff(index)*
+	TMath::Sqrt(TMath::Max(0.,(pos_ph[i]/((THcHodoscope *)GetParent())->GetHodoPosMinPh(index)-1)));
+      postime[i]=postime[i]-((THcHodoscope *)GetParent())->GetHodoPosTimeOffset(index);
+      //
+      neg_ph[i]=((THcSignalHit*) fNegADCHits->At(i))->GetData();
+      negtime[i]=((THcSignalHit*) fNegTDCHits->At(i))->GetData()*tdctotime;
+      j=((THcSignalHit*)fNegTDCHits->At(i))->GetPaddleNumber()-1;
+      index=((THcHodoscope *)GetParent())->GetScinIndex(fPlaneNum-1,j);
+      negtime[i]=negtime[i]-((THcHodoscope *)GetParent())->GetHodoNegPhcCoeff(index)*
+	TMath::Sqrt(TMath::Max(0.,(neg_ph[i]/((THcHodoscope *)GetParent())->GetHodoNegMinPh(index)-1)));
+      negtime[i]=negtime[i]-((THcHodoscope *)GetParent())->GetHodoNegTimeOffset(index);
+      // find hit position. If postime larger, then hit was nearer negative side
+      dist_from_center=0.5*(negtime[i]-postime[i])*((THcHodoscope *)GetParent())->GetHodoVelLight(index);
+      scint_center=0.5*(fPosLeft+fPosRight);
+      hit_position=scint_center+dist_from_center;
+      hit_position=TMath::Min(hit_position,fPosLeft);
+      hit_position=TMath::Max(hit_position,fPosRight);
+      postime[i]=postime[i]-(fPosLeft-hit_position)/((THcHodoscope *)GetParent())->GetHodoVelLight(index);
+      negtime[i]=negtime[i]-(hit_position-fPosRight)/((THcHodoscope *)GetParent())->GetHodoVelLight(index);
+      scin_corrected_time[i]=0.5*(postime[i]+negtime[i]);
+    }
+    else { // only one tube fired
+      scin_corrected_time[i]=0.0; // not a very good "flag" but there is the logical two_good_hits...
+      // no fpTimes for U!
+    }
+  }
+  //start time calculation.  assume xp=yp=0 radians.  project all
+  //time values to focal plane.  use average for start time.
+
+  fNScinGoodHits=0;
+  for (i=0;i<fNScinHits;i++) {
+    j=((THcSignalHit*)fNegTDCHits->At(i))->GetPaddleNumber()-1;  
+    index=((THcHodoscope *)GetParent())->GetScinIndex(fPlaneNum-1,j);
+    if (two_good_times[i]) { // both tubes fired
+      fpTimes[fNScinGoodHits]=scin_corrected_time[i]-(fZpos+(j%2)*fDzpos)/(29.979*betanominal);
+      fScinTime[fNScinGoodHits]=scin_corrected_time[i];
+      fScinSigma[fNScinGoodHits]=TMath::Sqrt(((THcHodoscope *)GetParent())->GetHodoPosSigma(index)*((THcHodoscope *)GetParent())->GetHodoPosSigma(index)+((THcHodoscope *)GetParent())->GetHodoNegSigma(index)*((THcHodoscope *)GetParent())->GetHodoNegSigma(index)); // not ideal by any stretch!!!
+      fScinZpos[fNScinGoodHits]=fZpos+(j%2)*fDzpos; // see comment above
+      //        h_rfptime(hscin_plane_num(ihit))=fptime
+      fNScinGoodHits++; // increment the number of good hits
+    }
+  }
+  CalcFpTime();
+  return 0;
 }
+//_____________________________________________________________________________
+Int_t THcScintillatorPlane::AccumulatePedestals(TClonesArray* rawhits, Int_t nexthit)
+{
+  // Extract the data for this plane from hit list, accumulating into
+  // arrays for calculating pedestals.
+
+  Int_t nrawhits = rawhits->GetLast()+1;
+  // cout << "THcScintillatorPlane::AcculatePedestals " << fPlaneNum << " " << nexthit << "/" << nrawhits << endl;
+
+  Int_t ihit = nexthit;
+  while(ihit < nrawhits) {
+    THcRawHodoHit* hit = (THcRawHodoHit *) rawhits->At(ihit);
+    if(hit->fPlane > fPlaneNum) {
+      break;
+    }
+    Int_t element = hit->fCounter - 1; // Should check if in range
+    Int_t adcpos = hit->fADC_pos;
+    Int_t adcneg = hit->fADC_neg;
+
+    if(adcpos <= fPosPedLimit[element]) {
+      fPosPedSum[element] += adcpos;
+      fPosPedSum2[element] += adcpos*adcpos;
+      fPosPedCount[element]++;
+      if(fPosPedCount[element] == fMinPeds/5) {
+	fPosPedLimit[element] = 100 + fPosPedSum[element]/fPosPedCount[element];
+      }
+    }
+    if(adcneg <= fNegPedLimit[element]) {
+      fNegPedSum[element] += adcneg;
+      fNegPedSum2[element] += adcneg*adcneg;
+      fNegPedCount[element]++;
+      if(fNegPedCount[element] == fMinPeds/5) {
+	fNegPedLimit[element] = 100 + fNegPedSum[element]/fNegPedCount[element];
+      }
+    }
+    ihit++;
+  }
+
+  fNPedestalEvents++;
+
+  return(ihit);
+}
+
+//_____________________________________________________________________________
+void THcScintillatorPlane::CalculatePedestals( )
+{
+  // Use the accumulated pedestal data to calculate pedestals
+  // Later add check to see if pedestals have drifted ("Danger Will Robinson!")
+  //  cout << "Plane: " << fPlaneNum << endl;
+  for(UInt_t i=0; i<fNelem;i++) {
+    
+    // Positive tubes
+    fPosPed[i] = ((Double_t) fPosPedSum[i]) / TMath::Max(1, fPosPedCount[i]);
+    fPosThresh[i] = fPosPed[i] + 15;
+
+    // Negative tubes
+    fNegPed[i] = ((Double_t) fNegPedSum[i]) / TMath::Max(1, fNegPedCount[i]);
+    fNegThresh[i] = fNegPed[i] + 15;
+
+    //    cout <<"Pedestals "<< i+1 << " " << fPosPed[i] << " " << fNegPed[i] << endl;
+  }
+  //  cout << " " << endl;
+  
+}
+
+//_____________________________________________________________________________
+void THcScintillatorPlane::InitializePedestals( )
+{
+  fNPedestalEvents = 0;
+  fMinPeds = 500; 		// In engine, this is set in parameter file
+  fPosPedSum = new Int_t [fNelem];
+  fPosPedSum2 = new Int_t [fNelem];
+  fPosPedLimit = new Int_t [fNelem];
+  fPosPedCount = new Int_t [fNelem];
+  fNegPedSum = new Int_t [fNelem];
+  fNegPedSum2 = new Int_t [fNelem];
+  fNegPedLimit = new Int_t [fNelem];
+  fNegPedCount = new Int_t [fNelem];
+
+  fPosPed = new Double_t [fNelem];
+  fNegPed = new Double_t [fNelem];
+  fPosThresh = new Double_t [fNelem];
+  fNegThresh = new Double_t [fNelem];
+  for(UInt_t i=0;i<fNelem;i++) {
+    fPosPedSum[i] = 0;
+    fPosPedSum2[i] = 0;
+    fPosPedLimit[i] = 1000;	// In engine, this are set in parameter file
+    fPosPedCount[i] = 0;
+    fNegPedSum[i] = 0;
+    fNegPedSum2[i] = 0;
+    fNegPedLimit[i] = 1000;	// In engine, this are set in parameter file
+    fNegPedCount[i] = 0;
+  }
+}
+//____________________________________________________________________________
+Int_t THcScintillatorPlane::GetNelem() 
+{
+  return fNelem;
+}
+//____________________________________________________________________________
+Int_t THcScintillatorPlane::GetNScinHits() 
+{
+  return fNScinHits;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetSpacing()
+{
+  return fSpacing;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetSize()
+{
+  return fSize;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetHodoSlop()
+{
+  return fHodoSlop;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetZpos()
+{
+  return fZpos;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetDzpos()
+{
+  return fDzpos;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetPosLeft() {
+  return fPosLeft;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetPosRight() {
+  return fPosRight;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetPosOffset() {
+  return fPosOffset;
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::GetPosCenter(Int_t PaddleNo) {
+  return fPosCenter[PaddleNo];
+}
+//____________________________________________________________________________
+Double_t THcScintillatorPlane::CalcFpTime() 
+{
+  Double_t tmp=0;
+  Int_t i,counter=0;
+  for (i=0;i<fNScinGoodHits;i++) {
+    if (TMath::Abs(fpTimes[i]-((THcHodoscope *)GetParent())->GetStartTimeCenter())<=((THcHodoscope *)GetParent())->GetStartTimeSlop()) {
+      tmp+=fpTimes[i];
+      counter++;
+    }
+  }
+  if (counter>0) {
+    fpTime=tmp/counter;
+  } else {
+    fpTime=-10000.;
+  }
+  return fpTime;
+}
+//____________________________________________________________________________
+ClassImp(THcScintillatorPlane)
+////////////////////////////////////////////////////////////////////////////////
+
diff --git a/src/THcScintillatorPlane.h b/src/THcScintillatorPlane.h
index ce546684471fefb9bc8a518b01ef22f4a7bba198..106794e04fc9b3f36db612657e0ccd4a3f246e9a 100644
--- a/src/THcScintillatorPlane.h
+++ b/src/THcScintillatorPlane.h
@@ -12,24 +12,121 @@
 // 
 //////////////////////////////////////////////////////////////////////////////
 
-#include "THaNonTrackingDetector.h"
+#include "THaSubDetector.h"
+#include "TClonesArray.h"
 
-class THcScintillatorPlane : public THaNonTrackingDetector {
+class THaEvData;
+class THaSignalHit;
+
+class THcScintillatorPlane : public THaSubDetector {
   
  public:
+  THcScintillatorPlane( const char* name, const char* description,
+			Int_t planenum, THaDetectorBase* parent = NULL);
   virtual ~THcScintillatorPlane();
 
-  THcScintillatorPlane( const char* name, const char* description,
-			  THaApparatus* a = NULL);
+  virtual void    Clear( Option_t* opt="" );
+  virtual Int_t Decode( const THaEvData& );
+  virtual EStatus Init( const TDatime& run_time );
 
-  virtual Int_t CoarseProcess( TClonesArray& tracks ) = 0;
-  virtual Int_t    FineProcess( TClonesArray& tracks )  = 0;
+  virtual Int_t CoarseProcess( TClonesArray& tracks );
+  virtual Int_t FineProcess( TClonesArray& tracks );
           Bool_t   IsTracking() { return kFALSE; }
   virtual Bool_t   IsPid()      { return kFALSE; }
 
+  virtual Int_t ProcessHits(TClonesArray* rawhits, Int_t nexthit);
+  virtual Int_t PulseHeightCorrection();
+
+  virtual Int_t AccumulatePedestals(TClonesArray* rawhits, Int_t nexthit);
+  virtual void  CalculatePedestals( );
+
+  Int_t GetNelem(); // return number of paddles in this plane
+  Int_t GetNScinHits(); // return the number of hits in this plane (that pass min/max TDC cuts)
+  Double_t GetSpacing(); // return the spacing of paddles 
+  Double_t GetSize();    // return paddle size
+  Double_t GetHodoSlop(); // return the hodo slop
+  Double_t GetZpos();   //return the z position
+  Double_t GetDzpos();
+  Double_t GetPosLeft();
+  Double_t GetPosRight();
+  Double_t GetPosOffset();
+  Double_t GetPosCenter(Int_t PaddleNo); // here we're counting from zero!
+  Double_t CalcFpTime();
+  Double_t GetFpTime() {return fpTime;};
+  Double_t GetFpTime(Int_t index) { return fpTimes[index];};
+  Double_t GetScinTime(Int_t index) { return fScinTime[index];};
+  Double_t GetScinSigma(Int_t index) { return fScinSigma[index];};
+  Double_t GetScinZpos(Int_t index) { return fScinZpos[index];};
+  Int_t GetNScinGoodHits() const {return fNScinGoodHits;};
+
+  TClonesArray* fParentHitList;
+
+  TClonesArray* GetPosADC() { return fPosADCHits;};  // Ahmed
+  TClonesArray* GetNegADC() { return fNegADCHits;};  // Ahmed
+  TClonesArray* GetPosTDC() { return fPosTDCHits;};  // Ahmed
+  TClonesArray* GetNegTDC() { return fNegTDCHits;};  // Ahmed
+
  protected:
 
-  ClassDef(THcScintillatorPlane,0)
+  TClonesArray* frPosTDCHits;
+  TClonesArray* frNegTDCHits;
+  TClonesArray* frPosADCHits;
+  TClonesArray* frNegADCHits;
+  TClonesArray* fPosTDCHits;
+  TClonesArray* fNegTDCHits;
+  TClonesArray* fPosADCHits;
+  TClonesArray* fNegADCHits;
+
+  Int_t fPlaneNum;		/* Which plane am I 1-4 */
+  UInt_t fTotPlanes;            /* so we can read variables that are not indexed by plane id */
+  UInt_t fNelem;		/* Need since we don't inherit from 
+				 detector base class */
+  Int_t fNScinHits;                 /* Number of hits in this plane */
+  Int_t fMaxHits;               /* maximum number of hits to be considered - useful for dimensioning arrays */
+  Double_t fSpacing;            /* paddle spacing */
+  Double_t fSize;               /* paddle size */
+  Double_t fZpos;               /* z position */
+  Double_t fDzpos;
+  Double_t fHodoSlop;           /* max allowed slop for this plane */
+  Double_t fPosLeft;            /* NOTE: "left" = "top" for a Y scintillator */
+  Double_t fPosRight;           /* NOTE: "right" = "bottom" for a Y scintillator */
+  Double_t fPosOffset;
+  Double_t *fPosCenter;         /* array with centers for all scintillators in the plane */
+
+
+  Double_t fTolerance; /* need this for PulseHeightCorrection */
+  /* Pedestal Quantities */
+  Int_t fNPedestalEvents;	/* Number of pedestal events */
+  Int_t fMinPeds;		/* Only analyze/update if num events > */
+  Int_t *fPosPedSum;		/* Accumulators for pedestals */
+  Int_t *fPosPedSum2;
+  Int_t *fPosPedLimit;
+  Int_t *fPosPedCount;
+  Int_t *fNegPedSum;
+  Int_t *fNegPedSum2;
+  Int_t *fNegPedLimit;
+  Int_t *fNegPedCount;
+
+  Double_t *fPosPed;
+  Double_t *fPosSig;
+  Double_t *fPosThresh;
+  Double_t *fNegPed;
+  Double_t *fNegSig;
+  Double_t *fNegThresh;
+
+  //
+  Int_t fNScinGoodHits; // number of hits for which both ends of the paddle fired in time!
+  Double_t fpTime; // the original code only has one fpTime per plane!
+  Double_t *fpTimes; // ... but also allows for more than one hit per plane
+  Double_t *fScinTime; // array of scintillator times (only filled for goodhits)
+  Double_t *fScinSigma; // errors for the above
+  Double_t *fScinZpos; // zpositions for the above
+
+  virtual Int_t  ReadDatabase( const TDatime& date );
+  virtual Int_t  DefineVariables( EMode mode = kDefine );
+  virtual void  InitializePedestals( );
+
+  ClassDef(THcScintillatorPlane,0); // Scintillator bars in a plane
 };
 #endif
 
diff --git a/src/THcShower.cxx b/src/THcShower.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..b547562d5563abb45c72a9d14751ff16836c980d
--- /dev/null
+++ b/src/THcShower.cxx
@@ -0,0 +1,1048 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcShower                                                                 //
+//                                                                           //
+// Shower counter class, describing a generic segmented shower detector.     //
+//                                                                           //
+//                                                                           //
+//                                                                           //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcShower.h"
+#include "THcHallCSpectrometer.h"
+#include "THaEvData.h"
+#include "THaDetMap.h"
+#include "THcDetectorMap.h"
+#include "THcGlobals.h"
+#include "THaCutList.h"
+#include "THcParmList.h"
+#include "VarDef.h"
+#include "VarType.h"
+#include "THaTrack.h"
+#include "TClonesArray.h"
+#include "THaTrackProj.h"
+#include "TMath.h"
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+#include <numeric>
+
+using namespace std;
+
+//_____________________________________________________________________________
+THcShower::THcShower( const char* name, const char* description,
+				  THaApparatus* apparatus ) :
+  THaNonTrackingDetector(name,description,apparatus)
+{
+  // Constructor
+  fNLayers = 0;			// No layers until we make them
+
+  fClusterList = new THcShowerClusterList;
+}
+
+//_____________________________________________________________________________
+THcShower::THcShower( ) :
+  THaNonTrackingDetector()
+{
+  // Constructor
+}
+
+//_____________________________________________________________________________
+void THcShower::Setup(const char* name, const char* description)
+{
+  char prefix[2];
+
+  prefix[0] = tolower(GetApparatus()->GetName()[0]);
+  prefix[1] = '\0';
+
+  string layernamelist;
+  DBRequest list[]={
+    {"cal_num_layers", &fNLayers, kInt},
+    {"cal_layer_names", &layernamelist, kString},
+    {0}
+  };
+
+  gHcParms->LoadParmValues((DBRequest*)&list,prefix);
+
+  vector<string> layer_names = vsplit(layernamelist);
+
+  if(layer_names.size() != (UInt_t) fNLayers) {
+    cout << "THcShower::Setup ERROR: Number of layers " << fNLayers 
+	 << " doesn't agree with number of layer names "
+	 << layer_names.size() << endl;
+    // Should quit.  Is there an official way to quit?
+  }
+
+  fLayerNames = new char* [fNLayers];
+  for(UInt_t i=0;i<fNLayers;i++) {
+    fLayerNames[i] = new char[layer_names[i].length()+1];
+    strcpy(fLayerNames[i], layer_names[i].c_str());
+  }
+  
+  char *desc = new char[strlen(description)+100];
+  fPlanes = new THcShowerPlane* [fNLayers];
+
+  for(UInt_t i=0;i < fNLayers;i++) {
+    strcpy(desc, description);
+    strcat(desc, " Plane ");
+    strcat(desc, fLayerNames[i]);
+
+    fPlanes[i] = new THcShowerPlane(fLayerNames[i], desc, i+1, this); 
+
+  }
+  delete [] desc;
+
+  cout << "---------------------------------------------------------------\n";
+  cout << "From THcShower::Setup: created Shower planes for "
+       << GetApparatus()->GetName() << ": ";
+
+  for(UInt_t i=0;i < fNLayers;i++) {
+    cout << fLayerNames[i];
+    i < fNLayers-1 ? cout << ", " : cout << ".\n";
+  }
+  cout << "---------------------------------------------------------------\n";
+
+}
+
+
+//_____________________________________________________________________________
+THaAnalysisObject::EStatus THcShower::Init( const TDatime& date )
+{
+  Setup(GetName(), GetTitle());
+
+  // Should probably put this in ReadDatabase as we will know the
+  // maximum number of hits after setting up the detector map
+
+  InitHitList(fDetMap, "THcRawShowerHit", 100);
+
+  EStatus status;
+  if( (status = THaNonTrackingDetector::Init( date )) )
+    return fStatus=status;
+
+  for(UInt_t ip=0;ip<fNLayers;ip++) {
+    if((status = fPlanes[ip]->Init( date ))) {
+      return fStatus=status;
+    }
+  }
+
+  char EngineDID[] = " CAL";
+  EngineDID[0] = toupper(GetApparatus()->GetName()[0]);
+
+  if( gHcDetectorMap->FillMap(fDetMap, EngineDID) < 0 ) {
+    static const char* const here = "Init()";
+    Error( Here(here), "Error filling detectormap for %s.", 
+	     EngineDID);
+      return kInitError;
+  }
+
+
+  cout << "---------------------------------------------------------------\n";
+  cout << "From THcShower::Init: initialized " << GetApparatus()->GetName()
+       <<  GetName() << endl;
+  cout << "---------------------------------------------------------------\n";
+
+  return fStatus = kOK;
+}
+
+//_____________________________________________________________________________
+Int_t THcShower::ReadDatabase( const TDatime& date )
+{
+  // Read this detector's parameters from the database file 'fi'.
+  // This function is called by THaDetectorBase::Init() once at the
+  // beginning of the analysis.
+  // 'date' contains the date/time of the run being analyzed.
+
+  //  static const char* const here = "ReadDatabase()";
+  char prefix[2];
+
+  // Read data from database 
+  // Pull values from the THcParmList instead of reading a database
+  // file like Hall A does.
+
+  // We will probably want to add some kind of method to gHcParms to allow
+  // bulk retrieval of parameters of interest.
+
+  // Will need to determine which spectrometer in order to construct
+  // the parameter names (e.g. hscin_1x_nr vs. sscin_1x_nr)
+
+  prefix[0]=tolower(GetApparatus()->GetName()[0]);
+  prefix[1]='\0';
+
+  {
+    DBRequest list[]={
+      {"cal_num_neg_columns", &fNegCols, kInt},
+      {"cal_slop", &fSlop, kDouble},
+      {"cal_fv_test", &fvTest, kInt,0,1},
+      {"cal_fv_delta", &fvDelta, kDouble},
+      {"dbg_raw_cal", &fdbg_raw_cal, kInt, 0, 1},
+      {"dbg_decoded_cal", &fdbg_decoded_cal, kInt, 0, 1},
+      {"dbg_sparsified_cal", &fdbg_sparsified_cal, kInt, 0, 1},
+      {"dbg_clusters_cal", &fdbg_clusters_cal, kInt, 0, 1},
+      {"dbg_tracks_cal", &fdbg_tracks_cal, kInt, 0, 1},
+      {"dbg_init_cal", &fdbg_init_cal, kInt, 0, 1},
+      {0}
+    };
+    fvTest = 0;			// Default if not defined
+    fdbg_raw_cal = 0;		// Debugging off by default
+    fdbg_decoded_cal = 0;
+    fdbg_sparsified_cal = 0;
+    fdbg_clusters_cal = 0;
+    fdbg_tracks_cal = 0;
+    fdbg_init_cal = 0;
+
+    gHcParms->LoadParmValues((DBRequest*)&list, prefix);
+  }
+
+  // Debug output.
+  if (fdbg_init_cal) {
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShower::ReadDatabase for "
+	 << GetApparatus()->GetName() << endl;
+
+    cout << "  Number of neg. columns      = " << fNegCols << endl;
+    cout << "  Slop parameter              = " << fSlop << endl;
+    cout << "  Fiducial volume test flag   = " << fvTest << endl;
+    cout << "  Fiducial volume excl. width = " << fvDelta << endl;
+    cout << "  Initialize debug flag       = " << fdbg_init_cal  << endl;
+    cout << "  Raw hit debug flag          = " << fdbg_raw_cal  << endl;
+    cout << "  Decode debug flag           = " << fdbg_decoded_cal  << endl;
+    cout << "  Sparsify debug flag         = " << fdbg_sparsified_cal  << endl;
+    cout << "  Cluster debug flag          = " << fdbg_clusters_cal  << endl;
+    cout << "  Tracking debug flag         = " << fdbg_tracks_cal  << endl;
+  }
+
+  {
+    DBRequest list[]={
+      {"cal_a_cor", &fAcor, kDouble},
+      {"cal_b_cor", &fBcor, kDouble},
+      {"cal_c_cor", fCcor, kDouble, 2},
+      {"cal_d_cor", fDcor, kDouble, 2},
+      {0}
+    };
+    gHcParms->LoadParmValues((DBRequest*)&list, prefix);
+  }
+
+  // Debug output.
+  if (fdbg_init_cal) {
+    cout << "  Coordinate correction constants:\n";
+    cout << "    fAcor = " << fAcor << endl;
+    cout << "    fBcor = " << fBcor << endl;
+    cout << "    fCcor = " << fCcor[0] << ", " << fCcor[1] << endl;
+    cout << "    fDcor = " << fDcor[0] << ", " << fDcor[1] << endl;
+  }
+
+  BlockThick = new Double_t [fNLayers];
+  fNBlocks = new UInt_t [fNLayers];
+  fNLayerZPos = new Double_t [fNLayers];
+  YPos = new Double_t [2*fNLayers];
+
+  for(UInt_t i=0;i<fNLayers;i++) {
+    DBRequest list[]={
+      {Form("cal_%s_thick",fLayerNames[i]), &BlockThick[i], kDouble},
+      {Form("cal_%s_nr",fLayerNames[i]), &fNBlocks[i], kInt},
+      {Form("cal_%s_zpos",fLayerNames[i]), &fNLayerZPos[i], kDouble},
+      {Form("cal_%s_right",fLayerNames[i]), &YPos[2*i], kDouble},
+      {Form("cal_%s_left",fLayerNames[i]), &YPos[2*i+1], kDouble},
+      {0}
+    };
+    gHcParms->LoadParmValues((DBRequest*)&list, prefix);
+  }
+
+  //Caution! Z positions (fronts) are off in hcal.param! Correct later on.
+
+  XPos = new Double_t* [fNLayers];
+  for(UInt_t i=0;i<fNLayers;i++) {
+    XPos[i] = new Double_t [fNBlocks[i]];
+    DBRequest list[]={
+      {Form("cal_%s_top",fLayerNames[i]),XPos[i], kDouble, fNBlocks[i]},
+      {0}
+    };
+    gHcParms->LoadParmValues((DBRequest*)&list, prefix);
+  }
+
+  // Debug output.
+  if (fdbg_init_cal) {
+    for(UInt_t i=0;i<fNLayers;i++) {
+      cout << "  Plane " << fLayerNames[i] << ":" << endl;
+      cout << "    Block thickness: " << BlockThick[i] << endl;
+      cout << "    NBlocks        : " << fNBlocks[i] << endl;
+      cout << "    Z Position     : " << fNLayerZPos[i] << endl;
+      cout << "    Y Positions    : " << YPos[2*i] << ", " << YPos[2*i+1]
+	   <<endl;
+      cout << "    X Positions    :";
+      for(UInt_t j=0; j<fNBlocks[i]; j++) {
+	cout << " " << XPos[i][j];
+      }
+      cout << endl;
+    }
+  }
+
+  // Fiducial volume limits, based on Plane 1 positions.
+  //
+
+  fvXmin = XPos[0][0] + fvDelta;
+  fvXmax = XPos[0][fNBlocks[0]-1] + BlockThick[0] - fvDelta;
+  fvYmin = YPos[0] + fvDelta;
+  fvYmax = YPos[1] - fvDelta;
+
+  // Debug output.
+  if (fdbg_init_cal) {
+    cout << "  Fiducial volume limits:" << endl;
+    cout << "    Xmin = " << fvXmin << "  Xmax = " << fvXmax << endl;
+    cout << "    Ymin = " << fvYmin << "  Ymax = " << fvYmax << endl;
+  }
+
+  //Calibration related parameters (from hcal.param).
+
+  fNtotBlocks=0;              //total number of blocks
+  for (UInt_t i=0; i<fNLayers; i++) fNtotBlocks += fNBlocks[i];
+
+  // Debug output.
+  if (fdbg_init_cal) 
+    cout << "  Total number of blocks in the calorimeter: " << fNtotBlocks
+	 << endl;
+
+  //Pedestal limits from hcal.param.
+  fShPosPedLimit = new Int_t [fNtotBlocks];
+  fShNegPedLimit = new Int_t [fNtotBlocks];
+
+  //Calibration constants
+  fPosGain = new Double_t [fNtotBlocks];
+  fNegGain = new Double_t [fNtotBlocks];
+
+  //Read in parameters from hcal.param
+  Double_t hcal_pos_cal_const[fNtotBlocks];
+  //  Double_t hcal_pos_gain_ini[fNtotBlocks];     not used
+  //  Double_t hcal_pos_gain_cur[fNtotBlocks];     not used
+  //  Int_t    hcal_pos_ped_limit[fNtotBlocks];    not used
+  Double_t hcal_pos_gain_cor[fNtotBlocks];
+
+  Double_t hcal_neg_cal_const[fNtotBlocks];
+  //  Double_t hcal_neg_gain_ini[fNtotBlocks];     not used
+  //  Double_t hcal_neg_gain_cur[fNtotBlocks];     not used
+  //  Int_t    hcal_neg_ped_limit[fNtotBlocks];    not used
+  Double_t hcal_neg_gain_cor[fNtotBlocks];
+
+  DBRequest list[]={
+    {"cal_pos_cal_const", hcal_pos_cal_const, kDouble, fNtotBlocks},
+    //    {"cal_pos_gain_ini",  hcal_pos_gain_ini,  kDouble, fNtotBlocks},
+    //    {"cal_pos_gain_cur",  hcal_pos_gain_cur,  kDouble, fNtotBlocks},
+    {"cal_pos_ped_limit", fShPosPedLimit, kInt,    fNtotBlocks},
+    {"cal_pos_gain_cor",  hcal_pos_gain_cor,  kDouble, fNtotBlocks},
+    {"cal_neg_cal_const", hcal_neg_cal_const, kDouble, fNtotBlocks},
+    //    {"cal_neg_gain_ini",  hcal_neg_gain_ini,  kDouble, fNtotBlocks},
+    //    {"cal_neg_gain_cur",  hcal_neg_gain_cur,  kDouble, fNtotBlocks},
+    {"cal_neg_ped_limit", fShNegPedLimit, kInt,    fNtotBlocks},
+    {"cal_neg_gain_cor",  hcal_neg_gain_cor,  kDouble, fNtotBlocks},
+    {"cal_min_peds", &fShMinPeds, kInt},
+    {0}
+  };
+  gHcParms->LoadParmValues((DBRequest*)&list, prefix);
+
+  // Debug output.
+  if (fdbg_init_cal) {
+
+    cout << "  hcal_pos_cal_const:" << endl;
+    for (UInt_t j=0; j<fNLayers; j++) {
+      cout << "    ";
+      for (UInt_t i=0; i<fNBlocks[j]; i++) {
+	cout << hcal_pos_cal_const[j*fNBlocks[j]+i] << " ";
+      };
+      cout <<  endl;
+    };
+
+    cout << "  fShPosPedLimit:" << endl;
+    for (UInt_t j=0; j<fNLayers; j++) {
+      cout << "    ";
+      for (UInt_t i=0; i<fNBlocks[j]; i++) {
+	cout << fShPosPedLimit[j*fNBlocks[j]+i] << " ";
+      };
+      cout <<  endl;
+    };
+
+    cout << "  hcal_pos_gain_cor:" << endl;
+    for (UInt_t j=0; j<fNLayers; j++) {
+      cout << "    ";
+      for (UInt_t i=0; i<fNBlocks[j]; i++) {
+	cout << hcal_pos_gain_cor[j*fNBlocks[j]+i] << " ";
+      };
+      cout <<  endl;
+    };
+
+    cout << "  hcal_neg_cal_const:" << endl;
+    for (UInt_t j=0; j<fNLayers; j++) {
+      cout << "    ";
+      for (UInt_t i=0; i<fNBlocks[j]; i++) {
+	cout << hcal_neg_cal_const[j*fNBlocks[j]+i] << " ";
+      };
+      cout <<  endl;
+    };
+
+    cout << "  fShNegPedLimit:" << endl;
+    for (UInt_t j=0; j<fNLayers; j++) {
+      cout << "    ";
+      for (UInt_t i=0; i<fNBlocks[j]; i++) {
+	cout << fShNegPedLimit[j*fNBlocks[j]+i] << " ";
+      };
+      cout <<  endl;
+    };
+
+    cout << "  hcal_neg_gain_cor:" << endl;
+    for (UInt_t j=0; j<fNLayers; j++) {
+      cout << "    ";
+      for (UInt_t i=0; i<fNBlocks[j]; i++) {
+	cout << hcal_neg_gain_cor[j*fNBlocks[j]+i] << " ";
+      };
+      cout <<  endl;
+    };
+
+  }    // end of debug output
+
+  // Calibration constants (GeV / ADC channel).
+
+  for (UInt_t i=0; i<fNtotBlocks; i++) {
+    fPosGain[i] = hcal_pos_cal_const[i] *  hcal_pos_gain_cor[i];
+    fNegGain[i] = hcal_neg_cal_const[i] *  hcal_neg_gain_cor[i];
+  }
+
+  // Debug output.
+  if (fdbg_init_cal) {
+
+    cout << "  fPosGain:" << endl;
+    for (UInt_t j=0; j<fNLayers; j++) {
+      cout << "    ";
+      for (UInt_t i=0; i<fNBlocks[j]; i++) {
+	cout << fPosGain[j*fNBlocks[j]+i] << " ";
+      };
+      cout <<  endl;
+    };
+
+    cout << "  fNegGain:" << endl;
+    for (UInt_t j=0; j<fNLayers; j++) {
+      cout << "    ";
+      for (UInt_t i=0; i<fNBlocks[j]; i++) {
+	cout << fNegGain[j*fNBlocks[j]+i] << " ";
+      };
+      cout <<  endl;
+    };
+
+  }
+
+  // Origin of the calorimeter, at the centre of the face of the detector,
+  // or at the centre of the front of the 1-st layer.
+  //
+  Double_t xOrig = (XPos[0][0] + XPos[0][fNBlocks[0]-1])/2 + BlockThick[0]/2;
+  Double_t yOrig = (YPos[0] + YPos[1])/2;
+  Double_t zOrig = fNLayerZPos[0];
+
+  fOrigin.SetXYZ(xOrig, yOrig, zOrig);
+
+  // Debug output.
+  if (fdbg_init_cal) {
+    cout << "  Origin of the Calorimeter:" << endl;
+    cout << "    Xorig = " << GetOrigin().X() << endl;
+    cout << "    Yorig = " << GetOrigin().Y() << endl;
+    cout << "    Zorig = " << GetOrigin().Z() << endl;
+    cout << "---------------------------------------------------------------\n";
+  }
+
+  // Detector axes. Assume no rotation.
+  //
+  DefineAxes(0.);
+
+  fIsInit = true;
+
+  return kOK;
+}
+
+
+//_____________________________________________________________________________
+Int_t THcShower::DefineVariables( EMode mode )
+{
+  // Initialize global variables and lookup table for decoder
+
+  if( mode == kDefine && fIsSetup ) return kOK;
+  fIsSetup = ( mode == kDefine );
+
+  // Register variables in global list
+
+  RVarDef vars[] = {
+    { "nhits", "Number of hits",                                 "fNhits" },
+    { "nclust", "Number of clusters",                            "fNclust" },
+    { "etot", "Total energy",                            "fEtot" },
+    { "etotnorm", "Total energy divided by Central Momentum",   "fEtotNorm" },
+    { "ntracks", "Number of shower tracks",                      "fNtracks" },
+    { 0 }
+  };
+  return DefineVarsFromList( vars, mode );
+
+}
+
+//_____________________________________________________________________________
+THcShower::~THcShower()
+{
+  // Destructor. Remove variables from global list.
+
+  if( fIsSetup )
+    RemoveVariables();
+  if( fIsInit )
+    DeleteArrays();
+  if (fTrackProj) {
+    fTrackProj->Clear();
+    delete fTrackProj; fTrackProj = 0;
+  }
+}
+
+//_____________________________________________________________________________
+void THcShower::DeleteArrays()
+{
+  // Delete member arrays. Used by destructor.
+
+  delete [] BlockThick;  BlockThick = NULL;
+  delete [] fNBlocks;  fNBlocks = NULL;
+  delete [] fNLayerZPos;  fNLayerZPos = NULL;
+  delete [] XPos;  XPos = NULL;
+  delete [] ZPos;  ZPos = NULL;
+}
+
+//_____________________________________________________________________________
+inline 
+void THcShower::Clear(Option_t* opt)
+{
+
+//   Reset per-event data.
+
+  for(UInt_t ip=0;ip<fNLayers;ip++) {
+    fPlanes[ip]->Clear(opt);
+  }
+
+  fNhits = 0;
+  fNclust = 0;
+  fNtracks = 0;
+  fEtot = 0.;
+  fEtotNorm = 0.;
+
+  // Purge cluster list
+
+  for (THcShowerClusterListIt i=fClusterList->begin(); i!=fClusterList->end();
+       ++i) {
+    delete *i;
+    *i = 0;
+  }
+  fClusterList->clear();
+
+}
+
+//_____________________________________________________________________________
+Int_t THcShower::Decode( const THaEvData& evdata )
+{
+
+  Clear();
+
+  // Get the Hall C style hitlist (fRawHitList) for this event
+  Int_t nhits = DecodeToHitList(evdata);
+
+  fEvent = evdata.GetEvNum();
+
+  if(gHaCuts->Result("Pedestal_event")) {
+    Int_t nexthit = 0;
+    for(UInt_t ip=0;ip<fNLayers;ip++) {
+      nexthit = fPlanes[ip]->AccumulatePedestals(fRawHitList, nexthit);
+    }
+    fAnalyzePedestals = 1;	// Analyze pedestals first normal events
+    return(0);
+  }
+
+  if(fAnalyzePedestals) {
+    for(UInt_t ip=0;ip<fNLayers;ip++) {
+      fPlanes[ip]->CalculatePedestals();
+    }
+    fAnalyzePedestals = 0;	// Don't analyze pedestals next event
+  }
+
+  Int_t nexthit = 0;
+  for(UInt_t ip=0;ip<fNLayers;ip++) {
+    nexthit = fPlanes[ip]->ProcessHits(fRawHitList, nexthit);
+    fEtot += fPlanes[ip]->GetEplane();
+  }
+  THcHallCSpectrometer *app = static_cast<THcHallCSpectrometer*>(GetApparatus());
+  fEtotNorm=fEtot/(app->GetPcentral());
+ 
+  return nhits;
+}
+
+//_____________________________________________________________________________
+Int_t THcShower::CoarseProcess( TClonesArray& tracks)
+{
+  // Calculation of coordinates of particle track cross point with shower
+  // plane in the detector coordinate system. For this, parameters of track 
+  // reconstructed in THaVDC::CoarseTrack() are used.
+  //
+  // Apply corrections and reconstruct the complete hits.
+  
+  // Clustering of hits.
+  //
+
+  // Fill set of unclustered hits.
+
+  THcShowerHitSet HitSet;
+
+  for(UInt_t j=0; j < fNLayers; j++) {
+
+    for (UInt_t i=0; i<fNBlocks[j]; i++) {
+
+      //May be should be done this way.
+      //
+      //      Double_t Edep = fPlanes[j]->GetEmean(i);
+      //      if (Edep > 0.) {                                 //hit
+      //	Double_t x = YPos[j][i] + BlockThick[j]/2.;    //top + thick/2
+      //	Double_t z = fNLayerZPos[j] + BlockThick[j]/2.;//front + thick/2
+      //      	THcShowerHit* hit = new THcShowerHit(i,j,x,z,Edep);
+
+      //ENGINE way.
+      //
+      if (fPlanes[j]->GetApos(i) - fPlanes[j]->GetPosPed(i) >
+	  fPlanes[j]->GetPosThr(i) - fPlanes[j]->GetPosPed(i) ||
+	  fPlanes[j]->GetAneg(i) - fPlanes[j]->GetNegPed(i) >
+	  fPlanes[j]->GetNegThr(i) - fPlanes[j]->GetNegPed(i)) {    //hit
+
+	Double_t Edep = fPlanes[j]->GetEmean(i);
+	Double_t Epos = fPlanes[j]->GetEpos(i);
+	Double_t Eneg = fPlanes[j]->GetEneg(i);
+	Double_t x = XPos[j][i] + BlockThick[j]/2.;        //top + thick/2
+	Double_t z = fNLayerZPos[j] + BlockThick[j]/2.;    //front + thick/2
+
+	THcShowerHit* hit = new THcShowerHit(i,j,x,z,Edep,Epos,Eneg);
+
+	HitSet.insert(hit);   //<set> version
+      }
+
+    }
+  }
+
+  fNhits = HitSet.size();
+
+  //Debug output, print out hits before clustering.
+
+  if (fdbg_clusters_cal) {
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShower::CoarseProcess for "
+	 << GetApparatus()->GetName() << endl;
+
+    cout << "  List of unclustered hits. Total hits:     " << fNhits << endl;
+    THcShowerHitIt it = HitSet.begin();    //<set> version
+    for (Int_t i=0; i!=fNhits; i++) {
+      cout << "  hit " << i << ": ";
+      (*(it++))->show();
+    }
+  }
+
+  // Fill list of clusters.
+
+  ClusterHits(HitSet);
+
+  fNclust = (*fClusterList).size();   //number of clusters
+
+  //Debug output, print out the cluster list.
+
+  if (fdbg_clusters_cal) {
+
+    cout << "  Clustered hits. Number of clusters: " << fNclust << endl;
+
+    UInt_t i = 0;
+    for (THcShowerClusterListIt ppcl = (*fClusterList).begin();
+	 ppcl != (*fClusterList).end(); ppcl++) {
+
+      cout << "  Cluster #" << i++
+	   <<":  E=" << clE(*ppcl) 
+	   << "  Epr=" << clEpr(*ppcl)
+	   << "  X=" << clX(*ppcl)
+	   << "  Z=" << clZ(*ppcl)
+	   << "  size=" << (**ppcl).size()
+	   << endl;
+
+      Int_t j=0;
+      for (THcShowerClusterIt pph=(**ppcl).begin(); pph!=(**ppcl).end();
+	   pph++) {
+	cout << "  hit " << j++ << ": ";
+	(**pph).show();
+      }
+
+    }
+
+    cout << "---------------------------------------------------------------\n";
+  }
+
+  return 0;
+}
+
+//-----------------------------------------------------------------------------
+
+void THcShower::ClusterHits(THcShowerHitSet& HitSet) {
+
+  // Collect hits from the HitSet into the clusters. The resultant clusters
+  // of hits are saved in the fClusterList.
+
+  while (HitSet.size() != 0) {
+
+    THcShowerCluster* cluster = new THcShowerCluster;
+
+    THcShowerHitIt it = HitSet.end();
+    (*cluster).insert(*(--it));   //Move the last hit from the hit list
+    HitSet.erase(it);             //into the 1st cluster
+
+    bool clustered = true;
+
+    while (clustered) {                   //Proceed while a hit is clustered
+
+      clustered = false;
+
+      for (THcShowerHitIt i=HitSet.begin(); i!=HitSet.end(); ++i) {
+
+	for (THcShowerClusterIt k=(*cluster).begin(); k!=(*cluster).end();
+	     k++) {
+
+	  if ((**i).isNeighbour(*k)) {
+
+	    (*cluster).insert(*i);      //If the hit #i is neighbouring a hit
+	    HitSet.erase(i);            //in the cluster, then move it
+	                                //into the cluster.
+	    clustered = true;
+	  }
+
+	  if (clustered) break;
+	}                               //k
+
+	if (clustered) break;
+      }                                 //i
+
+    }                                   //while clustered
+
+    fClusterList->push_back(cluster);   //Put the cluster in the cluster list
+
+  }                                     //While hit_list not exhausted
+
+};
+
+//-----------------------------------------------------------------------------
+
+// Various helper functions to accumulate hit related quantities.
+
+Double_t addE(Double_t x, THcShowerHit* h) {
+  return x + h->hitE();
+}
+
+Double_t addX(Double_t x, THcShowerHit* h) {
+  return x + h->hitE() * h->hitX();
+}
+
+Double_t addZ(Double_t x, THcShowerHit* h) {
+  return x + h->hitE() * h->hitZ();
+}
+
+Double_t addEpr(Double_t x, THcShowerHit* h) {
+  return h->hitColumn() == 0 ? x + h->hitE() : x;
+}
+
+Double_t addEpos(Double_t x, THcShowerHit* h) {
+  return x + h->hitEpos();
+}
+
+Double_t addEneg(Double_t x, THcShowerHit* h) {
+  return x + h->hitEneg();
+}
+
+// X coordinate of center of gravity of cluster, calculated as hit energy
+// weighted average. Put X out of the calorimeter (-75 cm), if there is no
+// energy deposition in the cluster.
+//
+Double_t clX(THcShowerCluster* cluster) {
+  Double_t Etot = accumulate((*cluster).begin(),(*cluster).end(),0.,addE);
+  return (Etot != 0. ?
+	  accumulate((*cluster).begin(),(*cluster).end(),0.,addX)/Etot : -75.);
+}
+
+// Z coordinate of center of gravity of cluster, calculated as a hit energy
+// weighted average. Put Z out of the calorimeter (0 cm), if there is no energy
+// deposition in the cluster.
+//
+Double_t clZ(THcShowerCluster* cluster) {
+  Double_t Etot = accumulate((*cluster).begin(),(*cluster).end(),0.,addE);
+  return (Etot != 0. ?
+	  accumulate((*cluster).begin(),(*cluster).end(),0.,addZ)/Etot : 0.);
+}
+
+//Energy depostion in a cluster
+//
+Double_t clE(THcShowerCluster* cluster) {
+    return accumulate((*cluster).begin(),(*cluster).end(),0.,addE);
+}
+
+//Energy deposition in the Preshower (1st plane) for a cluster
+//
+Double_t clEpr(THcShowerCluster* cluster) {
+    return accumulate((*cluster).begin(),(*cluster).end(),0.,addEpr);
+}
+
+//Cluster energy deposition in plane iplane=0,..,3:
+// side=0 -- from positive PMTs only;
+// side=1 -- from negative PMTs only;
+// side=2 -- from postive and negative PMTs.
+//
+
+Double_t clEplane(THcShowerCluster* cluster, Int_t iplane, Int_t side) {
+
+  if (side!=0&&side!=1&&side!=2) {
+    cout << "*** Wrong Side in clEplane:" << side << " ***" << endl;
+    return -1;
+  }
+
+  THcShowerHitSet pcluster;
+  for (THcShowerHitIt it=(*cluster).begin(); it!=(*cluster).end(); ++it) {
+    if ((*it)->hitColumn() == iplane) pcluster.insert(*it);
+  }
+
+  Double_t Eplane;
+  switch (side) {
+  case 0 :
+    Eplane = accumulate(pcluster.begin(),pcluster.end(),0.,addEpos);
+    break;
+  case 1 :
+    Eplane = accumulate(pcluster.begin(),pcluster.end(),0.,addEneg);
+    break;
+  case 2 :
+    Eplane = accumulate(pcluster.begin(),pcluster.end(),0.,addE);
+    break;
+  default :
+    Eplane = 0. ;
+  }
+
+  return Eplane;
+}
+
+//-----------------------------------------------------------------------------
+
+Int_t THcShower::MatchCluster(THaTrack* Track,
+			      Double_t& XTrFront, Double_t& YTrFront)
+{
+  // Match a cluster to a given track. Return the cluster number,
+  // and track coordinates at the front of calorimeter.
+
+  XTrFront = kBig;
+  YTrFront = kBig;
+  Double_t pathl = kBig;
+
+  // Track interception with face of the calorimeter. The coordinates are
+  // in the calorimeter's local system.
+
+  fOrigin = fPlanes[0]->GetOrigin();
+
+  CalcTrackIntercept(Track, pathl, XTrFront, YTrFront);
+
+  // Transform coordiantes to the spectrometer's coordinate system.
+
+  XTrFront += GetOrigin().X();
+  YTrFront += GetOrigin().Y();
+
+  Bool_t inFidVol = true;            // In Fiducial Volume flag
+
+  // Re-evaluate Fid. Volume Flag if fid. volume test is requested
+
+  if (fvTest) {
+
+    // Track coordinates at the back of the detector.
+
+    // Origin at the front of the last layer.
+    fOrigin = fPlanes[fNLayers-1]->GetOrigin();
+
+    Double_t XTrBack = kBig;
+    Double_t YTrBack = kBig;
+
+    CalcTrackIntercept(Track, pathl, XTrBack, YTrBack);
+
+    XTrBack += GetOrigin().X();   // from local coord. system
+    YTrBack += GetOrigin().Y();   // to the spectrometer system
+
+    inFidVol = (XTrFront <= fvXmax) && (XTrFront >= fvXmin) &&
+               (YTrFront <= fvYmax) && (YTrFront >= fvYmin) &&
+               (XTrBack <= fvXmax) && (XTrBack >= fvXmin) &&
+               (YTrBack <= fvYmax) && (YTrBack >= fvYmin);
+
+  }
+
+  // Match a cluster to the track.
+
+  Int_t mclust = -1;    // The match cluster #, initialize with a bogus value.
+  Double_t deltaX = kBig;   // Track to cluster distance
+
+  if (inFidVol) {
+
+    // Since hits and clusters are in reverse order (with respect to Engine),
+    // search backwards to be consistent with Engine.
+    //
+    for (Int_t i=fNclust-1; i>-1; i--) {
+
+      THcShowerCluster* cluster = *(fClusterList->begin()+i);
+
+      Double_t dx = TMath::Abs( clX(cluster) - XTrFront );
+
+      if (dx <= (0.5*BlockThick[0] + fSlop)) {
+	fNtracks++;  // number of shower tracks (Consistent with engine)
+	if (dx < deltaX) {
+	  mclust = i;
+	  deltaX = dx;
+	}
+      }
+    }
+  }
+
+  //Debug output.
+
+  if (fdbg_tracks_cal) {
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShower::MatchCluster for "
+	 << GetApparatus()->GetName() << endl;
+
+    cout << "  Track at DC:"
+	 << "  X = " << Track->GetX()
+	 << "  Y = " << Track->GetY()
+	 << "  Theta = " << Track->GetTheta()
+	 << "  Phi = " << Track->GetPhi()
+	 << endl;
+    cout << "  Track at the front of Calorimeter:"
+	 << "  X = " << XTrFront
+	 << "  Y = " << YTrFront
+	 << "  Pathl = " << pathl
+	 << endl;
+    if (fvTest) 
+      cout << "  Fiducial volume test: inFidVol = " << inFidVol << endl;
+
+    cout << "  Matched cluster #" << mclust << ",  delatX= " << deltaX 
+    	 << endl;
+    cout << "---------------------------------------------------------------\n";
+  }
+
+  return mclust;
+}
+
+//_____________________________________________________________________________
+Float_t THcShower::GetShEnergy(THaTrack* Track) {
+
+  // Get total energy deposited in the cluster matched to the given
+  // spectrometer Track.
+
+  // Track coordinates at front of the calorimeter, initialize out of
+  // acceptance.
+  Double_t Xtr = -75.;
+  Double_t Ytr = -40.;
+
+  // Associate a cluster to the track.
+
+  Int_t mclust = MatchCluster(Track, Xtr, Ytr);
+
+  // Coordinate corrected total energy deposition in the cluster.
+
+  Float_t Etrk = 0.;
+  if (mclust >= 0) {         // if there is a matched cluster
+
+    // Get matched cluster.
+
+    THcShowerCluster* cluster = *(fClusterList->begin()+mclust);
+
+    // Correct track energy depositions for the impact coordinate.
+
+    for (UInt_t ip=0; ip<fNLayers; ip++) {
+
+      // Coordinate correction factors for positive and negative sides,
+      // different for double PMT counters in the 1-st two layes and for
+      // single PMT counters in the rear two layers.
+      Float_t corpos = 1.;   
+      Float_t corneg = 1.;
+      if (ip < fNegCols) {
+	corpos = Ycor(Ytr,0);
+	corneg = Ycor(Ytr,1);
+      }
+      else {
+	corpos = Ycor(Ytr);
+	corneg = 0.;
+      }
+
+      Etrk += clEplane(cluster,ip,0) * corpos;
+      Etrk += clEplane(cluster,ip,1) * corneg;
+
+    }   //over planes
+
+  }   //mclust>=0
+
+  //Debug output.
+
+  if (fdbg_tracks_cal) {
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShower::GetShEnergy for "
+	 << GetApparatus()->GetName() << endl;
+
+    cout << "  Track at the calorimeter: X = " << Xtr << "  Y = " << Ytr;
+    if (mclust >= 0)
+      cout << ", matched cluster #" << mclust << "." << endl;
+    else
+      cout << ", no matched cluster found." << endl;
+
+    cout << "  Coordinate corrected track energy = " << Etrk << "." << endl;
+    cout << "---------------------------------------------------------------\n";
+  }
+
+  return Etrk;
+}
+
+//_____________________________________________________________________________
+Int_t THcShower::FineProcess( TClonesArray& tracks )
+{
+
+  // Shower energy assignment to the spectrometer tracks.
+  //
+
+  Int_t Ntracks = tracks.GetLast()+1;   // Number of reconstructed tracks
+
+  for (Int_t itrk=0; itrk<Ntracks; itrk++) {
+
+    THaTrack* theTrack = static_cast<THaTrack*>( tracks[itrk] );
+
+    Float_t energy = GetShEnergy(theTrack);
+    theTrack->SetEnergy(energy);
+
+  }       //over tracks
+
+  //Debug output.
+
+  if (fdbg_tracks_cal) {
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShower::FineProcess for "
+	 << GetApparatus()->GetName() << endl;
+
+    cout << "  Number of tracks = " << Ntracks << endl;
+
+    for (Int_t itrk=0; itrk<Ntracks; itrk++) {
+      THaTrack* theTrack = static_cast<THaTrack*>( tracks[itrk] );
+      cout << "  Track " << itrk << ": "
+	   << "  X = " << theTrack->GetX()
+	   << "  Y = " << theTrack->GetY()
+	   << "  Theta = " << theTrack->GetTheta()
+	   << "  Phi = " << theTrack->GetPhi()
+	   << "  Energy = " << theTrack->GetEnergy() << endl;
+    }
+
+    cout << "---------------------------------------------------------------\n";
+  }
+
+  return 0;
+}
+
+Double_t THcShower::GetNormETot( ){
+  return fEtotNorm;
+} 
+
+ClassImp(THcShower)
+////////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcShower.h b/src/THcShower.h
new file mode 100644
index 0000000000000000000000000000000000000000..b2dddb9a6b82576837c62f73e9d8fb015f228d06
--- /dev/null
+++ b/src/THcShower.h
@@ -0,0 +1,327 @@
+#ifndef ROOT_THcShower
+#define ROOT_THcShower
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcShower                                                                 //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "TClonesArray.h"
+#include "THaNonTrackingDetector.h"
+#include "THcHitList.h"
+#include "THcShowerPlane.h"
+#include "TMath.h"
+
+
+// HMS calorimeter hits, version 2
+
+#include <set>
+#include <iterator>
+#include <iostream>
+#include <memory>
+
+using namespace std;
+
+class THcShowerHit {       //HMS calorimeter hit class
+
+private:
+  Int_t fCol, fRow;        //hit colomn and row
+  Double_t fX, fZ;         //hit X (vert.) and Z (along spect.axis) coordinates
+  Double_t fE;             //hit mean energy deposition
+  Double_t fEpos;          //hit energy deposition from positive PMT
+  Double_t fEneg;          //hit energy deposition from negative PMT
+  
+public:
+
+  THcShowerHit() {         //default constructor
+    fCol=fRow=0;
+    fX=fZ=0.;
+    fE=0.;
+    fEpos=0.;
+    fEneg=0.;
+  }
+
+  THcShowerHit(Int_t hRow, Int_t hCol, Double_t hX, Double_t hZ,
+	       Double_t hE, Double_t hEpos, Double_t hEneg) {
+    fRow=hRow;
+    fCol=hCol;
+    fX=hX;
+    fZ=hZ;
+    fE=hE;
+    fEpos=hEpos;
+    fEneg=hEneg;
+  }
+
+  ~THcShowerHit() {
+    //    cout << " hit destructed" << endl;
+  }
+
+  Int_t hitColumn() {
+    return fCol;
+  }
+
+  Int_t hitRow() {
+    return fRow;
+  }
+
+  Double_t hitX() {
+    return fX;
+  }
+
+  Double_t hitZ() {
+    return fZ;
+  }
+
+  Double_t hitE() {
+    return fE;
+  }
+
+  Double_t hitEpos() {
+    return fEpos;
+  }
+
+  Double_t hitEneg() {
+    return fEneg;
+  }
+
+  // Decide if a hit is neighbouring the current hit.
+  // Two hits are neighbours if share a side or a corner,
+  // or in the same row but separated by no more than a block.
+  //
+  bool isNeighbour(THcShowerHit* hit1) {      //Is hit1 neighbouring this hit?
+    Int_t dRow = fRow-(*hit1).fRow;
+    Int_t dCol = fCol-(*hit1).fCol;
+    return (TMath::Abs(dRow)<2 && TMath::Abs(dCol)<2) ||
+      (dRow==0 && TMath::Abs(dCol)<3);
+  }
+
+  //Print out hit information
+  //
+  void show() {
+    cout << "row=" << fRow << "  column=" << fCol 
+	 << "  x=" << fX << "  z=" << fZ 
+	 << "  E=" << fE << "  Epos=" << fEpos << "  Eneg=" << fEneg << endl;
+  }
+
+  // Define < operator in order to fill in set of hits in a sorted manner.
+  //
+  bool operator<(THcShowerHit rhs) const {
+    if (fCol != rhs.fCol)
+      return fCol < rhs.fCol;
+    else
+      return fRow < rhs.fRow;
+  }
+
+};
+
+
+//____________________________________________________________________________
+
+// Container (collection) of hits and its iterator.
+//
+typedef set<THcShowerHit*> THcShowerHitSet;
+typedef THcShowerHitSet::iterator THcShowerHitIt;
+
+typedef THcShowerHitSet THcShowerCluster;
+typedef THcShowerCluster::iterator THcShowerClusterIt;
+
+//______________________________________________________________________________
+
+//Alias for container of clusters and for its iterator
+//
+typedef vector<THcShowerCluster*> THcShowerClusterList;
+typedef THcShowerClusterList::iterator THcShowerClusterListIt;
+
+//______________________________________________________________________________
+
+class THcShower : public THaNonTrackingDetector, public THcHitList {
+
+public:
+  THcShower( const char* name, const char* description = "",
+		   THaApparatus* a = NULL );
+  virtual ~THcShower();
+  virtual void 	     Clear( Option_t* opt="" );
+  virtual Int_t      Decode( const THaEvData& );
+  virtual EStatus    Init( const TDatime& run_time );
+  virtual Int_t      CoarseProcess( TClonesArray& tracks );
+  virtual Int_t      FineProcess( TClonesArray& tracks );
+  
+  Double_t GetNormETot();
+
+  Int_t GetNHits() const { return fNhits; }
+  
+  Int_t GetNBlocks(Int_t NLayer) const { return fNBlocks[NLayer];}
+
+  Double_t GetXPos(Int_t NLayer, Int_t NRaw) const {
+    return XPos[NLayer][NRaw];
+  }
+
+  Double_t GetYPos(Int_t NLayer, Int_t Side) const {
+
+    //Side = 0 for postive (right) side
+    //Side = 1 for negative (left) side
+
+    return YPos[2*NLayer+(1-Side)];
+  }
+
+  Double_t GetZPos(Int_t NLayer) const {return fNLayerZPos[NLayer];}
+
+  Double_t GetBlockThick(Int_t NLayer) {return BlockThick[NLayer];}
+
+  Int_t GetPedLimit(Int_t NBlock, Int_t NLayer, Int_t Side) {
+    if (Side!=0&&Side!=1) {
+      cout << "*** Wrong Side in GetPedLimit:" << Side << " ***" << endl;
+      return -1;
+    }
+    Int_t nelem = 0;
+    for (Int_t i=0; i<NLayer; i++) nelem += fNBlocks[i];
+    nelem += NBlock;
+    return ( Side == 0 ? fShPosPedLimit[nelem] : fShNegPedLimit[nelem]);
+  }
+
+  Double_t GetGain(Int_t NBlock, Int_t NLayer, Int_t Side) {
+    if (Side!=0&&Side!=1) {
+      cout << "*** Wrong Side in GetGain:" << Side << " ***" << endl;
+      return -1;
+    }
+    Int_t nelem = 0;
+    for (Int_t i=0; i<NLayer; i++) nelem += fNBlocks[i];
+    nelem += NBlock;
+    return ( Side == 0 ? fPosGain[nelem] : fNegGain[nelem]);
+  }
+
+  Int_t GetMinPeds() {
+    return fShMinPeds;
+  }
+
+  Int_t GetNLayers() {
+    return fNLayers;
+  }
+
+  //Coordinate correction for single PMT modules.
+  //PMT attached at right (positive) side.
+
+  Float_t Ycor(Double_t y) {
+    return TMath::Exp(y/fAcor)/(1. + y*y/fBcor);
+  }
+
+  //Coordinate correction for double PMT modules.
+  //
+
+  Float_t Ycor(Double_t y, Int_t side) {
+    if (side!=0&&side!=1) {
+      cout << "THcShower::Ycor : wrong side " << side << endl;
+      return 0.;
+    }
+    Int_t sign = 1 - 2*side;
+    //    return (fCcor + sign*y)/(fCcor + sign*y/fDcor);
+    return (fCcor[side] + sign*y)/(fCcor[side] + sign*y/fDcor[side]);
+  }
+
+  // Get total energy deposited in the cluster matched to the given
+  // spectrometer Track.
+
+  Float_t GetShEnergy(THaTrack*);
+
+  THcShower();  // for ROOT I/O
+
+protected:
+
+  Int_t fEvent;
+
+  Int_t fAnalyzePedestals;   // Flag for pedestal analysis.
+
+  Int_t* fShPosPedLimit;     // [fNtotBlocks] ADC limits for pedestal calc.-s.
+  Int_t* fShNegPedLimit;
+
+  Int_t fShMinPeds;          // Min.number of events to analyze pedestals.
+
+  Double_t* fPosGain;        // [fNtotBlocks] Gain constants from calibration
+  Double_t* fNegGain;
+
+  // Per-event data
+
+  Int_t fNhits;              // Total number of hits
+  Int_t fNclust;             // Number of clusters
+  Int_t fNtracks;            // Number of shower tracks, i.e. number of
+                             // cluster-to-track association
+  Double_t fEtot;             // Total energy 
+  Double_t fEtotNorm;             // Total energy divided by spec central momentum 
+
+  THcShowerClusterList* fClusterList;   // List of hit clusters
+
+
+  // Geometrical parameters.
+
+  char** fLayerNames;
+  UInt_t fNLayers;	        // Number of layers in the calorimeter
+  Double_t* fNLayerZPos;	// Z positions of fronts of layers
+  Double_t* BlockThick;		// Thickness of blocks
+  UInt_t* fNBlocks;              // [fNLayers] number of blocks per layer
+  UInt_t fNtotBlocks;            // Total number of shower counter blocks
+  Double_t** XPos;		// [fNLayers] X,Y,Z positions of blocks
+  Double_t* YPos;
+  Double_t* ZPos;
+  UInt_t fNegCols;               // # of columns with neg. side PMTs only.
+  Double_t fSlop;               // Track to cluster vertical slop distance.
+  Int_t fvTest;                 // fiducial volume test flag for tracking
+  Double_t fvDelta;             // Exclusion band width for fiducial volume
+
+  Double_t fvXmin;              // Fiducial volume limits
+  Double_t fvXmax;
+  Double_t fvYmin;
+  Double_t fvYmax;
+
+  Int_t fdbg_raw_cal;          // Shower debug flags
+  Int_t fdbg_decoded_cal;
+  Int_t fdbg_sparsified_cal;
+  Int_t fdbg_clusters_cal;
+  Int_t fdbg_tracks_cal;
+  Int_t fdbg_init_cal;         // No counterpart in engine, added to debug
+                               // calorimeter initialization
+
+  Double_t fAcor;               // Coordinate correction constants
+  Double_t fBcor;
+  Double_t fCcor[2];            // for positive ad negative side PMTs
+  Double_t fDcor[2];
+
+  THcShowerPlane** fPlanes;     // [fNLayers] Shower Plane objects
+
+  TClonesArray*  fTrackProj;    // projection of track onto plane
+
+  void           ClearEvent();
+  void           DeleteArrays();
+  virtual Int_t  ReadDatabase( const TDatime& date );
+  virtual Int_t  DefineVariables( EMode mode = kDefine );
+
+  void Setup(const char* name, const char* description);
+
+  // Cluster to track association method.
+  Int_t MatchCluster(THaTrack*, Double_t&, Double_t&);
+
+  void ClusterHits(THcShowerHitSet& HitSet);
+
+  friend class THcShowerPlane;   //to access debug flags.
+
+  ClassDef(THcShower,0)          // Shower counter detector
+};
+
+///////////////////////////////////////////////////////////////////////////////
+
+// Various helper functions to accumulate hit related quantities.
+
+Double_t addE(Double_t x, THcShowerHit* h);
+Double_t addX(Double_t x, THcShowerHit* h);
+Double_t addZ(Double_t x, THcShowerHit* h);
+Double_t addEpr(Double_t x, THcShowerHit* h);
+
+// Methods to calculate coordinates and energy depositions for a given cluster.
+
+Double_t clX(THcShowerCluster* cluster);
+Double_t clZ(THcShowerCluster* cluster);
+Double_t clE(THcShowerCluster* cluster);
+Double_t clEpr(THcShowerCluster* cluster);
+Double_t clEplane(THcShowerCluster* cluster, Int_t iplane, Int_t side);
+
+#endif
diff --git a/src/THcShowerCluster.h.float b/src/THcShowerCluster.h.float
new file mode 100644
index 0000000000000000000000000000000000000000..796fb39469414920ed7fa89cfe3e459e2eaa1b0e
--- /dev/null
+++ b/src/THcShowerCluster.h.float
@@ -0,0 +1,254 @@
+#ifndef ROOT_THcShowerCluster
+#define ROOT_THcShowerCluster
+
+//HMS calorimeter hit cluster, version 3.
+
+//#include "THcShower.h"
+#include "THcShowerHit.h"
+
+//HMS calorimeter hit cluster
+//
+class THcShowerCluster : THcShowerHitList {
+
+ public:
+
+  THcShowerCluster() {
+    //    cout << "Dummy THcShowerCluster object created" << endl;
+  }
+
+  ~THcShowerCluster() {
+    for (THcShowerHitIt i = THcShowerHitList::begin();
+    	 i != THcShowerHitList::end(); ++i) {
+      delete *i;
+      *i = 0;
+    }
+  }
+
+  // Add a hit to the cluster hit list
+  //
+  void grow(THcShowerHit* hit) {
+    THcShowerHitList::push_back(hit);
+  }
+
+  //Pointer to the hit #i in the cluster hit list
+  //
+  THcShowerHit* ClusteredHit(UInt_t i) {
+    return * (THcShowerHitList::begin()+i);
+  }
+
+  //Print out a hit in the cluster
+  //
+  void showHit(UInt_t num) {
+    (*(THcShowerHitList::begin()+num))->show();
+  }
+
+  // X coordinate of center of gravity of cluster,
+  // calculated as hit energy weighted average.
+  // Put X out of the calorimeter (-75 cm), if there is no energy deposition
+  // in the cluster.
+  //
+  Double_t clX() {
+    //    Double_t x_sum=0.;
+    //    Double_t Etot=0.;
+    float x_sum=0.;
+    float Etot=0.;
+
+    //    for (THcShowerHitIt it=THcShowerHitList::begin();
+    //	 it!=THcShowerHitList::end(); ++it) {
+
+    // Consistent with Engine.
+    //
+    for (THcShowerHitIt it=THcShowerHitList::end()-1;
+    	 it>=THcShowerHitList::begin(); it--) {
+      //x_sum += (*it)->hitX() * (*it)->hitE();
+      //Etot += (*it)->hitE();
+      x_sum += float((*it)->hitX()) * float((*it)->hitE());
+      Etot += float((*it)->hitE());
+    }
+    //    cout << "x_sum=" << x_sum << "  Etot=" << Etot << endl;
+    return (Etot != 0. ? x_sum/Etot : -75.);
+  }
+
+  // Z coordinate of center of gravity of cluster,
+  // calculated as a hit energy weighted average.
+  // Put Z out of the calorimeter (0 cm), if there is no energy deposition
+  // in the cluster.
+  //
+  Double_t clZ() {
+    Double_t z_sum=0.;
+    Double_t Etot=0.;
+    for (THcShowerHitIt it=THcShowerHitList::begin();
+	 it!=THcShowerHitList::end(); ++it) {
+      z_sum += (*it)->hitZ() * (*it)->hitE();
+      Etot += (*it)->hitE();
+    }
+    //    cout << "z_sum=" << z_sum << "  Etot=" << Etot << endl;
+    return (Etot != 0. ? z_sum/Etot : 0.);
+  }
+
+  //Energy depostion in a cluster
+  //
+  Double_t clE() {
+    //    cout << "In ECl:" << endl;
+    Double_t Etot=0.;
+    for (THcShowerHitIt it=THcShowerHitList::begin();
+	 it!=THcShowerHitList::end(); ++it) {
+      Etot += (*it)->hitE();
+    }
+    return Etot;
+  }
+
+  //Energy deposition in the Preshower (1st plane) for a cluster
+  //
+  Double_t clEpr() {
+    Double_t Epr=0.;
+    for (THcShowerHitIt it=THcShowerHitList::begin();
+	 it!=THcShowerHitList::end(); ++it) {
+      if ((*it)->hitColumn() == 0) {
+	Epr += (*it)->hitE();
+      }
+    }
+    return Epr;
+  }
+
+  //Cluster energy deposition in plane iplane=0,..,3:
+  // side=0 -- from positive PMTs only;
+  // side=1 -- from negative PMTs only;
+  // side=2 -- from postive and negative PMTs.
+  //
+
+  Double_t clEplane(Int_t iplane, Int_t side) {
+
+    if (side!=0&&side!=1&&side!=2) {
+      cout << "*** Wrong Side in clEplane:" << side << " ***" << endl;
+      return -1;
+    }
+
+    Double_t Eplane=0.;
+    for (THcShowerHitIt it=THcShowerHitList::begin();
+	 it!=THcShowerHitList::end(); ++it) {
+
+      if ((*it)->hitColumn() == iplane) 
+
+	switch (side) {
+	case 0 : Eplane += (*it)->hitEpos();
+	  break;
+	case 1 : Eplane += (*it)->hitEneg();
+	  break;
+	case 2 : Eplane += (*it)->hitE();
+	  break;
+	default : ;
+	}
+
+    }
+
+    return Eplane;
+  }
+
+
+  //Cluster size (number of hits in the cluster).
+  //
+  UInt_t clSize() {
+    return THcShowerHitList::size();
+  }
+
+};
+
+//-----------------------------------------------------------------------------
+
+//Alias for container of clusters and for its iterator
+//
+typedef vector<THcShowerCluster*> THcShClusterList;
+typedef THcShClusterList::iterator THcShClusterIt;
+
+//List of clusters
+//
+class THcShowerClusterList : private THcShClusterList {
+
+ public:
+
+  THcShowerClusterList() {
+    //    cout << "Dummy THcShowerClusterList object created" << endl;
+  }
+
+  ~THcShowerClusterList() {
+    purge();
+  }
+
+  // Purge cluster list
+  //
+  void purge() {
+    for (THcShClusterIt i = THcShClusterList::begin();
+	 i != THcShClusterList::end(); ++i) {
+      delete *i;
+      *i = 0;
+    }
+    THcShClusterList::clear();
+  }
+
+  //Put a cluster in the cluster list
+  //
+  void grow(THcShowerCluster* cluster) {
+    THcShClusterList::push_back(cluster);
+  }
+
+  //Pointer to the cluster #i in the cluster list
+  //
+  THcShowerCluster* ListedCluster(UInt_t i) {
+    return *(THcShClusterList::begin()+i);
+  }
+
+  //Cluster list size.
+  //
+  UInt_t NbClusters() {
+    return THcShClusterList::size();
+  }
+
+  //____________________________________________________________________________
+
+  void ClusterHits(THcShowerHitList HitList) {
+
+    // Collect hits from the HitList into the clusters. The resultant clusters
+    // of hits are saved in the ClusterList.
+
+    while (HitList.size() != 0) {
+
+      THcShowerCluster* cluster = new THcShowerCluster;
+
+      (*cluster).grow(*(HitList.end()-1)); //Move the last hit from the hit list
+      HitList.erase(HitList.end()-1);      //into the 1st cluster
+      bool clustered = true;
+
+      while (clustered) {                   //Proceed while a hit is clustered
+
+	clustered = false;
+
+	for (THcShowerHitIt i=HitList.begin(); i!=HitList.end(); ++i) {
+
+	  for (UInt_t k=0; k!=(*cluster).clSize(); k++) {
+
+	    if ((**i).isNeighbour((*cluster).ClusteredHit(k))) {
+
+	      (*cluster).grow(*i);        //If the hit #i is neighbouring a hit
+	      HitList.erase(i);           //in the cluster, then move it
+	                                  //into the cluster.
+	      clustered = true;
+	    }
+
+	    if (clustered) break;
+	  }                               //k
+
+	  if (clustered) break;
+	}                                 //i
+
+      }                                   //while clustered
+
+      grow(cluster);                      //Put the cluster in the cluster list
+
+    }                                     //While hit_list not exhausted
+
+  }
+
+};
+
+#endif
diff --git a/src/THcShowerPlane.cxx b/src/THcShowerPlane.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..8bd3d32e3174eeb900654d98766965c8a6a3d756
--- /dev/null
+++ b/src/THcShowerPlane.cxx
@@ -0,0 +1,544 @@
+//*-- Author :
+
+//////////////////////////////////////////////////////////////////////////
+//
+// THcShowerPlane
+//
+//////////////////////////////////////////////////////////////////////////
+
+#include "THcShowerPlane.h"
+#include "TClonesArray.h"
+#include "THcSignalHit.h"
+#include "THcGlobals.h"
+#include "THcParmList.h"
+#include "THcHitList.h"
+#include "THcShower.h"
+#include "THcRawShowerHit.h"
+#include "TClass.h"
+#include "math.h"
+#include "THaTrack.h"
+#include "THaTrackProj.h"
+
+#include <cstring>
+#include <cstdio>
+#include <cstdlib>
+#include <iostream>
+
+#include <fstream>
+using namespace std;
+
+ClassImp(THcShowerPlane)
+
+//______________________________________________________________________________
+THcShowerPlane::THcShowerPlane( const char* name, 
+					    const char* description,
+					    const Int_t layernum,
+					    THaDetectorBase* parent )
+  : THaSubDetector(name,description,parent)
+{
+  // Normal constructor with name and description
+  fPosADCHits = new TClonesArray("THcSignalHit",fNelem);
+  fNegADCHits = new TClonesArray("THcSignalHit",fNelem);
+
+  //#if ROOT_VERSION_CODE < ROOT_VERSION(5,32,0)
+  //  fPosADCHitsClass = fPosADCHits->GetClass();
+  //  fNegADCHitsClass = fNegADCHits->GetClass();
+  //#endif
+
+  fLayerNum = layernum;
+}
+
+//______________________________________________________________________________
+THcShowerPlane::~THcShowerPlane()
+{
+  // Destructor
+  delete fPosADCHits;
+  delete fNegADCHits;
+
+  delete [] fA_Pos;
+  delete [] fA_Neg;
+  delete [] fA_Pos_p;
+  delete [] fA_Neg_p;
+
+  delete [] fEpos;
+  delete [] fEneg;
+  delete [] fEmean;
+}
+
+//_____________________________________________________________________________
+THaAnalysisObject::EStatus THcShowerPlane::Init( const TDatime& date )
+{
+  // Extra initialization for shower layer: set up DataDest map
+
+  if( IsZombie())
+    return fStatus = kInitError;
+
+  // How to get information for parent
+  //  if( GetParent() )
+  //    fOrigin = GetParent()->GetOrigin();
+
+  EStatus status;
+  if( (status=THaSubDetector::Init( date )) )
+    return fStatus = status;
+
+  return fStatus = kOK;
+
+}
+
+//_____________________________________________________________________________
+Int_t THcShowerPlane::ReadDatabase( const TDatime& date )
+{
+  // Retrieve parameters we need from parent class
+  //
+
+  THcShower* fParent;
+  fParent = (THcShower*) GetParent();
+
+  //  Find the number of elements
+  fNelem = fParent->GetNBlocks(fLayerNum-1);
+
+  // Origin of the plane:
+  //
+  // X is average of top X coordinates of the top and bottom blocks
+  // shifted by a half of the block thickness;
+  // Y is average of left and right edges;
+  // Z is _front_ position of the plane along the beam.
+
+  Double_t BlockThick = fParent->GetBlockThick(fLayerNum-1);
+
+  Double_t xOrig = (fParent->GetXPos(fLayerNum-1,0) + 
+		    fParent->GetXPos(fLayerNum-1,fNelem-1))/2 +
+    BlockThick/2;
+
+  Double_t yOrig = (fParent->GetYPos(fLayerNum-1,0) +
+		    fParent->GetYPos(fLayerNum-1,1))/2;
+
+  Double_t zOrig = fParent->GetZPos(fLayerNum-1);
+
+  fOrigin.SetXYZ(xOrig, yOrig, zOrig);
+
+  // Create arrays to hold results here
+  //
+
+  // Pedestal limits per channel.
+
+  fPosPedLimit = new Int_t [fNelem];
+  fNegPedLimit = new Int_t [fNelem];
+
+  for(Int_t i=0;i<fNelem;i++) {
+    fPosPedLimit[i] = fParent->GetPedLimit(i,fLayerNum-1,0);
+    fNegPedLimit[i] = fParent->GetPedLimit(i,fLayerNum-1,1);
+  }
+
+  fMinPeds = fParent->GetMinPeds();
+
+  InitializePedestals();
+
+  // ADC amplitudes per channel.
+
+  fA_Pos = new Double_t[fNelem];
+  fA_Neg = new Double_t[fNelem];
+  fA_Pos_p = new Double_t[fNelem];
+  fA_Neg_p = new Double_t[fNelem];
+
+  // Energy depositions per block (not corrected for track coordinate)
+
+  fEpos = new Double_t[fNelem];
+  fEneg = new Double_t[fNelem];
+  fEmean= new Double_t[fNelem];
+
+  // Debug output.
+
+  if (fParent->fdbg_init_cal) {
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShowerPlane::ReadDatabase for "
+	 << GetApparatus()->GetName() << ":" << endl;
+
+    cout << "  Layer #" << fLayerNum << ", number of elements " << fNelem
+	 << endl;
+
+    cout << "  Origin of Layer at  X = " << fOrigin.X()
+	 << "  Y = " << fOrigin.Y() << "  Z = " << fOrigin.Z() << endl;
+
+    cout << "  fPosPedLimit:";
+    for(Int_t i=0;i<fNelem;i++) cout << " " << fPosPedLimit[i];
+    cout << endl;
+    cout << "  fNegPedLimit:";
+    for(Int_t i=0;i<fNelem;i++) cout << " " << fNegPedLimit[i];
+    cout << endl;
+
+    cout << "  fMinPeds = " << fMinPeds << endl;
+    cout << "---------------------------------------------------------------\n";
+  }
+
+  return kOK;
+}
+
+//_____________________________________________________________________________
+Int_t THcShowerPlane::DefineVariables( EMode mode )
+{
+  // Initialize global variables and lookup table for decoder
+
+  if( mode == kDefine && fIsSetup ) return kOK;
+  fIsSetup = ( mode == kDefine );
+
+  // Register variables in global list
+  RVarDef vars[] = {
+    {"posadchits", "List of Positive ADC hits","fPosADCHits.THcSignalHit.GetPaddleNumber()"},
+    {"negadchits", "List of Negative ADC hits","fNegADCHits.THcSignalHit.GetPaddleNumber()"},
+    {"apos",       "Raw Positive ADC Amplitudes",                   "fA_Pos"},
+    {"aneg",       "Raw Negative ADC Amplitudes",                   "fA_Neg"},
+    {"apos_p",     "Ped-subtracted Positive ADC Amplitudes",        "fA_Pos_p"},
+    {"aneg_p",     "Ped-subtracted Negative ADC Amplitudes",        "fA_Neg_p"},
+    {"epos",       "Energy Depositions from Positive Side PMTs",    "fEpos"},
+    {"eneg",       "Energy Depositions from Negative Side PMTs",    "fEneg"},
+    {"emean",      "Mean Energy Depositions",                       "fEmean"},
+    {"eplane",     "Energy Deposition per plane",                   "fEplane"},
+    {"eplane_pos", "Energy Deposition per plane from pos. PMTs","fEplane_pos"},
+    {"eplane_neg", "Energy Deposition per plane from neg. PMTs","fEplane_neg"},
+    { 0 }
+  };
+
+  return DefineVarsFromList( vars, mode );
+}
+
+//_____________________________________________________________________________
+void THcShowerPlane::Clear( Option_t* )
+{
+  // Clears the hit lists
+  fPosADCHits->Clear();
+  fNegADCHits->Clear();
+
+  // Debug output.
+  if ( ((THcShower*) GetParent())->fdbg_decoded_cal ) {
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShowerPlane::Clear for "
+	 << GetApparatus()->GetName() << ":" << endl;
+
+    cout << " Cleared ADC hits for plane " << GetName() << endl;
+    cout << "---------------------------------------------------------------\n";
+  }
+}
+
+//_____________________________________________________________________________
+Int_t THcShowerPlane::Decode( const THaEvData& evdata )
+{
+  // Doesn't actually get called.  Use Fill method instead
+
+  //Debug output.
+  if ( ((THcShower*) GetParent())->fdbg_decoded_cal ) {
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShowerPlane::Decode for "
+	 << GetApparatus()->GetName() << ":" << endl;
+
+    cout << " Called for plane " << GetName() << endl;
+    cout << "---------------------------------------------------------------\n";
+  }
+
+  return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcShowerPlane::CoarseProcess( TClonesArray& tracks )
+{
+
+  // Nothing is done here. See ProcessHits method instead.
+  //  
+
+ return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcShowerPlane::FineProcess( TClonesArray& tracks )
+{
+  return 0;
+}
+
+//_____________________________________________________________________________
+Int_t THcShowerPlane::ProcessHits(TClonesArray* rawhits, Int_t nexthit)
+{
+  // Extract the data for this layer from hit list
+  // Assumes that the hit list is sorted by layer, so we stop when the
+  // plane doesn't agree and return the index for the next hit.
+
+  THcShower* fParent;
+  fParent = (THcShower*) GetParent();
+
+  // Initialize variables.
+
+  Int_t nPosADCHits=0;
+  Int_t nNegADCHits=0;
+  fPosADCHits->Clear();
+  fNegADCHits->Clear();
+
+  for(Int_t i=0;i<fNelem;i++) {
+    fA_Pos[i] = 0;
+    fA_Neg[i] = 0;
+    fA_Pos_p[i] = 0;
+    fA_Neg_p[i] = 0;
+    fEpos[i] = 0;
+    fEneg[i] = 0;
+    fEmean[i] = 0;
+  }
+
+  fEplane = 0;
+  fEplane_pos = 0;
+  fEplane_neg = 0;
+
+  // Process raw hits. Get ADC hits for the plane, assign variables for each
+  // channel.
+
+  Int_t nrawhits = rawhits->GetLast()+1;
+
+  Int_t ihit = nexthit;
+
+  while(ihit < nrawhits) {
+    THcRawShowerHit* hit = (THcRawShowerHit *) rawhits->At(ihit);
+
+    // This is OK as far as the hit list is sorted by layer.
+    //
+    if(hit->fPlane > fLayerNum) {
+      break;
+    }
+    
+    // Should probably check that counter # is in range
+    fA_Pos[hit->fCounter-1] = hit->fADC_pos;
+    fA_Neg[hit->fCounter-1] = hit->fADC_neg;
+
+    // Sparsify positive side hits, fill the hit list, compute the
+    // energy depostion from positive side for the counter.
+
+    Double_t thresh_pos = fPosThresh[hit->fCounter -1];
+    if(hit->fADC_pos >  thresh_pos) {
+
+      THcSignalHit *sighit =
+	(THcSignalHit*) fPosADCHits->ConstructedAt(nPosADCHits++);
+      sighit->Set(hit->fCounter, hit->fADC_pos);
+
+      fA_Pos_p[hit->fCounter-1] = hit->fADC_pos - fPosPed[hit->fCounter -1];
+
+      fEpos[hit->fCounter-1] += fA_Pos_p[hit->fCounter-1]*
+	fParent->GetGain(hit->fCounter-1,fLayerNum-1,0);
+    }
+
+    // Sparsify negative side hits, fill the hit list, compute the
+    // energy depostion from negative side for the counter.
+
+    Double_t thresh_neg = fNegThresh[hit->fCounter -1];
+    if(hit->fADC_neg >  thresh_neg) {
+
+      THcSignalHit *sighit = 
+	(THcSignalHit*) fNegADCHits->ConstructedAt(nNegADCHits++);
+      sighit->Set(hit->fCounter, hit->fADC_neg);
+
+      fA_Neg_p[hit->fCounter-1] = hit->fADC_neg - fNegPed[hit->fCounter -1];
+
+      fEneg[hit->fCounter-1] += fA_Neg_p[hit->fCounter-1]*
+	fParent->GetGain(hit->fCounter-1,fLayerNum-1,1);
+    }
+
+    // Mean energy in the counter.
+
+    fEmean[hit->fCounter-1] += (fEpos[hit->fCounter-1] + fEneg[hit->fCounter-1]);
+
+    // Accumulate energies in the plane.
+
+    fEplane += fEmean[hit->fCounter-1];
+    fEplane_pos += fEpos[hit->fCounter-1];
+    fEplane_neg += fEneg[hit->fCounter-1];
+
+    ihit++;
+  }
+
+  //Debug output.
+
+  if (fParent->fdbg_decoded_cal) {
+
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShowerPlane::ProcessHits for "
+	 << GetApparatus()->GetName() << ":" << endl;
+
+    cout << "  nrawhits =  " << nrawhits << "  nexthit =  " << nexthit << endl;
+    cout << "  Sparsified hits for HMS calorimeter plane #" << fLayerNum
+	 << ", " << GetName() << ":" << endl;
+
+    Int_t nspar = 0;
+    for (Int_t jhit = nexthit; jhit < nrawhits; jhit++) {
+
+      THcRawShowerHit* hit = (THcRawShowerHit *) rawhits->At(jhit);
+      if(hit->fPlane > fLayerNum) {
+	break;
+      }
+
+      if(hit->fADC_pos > fPosThresh[hit->fCounter -1] ||
+	 hit->fADC_neg > fNegThresh[hit->fCounter -1]) {
+	cout << "  plane =  " << hit->fPlane
+	     << "  counter =  " << hit->fCounter
+	     << "  Emean = " << fEmean[hit->fCounter-1]
+	     << "  Epos = " << fEpos[hit->fCounter-1]
+	     << "  Eneg = " << fEneg[hit->fCounter-1]
+	     << endl;
+	nspar++;
+      }
+    }
+
+    if (nspar == 0) cout << "  No hits\n";
+
+    cout << "  Eplane = " << fEplane
+	 << "  Eplane_pos = " << fEplane_pos
+	 << "  Eplane_neg = " << fEplane_neg
+	 << endl;
+    cout << "---------------------------------------------------------------\n";
+  }
+
+  return(ihit);
+}
+
+//_____________________________________________________________________________
+Int_t THcShowerPlane::AccumulatePedestals(TClonesArray* rawhits, Int_t nexthit)
+{
+  // Extract the data for this plane from hit list, accumulating into
+  // arrays for calculating pedestals.
+
+  Int_t nrawhits = rawhits->GetLast()+1;
+
+  Int_t ihit = nexthit;
+  while(ihit < nrawhits) {
+
+    THcRawShowerHit* hit = (THcRawShowerHit *) rawhits->At(ihit);
+
+    // OK for hit list sorted by layer.
+    if(hit->fPlane > fLayerNum) {
+      break;
+    }
+    Int_t element = hit->fCounter - 1; // Should check if in range
+    Int_t adcpos = hit->fADC_pos;
+    Int_t adcneg = hit->fADC_neg;
+
+    if(adcpos <= fPosPedLimit[element]) {
+      fPosPedSum[element] += adcpos;
+      fPosPedSum2[element] += adcpos*adcpos;
+      fPosPedCount[element]++;
+      if(fPosPedCount[element] == fMinPeds/5) {
+	fPosPedLimit[element] = 100 + fPosPedSum[element]/fPosPedCount[element];
+      }
+    }
+    if(adcneg <= fNegPedLimit[element]) {
+      fNegPedSum[element] += adcneg;
+      fNegPedSum2[element] += adcneg*adcneg;
+      fNegPedCount[element]++;
+      if(fNegPedCount[element] == fMinPeds/5) {
+	fNegPedLimit[element] = 100 + fNegPedSum[element]/fNegPedCount[element];
+      }
+    }
+    ihit++;
+  }
+
+  fNPedestalEvents++;
+
+  // Debug output.
+
+  if ( ((THcShower*) GetParent())->fdbg_raw_cal ) {
+
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShowerPlane::AcculatePedestals for "
+	 << GetApparatus()->GetName() << ":" << endl;
+
+    cout << "Processed hit list for plane " << GetName() << ":\n";
+
+    for (Int_t ih=nexthit; ih<nrawhits; ih++) {
+
+      THcRawShowerHit* hit = (THcRawShowerHit *) rawhits->At(ih);
+
+      // OK for hit list sorted by layer.
+      if(hit->fPlane > fLayerNum) {
+	break;
+      }
+
+      cout << "  hit " << ih << ":"
+	   << "  plane =  " << hit->fPlane
+	   << "  counter = " << hit->fCounter
+	   << "  ADCpos = " << hit->fADC_pos
+	   << "  ADCneg = " << hit->fADC_neg
+	   << endl;
+    }
+
+    cout << "---------------------------------------------------------------\n";
+
+  }
+
+  return(ihit);
+}
+    
+//_____________________________________________________________________________
+void THcShowerPlane::CalculatePedestals( )
+{
+  // Use the accumulated pedestal data to calculate pedestals
+  // Later add check to see if pedestals have drifted ("Danger Will Robinson!")
+
+  for(Int_t i=0; i<fNelem;i++) {
+    
+    // Positive tubes
+    fPosPed[i] = ((Float_t) fPosPedSum[i]) / TMath::Max(1, fPosPedCount[i]);
+    fPosSig[i] = sqrt(((Float_t)fPosPedSum2[i])/TMath::Max(1, fPosPedCount[i])
+		      - fPosPed[i]*fPosPed[i]);
+    fPosThresh[i] = fPosPed[i] + TMath::Min(50., TMath::Max(10., 3.*fPosSig[i]));
+
+    // Negative tubes
+    fNegPed[i] = ((Float_t) fNegPedSum[i]) / TMath::Max(1, fNegPedCount[i]);
+    fNegSig[i] = sqrt(((Float_t)fNegPedSum2[i])/TMath::Max(1, fNegPedCount[i])
+		      - fNegPed[i]*fNegPed[i]);
+    fNegThresh[i] = fNegPed[i] + TMath::Min(50., TMath::Max(10., 3.*fNegSig[i]));
+
+  }
+
+  // Debug output.
+
+  if ( ((THcShower*) GetParent())->fdbg_raw_cal ) {
+
+    cout << "---------------------------------------------------------------\n";
+    cout << "Debug output from THcShowerPlane::CalculatePedestals for"
+	 << GetApparatus()->GetName() << ":" << endl;
+
+    cout << "  ADC pedestals and thresholds for calorimeter plane "
+	 << GetName() << endl;
+    for(Int_t i=0; i<fNelem;i++) {
+      cout << "  element " << i << ": "
+	   << "  Pos. pedestal = " << fPosPed[i]
+	   << "  Pos. threshold = " << fPosThresh[i]
+	   << "  Neg. pedestal = " << fNegPed[i]
+	   << "  Neg. threshold = " << fNegThresh[i]
+	   << endl;
+    }
+    cout << "---------------------------------------------------------------\n";
+
+  }
+  
+}
+
+//_____________________________________________________________________________
+void THcShowerPlane::InitializePedestals( )
+{
+  fNPedestalEvents = 0;
+  fPosPedSum = new Int_t [fNelem];
+  fPosPedSum2 = new Int_t [fNelem];
+  fPosPedCount = new Int_t [fNelem];
+  fNegPedSum = new Int_t [fNelem];
+  fNegPedSum2 = new Int_t [fNelem];
+  fNegPedCount = new Int_t [fNelem];
+
+  fPosSig = new Float_t [fNelem];
+  fNegSig = new Float_t [fNelem];
+  fPosPed = new Float_t [fNelem];
+  fNegPed = new Float_t [fNelem];
+  fPosThresh = new Float_t [fNelem];
+  fNegThresh = new Float_t [fNelem];
+  for(Int_t i=0;i<fNelem;i++) {
+    fPosPedSum[i] = 0;
+    fPosPedSum2[i] = 0;
+    fPosPedCount[i] = 0;
+    fNegPedSum[i] = 0;
+    fNegPedSum2[i] = 0;
+    fNegPedCount[i] = 0;
+  }
+} 
diff --git a/src/THcShowerPlane.h b/src/THcShowerPlane.h
new file mode 100644
index 0000000000000000000000000000000000000000..41fecdfcb29768015bca2e7ec96828da94a01e8b
--- /dev/null
+++ b/src/THcShowerPlane.h
@@ -0,0 +1,152 @@
+#ifndef ROOT_THcShowerPlane
+#define ROOT_THcShowerPlane 
+
+//////////////////////////////////////////////////////////////////////////////
+//                         
+// THcShowerPlane
+//
+// A Hall C Shower plane
+//
+// May want to later inherit from a THcPlane class if there are similarities
+// in what a plane is shared with other detector types (shower, etc.)
+// 
+//////////////////////////////////////////////////////////////////////////////
+
+#include "THaSubDetector.h"
+#include "TClonesArray.h"
+
+#include <iostream>
+
+#include <fstream>
+
+class THaEvData;
+class THaSignalHit;
+
+class THcShowerPlane : public THaSubDetector {
+  
+public:
+  THcShowerPlane( const char* name, const char* description,
+			Int_t planenum, THaDetectorBase* parent = NULL);
+  virtual ~THcShowerPlane();
+
+  virtual void    Clear( Option_t* opt="" );
+  virtual Int_t Decode( const THaEvData& );
+  virtual EStatus Init( const TDatime& run_time );
+
+  virtual Int_t CoarseProcess( TClonesArray& tracks );
+  virtual Int_t FineProcess( TClonesArray& tracks );
+  Bool_t   IsTracking() { return kFALSE; }
+  virtual Bool_t   IsPid()      { return kFALSE; }
+
+  virtual Int_t ProcessHits(TClonesArray* rawhits, Int_t nexthit);
+  virtual Int_t AccumulatePedestals(TClonesArray* rawhits, Int_t nexthit);
+  virtual void  CalculatePedestals( );
+
+  //  Double_t fSpacing;   not used
+
+  TClonesArray* fParentHitList;
+
+  TVector3 GetOrigin() {
+    return fOrigin;
+  }
+
+  Double_t GetEplane() {
+    return fEplane;
+  };
+
+  Double_t GetEplane_pos() {
+    return fEplane_pos;
+  };
+
+  Double_t GetEplane_neg() {
+    return fEplane_neg;
+  };
+
+  Double_t GetEmean(Int_t i) {
+    return fEmean[i];
+  };
+
+  Double_t GetEpos(Int_t i) {
+    return fEpos[i];
+  };
+
+  Double_t GetEneg(Int_t i) {
+    return fEneg[i];
+  };
+
+  Double_t GetAposP(Int_t i) {
+    return fA_Pos_p[i];
+  };
+
+  Double_t GetAnegP(Int_t i) {
+    return fA_Neg_p[i];
+  };
+
+  Double_t GetApos(Int_t i) {
+    return fA_Pos[i];
+  };
+
+  Double_t GetAneg(Int_t i) {
+    return fA_Neg[i];
+  };
+
+  Double_t GetPosThr(Int_t i) {
+    return fPosThresh[i];
+  };
+
+  Double_t GetNegThr(Int_t i) {
+    return fNegThresh[i];
+  };
+
+  Double_t GetPosPed(Int_t i) {
+    return fPosPed[i];
+  };
+
+  Double_t GetNegPed(Int_t i) {
+    return fNegPed[i];
+  };
+
+protected:
+
+  Double_t*   fA_Pos;         // [fNelem] ADC amplitudes of blocks
+  Double_t*   fA_Neg;         // [fNelem] ADC amplitudes of blocks
+  Double_t*   fA_Pos_p;	      // [fNelem] pedestal subtracted ADC amplitudes
+  Double_t*   fA_Neg_p;	      // [fNelem] pedestal subtracted ADC amplitudes
+
+  Double_t* fEpos;     // [fNelem] energy depositions seen by positive PMTs
+  Double_t* fEneg;     // [fNelem] energy depositions seen by negative PMTs
+  Double_t* fEmean;    // [fNelem] mean energy depositions (pos + neg)
+  Double_t  fEplane;   // Energy deposition in the plane
+  Double_t  fEplane_pos;   // Energy deposition in the plane from positive PMTs
+  Double_t  fEplane_neg;   // Energy deposition in the plane from negative PMTs
+
+  // These lists are not used actively for now.
+  TClonesArray* fPosADCHits;    // List of positive ADC hits 
+  TClonesArray* fNegADCHits;    // List of negative ADC hits
+
+  Int_t fLayerNum;		// Layer # 1-4
+
+  Int_t fNPedestalEvents;	/* Pedestal event counter */
+  Int_t fMinPeds;		/* Only analyze/update if num events > */
+  Int_t *fPosPedSum;		/* Accumulators for pedestals */
+  Int_t *fPosPedSum2;
+  Int_t *fPosPedLimit;          // Analyze pedestal if ADC signal < PedLimit
+  Int_t *fPosPedCount;          // [fNelem] counter of pedestal analysis
+  Int_t *fNegPedSum;
+  Int_t *fNegPedSum2;
+  Int_t *fNegPedLimit;          // Analyze pedestal if ADC signal < PedLimit
+  Int_t *fNegPedCount;          // [fNelem] counter of pedestal analysis
+
+  Float_t *fPosPed;             // [fNelem] pedestal positions
+  Float_t *fPosSig;             // [fNelem] pedestal rms-s
+  Float_t *fPosThresh;          // [fNelem] ADC thresholds
+  Float_t *fNegPed;
+  Float_t *fNegSig;
+  Float_t *fNegThresh;
+
+  virtual Int_t  ReadDatabase( const TDatime& date );
+  virtual Int_t  DefineVariables( EMode mode = kDefine );
+  virtual void  InitializePedestals( );
+  ClassDef(THcShowerPlane,0); // Calorimeter bars in a plane
+};
+#endif
diff --git a/src/THcSignalHit.cxx b/src/THcSignalHit.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..8400419e5bcb4f482433535ab6bc33b4448404dc
--- /dev/null
+++ b/src/THcSignalHit.cxx
@@ -0,0 +1,11 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcSignalHit                                                              //
+//                                                                           //
+// Class representing a single signal value and its wire/paddle number       //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcSignalHit.h"
+
+ClassImp(THcSignalHit)
diff --git a/src/THcSignalHit.h b/src/THcSignalHit.h
new file mode 100644
index 0000000000000000000000000000000000000000..808c730b287d256ade1d35f8dab854c9c0445d7f
--- /dev/null
+++ b/src/THcSignalHit.h
@@ -0,0 +1,35 @@
+#ifndef ROOT_THcSignalHit
+#define ROOT_THcSignalHit
+
+/////////////////////////////////////////////////////////////////////////////
+//                                                                         //
+// THcSignalHit                                                             //
+//                                                                         //
+/////////////////////////////////////////////////////////////////////////////
+
+#include "TObject.h"
+#include <cstdio>
+
+class THcSignalHit : public TObject {
+
+ public:
+ THcSignalHit(Int_t paddle=0, Double_t data=0.0) :
+  fPaddleNumber(paddle), fData(data) {}
+  virtual ~THcSignalHit() {}
+
+  Int_t GetPaddleNumber() {return fPaddleNumber;}
+  Double_t GetData() {return fData;}
+
+  virtual void Set(Int_t paddle, Int_t data)
+  { fPaddleNumber=paddle; fData=data; }
+  virtual void Set(Int_t paddle, Double_t data)
+  { fPaddleNumber=paddle; fData=data; }
+
+ private:
+  Int_t fPaddleNumber;
+  Double_t fData;
+
+  ClassDef(THcSignalHit,0); // Single signal value and wire/counter number
+};
+/////////////////////////////////////////////////////////////////
+#endif
diff --git a/src/THcSpacePoint.cxx b/src/THcSpacePoint.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..eb48ba80c4da486841aa0d1d4a13f46bf528eaed
--- /dev/null
+++ b/src/THcSpacePoint.cxx
@@ -0,0 +1,13 @@
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcSpacePoint                                                                 //
+//                                                                           //
+// Class representing a single hit for the VDC                               //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "THcSpacePoint.h"
+
+ClassImp(THcSpacePoint)
+
+///////////////////////////////////////////////////////////////////////////////
diff --git a/src/THcSpacePoint.h b/src/THcSpacePoint.h
new file mode 100644
index 0000000000000000000000000000000000000000..36faa3d347b911c4728e5baab1422ba3459b9b92
--- /dev/null
+++ b/src/THcSpacePoint.h
@@ -0,0 +1,92 @@
+#ifndef ROOT_THcSpacePoint
+#define ROOT_THcSpacePoint
+
+///////////////////////////////////////////////////////////////////////////////
+//                                                                           //
+// THcSpacePoint                                                           //
+//                                                                           //
+///////////////////////////////////////////////////////////////////////////////
+
+#include "TObject.h"
+#include "THcDCHit.h"
+
+class THcSpacePoint : public TObject {
+
+public:
+
+  THcSpacePoint(Int_t nhits=0, Int_t ncombos=0) :
+    fNHits(nhits), fNCombos(ncombos) {
+    fHits.clear();
+  }
+  virtual ~THcSpacePoint() {}
+
+  struct Hit {
+    THcDCHit* dchit;
+    Double_t distCorr; 		// Drift distance corrected by propagation along wire
+    Int_t lr;			// Left right flag (+/- 1)
+    // Should we copy into here the information from hit
+    // this is likely to be often used?
+  };
+
+  void SetXY(Double_t x, Double_t y) {fX = x; fY = y;};
+  void Clear(Option_t* opt="") {fNHits=0; fNCombos=0; fHits.clear();};
+  void AddHit(THcDCHit* hit) {
+    Hit newhit;
+    newhit.dchit = hit;
+    newhit.distCorr = 0.0;
+    newhit.lr = 0;
+    fHits.push_back(newhit);
+    fNHits++;
+  }
+  Int_t GetNHits() {return fNHits;};
+  void SetNHits(Int_t nhits) {fNHits = nhits;};
+  Double_t GetX() {return fX;};
+  Double_t GetY() {return fY;};
+  THcDCHit* GetHit(Int_t ihit) {return fHits[ihit].dchit;};
+  //  std::vector<THcDCHit*>* GetHitVectorP() {return &fHits;};
+  //std::vector<Hit>* GetHitStuffVectorP() {return &fHits;}; 
+  void ReplaceHit(Int_t ihit, THcDCHit *hit) {
+    fHits[ihit].dchit = hit;
+    fHits[ihit].distCorr = 0.0;
+    fHits[ihit].lr = 0;
+  };
+  void SetHitDist(Int_t ihit, Double_t dist) {
+    fHits[ihit].distCorr = dist;
+  };
+  void SetHitLR(Int_t ihit, Int_t lr) {
+    fHits[ihit].lr = lr;
+  };
+  void SetStub(Double_t stub[4]) {
+    for(Int_t i=0;i<4;i++) {
+      fStub[i] = stub[i];
+    }
+  };
+  Double_t GetHitDist(Int_t ihit) { return fHits[ihit].distCorr; };
+  Int_t GetHitLR(Int_t ihit) { return fHits[ihit].lr; };
+  Double_t* GetStubP() { return fStub; };
+  void IncCombos() { fNCombos++; };
+  void SetCombos(Int_t ncombos) { fNCombos=ncombos; };
+  Int_t GetCombos() { return fNCombos; };
+
+  // This is the chamber number (1,2), not index (0,1).  Sometime
+  // we need figure out how to avoid confusion between number and index.
+  Int_t fNChamber;
+
+protected:
+
+  Double_t fX;
+  Double_t fY;
+  Int_t fNHits;
+  Int_t fNCombos;
+  // This adds more indirection to getting hit information.
+  std::vector<Hit> fHits;
+  //std::vector<THcDCHit*> fHits;
+  Double_t fStub[4];
+  // Should we also have a pointer back to the chamber object
+
+  ClassDef(THcSpacePoint,0);   // Space Point/stub track in a single drift chamber
+};
+
+////////////////////////////////////////////////////////////////////////////////
+
+#endif