diff --git a/CALIBRATION/bcm_current_calib/ScalerCalib.C b/CALIBRATION/bcm_current_calib/ScalerCalib.C
index b28bb9ed0597a875d31d3d7f9c63eb6d3ff15467..2a6cbff59344b6476b4371b1405dbb05af6427b5 100644
--- a/CALIBRATION/bcm_current_calib/ScalerCalib.C
+++ b/CALIBRATION/bcm_current_calib/ScalerCalib.C
@@ -165,14 +165,18 @@ int ScalerCalib::FillContainer()
   T->SetBranchAddress(bname[3].c_str(), &bcm4b_current);
   T->SetBranchAddress(bname[4].c_str(), &bcm17_current);
 
+  const double kBig = 1.e38;
+
   Long64_t nentries = T->GetEntries();
   for(Long64_t ientry=0; ientry<nentries; ientry++)
     {
       T->GetEntry(ientry);
 
-      if(evnumber < 0) continue;
+      if(evnumber < 0)
+	evnum.push_back(kBig);
+      else
+	evnum.push_back(evnumber);
 
-      evnum.push_back(evnumber);
       bcm1.push_back(bcm1_current);
       bcm2.push_back(bcm2_current);
       bcm4a.push_back(bcm4a_current);
diff --git a/DBASE/COIN/STD/standard.kinematics b/DBASE/COIN/STD/standard.kinematics
index b8344892546af88a24246de8fc000ba635ae0074..449f64a68e6e4c7f9ffdd26714a785f97695d0d6 100644
--- a/DBASE/COIN/STD/standard.kinematics
+++ b/DBASE/COIN/STD/standard.kinematics
@@ -7,7 +7,7 @@
 #
 
 0-99999
-gpbeam = 6.4
+gpbeam = 6.430
 gtargmass_amu=12.0107
 htheta_lab = -15.
 ptheta_lab = 15.
@@ -85,7 +85,7 @@ gtargmass_amu = 26.98
 gtargmass_amu = 1.00794
 
 1851-1867
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
 htheta_lab = -27.5
 ptheta_lab = 27.6
@@ -95,7 +95,7 @@ hpartmass = 0.93827231
 ppartmass = 0.00051099
 
 1884-1892
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
 htheta_lab = -20.0
 ptheta_lab = 20.0
@@ -105,7 +105,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 1893-1901
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
 htheta_lab = -27.54
 ptheta_lab = 27.50
@@ -115,7 +115,7 @@ hpartmass = 0.93827231
 ppartmass = 0.00051099
 
 1902-1903
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -27.54
 ptheta_lab = 27.50
@@ -126,7 +126,7 @@ ppartmass = 0.00051099
 
 
 1904-1905
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -22.0
 ptheta_lab = 22.0
@@ -137,7 +137,7 @@ ppartmass = 0.00051099
 
 
 1906-1918
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -25.01
 ptheta_lab = 30.08
@@ -148,7 +148,7 @@ ppartmass = 0.00051099
 
 
 1919
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -22.01
 ptheta_lab = 22.06
@@ -158,7 +158,7 @@ hpartmass = 0.93827231
 ppartmass = 0.00051099
 
 1920
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
 htheta_lab = -22.01
 ptheta_lab = 33.06
@@ -171,7 +171,7 @@ hpartmass = 0.00051099
 junk run
 
 1927
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -22.01
 ptheta_lab = 33.07
@@ -182,7 +182,7 @@ hpartmass = 0.00051099
 
 
 1928
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -35.0
 ptheta_lab = 22.05
@@ -192,12 +192,12 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 1929
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
-htheta_lab = -22.01
-ptheta_lab = 33.07
-hpcentral = 4.284
-ppcentral = 2.925*0.985
+htheta_lab = -35.0
+ptheta_lab = 22.04
+hpcentral = 2.869
+ppcentral = 4.38*0.985
 ppartmass = 0.93827231
 hpartmass = 0.00051099
 
@@ -217,8 +217,7 @@ EDTM Run
 Junk Run
 
 1951 - 1952
-gpbeam = 6.405
-gtarggpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
 htheta_lab = -50.0
 ptheta_lab = 15.03
@@ -237,7 +236,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2022 - 2024
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
 htheta_lab = -45.1
 ptheta_lab = 17.1
@@ -247,7 +246,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2042
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -15.02
 ptheta_lab = 17.09
@@ -257,7 +256,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2043-2044
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu =  26.98
 htheta_lab = -15.02
 ptheta_lab = 17.12
@@ -267,7 +266,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2045-2054
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794 
 htheta_lab = -45.11
 ptheta_lab = 17.12
@@ -277,7 +276,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2055
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 26.98 
 htheta_lab = -45.11
 ptheta_lab = 17.12
@@ -287,7 +286,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2056-2057
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -45.11
 ptheta_lab = 17.12
@@ -297,7 +296,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2058-2060
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
 htheta_lab = -45.11
 ptheta_lab = 17.12
@@ -307,7 +306,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2061-2065
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 12.0107
 htheta_lab = -45.11
 ptheta_lab = 17.12
@@ -317,7 +316,7 @@ ppartmass = 0.93827231
 hpartmass = 0.00051099
 
 2066
-gpbeam = 6.405
+gpbeam = 6.430
 gtargmass_amu = 1.00794
 htheta_lab = -45.11
 ptheta_lab = 17.12
@@ -326,12 +325,105 @@ ppcentral = 5.122*0.985
 ppartmass = 0.93827231
 hpartmass = 0.00051099
 
-2067-9999
-gpbeam = 6.405
+2067-2068
+gpbeam = 6.430
 gtargmass_amu = 26.98
 htheta_lab = -45.11
 ptheta_lab = 17.12
 hpcentral = 2.131
 ppcentral = 5.122*0.985
 ppartmass = 0.93827231
+hpartmass = 0.0005109
+
+#Carbon Hole, Jan 26 2018
+2081-2185
+gpbeam = 6.430
+gtargmass_amu =  12.0107
+htheta_lab = -45.11
+ptheta_lab = 17.12
+hpcentral = 2.131
+ppcentral = 5.122*0.985
+ppartmass = 0.93827231
+hpartmass = 0.0005109
+
+#Ct Experiment (E12-06-107)
+2186-2277
+gpbeam = 6.430
+gtargmass_amu =  12.0107
+htheta_lab = -45.145
+ptheta_lab = 17.11
+hpcentral = 2.131
+ppcentral = 5.122*0.985
+ppartmass = 0.93827231
+hpartmass = 0.0005109
+
+#Ct Experiment (E12-06-107)
+2278-2281
+gpbeam = 10.600
+gtargmass_amu =  1.00794
+htheta_lab = -23.186
+ptheta_lab = 21.625
+hpcentral = 5.539
+ppcentral = 5.925*0.985
+ppartmass = 0.93827231
+hpartmass = 0.0005109
+
+#Ct Experiment (E12-06-107)
+2282-2283
+gpbeam = 10.600
+gtargmass_amu =  1.00794
+htheta_lab = -39.280
+ptheta_lab = 12.800
+hpcentral = 2.982
+ppcentral = 8.505*0.985
+ppartmass = 0.93827231
+hpartmass = 0.0005109
+
+#Ct Experiment (E12-06-107)
+2284-2396
+gpbeam = 10.600
+gtargmass_amu =  12.0107
+htheta_lab = -39.280
+ptheta_lab = 12.800
+hpcentral = 2.982
+ppcentral = 8.505*0.985
+ppartmass = 0.93827231
+hpartmass = 0.0005109
+
+2397
+gpbeam = 10.600
+gtargmass_amu =  1.00794
+htheta_lab = -39.280
+ptheta_lab = 12.800
+hpcentral = 2.982
+ppcentral = 8.505*0.985
+ppartmass = 0.93827231
+hpartmass = 0.0005109
+
+#cosmics/testing DAQ
+2398-2401
+
+#junk
+2402-2403
+
+#Color Transparency --Feb 13/H singles run
+2404-2405
+gpbeam = 10.600
+gtargmass_amu =  1.00794
+htheta_lab = -39.280
+ptheta_lab = 12.800
+hpcentral = 2.982
+ppcentral = 8.505*0.985
+ppartmass = 0.93827231
+hpartmass = 0.0005109
+
+#Color Transparency --Feb 14/H coincidence run
+2406-9999
+gpbeam = 10.600
+gtargmass_amu =  1.00794
+htheta_lab = -39.280
+ptheta_lab = 12.800
+hpcentral = 2.982
+ppcentral = 8.505*0.985
+ppartmass = 0.93827231
 hpartmass = 0.0005109
\ No newline at end of file
diff --git a/DBASE/HMS/STD/standard.kinematics b/DBASE/HMS/STD/standard.kinematics
index 767e9e443625952ac3e1adbbebee10b5866bc3b1..5da66f698f1f7c32cc249d966b72ac59db68e91a 100644
--- a/DBASE/HMS/STD/standard.kinematics
+++ b/DBASE/HMS/STD/standard.kinematics
@@ -8,7 +8,7 @@
 # Run 1277 is last December 2017 HMS run
 
 0-1277
-gpbeam = 2.215
+gpbeam = 2.221
 gtargmass_amu=12.0107
 hpartmass = 0.00051099
 htheta_lab = -25.005
@@ -42,33 +42,33 @@ hpcentral = 2.309
 
 1145-1149
 gtargmass_amu=1.00794
-htheta_lab = -13.5
+htheta_lab = -13.51
 hpcentral = 2.309
 
 1150
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.287
+hpcentral = 2.293
 
 1151
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.266
+hpcentral = 2.259
 
 1152
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.245
+hpcentral = 2.234
 
 1153
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.224
+hpcentral = 2.211
 
 1154
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.203
+hpcentral = 2.187
 
 1155
 gtargmass_amu=1.00794
@@ -78,7 +78,7 @@ hpcentral = 2.180
 1156
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.180
+hpcentral = 2.165
 
 1157
 gtargmass_amu=1.00794
@@ -88,17 +88,17 @@ hpcentral = 2.182
 1158
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.161
+hpcentral = 2.142
 
 1159
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.140
+hpcentral = 2.120
 
 1160
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.119
+hpcentral = 2.099
 
 1161
 gtargmass_amu=1.00794
@@ -113,42 +113,42 @@ hpcentral = 2.057
 1163
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.036
+hpcentral = 2.037
 
 1164
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 2.015
+hpcentral = 2.017
 
 1165
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 1.994
+hpcentral = 1.998
 
 1166
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 1.973
+hpcentral = 1.979
 
 1167
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 1.952
+hpcentral = 1.960
 
 1168
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 1.931
+hpcentral = 1.942
 
 1169
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 1.910
+hpcentral = 1.924
 
 1170
 gtargmass_amu=1.00794
 htheta_lab = -13.5
-hpcentral = 1.889
+hpcentral = 1.906
 
 1171
 gtargmass_amu=1.00794
@@ -285,32 +285,32 @@ gtargmass_amu=1.00794
 htheta_lab = -15.
 hpcentral = 3.0
 hpartmass = 0.00051099
-gpbeam = 6.418
+gpbeam = 6.430
 
 1312-1315
 gtargmass_amu=1.00794
 htheta_lab = -24.995
 hpcentral = 3.0
 hpartmass = 0.00051099
-gpbeam = 6.418
+gpbeam = 6.430
 
 1316-1324
 gtargmass_amu=1.00794
 htheta_lab = -24.995
 hpcentral = 1.4
 hpartmass = 0.00051099
-gpbeam = 6.418
+gpbeam = 6.430
 
 1325
 gtargmass_amu=2.014101
 htheta_lab = -24.995
 hpcentral = 1.4
 hpartmass = 0.00051099
-gpbeam = 6.418
+gpbeam = 6.43
 
 # Q2 defocussed tune
 1327
-gpbeam = 6.418
+gpbeam = 6.430
 gtargmass_amu=1.00794
 hpartmass = 0.00051099
 htheta_lab = -24.995
@@ -319,14 +319,14 @@ hpcentral = 3.0
 # ep elastics 
 
 1329
-gpbeam = 6.418
+gpbeam = 6.430
 gtargmass_amu=1.00794
 hpartmass = 0.00051099
 htheta_lab = -15.0
 hpcentral = 5.205
 
 1330-1334
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 hpartmass = 0.00051099
 htheta_lab = -15.0
@@ -334,28 +334,28 @@ hpcentral = 3.5
 
 #HMS/SHMS Angle and Position Matrix Optimization 
 1335
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 hpartmass = 0.00051099
 htheta_lab = -15.0
 hpcentral = 3.5
 
 1336
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 hpartmass = 0.00051099
 htheta_lab = -23.0
 hpcentral = 3.5
 
 1337-1341
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 hpartmass = 0.00051099
 htheta_lab = -15.0
 hpcentral = 4.0
 
 1342-1343
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 hpartmass = 0.00051099
 htheta_lab = -22.005
@@ -364,21 +364,21 @@ hpcentral = 3.2
 #Run Plan: Large Ytar: HMS/SHMS Angel and position Matrix Optimaization (01/15/18)
 
 1342-1352
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 12.0107
 hpartmass = 0.00051099
 htheta_lab = -30.01
 hpcentral = 2.0
 
 1353-1358
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 1.00794
 hpartmass = 0.00051099
 htheta_lab = -25.01
 hpcentral = 3.0
 
 1359-1377
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 1.00794
 hpartmass = 0.00051099
 htheta_lab = -25.01
@@ -386,64 +386,127 @@ hpcentral = 1.4
 
 
 1378-1381
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 1.00794
 hpartmass = 0.00051099
 htheta_lab = -25.01
 hpcentral = 3.
 
 1394-1402
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 1.00794
 hpartmass = 0.00051099
 htheta_lab = -15.0
 hpcentral = 3.
 
 1403-1414
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 2.014101
 hpartmass = 0.00051099
 htheta_lab = -15.0
 hpcentral = 3.
 
 1415-1423
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 12.0107
 hpartmass = 0.00051099
 htheta_lab = -15.0
 hpcentral = 3.5
 
 1424-1436
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu=26.98
 hpartmass = 0.00051099
 htheta_lab = -15.0
 hpcentral = 3.0
 
 1437-1446
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 26.98
 hpartmass = 0.00051099
 htheta_lab = -22.0
 hpcentral = 2.131
 
 1448-1455
-gpbeam = 6.404 
+gpbeam = 6.430 
 gtargmass_amu= 1.00794
 hpartmass = 0.00051099
 htheta_lab = -65.0
 hpcentral = 1.0
 
 1481-1492
-gpbeam = 6.404 
-gtargmass_amu= 26.98
+gpbeam = 6.430 
+gtargmass_amu=26.98
 hpartmass = 0.00051099
 htheta_lab = -64.99
 hpcentral = 1.0
 
-1493-1495
-gpbeam = 6.404 
+1493-1504
+gpbeam = 6.430 
 gtargmass_amu= 1.00794
 hpartmass = 0.00051099
 htheta_lab = -65.0
-hpcentral = 1.0
\ No newline at end of file
+hpcentral = 1.0	
+
+1505-1505
+gpbeam = 6.430 
+gtargmass_amu= 26.98
+hpartmass = 0.00051099
+htheta_lab = -65.0
+hpcentral = 1.0	
+
+1506-1508
+gpbeam = 6.430 
+gtargmass_amu= 1.00794
+hpartmass = 0.00051099
+htheta_lab = -65.0
+hpcentral = 1.0	
+
+1509-9999
+gpbeam = 6.430 
+gtargmass_amu=26.98 
+hpartmass = 0.00051099
+htheta_lab = -65.0
+hpcentral = 1.0	
+
+1510-1510
+gpbeam = 6.430 
+gtargmass_amu=12.0107 
+hpartmass = 0.00051099
+htheta_lab = -65.0
+hpcentral = 2.0	
+
+1511-1513
+gpbeam = 6.430 
+gtargmass_amu=12.0107 
+hpartmass = 0.00051099
+htheta_lab = 30.01
+hpcentral = 2.0	
+
+1519-1526
+gpbeam = 10.59 
+gtargmass_amu=1.00794 
+hpartmass = 0.00051099
+htheta_lab = 18.50
+hpcentral = 5.816
+
+1527-1528
+gpbeam = 10.59 
+gtargmass_amu=12.0107 
+hpartmass = 0.00051099
+htheta_lab = 18.50
+hpcentral = 5.816
+
+1529-1530
+gpbeam = 10.59 
+gtargmass_amu=1.00794 
+hpartmass = 0.00051099
+htheta_lab = 18.50
+hpcentral = 5.816
+
+1531-1532
+gpbeam = 10.59 
+gtargmass_amu=12.0107
+hpartmass = 0.00051099
+htheta_lab = 18.50
+hpcentral = 5.816
diff --git a/DBASE/SHMS/STD/standard.kinematics b/DBASE/SHMS/STD/standard.kinematics
index cc5071ff3041997678191bc28abc920b93de318c..881eae3ec691baf6958b9aefdfa6c0a861ed8792 100644
--- a/DBASE/SHMS/STD/standard.kinematics
+++ b/DBASE/SHMS/STD/standard.kinematics
@@ -8,7 +8,7 @@
 # 1722 is last December commissioning run
 
 0-1722
-gpbeam = 2.218
+gpbeam = 2.221
 gtargmass_amu=12.0107
 ppartmass = 0.00051099
 ptheta_lab = 25.02
@@ -107,53 +107,58 @@ ppcentral = 2.50971
 
 
 # start the Jan 12 commissioning
-
+1751
+gpbeam = 6.43
+gtargmass_amu=1.00794
+ppartmass = 0.00051099
+ptheta_lab = 8.0
+ppcentral = 3.0
 
 1754-1778
-gpbeam = 6.418
+gpbeam = 6.430
 gtargmass_amu=1.00794
 ppartmass = 0.00051099
 ptheta_lab = 15.0
 ppcentral = 3.0
 
 1781-1783
-gpbeam = 6.418
+gpbeam = 6.430
 gtargmass_amu=1.00794
 ppartmass = 0.00051099
 ptheta_lab = 25.015
 ppcentral = 3.0
 
 1784-1788
-gpbeam = 6.418
+gpbeam = 6.430
 gtargmass_amu=1.00794
 ppartmass = 0.00051099
 ptheta_lab = 25.015
 ppcentral = 1.4
 
 1789
-gpbeam = 6.418
+gpbeam = 6.430
 gtargmass_amu=2.014101
 ppartmass = 0.00051099
 ptheta_lab = 25.015
-ppcentral = 1.4cd ..
+ppcentral = 1.4
 
 # Q2 defocussed tune
 1791
-gpbeam = 6.418
+gpbeam = 6.430
 gtargmass_amu=1.00794
 ppartmass = 0.00051099
 ptheta_lab = 25.015
 ppcentral = 3.0
 
 1793
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=1.00794
 ppartmass = 0.00051099
 ptheta_lab = 8.015
 ppcentral = 6.017
 
 1795
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 ppartmass = 0.00051099
 ptheta_lab = 8.015
@@ -162,7 +167,7 @@ ppcentral = 6.017
 #SIEVE Slit
 
 1796-1804
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 ppartmass = 0.00051099
 ptheta_lab = 8.01
@@ -171,21 +176,21 @@ ppcentral = 5.0
 #HMS/SHMS Angle and Position Matrix Optimization 
 
 1805-1806
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 ppartmass = 0.00051099
 ptheta_lab = 15.0
 ppcentral = 3.5
 
 1807
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 ppartmass = 0.00051099
 ptheta_lab = 15
 ppcentral = 3.5
 
 1808-1812
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 ppartmass = 0.00051099
 ptheta_lab = 15.0
@@ -194,7 +199,7 @@ ppcentral = 4.0
 
 
 1813-1814 
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu=12.0107
 ppartmass = 0.00051099
 ptheta_lab = 22.045
@@ -203,21 +208,21 @@ ppcentral = 3.2
 #Run Plan: Large Ytar: HMS/SHMS Angel and position Matrix Optimization (01/15/18)
 
 1815-1823
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 12.0107
 ppartmass =  0.00051099
 ptheta_lab =30.065
 ppcentral = 2.0
 
 1824-1828
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =25.035
 ppcentral = 3.0
 
 1829-1842
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =25.035
@@ -225,42 +230,42 @@ ppcentral = 1.4
 
 
 1843-1849
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =25.035
 ppcentral = 3.0
 
 1966-1969
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =15.0
 ppcentral = 3.0
 
 1970-1979
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 2.014101
 ppartmass =  0.00051099
 ptheta_lab =15.0
 ppcentral = 3.0
 
 1980-1991
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 2.014101
 ppartmass =  0.00051099
 ptheta_lab =15.0
 ppcentral = 3.0
 
 1992-2000
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 12.0107
 ppartmass =  0.00051099
 ptheta_lab =15.0
 ppcentral = 3.0
 
 2001-2013
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 26.98
 ppartmass =  0.00051099
 ptheta_lab =15.0
@@ -268,71 +273,178 @@ ppcentral = 3.0
 
 
 2014-2020
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 26.98
 ppartmass =  0.00051099
 ptheta_lab =17.0
 ppcentral = 5.112
 
 2071-2072
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =16.02
 ppcentral = 5.074
 
 2074
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =20.03
 ppcentral = 4.522
 
 2075-2077
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =25.02
 ppcentral = 3.0
 
 2078-2081
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =25.02
 ppcentral = 1.4
 
 2082-2084
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 12.0107
 ppartmass =  0.00051099
 ptheta_lab =25.02
 ppcentral = 1.4
 
 2085-2086
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =30.06
 ppcentral = 3.349
 
 2087-2088
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =35.06
 ppcentral = 2.869
 
 2214-2220
-gpbeam = 6.404
+gpbeam = 6.430
 gtargmass_amu= 26.98
 ppartmass =  0.00051099
 ptheta_lab =25.0
 ppcentral = 3.911
 
-2221-2223
-gpbeam = 6.404
+2221-2229
+gpbeam = 6.430
+gtargmass_amu= 1.00794
+ppartmass =  0.00051099
+ptheta_lab =25.0
+ppcentral = 3.911
+
+2230-2231
+gpbeam = 6.430
+gtargmass_amu= 1.00794
+ppartmass =  0.00051099
+ptheta_lab =25.0
+ppcentral = 3.6
+
+2231-2231
+gpbeam = 6.430
 gtargmass_amu= 1.00794
 ppartmass =  0.00051099
 ptheta_lab =25.0
-ppcentral = 3.911
\ No newline at end of file
+ppcentral = 3.349
+
+2232-2232
+gpbeam = 6.430
+gtargmass_amu= 1.00794
+ppartmass =  0.00051099
+ptheta_lab =30.005
+ppcentral = 3.349
+
+2233-2234
+gpbeam = 6.430
+gtargmass_amu= 12.0107
+ppartmass =  0.00051099
+ptheta_lab =22.0
+ppcentral = 3.2
+
+2235-2239
+gpbeam = 6.430
+gtargmass_amu= 12.0107
+ppartmass =  0.00051099
+ptheta_lab =30.0
+ppcentral = 2
+
+#2241 -2247 are junk runs on LH2
+2241-2247
+gpbeam = 10.59
+gtargmass_amu= 1.00794
+ppartmass =  0.00051099
+ptheta_lab =7.50
+ppcentral = 2
+
+#2248 is junk a run on CA-6%
+2248
+gpbeam = 10.59
+gtargmass_amu= 12.0107
+ppartmass =  0.00051099
+ptheta_lab =7.50
+ppcentral = 9.8
+
+2249-2253
+gpbeam = 10.59
+gtargmass_amu= 12.0107
+ppartmass =  0.00051099
+ptheta_lab =8.50
+ppcentral = 9.43
+
+2255-2255
+gpbeam = 10.59
+gtargmass_amu= 1.00794
+ppartmass =  0.00051099
+ptheta_lab =8.49
+ppcentral = 9.43
+
+2256-2256
+gpbeam = 10.59
+gtargmass_amu= 1.00794
+ppartmass =  0.00051099
+ptheta_lab =8.49
+ppcentral = 7.3
+
+2257-2258
+gpbeam = 10.59
+gtargmass_amu= 12.0107
+ppartmass =  0.00051099
+ptheta_lab =8.49
+ppcentral = 7.3
+
+2259-2259
+gpbeam = 10.59
+gtargmass_amu= 1.00794
+ppartmass =  0.00051099
+ptheta_lab =16.49
+ppcentral = 7.234
+
+2260-2262
+gpbeam = 10.59
+gtargmass_amu= 1.00794
+ppartmass =  0.00051099
+ptheta_lab =16.49
+ppcentral = 5.5
+
+2263-2264
+gpbeam = 10.59
+gtargmass_amu= 12.0107
+ppartmass =  0.00051099
+ptheta_lab =16.49
+ppcentral = 5.5
+
+2265-2265
+gpbeam = 10.59
+gtargmass_amu= 12.0107
+ppartmass =  0.00051099
+ptheta_lab =25.00
+ppcentral = 5.5
diff --git a/DEF-files/COIN/PRODUCTION/coin_production_hElec_pProt_cuts.def b/DEF-files/COIN/PRODUCTION/CUTS/coin_decode_cuts.def
similarity index 60%
rename from DEF-files/COIN/PRODUCTION/coin_production_hElec_pProt_cuts.def
rename to DEF-files/COIN/PRODUCTION/CUTS/coin_decode_cuts.def
index 523ba2884c3eb865ba4b4143cbe52ba9de7bdbb1..2498367a03966a8bfe1c72c17a372559e29f6df9 100644
--- a/DEF-files/COIN/PRODUCTION/coin_production_hElec_pProt_cuts.def
+++ b/DEF-files/COIN/PRODUCTION/CUTS/coin_decode_cuts.def
@@ -1,17 +1,3 @@
-Block: RawDecode
-
-Pedestal_event       g.evtyp == 99
-SHMS_event           g.evtyp == 1
-HMS_event            g.evtyp == 2
-BOTH_SINGLES_event   g.evtyp == 3
-COIN_ONLY_event      g.evtyp == 4
-SHMS_COIN_event      g.evtyp == 5
-HMS_COIN_event       g.evtyp == 6 
-COIN_ALL_event       g.evtyp == 7
-ALL_events           SHMS_event || HMS_event || BOTH_SINGLES_event || COIN_ONLY_event || COIN_ALL_event
-
-RawDecode_master  ALL_events
-
 Block: Decode
 
 pTRIG1_ROC2         T.coin.pTRIG1_ROC2_tdcTimeRaw > 0
@@ -57,35 +43,4 @@ pcut_good_S1_time         T.coin.p1T_tdcTime > 241 && T.coin.p1T_tdcTime < 243
 pcut_good_S2X_time        T.coin.p2X_tdcTime > 180 && T.coin.p2X_tdcTime < 220
 pcut_good_S1_S2X_time     pcut_good_S1_time && pcut_good_S2X_time
 
-ALL_COIN_NO_EDTM  T.coin.hEDTM_tdcTime==0.0&&T.coin.pEDTM_tdcTime==0.0&&ALL_events
-
-Decode_master     ALL_COIN_NO_EDTM
-
-Block: CoarseTracking
-CoarseTracking_master ALL_COIN_NO_EDTM
-
-Block: CoarseReconstruct
-CoarseReconstruct_master ALL_COIN_NO_EDTM
-
-Block: Tracking
-Tracking_master  ALL_COIN_NO_EDTM
-
-Block: Reconstruct
-Reconstruct_master ALL_COIN_NO_EDTM
-
-hcleantrack        H.gtr.index > -1
-pcleantrack        P.gtr.index > -1
-ccleantrack        hcleantrack && pcleantrack
-
-coincut            ccleantrack && goodctime
-tight_coin         ccleantrack && tightctime
-ran_coincut        ccleantrack && ranctime
-
-e_cut_cal          H.cal.etottracknorm > 0.6 && H.cal.etottracknorm < 1.6
-e_cut_cer          H.cer.npeSum > 0.5
-select_e_cut       e_cut_cal && e_cut_cer
-betacut_proton     P.gtr.beta > 0.6 && P.gtr.beta < 0.8
-coincut_ep         ccleantrack && select_e_cut && betacut_proton
-
-#include "DEF-files/HMS/PRODUCTION/hstackana_production_cuts.def"
-#include "DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def"
+ALL_COIN_NO_EDTM  T.coin.hEDTM_tdcTime==0.0&&T.coin.pEDTM_tdcTime==0.0&&ALL_events
\ No newline at end of file
diff --git a/DEF-files/COIN/PRODUCTION/CUTS/coin_production_cuts.def b/DEF-files/COIN/PRODUCTION/CUTS/coin_production_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..76b484510e36c5ac29f87f6dc35a8f309cdaedea
--- /dev/null
+++ b/DEF-files/COIN/PRODUCTION/CUTS/coin_production_cuts.def
@@ -0,0 +1,24 @@
+Block: RawDecode
+#include "DEF-files/COIN/PRODUCTION/CUTS/coin_rawdecode_cuts.def"
+RawDecode_master  ALL_events
+
+Block: Decode
+#include "DEF-files/COIN/PRODUCTION/CUTS/coin_decode_cuts.def"
+Decode_master     ALL_COIN_NO_EDTM
+
+Block: CoarseTracking
+#include "DEF-files/SHMS/PRODUCTION/CUTS/pstackana_coarsetracking_cuts.def"
+#include "DEF-files/HMS/PRODUCTION/CUTS/hstackana_coarsetracking_cuts.def"
+CoarseTracking_master ALL_COIN_NO_EDTM
+
+Block: CoarseReconstruct
+CoarseReconstruct_master ALL_COIN_NO_EDTM
+
+Block: Tracking
+Tracking_master  ALL_COIN_NO_EDTM
+
+Block: Reconstruct
+#include "DEF-files/SHMS/PRODUCTION/CUTS/pstackana_reconstruct_cuts.def"
+#include "DEF-files/HMS/PRODUCTION/CUTS/hstackana_reconstruct_cuts.def"
+#include "DEF-files/COIN/PRODUCTION/CUTS/coin_reconstruct_cuts.def"
+Reconstruct_master ALL_COIN_NO_EDTM
\ No newline at end of file
diff --git a/DEF-files/COIN/PRODUCTION/coin_production_ep_cuts.def b/DEF-files/COIN/PRODUCTION/CUTS/coin_production_ep_cuts.def
similarity index 100%
rename from DEF-files/COIN/PRODUCTION/coin_production_ep_cuts.def
rename to DEF-files/COIN/PRODUCTION/CUTS/coin_production_ep_cuts.def
diff --git a/DEF-files/COIN/PRODUCTION/CUTS/coin_rawdecode_cuts.def b/DEF-files/COIN/PRODUCTION/CUTS/coin_rawdecode_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..331db0e6889b7bd44dff6b92fffe3026126cea76
--- /dev/null
+++ b/DEF-files/COIN/PRODUCTION/CUTS/coin_rawdecode_cuts.def
@@ -0,0 +1,14 @@
+Block: RawDecode
+
+Pedestal_event       g.evtyp == 99
+SHMS_event           g.evtyp == 1
+HMS_event            g.evtyp == 2
+BOTH_SINGLES_event   g.evtyp == 3
+COIN_ONLY_event      g.evtyp == 4
+SHMS_COIN_event      g.evtyp == 5
+HMS_COIN_event       g.evtyp == 6 
+COIN_ALL_event       g.evtyp == 7
+
+ALL_HMS_events       HMS_event || COIN_ONLY_event || HMS_COIN_event || COIN_ALL_event
+ALL_SHMS_events      SHMS_event || COIN_ONLY_event || SHMS_COIN_event || COIN_ALL_event
+ALL_events           SHMS_event || HMS_event || BOTH_SINGLES_event || COIN_ONLY_event || COIN_ALL_event
\ No newline at end of file
diff --git a/DEF-files/COIN/PRODUCTION/CUTS/coin_reconstruct_cuts.def b/DEF-files/COIN/PRODUCTION/CUTS/coin_reconstruct_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..fea06f99d3cb02dde39e5d55878fd53d85b4aecf
--- /dev/null
+++ b/DEF-files/COIN/PRODUCTION/CUTS/coin_reconstruct_cuts.def
@@ -0,0 +1,21 @@
+Block: Reconstruct
+
+hcleantrack        H.gtr.index > -1
+pcleantrack        P.gtr.index > -1
+ccleantrack        hcleantrack && pcleantrack
+
+coincut            ccleantrack && goodctime
+tight_coin         ccleantrack && tightctime
+ran_coincut        ccleantrack && ranctime
+
+he_cut_cal          H.cal.etottracknorm > 0.6 && H.cal.etottracknorm < 1.6
+he_cut_cer          H.cer.npeSum > 0.5
+hselect_e_cut       he_cut_cal && he_cut_cer
+hbetacut_proton     P.gtr.beta > 0.6 && P.gtr.beta < 0.8
+hcoincut_ep         ccleantrack && hselect_e_cut && hbetacut_proton
+
+pe_cut_cal          P.cal.etottracknorm > 0.6 && P.cal.etottracknorm < 1.6
+pe_cut_cer          P.hgcer.npeSum > 0.5
+pselect_e_cut       pe_cut_cal && pe_cut_cer
+pbetacut_proton     H.gtr.beta > 0.6 && H.gtr.beta < 0.8
+pcoincut_ep         ccleantrack && pselect_e_cut && pbetacut_proton
\ No newline at end of file
diff --git a/DEF-files/COIN/PRODUCTION/KIN/coin_hElec_pProt_kin_histos.def b/DEF-files/COIN/PRODUCTION/KIN/coin_hElec_pProt_kin_histos.def
index 402fd86880271ac47575002015949cd639e1b1e2..544d3619d12e5448e3c037db654412a815f99702 100644
--- a/DEF-files/COIN/PRODUCTION/KIN/coin_hElec_pProt_kin_histos.def
+++ b/DEF-files/COIN/PRODUCTION/KIN/coin_hElec_pProt_kin_histos.def
@@ -6,9 +6,9 @@
 formula mmiss P.kin.secondary.emiss_nuc*P.kin.secondary.emiss_nuc-P.kin.secondary.pmiss*P.kin.secondary.pmiss
 TH1F pkin_mmiss              'SHMS M^{2}_{miss} (ccleantrack); M^{2}_{miss} (GeV); Count / 0.01 GeV'  mmiss 400 -2 2 ccleantrack 
 TH1F pkin_mmiss_coincut      'SHMS M^{2}_{miss} (coincut); M^{2}_{miss} (GeV); Count / 0.01 GeV'      mmiss 400 -2 2 coincut
-TH1F pkin_mmiss_coincut_ep   'SHMS M^{2}_{miss} (coincut_ep); M^{2}_{miss} (GeV); Count / 0.01 GeV'   mmiss 400 -2 2 coincut_ep
-TH1F pkin_mmiss_tightcut     'SHMS M^{2}_{miss} (tight_coin); M^{2}_{miss} (GeV); Count / 0.01 GeV'   mmiss 400 -2 2 tight_coin&&select_e_cut&&betacut_proton
-TH1F pkin_mmiss_ran_coincut  'SHMS M^{2}_{miss} (ran_coincut); M^{2}_{miss} (GeV); Count / 0.01 GeV'  mmiss 400 -2 2 ran_coincut&&select_e_cut&&betacut_proton
+TH1F pkin_mmiss_coincut_ep   'SHMS M^{2}_{miss} (coincut_ep); M^{2}_{miss} (GeV); Count / 0.01 GeV'   mmiss 400 -2 2 hcoincut_ep
+TH1F pkin_mmiss_tightcut     'SHMS M^{2}_{miss} (tight_coin); M^{2}_{miss} (GeV); Count / 0.01 GeV'   mmiss 400 -2 2 tight_coin&&hselect_e_cut&&hbetacut_proton
+TH1F pkin_mmiss_ran_coincut  'SHMS M^{2}_{miss} (ran_coincut); M^{2}_{miss} (GeV); Count / 0.01 GeV'  mmiss 400 -2 2 ran_coincut&&hselect_e_cut&&hbetacut_proton
 
 
 ############################
@@ -16,17 +16,17 @@ TH1F pkin_mmiss_ran_coincut  'SHMS M^{2}_{miss} (ran_coincut); M^{2}_{miss} (GeV
 ############################
 TH1F pkin_pmiss              'SHMS p_{miss} Magnitude (ccleantrack); p_{miss} (GeV); Count / 0.02 GeV;'  P.kin.secondary.pmiss          200 -2 2 ccleantrack
 TH1F pkin_pmiss_coincut      'SHMS p_{miss} Magnitude (coincut); p_{miss} (GeV); Count / 0.02 GeV;'      P.kin.secondary.pmiss          200 -2 2 coincut
-TH1F pkin_pmiss_pid          'SHMS p_{miss} Magnitude (coincut_ep); p_{miss} (GeV); Count / 0.02 GeV;'   P.kin.secondary.pmiss          200 -2 2 coincut_ep
-TH1F pkin_pmiss_x            'SHMS p_{miss,x} (coincut_ep); p_{miss,x} (GeV); Count / 0.02 GeV;'         P.kin.secondary.pmiss_x        200 -2 2 coincut_ep
-TH1F pkin_pmiss_y            'SHMS p_{miss,y} (coincut_ep); p_{miss,y} (GeV); Count / 0.02 GeV;'         P.kin.secondary.pmiss_y        200 -2 2 coincut_ep
-TH1F pkin_pmiss_z            'SHMS p_{miss,z} (coincut_ep); p_{miss,z} (GeV); Count / 0.02 GeV;'         P.kin.secondary.pmiss_z        200 -2 2 coincut_ep
+TH1F pkin_pmiss_pid          'SHMS p_{miss} Magnitude (coincut_ep); p_{miss} (GeV); Count / 0.02 GeV;'   P.kin.secondary.pmiss          200 -2 2 hcoincut_ep
+TH1F pkin_pmiss_x            'SHMS p_{miss,x} (coincut_ep); p_{miss,x} (GeV); Count / 0.02 GeV;'         P.kin.secondary.pmiss_x        200 -2 2 hcoincut_ep
+TH1F pkin_pmiss_y            'SHMS p_{miss,y} (coincut_ep); p_{miss,y} (GeV); Count / 0.02 GeV;'         P.kin.secondary.pmiss_y        200 -2 2 hcoincut_ep
+TH1F pkin_pmiss_z            'SHMS p_{miss,z} (coincut_ep); p_{miss,z} (GeV); Count / 0.02 GeV;'         P.kin.secondary.pmiss_z        200 -2 2 hcoincut_ep
 
 ############################
 #   MISSING ENERGY
 ############################
 TH1F pkin_Emiss              'SHMS E_{miss} (ccleantrack); E_{miss} (GeV); Count / 0.01 GeV;' P.kin.secondary.emiss_nuc 400 -1 3 ccleantrack
 TH1F pkin_Emiss_coincut      'SHMS E_{miss} (coincut); E_{miss} (GeV); Count / 0.01 GeV;'     P.kin.secondary.emiss_nuc 400 -1 3 coincut
-TH1F pkin_Emiss_pid          'SHMS E_{miss} (coincut_ep); E_{miss} (GeV); Count / 0.01 GeV;'  P.kin.secondary.emiss_nuc 400 -1 3 coincut_ep
+TH1F pkin_Emiss_pid          'SHMS E_{miss} (coincut_ep); E_{miss} (GeV); Count / 0.01 GeV;'  P.kin.secondary.emiss_nuc 400 -1 3 hcoincut_ep
 
 
 ############################
diff --git a/DEF-files/COIN/PRODUCTION/KIN/coin_pElec_hProt_kin_histos.def b/DEF-files/COIN/PRODUCTION/KIN/coin_pElec_hProt_kin_histos.def
index e48e0b57c26c13c76bd7069eb3480b0a01cea272..5d2538021285cfe8a6d0daf2d4417bb526a32724 100644
--- a/DEF-files/COIN/PRODUCTION/KIN/coin_pElec_hProt_kin_histos.def
+++ b/DEF-files/COIN/PRODUCTION/KIN/coin_pElec_hProt_kin_histos.def
@@ -6,9 +6,9 @@
 formula mmiss H.kin.secondary.emiss_nuc*H.kin.secondary.emiss_nuc-H.kin.secondary.pmiss*H.kin.secondary.pmiss
 TH1F hkin_mmiss              'HMS M^{2}_{miss} (ccleantrack); M^{2}_{miss} (GeV); Count / 0.01 GeV'  mmiss 400 -2 2 ccleantrack 
 TH1F hkin_mmiss_coincut      'HMS M^{2}_{miss} (coincut); M^{2}_{miss} (GeV); Count / 0.01 GeV'      mmiss 400 -2 2 coincut
-TH1F hkin_mmiss_coincut_ep   'HMS M^{2}_{miss} (coincut_ep); M^{2}_{miss} (GeV); Count / 0.01 GeV'   mmiss 400 -2 2 coincut_ep
-TH1F hkin_mmiss_tightcut     'HMS M^{2}_{miss} (tight_coin); M^{2}_{miss} (GeV); Count / 0.01 GeV'   mmiss 400 -2 2 tight_coin&&select_e_cut&&betacut_proton
-TH1F hkin_mmiss_ran_coincut  'HMS M^{2}_{miss} (ran_coincut); M^{2}_{miss} (GeV); Count / 0.01 GeV'  mmiss 400 -2 2 ran_coincut&&select_e_cut&&betacut_proton
+TH1F hkin_mmiss_coincut_ep   'HMS M^{2}_{miss} (coincut_ep); M^{2}_{miss} (GeV); Count / 0.01 GeV'   mmiss 400 -2 2 pcoincut_ep
+TH1F hkin_mmiss_tightcut     'HMS M^{2}_{miss} (tight_coin); M^{2}_{miss} (GeV); Count / 0.01 GeV'   mmiss 400 -2 2 tight_coin&&pselect_e_cut&&pbetacut_proton
+TH1F hkin_mmiss_ran_coincut  'HMS M^{2}_{miss} (ran_coincut); M^{2}_{miss} (GeV); Count / 0.01 GeV'  mmiss 400 -2 2 ran_coincut&&pselect_e_cut&&pbetacut_proton
 
 
 ############################
@@ -16,17 +16,17 @@ TH1F hkin_mmiss_ran_coincut  'HMS M^{2}_{miss} (ran_coincut); M^{2}_{miss} (GeV)
 ############################
 TH1F hkin_pmiss              'HMS p_{miss} Magnitude (ccleantrack); p_{miss} (GeV); Count / 0.02 GeV;'  H.kin.secondary.pmiss          200 -2 2 ccleantrack
 TH1F hkin_pmiss_coincut      'HMS p_{miss} Magnitude (coincut); p_{miss} (GeV); Count / 0.02 GeV;'      H.kin.secondary.pmiss          200 -2 2 coincut
-TH1F hkin_pmiss_pid          'HMS p_{miss} Magnitude (coincut_ep); p_{miss} (GeV); Count / 0.02 GeV;'   H.kin.secondary.pmiss          200 -2 2 coincut_ep
-TH1F hkin_pmiss_x            'HMS p_{miss,x} (coincut_ep); p_{miss,x} (GeV); Count / 0.02 GeV;'         H.kin.secondary.pmiss_x        200 -2 2 coincut_ep
-TH1F hkin_pmiss_y            'HMS p_{miss,y} (coincut_ep); p_{miss,y} (GeV); Count / 0.02 GeV;'         H.kin.secondary.pmiss_y        200 -2 2 coincut_ep
-TH1F hkin_pmiss_z            'HMS p_{miss,z} (coincut_ep); p_{miss,z} (GeV); Count / 0.02 GeV;'         H.kin.secondary.pmiss_z        200 -2 2 coincut_ep
+TH1F hkin_pmiss_pid          'HMS p_{miss} Magnitude (coincut_ep); p_{miss} (GeV); Count / 0.02 GeV;'   H.kin.secondary.pmiss          200 -2 2 pcoincut_ep
+TH1F hkin_pmiss_x            'HMS p_{miss,x} (coincut_ep); p_{miss,x} (GeV); Count / 0.02 GeV;'         H.kin.secondary.pmiss_x        200 -2 2 pcoincut_ep
+TH1F hkin_pmiss_y            'HMS p_{miss,y} (coincut_ep); p_{miss,y} (GeV); Count / 0.02 GeV;'         H.kin.secondary.pmiss_y        200 -2 2 pcoincut_ep
+TH1F hkin_pmiss_z            'HMS p_{miss,z} (coincut_ep); p_{miss,z} (GeV); Count / 0.02 GeV;'         H.kin.secondary.pmiss_z        200 -2 2 pcoincut_ep
 
 ############################
 #   MISSING ENERGY
 ############################
 TH1F hkin_Emiss              'HMS E_{miss} (ccleantrack); E_{miss} (GeV); Count / 0.01 GeV;' H.kin.secondary.emiss_nuc 400 -1 3 ccleantrack
 TH1F hkin_Emiss_coincut      'HMS E_{miss} (coincut); E_{miss} (GeV); Count / 0.01 GeV;'     H.kin.secondary.emiss_nuc 400 -1 3 coincut
-TH1F hkin_Emiss_pid          'HMS E_{miss} (coincut_ep); E_{miss} (GeV); Count / 0.01 GeV;'  H.kin.secondary.emiss_nuc 400 -1 3 coincut_ep
+TH1F hkin_Emiss_pid          'HMS E_{miss} (coincut_ep); E_{miss} (GeV); Count / 0.01 GeV;'  H.kin.secondary.emiss_nuc 400 -1 3 pcoincut_ep
 
 
 ############################
diff --git a/DEF-files/COIN/PRODUCTION/TRIG/coin_trig_histos.def b/DEF-files/COIN/PRODUCTION/TRIG/coin_trig_histos.def
index aa2ad4e93e0f27730220dfffb1201a2064df9885..ab9330b304be57317fd14a3c9d327a6553b32152 100644
--- a/DEF-files/COIN/PRODUCTION/TRIG/coin_trig_histos.def
+++ b/DEF-files/COIN/PRODUCTION/TRIG/coin_trig_histos.def
@@ -12,10 +12,10 @@ TH2F pgtr_beta_vs_htrig_cointime 'SHMS Beta vs pTRIG1_ROC1-pTRIG4_ROC1; cointime
 ############################
 TH1F ptrig_cointime_ccleantrack 'SHMS cointime (ccleantrack); SHMS cointime (ns); Count / 1 ns;'  T.coin.pTRIG1_ROC2_tdcTimeRaw*0.1-T.coin.pTRIG4_ROC2_tdcTimeRaw*0.1 1600 -800 800 ccleantrack
 TH1F ptrig_cointime_coincut     'SHMS cointime (coincut); SHMS cointime (ns); Count / 1 ns;'      T.coin.pTRIG1_ROC2_tdcTimeRaw*0.1-T.coin.pTRIG4_ROC2_tdcTimeRaw*0.1 1600 -800 800 coincut
-TH1F ptrig_cointime_coincut_ep  'SHMS cointime (coincut_ep); SHMS cointime (ns); Count / 1 ns;'   T.coin.pTRIG1_ROC2_tdcTimeRaw*0.1-T.coin.pTRIG4_ROC2_tdcTimeRaw*0.1 1600 -800 800 coincut_ep
+TH1F ptrig_cointime_coincut_ep  'SHMS cointime (coincut_ep); SHMS cointime (ns); Count / 1 ns;'   T.coin.pTRIG1_ROC2_tdcTimeRaw*0.1-T.coin.pTRIG4_ROC2_tdcTimeRaw*0.1 1600 -800 800 pcoincut_ep
 TH1F htrig_cointime_ccleantrack 'HMS cointime (ccleantrack); HMS cointime (ns); Count / 1 ns;'    T.coin.pTRIG1_ROC1_tdcTimeRaw*0.1-T.coin.pTRIG4_ROC1_tdcTimeRaw*0.1 1600 -800 800 ccleantrack
 TH1F htrig_cointime_coincut     'HMS cointime (coincut); HMS cointime (ns); Count / 1 ns;'        T.coin.pTRIG1_ROC1_tdcTimeRaw*0.1-T.coin.pTRIG4_ROC1_tdcTimeRaw*0.1 1600 -800 800 coincut
-TH1F htrig_cointime_coincut_ep  'HMS cointime (coincut_ep); HMS cointime (ns); Count / 1 ns;'     T.coin.pTRIG1_ROC1_tdcTimeRaw*0.1-T.coin.pTRIG4_ROC1_tdcTimeRaw*0.1 1600 -800 800 coincut_ep
+TH1F htrig_cointime_coincut_ep  'HMS cointime (coincut_ep); HMS cointime (ns); Count / 1 ns;'     T.coin.pTRIG1_ROC1_tdcTimeRaw*0.1-T.coin.pTRIG4_ROC1_tdcTimeRaw*0.1 1600 -800 800 hcoincut_ep
 
 
 ############################
diff --git a/DEF-files/COIN/PRODUCTION/coin_production_pElec_hProt_cuts.def b/DEF-files/COIN/PRODUCTION/coin_production_pElec_hProt_cuts.def
deleted file mode 100644
index edc4cc3d35e646805a06225fd3d422002ae5d72b..0000000000000000000000000000000000000000
--- a/DEF-files/COIN/PRODUCTION/coin_production_pElec_hProt_cuts.def
+++ /dev/null
@@ -1,92 +0,0 @@
-Block: RawDecode
-
-Pedestal_event       g.evtyp == 99
-SHMS_event           g.evtyp == 1
-HMS_event            g.evtyp == 2
-BOTH_SINGLES_event   g.evtyp == 3
-COIN_ONLY_event      g.evtyp == 4
-SHMS_COIN_event      g.evtyp == 5
-HMS_COIN_event       g.evtyp == 6 
-COIN_ALL_event       g.evtyp == 7
-ALL_events           SHMS_event || HMS_event || BOTH_SINGLES_event || COIN_ONLY_event || COIN_ALL_event
-
-RawDecode_master  ALL_events
-
-Block: Decode
-
-pTRIG1_ROC2         T.coin.pTRIG1_ROC2_tdcTimeRaw > 0
-pTRIG2_ROC2         T.coin.pTRIG2_ROC2_tdcTimeRaw > 0
-pTRIG3_ROC2         T.coin.pTRIG3_ROC2_tdcTimeRaw > 0
-pTRIG4_ROC2         T.coin.pTRIG4_ROC2_tdcTimeRaw > 0
-pTRIG5_ROC2         T.coin.pTRIG5_ROC2_tdcTimeRaw > 0
-pTRIG6_ROC2         T.coin.pTRIG6_ROC2_tdcTimeRaw > 0
-
-pTRIG1_ROC1         T.coin.pTRIG1_ROC1_tdcTimeRaw > 0
-pTRIG2_ROC1         T.coin.pTRIG2_ROC1_tdcTimeRaw > 0
-pTRIG3_ROC1         T.coin.pTRIG3_ROC1_tdcTimeRaw > 0
-pTRIG4_ROC1         T.coin.pTRIG4_ROC1_tdcTimeRaw > 0
-pTRIG5_ROC1         T.coin.pTRIG5_ROC1_tdcTimeRaw > 0
-pTRIG6_ROC1         T.coin.pTRIG6_ROC1_tdcTimeRaw > 0
-
-hTRIG1_ROC2         T.coin.hTRIG1_ROC2_tdcTimeRaw > 0
-hTRIG2_ROC2         T.coin.hTRIG2_ROC2_tdcTimeRaw > 0
-hTRIG3_ROC2         T.coin.hTRIG3_ROC2_tdcTimeRaw > 0
-hTRIG4_ROC2         T.coin.hTRIG4_ROC2_tdcTimeRaw > 0
-hTRIG5_ROC2         T.coin.hTRIG5_ROC2_tdcTimeRaw > 0
-hTRIG6_ROC2         T.coin.hTRIG6_ROC2_tdcTimeRaw > 0
-
-hTRIG1_ROC1         T.coin.hTRIG1_ROC1_tdcTimeRaw > 0
-hTRIG2_ROC1         T.coin.hTRIG2_ROC1_tdcTimeRaw > 0
-hTRIG3_ROC1         T.coin.hTRIG3_ROC1_tdcTimeRaw > 0
-hTRIG4_ROC1         T.coin.hTRIG4_ROC1_tdcTimeRaw > 0
-hTRIG5_ROC1         T.coin.hTRIG5_ROC1_tdcTimeRaw > 0
-hTRIG6_ROC1         T.coin.hTRIG6_ROC1_tdcTimeRaw > 0
-
-shms_trigs             SHMS_event
-hms_trigs              HMS_event
-SHMS_edtm_accepted     T.coin.pEDTM_tdcTime != 0.0
-SHMS_physics_accepted  T.coin.pEDTM_tdcTime == 0.0
-HMS_edtm_accepted      T.coin.hEDTM_tdcTime != 0.0
-HMS_physics_accepted   T.coin.hEDTM_tdcTime == 0.0
-
-goodctime         ALL_events        #LOOSE CUT AROUND COINTIME PEAK (3 beam buckets)
-tightctime        ALL_events        #TIGHT CUT AROUND COINTIME PEAK (1 beam buckets)
-ranctime          ALL_events        #CUT AWAY FROM COINTIME PEAK (4 beam buckets)
-
-pcut_good_S1_time         T.coin.p1T_tdcTime > 241 && T.coin.p1T_tdcTime < 243
-pcut_good_S2X_time        T.coin.p2X_tdcTime > 180 && T.coin.p2X_tdcTime < 220
-pcut_good_S1_S2X_time     pcut_good_S1_time && pcut_good_S2X_time
-
-ALL_COIN_NO_EDTM  T.coin.hEDTM_tdcTime==0.0&&T.coin.pEDTM_tdcTime==0.0&&ALL_events
-
-
-Decode_master     ALL_COIN_NO_EDTM
-
-Block: CoarseTracking
-CoarseTracking_master ALL_COIN_NO_EDTM
-
-Block: CoarseReconstruct
-CoarseReconstruct_master ALL_COIN_NO_EDTM
-
-Block: Tracking
-Tracking_master  ALL_COIN_NO_EDTM
-
-Block: Reconstruct
-Reconstruct_master ALL_COIN_NO_EDTM
-
-hcleantrack        H.gtr.index > -1
-pcleantrack        P.gtr.index > -1
-ccleantrack        hcleantrack && pcleantrack
-
-coincut            ccleantrack && goodctime
-tight_coin         ccleantrack && tightctime
-ran_coincut        ccleantrack && ranctime
-
-e_cut_cal          P.cal.etottracknorm > 0.6 && P.cal.etottracknorm < 1.6
-e_cut_cer          P.hgcer.npeSum > 0.5
-select_e_cut       e_cut_cal && e_cut_cer
-betacut_proton     H.gtr.beta > 0.6 && H.gtr.beta < 0.8
-coincut_ep         ccleantrack && select_e_cut && betacut_proton
-
-#include "DEF-files/HMS/PRODUCTION/hstackana_production_cuts.def"
-#include "DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def"
diff --git a/DEF-files/HMS/PRODUCTION/hstackana_production_cuts.def b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_coarsetracking_cuts.def
similarity index 52%
rename from DEF-files/HMS/PRODUCTION/hstackana_production_cuts.def
rename to DEF-files/HMS/PRODUCTION/CUTS/hstackana_coarsetracking_cuts.def
index 44c9aa05fc2288ceca2200bc50eb30f955b6ebf9..f940d1b2f7ee6ad8e3bc57bb4041ccda65bc77fd 100644
--- a/DEF-files/HMS/PRODUCTION/hstackana_production_cuts.def
+++ b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_coarsetracking_cuts.def
@@ -1,38 +1,6 @@
-# Report file for HMS stack
-
-Block: RawDecode
-
-Pedestal_event       g.evtyp == 99
-SHMS_event           g.evtyp == 1
-HMS_event            g.evtyp == 2
-BOTH_SINGLES_event   g.evtyp == 3
-COIN_ONLY_event      g.evtyp == 4
-SHMS_COIN_event      g.evtyp == 5
-HMS_COIN_event       g.evtyp == 6 
-COIN_ALL_event       g.evtyp == 7
-ALL_events           SHMS_event || HMS_event || BOTH_SINGLES_event || COIN_ONLY_event || COIN_ALL_event
-ALL_HMS_events       HMS_event || COIN_ONLY_event || HMS_COIN_event || COIN_ALL_event
-
-RawDecode_master  1
-
-Block: Decode
-
-hcut_TRIG1        T.hms.hTRIG1_tdcTimeRaw > 0
-hcut_TRIG2        T.hms.hTRIG2_tdcTimeRaw > 0
-hcut_TRIG3        T.hms.hTRIG3_tdcTimeRaw > 0
-HMS_Pretrig       hcut_TRIG1 || hcut_TRIG2 || hcut_TRIG3
-
-hms_trigs              HMS_event
-hcut_edtm_accepted     T.hms.hEDTM_tdcTime != 0.0
-hcut_physics_accepted  T.hms.hEDTM_tdcTime == 0.0
-ALL_HMS_NO_EDTM        ALL_HMS_events && hcut_physics_accepted
-
-Decode_master          ALL_HMS_NO_EDTM
-
 Block: CoarseTracking
-CoarseTracking_master ALL_HMS_events
 
-add cuts to stricter times and apply them to drift distances (HMS 6 GeV Drift Chambers)
+#add cuts to stricter times and apply them to drift distances (HMS 6 GeV Drift Chambers)
 hcut_time_cut1                            H.dc.1x1.time > 0 && H.dc.1x1.time < 250
 hcut_time_cut2                            H.dc.1v2.time > 0 && H.dc.1v2.time < 250
 hcut_time_cut3                            H.dc.1u1.time > 0 && H.dc.1u1.time < 250
@@ -48,6 +16,7 @@ hcut_time_cut12                           H.dc.2x2.time > 0 && H.dc.2x2.time < 2
 
 hmsDC1Planes_large  (H.dc.1x1.nhit+H.dc.1v2.nhit+H.dc.1u1.nhit+H.dc.1v1.nhit+H.dc.1x2.nhit+H.dc.1u2.nhit) >20
 hmsDC2Planes_large  (H.dc.2x1.nhit+H.dc.2v2.nhit+H.dc.2u1.nhit+H.dc.2v1.nhit+H.dc.2x2.nhit+H.dc.2u2.nhit) >20
+hmsDCany_large 	    hmsDC1Planes_large || hmsDC2Planes_large 
 
 hmsDC1_1hit_x1                H.dc.1x1.nhit == 1
 hmsDC1_1hit_v2                H.dc.1v2.nhit == 1
@@ -121,92 +90,3 @@ f2HSpacePoints        hms2HitsLt && hmsDC2PlanesGT && H.dc.Ch2.spacepoints==0 &&
 hTest1                hmsHitsPlanes && (!hSpacePoints)
 hTest2                hSpacePoints && (!hStubLT)
 
-Block: CoarseReconstruct
-CoarseReconstruct_master ALL_HMS_NO_EDTM
-
-Block: Tracking
-Tracking_master  ALL_HMS_NO_EDTM
-
-Block: Reconstruct
-Reconstruct_master ALL_HMS_NO_EDTM
-hcut_cer_pmt1_elec        H.cer.npe[0]>.5
-hcut_cer_pmt2_elec        H.cer.npe[0]>.5
-hcut_cer_elec       	  H.cer.npeSum>.5
-hcut_cer_pi       	  H.cer.npeSum<.5
-
-HMSScinGood           H.hod.goodscinhit == 1
-
-HMSScinShould         HMSScinGood 
-HMSScinShoulde        HMSScinGood && H.cal.etotnorm > 0.6&& H.cal.etotnorm < 2.0&& H.cer.npeSum > 0.5
-HMSScinShouldh        HMSScinGood && H.cal.etotnorm <0.6&& H.cal.etotnorm>0.0&& H.cer.npeSum < 0.5
-
-HMSScinDid            HMSScinShould && H.dc.ntrack > 0
-HMSScinDide           HMSScinShoulde && H.dc.ntrack > 0
-HMSScinDidh           HMSScinShouldh && H.dc.ntrack > 0
-
-hcut_goodHDC1x1            H.dc.1x1.nhit > 0 && H.dc.1x1.nhit < 3
-hcut_goodHDC1v2            H.dc.1v2.nhit > 0 && H.dc.1v2.nhit < 3
-hcut_goodHDC1u1            H.dc.1u1.nhit > 0 && H.dc.1u1.nhit < 3
-hcut_goodHDC1v1            H.dc.1v1.nhit > 0 && H.dc.1v1.nhit < 3
-hcut_goodHDC1u2            H.dc.1u2.nhit > 0 && H.dc.1u2.nhit < 3
-hcut_goodHDC1x2            H.dc.1x2.nhit > 0 && H.dc.1x2.nhit < 3
-
-hcut_goodHDC2x1            H.dc.2x1.nhit > 0 && H.dc.2x1.nhit < 3
-hcut_goodHDC2v2            H.dc.2v2.nhit > 0 && H.dc.2v2.nhit < 3
-hcut_goodHDC2u1            H.dc.2u1.nhit > 0 && H.dc.2u1.nhit < 3
-hcut_goodHDC2v1            H.dc.2v1.nhit > 0 && H.dc.2v1.nhit < 3
-hcut_goodHDC2u2            H.dc.2u2.nhit > 0 && H.dc.2u2.nhit < 3
-hcut_goodHDC2x2            H.dc.2x2.nhit > 0 && H.dc.2x2.nhit < 3
-
-hcut_goodHDC1              hcut_goodHDC1x1  && hcut_goodHDC1v2 && hcut_goodHDC1u1 && hcut_goodHDC1v1 && hcut_goodHDC1u2 && hcut_goodHDC1x2 
-hcut_goodHDC2              hcut_goodHDC2x1  && hcut_goodHDC2v2 && hcut_goodHDC2u1 && hcut_goodHDC2v1 && hcut_goodHDC2u2 && hcut_goodHDC2x2 
-hcut_bothGood              hcut_goodHDC1 && hcut_goodHDC2
-
-hcut_realhdc1x1            hcut_goodHDC1x1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc1v2            hcut_goodHDC1v2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc1u1            hcut_goodHDC1u1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc1v1            hcut_goodHDC1v1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc1u2            hcut_goodHDC1u2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc1x2            hcut_goodHDC1x2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc2x1            hcut_goodHDC2x1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc2v2            hcut_goodHDC2v2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc2u1     	   hcut_goodHDC2u1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc2v1            hcut_goodHDC2v1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc2u2            hcut_goodHDC2u2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-hcut_realhdc2x2            hcut_goodHDC2x2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
-
-hcut_FoundTrack      	   H.dc.ntrack > 0
-hcut_Found1Track           H.dc.ntrack == 1
-hcut_Found2Track           H.dc.ntrack == 2
-hcut_Found3Track           H.dc.ntrack == 3
-hcut_Found4Track           H.dc.ntrack == 4
-
-hcut_CleanTrack            H.gtr.index > -1
-hcut_Clean1Track           H.gtr.index == 0
-hcut_Clean2Track           H.gtr.index == 1
-hcut_Clean3Track           H.gtr.index == 2
-hcut_Clean4Track           H.gtr.index == 3
-
-hcut_anys1x                H.hod.1x.nhits > 0
-hcut_anys1y                H.hod.1y.nhits > 0
-hcut_anys2x                H.hod.2x.nhits > 0
-hcut_anys2y                H.hod.2y.nhits > 0
-
-hcut_goods1x               H.hod.1x.nhits > 0 && H.hod.1x.nhits < 3
-hcut_goods1y               H.hod.1y.nhits > 0 && H.hod.1y.nhits < 3
-hcut_goods1                hcut_goods1x && hcut_goods1y
-hcut_goods2x               H.hod.2x.nhits > 0 && H.hod.2x.nhits < 3
-hcut_goods2y               H.hod.2y.nhits > 0 && H.hod.2y.nhits < 3
-hcut_goods2                hcut_goods2x && hcut_goods2y
-hcut_goods1s2              hcut_goods1 && hcut_goods2
-
-HMS_hcer_track_matched_region_1 H.cer.numTracksMatched[0]>0
-HMS_hcer_track_fired_region_1 H.cer.numTracksFired[0]>0
-HMS_hcer_track_matched_region_2 H.cer.numTracksMatched[1]>0
-HMS_hcer_track_fired_region_2 H.cer.numTracksFired[1]>0
-HMS_hcer_track_matched_tot H.cer.totNumTracksMatched>0
-HMS_hcer_track_fired_tot H.cer.totNumTracksFired>0
-
-
-Block: Physics
-Physics_master ALL_HMS_NO_EDTM
diff --git a/DEF-files/HMS/PRODUCTION/CUTS/hstackana_decode_cuts.def b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_decode_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..2825de54f3990e8a3eb711a38d4d8aea8e978b3f
--- /dev/null
+++ b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_decode_cuts.def
@@ -0,0 +1,11 @@
+Block: Decode
+
+hcut_TRIG1        T.hms.hTRIG1_tdcTimeRaw > 0
+hcut_TRIG2        T.hms.hTRIG2_tdcTimeRaw > 0
+hcut_TRIG3        T.hms.hTRIG3_tdcTimeRaw > 0
+HMS_Pretrig       hcut_TRIG1 || hcut_TRIG2 || hcut_TRIG3
+
+hms_trigs              HMS_event
+hcut_edtm_accepted     T.hms.hEDTM_tdcTime != 0.0
+hcut_physics_accepted  T.hms.hEDTM_tdcTime == 0.0
+ALL_HMS_NO_EDTM        ALL_HMS_events && hcut_physics_accepted
\ No newline at end of file
diff --git a/DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts.def b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..d7177b142a1720c858bb77b20f001479ef5489c8
--- /dev/null
+++ b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts.def
@@ -0,0 +1,26 @@
+# Report file for HMS stack
+
+Block: RawDecode
+#include "DEF-files/HMS/PRODUCTION/CUTS/hstackana_rawdecode_cuts.def"
+RawDecode_master  1
+
+Block: Decode
+#include "DEF-files/HMS/PRODUCTION/CUTS/hstackana_decode_cuts.def"
+Decode_master          ALL_HMS_NO_EDTM
+
+Block: CoarseTracking
+#include "DEF-files/HMS/PRODUCTION/CUTS/hstackana_coarsetracking_cuts.def"
+CoarseTracking_master ALL_HMS_events
+
+Block: CoarseReconstruct
+CoarseReconstruct_master ALL_HMS_NO_EDTM
+
+Block: Tracking
+Tracking_master  ALL_HMS_NO_EDTM
+
+Block: Reconstruct
+#include "DEF-files/HMS/PRODUCTION/CUTS/hstackana_reconstruct_cuts.def"
+Reconstruct_master ALL_HMS_NO_EDTM
+
+Block: Physics
+Physics_master ALL_HMS_NO_EDTM
diff --git a/DEF-files/HMS/PRODUCTION/hstackana_production_cuts_kpp.def b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts_kpp.def
similarity index 100%
rename from DEF-files/HMS/PRODUCTION/hstackana_production_cuts_kpp.def
rename to DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts_kpp.def
diff --git a/DEF-files/HMS/PRODUCTION/CUTS/hstackana_rawdecode_cuts.def b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_rawdecode_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..3f273b89c8de97ebee250ba94c4f283d88105d76
--- /dev/null
+++ b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_rawdecode_cuts.def
@@ -0,0 +1,12 @@
+Block: RawDecode
+
+Pedestal_event       g.evtyp == 99
+SHMS_event           g.evtyp == 1
+HMS_event            g.evtyp == 2
+BOTH_SINGLES_event   g.evtyp == 3
+COIN_ONLY_event      g.evtyp == 4
+SHMS_COIN_event      g.evtyp == 5
+HMS_COIN_event       g.evtyp == 6 
+COIN_ALL_event       g.evtyp == 7
+ALL_events           SHMS_event || HMS_event || BOTH_SINGLES_event || COIN_ONLY_event || COIN_ALL_event
+ALL_HMS_events       HMS_event || COIN_ONLY_event || HMS_COIN_event || COIN_ALL_event
\ No newline at end of file
diff --git a/DEF-files/HMS/PRODUCTION/CUTS/hstackana_reconstruct_cuts.def b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_reconstruct_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..60acc685a433c44993a960e6a1efef10bb42c490
--- /dev/null
+++ b/DEF-files/HMS/PRODUCTION/CUTS/hstackana_reconstruct_cuts.def
@@ -0,0 +1,81 @@
+Block: Reconstruct
+
+hcut_cer_pmt1_elec        H.cer.npe[0]>.5
+hcut_cer_pmt2_elec        H.cer.npe[0]>.5
+hcut_cer_elec       	  H.cer.npeSum>.5
+hcut_cer_pi       	  H.cer.npeSum<.5
+
+HMSScinGood           H.hod.goodscinhit == 1
+HMSGoodBetanotrk      H.hod.betanotrack > 0.8 && H.hod.betanotrack < 1.3
+
+
+HMSScinShould         HMSScinGood && HMSGoodBetanotrk && !hmsDCany_large
+HMSScinShoulde        HMSScinShould && H.cal.etotnorm > 0.6&& H.cal.etotnorm < 2.0&& H.cer.npeSum > 0.5
+HMSScinShouldh        HMSScinGood && H.cal.etotnorm <0.6&& H.cal.etotnorm>0.0&& H.cer.npeSum < 0.5
+
+HMSScinDid            HMSScinShould && H.dc.ntrack > 0
+HMSScinDide           HMSScinShoulde && H.dc.ntrack > 0
+HMSScinDidh           HMSScinShouldh && H.dc.ntrack > 0
+
+hcut_goodHDC1x1            H.dc.1x1.nhit > 0 && H.dc.1x1.nhit < 3
+hcut_goodHDC1v2            H.dc.1v2.nhit > 0 && H.dc.1v2.nhit < 3
+hcut_goodHDC1u1            H.dc.1u1.nhit > 0 && H.dc.1u1.nhit < 3
+hcut_goodHDC1v1            H.dc.1v1.nhit > 0 && H.dc.1v1.nhit < 3
+hcut_goodHDC1u2            H.dc.1u2.nhit > 0 && H.dc.1u2.nhit < 3
+hcut_goodHDC1x2            H.dc.1x2.nhit > 0 && H.dc.1x2.nhit < 3
+
+hcut_goodHDC2x1            H.dc.2x1.nhit > 0 && H.dc.2x1.nhit < 3
+hcut_goodHDC2v2            H.dc.2v2.nhit > 0 && H.dc.2v2.nhit < 3
+hcut_goodHDC2u1            H.dc.2u1.nhit > 0 && H.dc.2u1.nhit < 3
+hcut_goodHDC2v1            H.dc.2v1.nhit > 0 && H.dc.2v1.nhit < 3
+hcut_goodHDC2u2            H.dc.2u2.nhit > 0 && H.dc.2u2.nhit < 3
+hcut_goodHDC2x2            H.dc.2x2.nhit > 0 && H.dc.2x2.nhit < 3
+
+hcut_goodHDC1              hcut_goodHDC1x1  && hcut_goodHDC1v2 && hcut_goodHDC1u1 && hcut_goodHDC1v1 && hcut_goodHDC1u2 && hcut_goodHDC1x2 
+hcut_goodHDC2              hcut_goodHDC2x1  && hcut_goodHDC2v2 && hcut_goodHDC2u1 && hcut_goodHDC2v1 && hcut_goodHDC2u2 && hcut_goodHDC2x2 
+hcut_bothGood              hcut_goodHDC1 && hcut_goodHDC2
+
+hcut_realhdc1x1            hcut_goodHDC1x1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc1v2            hcut_goodHDC1v2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc1u1            hcut_goodHDC1u1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc1v1            hcut_goodHDC1v1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc1u2            hcut_goodHDC1u2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc1x2            hcut_goodHDC1x2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc2x1            hcut_goodHDC2x1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc2v2            hcut_goodHDC2v2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc2u1     	   hcut_goodHDC2u1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc2v1            hcut_goodHDC2v1 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc2u2            hcut_goodHDC2u2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+hcut_realhdc2x2            hcut_goodHDC2x2 && ((H.dc.Ch1.spacepoints+H.dc.Ch2.spacepoints)>0)
+
+hcut_FoundTrack      	   H.dc.ntrack > 0
+hcut_Found1Track           H.dc.ntrack == 1
+hcut_Found2Track           H.dc.ntrack == 2
+hcut_Found3Track           H.dc.ntrack == 3
+hcut_Found4Track           H.dc.ntrack == 4
+
+hcut_CleanTrack            H.gtr.index > -1
+hcut_Clean1Track           H.gtr.index == 0
+hcut_Clean2Track           H.gtr.index == 1
+hcut_Clean3Track           H.gtr.index == 2
+hcut_Clean4Track           H.gtr.index == 3
+
+hcut_anys1x                H.hod.1x.nhits > 0
+hcut_anys1y                H.hod.1y.nhits > 0
+hcut_anys2x                H.hod.2x.nhits > 0
+hcut_anys2y                H.hod.2y.nhits > 0
+
+hcut_goods1x               H.hod.1x.nhits > 0 && H.hod.1x.nhits < 3
+hcut_goods1y               H.hod.1y.nhits > 0 && H.hod.1y.nhits < 3
+hcut_goods1                hcut_goods1x && hcut_goods1y
+hcut_goods2x               H.hod.2x.nhits > 0 && H.hod.2x.nhits < 3
+hcut_goods2y               H.hod.2y.nhits > 0 && H.hod.2y.nhits < 3
+hcut_goods2                hcut_goods2x && hcut_goods2y
+hcut_goods1s2              hcut_goods1 && hcut_goods2
+
+HMS_hcer_track_matched_region_1 H.cer.numTracksMatched[0]>0
+HMS_hcer_track_fired_region_1 H.cer.numTracksFired[0]>0
+HMS_hcer_track_matched_region_2 H.cer.numTracksMatched[1]>0
+HMS_hcer_track_fired_region_2 H.cer.numTracksFired[1]>0
+HMS_hcer_track_matched_tot H.cer.totNumTracksMatched>0
+HMS_hcer_track_fired_tot H.cer.totNumTracksFired>0
diff --git a/DEF-files/HMS/PRODUCTION/DC/hdc_eff_histos.def b/DEF-files/HMS/PRODUCTION/DC/hdc_eff_histos.def
new file mode 100644
index 0000000000000000000000000000000000000000..4d83abdfabc0958a4b6599046334e3c76b51f9ae
--- /dev/null
+++ b/DEF-files/HMS/PRODUCTION/DC/hdc_eff_histos.def
@@ -0,0 +1,41 @@
+#**********************
+# HMS Drift Chambers  *
+#**********************
+
+#------------------
+# HMS DC WIRE MAP for per wire efficiency
+#   first set with "should" cut
+#-----------------
+
+TH1F hdc1u1_wirenum_should 'HMS DC 1U1 Wiremap; Wire Number; Number of Entries'  H.dc.wireHitShould[0] 96 0.5 96.5  
+TH1F hdc1u2_wirenum_should 'HMS DC 1U2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[1] 96 0.5 96.5  
+TH1F hdc1x1_wirenum_should 'HMS DC 1X1 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[2]  102 0.5  102.5
+TH1F hdc1x2_wirenum_should 'HMS DC 1X2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[3]  102 0.5  102.5 
+TH1F hdc1v1_wirenum_should 'HMS DC 1V1 Wiremap; Wire Number; Number of Entries'  H.dc.wireHitShould[4] 96 0.5 96.5 
+TH1F hdc1v2_wirenum_should 'HMS DC 1V2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[5] 96 0.5 96.5 
+
+TH1F hdc2v2_wirenum_should 'HMS DC 2V2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[6] 96 0.5 96.5 
+TH1F hdc2v1_wirenum_should 'HMS DC 2V1 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[7] 96 0.5 96.5 
+TH1F hdc2x2_wirenum_should 'HMS DC 2X2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[8]  102 0.5  102.5 
+TH1F hdc2x1_wirenum_should 'HMS DC 2X1 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[9]  102 0.5  102.5 
+TH1F hdc2u2_wirenum_should 'HMS DC 2U2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[10] 96 0.5 96.5 
+TH1F hdc2u1_wirenum_should 'HMS DC 2U1 Wiremap; Wire Number; Number of Entries' H.dc.wireHitShould[11] 96 0.5 96.5 
+#------------------
+# HMS DC WIRE MAP for per wire efficiency
+#   first set with "did" cut
+#-----------------
+
+TH1F hdc1u1_wirenum_did 'HMS DC 1U1 Wiremap; Wire Number; Number of Entries'  H.dc.wireHitDid[0] 96 0.5 96.5  
+TH1F hdc1u2_wirenum_did 'HMS DC 1U2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[1] 96 0.5 96.5  
+TH1F hdc1x1_wirenum_did 'HMS DC 1X1 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[2]  102 0.5  102.5
+TH1F hdc1x2_wirenum_did 'HMS DC 1X2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[3]  102 0.5  102.5 
+TH1F hdc1v1_wirenum_did 'HMS DC 1V1 Wiremap; Wire Number; Number of Entries'  H.dc.wireHitDid[4] 96 0.5 96.5 
+TH1F hdc1v2_wirenum_did 'HMS DC 1V2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[5] 96 0.5 96.5 
+
+TH1F hdc2v2_wirenum_did 'HMS DC 2V2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[6] 96 0.5 96.5 
+TH1F hdc2v1_wirenum_did 'HMS DC 2V1 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[7] 96 0.5 96.5 
+TH1F hdc2x2_wirenum_did 'HMS DC 2X2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[8]  102 0.5  102.5 
+TH1F hdc2x1_wirenum_did 'HMS DC 2X1 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[9]  102 0.5  102.5 
+TH1F hdc2u2_wirenum_did 'HMS DC 2U2 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[10] 96 0.5 96.5 
+TH1F hdc2u1_wirenum_did 'HMS DC 2U1 Wiremap; Wire Number; Number of Entries' H.dc.wireHitDid[11] 96 0.5 96.5 
+
diff --git a/DEF-files/HMS/PRODUCTION/GTR/hgtr_vars.def b/DEF-files/HMS/PRODUCTION/GTR/hgtr_vars.def
new file mode 100644
index 0000000000000000000000000000000000000000..05e5135e977105fb7f2f82ea726cd5af8c32ff67
--- /dev/null
+++ b/DEF-files/HMS/PRODUCTION/GTR/hgtr_vars.def
@@ -0,0 +1,5 @@
+#***********************
+# Golden Track Variables
+#***********************
+
+block H.gtr.*
\ No newline at end of file
diff --git a/DEF-files/HMS/PRODUCTION/KIN/hkin_histos.def b/DEF-files/HMS/PRODUCTION/KIN/hkin_histos.def
index 1353abe44a7b7eedad9fe5d87c170f65c8e2e06e..f4d81d57f1b8954ac69ed8bba34c6137e23649a5 100644
--- a/DEF-files/HMS/PRODUCTION/KIN/hkin_histos.def
+++ b/DEF-files/HMS/PRODUCTION/KIN/hkin_histos.def
@@ -4,8 +4,8 @@
 # Kinematic Quantities
 #*****************************************
 
-TH1F hkin_q2 'HMS Q^{2}; Q^{2} (GeV^{2}); Number of Entries / 0.050 GeV^{2}' H.kin.Q2 100 0 5
-TH1F hkin_omega 'HMS Omega; E_{beam} - E_{scat} (GeV); Number of Entries / 0.050 GeV' H.kin.omega 100 0 5
-TH1F hkin_w2 'HMS W^{2}; W^{2} (GeV^{2}); Number of Entries / 0.100 GeV^{2}' H.kin.W2 100 0 10
+TH1F hkin_q2 'HMS Q^{2}; Q^{2} (GeV^{2}); Number of Entries / 0.050 GeV^{2}' H.kin.Q2 400 0 20
+TH1F hkin_omega 'HMS Omega; E_{beam} - E_{scat} (GeV); Number of Entries / 0.050 GeV' H.kin.omega 200 0 10
+TH1F hkin_w2 'HMS W^{2}; W^{2} (GeV^{2}); Number of Entries / 0.050 GeV^{2}' H.kin.W2 200 0 10
 TH1F hkin_w  'HMS W; W (GeV); Number of Entries / 0.050 GeV' H.kin.W 100 0 5
-TH1F hkin_theta 'HMS Scattering Angle Theta; HMS Scattering Angle (deg); Number of Entries / 0.06 deg' H.kin.scat_ang_deg 100 12 18
+TH1F hkin_theta 'HMS Scattering Angle Theta; HMS Scattering Angle (deg); Number of Entries / 0.25 deg' H.kin.scat_ang_deg 260 0 65
diff --git a/DEF-files/HMS/PRODUCTION/PID/hpid_vars.def b/DEF-files/HMS/PRODUCTION/PID/hpid_vars.def
new file mode 100644
index 0000000000000000000000000000000000000000..f308a58296526bddbcb56d7a1d5c9c46694d9cb8
--- /dev/null
+++ b/DEF-files/HMS/PRODUCTION/PID/hpid_vars.def
@@ -0,0 +1,6 @@
+#**************
+# PID Variables
+#**************
+
+block H.cal.etracknorm
+block H.cer.npeSum
\ No newline at end of file
diff --git a/DEF-files/HMS/PRODUCTION/TRIG/htrig_histos.def b/DEF-files/HMS/PRODUCTION/TRIG/htrig_histos.def
index 8fe3567ddb376a7d548714b7e41d8256fed2b856..b7f5620d51185a852cf39cb1e25dc8e7049583c0 100644
--- a/DEF-files/HMS/PRODUCTION/TRIG/htrig_histos.def
+++ b/DEF-files/HMS/PRODUCTION/TRIG/htrig_histos.def
@@ -47,3 +47,12 @@ TH2D htrig2rate_vs_time 'HMS Trig2 Rate vs. Time; 1 MHz Clock Time (s); hTRIG2 R
 TH2D htrig3rate_vs_time 'HMS Trig3 Rate vs. Time; 1 MHz Clock Time (s); hTRIG3 Rate (Hz)' H.1Mhz.scalerTime H.hTRIG3.scalerRate 350 0 7000 500 0 200000 
 TH2D htrig4rate_vs_time 'HMS Trig4 Rate vs. Time; 1 MHz Clock Time (s); hTRIG4 Rate (Hz)' H.1Mhz.scalerTime H.hTRIG4.scalerRate 350 0 7000 500 0 200000 
 TH2D htrig6rate_vs_time 'HMS Trig6 Rate vs. Time; 1 MHz Clock Time (s); hTRIG6 Rate (Hz)' H.1Mhz.scalerTime H.hTRIG6.scalerRate 350 0 7000 500 0 200000 
+
+
+#--------------------------------
+#HMS Trigger ADC Pulse pedestals
+#--------------------------------
+
+TH1F htrig_hpreShwr_adc_pped 'HMS Pre-Shower Pulse Pedestal;  Pulse Pedestal (mV); Counts / 2 mV;' T.hms.hPSHWR_adcPed 500 0 1000  T.hms.hPSHWR_adcPed>0.0
+TH1F htrig_hshwr_adc_pped 'HMS Shower Pulse Pedestal;  Pulse Pedestal (mV); Counts / 2 mV;' T.hms.hSHWR_adcPed 500 0 1000  T.hms.hSHWR_adcPed>0.0
+TH1F htrig_hcersum_adc_pped 'HMS Cherenkov Sum Pulse Pedestal;  Pulse Pedestal (mV); Counts / 2 mV;' T.hms.hCER_adcPed 500 0 1000   T.hms.hCER_adcPed>0.0
diff --git a/DEF-files/HMS/PRODUCTION/hstackana_production.def b/DEF-files/HMS/PRODUCTION/hstackana_production.def
index d35c065692e7587219b90c2e005146ef7318ed01..1987b822e7875a2f8115abf1f15457da02e3fb25 100644
--- a/DEF-files/HMS/PRODUCTION/hstackana_production.def
+++ b/DEF-files/HMS/PRODUCTION/hstackana_production.def
@@ -1,11 +1,15 @@
 #include "DEF-files/HMS/PRODUCTION/CAL/hcal_histos.def"
 #include "DEF-files/HMS/PRODUCTION/CER/hcer_histos.def"
 #include "DEF-files/HMS/PRODUCTION/DC/hdc_histos.def"
+#include "DEF-files/HMS/TEST_STANDS/DC/hdc_resid.def"
+#include "DEF-files/HMS/PRODUCTION/DC/hdc_eff_histos.def"
 #include "DEF-files/HMS/PRODUCTION/HODO/hhodo_histos.def"
 #include "DEF-files/HMS/PRODUCTION/KIN/hkin_histos.def"
 #include "DEF-files/HMS/PRODUCTION/GTR/hgtr_histos.def"
 #include "DEF-files/HMS/PRODUCTION/RASTER/hraster_histos.def"
 #include "DEF-files/HMS/PRODUCTION/TRIG/htrig_histos.def"
-#include "DEF-files/HMS/PRODUCTION/EPICS/hepics_vars.def"
 #include "DEF-files/HMS/PRODUCTION/REACT/hreact_histos.def"
 #include "DEF-files/HMS/PRODUCTION/PID/hpid_histos.def"
+#include "DEF-files/HMS/PRODUCTION/GTR/hgtr_vars.def"
+#include "DEF-files/HMS/PRODUCTION/PID/hpid_vars.def"
+#include "DEF-files/HMS/PRODUCTION/EPICS/hepics_vars.def"
diff --git a/DEF-files/HMS/TEST_STANDS/DC/hdc_resid.def b/DEF-files/HMS/TEST_STANDS/DC/hdc_resid.def
new file mode 100644
index 0000000000000000000000000000000000000000..f8f9a4c00e9403801cdaefccbf4d089b984c3322
--- /dev/null
+++ b/DEF-files/HMS/TEST_STANDS/DC/hdc_resid.def
@@ -0,0 +1,35 @@
+#-----------------------------
+# HMS DC RESIDUALS PER PLANE 
+#-----------------------------
+
+TH1F hdc1u1_residuals 'HMS 1U1 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[0]  200 -1.0 1.0
+TH1F hdc1u2_residuals 'HMS 1U2 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[1]  200 -1.0 1.0
+TH1F hdc1x1_residuals 'HMS 1X1 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[2]  200 -1.0 1.0
+TH1F hdc1x2_residuals 'HMS 1X2 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[3]  200 -1.0 1.0
+TH1F hdc1v1_residuals 'HMS 1V1 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[4]  200 -1.0 1.0
+TH1F hdc1v2_residuals 'HMS 1V2 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[5]  200 -1.0 1.0
+
+TH1F hdc2v2_residuals 'HMS 2V2 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[6]  200 -1.0 1.0
+TH1F hdc2v1_residuals 'HMS 2V1 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[7]  200 -1.0 1.0
+TH1F hdc2x2_residuals 'HMS 2X2 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[8]  200 -1.0 1.0
+TH1F hdc2x1_residuals 'HMS 2X1 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[9]  200 -1.0 1.0
+TH1F hdc2u2_residuals 'HMS 2U2 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[10] 200 -1.0 1.0
+TH1F hdc2u1_residuals 'HMS 2U1 DC Residuals; Residuals (cm); Number of Entries / 0.01 cm' H.dc.residual[11] 200 -1.0 1.0
+
+#-----------------------------------
+# HMS DC RESIDUALS vs. Wire Number
+#-----------------------------------
+
+TH2F hdc1u1_residuals_vs_wirenum 'HMS 1U1 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.1u1.wirenum H.dc.residual[0] 96 0.5 96.5 200 -1.0 1.0
+TH2F hdc1u2_residuals_vs_wirenum 'HMS 1U2 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.1u2.wirenum H.dc.residual[1] 96 0.5 96.5 200 -1.0 1.0
+TH2F hdc1x1_residuals_vs_wirenum 'HMS 1X1 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.1x1.wirenum H.dc.residual[2] 102 0.5  102.5 200 -1.0 1.0
+TH2F hdc1x2_residuals_vs_wirenum 'HMS 1X2 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.1x2.wirenum H.dc.residual[3] 102 0.5  102.5 200 -1.0 1.0
+TH2F hdc1v1_residuals_vs_wirenum 'HMS 1V1 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.1v1.wirenum H.dc.residual[4] 96 0.5 96.5 200 -1.0 1.0
+TH2F hdc1v2_residuals_vs_wirenum 'HMS 1V2 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.1v2.wirenum H.dc.residual[5] 96 0.5 96.5 200 -1.0 1.0
+
+TH2F hdc2v2_residuals_vs_wirenum 'HMS 2V2 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.2v2.wirenum H.dc.residual[6] 96 0.5 96.5 200 -1.0 1.0
+TH2F hdc2v1_residuals_vs_wirenum 'HMS 2V1 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.2v1.wirenum H.dc.residual[7] 96 0.5 96.5 200 -1.0 1.0
+TH2F hdc2x2_residuals_vs_wirenum 'HMS 2X2 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.2x2.wirenum H.dc.residual[8] 102 0.5  102.5 200 -1.0 1.0
+TH2F hdc2x1_residuals_vs_wirenum 'HMS 2X1 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.2x1.wirenum H.dc.residual[9] 102 0.5  102.5 200 -1.0 1.0
+TH2F hdc2u2_residuals_vs_wirenum 'HMS 2U2 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.2u2.wirenum H.dc.residual[10] 96 0.5 96.5 200 -1.0 1.0
+TH2F hdc2u1_residuals_vs_wirenum 'HMS 2U1 DC Residuals vs. Wire Number; Wire Number; Residuals (cm)' H.dc.2u1.wirenum H.dc.residual[11] 96 0.5 96.5 200 -1.0 1.0
diff --git a/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_coarsetracking_cuts.def b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_coarsetracking_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..59cd31302a9514a54779c4f2c796a5dc46e0d9c4
--- /dev/null
+++ b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_coarsetracking_cuts.def
@@ -0,0 +1,116 @@
+Block: CoarseTracking
+
+# Add cuts to stricter times and apply them to drift distances 
+pcut_time_cut1      P.dc.1u1.time > 0 && P.dc.1u1.time < 250
+pcut_time_cut2      P.dc.1u2.time > 0 && P.dc.1u2.time < 250
+pcut_time_cut3      P.dc.1x1.time > 0 && P.dc.1x1.time < 250
+pcut_time_cut4      P.dc.1x2.time > 0 && P.dc.1x2.time < 250
+pcut_time_cut5      P.dc.1v1.time > 0 && P.dc.1v1.time < 250
+pcut_time_cut6      P.dc.1v2.time > 0 && P.dc.1v2.time < 250
+pcut_time_cut7      P.dc.2v2.time > 0 && P.dc.2v2.time < 250
+pcut_time_cut8      P.dc.2v1.time > 0 && P.dc.2v1.time < 250
+pcut_time_cut9      P.dc.2x2.time > 0 && P.dc.2x2.time < 250
+pcut_time_cut10     P.dc.2x1.time > 0 && P.dc.2x1.time < 250
+pcut_time_cut11     P.dc.2u2.time > 0 && P.dc.2u2.time < 250
+pcut_time_cut12     P.dc.2u1.time > 0 && P.dc.2u1.time < 250
+
+shmsDC1Planes_large     (P.dc.1x1.nhit + P.dc.1u2.nhit + P.dc.1u1.nhit + P.dc.1v1.nhit + P.dc.1x2.nhit + P.dc.1v2.nhit) > 20
+shmsDC2Planes_large     (P.dc.2x1.nhit + P.dc.2u2.nhit + P.dc.2u1.nhit + P.dc.2v1.nhit + P.dc.2x2.nhit + P.dc.2v2.nhit) > 20 
+shmsDCany_large        shmsDC1Planes_large || shmsDC2Planes_large
+			
+shms_ch1_gt0           P.dc.Ch1.nhit > 0
+shms_ch2_gt0           P.dc.Ch2.nhit > 0
+shms_ch_gt0            P.dc.Ch2.nhit > 0  && P.dc.Ch1.nhit > 0
+shms_ch_gt4            P.dc.Ch2.nhit > 3  && P.dc.Ch1.nhit > 3
+shms_ch2_gt0_noch1     P.dc.Ch2.nhit > 0  && P.dc.Ch1.nhit == 0
+shms_ch1_gt0_noch2     P.dc.Ch1.nhit > 0  && P.dc.Ch2.nhit == 0
+shms_noch1_noch2       P.dc.Ch1.nhit == 0 && P.dc.Ch2.nhit == 0
+shms_ch_gt0_track      shms_ch_gt0 && P.dc.ntrack > 0
+shms_ch_gt4_track      shms_ch_gt4 && P.dc.ntrack > 0
+
+shms_ch1_gt0_gtime           P.dc.Ch1.nhit > 0 && pcut_good_S1_S2X_time
+shms_ch2_gt0_gtime           P.dc.Ch2.nhit > 0 && pcut_good_S1_S2X_time
+shms_ch_gt0_gtime            P.dc.Ch2.nhit > 0 && P.dc.Ch1.nhit > 0 && pcut_good_S1_S2X_time
+shms_ch_gt4_gtime            P.dc.Ch2.nhit > 3 && P.dc.Ch1.nhit > 3 && pcut_good_S1_S2X_time
+shms_ch2_gt0_noch1_gtime     P.dc.Ch2.nhit > 0 && P.dc.Ch1.nhit == 0 && pcut_good_S1_S2X_time
+shms_ch1_gt0_noch2_gtime     P.dc.Ch1.nhit > 0 && P.dc.Ch2.nhit == 0 && pcut_good_S1_S2X_time
+shms_noch1_noch2_gtime       P.dc.Ch1.nhit == 0 && P.dc.Ch2.nhit == 0 && pcut_good_S1_S2X_time
+shms_ch_gt0_track_gtime      shms_ch_gt0 && P.dc.ntrack > 0 && pcut_good_S1_S2X_time
+shms_ch_gt4_track_gtime      shms_ch_gt4 && P.dc.ntrack > 0 && pcut_good_S1_S2X_time
+
+shmsDC1_1hit_x1     P.dc.1x1.nhit == 1
+shmsDC1_1hit_u1     P.dc.1u1.nhit == 1
+shmsDC1_1hit_u2     P.dc.1u2.nhit == 1
+shmsDC1_1hit_v1     P.dc.1v1.nhit == 1
+shmsDC1_1hit_v2     P.dc.1v2.nhit == 1
+shmsDC1_1hit_x2     P.dc.1x2.nhit == 1
+
+shmsDC2_1hit_x1     P.dc.2x1.nhit == 1
+shmsDC2_1hit_u1	    P.dc.2u1.nhit == 1
+shmsDC2_1hit_u2     P.dc.2u2.nhit == 1
+shmsDC2_1hit_v1     P.dc.2v1.nhit == 1
+shmsDC2_1hit_v2     P.dc.2v2.nhit == 1
+shmsDC2_1hit_x2     P.dc.2x2.nhit == 1
+
+p1hit1     P.dc.1x1.nhit >= 1
+p1hit2     P.dc.1u1.nhit >= 1
+p1hit3     P.dc.1u2.nhit >= 1
+p1hit4     P.dc.1v1.nhit >= 1
+p1hit5     P.dc.1v2.nhit >= 1
+p1hit6     P.dc.1x2.nhit >= 1
+
+p2hit1     P.dc.2x1.nhit >= 1
+p2hit2     P.dc.2u1.nhit >= 1
+p2hit3     P.dc.2u2.nhit >= 1
+p2hit4     P.dc.2v1.nhit >= 1
+p2hit5     P.dc.2v2.nhit >= 1
+p2hit6     P.dc.2x2.nhit >= 1
+
+shmsDC1Planes6hits     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
+shmsDC2Planes6hits     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
+
+shmsDC1_5hits_x1     shmsDC1_1hit_u1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
+shmsDC1_6hits_x1     p1hit1 && shmsDC1_1hit_u1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
+shmsDC1_5hits_u1     shmsDC1_1hit_x1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
+shmsDC1_6hits_u1     p1hit2 && shmsDC1_1hit_x1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
+shmsDC1_5hits_u2     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
+shmsDC1_6hits_u2     p1hit3 && shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
+shmsDC1_5hits_v1     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_u2 && shmsDC1_1hit_v2
+shmsDC1_6hits_v1     p1hit4 && shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_u2 && shmsDC1_1hit_v2
+shmsDC1_5hits_v2     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_u2 && shmsDC1_1hit_v1
+shmsDC1_6hits_v2     p1hit5 && shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_u2 && shmsDC1_1hit_v1
+shmsDC1_5hits_x2     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_v1 && shmsDC1_1hit_u2 && shmsDC1_1hit_v2
+shmsDC1_6hits_x2     p1hit6 && shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_v1 && shmsDC1_1hit_u2 && shmsDC1_1hit_v2
+
+shmsDC2_5hits_x1     shmsDC2_1hit_u1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
+shmsDC2_6hits_x1     p2hit1 && shmsDC2_1hit_u1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
+shmsDC2_5hits_u1     shmsDC2_1hit_x1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
+shmsDC2_6hits_u1     p2hit2 && shmsDC2_1hit_x1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
+shmsDC2_5hits_u2     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
+shmsDC2_6hits_u2     p2hit3 && shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
+shmsDC2_5hits_v1     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_u2 && shmsDC2_1hit_v2
+shmsDC2_6hits_v1     p2hit4 && shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_u2 && shmsDC2_1hit_v2
+shmsDC2_5hits_v2     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_u2 && shmsDC2_1hit_v1
+shmsDC2_6hits_v2     p2hit5 && shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_u2 && shmsDC2_1hit_v1
+shmsDC2_5hits_x2     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_v1 && shmsDC2_1hit_u2 && shmsDC2_1hit_v2
+shmsDC2_6hits_x2     p2hit6 && shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_v1 && shmsDC2_1hit_u2 && shmsDC2_1hit_v2
+
+shms1HitsLt     P.dc.Ch1.nhit <= P.dc.Ch1.maxhits && g.evtyp == 1
+shms2HitsLt     P.dc.Ch2.nhit <= P.dc.Ch2.maxhits && g.evtyp == 1
+shmsHitsLt      P.dc.Ch1.nhit <= P.dc.Ch1.maxhits && P.dc.Ch2.nhit <= P.dc.Ch2.maxhits && g.evtyp == 1
+
+shmsDC1PlanesGT     (p1hit1 + p1hit2 + p1hit3 + p1hit4 + p1hit5 + p1hit6 ) >= 5
+shmsDC2PlanesGT     (p2hit1 + p2hit2 + p2hit3 + p2hit4 + p2hit5 + p2hit6 ) >= 5
+shmsPlanesGT        shmsDC1PlanesGT && shmsDC2PlanesGT
+shmsHitsPlanes      (P.dc.Ch1.nhit <= 6) && (P.dc.Ch2.nhit <= 6) && shmsPlanesGT
+
+pSpacePoints         P.dc.Ch1.spacepoints >= 1 && P.dc.Ch2.spacepoints >= 1
+pSpacePointsStub     P.dc.stubtest == 1 && P.dc.Ch1.spacepoints >= 1 && P.dc.Ch2.spacepoints >= 1
+pcut_FoundTrack      P.dc.ntrack > 0 
+pStubLT              P.dc.stubtest == 1
+f1PSpacePoints       shms1HitsLt && shmsDC1PlanesGT && P.dc.Ch1.spacepoints == 0 && g.evtyp == 1
+f2PSpacePoints       shms2HitsLt && shmsDC2PlanesGT && P.dc.Ch2.spacepoints == 0 && g.evtyp == 1
+
+pTest1     shmsHitsPlanes && (!pSpacePoints)
+pTest2	   pSpacePoints && (!pStubLT)
+
diff --git a/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_decode_cuts.def b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_decode_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..9544df8b3418f0201afe16d4f985a51b690fa3c5
--- /dev/null
+++ b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_decode_cuts.def
@@ -0,0 +1,16 @@
+Block: Decode
+
+pcut_TRIG1         T.shms.pTRIG1_tdcTimeRaw > 0
+pcut_TRIG2         T.shms.pTRIG2_tdcTimeRaw > 0
+pcut_TRIG3         T.shms.pTRIG3_tdcTimeRaw > 0
+SHMS_Pretrig  pcut_TRIG1 || pcut_TRIG2 || pcut_TRIG3
+
+shms_trigs        SHMS_event
+pcut_edtm_accepted     T.shms.pEDTM_tdcTime != 0.0
+pcut_physics_accepted  T.shms.pEDTM_tdcTime == 0.0
+
+pcut_good_S1_time         T.shms.p1T_tdcTime > 241 && T.shms.p1T_tdcTime < 243
+pcut_good_S2X_time        T.shms.p2X_tdcTime > 180 && T.shms.p2X_tdcTime < 220
+pcut_good_S1_S2X_time     pcut_good_S1_time && pcut_good_S2X_time
+
+ALL_SHMS_NO_EDTM          ALL_events && pcut_physics_accepted
\ No newline at end of file
diff --git a/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_production_cuts.def b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_production_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..7f4b7d3525333cfc3a39ff72a9f18ede92907f47
--- /dev/null
+++ b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_production_cuts.def
@@ -0,0 +1,26 @@
+# Report file for SHMS stack
+
+Block: RawDecode
+#include "DEF-files/SHMS/PRODUCTION/CUTS/pstackana_rawdecode_cuts.def"
+RawDecode_master  1
+
+Block: Decode
+#include "DEF-files/SHMS/PRODUCTION/CUTS/pstackana_decode_cuts.def"
+Decode_master     ALL_SHMS_NO_EDTM
+
+Block: CoarseTracking
+#include "DEF-files/SHMS/PRODUCTION/CUTS/pstackana_coarsetracking_cuts.def"
+CoarseTracking_master ALL_SHMS_NO_EDTM
+
+Block: CoarseReconstruct
+CoarseReconstruct_master ALL_SHMS_NO_EDTM
+
+Block: Tracking
+Tracking_master  ALL_SHMS_NO_EDTM
+
+Block: Reconstruct
+#include "DEF-files/SHMS/PRODUCTION/CUTS/pstackana_reconstruct_cuts.def"
+Reconstruct_master ALL_SHMS_NO_EDTM
+
+Block: Physics
+Physics_master ALL_SHMS_NO_EDTM
diff --git a/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_rawdecode_cuts.def b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_rawdecode_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..ff3d964a509a1bffca15c991106702f779f75598
--- /dev/null
+++ b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_rawdecode_cuts.def
@@ -0,0 +1,12 @@
+Block: RawDecode
+
+Pedestal_event       g.evtyp == 99
+SHMS_event           g.evtyp == 1
+HMS_event            g.evtyp == 2
+BOTH_SINGLES_event   g.evtyp == 3
+COIN_ONLY_event      g.evtyp == 4
+SHMS_COIN_event      g.evtyp == 5
+HMS_COIN_event       g.evtyp == 6 
+COIN_ALL_event       g.evtyp == 7
+ALL_events           SHMS_event || HMS_event || BOTH_SINGLES_event || COIN_ONLY_event || COIN_ALL_event
+ALL_SHMS_events      SHMS_event || COIN_ONLY_event || SHMS_COIN_event || COIN_ALL_event
\ No newline at end of file
diff --git a/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_reconstruct_cuts.def b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_reconstruct_cuts.def
new file mode 100644
index 0000000000000000000000000000000000000000..9bffe08eab5a5a6d3e48195f6f2f774f504a6b4c
--- /dev/null
+++ b/DEF-files/SHMS/PRODUCTION/CUTS/pstackana_reconstruct_cuts.def
@@ -0,0 +1,122 @@
+Block: Reconstruct
+
+pcut_cer_ng_elec    	  P.ngcer.npeSum > 0.5
+pcut_cer_ng_pi      	  P.ngcer.npeSum <= 0.5
+pcut_cer_hg_elec	  P.hgcer.npeSum > 0.5
+pcut_cer_hg_pi	  	  P.hgcer.npeSum <= 0.5
+pcut_cer_pi_both       	  pcut_cer_ng_pi && pcut_cer_hg_pi
+pcut_cer_elec_both     	  pcut_cer_ng_elec && pcut_cer_hg_elec
+pcut_cal_elec          	  P.cal.etracknorm > 0.6 && P.cal.etracknorm < 1.6
+pcut_cal_pi            	  P.cal.etracknorm <= 0.6 && P.cal.etracknorm > 0.
+pcut_elec_all          	  pcut_cer_ng_elec && pcut_cer_hg_elec && pcut_cal_elec
+pcut_pi_all            	  pcut_cer_ng_pi && pcut_cer_hg_pi && pcut_cal_pi
+
+shmsScinGood        P.hod.goodscinhit == 1
+shmsGoodBetanotrk   P.hod.betanotrack > 0.5 && P.hod.betanotrack < 1.4
+
+shmsScinShould      shmsScinGood && shmsGoodBetanotrk && !shmsDCany_large 
+shmsScinShoulde     shmsScinShould &&  P.cal.etotnorm > 0.6 && P.cal.etotnorm < 1.6 && P.hgcer.npeSum > 0.5
+shmsScinShouldh     shmsScinShould && P.cal.etotnorm <= 0.6 && P.cal.etotnorm > 0. && P.hgcer.npeSum < 0.2
+shmsScinDid         shmsScinShould && P.dc.ntrack > 0
+shmsScinDide        shmsScinShoulde && P.dc.ntrack > 0
+shmsScinDidh        shmsScinShouldh && P.dc.ntrack > 0
+
+pcut_goodHDC1x1     P.dc.1x1.nhit > 0 && P.dc.1x1.nhit < 3
+pcut_goodHDC1u2     P.dc.1u2.nhit > 0 && P.dc.1u2.nhit < 3
+pcut_goodHDC1u1     P.dc.1u1.nhit > 0 && P.dc.1u1.nhit < 3
+pcut_goodHDC1v1     P.dc.1v1.nhit > 0 && P.dc.1v1.nhit < 3
+pcut_goodHDC1v2     P.dc.1v2.nhit > 0 && P.dc.1v2.nhit < 3
+pcut_goodHDC1x2     P.dc.1x2.nhit > 0 && P.dc.1x2.nhit < 3
+
+pcut_goodHDC2x1     P.dc.2x1.nhit > 0 && P.dc.2x1.nhit < 3
+pcut_goodHDC2u2     P.dc.2u2.nhit > 0 && P.dc.2u2.nhit < 3
+pcut_goodHDC2u1     P.dc.2u1.nhit > 0 && P.dc.2u1.nhit < 3
+pcut_goodHDC2v1     P.dc.2v1.nhit > 0 && P.dc.2v1.nhit < 3
+pcut_goodHDC2v2     P.dc.2v2.nhit > 0 && P.dc.2v2.nhit < 3
+pcut_goodHDC2x2     P.dc.2x2.nhit > 0 && P.dc.2x2.nhit < 3
+
+pcut_goodHDC1     pcut_goodHDC1x1  && pcut_goodHDC1u2 && pcut_goodHDC1u1 && pcut_goodHDC1v1 && pcut_goodHDC1v2 && pcut_goodHDC1x2 
+pcut_goodHDC2     pcut_goodHDC2x1  && pcut_goodHDC2u2 && pcut_goodHDC2u1 && pcut_goodHDC2v1 && pcut_goodHDC2v2 && pcut_goodHDC2x2 
+pcut_bothGood     pcut_goodHDC1 && pcut_goodHDC2
+
+pcut_realhdc1x1     pcut_goodHDC1x1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc1u2     pcut_goodHDC1u2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc1u1     pcut_goodHDC1u1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc1v1     pcut_goodHDC1v1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc1v2     pcut_goodHDC1v2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc1x2     pcut_goodHDC1x2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+
+pcut_realhdc2x1     pcut_goodHDC2x1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc2u2     pcut_goodHDC2u2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc2u1     pcut_goodHDC2u1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc2v1     pcut_goodHDC2v1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc2v2     pcut_goodHDC2v2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+pcut_realhdc2x2     pcut_goodHDC2x2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
+
+pcut_Found1Track     P.dc.ntrack == 1
+pcut_Found2Track     P.dc.ntrack == 2
+pcut_Found3Track     P.dc.ntrack == 3
+pcut_Found4Track     P.dc.ntrack == 4
+
+pcut_CleanTrack      P.gtr.index > -1
+pcut_Clean1Track     P.gtr.index == 0
+pcut_Clean2Track     P.gtr.index == 1
+pcut_Clean3Track     P.gtr.index == 2
+pcut_Clean4Track     P.gtr.index == 3
+
+pcut_CleanTrack_cer_elec     (P.gtr.index > -1) && pcut_cer_elec_both
+pcut_p1hit1_cer_elec	     p1hit1 && pcut_cer_elec_both
+pcut_CleanTrack_cal_elec     (P.gtr.index > -1) && pcut_cal_elec
+pcut_p1hit1_cal_elec         p1hit1 && pcut_cal_elec
+
+pcut_anys1x     P.hod.1x.nhits > 0
+pcut_anys1y     P.hod.1y.nhits > 0
+pcut_anys2x     P.hod.2x.nhits > 0
+pcut_anys2y     P.hod.2y.nhits > 0
+
+pcut_goods1x      P.hod.1x.nhits > 0 && P.hod.1x.nhits < 3
+pcut_goods1y      P.hod.1y.nhits > 0 && P.hod.1y.nhits < 3
+pcut_goods1       pcut_goods1x && pcut_goods1y
+pcut_goods2x      P.hod.2x.nhits > 0 && P.hod.2x.nhits < 3
+pcut_goods2y      P.hod.2y.nhits > 0 && P.hod.2y.nhits < 3
+pcut_goods2       pcut_goods2x && pcut_goods2y
+pcut_goods1s2     pcut_goods1 && pcut_goods2
+
+SHMS_hgcer_track_matched_region_1 P.hgcer.numTracksMatched[0]>0
+SHMS_hgcer_track_fired_region_1 P.hgcer.numTracksFired[0]>0
+SHMS_hgcer_track_matched_region_2 P.hgcer.numTracksMatched[1]>0
+SHMS_hgcer_track_fired_region_2 P.hgcer.numTracksFired[1]>0
+SHMS_hgcer_track_matched_region_3 P.hgcer.numTracksMatched[2]>0
+SHMS_hgcer_track_fired_region_3 P.hgcer.numTracksFired[2]>0
+SHMS_hgcer_track_matched_region_4 P.hgcer.numTracksMatched[3]>0
+SHMS_hgcer_track_fired_region_4 P.hgcer.numTracksFired[3]>0
+SHMS_hgcer_track_matched_tot P.hgcer.totNumTracksMatched>0
+SHMS_hgcer_track_fired_tot P.hgcer.totNumTracksFired>0
+
+SHMS_ngcer_track_matched_region_1 P.ngcer.numTracksMatched[0]>0
+SHMS_ngcer_track_fired_region_1 P.ngcer.numTracksFired[0]>0
+SHMS_ngcer_track_matched_region_2 P.ngcer.numTracksMatched[1]>0
+SHMS_ngcer_track_fired_region_2 P.ngcer.numTracksFired[1]>0
+SHMS_ngcer_track_matched_region_3 P.ngcer.numTracksMatched[2]>0
+SHMS_ngcer_track_fired_region_3 P.ngcer.numTracksFired[2]>0
+SHMS_ngcer_track_matched_region_4 P.ngcer.numTracksMatched[3]>0
+SHMS_ngcer_track_fired_region_4 P.ngcer.numTracksFired[3]>0
+SHMS_ngcer_track_matched_tot P.ngcer.totNumTracksMatched>0
+SHMS_ngcer_track_fired_tot P.ngcer.totNumTracksFired>0
+
+SHMS_aero_track_matched_region_1 P.aero.numTracksMatched[0]>0
+SHMS_aero_track_fired_region_1 P.aero.numTracksFired[0]>0
+SHMS_aero_track_matched_region_2 P.aero.numTracksMatched[1]>0
+SHMS_aero_track_fired_region_2 P.aero.numTracksFired[1]>0
+SHMS_aero_track_matched_region_3 P.aero.numTracksMatched[2]>0
+SHMS_aero_track_fired_region_3 P.aero.numTracksFired[2]>0
+SHMS_aero_track_matched_region_4 P.aero.numTracksMatched[3]>0
+SHMS_aero_track_fired_region_4 P.aero.numTracksFired[3]>0
+SHMS_aero_track_matched_region_5 P.aero.numTracksMatched[4]>0
+SHMS_aero_track_fired_region_5 P.aero.numTracksFired[4]>0
+SHMS_aero_track_matched_region_6 P.aero.numTracksMatched[5]>0
+SHMS_aero_track_fired_region_6 P.aero.numTracksFired[5]>0
+SHMS_aero_track_matched_region_7 P.aero.numTracksMatched[6]>0
+SHMS_aero_track_fired_region_7 P.aero.numTracksFired[6]>0
+SHMS_aero_track_matched_tot P.aero.totNumTracksMatched>0
+SHMS_aero_track_fired_tot P.aero.totNumTracksFired>0
diff --git a/DEF-files/SHMS/PRODUCTION/DC/pdc_histos.def b/DEF-files/SHMS/PRODUCTION/DC/pdc_histos.def
index 602732599235a5bd65c1eb04ae57d78a3e1e91ec..40b27591902d7e8376dcf9bb74b1dc8404ce9ecc 100644
--- a/DEF-files/SHMS/PRODUCTION/DC/pdc_histos.def
+++ b/DEF-files/SHMS/PRODUCTION/DC/pdc_histos.def
@@ -56,7 +56,7 @@ TH1F pdc2v1_ddist 'SHMS 2V1 Drift Distance; Drift Distance (cm); Number of Entri
 # SHMS DC TRACKING VARIABLES AT FOCAL PLANE
 #-------------------------------------------
 
-TH1F pdc_trk_mom      'SHMS DC Track Momentum; P (GeV); Number of Entires / 10 MeV' P.tr.p 600 0 6
+TH1F pdc_trk_mom      'SHMS DC Track Momentum; P (GeV); Number of Entires / 10 MeV' P.tr.p 600 0 10
 TH1F pdc_trk_beta     'SHMS DC Track Beta; Beta (GeV); Number of Entires' P.tr.beta 300 -1.5 1.5
 TH2F pdc_xfp_vs_yfp   'SHMS DC X_{fp} vs Y_{fp}; Y_{fp} (cm) / 1 cm; X_{fp} (cm) / 1 cm' P.dc.y_fp P.dc.x_fp 100 -50 50 100 -50 50
 TH2F pdc_xpfp_vs_ypfp 'SHMS DC X'_{fp} vs Y'_{fp}; Y'_{fp} / 0.002 rad; X'_{fp} / 0.002 rad' P.dc.yp_fp P.dc.xp_fp 100 -.1 .1 100 -.1 .1
diff --git a/DEF-files/SHMS/PRODUCTION/GTR/pgtr_vars.def b/DEF-files/SHMS/PRODUCTION/GTR/pgtr_vars.def
new file mode 100644
index 0000000000000000000000000000000000000000..2fa95b22fd30ae992955a6c69d89d3498c50a0c9
--- /dev/null
+++ b/DEF-files/SHMS/PRODUCTION/GTR/pgtr_vars.def
@@ -0,0 +1,5 @@
+#***********************
+# Golden Track Variables
+#***********************
+
+block P.gtr.*
\ No newline at end of file
diff --git a/DEF-files/SHMS/PRODUCTION/PID/ppid_vars.def b/DEF-files/SHMS/PRODUCTION/PID/ppid_vars.def
new file mode 100644
index 0000000000000000000000000000000000000000..c2294ab7471b24acbcf1b46ca76c685d72f2dbb2
--- /dev/null
+++ b/DEF-files/SHMS/PRODUCTION/PID/ppid_vars.def
@@ -0,0 +1,7 @@
+#**************
+# PID Variables
+#**************
+
+block P.cal.etracknorm
+block P.hgcer.npeSum
+block P.ngcer.npeSum
\ No newline at end of file
diff --git a/DEF-files/SHMS/PRODUCTION/TRIG/ptrig_histos.def b/DEF-files/SHMS/PRODUCTION/TRIG/ptrig_histos.def
index 0e14c39b62ae5631cdcf31de6a0bf99c94c2e9ce..3dd484372cce9febc4846b7f840b2e81b1e7bd78 100644
--- a/DEF-files/SHMS/PRODUCTION/TRIG/ptrig_histos.def
+++ b/DEF-files/SHMS/PRODUCTION/TRIG/ptrig_histos.def
@@ -64,3 +64,12 @@ TH2D ptrig3rate_vs_time 'SHMS Trig3 Rate vs. Time; 1 MHz Clock Time (s); pTRIG3
 TH2D ptrig4rate_vs_time 'SHMS Trig4 Rate vs. Time; 1 MHz Clock Time (s); pTRIG4 Rate (Hz)' P.1Mhz.scalerTime P.pTRIG4.scalerRate 350 0 7000 500 0 200000 
 TH2D ptrig6rate_vs_time 'SHMS Trig6 Rate vs. Time; 1 MHz Clock Time (s); pTRIG6 Rate (Hz)' P.1Mhz.scalerTime P.pTRIG6.scalerRate 350 0 7000 500 0 200000 
 
+#--------------------------------------------
+#SHMS TRIG PEDESTALS for HGC, NGC, PRESHWR
+#--------------------------------------------
+
+TH1F ptrig_phgc_sum_pped     'SHMS Heavy Gas Sum FADC Pulse Pedestal; Pulse Pedestal; Number of Entries / 2 mV' T.shms.pHGCER_adcPed      500 0 1000  T.shms.pHGCER_adcPed>0.0
+TH1F ptrig_pngc_sum_pped     'SHMS Noble Gas Sum FADC Pulse Pedestal; Pulse Pedestal; Number of Entries / 2 mV' T.shms.pNGCER_adcPed      500 0 1000  T.shms.pNGCER_adcPed>0.0
+TH1F ptrig_prshwr_sum_pped   'SHMS Preshwr Sum FADC pulse Pedestal; Pulse Pedestal; Number of entries /2 mV'    T.shms.pPSHWR_adcPed      500 0 1000  T.shms.pPSHWR_adcPed>0.0
+TH1F ptrig_phgc_sum_MOD_pped 'SHMS Heavy Gas Sum FADC Pulse Pedestal; Pulse Pedestal; Number of Entries / 2 mV' T.shms.pHGCER_MOD_adcPed  500 0 1000  T.shms.pHGCER_MOD_adcPed>0.0
+TH1F ptrig_pngc_sum_MOD_pped 'SHMS Heavy Gas Sum FADC Pulse Pedestal; Pulse Pedestal; Number of Entries / 2 mV' T.shms.pNGCER_MOD_adcPed  500 0 1000  T.shms.pNGCER_MOD_adcPed>0.0
\ No newline at end of file
diff --git a/DEF-files/SHMS/PRODUCTION/pstackana_production.def b/DEF-files/SHMS/PRODUCTION/pstackana_production.def
index a1e03b974c1c91f01f2c14012b1072e62c42e464..6f5f2be78ecb7e56c3dd1ba818fa4662f841516b 100644
--- a/DEF-files/SHMS/PRODUCTION/pstackana_production.def
+++ b/DEF-files/SHMS/PRODUCTION/pstackana_production.def
@@ -1,7 +1,6 @@
 #include "DEF-files/SHMS/PRODUCTION/AERO/paero_histos.def"
 #include "DEF-files/SHMS/PRODUCTION/CAL/pcal_histos.def"
 #include "DEF-files/SHMS/PRODUCTION/DC/pdc_histos.def"
-#include "DEF-files/SHMS/PRODUCTION/EPICS/pepics_vars.def"
 #include "DEF-files/SHMS/PRODUCTION/GTR/pgtr_histos.def"
 #include "DEF-files/SHMS/PRODUCTION/HGCER/phgcer_histos.def"
 #include "DEF-files/SHMS/PRODUCTION/HODO/phodo_histos.def"
@@ -11,3 +10,6 @@
 #include "DEF-files/SHMS/PRODUCTION/TRIG/ptrig_histos.def"
 #include "DEF-files/SHMS/PRODUCTION/REACT/preact_histos.def"
 #include "DEF-files/SHMS/PRODUCTION/PID/ppid_histos.def"
+#include "DEF-files/SHMS/PRODUCTION/GTR/pgtr_vars.def"
+#include "DEF-files/SHMS/PRODUCTION/PID/ppid_vars.def"
+#include "DEF-files/SHMS/PRODUCTION/EPICS/pepics_vars.def"
diff --git a/DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def b/DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def
deleted file mode 100644
index 828356bb09d3f7e52614aac1b7d19e475f12a804..0000000000000000000000000000000000000000
--- a/DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def
+++ /dev/null
@@ -1,282 +0,0 @@
-# Report file for SHMS stack
-
-Block: RawDecode
-
-Pedestal_event       g.evtyp == 99
-SHMS_event           g.evtyp == 1
-HMS_event            g.evtyp == 2
-BOTH_SINGLES_event   g.evtyp == 3
-COIN_ONLY_event      g.evtyp == 4
-SHMS_COIN_event      g.evtyp == 5
-HMS_COIN_event       g.evtyp == 6 
-COIN_ALL_event       g.evtyp == 7
-ALL_events           SHMS_event || HMS_event || BOTH_SINGLES_event || COIN_ONLY_event || COIN_ALL_event
-
-RawDecode_master  1
-
-Block: Decode
-
-pcut_TRIG1         T.shms.pTRIG1_tdcTimeRaw > 0
-pcut_TRIG2         T.shms.pTRIG2_tdcTimeRaw > 0
-pcut_TRIG3         T.shms.pTRIG3_tdcTimeRaw > 0
-SHMS_Pretrig  pcut_TRIG1 || pcut_TRIG2 || pcut_TRIG3
-
-shms_trigs        SHMS_event
-pcut_edtm_accepted     T.shms.pEDTM_tdcTime != 0.0
-pcut_physics_accepted  T.shms.pEDTM_tdcTime == 0.0
-
-pcut_good_S1_time         T.shms.p1T_tdcTime > 241 && T.shms.p1T_tdcTime < 243
-pcut_good_S2X_time        T.shms.p2X_tdcTime > 180 && T.shms.p2X_tdcTime < 220
-pcut_good_S1_S2X_time     pcut_good_S1_time && pcut_good_S2X_time
-
-ALL_SHMS_NO_EDTM          ALL_events && pcut_physics_accepted
-
-
-Decode_master     ALL_SHMS_NO_EDTM
-
-Block: CoarseTracking
-CoarseTracking_master ALL_SHMS_NO_EDTM
-
-# Add cuts to stricter times and apply them to drift distances 
-pcut_time_cut1      P.dc.1u1.time > 0 && P.dc.1u1.time < 250
-pcut_time_cut2      P.dc.1u2.time > 0 && P.dc.1u2.time < 250
-pcut_time_cut3      P.dc.1x1.time > 0 && P.dc.1x1.time < 250
-pcut_time_cut4      P.dc.1x2.time > 0 && P.dc.1x2.time < 250
-pcut_time_cut5      P.dc.1v1.time > 0 && P.dc.1v1.time < 250
-pcut_time_cut6      P.dc.1v2.time > 0 && P.dc.1v2.time < 250
-pcut_time_cut7      P.dc.2v2.time > 0 && P.dc.2v2.time < 250
-pcut_time_cut8      P.dc.2v1.time > 0 && P.dc.2v1.time < 250
-pcut_time_cut9      P.dc.2x2.time > 0 && P.dc.2x2.time < 250
-pcut_time_cut10     P.dc.2x1.time > 0 && P.dc.2x1.time < 250
-pcut_time_cut11     P.dc.2u2.time > 0 && P.dc.2u2.time < 250
-pcut_time_cut12     P.dc.2u1.time > 0 && P.dc.2u1.time < 250
-
-shmsDC1Planes_large     (P.dc.1x1.nhit + P.dc.1u2.nhit + P.dc.1u1.nhit + P.dc.1v1.nhit + P.dc.1x2.nhit + P.dc.1v2.nhit) > 20
-shmsDC2Planes_large     (P.dc.2x1.nhit + P.dc.2u2.nhit + P.dc.2u1.nhit + P.dc.2v1.nhit + P.dc.2x2.nhit + P.dc.2v2.nhit) > 20 
-
-shms_ch1_gt0           P.dc.Ch1.nhit > 0
-shms_ch2_gt0           P.dc.Ch2.nhit > 0
-shms_ch_gt0            P.dc.Ch2.nhit > 0  && P.dc.Ch1.nhit > 0
-shms_ch_gt4            P.dc.Ch2.nhit > 3  && P.dc.Ch1.nhit > 3
-shms_ch2_gt0_noch1     P.dc.Ch2.nhit > 0  && P.dc.Ch1.nhit == 0
-shms_ch1_gt0_noch2     P.dc.Ch1.nhit > 0  && P.dc.Ch2.nhit == 0
-shms_noch1_noch2       P.dc.Ch1.nhit == 0 && P.dc.Ch2.nhit == 0
-shms_ch_gt0_track      shms_ch_gt0 && P.dc.ntrack > 0
-shms_ch_gt4_track      shms_ch_gt4 && P.dc.ntrack > 0
-
-shms_ch1_gt0_gtime           P.dc.Ch1.nhit > 0 && pcut_good_S1_S2X_time
-shms_ch2_gt0_gtime           P.dc.Ch2.nhit > 0 && pcut_good_S1_S2X_time
-shms_ch_gt0_gtime            P.dc.Ch2.nhit > 0 && P.dc.Ch1.nhit > 0 && pcut_good_S1_S2X_time
-shms_ch_gt4_gtime            P.dc.Ch2.nhit > 3 && P.dc.Ch1.nhit > 3 && pcut_good_S1_S2X_time
-shms_ch2_gt0_noch1_gtime     P.dc.Ch2.nhit > 0 && P.dc.Ch1.nhit == 0 && pcut_good_S1_S2X_time
-shms_ch1_gt0_noch2_gtime     P.dc.Ch1.nhit > 0 && P.dc.Ch2.nhit == 0 && pcut_good_S1_S2X_time
-shms_noch1_noch2_gtime       P.dc.Ch1.nhit == 0 && P.dc.Ch2.nhit == 0 && pcut_good_S1_S2X_time
-shms_ch_gt0_track_gtime      shms_ch_gt0 && P.dc.ntrack > 0 && pcut_good_S1_S2X_time
-shms_ch_gt4_track_gtime      shms_ch_gt4 && P.dc.ntrack > 0 && pcut_good_S1_S2X_time
-
-shmsDC1_1hit_x1     P.dc.1x1.nhit == 1
-shmsDC1_1hit_u1     P.dc.1u1.nhit == 1
-shmsDC1_1hit_u2     P.dc.1u2.nhit == 1
-shmsDC1_1hit_v1     P.dc.1v1.nhit == 1
-shmsDC1_1hit_v2     P.dc.1v2.nhit == 1
-shmsDC1_1hit_x2     P.dc.1x2.nhit == 1
-
-shmsDC2_1hit_x1     P.dc.2x1.nhit == 1
-shmsDC2_1hit_u1	    P.dc.2u1.nhit == 1
-shmsDC2_1hit_u2     P.dc.2u2.nhit == 1
-shmsDC2_1hit_v1     P.dc.2v1.nhit == 1
-shmsDC2_1hit_v2     P.dc.2v2.nhit == 1
-shmsDC2_1hit_x2     P.dc.2x2.nhit == 1
-
-p1hit1     P.dc.1x1.nhit >= 1
-p1hit2     P.dc.1u1.nhit >= 1
-p1hit3     P.dc.1u2.nhit >= 1
-p1hit4     P.dc.1v1.nhit >= 1
-p1hit5     P.dc.1v2.nhit >= 1
-p1hit6     P.dc.1x2.nhit >= 1
-
-p2hit1     P.dc.2x1.nhit >= 1
-p2hit2     P.dc.2u1.nhit >= 1
-p2hit3     P.dc.2u2.nhit >= 1
-p2hit4     P.dc.2v1.nhit >= 1
-p2hit5     P.dc.2v2.nhit >= 1
-p2hit6     P.dc.2x2.nhit >= 1
-
-shmsDC1Planes6hits     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
-shmsDC2Planes6hits     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
-
-shmsDC1_5hits_x1     shmsDC1_1hit_u1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
-shmsDC1_6hits_x1     p1hit1 && shmsDC1_1hit_u1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
-shmsDC1_5hits_u1     shmsDC1_1hit_x1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
-shmsDC1_6hits_u1     p1hit2 && shmsDC1_1hit_x1 && shmsDC1_1hit_u2 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
-shmsDC1_5hits_u2     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
-shmsDC1_6hits_u2     p1hit3 && shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_v1 && shmsDC1_1hit_v2
-shmsDC1_5hits_v1     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_u2 && shmsDC1_1hit_v2
-shmsDC1_6hits_v1     p1hit4 && shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_u2 && shmsDC1_1hit_v2
-shmsDC1_5hits_v2     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_u2 && shmsDC1_1hit_v1
-shmsDC1_6hits_v2     p1hit5 && shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_x2 && shmsDC1_1hit_u2 && shmsDC1_1hit_v1
-shmsDC1_5hits_x2     shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_v1 && shmsDC1_1hit_u2 && shmsDC1_1hit_v2
-shmsDC1_6hits_x2     p1hit6 && shmsDC1_1hit_x1 && shmsDC1_1hit_u1 && shmsDC1_1hit_v1 && shmsDC1_1hit_u2 && shmsDC1_1hit_v2
-
-shmsDC2_5hits_x1     shmsDC2_1hit_u1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
-shmsDC2_6hits_x1     p2hit1 && shmsDC2_1hit_u1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
-shmsDC2_5hits_u1     shmsDC2_1hit_x1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
-shmsDC2_6hits_u1     p2hit2 && shmsDC2_1hit_x1 && shmsDC2_1hit_u2 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
-shmsDC2_5hits_u2     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
-shmsDC2_6hits_u2     p2hit3 && shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_v1 && shmsDC2_1hit_v2
-shmsDC2_5hits_v1     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_u2 && shmsDC2_1hit_v2
-shmsDC2_6hits_v1     p2hit4 && shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_u2 && shmsDC2_1hit_v2
-shmsDC2_5hits_v2     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_u2 && shmsDC2_1hit_v1
-shmsDC2_6hits_v2     p2hit5 && shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_x2 && shmsDC2_1hit_u2 && shmsDC2_1hit_v1
-shmsDC2_5hits_x2     shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_v1 && shmsDC2_1hit_u2 && shmsDC2_1hit_v2
-shmsDC2_6hits_x2     p2hit6 && shmsDC2_1hit_x1 && shmsDC2_1hit_u1 && shmsDC2_1hit_v1 && shmsDC2_1hit_u2 && shmsDC2_1hit_v2
-
-shms1HitsLt     P.dc.Ch1.nhit <= P.dc.Ch1.maxhits && g.evtyp == 1
-shms2HitsLt     P.dc.Ch2.nhit <= P.dc.Ch2.maxhits && g.evtyp == 1
-shmsHitsLt      P.dc.Ch1.nhit <= P.dc.Ch1.maxhits && P.dc.Ch2.nhit <= P.dc.Ch2.maxhits && g.evtyp == 1
-
-shmsDC1PlanesGT     (p1hit1 + p1hit2 + p1hit3 + p1hit4 + p1hit5 + p1hit6 ) >= 5
-shmsDC2PlanesGT     (p2hit1 + p2hit2 + p2hit3 + p2hit4 + p2hit5 + p2hit6 ) >= 5
-shmsPlanesGT        shmsDC1PlanesGT && shmsDC2PlanesGT
-shmsHitsPlanes      (P.dc.Ch1.nhit <= 6) && (P.dc.Ch2.nhit <= 6) && shmsPlanesGT
-
-pSpacePoints         P.dc.Ch1.spacepoints >= 1 && P.dc.Ch2.spacepoints >= 1
-pSpacePointsStub     P.dc.stubtest == 1 && P.dc.Ch1.spacepoints >= 1 && P.dc.Ch2.spacepoints >= 1
-pcut_FoundTrack      P.dc.ntrack > 0 
-pStubLT              P.dc.stubtest == 1
-f1PSpacePoints       shms1HitsLt && shmsDC1PlanesGT && P.dc.Ch1.spacepoints == 0 && g.evtyp == 1
-f2PSpacePoints       shms2HitsLt && shmsDC2PlanesGT && P.dc.Ch2.spacepoints == 0 && g.evtyp == 1
-
-pTest1     shmsHitsPlanes && (!pSpacePoints)
-pTest2	   pSpacePoints && (!pStubLT)
-
-Block: CoarseReconstruct
-CoarseReconstruct_master ALL_SHMS_NO_EDTM
-
-Block: Tracking
-Tracking_master  ALL_SHMS_NO_EDTM
-
-Block: Reconstruct
-Reconstruct_master ALL_SHMS_NO_EDTM
-
-pcut_cer_ng_elec    	  P.ngcer.npeSum > 0.5
-pcut_cer_ng_pi      	  P.ngcer.npeSum <= 0.5
-pcut_cer_hg_elec	  P.hgcer.npeSum > 0.5
-pcut_cer_hg_pi	  	  P.hgcer.npeSum <= 0.5
-pcut_cer_pi_both       	  pcut_cer_ng_pi && pcut_cer_hg_pi
-pcut_cer_elec_both     	  pcut_cer_ng_elec && pcut_cer_hg_elec
-pcut_cal_elec          	  P.cal.etracknorm > 0.6 && P.cal.etracknorm < 1.6
-pcut_cal_pi            	  P.cal.etracknorm <= 0.6 && P.cal.etracknorm > 0.
-pcut_elec_all          	  pcut_cer_ng_elec && pcut_cer_hg_elec && pcut_cal_elec
-pcut_pi_all            	  pcut_cer_ng_pi && pcut_cer_hg_pi && pcut_cal_pi
-
-shmsScinGood        P.hod.goodscinhit == 1
-shmsScinShould      shmsScinGood 
-shmsScinShoulde     shmsScinGood &&  P.cal.etotnorm > 0.6 && P.cal.etotnorm < 1.6 && P.hgcer.npeSum > 0.5
-shmsScinShouldh     shmsScinGood && P.cal.etotnorm <= 0.6 && P.cal.etotnorm > 0. && P.hgcer.npeSum < 0.5
-shmsScinDid         shmsScinShould && P.dc.ntrack > 0
-shmsScinDide        shmsScinShoulde && P.dc.ntrack > 0
-shmsScinDidh        shmsScinShouldh && P.dc.ntrack > 0
-
-pcut_goodHDC1x1     P.dc.1x1.nhit > 0 && P.dc.1x1.nhit < 3
-pcut_goodHDC1u2     P.dc.1u2.nhit > 0 && P.dc.1u2.nhit < 3
-pcut_goodHDC1u1     P.dc.1u1.nhit > 0 && P.dc.1u1.nhit < 3
-pcut_goodHDC1v1     P.dc.1v1.nhit > 0 && P.dc.1v1.nhit < 3
-pcut_goodHDC1v2     P.dc.1v2.nhit > 0 && P.dc.1v2.nhit < 3
-pcut_goodHDC1x2     P.dc.1x2.nhit > 0 && P.dc.1x2.nhit < 3
-
-pcut_goodHDC2x1     P.dc.2x1.nhit > 0 && P.dc.2x1.nhit < 3
-pcut_goodHDC2u2     P.dc.2u2.nhit > 0 && P.dc.2u2.nhit < 3
-pcut_goodHDC2u1     P.dc.2u1.nhit > 0 && P.dc.2u1.nhit < 3
-pcut_goodHDC2v1     P.dc.2v1.nhit > 0 && P.dc.2v1.nhit < 3
-pcut_goodHDC2v2     P.dc.2v2.nhit > 0 && P.dc.2v2.nhit < 3
-pcut_goodHDC2x2     P.dc.2x2.nhit > 0 && P.dc.2x2.nhit < 3
-
-pcut_goodHDC1     pcut_goodHDC1x1  && pcut_goodHDC1u2 && pcut_goodHDC1u1 && pcut_goodHDC1v1 && pcut_goodHDC1v2 && pcut_goodHDC1x2 
-pcut_goodHDC2     pcut_goodHDC2x1  && pcut_goodHDC2u2 && pcut_goodHDC2u1 && pcut_goodHDC2v1 && pcut_goodHDC2v2 && pcut_goodHDC2x2 
-pcut_bothGood     pcut_goodHDC1 && pcut_goodHDC2
-
-pcut_realhdc1x1     pcut_goodHDC1x1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc1u2     pcut_goodHDC1u2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc1u1     pcut_goodHDC1u1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc1v1     pcut_goodHDC1v1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc1v2     pcut_goodHDC1v2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc1x2     pcut_goodHDC1x2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-
-pcut_realhdc2x1     pcut_goodHDC2x1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc2u2     pcut_goodHDC2u2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc2u1     pcut_goodHDC2u1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc2v1     pcut_goodHDC2v1 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc2v2     pcut_goodHDC2v2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-pcut_realhdc2x2     pcut_goodHDC2x2 && ((P.dc.Ch1.spacepoints + P.dc.Ch2.spacepoints) > 0)
-
-pcut_Found1Track     P.dc.ntrack == 1
-pcut_Found2Track     P.dc.ntrack == 2
-pcut_Found3Track     P.dc.ntrack == 3
-pcut_Found4Track     P.dc.ntrack == 4
-
-pcut_CleanTrack      P.gtr.index > -1
-pcut_Clean1Track     P.gtr.index == 0
-pcut_Clean2Track     P.gtr.index == 1
-pcut_Clean3Track     P.gtr.index == 2
-pcut_Clean4Track     P.gtr.index == 3
-
-pcut_CleanTrack_cer_elec     (P.gtr.index > -1) && pcut_cer_elec_both
-pcut_p1hit1_cer_elec	     p1hit1 && pcut_cer_elec_both
-pcut_CleanTrack_cal_elec     (P.gtr.index > -1) && pcut_cal_elec
-pcut_p1hit1_cal_elec         p1hit1 && pcut_cal_elec
-
-pcut_anys1x     P.hod.1x.nhits > 0
-pcut_anys1y     P.hod.1y.nhits > 0
-pcut_anys2x     P.hod.2x.nhits > 0
-pcut_anys2y     P.hod.2y.nhits > 0
-
-pcut_goods1x      P.hod.1x.nhits > 0 && P.hod.1x.nhits < 3
-pcut_goods1y      P.hod.1y.nhits > 0 && P.hod.1y.nhits < 3
-pcut_goods1       pcut_goods1x && pcut_goods1y
-pcut_goods2x      P.hod.2x.nhits > 0 && P.hod.2x.nhits < 3
-pcut_goods2y      P.hod.2y.nhits > 0 && P.hod.2y.nhits < 3
-pcut_goods2       pcut_goods2x && pcut_goods2y
-pcut_goods1s2     pcut_goods1 && pcut_goods2
-
-SHMS_hgcer_track_matched_region_1 P.hgcer.numTracksMatched[0]>0
-SHMS_hgcer_track_fired_region_1 P.hgcer.numTracksFired[0]>0
-SHMS_hgcer_track_matched_region_2 P.hgcer.numTracksMatched[1]>0
-SHMS_hgcer_track_fired_region_2 P.hgcer.numTracksFired[1]>0
-SHMS_hgcer_track_matched_region_3 P.hgcer.numTracksMatched[2]>0
-SHMS_hgcer_track_fired_region_3 P.hgcer.numTracksFired[2]>0
-SHMS_hgcer_track_matched_region_4 P.hgcer.numTracksMatched[3]>0
-SHMS_hgcer_track_fired_region_4 P.hgcer.numTracksFired[3]>0
-SHMS_hgcer_track_matched_tot P.hgcer.totNumTracksMatched>0
-SHMS_hgcer_track_fired_tot P.hgcer.totNumTracksFired>0
-
-SHMS_ngcer_track_matched_region_1 P.ngcer.numTracksMatched[0]>0
-SHMS_ngcer_track_fired_region_1 P.ngcer.numTracksFired[0]>0
-SHMS_ngcer_track_matched_region_2 P.ngcer.numTracksMatched[1]>0
-SHMS_ngcer_track_fired_region_2 P.ngcer.numTracksFired[1]>0
-SHMS_ngcer_track_matched_region_3 P.ngcer.numTracksMatched[2]>0
-SHMS_ngcer_track_fired_region_3 P.ngcer.numTracksFired[2]>0
-SHMS_ngcer_track_matched_region_4 P.ngcer.numTracksMatched[3]>0
-SHMS_ngcer_track_fired_region_4 P.ngcer.numTracksFired[3]>0
-SHMS_ngcer_track_matched_tot P.ngcer.totNumTracksMatched>0
-SHMS_ngcer_track_fired_tot P.ngcer.totNumTracksFired>0
-
-SHMS_aero_track_matched_region_1 P.aero.numTracksMatched[0]>0
-SHMS_aero_track_fired_region_1 P.aero.numTracksFired[0]>0
-SHMS_aero_track_matched_region_2 P.aero.numTracksMatched[1]>0
-SHMS_aero_track_fired_region_2 P.aero.numTracksFired[1]>0
-SHMS_aero_track_matched_region_3 P.aero.numTracksMatched[2]>0
-SHMS_aero_track_fired_region_3 P.aero.numTracksFired[2]>0
-SHMS_aero_track_matched_region_4 P.aero.numTracksMatched[3]>0
-SHMS_aero_track_fired_region_4 P.aero.numTracksFired[3]>0
-SHMS_aero_track_matched_region_5 P.aero.numTracksMatched[4]>0
-SHMS_aero_track_fired_region_5 P.aero.numTracksFired[4]>0
-SHMS_aero_track_matched_region_6 P.aero.numTracksMatched[5]>0
-SHMS_aero_track_fired_region_6 P.aero.numTracksFired[5]>0
-SHMS_aero_track_matched_region_7 P.aero.numTracksMatched[6]>0
-SHMS_aero_track_fired_region_7 P.aero.numTracksFired[6]>0
-SHMS_aero_track_matched_tot P.aero.totNumTracksMatched>0
-SHMS_aero_track_fired_tot P.aero.totNumTracksFired>0
-
-Block: Physics
-Physics_master ALL_SHMS_NO_EDTM
diff --git a/MAPS/COIN/DETEC/TRIG/cointrig.map b/MAPS/COIN/DETEC/TRIG/cointrig.map
index f053837cf40986dd9575dff2f0bc7d83910e8a7a..8ad2b5d015a3d5633d29cfcd9ac2826fcc14fd57 100644
--- a/MAPS/COIN/DETEC/TRIG/cointrig.map
+++ b/MAPS/COIN/DETEC/TRIG/cointrig.map
@@ -122,6 +122,8 @@ REFINDEX=3
      1,       1,     11,     0 ! pHGCER
      2,       1,     12,     0 ! pNGCER
      3,       1,     13,     0 ! pPSHWR
+     4,       1,     15,     0 ! pHGCER_MOD
+     5,       1,     16,     0 ! pNGCER_MOD
     11,       1,     14,     0 ! pFADC_TREF_ROC2
 
 ! F250 module
diff --git a/MAPS/COIN/DETEC/coin.map b/MAPS/COIN/DETEC/coin.map
index 74a3cf060261bb56c8ff763c2322d900cecbde93..180929621ab2fe801a9c3abc5c2e7bfd5cb0ece6 100644
--- a/MAPS/COIN/DETEC/coin.map
+++ b/MAPS/COIN/DETEC/coin.map
@@ -3865,6 +3865,8 @@ REFINDEX=3
    1,   1,  11,   0  ! pHGCER
    2,   1,  12,   0  ! pNGCER
    3,   1,  13,   0  ! pPSHWR
+   4,   1,  15,   0  ! pHGCER_MOD
+   5,   1,  16,   0  ! pNGCER_MOD
   11,   1,  14,   0  ! pFADC_TREF_ROC2
 
 SLOT=20
diff --git a/MAPS/SHMS/DETEC/AERO/paero_ptrig.map b/MAPS/SHMS/DETEC/AERO/paero_ptrig.map
index 4b37e9c4b957940fcb37850c39439d8ffbb5baba..c42d2564f38628df86496a841f7ec326f4308b27 100644
--- a/MAPS/SHMS/DETEC/AERO/paero_ptrig.map
+++ b/MAPS/SHMS/DETEC/AERO/paero_ptrig.map
@@ -13,6 +13,8 @@ REFINDEX=3
    1,   1,   2,   0  ! pHGCER
    2,   1,   3,   0  ! pNGCER
    3,   1,   4,   0  ! pPSHWR
+   4,   1,   6,   0  ! pHGCER_MOD
+   5,   1,   7,   0  ! pNGCER_MOD
   11,   1,   5,   0  ! pFADC_TREF_ROC2
 
 SLOT=20
diff --git a/MAPS/SHMS/DETEC/CAL/pcal_ptrig.map b/MAPS/SHMS/DETEC/CAL/pcal_ptrig.map
index 540ba6fa11b85a594d6a7fcee72e961e18b979a5..a14b1b2ff8364a5566242d798b97d6f84cba1eed 100644
--- a/MAPS/SHMS/DETEC/CAL/pcal_ptrig.map
+++ b/MAPS/SHMS/DETEC/CAL/pcal_ptrig.map
@@ -13,6 +13,8 @@ REFINDEX=3
    1,   1,   2,   0  ! pHGCER
    2,   1,   3,   0  ! pNGCER
    3,   1,   4,   0  ! pPSHWR
+   4,   1,   6,   0  ! pHGCER_MOD
+   5,   1,   7,   0  ! pNGCER_MOD
   11,   1,   5,   0  ! pFADC_TREF_ROC2
 
 SLOT=20
diff --git a/MAPS/SHMS/DETEC/DC/pdc_ptrig.map b/MAPS/SHMS/DETEC/DC/pdc_ptrig.map
index 9a342b2f0ef8c6163e41a935382ec2921cdc9f10..c2cb7becaf96e5ecb566e5a6d59c605808460b71 100644
--- a/MAPS/SHMS/DETEC/DC/pdc_ptrig.map
+++ b/MAPS/SHMS/DETEC/DC/pdc_ptrig.map
@@ -13,6 +13,8 @@ REFINDEX=3
    1,   1,   2,   0  ! pHGCER
    2,   1,   3,   0  ! pNGCER
    3,   1,   4,   0  ! pPSHWR
+   4,   1,   6,   0  ! pHGCER_MOD
+   5,   1,   7,   0  ! pNGCER_MOD
   11,   1,   5,   0  ! pFADC_TREF_ROC2
 
 SLOT=20
diff --git a/MAPS/SHMS/DETEC/HGCER/phgcer_ptrig.map b/MAPS/SHMS/DETEC/HGCER/phgcer_ptrig.map
index 619e65ebb3e15778bc675407b1188d2f90594ccf..1fae6fb514026f23be0e8d4a57fc36333cc448fd 100644
--- a/MAPS/SHMS/DETEC/HGCER/phgcer_ptrig.map
+++ b/MAPS/SHMS/DETEC/HGCER/phgcer_ptrig.map
@@ -13,6 +13,8 @@ REFINDEX=3
    1,   1,   2,   0  ! pHGCER
    2,   1,   3,   0  ! pNGCER
    3,   1,   4,   0  ! pPSHWR
+   4,   1,   6,   0  ! pHGCER_MOD
+   5,   1,   7,   0  ! pNGCER_MOD
   11,   1,   5,   0  ! pFADC_TREF_ROC2
 
 SLOT=20
diff --git a/MAPS/SHMS/DETEC/NGCER/pngcer_ptrig.map b/MAPS/SHMS/DETEC/NGCER/pngcer_ptrig.map
index 3ae0503ceb0a342f03721b0a3cb6b6deb35fdb70..b117ca1dc7940e69e3801aae11b765a672d19635 100644
--- a/MAPS/SHMS/DETEC/NGCER/pngcer_ptrig.map
+++ b/MAPS/SHMS/DETEC/NGCER/pngcer_ptrig.map
@@ -13,6 +13,8 @@ REFINDEX=3
    1,   1,   2,   0  ! pHGCER
    2,   1,   3,   0  ! pNGCER
    3,   1,   4,   0  ! pPSHWR
+   4,   1,   6,   0  ! pHGCER_MOD
+   5,   1,   7,   0  ! pNGCER_MOD
   11,   1,   5,   0  ! pFADC_TREF_ROC2
 
 SLOT=20
diff --git a/MAPS/SHMS/DETEC/STACK/shms_stack.map b/MAPS/SHMS/DETEC/STACK/shms_stack.map
index b5ffcc97dca7bbdd12c3c9cae877f337e0420473..23fb47db60b82015821a4f6a9fde39ee9acbf7b0 100644
--- a/MAPS/SHMS/DETEC/STACK/shms_stack.map
+++ b/MAPS/SHMS/DETEC/STACK/shms_stack.map
@@ -19,6 +19,8 @@ REFINDEX=3
    1,   1,   2,   0  ! pHGCER
    2,   1,   3,   0  ! pNGCER
    3,   1,   4,   0  ! pPSHWR
+   4,   1,   6,   0  ! pHGCER_MOD
+   5,   1,   7,   0  ! pNGCER_MOD
   11,   1,   5,   0  ! pFADC_TREF_ROC2
 
 SLOT=20
diff --git a/MAPS/SHMS/DETEC/TRIG/ptrig.map b/MAPS/SHMS/DETEC/TRIG/ptrig.map
index a1c9d32ca7006b71eb8311c45deed3369871cc02..3d2413eaf8b3cf26054f0a4b83d62f236c9e53f6 100644
--- a/MAPS/SHMS/DETEC/TRIG/ptrig.map
+++ b/MAPS/SHMS/DETEC/TRIG/ptrig.map
@@ -17,8 +17,10 @@ REFINDEX=3
      1,      1,      2,     0 ! pHGCER
      2,      1,      3,     0 ! pNGCER
      3,      1,      4,     0 ! pPSHWR
+     4,      1,      6,     0 ! pHGCER_MOD
+     5,      1,      7,     0 ! pNGCER_MOD
     11,      1,      5,     0 ! pFADC_TREF_ROC2
-
+    
 ! CAEN1190 module
 SLOT=20
 REFINDEX=1
diff --git a/PARAM/GEN/gbeam.param b/PARAM/GEN/gbeam.param
index 22f2039d8052aa9cfecb8a2e926cb618e1ac6f06..66d10468bf535e5e6118606198a397198d59cfc3 100644
--- a/PARAM/GEN/gbeam.param
+++ b/PARAM/GEN/gbeam.param
@@ -22,31 +22,19 @@ calculating beam position
 ; Various fast raster quantities: gUse* are flags
 
 
- ; gfr_cal_mom  = 6.4  ; = beam momnetum during calibration run 
-   gfr_cal_mom  = 2.218  ; = beam momentum during Winter '17 run             
-      
- ; gfrxa_adcpercm = 97666.7;
- ; gfrxb_adcpercm = 97333.3;
- ; gfrya_adcpercm = 113667;
- ; gfryb_adcpercm = 114333;
-
- ; gfrxa_adc_zero_offset = 67800;
- ; gfrxb_adc_zero_offset = 69050;
- ; gfrya_adc_zero_offset = 67700;
- ; gfryb_adc_zero_offset = 67000;
-
-  ; raster constants from Winter '17 Commissioning shms run 1565
-
-    gfrya_adcpercm = 56333.3;
-    gfryb_adcpercm = 56000;
-    gfrxa_adcpercm = 67000.0;
-    gfrxb_adcpercm = 62666.6;
-
-    gfrya_adc_zero_offset = 67200;
-    gfryb_adc_zero_offset = 65650;
-    gfrxa_adc_zero_offset = 65200;
-    gfrxb_adc_zero_offset = 67050;
-
+  gfr_cal_mom  = 6.4  ; = beam momnetum during jan 2018 3 pass 
+       
+  gfrya_adcpercm = (77755.-57411.)/.2;
+  gfryb_adcpercm = (71093.-52056.)/.2;
+  gfrxa_adcpercm = (75733.-51938.)/.2;
+  gfrxb_adcpercm =  (79778.-57293.)/.2;
+
+  gfrya_adc_zero_offset = (77755.+57411.)/2.;
+  gfryb_adc_zero_offset = (71093.+52056.)/2.;
+  gfrxa_adc_zero_offset = (75733.+51938.)/2.;
+  gfrxb_adc_zero_offset = (79778.+57293.)/2. ;
+
+ 
 ; positions of FR magnets relative to target
   gfrx_dist  = 1375   ; cm
   gfry_dist  = 1337   ; cm
diff --git a/PARAM/GEN/gscalers.param b/PARAM/GEN/gscalers.param
index 53b5ed81ed08e78994d88c5fcb48d3638a4e1fdd..d6b315d2d368e61c2346d1b8e457d56248989c7c 100644
--- a/PARAM/GEN/gscalers.param
+++ b/PARAM/GEN/gscalers.param
@@ -2,6 +2,6 @@ gNumBCMs=6
 gBCM_Gain = 4574,3847,4166,13560,6456.,2154.
 gBCM_Offset = 250200,250100,393000,-2994.0,-1148.0,-154.3
 gBCM_Names="BCM1 BCM2 Unser BCM4A BCM4B BCM17"
-gBCM_Current_threshold=0.5
+gBCM_Current_threshold=5.0
 ; index = 0 to gNumBCMs-1
 gBCM_Current_threshold_index=3
diff --git a/PARAM/HMS/GEN/htracking.param b/PARAM/HMS/GEN/htracking.param
index c2c0eb5d8ae292d975994152873566caec81645d..f75f06a11bd2d261d551cdc1eb0a4f9004615d14 100644
--- a/PARAM/HMS/GEN/htracking.param
+++ b/PARAM/HMS/GEN/htracking.param
@@ -29,11 +29,10 @@ hstub_max_xpdiff = .05
 ; hypt_track_criterion
 ; recommended value for hspace_point_criterion ( based on meeting
 ; Feb 2003) 
-       hxt_track_criterion  = 10.
-      ;hyt_track_criterion  = 4.
+       hxt_track_criterion  = 100.
        hyt_track_criterion  = 20.     ;for cosmics
-       hxpt_track_criterion = 0.2
-       hypt_track_criterion = 0.5
+       hxpt_track_criterion = 1.0
+       hypt_track_criterion = 1.0
 ;
 ; hsingle_stub            If .ne. 0 make a track of each single stub
   hsingle_stub = 0
@@ -92,4 +91,4 @@ hstub_max_xpdiff = .05
   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
+  htrack_eff_test_num_scin_planes = 4
diff --git a/PARAM/SHMS/GEN/ptracking.param b/PARAM/SHMS/GEN/ptracking.param
index 43e695b85c114a891512840601014ab1829a5ac8..b7507f54f21ee30f3b2c24a81f5439ce47c2de20 100644
--- a/PARAM/SHMS/GEN/ptracking.param
+++ b/PARAM/SHMS/GEN/ptracking.param
@@ -7,10 +7,10 @@
   pmax_pr_hits = 25, 25
 
 ; pminhit(i)   minimum number of hits in each space point (one for each chamber)
-pmin_hit = 5, 5
+pmin_hit = 4, 4
 ; 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)
-pmin_combos = 6, 6
+pmin_combos = 3, 3
 ; hspace_point_criterion(i) minimum separation of distinct space points
 ; recommended value for hspace_point_criterion ( based on meeting
 ; Feb 2003)
@@ -89,4 +89,4 @@ pntracks_max_fp = 10
   pyhiscin  = 7, 7
 ;  ptrack_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.
-  ptrack_eff_test_num_scin_planes = 3
+  ptrack_eff_test_num_scin_planes = 4
diff --git a/PARAM/TRIG/tcoin.param b/PARAM/TRIG/tcoin.param
index 144d3355a2d1f7e8db07ecea5ebebca92e0f6811..6e38bd8068bf5d1e8458e519d7f787087c26fd13 100644
--- a/PARAM/TRIG/tcoin.param
+++ b/PARAM/TRIG/tcoin.param
@@ -1,11 +1,11 @@
-t_coin_numAdc = 14
+t_coin_numAdc = 16
 t_coin_numTdc = 110
 t_coin_tdcoffset = 300.
 t_coin_adc_tdc_offset = 200.
 t_coin_tdcchanperns = 0.1
 
-; bar num:           1     2     3     4      5     6     7   8        9           10    11     12     13        14   
-t_coin_adcNames = "hASUM hBSUM hCSUM hDSUM hPSHWR hSHWR hAER hCER hFADC_TREF_ROC1 pAER pHGCER pNGCER pPSHWR pFADC_TREF_ROC2"
+; bar num:           1     2     3     4      5     6     7   8        9           10    11     12     13        14          15         16
+t_coin_adcNames = "hASUM hBSUM hCSUM hDSUM hPSHWR hSHWR hAER hCER hFADC_TREF_ROC1 pAER pHGCER pNGCER pPSHWR pFADC_TREF_ROC2 pHGCER_MOD pNGCER_MOD"
  
 ; bar num:          1   2   3   4   5   6   7    8     9     10    11   12    13    14    15    16  17    18      19      20      21        22         23          24          25          26          27          28           29         30          31          32          33       34  35  36  37  38  39  40  41  42   43    44     45     46      47      48      49      50      51      52      53      54       55     56      57     58        59          60          61          62          63          64         65          66          67          68          69         70           71          72            73          74            75            76           77          78            79          80          81            82             83           84            85          86           87            88           89           90           91          92           93           94             95           96           97           98          99          100          101          102          103         104          105          106          107         108          109          110
 t_coin_tdcNames = "h1X h1Y h2X h2Y h1T h2T hT1 hASUM hBSUM hCSUM hDSUM hPRLO hPRHI hSHWR hEDTM hCER hT2 hDCREF1 hDCREF2 hDCREF3 hDCREF4 hTRIG1_ROC1 hTRIG2_ROC1 hTRIG3_ROC1 hTRIG4_ROC1 hTRIG5_ROC1 hTRIG6_ROC1 pTRIG1_ROC1 pTRIG2_ROC1 pTRIG3_ROC1 pTRIG4_ROC1 pTRIG5_ROC1 pTRIG6_ROC1 pT1 pT2 p1X p1Y p2X p2Y p1T p2T pT3 pAER pHGCER pNGCER pDCREF1 pDCREF2 pDCREF3 pDCREF4 pDCREF5 pDCREF6 pDCREF7 pDCREF8 pDCREF9 pDCREF10 pEDTM  pPRLO  pPRHI  pTRIG1_ROC2 pTRIG2_ROC2 pTRIG3_ROC2 pTRIG4_ROC2 pTRIG5_ROC2 pTRIG6_ROC2 hTRIG1_ROC2 hTRIG2_ROC2 hTRIG3_ROC2 hTRIG4_ROC2 hTRIG5_ROC2 hTRIG6_ROC2 pSTOF_ROC2 pEL_LO_LO_ROC2 pEL_LO_ROC2 pEL_HI_ROC2 pEL_REAL_ROC2 pEL_CLEAN_ROC2 hSTOF_ROC2 hEL_LO_LO_ROC2 hEL_LO_ROC2 hEL_HI_ROC2 hEL_REAL_ROC2 hEL_CLEAN_ROC2 pSTOF_ROC1 pEL_LO_LO_ROC1 pEL_LO_ROC1 pEL_HI_ROC1 pEL_REAL_ROC1 pEL_CLEAN_ROC1 hSTOF_ROC1 hEL_LO_LO_ROC1 hEL_LO_ROC1 hEL_HI_ROC1 hEL_REAL_ROC1 hEL_CLEAN_ROC1 pPRE40_ROC1 pPRE100_ROC1 pPRE150_ROC1 pPRE200_ROC1 hPRE40_ROC1 hPRE100_ROC1 hPRE150_ROC1 hPRE200_ROC1 pPRE40_ROC2 pPRE100_ROC2 pPRE150_ROC2 pPRE200_ROC2 hPRE40_ROC2 hPRE100_ROC2 hPRE150_ROC2 hPRE200_ROC2"
diff --git a/PARAM/TRIG/tshms.param b/PARAM/TRIG/tshms.param
index 399843ac2754699334f24439f97e4d94a3d65596..d8ba2862f836647bffc45b19c04420b1a7392077 100644
--- a/PARAM/TRIG/tshms.param
+++ b/PARAM/TRIG/tshms.param
@@ -1,12 +1,12 @@
-t_shms_numAdc = 5
+t_shms_numAdc = 7
 t_shms_numTdc = 57
 
 t_shms_tdcoffset = 300.
 t_shms_adc_tdc_offset = 200.
 t_shms_tdcchanperns = 0.1
 
-; bar num:          1      2      3      4         5
-t_shms_adcNames = "pAER pHGCER pNGCER pPSHWR pFADC_TREF_ROC2"
+; bar num:          1      2      3      4         5             6          7
+t_shms_adcNames = "pAER pHGCER pNGCER pPSHWR pFADC_TREF_ROC2 pHGCER_MOD pNGCER_MOD"
 
 ; BAR NUM:          1   2   3   4   5   6   7   8   9   10    11     12     13      14      15      16      17      18      19      20      21       22     23    24     25      26     27      28     29     30    31     32     33     34     35     36     37    38       39      40     41      42        43     44       45      46     47     48        49       50     51      52      53      54     55      56      57
 t_shms_tdcNames = "pT1 pT2 p1X p1Y p2X p2Y p1T p2T pT3 pAER pHGCER pNGCER pDCREF1 pDCREF2 pDCREF3 pDCREF4 pDCREF5 pDCREF6 pDCREF7 pDCREF8 pDCREF9 pDCREF10 pEDTM pPRLO  pPRHI  pTRIG1 pTRIG2 pTRIG3 pTRIG4 pTRIG5 pTRIG6 hTRIG1 hTRIG2 hTRIG3 hTRIG4 hTRIG5 hTRIG6 pSTOF pEL_LO_LO pEL_LO pEL_HI pEL_REAL pEL_CLEAN hSTOF hEL_LO_LO hEL_LO hEL_HI hEL_REAL hEL_CLEAN pPRE40 pPRE100 pPRE150 pPRE200 hPRE40 hPRE100 hPRE150 hPRE200"
diff --git a/SCRIPTS/COIN/MONITOR/Bean_counter.C b/SCRIPTS/COIN/MONITOR/Bean_counter.C
index d95bb96202fd44915fcd44390c3fe4010a304fc1..82cbe1b9105bdefb1bb3e50216fbbcc95d9f56e2 100644
--- a/SCRIPTS/COIN/MONITOR/Bean_counter.C
+++ b/SCRIPTS/COIN/MONITOR/Bean_counter.C
@@ -16,11 +16,11 @@ void Bean_counter(Int_t runNumber, Int_t targ){
   int nentriesD = tt->GetEntries();
   cout<<"Entries:\t"<<nentriesD<<endl;
   TString fileO;
-   fileO += "/net/cdaq/cdaql3data/cdaq/hallc-online/run_"; //read the root file from data
+   fileO += "HISTOGRAMS/COIN/ROOT/run_"; //read the root file from data
    fileO += runNumber; //read the root file from data
    fileO += "_hists_coin.root"; //read the root file from data
 
-  TFile *fout = new TFile(fileO,"RECREATE");
+   //TFile *fout = new TFile(fileO,"RECREATE");
 
   gROOT->SetBatch(kTRUE);
 
@@ -31,14 +31,14 @@ void Bean_counter(Int_t runNumber, Int_t targ){
   TH1D *h_hyptar = new TH1D("h_hyptar","HMS YPTAR (rad)",100,-0.08,0.08);
   TH1D *h_hytar = new TH1D("h_hytar","HMS YTAR (cm)",100,-12.0,12.0);
 
-  TH1D *h_pdelta = new TH1D("h_pdelta","SHMS DELTA (%)",100,-12,12);
+  TH1D *h_pdelta = new TH1D("h_pdelta","SHMS DELTA (%)",100,-15,15);
   TH1D *h_pxptar = new TH1D("h_pxptar","SHMS XPTAR (rad)",100,-0.06,0.06);
   TH1D *h_pyptar = new TH1D("h_pyptar","SHMS YPTAR (rad)",100,-0.06,0.06);
   TH1D *h_pytar = new TH1D("h_pytar","SHMS YTAR (cm)",100,-12.0,12.0);
 
-  TH1D *h_Emd = new TH1D("h_Emd","Missing Energy (GeV)",200,-0.2,0.2);
-  TH1D *h_Wd = new TH1D("h_Wd","W (GeV)", 150, 0, 2);
-  TH1D *h_pmd = new TH1D("h_pmd","Pm (GeV/c)", 100, -0.2, 0.2);
+  TH1D *h_Emd = new TH1D("h_Emd",Form("Missing Energy (GeV) Run:%d",runNumber),200,-0.15,0.25);
+  TH1D *h_Wd = new TH1D("h_Wd",Form("W (GeV) Run:%d",runNumber), 150, 0., 2.);
+  TH1D *h_pmd = new TH1D("h_pmd","Pm (GeV/c)", 100, -0.02, 0.35);
   TH1D *h1PcointimeROC1 = new TH1D("SHMS ROC1 Corrected Coin Time","SHMS ROC1 Corrected Coin Time; cointime [ns]", 200, -10, 10);    
   TH1D *h1PcointimeROC2 = new TH1D("SHMS ROC2 Corrected Coin Time","SHMS ROC2 Corrected Coin Time; cointime [ns]", 200, -10, 10); 
 
@@ -46,7 +46,7 @@ void Bean_counter(Int_t runNumber, Int_t targ){
   Double_t HgtrX, HgtrTh, HgtrY, HgtrPh, hdelta, PgtrX, PgtrTh, PgtrY, PgtrPh, pdelta;
   Double_t HgtrBetaCalc, PgtrBetaCalc, evtType, PgtrP, HgtrP, PhodStatus, PhodStartTime, PhodfpHitsTime;
   Double_t cointime, HhodStatus, HhodStartTime, HhodfpHitsTime, SHMSpartMass, HMSpartMass;
-  Double_t pkinW, pEm, pPm, pbeta, hbeta, hcalepr, hcaletot, hcernpe, pcaletot, pcalepr, pcernpe;
+  Double_t pkinW, pEm, pPm, modPm, pbeta, hbeta, hcalepr, hcaletot, hcernpe, pcaletot, pcalepr, pcernpe;
   Double_t TcoinpTRIG1_ROC1_tdcTimeRaw, TcoinpTRIG4_ROC1_tdcTimeRaw, TcoinpTRIG1_ROC2_tdcTimeRaw;
   Double_t TcoinhTRIG1_ROC1_tdcTimeRaw, TcoinhTRIG1_ROC2_tdcTimeRaw, TcoinhTRIG4_ROC1_tdcTimeRaw;
   Double_t TcoinhTRIG4_ROC2_tdcTimeRaw, TcoinpTRIG4_ROC2_tdcTimeRaw;
@@ -78,7 +78,12 @@ void Bean_counter(Int_t runNumber, Int_t targ){
   tt->SetBranchAddress("H.cal.etottracknorm", &hcaletot);                                          
   tt->SetBranchAddress("H.cer.npeSum", &hcernpe); 
   tt->SetBranchAddress("H.kin.primary.W", &pkinW);                                                    
-  tt->SetBranchAddress("P.kin.secondary.emiss", &pEm);                                                    
+  if (targ == 1) {                
+    tt->SetBranchAddress("P.kin.secondary.emiss", &pEm);                           
+  }
+  else if (targ == 2){
+    tt->SetBranchAddress("P.kin.secondary.emiss_nuc", &pEm);                          }                     
+
   tt->SetBranchAddress("P.kin.secondary.pmiss", &pPm);                                                    
                                                                                                               
   tt->SetBranchAddress("P.hod.goodstarttime", &PhodStatus);                                              
@@ -133,7 +138,7 @@ void Bean_counter(Int_t runNumber, Int_t targ){
   Double_t HhodoStartTimeMean = h1HhodoStartTime->GetMean();                     
 
  
-  Double_t pOffset = 3.0; //9.5 + 10;  // in ns                                  
+  Double_t pOffset = 1.5; //9.5 + 10;  // in ns                                  
   Double_t hOffset = 335;                                                        
   Double_t speedOfLight = 29.9792; // in cm/ns                                   
   Double_t SHMScentralPathLen = 18.1*100;  // SHMS Target to focal plane path length converted to cm  
@@ -156,7 +161,7 @@ void Bean_counter(Int_t runNumber, Int_t targ){
     tt->GetEntry(kk);
     if (kk % 50000 == 0) cout << kk*100/nentriesD << "   % of data done" << endl;
       evtType = tt->GetLeaf("fEvtHdr.fEvtType")->GetValue(); 
-    if (pbeta>0.8 && pbeta<1.3 && hbeta>0.8 && hbeta<1.2 && hcernpe>0.1 && hcaletot >0.8 && hcaletot<1.2 && PhodStatus == 1 && HhodStatus ==1 && hdelta > -10 && hdelta < 10 && pdelta > -12 && pdelta < 12 && pcernpe < 0.1) 
+    if (pbeta>0.6 && pbeta<1.4 && hbeta>0.8 && hbeta<1.2 && hcernpe>0. && hcaletot >0.6 && hcaletot<2.0 && PhodStatus == 1 && HhodStatus ==1 && hdelta > -10 && hdelta < 10 && pdelta > -15 && pdelta < 15 && pcernpe < 0.1) 
     { 
 	DeltaHMSpathLength = 12.462*HgtrTh + 0.1138*HgtrTh*HgtrX - 0.0154*HgtrX - 72.292*HgtrTh*HgtrTh - 0.0000544*HgtrX*HgtrX - 116.52*HgtrPh*HgtrPh;               
       PgtrBetaCalc = PgtrP/sqrt(PgtrP*PgtrP + SHMSpartMass*SHMSpartMass);        
@@ -187,7 +192,7 @@ void Bean_counter(Int_t runNumber, Int_t targ){
       }
       else if (targ == 2)
       {
-       if (pkinW > 0.5 && pkinW < 1.5)
+	if (sqrt(pPm*pPm) < 0.6)
         {
         h_hdelta->Fill(hdelta);
         h_hxptar->Fill(HgtrPh);
@@ -197,9 +202,10 @@ void Bean_counter(Int_t runNumber, Int_t targ){
         h_pxptar->Fill(PgtrPh);
         h_pyptar->Fill(PgtrTh);
         h_pytar->Fill(PgtrY);
-        h_Emd->Fill(pEm+0.025);
+        h_Emd->Fill(pEm);
         h_Wd->Fill(pkinW);
-        h_pmd->Fill(pPm-0.04);
+        modPm = sqrt(pPm*pPm);
+        h_pmd->Fill(modPm);
         cnts++;
         }
       }
@@ -232,20 +238,25 @@ void Bean_counter(Int_t runNumber, Int_t targ){
   h_pytar->Draw();  
   //  can1->SaveAs("tmp1.pdf");
 
-  TCanvas *can2 = new TCanvas ("can2","can2");
+  TCanvas *can2 = new TCanvas ("can2",Form("can2 Run: %d",runNumber));
   can2->Divide(2,2);
   can2->cd(1);
+  h_Wd->SetFillColor(kBlue);
   h_Wd->Draw();
   can2->cd(2); 
+  h_Emd->SetFillColor(kBlue);
   h_Emd->Draw(); 
   can2->cd(3); 
+  h_pmd->SetFillColor(kBlue);
   h_pmd->Draw(); 
   can2->cd(4); 
+  h1PcointimeROC1->SetLineColor(kBlue);
+  h1PcointimeROC1->SetLineWidth(3);
   h1PcointimeROC1->Draw();
 
   // can2->SaveAs("tmp.pdf");
 
-  fout->Write();
+  //fout->Write();
   //  fout->Close();
   cout << "-------------------------------------------------------------------------------------------------------" << endl;
   cout << "NOTE:>>>>  " << cnts <<"  <<<<<  GOOD EVENTS have passed all cuts (update the white board and excel sheet)" << endl;
diff --git a/SCRIPTS/COIN/MONITOR/Bean_counter_carbon.C b/SCRIPTS/COIN/MONITOR/Bean_counter_carbon.C
index b48402a3b59707a78a305b74eef74da3a4637bd6..a19eaee7661600e9a4c039b33c24dd07feac7fe0 100644
--- a/SCRIPTS/COIN/MONITOR/Bean_counter_carbon.C
+++ b/SCRIPTS/COIN/MONITOR/Bean_counter_carbon.C
@@ -16,11 +16,11 @@ void Bean_counter_carbon(Int_t runNumber){
   int nentriesD = tt->GetEntries();
   cout<<"Entries:\t"<<nentriesD<<endl;
   TString fileO;
-   fileO += "/net/cdaq/cdaql3data/cdaq/hallc-online/run_"; //read the root file from data
+   fileO += "HISTOGRAMS/COIN/ROOT/run_"; //read the root file from data
    fileO += runNumber; //read the root file from data
    fileO += "_hists_coin.root"; //read the root file from data
 
-  TFile *fout = new TFile(fileO,"RECREATE");
+   //TFile *fout = new TFile(fileO,"RECREATE");
 
   gROOT->SetBatch(kTRUE);
 
@@ -221,7 +221,7 @@ void Bean_counter_carbon(Int_t runNumber){
 
   // can2->SaveAs("tmp.pdf");
 
-  fout->Write();
+  //fout->Write();
   //  fout->Close();
   cout << "-------------------------------------------------------------------------------------------------------" << endl;
   cout << "NOTE:>>>>  " << cnts <<"  <<<<<  GOOD EVENTS have passed all cuts (update the white board and excel sheet)" << endl;
diff --git a/SCRIPTS/COIN/MONITOR/coin_monitor.README b/SCRIPTS/COIN/MONITOR/coin_monitor.README
new file mode 100644
index 0000000000000000000000000000000000000000..9b7553a42e1fbc5dc14d198c16085c6440d24b96
--- /dev/null
+++ b/SCRIPTS/COIN/MONITOR/coin_monitor.README
@@ -0,0 +1,35 @@
+These two scripts calculate and plot (vs run number) various quantities
+including yield per mC, live time, and efficiencies. These are all
+grabbed from report files using awk. This obviously makes STRONG assumptions
+about the structure of the template report file, so be careful.
+
+1) Grab monitored quantities
+        1) Run `./hcana SCRIPTS/COIN/MONITOR/coin_monitor_calc.C` 
+           in your hallc_replay directory
+        2) Enter run number
+        3) Enter index specifying target
+
+        It will warn you if you're overwriting a run already in coin_monitor.root,
+        but this might be what you want to do! For example, you might have added
+        something to the macro and need to add the new quantities for old runs.
+
+2) Plot monitored quantities vs run
+        1) Run `./hcana SCRIPTS/COIN/MONITOR/coin_monitor_graph.C` 
+           in your hallc_replay directory
+        2) Make sure nothing has fluctuated
+
+	*) If you prefer, you can specify a range of runs to graph
+	   e.g. `.x SCRIPTS/COIN/MONITOR/coin_monitor_graph.C(2185,2191)`
+
+TROUBLESHOOTING:
+If coin_monitor.root gets deleted, you can run coin_monitor_init.C to create an
+empty coin_monitor.root. Running this will also overwrite any existing data in
+a non-empty coin_monitor.root
+
+TO-DO:
+- Macro to delete a run's data from coin_monitor.root
+- Implement kinematic settings (different markers?)
+- Save as PDF 
+
+QUESTIONS/CONCERNS:
+Email matter@virginia.edu
diff --git a/SCRIPTS/COIN/MONITOR/coin_monitor_calc.C b/SCRIPTS/COIN/MONITOR/coin_monitor_calc.C
new file mode 100644
index 0000000000000000000000000000000000000000..7644c3e39b5b171eb6e85a8dbab368dbba54387a
--- /dev/null
+++ b/SCRIPTS/COIN/MONITOR/coin_monitor_calc.C
@@ -0,0 +1,223 @@
+void coin_monitor_calc(Int_t RunNumber = 0, Int_t TargetType = 0, Int_t KinematicsType = 0)
+{
+
+	// Get RunNumber if not provided.
+	if(RunNumber == 0) {
+		cout << "Enter a Run Number (-1 to exit): ";
+		cin >> RunNumber;
+		if( RunNumber<=0 ) return;
+	}
+
+	// Get if not provided.
+	if(TargetType == 0) {
+		cout << "Enter a target (1=LH2, 2=6% Carbon, 3=dummy, -1 to exit): ";
+		cin >> TargetType;
+		if( TargetType<=0 ) return;
+	}
+
+	// Get KinematicsType if not provided.
+	//if(KinematicsType == 0) {
+	//	cout << "Enter a kinematics index (see coin_monitor.README; -1 to exit): ";
+	//	cin >> KinematicsType;
+	//	if( KinematicsType<=0 ) return;
+	//}
+
+
+	// ========================================================================
+	// A cheat to grab some efficiencies from the report output.
+	// I'm doing this because I don't know how to access this from the root file
+	// Note that this makes BIG assumptions about the structure of the template!
+	//
+	TString sysOutput;	// awk output
+	TString field;          // description in report
+	TObjArray* stringsPtr;  // used in tokenizing
+
+	// report filename
+	TString reportFile = Form("REPORT_OUTPUT/COIN/PRODUCTION/replay_coin_production_%d_-1.report", RunNumber);
+
+	// awk template for getting value form report
+	// Assumes value is separated from description by a colon.
+	// You need to be careful if there are multiple matches in the file.
+	TString awk_template = "awk -F':' '/%s/{print $2}' %s";
+	
+	// SHMS charge1 -------------------------------------------------------
+	field = "SHMS BCM1  Beam Cut Charge";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	double pQ_BCM1 = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+
+	// SHMS charge2 -------------------------------------------------------
+	field = "SHMS BCM2  Beam Cut Charge";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	double pQ_BCM2 = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+
+	// HMS charge1 --------------------------------------------------------
+	field = "HMS BCM1  Beam Cut Charge";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	double hQ_BCM1 = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+
+	// HMS charge2 --------------------------------------------------------
+	field = "HMS BCM1  Beam Cut Charge";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	double hQ_BCM2 = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+
+	// SHMS N TRIG --------------------------------------------------------
+	field = "SHMS Accepted Physics Triggers";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	double pN_trig = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+
+	// HMS N TRIG ---------------------------------------------------------
+	field = "HMS Accepted Physics Triggers";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	double hN_trig = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+
+
+	// Yield per mC
+	double pYield = 1000 * pN_trig / ((pQ_BCM1 + pQ_BCM2)/2.0);
+	double hYield = 1000 * hN_trig / ((hQ_BCM1 + hQ_BCM2)/2.0);
+
+	// SHMS hadron track efficiency ---------------------------------------
+	// Assume SHMS is the first match, HMS is the second
+	field = "HADRON SING FID TRACK EFF";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	sysOutput = ((TObjString *)(stringsPtr->At(0)))->String(); // first match
+	stringsPtr = sysOutput.Tokenize("+-"); // this line has erorr printed as well
+	double pHadTrackEff    = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+	double pHadTrackEffErr = ((TObjString *)(stringsPtr->At(1)))->String().Atof();
+
+	// HMS electron track efficiency ---------------------------------------
+	// Assume SHMS is the first match, HMS is the second
+	field = "E SING FID TRACK EFFIC";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	sysOutput = ((TObjString *)(stringsPtr->At(1)))->String(); // second match
+	stringsPtr = sysOutput.Tokenize("+-"); // this line has erorr printed as well
+	double hElecTrackEff    = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+	double hElecTrackEffErr = ((TObjString *)(stringsPtr->At(1)))->String().Atof();
+
+	// SHMS and HMS 3/4 trigger efficiency ---------------------------------
+	// Assume SHMS is the first match, HMS is the second
+	field = "3_of_4 EFF";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	double p3of4Eff         = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+	double h3of4Eff         = ((TObjString *)(stringsPtr->At(1)))->String().Atof();
+
+	// Live Time ----------------------------------------------------------
+	field = "ROC2 Pre-Scaled Ps6 ROC2 Computer Live Time";
+	sysOutput = gSystem->GetFromPipe(Form(awk_template.Data(), field.Data(), reportFile.Data()));
+	stringsPtr = sysOutput.Tokenize("\n");
+	double roc2PS6liveTime  = ((TObjString *)(stringsPtr->At(0)))->String().Atof();
+
+	// ========================================================================
+	// Bookkeeping
+
+	// Open old data, copy to new tree.
+	// We skip if an old datum's run number matches the one the user specified.
+	TFile* newYieldF = new TFile("ROOTfiles/coin_monitor_new.root", "RECREATE");
+	TTree* TY_new = new TTree("Y","coin_monitor tree");
+	int run_new, tgt_new, kin_new, pN_trig_new, hN_trig_new;
+	double pYpc_new, hYpc_new, pQ_new, hQ_new;
+	double pHadTrackEff_new, pHadTrackEffErr_new, hElecTrackEff_new, hElecTrackEffErr_new;
+	double p3of4Eff_new, h3of4Eff_new, roc2PS6liveTime_new;
+	TY_new->Branch("run",&run_new);
+	TY_new->Branch("tgt",&tgt_new);
+	TY_new->Branch("kin",&kin_new);
+	TY_new->Branch("pYpc",&pYpc_new);
+	TY_new->Branch("hYpc",&hYpc_new);
+	TY_new->Branch("pN_trig",&pN_trig_new);
+	TY_new->Branch("hN_trig",&hN_trig_new);
+	TY_new->Branch("pQ",&pQ_new);
+	TY_new->Branch("hQ",&hQ_new);
+	TY_new->Branch("pHadTrackEff",&pHadTrackEff_new);
+	TY_new->Branch("pHadTrackEffErr",&pHadTrackEffErr_new);
+	TY_new->Branch("hElecTrackEff",&hElecTrackEff_new);
+	TY_new->Branch("hElecTrackEffErr",&hElecTrackEffErr_new);
+	TY_new->Branch("p3of4Eff",&p3of4Eff_new);
+	TY_new->Branch("h3of4Eff",&h3of4Eff_new);
+	TY_new->Branch("roc2PS6liveTime",&roc2PS6liveTime_new);
+
+	TFile* yieldF = new TFile("ROOTfiles/coin_monitor.root","READ");
+	TTree* TY_old = (TTree*)yieldF->Get("Y");
+
+	int run_old, tgt_old, kin_old, pN_trig_old, hN_trig_old;
+	double pYpc_old, hYpc_old, pQ_old, hQ_old;
+	double pHadTrackEff_old, pHadTrackEffErr_old, hElecTrackEff_old, hElecTrackEffErr_old;
+	double p3of4Eff_old, h3of4Eff_old, roc2PS6liveTime_old;
+	TY_old->SetBranchAddress("run",&run_old);
+	TY_old->SetBranchAddress("tgt",&tgt_old);
+	TY_old->SetBranchAddress("kin",&kin_old);
+	TY_old->SetBranchAddress("pYpc",&pYpc_old);
+	TY_old->SetBranchAddress("hYpc",&hYpc_old);
+	TY_old->SetBranchAddress("pN_trig",&pN_trig_old);
+	TY_old->SetBranchAddress("hN_trig",&hN_trig_old);
+	TY_old->SetBranchAddress("pQ",&pQ_old);
+	TY_old->SetBranchAddress("hQ",&hQ_old);
+	TY_old->SetBranchAddress("pHadTrackEff",&pHadTrackEff_old);
+	TY_old->SetBranchAddress("pHadTrackEffErr",&pHadTrackEffErr_old);
+	TY_old->SetBranchAddress("hElecTrackEff",&hElecTrackEff_old);
+	TY_old->SetBranchAddress("hElecTrackEffErr",&hElecTrackEffErr_old);
+	TY_old->SetBranchAddress("p3of4Eff",&p3of4Eff_old);
+	TY_old->SetBranchAddress("h3of4Eff",&h3of4Eff_old);
+	TY_old->SetBranchAddress("roc2PS6liveTime",&roc2PS6liveTime_old);
+
+	newYieldF->cd();
+	for (int i=0; i<TY_old->GetEntries(); i++) {
+		TY_old->GetEntry(i);
+
+		// Skip if matches user specified run
+		if (run_old == RunNumber) {
+			cout << "WARNING: Overwriting run " << RunNumber << endl;
+			continue;
+		}
+
+		run_new     = run_old;
+		tgt_new     = tgt_old;
+		kin_new     = kin_old;
+		pYpc_new    = pYpc_old;
+		hYpc_new    = hYpc_old;
+		pN_trig_new = pN_trig_old;
+		hN_trig_new = pN_trig_old;
+		pQ_new      = pQ_old;
+		hQ_new      = hQ_old;
+		pHadTrackEff_new     = pHadTrackEff_old;
+		pHadTrackEffErr_new  = pHadTrackEffErr_old;
+		hElecTrackEff_new    = hElecTrackEff_old;
+		hElecTrackEffErr_new = hElecTrackEffErr_old;
+		p3of4Eff_new         = p3of4Eff_old;
+		h3of4Eff_new         = h3of4Eff_old;
+		roc2PS6liveTime_new  = roc2PS6liveTime_old;
+
+		TY_new->Fill();
+	}
+
+	// Add user specified run
+	run_new     = RunNumber;
+	tgt_new     = TargetType;
+	kin_new     = KinematicsType;
+	pYpc_new    = pYield;
+	hYpc_new    = hYield;
+	pN_trig_new = pN_trig;
+	hN_trig_new = hN_trig;
+	pQ_new      = ((pQ_BCM1 + pQ_BCM2)/2.0) / 1000.0;
+	hQ_new      = ((hQ_BCM1 + hQ_BCM2)/2.0) / 1000.0;
+	pHadTrackEff_new     = pHadTrackEff;
+	pHadTrackEffErr_new  = pHadTrackEffErr;
+	hElecTrackEff_new    = hElecTrackEff;
+	hElecTrackEffErr_new = hElecTrackEffErr;
+	p3of4Eff_new         = p3of4Eff;
+	h3of4Eff_new         = h3of4Eff;
+	roc2PS6liveTime_new  = roc2PS6liveTime;
+	TY_new->Fill();
+
+	// Rename new root file to old one
+	newYieldF->Write();
+	newYieldF->Close();
+	gSystem->Exec("mv ROOTfiles/coin_monitor_new.root ROOTfiles/coin_monitor.root");
+}
diff --git a/SCRIPTS/COIN/MONITOR/coin_monitor_calc_batch.sh b/SCRIPTS/COIN/MONITOR/coin_monitor_calc_batch.sh
new file mode 100755
index 0000000000000000000000000000000000000000..ce0e053a756719e8cf5bdea9d6a89e8efd2c8f28
--- /dev/null
+++ b/SCRIPTS/COIN/MONITOR/coin_monitor_calc_batch.sh
@@ -0,0 +1,49 @@
+#!/bin/bash
+echo Creating blank coin_monitor.root
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_init.C"
+
+# Hydrogen
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2278,1)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2279,1)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2280,1)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2281,1)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2283,1)"
+
+# Carbon
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2284,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2285,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2286,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2290,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2291,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2292,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2293,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2294,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2295,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2296,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2297,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2298,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2299,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2300,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2301,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2303,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2304,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2305,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2306,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2308,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2309,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2310,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2311,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2312,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2313,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2314,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2315,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2316,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2317,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2318,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2319,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2320,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2321,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2322,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2323,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2324,2)"
+./hcana -q "SCRIPTS/COIN/MONITOR/coin_monitor_calc.C(2325,2)"
diff --git a/SCRIPTS/COIN/MONITOR/coin_monitor_graph.C b/SCRIPTS/COIN/MONITOR/coin_monitor_graph.C
new file mode 100644
index 0000000000000000000000000000000000000000..d3885af23f1234c4bfc3545e6a919b593bbf7f2f
--- /dev/null
+++ b/SCRIPTS/COIN/MONITOR/coin_monitor_graph.C
@@ -0,0 +1,149 @@
+void coin_monitor_graph(int runMin = -1, int runMax = -1) {
+	TFile* yieldF = new TFile("ROOTfiles/coin_monitor.root","READ");
+	TTree* TY=(TTree*)yieldF->Get("Y");
+
+	//gStyle->SetOptTitle(kFALSE);
+	gStyle->SetPalette(1);
+	TVirtualPad *pad;
+
+	TCanvas* c = new TCanvas("c", "Coincidence monitoring", 1024, 640);
+	c->Divide(2,2);
+
+	// Get min and max run number
+	// If user specifies -1 for min||max, we use the min||max in coin_monitor.root
+	// These are also the defaults
+	Y->Draw("run>>htemp","","goff");
+	if (runMin==-1) {
+		runMin = htemp->GetXaxis()->GetXmin() - 5;
+	}
+	if (runMax==-1) {
+		runMax = htemp->GetXaxis()->GetXmax() + 5;
+	}
+
+	// =============================================
+	// YIELD
+	pad = c->cd(1);
+
+	TCut hCut = "tgt==1";
+	Y->Draw("run:pYpc:(sqrt(pN_trig)/pQ)",hCut,"goff");
+	TGraphErrors* gHydrogen = new TGraphErrors(Y->GetEntries(),Y->GetV1(),Y->GetV2(),0,Y->GetV3());
+
+	TCut cCut = "tgt==2";
+	Y->Draw("run:pYpc:(sqrt(pN_trig)/pQ)",cCut,"goff");
+	TGraphErrors* gCarbon = new TGraphErrors(Y->GetEntries(),Y->GetV1(),Y->GetV2(),0,Y->GetV3());
+
+	//TCut dCut = "tgt==3";
+	//Y->Draw("run:pYpc:(sqrt(pN_trig)/pQ)",dCut,"goff");
+	//TGraphErrors* gDummy = new TGraphErrors(Y->GetEntries(),Y->GetV1(),Y->GetV2(),0,Y->GetV3());
+
+	gHydrogen->SetLineColor(46);
+	gCarbon->SetLineColor(38);
+	//gDummy->SetLineColor(41);
+
+
+	TMultiGraph *mgYield = new TMultiGraph("mgYield", "Coincidence yield per run");
+
+	mgYield->Add(gHydrogen);
+	mgYield->Add(gCarbon);
+	//mgYield->Add(gDummy);
+
+	mgYield->Draw("AP");
+	mgYield->GetXaxis()->SetLimits(runMin, runMax);
+	mgYield->GetXaxis()->SetTitle("Run Number");
+	mgYield->GetYaxis()->SetTitle("Yield per mC");
+
+	TLegend *legYield = new TLegend(0.15, 0.3, 0.35, 0.2); 
+	legYield->SetFillColor(0); 
+	legYield->AddEntry(gHydrogen, "Hydrogen", "lp"); 
+	legYield->AddEntry(gCarbon, "Carbon", "lp"); 
+	//legYield->AddEntry(gDummy, "Dummy", "lp");
+	legYield->Draw();
+
+	
+	// =============================================
+	// LIVE TIME
+	pad = c->cd(2);
+
+	Y->Draw("run:roc2PS6liveTime","","goff");
+	TGraph* gPLive = new TGraph(Y->GetEntries(), Y->GetV1(), Y->GetV2());
+
+	gPLive->SetTitle("ROC2 PS6 Live Time");
+
+	gPLive->SetMarkerStyle(22);
+	gPLive->SetMarkerColor(30);
+	gPLive->SetMinimum(48);
+	gPLive->SetMaximum(102);
+	gPLive->Draw("AP");
+
+	gPLive->GetXaxis()->SetLimits(runMin, runMax);
+	gPLive->GetXaxis()->SetTitle("Run Number");
+	gPLive->GetYaxis()->SetTitle("Live time");
+
+	// =============================================
+	// 3 of 4 efficiency
+	pad = c->cd(3);
+
+	Y->Draw("run:p3of4Eff","","goff");
+	TGraph* gP3of4 = new TGraph(Y->GetEntries(), Y->GetV1(), Y->GetV2());
+	
+	Y->Draw("run:h3of4Eff","","goff");
+	TGraph* gH3of4 = new TGraph(Y->GetEntries(), Y->GetV1(), Y->GetV2());
+
+	gP3of4->SetMarkerColor(46);
+	gP3of4->SetMarkerStyle(26);
+	gH3of4->SetMarkerColor(30);
+	gH3of4->SetMarkerStyle(32);
+
+	TMultiGraph *mg3of4 = new TMultiGraph("mg3of4", "3 of 4 Efficiency");
+
+	mg3of4->Add(gP3of4);
+	mg3of4->Add(gH3of4);
+
+	mg3of4->Draw("AP");
+	mg3of4->SetMinimum(0.48);
+	mg3of4->SetMaximum(1.02);
+	mg3of4->GetXaxis()->SetLimits(runMin, runMax);
+	mg3of4->GetXaxis()->SetTitle("Run Number");
+	mg3of4->GetYaxis()->SetTitle("3/4 Efficiency");
+
+	TLegend *leg3of4 = new TLegend(0.15, 0.3, 0.35, 0.2);
+        leg3of4->SetFillColor(0);
+        leg3of4->AddEntry(gP3of4, "SHMS 3/4", "p");
+        leg3of4->AddEntry(gH3of4, "HMS 3/4", "p");
+        leg3of4->Draw();
+
+	// =============================================
+	// PID track efficiency
+	pad = c->cd(4);
+
+	Y->Draw("run:pHadTrackEff:pHadTrackEffErr","","goff");
+	TGraphErrors* gPTrack = new TGraphErrors(Y->GetEntries(),Y->GetV1(),Y->GetV2(),0,Y->GetV3());
+
+	Y->Draw("run:hElecTrackEff:hElecTrackEffErr","","goff");
+	TGraphErrors* gHTrack = new TGraphErrors(Y->GetEntries(),Y->GetV1(),Y->GetV2(),0,Y->GetV3());
+
+	gPTrack->SetMarkerColor(46);
+	gPTrack->SetLineColor(46);
+	gPTrack->SetMarkerStyle(26);
+	gHTrack->SetMarkerColor(30);
+	gHTrack->SetLineColor(30);
+	gHTrack->SetMarkerStyle(32);
+
+	TMultiGraph *mgTrack = new TMultiGraph("mgTrack", "PID Tracking Efficiency");
+	mgTrack->Add(gPTrack);
+	mgTrack->Add(gHTrack);
+
+	mgTrack->Draw("AP");
+	mgTrack->SetMinimum(0.48);
+	mgTrack->SetMaximum(1.02);
+	mgTrack->GetXaxis()->SetLimits(runMin, runMax);
+	mgTrack->GetXaxis()->SetTitle("Run Number");
+	mgTrack->GetYaxis()->SetTitle("PID Tracking Efficiency");
+
+	TLegend *legTrack = new TLegend(0.15, 0.3, 0.35, 0.2);
+        legTrack->SetFillColor(0);
+        legTrack->AddEntry(gPTrack, "SHMS Hadron", "p");
+        legTrack->AddEntry(gHTrack, "HMS Electron", "p");
+        legTrack->Draw();
+
+}	
diff --git a/SCRIPTS/COIN/MONITOR/coin_monitor_init.C b/SCRIPTS/COIN/MONITOR/coin_monitor_init.C
new file mode 100644
index 0000000000000000000000000000000000000000..cea6d96ec0f26092186ce973972b83a79bfe6903
--- /dev/null
+++ b/SCRIPTS/COIN/MONITOR/coin_monitor_init.C
@@ -0,0 +1,26 @@
+{
+    TFile* newYieldF = new TFile("ROOTfiles/coin_monitor.root", "RECREATE");
+    TTree* TY_new = new TTree("Y","coin_monitor tree");
+    int run_new, tgt_new, kin_new, pN_trig_new, hN_trig_new;
+    double pYpc_new, hYpc_new, pQ_new, hQ_new;
+    double pHadTrackEff_new, pHadTrackEffErr_new, hElecTrackEff_new, hElecTrackEffErr_new;
+    double p3of4Eff_new, h3of4Eff_new, roc2PS6liveTime_new;
+    TY_new->Branch("run",&run_new);
+    TY_new->Branch("tgt",&tgt_new);
+    TY_new->Branch("kin",&kin_new);
+    TY_new->Branch("pYpc",&pYpc_new);
+    TY_new->Branch("hYpc",&hYpc_new);
+    TY_new->Branch("pN_trig",&pN_trig_new);
+    TY_new->Branch("hN_trig",&hN_trig_new);
+    TY_new->Branch("pQ",&pQ_new);
+    TY_new->Branch("hQ",&hQ_new);
+    TY_new->Branch("pHadTrackEff",&pHadTrackEff_new);
+    TY_new->Branch("pHadTrackEffErr",&pHadTrackEffErr_new);
+    TY_new->Branch("hElecTrackEff",&hElecTrackEff_new);
+    TY_new->Branch("hElecTrackEffErr",&hElecTrackEffErr_new);
+    TY_new->Branch("p3of4Eff",&p3of4Eff_new);
+    TY_new->Branch("h3of4Eff",&h3of4Eff_new);
+    TY_new->Branch("roc2PS6liveTime",&roc2PS6liveTime_new);
+    newYieldF->Write();
+    newYieldF->Close();
+}
diff --git a/SCRIPTS/COIN/MONITOR/coin_yield.root b/SCRIPTS/COIN/MONITOR/coin_yield.root
deleted file mode 100644
index a95e65fcc1d0ca6cfb100fe174b6ab654dfa0dd7..0000000000000000000000000000000000000000
Binary files a/SCRIPTS/COIN/MONITOR/coin_yield.root and /dev/null differ
diff --git a/SCRIPTS/COIN/MONITOR/temp.sh b/SCRIPTS/COIN/MONITOR/temp.sh
deleted file mode 100755
index d0e2c2ef4ec024aadda1f590fe97d41942c337a1..0000000000000000000000000000000000000000
--- a/SCRIPTS/COIN/MONITOR/temp.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/bash
-../../../hcana -q "yield_calc.C(2023,1,1)"
-../../../hcana -q "yield_calc.C(2046,1,1)"
-../../../hcana -q "yield_calc.C(2047,1,1)"
-../../../hcana -q "yield_calc.C(2048,1,1)"
-../../../hcana -q "yield_calc.C(2049,1,1)"
-../../../hcana -q "yield_calc.C(2050,1,1)"
-../../../hcana -q "yield_calc.C(2051,1,1)"
-../../../hcana -q "yield_calc.C(2052,1,1)"
-../../../hcana -q "yield_calc.C(2053,1,1)"
-../../../hcana -q "yield_calc.C(2054,1,1)"
-../../../hcana -q "yield_calc.C(2055,3,1)"
-../../../hcana -q "yield_calc.C(2056,2,1)"
diff --git a/SCRIPTS/COIN/MONITOR/yield.README b/SCRIPTS/COIN/MONITOR/yield.README
deleted file mode 100644
index 530f1cd0f77f37c46b18b895b342b5f81c0b9b80..0000000000000000000000000000000000000000
--- a/SCRIPTS/COIN/MONITOR/yield.README
+++ /dev/null
@@ -1,11 +0,0 @@
-1) Calculate yield
-	1) ../hcana yield_calc.C
-	2) Enter run number
-	3) Enter index specifying target
-
-	It will warn you if you're overwriting a run already in coin_yield.root,
-	but this might be what you want to do!
-
-2) Plot yield per run
-	1) ../hcana yield_graph.C
-	2) Make sure yield hasn't fluctuated
diff --git a/SCRIPTS/COIN/MONITOR/yield_calc.C b/SCRIPTS/COIN/MONITOR/yield_calc.C
deleted file mode 100644
index adf9043d53e3b9b5a2e9e4932a9ce704134871ed..0000000000000000000000000000000000000000
--- a/SCRIPTS/COIN/MONITOR/yield_calc.C
+++ /dev/null
@@ -1,125 +0,0 @@
-void yield_calc(Int_t RunNumber = 0, Int_t TargetType = 0, Int_t KinematicsType = 0)
-{
-
-	// Get RunNumber if not provided.
-	if(RunNumber == 0) {
-		cout << "Enter a Run Number (-1 to exit): ";
-		cin >> RunNumber;
-		if( RunNumber<=0 ) return;
-	}
-
-	// Get if not provided.
-	if(TargetType == 0) {
-		cout << "Enter a target (1=LH2, 2=6% Carbon, 3=dummy, -1 to exit): ";
-		cin >> TargetType;
-		if( TargetType<=0 ) return;
-	}
-
-	// Get KinematicsType if not provided.
-	//if(KinematicsType == 0) {
-	//	cout << "Enter a kinematics index (see yield.README; -1 to exit): ";
-	//	cin >> KinematicsType;
-	//	if( KinematicsType<=0 ) return;
-	//}
-
-	// Open root file
-	char* ROOTFileNamePattern = "../../../ROOTfiles/coin_replay_production_%d_-1.root";
-	TString ROOTFileName = Form(ROOTFileNamePattern, RunNumber);
-	TFile* hcanaF  = new TFile(ROOTFileName);
-	TTree* tsp = (TTree*)hcanaF->Get("TSP");
-	TTree* tsh = (TTree*)hcanaF->Get("TSH");
-
-	// Set up tree variables
-	double pQ_BCM1, pQ_BCM2, pN_trig, pQ_avg;
-	tsp->SetBranchAddress("P.BCM1.scalerChargeCut",&pQ_BCM1);
-	tsp->SetBranchAddress("P.BCM2.scalerChargeCut",&pQ_BCM2);
-	tsp->SetBranchAddress("P.pTRIG6.scalerCut",&pN_trig);
-
-	double hQ_BCM1, hQ_BCM2, hN_trig, hQ_avg;
-	tsh->SetBranchAddress("H.BCM1.scalerChargeCut",&hQ_BCM1);
-	tsh->SetBranchAddress("H.BCM2.scalerChargeCut",&hQ_BCM2);
-	tsh->SetBranchAddress("H.hTRIG6.scalerCut",&hN_trig);
-
-	// correct value is last in the scaler tree?
-	int pN=tsp->GetEntries()-1; 
-	int hN=tsp->GetEntries()-1; 
-	tsp->GetEntry(pN);
-	tsh->GetEntry(hN);
-
-	// Yield per mC
-	double pYield = 1000 * pN_trig / ((pQ_BCM1 + pQ_BCM2)/2.0);
-	double hYield = 1000 * hN_trig / ((hQ_BCM1 + hQ_BCM2)/2.0);
-
-	delete hcanaF;
-
-	// Open old data, copy to new tree.
-	// We skip if an old datum's run number matches the one the user specified.
-	TFile* newYieldF = new TFile("coin_yield_new.root", "RECREATE");
-	TTree* TY_new = new TTree("Y","coin_yield tree");
-	int run_new, tgt_new, kin_new, pN_trig_new, hN_trig_new;
-	double pYpc_new, hYpc_new, pQ_new, hQ_new;
-	TY_new->Branch("run",&run_new);
-	TY_new->Branch("tgt",&tgt_new);
-	TY_new->Branch("kin",&kin_new);
-	TY_new->Branch("pYpc",&pYpc_new);
-	TY_new->Branch("hYpc",&hYpc_new);
-	TY_new->Branch("pN_trig",&pN_trig_new);
-	TY_new->Branch("hN_trig",&hN_trig_new);
-	TY_new->Branch("pQ",&pQ_new);
-	TY_new->Branch("hQ",&hQ_new);
-
-	TFile* yieldF = new TFile("coin_yield.root","READ");
-	TTree* TY_old = (TTree*)yieldF->Get("Y");
-
-	int run_old, tgt_old, kin_old, pN_trig_old, hN_trig_old;
-	double pYpc_old, hYpc_old, pQ_old, hQ_old;
-	TY_old->SetBranchAddress("run",&run_old);
-	TY_old->SetBranchAddress("tgt",&tgt_old);
-	TY_old->SetBranchAddress("kin",&kin_old);
-	TY_old->SetBranchAddress("pYpc",&pYpc_old);
-	TY_old->SetBranchAddress("hYpc",&hYpc_old);
-	TY_old->SetBranchAddress("pN_trig",&pN_trig_old);
-	TY_old->SetBranchAddress("hN_trig",&hN_trig_old);
-	TY_old->SetBranchAddress("pQ",&pQ_old);
-	TY_old->SetBranchAddress("hQ",&hQ_old);
-
-	newYieldF->cd();
-	for (int i=0; i<TY_old->GetEntries(); i++) {
-		TY_old->GetEntry(i);
-
-		// Skip if matches user specified run
-		if (run_old == RunNumber) {
-			cout << "WARNING: Overwriting run " << RunNumber << endl;
-			continue;
-		}
-
-		run_new     = run_old;
-		tgt_new     = tgt_old;
-		kin_new     = kin_old;
-		pYpc_new    = pYpc_old;
-		hYpc_new    = hYpc_old;
-		pN_trig_new = pN_trig_old;
-		hN_trig_new = pN_trig_old;
-		pQ_new      = pQ_old;
-		hQ_new      = hQ_old;
-
-		TY_new->Fill();
-	}
-
-	// Add user specified run
-	run_new     = RunNumber;
-	tgt_new     = TargetType;
-	kin_new     = KinematicsType;
-	pYpc_new    = pYield;
-	hYpc_new    = hYield;
-	pN_trig_new = pN_trig;
-	hN_trig_new = hN_trig;
-	pQ_new      = ((pQ_BCM1 + pQ_BCM2)/2.0) / 1000.0;
-	hQ_new      = ((hQ_BCM1 + hQ_BCM2)/2.0) / 1000.0;
-	TY_new->Fill();
-
-	// Rename new root file to old one
-	newYieldF->Write();
-	newYieldF->Close();
-	gSystem->Exec("mv coin_yield_new.root coin_yield.root");
-}
diff --git a/SCRIPTS/COIN/MONITOR/yield_graph.C b/SCRIPTS/COIN/MONITOR/yield_graph.C
deleted file mode 100644
index 9024e411ad71f96e29026fff78b7154a66e31483..0000000000000000000000000000000000000000
--- a/SCRIPTS/COIN/MONITOR/yield_graph.C
+++ /dev/null
@@ -1,50 +0,0 @@
-void yield_graph() {
-	TFile* yieldF = new TFile("coin_yield.root","READ");
-	TTree* TY=(TTree*)yieldF->Get("Y");
-
-	gStyle->SetOptTitle(kFALSE);
-	gStyle->SetPalette(1);
-
-	TCut hCut = "tgt==1";
-	Y->Draw("run:pYpc:(sqrt(pN_trig)/pQ)",hCut,"goff");
-	TGraphErrors* gHydrogen = new TGraphErrors(Y->GetEntries(),Y->GetV1(),Y->GetV2(),0,Y->GetV3());
-
-	TCut cCut = "tgt==2";
-	Y->Draw("run:pYpc:(sqrt(pN_trig)/pQ)",cCut,"goff");
-	TGraphErrors* gCarbon = new TGraphErrors(Y->GetEntries(),Y->GetV1(),Y->GetV2(),0,Y->GetV3());
-
-	TCut dCut = "tgt==3";
-	Y->Draw("run:pYpc:(sqrt(pN_trig)/pQ)",dCut,"goff");
-	TGraphErrors* gDummy = new TGraphErrors(Y->GetEntries(),Y->GetV1(),Y->GetV2(),0,Y->GetV3());
-
-	gHydrogen->SetLineColor(kRed);
-	gCarbon->SetLineColor(kGreen);
-	gDummy->SetLineColor(kBlack);
-
-	// Get min and max run number
-	Y->Draw("run>>htemp","","goff");
-	int runMin = htemp->GetXaxis()->GetXmin() - 5;
-	int runMax = htemp->GetXaxis()->GetXmax() + 5;
-
-	TCanvas* c = new TCanvas("c", "Coincidence yield per run", 800, 600);
-	int maxYield = 20;
-	c->DrawFrame(runMin,0,runMax,maxYield);
-
-	TMultiGraph *mg = new TMultiGraph("mg", "Coincidence yield per run");
-	mg->Add(gHydrogen);
-	mg->Add(gCarbon);
-	//mg->Add(gDummy);
-	mg->SetTitle("Coincidence yield per run"); //doesn't work??
-	mg->GetXaxis()->SetTitle("Run Number");
-	mg->GetYaxis()->SetTitle("Yield per mC");
-
-	mg->Draw("P");
-	
-	TLegend *leg = new TLegend(0.15, 0.7, 0.25, 0.8); 
-	leg->SetFillColor(0); 
-	leg->AddEntry(gHydrogen, "Hydrogen", "lp"); 
-	leg->AddEntry(gCarbon, "Carbon", "lp"); 
-	//leg->AddEntry(gDummy, "Dummy", "lp");
-	leg->Draw();
-
-}
diff --git a/SCRIPTS/COIN/PRODUCTION/replay_production_coin_hElec_pProt.C b/SCRIPTS/COIN/PRODUCTION/replay_production_coin_hElec_pProt.C
index 50bceebe73284c2343c40a1774123b02d7895725..b9df1f2ac9d4930efcf476864ade11040a04bc73 100644
--- a/SCRIPTS/COIN/PRODUCTION/replay_production_coin_hElec_pProt.C
+++ b/SCRIPTS/COIN/PRODUCTION/replay_production_coin_hElec_pProt.C
@@ -75,9 +75,6 @@ void replay_production_coin_hElec_pProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   THcShower* pcal = new THcShower("cal", "Calorimeter");
   SHMS->AddDetector(pcal);
 
-  // Include golden track information
-  THaGoldenTrack* pgtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
-  gHaPhysics->Add(pgtr);
   // Add Rastered Beam Apparatus
   THaApparatus* pbeam = new THcRasteredBeam("P.rb", "SHMS Rastered Beamline");
   gHaApps->Add(pbeam);
@@ -85,6 +82,9 @@ void replay_production_coin_hElec_pProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   gHaPhysics->Add(prp);
   THcExtTarCor* pext = new THcExtTarCor("P.extcor"," HMS extended target corrections","P","P.react");
   gHaPhysics->Add(pext);
+  // Include golden track information
+  THaGoldenTrack* pgtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
+  gHaPhysics->Add(pgtr);
   // Add hodoscope efficiency
   THcHodoEff* peff = new THcHodoEff("phodeff"," SHMS hodo efficiency","P.hod");
   gHaPhysics->Add(peff);
@@ -129,9 +129,6 @@ void replay_production_coin_hElec_pProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   THcShower* hcal = new THcShower("cal", "Calorimeter");
   HMS->AddDetector(hcal);
 
-  // Include golden track information
-  THaGoldenTrack* hgtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
-  gHaPhysics->Add(hgtr);
   // Add Rastered Beam Apparatus
   THaApparatus* hbeam = new THcRasteredBeam("H.rb", "HMS Rastered Beamline");
   gHaApps->Add(hbeam);
@@ -139,6 +136,9 @@ void replay_production_coin_hElec_pProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   gHaPhysics->Add(hrp);
   THcExtTarCor* hext = new THcExtTarCor("H.extcor"," HMS extended target corrections","H","H.react");
   gHaPhysics->Add(hext);
+  // Include golden track information
+  THaGoldenTrack* hgtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
+  gHaPhysics->Add(hgtr);
   // Add hodoscope efficiency
   THcHodoEff* heff = new THcHodoEff("hhodeff"," HMS hodo efficiency","H.hod");
   gHaPhysics->Add(heff);
@@ -240,7 +240,7 @@ void replay_production_coin_hElec_pProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   // Define DEF-file+
   analyzer->SetOdefFile("DEF-files/COIN/PRODUCTION/coin_production_hElec_pProt.def");
   // Define cuts file
-  analyzer->SetCutFile("DEF-files/COIN/PRODUCTION/coin_production_hElec_pProt_cuts.def");  // optional
+  analyzer->SetCutFile("DEF-files/COIN/PRODUCTION/CUTS/coin_production_cuts.def");  // optional
   // File to record accounting information for cuts
   analyzer->SetSummaryFile(Form("REPORT_OUTPUT/COIN/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));  // optional
   // Start the actual analysis.
diff --git a/SCRIPTS/COIN/PRODUCTION/replay_production_coin_pElec_hProt.C b/SCRIPTS/COIN/PRODUCTION/replay_production_coin_pElec_hProt.C
index 1952f84af4471f82efce5185ee20275a0b0787f5..df611549a838b0e75c924acc74c080ce5efa4a01 100644
--- a/SCRIPTS/COIN/PRODUCTION/replay_production_coin_pElec_hProt.C
+++ b/SCRIPTS/COIN/PRODUCTION/replay_production_coin_pElec_hProt.C
@@ -75,9 +75,6 @@ void replay_production_coin_pElec_hProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   THcShower* pcal = new THcShower("cal", "Calorimeter");
   SHMS->AddDetector(pcal);
 
-  // Include golden track information
-  THaGoldenTrack* pgtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
-  gHaPhysics->Add(pgtr);
   // Add Rastered Beam Apparatus
   THaApparatus* pbeam = new THcRasteredBeam("P.rb", "SHMS Rastered Beamline");
   gHaApps->Add(pbeam);
@@ -85,7 +82,10 @@ void replay_production_coin_pElec_hProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   gHaPhysics->Add(prp);
   THcExtTarCor* pext = new THcExtTarCor("P.extcor"," HMS extended target corrections","P","P.react");
   gHaPhysics->Add(pext);
-  // Add hodoscope efficiency
+   // Include golden track information
+  THaGoldenTrack* pgtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
+  gHaPhysics->Add(pgtr);
+ // Add hodoscope efficiency
   THcHodoEff* peff = new THcHodoEff("phodeff"," SHMS hodo efficiency","P.hod");
   gHaPhysics->Add(peff);
 
@@ -129,9 +129,6 @@ void replay_production_coin_pElec_hProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   THcShower* hcal = new THcShower("cal", "Calorimeter");
   HMS->AddDetector(hcal);
 
-  // Include golden track information
-  THaGoldenTrack* hgtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
-  gHaPhysics->Add(hgtr);
   // Add Rastered Beam Apparatus
   THaApparatus* hbeam = new THcRasteredBeam("H.rb", "HMS Rastered Beamline");
   gHaApps->Add(hbeam);
@@ -139,6 +136,9 @@ void replay_production_coin_pElec_hProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   gHaPhysics->Add(hrp);
   THcExtTarCor* hext = new THcExtTarCor("H.extcor"," HMS extended target corrections","H","H.react");
   gHaPhysics->Add(hext);
+  // Include golden track information
+  THaGoldenTrack* hgtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
+  gHaPhysics->Add(hgtr);
   // Add hodoscope efficiency
   THcHodoEff* heff = new THcHodoEff("hhodeff"," HMS hodo efficiency","H.hod");
   gHaPhysics->Add(heff);
@@ -240,7 +240,7 @@ void replay_production_coin_pElec_hProt (Int_t RunNumber = 0, Int_t MaxEvent = 0
   // Define DEF-file+
   analyzer->SetOdefFile("DEF-files/COIN/PRODUCTION/coin_production_pElec_hProt.def");
   // Define cuts file
-  analyzer->SetCutFile("DEF-files/COIN/PRODUCTION/coin_production_pElec_hProt_cuts.def");  // optional
+  analyzer->SetCutFile("DEF-files/COIN/PRODUCTION/CUTS/coin_production_cuts.def");  // optional
   // File to record accounting information for cuts
   analyzer->SetSummaryFile(Form("REPORT_OUTPUT/COIN/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));  // optional
   // Start the actual analysis.
diff --git a/SCRIPTS/COIN/PRODUCTION/replay_production_ep.C b/SCRIPTS/COIN/PRODUCTION/replay_production_ep.C
index ce951bcf7ec1880489e33053f9329fae5b695f26..ffe0c4bd398009bcab3e4d04d7e865be9efd847e 100644
--- a/SCRIPTS/COIN/PRODUCTION/replay_production_ep.C
+++ b/SCRIPTS/COIN/PRODUCTION/replay_production_ep.C
@@ -75,9 +75,6 @@ void replay_production_ep (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   THcShower* pcal = new THcShower("cal", "Calorimeter");
   SHMS->AddDetector(pcal);
 
-  // Include golden track information
-  THaGoldenTrack* pgtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
-  gHaPhysics->Add(pgtr);
   // Add Rastered Beam Apparatus
   THaApparatus* pbeam = new THcRasteredBeam("P.rb", "SHMS Rastered Beamline");
   gHaApps->Add(pbeam);
@@ -85,6 +82,9 @@ void replay_production_ep (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   gHaPhysics->Add(prp);
   THcExtTarCor* pext = new THcExtTarCor("P.extcor"," HMS extended target corrections","P","P.react");
   gHaPhysics->Add(pext);
+  // Include golden track information
+  THaGoldenTrack* pgtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
+  gHaPhysics->Add(pgtr);
 
 
   // Hodoscope efficiency
@@ -130,17 +130,17 @@ void replay_production_ep (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   THcShower* hcal = new THcShower("cal", "Calorimeter");
   HMS->AddDetector(hcal);
 
-  // Include golden track information
-  THaGoldenTrack* hgtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
-  gHaPhysics->Add(hgtr);
-  // Add Rastered Beam Apparatus
+ // Add Rastered Beam Apparatus
   THaApparatus* hbeam = new THcRasteredBeam("H.rb", "HMS Rastered Beamline");
   gHaApps->Add(hbeam);
   THaReactionPoint* hrp= new THaReactionPoint("H.react"," HMS reaction point","H","H.rb");
   gHaPhysics->Add(hrp);
   THcExtTarCor* hext = new THcExtTarCor("H.extcor"," HMS extended target corrections","H","H.react");
   gHaPhysics->Add(hext);
-  // Hodoscope efficiency
+  // Include golden track information
+  THaGoldenTrack* hgtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
+  gHaPhysics->Add(hgtr);
+   // Hodoscope efficiency
   THcHodoEff* heff = new THcHodoEff("hhodeff"," HMS hodo efficiency","H.hod");
   gHaPhysics->Add(heff);
   // Add event handler for scaler events
diff --git a/SCRIPTS/HMS/PRODUCTION/replay_production_all_hms.C b/SCRIPTS/HMS/PRODUCTION/replay_production_all_hms.C
index e018003be303f95efd406a7755adeb7baa04ff42..5b8d66477d91b04ccd873b23d79f1e507f2fd3b6 100644
--- a/SCRIPTS/HMS/PRODUCTION/replay_production_all_hms.C
+++ b/SCRIPTS/HMS/PRODUCTION/replay_production_all_hms.C
@@ -18,12 +18,12 @@ void replay_production_all_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
   // Create file name patterns.
   const char* RunFileNamePattern = "hms_all_%05d.dat";
   vector<TString> pathList;
-    pathList.push_back(".");
-    pathList.push_back("./raw");
-    pathList.push_back("./raw/../raw.copiedtotape");
-    pathList.push_back("./cache");
+  pathList.push_back(".");
+  pathList.push_back("./raw");
+  pathList.push_back("./raw/../raw.copiedtotape");
+  pathList.push_back("./cache");
 
-  const char* ROOTFileNamePattern = "ROOTfiles/hms_replay_production_%d_%d.root";
+  const char* ROOTFileNamePattern = "ROOTfiles/hms_replay_production_all_%d_%d.root";
 
   //Load Global parameters
   // Add variables to global list.
@@ -69,23 +69,24 @@ void replay_production_all_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
   THcShower* cal = new THcShower("cal", "Calorimeter");
   HMS->AddDetector(cal);
 
-  // Include golden track information
-  THaGoldenTrack* gtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
-  gHaPhysics->Add(gtr);
-// Add Rastered Beam Apparatus
+   // Add Rastered Beam Apparatus
   THaApparatus* beam = new THcRasteredBeam("H.rb", "Rastered Beamline");
   gHaApps->Add(beam);  
-  THaReactionPoint* hrp= new THaReactionPoint("H.react"," HMS reaction point","H","H.rb");
+  THaReactionPoint* hrp= new THaReactionPoint("H.react", "HMS reaction point", "H", "H.rb");
   gHaPhysics->Add(hrp);
-  THcExtTarCor* hext = new THcExtTarCor("H.extcor"," HMS extended target corrections","H","H.react");
+  THcExtTarCor* hext = new THcExtTarCor("H.extcor", "HMS extended target corrections", "H", "H.react");
   gHaPhysics->Add(hext);
-// Add Ideal Beam Apparatus
- // THaApparatus* beam = new THaIdealBeam("IB", "Ideal Beamline");
- // gHaApps->Add(beam);
-  // Add Physics Module to calculate primary (scattered) beam kinematics
+ // Include golden track information
+  THaGoldenTrack* gtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
+  gHaPhysics->Add(gtr);
+  // Add Ideal Beam Apparatus
+  // THaApparatus* beam = new THaIdealBeam("IB", "Ideal Beamline");
+  // gHaApps->Add(beam);
+  // Add physics module to calculate primary (scattered) beam kinematics
   THcPrimaryKine* hkin = new THcPrimaryKine("H.kin", "HMS Single Arm Kinematics", "H", "H.rb");
   gHaPhysics->Add(hkin);
-  THcHodoEff* heff = new THcHodoEff("hhodeff"," HMS hodo efficiency","H.hod");
+  // Add physics module to calculate the hodoscope efficiencies
+  THcHodoEff* heff = new THcHodoEff("hhodeff", "HMS hodo efficiency", "H.hod");
   gHaPhysics->Add(heff);
 
   // Add handler for prestart event 125.
@@ -137,23 +138,23 @@ void replay_production_all_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
   analyzer->SetCountMode(2);    // 0 = counter is # of physics triggers
                                 // 1 = counter is # of all decode reads
                                 // 2 = counter is event number
- analyzer->SetEvent(event);
- // Set EPICS event type
- analyzer->SetEpicsEvtType(180);
- // Define crate map
- analyzer->SetCrateMapFileName("MAPS/db_cratemap.dat");
- // Define output ROOT file
- analyzer->SetOutFile(ROOTFileName.Data());
- // Define output DEF-file 
- analyzer->SetOdefFile("DEF-files/HMS/PRODUCTION/hstackana_production_all.def");
- // Define cuts file
- analyzer->SetCutFile("DEF-files/HMS/PRODUCTION/hstackana_production_cuts.def");    // optional
- // File to record cuts accounting information for cuts
- analyzer->SetSummaryFile(Form("REPORT_OUTPUT/HMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));    // optional
- // Start the actual analysis.
- analyzer->Process(run);
- // Create report file from template.
- analyzer->PrintReport("TEMPLATES/HMS/PRODUCTION/hstackana_production.template",
-		       Form("REPORT_OUTPUT/HMS/PRODUCTION/replay_hms_production_%d_%d.report", RunNumber, MaxEvent));
+  analyzer->SetEvent(event);
+  // Set EPICS event type
+  analyzer->SetEpicsEvtType(180);
+  // Define crate map
+  analyzer->SetCrateMapFileName("MAPS/db_cratemap.dat");
+  // Define output ROOT file
+  analyzer->SetOutFile(ROOTFileName.Data());
+  // Define output DEF-file 
+  analyzer->SetOdefFile("DEF-files/HMS/PRODUCTION/hstackana_production_all.def");
+  // Define cuts file
+  analyzer->SetCutFile("DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts.def");    // optional
+  // File to record cuts accounting information for cuts
+  analyzer->SetSummaryFile(Form("REPORT_OUTPUT/HMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));    // optional
+  // Start the actual analysis.
+  analyzer->Process(run);
+  // Create report file from template.
+  analyzer->PrintReport("TEMPLATES/HMS/PRODUCTION/hstackana_production.template",
+			Form("REPORT_OUTPUT/HMS/PRODUCTION/replay_hms_production_%d_%d.report", RunNumber, MaxEvent));
 
 }
diff --git a/SCRIPTS/HMS/PRODUCTION/replay_production_hms.C b/SCRIPTS/HMS/PRODUCTION/replay_production_hms.C
index 10695ab84fb67cc68e30473e969303bb54d89233..b8d28517b3317e8e5cfe7e79dc51a69ee7dc8f05 100644
--- a/SCRIPTS/HMS/PRODUCTION/replay_production_hms.C
+++ b/SCRIPTS/HMS/PRODUCTION/replay_production_hms.C
@@ -69,9 +69,6 @@ void replay_production_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
   THcShower* cal = new THcShower("cal", "Calorimeter");
   HMS->AddDetector(cal);
 
-  // Include golden track information
-  THaGoldenTrack* gtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
-  gHaPhysics->Add(gtr);
 // Add Rastered Beam Apparatus
   THaApparatus* beam = new THcRasteredBeam("H.rb", "Rastered Beamline");
   gHaApps->Add(beam);  
@@ -79,6 +76,9 @@ void replay_production_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
   gHaPhysics->Add(hrp);
   THcExtTarCor* hext = new THcExtTarCor("H.extcor"," HMS extended target corrections","H","H.react");
   gHaPhysics->Add(hext);
+  // Include golden track information
+  THaGoldenTrack* gtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
+  gHaPhysics->Add(gtr);
 // Add Ideal Beam Apparatus
  // THaApparatus* beam = new THaIdealBeam("IB", "Ideal Beamline");
  // gHaApps->Add(beam);
@@ -147,7 +147,7 @@ void replay_production_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
  // Define output DEF-file 
  analyzer->SetOdefFile("DEF-files/HMS/PRODUCTION/hstackana_production.def");
  // Define cuts file
- analyzer->SetCutFile("DEF-files/HMS/PRODUCTION/hstackana_production_cuts.def");    // optional
+ analyzer->SetCutFile("DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts.def");    // optional
  // File to record cuts accounting information for cuts
  analyzer->SetSummaryFile(Form("REPORT_OUTPUT/HMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));    // optional
  // Start the actual analysis.
diff --git a/SCRIPTS/HMS/PRODUCTION/replay_production_hms_coin.C b/SCRIPTS/HMS/PRODUCTION/replay_production_hms_coin.C
index b3e0d622b8981cd8d8b77b693b51169df32c0264..a2c3664b004fc3d84b6f5211262fbc53650c31b2 100644
--- a/SCRIPTS/HMS/PRODUCTION/replay_production_hms_coin.C
+++ b/SCRIPTS/HMS/PRODUCTION/replay_production_hms_coin.C
@@ -75,9 +75,6 @@ void replay_production_hms_coin(Int_t RunNumber=0, Int_t MaxEvent=0) {
   hms->SetSpectName("H");
   TRG->AddDetector(hms);
 
-  // Include golden track information
-  THaGoldenTrack* gtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
-  gHaPhysics->Add(gtr);
 // Add Rastered Beam Apparatus
   THaApparatus* beam = new THcRasteredBeam("H.rb", "Rastered Beamline");
   gHaApps->Add(beam);  
@@ -85,6 +82,9 @@ void replay_production_hms_coin(Int_t RunNumber=0, Int_t MaxEvent=0) {
   gHaPhysics->Add(hrp);
   THcExtTarCor* hext = new THcExtTarCor("H.extcor"," HMS extended target corrections","H","H.react");
   gHaPhysics->Add(hext);
+  // Include golden track information
+  THaGoldenTrack* gtr = new THaGoldenTrack("H.gtr", "HMS Golden Track", "H");
+  gHaPhysics->Add(gtr);
 // Add Ideal Beam Apparatus
  // THaApparatus* beam = new THaIdealBeam("IB", "Ideal Beamline");
  // gHaApps->Add(beam);
@@ -103,6 +103,10 @@ void replay_production_hms_coin(Int_t RunNumber=0, Int_t MaxEvent=0) {
   // Add handler for scaler events
   THcScalerEvtHandler *hscaler = new THcScalerEvtHandler("H", "Hall C scaler event type 2");  
   hscaler->AddEvtType(2);
+  hscaler->AddEvtType(4);
+  hscaler->AddEvtType(5);
+  hscaler->AddEvtType(6);
+  hscaler->AddEvtType(7);
   hscaler->AddEvtType(129);
   hscaler->SetDelayedType(129);
   hscaler->SetUseFirstEvent(kTRUE);
@@ -153,7 +157,7 @@ void replay_production_hms_coin(Int_t RunNumber=0, Int_t MaxEvent=0) {
  // Define output DEF-file 
  analyzer->SetOdefFile("DEF-files/HMS/PRODUCTION/hstackana_production.def");
  // Define cuts file
- analyzer->SetCutFile("DEF-files/HMS/PRODUCTION/hstackana_production_cuts.def");    // optional
+ analyzer->SetCutFile("DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts.def");    // optional
  // File to record cuts accounting information for cuts
  analyzer->SetSummaryFile(Form("REPORT_OUTPUT/HMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));    // optional
  // Start the actual analysis.
diff --git a/SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C b/SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C
index cdca982292ffb8637673d32c21ab04aeecb217ee..e32b6a7270846461940e232d43823bcb8d0aac94 100644
--- a/SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C
+++ b/SCRIPTS/HMS/PRODUCTION/replay_production_hms_kpp.C
@@ -139,7 +139,7 @@ void replay_production_hms_kpp(Int_t RunNumber=0, Int_t MaxEvent=0) {
  // Define output DEF-file 
  analyzer->SetOdefFile("DEF-files/HMS/PRODUCTION/hstackana_production_kpp.def");
  // Define cuts file
- analyzer->SetCutFile("DEF-files/HMS/PRODUCTION/hstackana_production_cuts_kpp.def");    // optional
+ analyzer->SetCutFile("DEF-files/HMS/PRODUCTION/CUTS/hstackana_production_cuts_kpp.def");    // optional
  // File to record cuts accounting information for cuts
  analyzer->SetSummaryFile(Form("REPORT_OUTPUT/HMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));    // optional
  // Start the actual analysis.
diff --git a/SCRIPTS/SHMS/PRODUCTION/replay_production_all_shms.C b/SCRIPTS/SHMS/PRODUCTION/replay_production_all_shms.C
index b078e434caf5b2eeef5580eb10e8e5954f1e7607..b3c0e7b768d8e0616ccfc5c8638a7192f209fefc 100644
--- a/SCRIPTS/SHMS/PRODUCTION/replay_production_all_shms.C
+++ b/SCRIPTS/SHMS/PRODUCTION/replay_production_all_shms.C
@@ -18,12 +18,12 @@ void replay_production_all_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   // Create file name patterns.
   const char* RunFileNamePattern = "shms_all_%05d.dat";
   vector<TString> pathList;
-    pathList.push_back(".");
-    pathList.push_back("./raw");
-    pathList.push_back("./raw/../raw.copiedtotape");
-    pathList.push_back("./cache");
+  pathList.push_back(".");
+  pathList.push_back("./raw");
+  pathList.push_back("./raw/../raw.copiedtotape");
+  pathList.push_back("./cache");
 
-  const char* ROOTFileNamePattern = "ROOTfiles/shms_replay_production_%d_%d.root";
+  const char* ROOTFileNamePattern = "ROOTfiles/shms_replay_production_all_%d_%d.root";
   
   // Load global parameters
   // Add variables to global list.
@@ -46,8 +46,6 @@ void replay_production_all_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   // Add trigger apparatus
   THaApparatus* TRG = new THcTrigApp("T", "TRG");
   gHaApps->Add(TRG);
-
-  
   // Add trigger detector to trigger apparatus
   THcTrigDet* shms = new THcTrigDet("shms", "SHMS Trigger Information");
   TRG->AddDetector(shms);
@@ -75,24 +73,23 @@ void replay_production_all_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   THcShower* cal = new THcShower("cal", "Calorimeter");
   SHMS->AddDetector(cal);
 
-  // Include golden track information
-  THaGoldenTrack* gtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
-  gHaPhysics->Add(gtr);
   // Add Rastered Beam Apparatus
   THaApparatus* beam = new THcRasteredBeam("P.rb", "Rastered Beamline");
   gHaApps->Add(beam);
-  THaReactionPoint* prp= new THaReactionPoint("P.react"," SHMS reaction point","P","P.rb");
+  THaReactionPoint* prp= new THaReactionPoint("P.react", "SHMS reaction point", "P", "P.rb");
   gHaPhysics->Add(prp);
-  THcExtTarCor* pext = new THcExtTarCor("P.extcor"," HMS extended target corrections","P","P.react");
+  THcExtTarCor* pext = new THcExtTarCor("P.extcor", "HMS extended target corrections", "P", "P.react");
   gHaPhysics->Add(pext);
+  // Include golden track information
+  THaGoldenTrack* gtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
+  gHaPhysics->Add(gtr);
   // Add Physics Module to calculate primary (scattered beam - usually electrons) kinematics
   THcPrimaryKine* kin = new THcPrimaryKine("P.kin", "SHMS Single Arm Kinematics", "P", "P.rb");
   gHaPhysics->Add(kin);
- THcHodoEff* peff = new THcHodoEff("phodeff"," SHMS hodo efficiency","P.hod");
+  // Add physics module to calculate the hodoscope efficiencies
+  THcHodoEff* peff = new THcHodoEff("phodeff", "SHMS hodo efficiency", "P.hod");
   gHaPhysics->Add(peff);
 
-   
-
   // Add event handler for prestart event 125.
   THcConfigEvtHandler* ev125 = new THcConfigEvtHandler("HC", "Config Event type 125");
   gHaEvtHandlers->Add(ev125);
@@ -152,7 +149,7 @@ void replay_production_all_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   // Define DEF-file
   analyzer->SetOdefFile("DEF-files/SHMS/PRODUCTION/pstackana_production_all.def");
   // Define cuts file
-  analyzer->SetCutFile("DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def");  // optional
+  analyzer->SetCutFile("DEF-files/SHMS/PRODUCTION/CUTS/pstackana_production_cuts.def");  // optional
   // File to record accounting information for cuts
   analyzer->SetSummaryFile(Form("REPORT_OUTPUT/SHMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));  // optional
   // Start the actual analysis.
diff --git a/SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C b/SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C
index 3041ef40e98131e15a219a04a52ac0da1815e733..a0b3be0f1fee4496be159296d696181bc2bc481b 100644
--- a/SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C
+++ b/SCRIPTS/SHMS/PRODUCTION/replay_production_shms.C
@@ -75,9 +75,6 @@ void replay_production_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   THcShower* cal = new THcShower("cal", "Calorimeter");
   SHMS->AddDetector(cal);
 
-  // Include golden track information
-  THaGoldenTrack* gtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
-  gHaPhysics->Add(gtr);
   // Add Rastered Beam Apparatus
   THaApparatus* beam = new THcRasteredBeam("P.rb", "Rastered Beamline");
   gHaApps->Add(beam);
@@ -85,6 +82,9 @@ void replay_production_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   gHaPhysics->Add(prp);
   THcExtTarCor* pext = new THcExtTarCor("P.extcor"," HMS extended target corrections","P","P.react");
   gHaPhysics->Add(pext);
+  // Include golden track information
+  THaGoldenTrack* gtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
+  gHaPhysics->Add(gtr);
   // Add Physics Module to calculate primary (scattered beam - usually electrons) kinematics
   THcPrimaryKine* kin = new THcPrimaryKine("P.kin", "SHMS Single Arm Kinematics", "P", "P.rb");
   gHaPhysics->Add(kin);
@@ -152,7 +152,7 @@ void replay_production_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   // Define DEF-file
   analyzer->SetOdefFile("DEF-files/SHMS/PRODUCTION/pstackana_production.def");
   // Define cuts file
-  analyzer->SetCutFile("DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def");  // optional
+  analyzer->SetCutFile("DEF-files/SHMS/PRODUCTION/CUTS/pstackana_production_cuts.def");  // optional
   // File to record accounting information for cuts
   analyzer->SetSummaryFile(Form("REPORT_OUTPUT/SHMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));  // optional
   // Start the actual analysis.
diff --git a/SCRIPTS/SHMS/PRODUCTION/replay_production_shms_coin.C b/SCRIPTS/SHMS/PRODUCTION/replay_production_shms_coin.C
index 93b7a2ee1d8c409dc99a9bf8ee872abf21dd5135..774bebca8d55f6843ae9ca977f7d51b3affd4bf3 100644
--- a/SCRIPTS/SHMS/PRODUCTION/replay_production_shms_coin.C
+++ b/SCRIPTS/SHMS/PRODUCTION/replay_production_shms_coin.C
@@ -80,9 +80,6 @@ void replay_production_shms_coin (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   shms->SetSpectName("P");
   TRG->AddDetector(shms);
 
-  // Include golden track information
-  THaGoldenTrack* gtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
-  gHaPhysics->Add(gtr);
   // Add Rastered Beam Apparatus
   THaApparatus* beam = new THcRasteredBeam("P.rb", "Rastered Beamline");
   gHaApps->Add(beam);
@@ -90,6 +87,9 @@ void replay_production_shms_coin (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   gHaPhysics->Add(prp);
   THcExtTarCor* pext = new THcExtTarCor("P.extcor"," HMS extended target corrections","P","P.react");
   gHaPhysics->Add(pext);
+  // Include golden track information
+  THaGoldenTrack* gtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
+  gHaPhysics->Add(gtr);
   // Add Physics Module to calculate primary (scattered beam - usually electrons) kinematics
   THcPrimaryKine* kin = new THcPrimaryKine("P.kin", "SHMS Single Arm Kinematics", "P", "P.rb");
   gHaPhysics->Add(kin);
@@ -107,6 +107,10 @@ void replay_production_shms_coin (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   // Add event handler for scaler events
   THcScalerEvtHandler* pscaler = new THcScalerEvtHandler("P", "Hall C scaler event type 1");
   pscaler->AddEvtType(1);
+  pscaler->AddEvtType(4);
+  pscaler->AddEvtType(5);
+  pscaler->AddEvtType(6);
+ pscaler->AddEvtType(7);
   pscaler->AddEvtType(129);
   pscaler->SetDelayedType(129);
   pscaler->SetUseFirstEvent(kTRUE);
@@ -157,7 +161,7 @@ void replay_production_shms_coin (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   // Define DEF-file
   analyzer->SetOdefFile("DEF-files/SHMS/PRODUCTION/pstackana_production.def");
   // Define cuts file
-  analyzer->SetCutFile("DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def");  // optional
+  analyzer->SetCutFile("DEF-files/SHMS/PRODUCTION/CUTS/pstackana_production_cuts.def");  // optional
   // File to record accounting information for cuts
   analyzer->SetSummaryFile(Form("REPORT_OUTPUT/SHMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));  // optional
   // Start the actual analysis.
diff --git a/SCRIPTS/SHMS/PRODUCTION/replay_production_shms_kpp.C b/SCRIPTS/SHMS/PRODUCTION/replay_production_shms_kpp.C
index 5362996738de395846553ad18b9bca135bce6cd5..c453b937c0582b884720cf1a1cb8d04a471544c0 100644
--- a/SCRIPTS/SHMS/PRODUCTION/replay_production_shms_kpp.C
+++ b/SCRIPTS/SHMS/PRODUCTION/replay_production_shms_kpp.C
@@ -148,7 +148,7 @@ void replay_production_shms_kpp (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   // Define DEF-file
   analyzer->SetOdefFile("DEF-files/SHMS/PRODUCTION/pstackana_production.def");
   // Define cuts file
-  analyzer->SetCutFile("DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def");  // optional
+  analyzer->SetCutFile("DEF-files/SHMS/PRODUCTION/CUTS/pstackana_production_cuts.def");  // optional
   // File to record accounting information for cuts
   analyzer->SetSummaryFile(Form("REPORT_OUTPUT/SHMS/PRODUCTION/summary_production_%d_%d.report", RunNumber, MaxEvent));  // optional
   // Start the actual analysis.
diff --git a/TEMPLATES/COIN/PRODUCTION/coin_production.template b/TEMPLATES/COIN/PRODUCTION/coin_production.template
index 83d2e2f54115365552aef5bb83129fd6211229c7..ff42f22f2dd0af901970ba7663e9a5b2300cb539 100644
--- a/TEMPLATES/COIN/PRODUCTION/coin_production.template
+++ b/TEMPLATES/COIN/PRODUCTION/coin_production.template
@@ -475,6 +475,8 @@ f1pspacepoints                 : {f1PSpacePoints.npassed}
 f2pspacepoints                 : {f2PSpacePoints.npassed}
 ptest1=p hits/planes, f sp     : {pTest1.npassed}
 ptest2=p sp, f stubs           : {pTest2.npassed}
+pdcanylarge    		       : {shmsDCany_large.npassed}
+pgoodbetanotrk		       : {shmsGoodBetanotrk.npassed}
 pdid                           : {shmsScinDid.npassed}
 pdide                          : {shmsScinDide.npassed}
 pdidh                          : {shmsScinDidh.npassed}
@@ -612,6 +614,10 @@ f1hspacepoints                 :   {f1HSpacePoints.npassed}
 f2hspacepoints                 :   {f2HSpacePoints.npassed}
 htest1=p hits/planes, f sp     :   {hTest1.npassed}
 htest2=p sp, f stubs           :   {hTest2.npassed}
+hdcanylarge                    :   {hmsDCany_large.npassed}
+hdc16hits                      :   {hmsDC1Planes6hits.npassed}
+hdc26hits		       :   {hmsDC2Planes6hits.npassed}
+hgoodbetanotrk 		       :   {HMSGoodBetanotrk.npassed}
 hdid                           :   {HMSScinDid.npassed}
 hdide                          :   {HMSScinDide.npassed}
 hdidh                          :   {HMSScinDidh.npassed}
diff --git a/TEMPLATES/HMS/PRODUCTION/hstackana_production.template b/TEMPLATES/HMS/PRODUCTION/hstackana_production.template
index e2c08cd0c66a73de1b12fec96a327a1510bc9214..a5aba047c3a5c208c4009a2de88a1c1e43fae054 100644
--- a/TEMPLATES/HMS/PRODUCTION/hstackana_production.template
+++ b/TEMPLATES/HMS/PRODUCTION/hstackana_production.template
@@ -126,6 +126,45 @@ Accepted EDTM Triggers  : {hcut_edtm_accepted.npassed}
 Total Live Time (EDTM) : {(hcut_edtm_accepted.npassed / H.EDTM.scaler)*100.0:%3.4f} %
 Total Dead Time (EDTM) : {100.0 - (hcut_edtm_accepted.npassed / H.EDTM.scaler)*100.0:%3.4f} %
 
+=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:
+= Live/Dead Time Calculations
+=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:
+
+HMS Computer Live Time : {(hcut_TRIG1.npassed / H.hTRIG1.scaler)*100.0:%3.4f} % 
+HMS Computer Dead Time : {100.0 - (hcut_TRIG1.npassed / H.hTRIG1.scaler)*100.0:%3.4f} % 
+
+Pre-Scaled Ps1 HMS Computer Live Time : {(hcut_TRIG1.npassed / (H.hTRIG1.scaler/ghconfig_ti_ps_factors[0]))*100.0:%3.4f} %
+Pre-Scaled Ps1 HMS Computer Dead Time : {100.0 - (hcut_TRIG1.npassed / (H.hTRIG1.scaler/ghconfig_ti_ps_factors[0]))*100.0:%3.4f} %
+
+Pre-Scaled Ps2 HMS Computer Live Time : {(hcut_TRIG2.npassed / (H.hTRIG2.scaler/ghconfig_ti_ps_factors[1]))*100.0:%3.4f} %
+Pre-Scaled Ps2 HMS Computer Dead Time : {100.0 - (hcut_TRIG2.npassed / (H.hTRIG2.scaler/ghconfig_ti_ps_factors[1]))*100.0:%3.4f} %
+
+Pre-Scaled Ps3 HMS Computer Live Time : {(hcut_TRIG3.npassed / (H.hTRIG3.scaler/ghconfig_ti_ps_factors[2]))*100.0:%3.4f} %
+Pre-Scaled Ps3 HMS Computer Dead Time : {100.0 - (hcut_TRIG3.npassed / (H.hTRIG3.scaler/ghconfig_ti_ps_factors[2]))*100.0:%3.4f} %
+
+Total Live Time (EDTM) : {(hcut_edtm_accepted.npassed / H.EDTM.scaler)*100.0:%3.4f} %
+Total Dead Time (EDTM) : {100.0 - (hcut_edtm_accepted.npassed / H.EDTM.scaler)*100.0:%3.4f} %
+
+Pre-Scaled Ps1 Total Live Time (EDTM) : {(hcut_edtm_accepted.npassed / (H.EDTM.scaler/ghconfig_ti_ps_factors[0]))*100.0:%3.4f} %
+Pre-Scaled Ps1 Total Dead Time (EDTM) : {100.0 - (hcut_edtm_accepted.npassed / (H.EDTM.scaler/ghconfig_ti_ps_factors[0]))*100.0:%3.4f} %
+
+Pre-Scaled Ps2 Total Live Time (EDTM) : {(hcut_edtm_accepted.npassed / (H.EDTM.scaler/ghconfig_ti_ps_factors[1]))*100.0:%3.4f} %
+Pre-Scaled Ps2 Total Dead Time (EDTM) : {100.0 - (hcut_edtm_accepted.npassed / (H.EDTM.scaler/ghconfig_ti_ps_factors[1]))*100.0:%3.4f} %
+
+Pre-Scaled Ps3 Total Live Time (EDTM) : {(hcut_edtm_accepted.npassed / (H.EDTM.scaler/ghconfig_ti_ps_factors[2]))*100.0:%3.4f} %
+Pre-Scaled Ps3 Total Dead Time (EDTM) : {100.0 - (hcut_edtm_accepted.npassed / (H.EDTM.scaler/ghconfig_ti_ps_factors[2]))*100.0:%3.4f} %
+
+
+3/4      Pre-Trigger 50 ns Gate  : {H.hTRIG1.scalerRate/1000.:%.3f} kHz
+EL-REAL  Pre-Trigger 50 ns Gate  : {H.hTRIG2.scalerRate/1000.:%.3f} kHz
+EL-CLEAN Pre-Trigger 50 ns Gate  : {H.hTRIG3.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 100 ns Gate : {H.hPRE100.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 150 ns Gate : {H.hPRE150.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 200 ns Gate : {H.hPRE200.scalerRate/1000.:%.3f} kHz
+
 =:=:=:=:=:=:=:
 = Hodoscopes
 =:=:=:=:=:=:=:
diff --git a/TEMPLATES/HMS/SCALERS/hscalers.template b/TEMPLATES/HMS/SCALERS/hscalers.template
index 237062a406e069b834d24f77be6c9a817167617c..9d764a9aaaeb854bf508614beb37b98c8db6cea7 100644
--- a/TEMPLATES/HMS/SCALERS/hscalers.template
+++ b/TEMPLATES/HMS/SCALERS/hscalers.template
@@ -191,6 +191,16 @@ OG 6 GeV Electronic Dead Time (100, 200) : {((H.pPRE100.scaler - H.pPRE200.scale
 OG 6 GeV Electronic Live Time (150, 200) : {100.0 - ((H.pPRE150.scaler - H.pPRE200.scaler)/H.pPRE150.scaler):%3.4f} %
 OG 6 GeV Electronic Dead Time (150, 200) : {((H.pPRE150.scaler - H.pPRE200.scaler)/H.pPRE150.scaler):%3.4f} %
 
+3/4      Pre-Trigger 50 ns Gate  : {H.hTRIG1.scalerRate/1000.:%.3f} kHz
+EL-REAL  Pre-Trigger 50 ns Gate  : {H.hTRIG2.scalerRate/1000.:%.3f} kHz
+EL-CLEAN Pre-Trigger 50 ns Gate  : {H.hTRIG3.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 100 ns Gate : {H.hPRE100.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 150 ns Gate : {H.hPRE150.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 200 ns Gate : {H.hPRE200.scalerRate/1000.:%.3f} kHz
+
 
 =:=:=:=:=:=:=:
 = Hodoscopes
diff --git a/TEMPLATES/SHMS/PRODUCTION/pstackana_production.template b/TEMPLATES/SHMS/PRODUCTION/pstackana_production.template
index 41e4b071a2a2bfb26f0d09eb5415e55fca36e392..654c97b0ee64fce543ea8043e715e3457d715669 100644
--- a/TEMPLATES/SHMS/PRODUCTION/pstackana_production.template
+++ b/TEMPLATES/SHMS/PRODUCTION/pstackana_production.template
@@ -127,6 +127,43 @@ Accepted EDTM Triggers  : {pcut_edtm_accepted.npassed}
 Total Live Time (EDTM) : {(pcut_edtm_accepted.npassed / P.EDTM.scaler)*100.0:%3.4f} %
 Total Dead Time (EDTM) : {100.0 - (pcut_edtm_accepted.npassed / P.EDTM.scaler)*100.0:%3.4f} %
 
+=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:
+= Live/Dead Time Calculations
+=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:
+
+SHMS Computer Live Time : {(pcut_TRIG1.npassed / P.pTRIG1.scaler)*100.0:%3.4f} % 
+SHMS Computer Dead Time : {100.0 - (pcut_TRIG1.npassed / P.pTRIG1.scaler)*100.0:%3.4f} % 
+
+Pre-Scaled Ps1 SHMS Computer Live Time : {(pcut_TRIG1.npassed / (P.pTRIG1.scaler/gpconfig_ti_ps_factors[0]))*100.0:%3.4f} %
+Pre-Scaled Ps1 SHMS Computer Dead Time : {100.0 - (pcut_TRIG1.npassed / (P.pTRIG1.scaler/gpconfig_ti_ps_factors[0]))*100.0:%3.4f} %
+
+Pre-Scaled Ps2 SHMS Computer Live Time : {(pcut_TRIG2.npassed / (P.pTRIG2.scaler/gpconfig_ti_ps_factors[1]))*100.0:%3.4f} %
+Pre-Scaled Ps2 SHMS Computer Dead Time : {100.0 - (pcut_TRIG2.npassed / (P.pTRIG2.scaler/gpconfig_ti_ps_factors[1]))*100.0:%3.4f} %
+
+Pre-Scaled Ps3 SHMS Computer Live Time : {(pcut_TRIG3.npassed / (P.pTRIG3.scaler/gpconfig_ti_ps_factors[2]))*100.0:%3.4f} %
+Pre-Scaled Ps3 SHMS Computer Dead Time : {100.0 - (pcut_TRIG3.npassed / (P.pTRIG3.scaler/gpconfig_ti_ps_factors[2]))*100.0:%3.4f} %
+
+Total Live Time (EDTM) : {(pcut_edtm_accepted.npassed / P.EDTM.scaler)*100.0:%3.4f} %
+Total Dead Time (EDTM) : {100.0 - (pcut_edtm_accepted.npassed / P.EDTM.scaler)*100.0:%3.4f} %
+
+Pre-Scaled Ps1 Total Live Time (EDTM) : {(pcut_edtm_accepted.npassed / (P.EDTM.scaler/gpconfig_ti_ps_factors[0]))*100.0:%3.4f} %
+Pre-Scaled Ps1 Total Dead Time (EDTM) : {100.0 - (pcut_edtm_accepted.npassed / (P.EDTM.scaler/gpconfig_ti_ps_factors[0]))*100.0:%3.4f} %
+
+Pre-Scaled Ps2 Total Live Time (EDTM) : {(pcut_edtm_accepted.npassed / (P.EDTM.scaler/gpconfig_ti_ps_factors[1]))*100.0:%3.4f} %
+Pre-Scaled Ps2 Total Dead Time (EDTM) : {100.0 - (pcut_edtm_accepted.npassed / (P.EDTM.scaler/gpconfig_ti_ps_factors[1]))*100.0:%3.4f} %
+
+Pre-Scaled Ps3 Total Live Time (EDTM) : {(pcut_edtm_accepted.npassed / (P.EDTM.scaler/gpconfig_ti_ps_factors[2]))*100.0:%3.4f} %
+Pre-Scaled Ps3 Total Dead Time (EDTM) : {100.0 - (pcut_edtm_accepted.npassed / (P.EDTM.scaler/gpconfig_ti_ps_factors[2]))*100.0:%3.4f} %
+
+3/4      Pre-Trigger 50 ns Gate  : {P.pTRIG1.scalerRate/1000.:%.3f} kHz
+EL-REAL  Pre-Trigger 50 ns Gate  : {P.pTRIG2.scalerRate/1000.:%.3f} kHz
+EL-CLEAN Pre-Trigger 50 ns Gate  : {P.pTRIG3.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 100 ns Gate : {P.pPRE100.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 150 ns Gate : {P.pPRE150.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 200 ns Gate : {P.pPRE200.scalerRate/1000.:%.3f} kHz
 =:=:=:=:=:=:=:
 = Hodoscopes
 =:=:=:=:=:=:=:
@@ -138,7 +175,6 @@ P2Y : {P.S2Y.scaler} [ {(P.S2Y.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND b
 
 P1XP1Y : {P.S1XS1Y.scaler} [ {(P.S1XS1Y.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between P1X and P1Y planes 
 P2XP2Y : {P.S2XS2Y.scaler} [ {(P.S2XS2Y.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between P2X and P2Y planes                                        
-
 =:=:=:=:=:=:=:=:=:=:=:=:=
 = Aerogel, HGC, NGC, CAL
 =:=:=:=:=:=:=:=:=:=:=:=:=
diff --git a/TEMPLATES/SHMS/SCALERS/pscalers.template b/TEMPLATES/SHMS/SCALERS/pscalers.template
index 5911ee4765bf86631c4dc52c07d5d9032ac2f91b..1973c00547de09ae39caa9b953d632e44eadc4c2 100644
--- a/TEMPLATES/SHMS/SCALERS/pscalers.template
+++ b/TEMPLATES/SHMS/SCALERS/pscalers.template
@@ -194,6 +194,17 @@ OG 6 GeV Electronic Dead Time (100, 200) : {((P.pPRE100.scaler - P.pPRE200.scale
 OG 6 GeV Electronic Live Time (150, 200) : {100.0 - ((P.pPRE150.scaler - P.pPRE200.scaler)/P.pPRE150.scaler):%3.4f} %
 OG 6 GeV Electronic Dead Time (150, 200) : {((P.pPRE150.scaler - P.pPRE200.scaler)/P.pPRE150.scaler):%3.4f} %
 
+
+3/4      Pre-Trigger 50 ns Gate  : {P.pTRIG1.scalerRate/1000.:%.3f} kHz
+EL-REAL  Pre-Trigger 50 ns Gate  : {P.pTRIG2.scalerRate/1000.:%.3f} kHz
+EL-CLEAN Pre-Trigger 50 ns Gate  : {P.pTRIG3.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 100 ns Gate : {P.pPRE100.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 150 ns Gate : {P.pPRE150.scalerRate/1000.:%.3f} kHz
+
+3/4 Pre-Trigger 200 ns Gate : {P.pPRE200.scalerRate/1000.:%.3f} kHz
+
 =:=:=:=:=:=:=:
 = Hodoscopes
 =:=:=:=:=:=:=:
diff --git a/onlineGUI/CONFIG/HMS/PRODUCTION/hms_coin_production.cfg b/onlineGUI/CONFIG/HMS/PRODUCTION/hms_coin_production.cfg
index aec54a8a548004a56a943e3a7f9080637dafd8d3..508e78d9e8d4083a35bf51f8bb9e079c6e00447e 100644
--- a/onlineGUI/CONFIG/HMS/PRODUCTION/hms_coin_production.cfg
+++ b/onlineGUI/CONFIG/HMS/PRODUCTION/hms_coin_production.cfg
@@ -190,10 +190,3 @@ htrig2rate_vs_time -nostat
 htrig3rate_vs_time -nostat
 htrig4rate_vs_time -nostat
 htrig6rate_vs_time -nostat
-
-newpage 2 2
-title HMS EPICS
-hac_bcm_average -nostat
-ibcm1 -nostat
-ibcm2 -nostat
-iunser -nostat
diff --git a/onlineGUI/CONFIG/HMS/PRODUCTION/hms_production.cfg b/onlineGUI/CONFIG/HMS/PRODUCTION/hms_production.cfg
index 9fb7cf13eeb3ed3831729b47b0b24d425a184e00..8cc32ebf2249eb27e0e8fbaf2a1c68908a6b05a3 100644
--- a/onlineGUI/CONFIG/HMS/PRODUCTION/hms_production.cfg
+++ b/onlineGUI/CONFIG/HMS/PRODUCTION/hms_production.cfg
@@ -190,11 +190,3 @@ htrig2rate_vs_time -nostat
 htrig3rate_vs_time -nostat
 htrig4rate_vs_time -nostat
 htrig6rate_vs_time -nostat
-
-
-newpage 2 2 
-title HMS EPICS
-hac_bcm_average -nostat
-ibcm1 -nostat
-ibcm2 -nostat
-iunser -nostat
diff --git a/onlineGUI/CONFIG/HMS/TEST_STANDS/DC/hdc_wireeff.cfg b/onlineGUI/CONFIG/HMS/TEST_STANDS/DC/hdc_wireeff.cfg
new file mode 100644
index 0000000000000000000000000000000000000000..106982364bdc338bb98c50646d37f41f2aad0744
--- /dev/null
+++ b/onlineGUI/CONFIG/HMS/TEST_STANDS/DC/hdc_wireeff.cfg
@@ -0,0 +1,35 @@
+protorootfile ../ROOTfiles/hms_replay_production_XXXXX_100000.root
+guicolor lightblue
+canvassize 800 800
+newpage 2 3
+title HMS DC1 
+macro UTIL/GEN/overlay2.C("hdc1x1_wirenum_did","hdc1x1_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc1x2_wirenum_did","hdc1x2_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc1u1_wirenum_did","hdc1u1_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc1u2_wirenum_did","hdc1u2_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc1v1_wirenum_did","hdc1v1_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc1v2_wirenum_did","hdc1v2_wirenum_should","did","should")
+newpage 2 3
+title HMS DC1 eff
+macro UTIL/GEN/dcwire_efficiency.C("hdc1x1_wirenum_did","hdc1x1_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc1x2_wirenum_did","hdc1x2_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc1u1_wirenum_did","hdc1u1_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc1u2_wirenum_did","hdc1u2_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc1v1_wirenum_did","hdc1v1_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc1v2_wirenum_did","hdc1v2_wirenum_should")
+newpage 2 3
+title HMS DC2
+macro UTIL/GEN/overlay2.C("hdc2x1_wirenum_did","hdc2x1_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc2x2_wirenum_did","hdc2x2_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc2u1_wirenum_did","hdc2u1_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc2u2_wirenum_did","hdc2u2_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc2v1_wirenum_did","hdc2v1_wirenum_should","did","should")
+macro UTIL/GEN/overlay2.C("hdc2v2_wirenum_did","hdc2v2_wirenum_should","did","should")
+newpage 2 3
+title HMS DC2 eff
+macro UTIL/GEN/dcwire_efficiency.C("hdc2x1_wirenum_did","hdc2x1_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc2x2_wirenum_did","hdc2x2_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc2u1_wirenum_did","hdc2u1_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc2u2_wirenum_did","hdc2u2_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc2v1_wirenum_did","hdc2v1_wirenum_should")
+macro UTIL/GEN/dcwire_efficiency.C("hdc2v2_wirenum_did","hdc2v2_wirenum_should")
diff --git a/onlineGUI/CONFIG/SHMS/PRODUCTION/shms_coin_production.cfg b/onlineGUI/CONFIG/SHMS/PRODUCTION/shms_coin_production.cfg
index b0ef2754d062f2c4944e0eeaf124dbe309adb04f..c95e90e9e3eecada0662a4871cf4c0ad063a2251 100644
--- a/onlineGUI/CONFIG/SHMS/PRODUCTION/shms_coin_production.cfg
+++ b/onlineGUI/CONFIG/SHMS/PRODUCTION/shms_coin_production.cfg
@@ -156,8 +156,8 @@ ptrig_pFADC_TREF_ROC2_good_tdc -nostat
 
 newpage 2 1
 title SHMS Fast Raster
-pFRA_XvsY -nostat
-pFRB_XvsY -nostat
+pFRAraw_XvsY -nostat
+pFRBraw_XvsY -nostat
 
 newpage 2 2
 title SHMS Kinematics
@@ -215,10 +215,3 @@ ptrig2rate_vs_time -nostat
 ptrig3rate_vs_time -nostat
 ptrig4rate_vs_time -nostat
 ptrig6rate_vs_time -nostat
-
-newpage 2 2
-title EPICS
-hac_bcm_average -nostat
-ibcm1 -nostat
-ibcm2 -nostat
-iunser -nostat
diff --git a/onlineGUI/CONFIG/SHMS/PRODUCTION/shms_production.cfg b/onlineGUI/CONFIG/SHMS/PRODUCTION/shms_production.cfg
index a7afe536270c74d3e479475bc50d389791a93cc1..4f298adcc6995064fc95326eb41a28ea13080428 100644
--- a/onlineGUI/CONFIG/SHMS/PRODUCTION/shms_production.cfg
+++ b/onlineGUI/CONFIG/SHMS/PRODUCTION/shms_production.cfg
@@ -215,10 +215,3 @@ ptrig2rate_vs_time -nostat
 ptrig3rate_vs_time -nostat
 ptrig4rate_vs_time -nostat
 ptrig6rate_vs_time -nostat
-
-newpage 2 2
-title EPICS
-hac_bcm_average -nostat
-ibcm1 -nostat
-ibcm2 -nostat
-iunser -nostat
diff --git a/onlineGUI/UTIL/GEN/dcwire_efficiency.C b/onlineGUI/UTIL/GEN/dcwire_efficiency.C
new file mode 100644
index 0000000000000000000000000000000000000000..6881abc970e54bd5341a6a4a23db8417b1715613
--- /dev/null
+++ b/onlineGUI/UTIL/GEN/dcwire_efficiency.C
@@ -0,0 +1,24 @@
+void dcwire_efficiency(TString hist1name, TString hist2name){
+  TH1F* H1;
+  TH1F* H2;
+  
+  H1 = (TH1F*) gDirectory->Get(hist1name);
+  H2 = (TH1F*) gDirectory->Get(hist2name);
+  if (H1 && H2) {
+    H1->Sumw2();
+    H2->Sumw2();
+    TH1F* Hratio=(TH1F*)H1->Clone();
+    Hratio->Divide(H1,H2,1,1,"B");
+    Hratio->SetStats(0);
+    Hratio->SetMinimum(0.0);
+    Hratio->SetMaximum(1.05);
+    Hratio->Draw("EP");
+    Hratio->GetXaxis()->SetTitleOffset(.6);
+    Hratio->GetXaxis()->SetTitleSize(0.08);
+    Hratio->GetYaxis()->SetTitleOffset(.6);
+    Hratio->GetYaxis()->SetTitleSize(0.08);
+  } else {
+    if (!H1) cout << " Histogram " << hist1name << " does not exist" << endl;
+    if (!H2) cout << " Histogram " << hist2name << " does not exist" << endl;
+  }
+}