From ae6fc5546789949aee94fb0f94a7f114cef30b53 Mon Sep 17 00:00:00 2001
From: teaandcrumpets <klcraycraft@gmail.com>
Date: Wed, 3 Jan 2018 09:03:08 -0500
Subject: [PATCH]  Formatting and additions to HMS and SHMS template files.
 (#348)

---
 DEF-files/HMS/STACK/hstackana_cuts.def        |  12 +-
 .../PRODUCTION/pstackana_production_cuts.def  |  39 ++
 SCRIPTS/HMS/STACK/replay_hms.C                |   2 +
 SCRIPTS/SHMS/STACK/replay_shms.C              |   2 +
 .../PRODUCTION/hstackana_production.template  | 571 ++++++++--------
 TEMPLATES/HMS/SCALERS/hscalers.template       | 285 ++++----
 TEMPLATES/HMS/STACK/hstackana.template        | 125 +++-
 .../PRODUCTION/pstackana_production.template  | 623 ++++++++++++------
 TEMPLATES/SHMS/SCALERS/pscalers.template      | 318 +++++----
 TEMPLATES/SHMS/STACK/pstackana.template       | 355 +++++-----
 10 files changed, 1336 insertions(+), 996 deletions(-)

diff --git a/DEF-files/HMS/STACK/hstackana_cuts.def b/DEF-files/HMS/STACK/hstackana_cuts.def
index 177bd3a7..a6860328 100644
--- a/DEF-files/HMS/STACK/hstackana_cuts.def
+++ b/DEF-files/HMS/STACK/hstackana_cuts.def
@@ -35,8 +35,6 @@ time_cut10                            H.dc.2v1.time > 0 && H.dc.2v1.time < 250
 time_cut11                            H.dc.2v2.time > 0 && H.dc.2v2.time < 250
 time_cut12                            H.dc.2x2.time > 0 && H.dc.2x2.time < 250
 
-
-
 hmsDC1Planes_large  (H.dc.1x1.nhit+H.dc.1u2.nhit+H.dc.1u1.nhit+H.dc.1v1.nhit+H.dc.1x2.nhit+H.dc.1v2.nhit) >20
 hmsDC2Planes_large  (H.dc.2x1.nhit+H.dc.2u2.nhit+H.dc.2u1.nhit+H.dc.2v1.nhit+H.dc.2x2.nhit+H.dc.2v2.nhit) >20
 
@@ -96,9 +94,6 @@ hmsDC2_6hits_x2     h2hit6&&hmsDC2_1hit_x1&&hmsDC2_1hit_u2&&hmsDC2_1hit_u1&&hmsD
 hmsDC2_5hits_v2     hmsDC2_1hit_x1&&hmsDC2_1hit_u2&&hmsDC2_1hit_u1&&hmsDC2_1hit_v1&&hmsDC2_1hit_x2
 hmsDC2_6hits_v2     h2hit5&&hmsDC2_1hit_x1&&hmsDC2_1hit_u2&&hmsDC2_1hit_u1&&hmsDC2_1hit_v1&&hmsDC2_1hit_x2
 
-
-
-
 hms1HitsLt            H.dc.Ch1.nhit <= H.dc.Ch1.maxhits && g.evtyp==1
 hms2HitsLt            H.dc.Ch2.nhit <= H.dc.Ch2.maxhits && g.evtyp==1
 hmsHitsLt             H.dc.Ch1.nhit <= H.dc.Ch1.maxhits && H.dc.Ch2.nhit <= H.dc.Ch2.maxhits && g.evtyp==1
@@ -195,5 +190,12 @@ goodhs2y              H.hod.2y.nhits > 0 && H.hod.2y.nhits < 3
 goodhs2               goodhs2x && goodhs2y
 goodhs1s2             goodhs1 && goodhs2
 
+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 HMS_event
diff --git a/DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def b/DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def
index ee491d0d..c212d4dd 100644
--- a/DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def
+++ b/DEF-files/SHMS/PRODUCTION/pstackana_production_cuts.def
@@ -231,5 +231,44 @@ goodps2y      P.hod.2y.nhits > 0 && P.hod.2y.nhits < 3
 goodps2       goodps2x && goodps2y
 goodps1s2     goodps1 && goodps2
 
+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 SHMS_event
diff --git a/SCRIPTS/HMS/STACK/replay_hms.C b/SCRIPTS/HMS/STACK/replay_hms.C
index 0d0d0f2d..551bf315 100644
--- a/SCRIPTS/HMS/STACK/replay_hms.C
+++ b/SCRIPTS/HMS/STACK/replay_hms.C
@@ -71,6 +71,8 @@ void replay_hms(Int_t RunNumber=0, Int_t MaxEvent=0) {
   // Add handler for prestart event 125.
   THcConfigEvtHandler* ev125 = new THcConfigEvtHandler("HC", "Config Event type 125");
   gHaEvtHandlers->Add(ev125);
+ THcHodoEff* heff = new THcHodoEff("hhodeff"," HMS hodo efficiency","H.hod");
+  gHaPhysics->Add(heff);
 
   // Set up the analyzer - we use the standard one,
   // but this could be an experiment-specific one as well.
diff --git a/SCRIPTS/SHMS/STACK/replay_shms.C b/SCRIPTS/SHMS/STACK/replay_shms.C
index 44d8e749..faa45e54 100644
--- a/SCRIPTS/SHMS/STACK/replay_shms.C
+++ b/SCRIPTS/SHMS/STACK/replay_shms.C
@@ -74,6 +74,8 @@ void replay_shms (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
   // Include golden track information
   THaGoldenTrack* gtr = new THaGoldenTrack("P.gtr", "SHMS Golden Track", "P");
   gHaPhysics->Add(gtr);
+ THcHodoEff* peff = new THcHodoEff("phodeff"," SHMS hodo efficiency","P.hod");
+  gHaPhysics->Add(peff);
 
   // Add handler for prestart event 125.
   THcConfigEvtHandler* ev125 = new THcConfigEvtHandler("HC", "Config Event type 125");
diff --git a/TEMPLATES/HMS/PRODUCTION/hstackana_production.template b/TEMPLATES/HMS/PRODUCTION/hstackana_production.template
index f78a66a7..fbc4d028 100644
--- a/TEMPLATES/HMS/PRODUCTION/hstackana_production.template
+++ b/TEMPLATES/HMS/PRODUCTION/hstackana_production.template
@@ -11,19 +11,19 @@ Run Length   : {H.1Mhz.scalerTime:%.3f} sec
 * Beamline
 ***********
   
-BCM1 Current:	{H.BCM1.scalerCurrent:%.3f} uA		  
-BCM2 Current: 	{H.BCM2.scalerCurrent:%.3f} uA		 
-Unser Current: 	{H.Unser.scalerCurrent:%.3f} uA		  
+BCM1 Current: {H.BCM1.scalerCharge/H.1Mhz.scalerTime:%.3f} uA		  
+BCM2 Current: {H.BCM2.scalerCharge/H.1Mhz.scalerTime:%.3f} uA		 
+Unser Current: {H.Unser.scalerCharge/H.1Mhz.scalerTime:%.3f} uA		  
 
 With no cuts on BCM{gBCM_Current_threshold_index+1}.
-BCM1 Counts: 	{H.BCM1.scaler}		Total Charge: {H.BCM1.scalerCharge:%.3f} uC
-BCM2 Counts: 	{H.BCM2.scaler}	     	Total Charge: {H.BCM2.scalerCharge:%.3f} uC	
-Unser Counts: 	{H.Unser.scaler}     	     	Total Charge: {H.Unser.scalerCharge:%.3f} uC
+BCM1 Counts: {H.BCM1.scaler}		Total Charge: {H.BCM1.scalerCharge:%.3f} uC
+BCM2 Counts: {H.BCM2.scaler} 		Total Charge: {H.BCM2.scalerCharge:%.3f} uC	
+Unser Counts: {H.Unser.scaler} 		Total Charge: {H.Unser.scalerCharge:%.3f} uC
 
 Cut on BCM{gBCM_Current_threshold_index+1} current of {gBCM_Current_threshold} uA. Beam over threshold for {H.1Mhz.scalerTimeCut:%.3f}s, or {((H.1Mhz.scalerTimeCut/H.1Mhz.scalerTime)*100.):%.3f}% of total run time.
-BCM1 Counts: 	{H.BCM1.scalerCut}		Total Charge: {H.BCM1.scalerChargeCut:%.3f} uC
-BCM2 Counts: 	{H.BCM2.scalerCut}		Total Charge: {H.BCM2.scalerChargeCut:%.3f} uC
-Unser Counts: 	{H.Unser.scalerCut}		Total Charge: {H.Unser.scalerChargeCut:%.3f} uC
+BCM1 Counts: {H.BCM1.scalerCut} 	Total Charge: {H.BCM1.scalerChargeCut:%.3f} uC
+BCM2 Counts: {H.BCM2.scalerCut} 	Total Charge: {H.BCM2.scalerChargeCut:%.3f} uC
+Unser Counts: {H.Unser.scalerCut} 	Total Charge: {H.Unser.scalerChargeCut:%.3f} uC
 
 {hdc_plane_names}
 Horizontal drift chamber z positions:
@@ -56,6 +56,36 @@ HMS Event Types            : {HMS_Pretrig.npassed}
 HMS Computer Live Time : {(TRIG1.npassed / H.hTRIG1.scaler)*100.0:%3.4f} % [ {(TRIG1.npassed / (H.hTRIG1.scaler/ghconfig_ti_ps_factors[0]))*100.0:%3.4f} %  ]
 HMS Computer Dead Time : {100.0 - (TRIG1.npassed / H.hTRIG1.scaler)*100.0:%3.4f} % [ {100.0 - (TRIG1.npassed / (H.hTRIG1.scaler/ghconfig_ti_ps_factors[0]))*100.0:%3.4f} %  ]
 
+*************
+* MORE TRIGGERS
+**************
+HMS TRIG
+hEL_LO :	{H.hEL_LO.scaler}	[{H.hEL_LO.scaler/H.1Mhz.scalerTime}]
+hEL_HI :	{H.hEL_HI.scaler}	[{H.hEL_HI.scaler/H.1Mhz.scalerTime}]
+hEL_REAL :	{H.hEL_REAL.scaler}	[{H.hEL_REAL.scaler/H.1Mhz.scalerTime}]
+hEL_CLEAN :	{H.hEL_CLEAN.scaler}	[{H.hEL_CLEAN.scaler/H.1Mhz.scalerTime}]
+hSTOF:	  	{H.hSTOF.scaler}	[{H.hSTOF.scaler/H.1Mhz.scalerTime}]
+
+hTRIG1:	  	{H.hTRIG1.scaler} 	[{H.hTRIG1.scaler/H.1Mhz.scalerTime}]
+hTRIG2:	  	{H.hTRIG2.scaler} 	[{H.hTRIG2.scaler/H.1Mhz.scalerTime}]
+hTRIG3:	  	{H.hTRIG3.scaler} 	[{H.hTRIG3.scaler/H.1Mhz.scalerTime}]
+hTRIG4:	  	{H.hTRIG4.scaler} 	[{H.hTRIG4.scaler/H.1Mhz.scalerTime}]
+hTRIG5:	  	{H.hTRIG5.scaler} 	[{H.hTRIG5.scaler/H.1Mhz.scalerTime}]
+hTRIG6:	  	{H.hTRIG6.scaler} 	[{H.hTRIG6.scaler/H.1Mhz.scalerTime}]
+
+SHMS TRIG
+pEL_LO :	{H.pEL_LO.scaler}	[{H.pEL_LO.scaler/H.1Mhz.scalerTime}]
+pEL_HI :	{H.pEL_HI.scaler}	[{H.pEL_HI.scaler/H.1Mhz.scalerTime}]
+pEL_REAL :	{H.pEL_REAL.scaler}	[{H.pEL_REAL.scaler/H.1Mhz.scalerTime}]
+pEL_CLEAN :	{H.pEL_CLEAN.scaler}	[{H.pEL_CLEAN.scaler/H.1Mhz.scalerTime}]
+pSTOF:	  	{H.pSTOF.scaler}	[{H.pSTOF.scaler/H.1Mhz.scalerTime}]
+
+pTRIG1:	  	{H.pTRIG1.scaler} 	[{H.pTRIG1.scaler/H.1Mhz.scalerTime}]
+pTRIG2:	  	{H.pTRIG2.scaler} 	[{H.pTRIG2.scaler/H.1Mhz.scalerTime}]
+pTRIG3:	  	{H.pTRIG3.scaler} 	[{H.pTRIG3.scaler/H.1Mhz.scalerTime}]
+pTRIG4:	  	{H.pTRIG4.scaler} 	[{H.pTRIG4.scaler/H.1Mhz.scalerTime}]
+pTRIG5:	  	{H.pTRIG5.scaler} 	[{H.pTRIG5.scaler/H.1Mhz.scalerTime}]
+pTRIG6:	  	{H.pTRIG6.scaler} 	[{H.pTRIG6.scaler/H.1Mhz.scalerTime}]
 
 ****************
 * Chamber Hits *
@@ -81,177 +111,6 @@ hmsDC2v1Planes5	    Counts:  {hmsDC2_5hits_v1.npassed} eff : {hmsDC2_6hits_v1.np
 hmsDC2v2Planes5	    Counts:  {hmsDC2_5hits_v2.npassed} eff : {hmsDC2_6hits_v2.npassed/hmsDC2_5hits_v2.npassed}
 hmsDC2x2Planes5	    Counts:  {hmsDC2_5hits_x2.npassed} eff : {hmsDC2_6hits_x2.npassed/hmsDC2_5hits_x2.npassed}
 
-*****************************
-*HMS TRACKING EFFICIENCIES *
-*****************************
-htrig                          :   {hms_trigs.npassed}
-hhitslt = passed hits/cham     :   {hmsHitsLt.npassed}
-hhitsplanes = +planes >= 5/6   :   {hmsHitsPlanes.npassed}
-hhitsplanessps = + sps         :   {hSpacePoints.npassed}
-hhitsplanesspsstubs +stub      :   {hSpacePointsStub.npassed}
-hsfoundtrack                   :   {hFoundTrack.npassed}
-hscleantrack                   :   {hCleanTrack.npassed}
-hstublt = passed stub tests    :   {hStubLT.npassed}
-h1hitslt                       :   {hms1HitsLt.npassed}
-h2hitslt                       :   {hms2HitsLt.npassed}
-h1planesgt                     :   {hmsDC1PlanesGT.npassed}
-h2planesgt                     :   {hmsDC2PlanesGT.npassed}
-hplanesgt = gt 5 planes/cham   :   {hmsPlanesGT.npassed}
-f1hspacepoints                 :   {f1HSpacePoints.npassed}
-f2hspacepoints                 :   {f2HSpacePoints.npassed}
-htest1=p hits/planes, f sp     :   {hTest1.npassed}
-htest2=p sp, f stubs           :   {hTest2.npassed}
-hdid                           :   {HMSScinDid.npassed}
-hdide                          :   {HMSScinDide.npassed}
-hdidh                          :   {HMSScinDidh.npassed}
-hscinshould                    :   {HMSScinShould.npassed}
-hscinshoulde                   :   {HMSScinShoulde.npassed}
-hscinshouldh                   :   {HMSScinShouldh.npassed}
-SING FID TRACK EFFIC           :   {HMSScinDid.npassed/(HMSScinShould.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShould.npassed-HMSScinDid.npassed)/(HMSScinShould.npassed+.0001)):%8.4f}
-E SING FID TRACK EFFIC         :   {HMSScinDide.npassed/(HMSScinShoulde.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShoulde.npassed-HMSScinDide.npassed)/(HMSScinShoulde.npassed+.0001)):%8.4f}
-HADRON SING FID TRACK EFFIC    :   {HMSScinDidh.npassed/(HMSScinShouldh.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShouldh.npassed-HMSScinDidh.npassed)/(HMSScinShouldh.npassed+.0001)):%8.4f}
-
-
-*******************
-* Hardware Scalers
-*******************
-
-*HODOSCOPES*
-Scint	Counts		Rate
-H1X1+:  {H.hod.1x1.posScaler:%8d}  [ {H.hod.1x1.posScalerRate:%7.1f} ]
-H1X2+:  {H.hod.1x2.posScaler:%8d}  [ {H.hod.1x2.posScalerRate:%7.1f} ]
-H1X3+:  {H.hod.1x3.posScaler:%8d}  [ {H.hod.1x3.posScalerRate:%7.1f} ]
-H1X4+:  {H.hod.1x4.posScaler:%8d}  [ {H.hod.1x4.posScalerRate:%7.1f} ]
-H1X5+:  {H.hod.1x5.posScaler:%8d}  [ {H.hod.1x5.posScalerRate:%7.1f} ]
-H1X6+:  {H.hod.1x6.posScaler:%8d}  [ {H.hod.1x6.posScalerRate:%7.1f} ]
-H1X7+:  {H.hod.1x7.posScaler:%8d}  [ {H.hod.1x7.posScalerRate:%7.1f} ]
-H1X8+:  {H.hod.1x8.posScaler:%8d}  [ {H.hod.1x8.posScalerRate:%7.1f} ]
-H1X9+:  {H.hod.1x9.posScaler:%8d}  [ {H.hod.1x9.posScalerRate:%7.1f} ]
-H1X10+: {H.hod.1x10.posScaler:%8d}  [ {H.hod.1x10.posScalerRate:%7.1f} ]
-H1X11+: {H.hod.1x11.posScaler:%8d}  [ {H.hod.1x11.posScalerRate:%7.1f} ] 
-H1X12+: {H.hod.1x12.posScaler:%8d}  [ {H.hod.1x12.posScalerRate:%7.1f} ]
-H1X13+: {H.hod.1x13.posScaler:%8d}  [ {H.hod.1x13.posScalerRate:%7.1f} ]
-H1X14+: {H.hod.1x14.posScaler:%8d}  [ {H.hod.1x14.posScalerRate:%7.1f} ] 
-H1X15+: {H.hod.1x15.posScaler:%8d}  [ {H.hod.1x15.posScalerRate:%7.1f} ]
-H1X16+: {H.hod.1x16.posScaler:%8d}  [ {H.hod.1x16.posScalerRate:%7.1f} ]
-
-H1X1-:  {H.hod.1x1.negScaler:%8d}  [ {H.hod.1x1.negScalerRate:%7.1f} ]
-H1X2-:  {H.hod.1x2.negScaler:%8d}  [ {H.hod.1x2.negScalerRate:%7.1f} ]
-H1X3-:  {H.hod.1x3.negScaler:%8d}  [ {H.hod.1x3.negScalerRate:%7.1f} ]
-H1X4-:  {H.hod.1x4.negScaler:%8d}  [ {H.hod.1x4.negScalerRate:%7.1f} ]
-H1X5-:  {H.hod.1x5.negScaler:%8d}  [ {H.hod.1x5.negScalerRate:%7.1f} ]
-H1X6-:  {H.hod.1x6.negScaler:%8d}  [ {H.hod.1x6.negScalerRate:%7.1f} ]
-H1X7-:  {H.hod.1x7.negScaler:%8d}  [ {H.hod.1x7.negScalerRate:%7.1f} ]
-H1X8-:  {H.hod.1x8.negScaler:%8d}  [ {H.hod.1x8.negScalerRate:%7.1f} ]
-H1X9-:  {H.hod.1x9.negScaler:%8d}  [ {H.hod.1x9.negScalerRate:%7.1f} ]
-H1X10-: {H.hod.1x10.negScaler:%8d}  [ {H.hod.1x10.negScalerRate:%7.1f} ]
-H1X11-: {H.hod.1x11.negScaler:%8d}  [ {H.hod.1x11.negScalerRate:%7.1f} ]
-H1X12-: {H.hod.1x12.negScaler:%8d}  [ {H.hod.1x12.negScalerRate:%7.1f} ]
-H1X13-: {H.hod.1x13.negScaler:%8d}  [ {H.hod.1x13.negScalerRate:%7.1f} ]
-H1X14-: {H.hod.1x14.negScaler:%8d}  [ {H.hod.1x14.negScalerRate:%7.1f} ] 
-H1X15-: {H.hod.1x15.negScaler:%8d}  [ {H.hod.1x15.negScalerRate:%7.1f} ]
-H1X16-: {H.hod.1x16.negScaler:%8d}  [ {H.hod.1x16.negScalerRate:%7.1f} ]
-
-H1Y1+:  {H.hod.1y1.posScaler:%8d}  [ {H.hod.1y1.posScalerRate:%7.1f} ]
-H1Y2+:  {H.hod.1y2.posScaler:%8d}  [ {H.hod.1y2.posScalerRate:%7.1f} ]
-H1Y3+:  {H.hod.1y3.posScaler:%8d}  [ {H.hod.1y3.posScalerRate:%7.1f} ]
-H1Y4+:  {H.hod.1y4.posScaler:%8d}  [ {H.hod.1y4.posScalerRate:%7.1f} ]
-H1Y5+:  {H.hod.1y5.posScaler:%8d}  [ {H.hod.1y5.posScalerRate:%7.1f} ]
-H1Y6+:  {H.hod.1y6.posScaler:%8d}  [ {H.hod.1y6.posScalerRate:%7.1f} ]
-H1Y7+:  {H.hod.1y7.posScaler:%8d}  [ {H.hod.1y7.posScalerRate:%7.1f} ]
-H1Y8+:  {H.hod.1y8.posScaler:%8d}  [ {H.hod.1y8.posScalerRate:%7.1f} ]
-H1Y9+:  {H.hod.1y9.posScaler:%8d}  [ {H.hod.1y9.posScalerRate:%7.1f} ]
-H1Y10+: {H.hod.1y10.posScaler:%8d}  [ {H.hod.1y10.posScalerRate:%7.1f} ]
-
-H1Y1-:  {H.hod.1y1.negScaler:%8d}  [ {H.hod.1y1.negScalerRate:%7.1f} ]
-H1Y2-:  {H.hod.1y2.negScaler:%8d}  [ {H.hod.1y2.negScalerRate:%7.1f} ]
-H1Y3-:  {H.hod.1y3.negScaler:%8d}  [ {H.hod.1y3.negScalerRate:%7.1f} ]
-H1Y4-:  {H.hod.1y4.negScaler:%8d}  [ {H.hod.1y4.negScalerRate:%7.1f} ]
-H1Y5-:  {H.hod.1y5.negScaler:%8d}  [ {H.hod.1y5.negScalerRate:%7.1f} ]
-H1Y6-:  {H.hod.1y6.negScaler:%8d}  [ {H.hod.1y6.negScalerRate:%7.1f} ]
-H1Y7-:  {H.hod.1y7.negScaler:%8d}  [ {H.hod.1y7.negScalerRate:%7.1f} ]
-H1Y8-:  {H.hod.1y8.negScaler:%8d}  [ {H.hod.1y8.negScalerRate:%7.1f} ]
-H1Y9-:  {H.hod.1y9.negScaler:%8d}  [ {H.hod.1y9.negScalerRate:%7.1f} ]
-H1Y10-: {H.hod.1y10.negScaler:%8d}  [ {H.hod.1y10.negScalerRate:%7.1f} ]
-
-H2X1+:  {H.hod.2x1.posScaler:%8d}  [ {H.hod.2x1.posScalerRate:%7.1f} ]
-H2X2+:  {H.hod.2x2.posScaler:%8d}  [ {H.hod.2x2.posScalerRate:%7.1f} ]
-H2X3+:  {H.hod.2x3.posScaler:%8d}  [ {H.hod.2x3.posScalerRate:%7.1f} ]
-H2X4+:  {H.hod.2x4.posScaler:%8d}  [ {H.hod.2x4.posScalerRate:%7.1f} ]
-H2X5+:  {H.hod.2x5.posScaler:%8d}  [ {H.hod.2x5.posScalerRate:%7.1f} ]
-H2X6+:  {H.hod.2x6.posScaler:%8d}  [ {H.hod.2x6.posScalerRate:%7.1f} ]
-H2X7+:  {H.hod.2x7.posScaler:%8d}  [ {H.hod.2x7.posScalerRate:%7.1f} ]
-H2X8+:  {H.hod.2x8.posScaler:%8d}  [ {H.hod.2x8.posScalerRate:%7.1f} ]
-H2X9+:  {H.hod.2x9.posScaler:%8d}  [ {H.hod.2x9.posScalerRate:%7.1f} ]
-H2X10+: {H.hod.2x10.posScaler:%8d}  [ {H.hod.2x10.posScalerRate:%7.1f} ]
-H2X11+: {H.hod.2x11.posScaler:%8d}  [ {H.hod.2x11.posScalerRate:%7.1f} ]
-H2X12+: {H.hod.2x12.posScaler:%8d}  [ {H.hod.2x12.posScalerRate:%7.1f} ]
-H2X13+: {H.hod.2x13.posScaler:%8d}  [ {H.hod.2x13.posScalerRate:%7.1f} ]
-H2X14+: {H.hod.2x14.posScaler:%8d}  [ {H.hod.2x14.posScalerRate:%7.1f} ]
-H2X15+: {H.hod.2x15.posScaler:%8d}  [ {H.hod.2x15.posScalerRate:%7.1f} ]
-H2X16+: {H.hod.2x16.posScaler:%8d}  [ {H.hod.2x16.posScalerRate:%7.1f} ]
-
-H2X1-:  {H.hod.2x1.negScaler:%8d}  [ {H.hod.2x1.negScalerRate:%7.1f} ]
-H2X2-:  {H.hod.2x2.negScaler:%8d}  [ {H.hod.2x2.negScalerRate:%7.1f} ]
-H2X3-:  {H.hod.2x3.negScaler:%8d}  [ {H.hod.2x3.negScalerRate:%7.1f} ]
-H2X4-:  {H.hod.2x4.negScaler:%8d}  [ {H.hod.2x4.negScalerRate:%7.1f} ]
-H2X5-:  {H.hod.2x5.negScaler:%8d}  [ {H.hod.2x5.negScalerRate:%7.1f} ]
-H2X6-:  {H.hod.2x6.negScaler:%8d}  [ {H.hod.2x6.negScalerRate:%7.1f} ]
-H2X7-:  {H.hod.2x7.negScaler:%8d}  [ {H.hod.2x7.negScalerRate:%7.1f} ]
-H2X8-:  {H.hod.2x8.negScaler:%8d}  [ {H.hod.2x8.negScalerRate:%7.1f} ]
-H2X9-:  {H.hod.2x9.negScaler:%8d}  [ {H.hod.2x9.negScalerRate:%7.1f} ]
-H2X10-: {H.hod.2x10.negScaler:%8d}  [ {H.hod.2x10.negScalerRate:%7.1f} ]
-H2X11-: {H.hod.2x11.negScaler:%8d}  [ {H.hod.2x11.negScalerRate:%7.1f} ]
-H2X12-: {H.hod.2x12.negScaler:%8d}  [ {H.hod.2x12.negScalerRate:%7.1f} ]
-H2X13-: {H.hod.2x13.negScaler:%8d}  [ {H.hod.2x13.negScalerRate:%7.1f} ]
-H2X14-: {H.hod.2x14.negScaler:%8d}  [ {H.hod.2x14.negScalerRate:%7.1f} ]
-H2X15-: {H.hod.2x15.negScaler:%8d}  [ {H.hod.2x15.negScalerRate:%7.1f} ]
-H2X16-: {H.hod.2x16.negScaler:%8d}  [ {H.hod.2x16.negScalerRate:%7.1f} ]
-
-H2Y1+:  {H.hod.2y1.posScaler:%8d}  [ {H.hod.2y1.posScalerRate:%7.1f} ]
-H2Y2+:  {H.hod.2y2.posScaler:%8d}  [ {H.hod.2y2.posScalerRate:%7.1f} ]
-H2Y3+:  {H.hod.2y3.posScaler:%8d}  [ {H.hod.2y3.posScalerRate:%7.1f} ] 
-H2Y4+:  {H.hod.2y4.posScaler:%8d}  [ {H.hod.2y4.posScalerRate:%7.1f} ]
-H2Y5+:  {H.hod.2y5.posScaler:%8d}  [ {H.hod.2y5.posScalerRate:%7.1f} ]
-H2Y6+:  {H.hod.2y6.posScaler:%8d}  [ {H.hod.2y6.posScalerRate:%7.1f} ]
-H2Y7+:  {H.hod.2y7.posScaler:%8d}  [ {H.hod.2y7.posScalerRate:%7.1f} ]
-H2Y8+:  {H.hod.2y8.posScaler:%8d}  [ {H.hod.2y8.posScalerRate:%7.1f} ]
-H2Y9+:  {H.hod.2y9.posScaler:%8d}  [ {H.hod.2y9.posScalerRate:%7.1f} ]
-H2Y10+: {H.hod.2y10.posScaler:%8d}  [ {H.hod.2y10.posScalerRate:%7.1f} ]
-
-H2Y1-:  {H.hod.2y1.negScaler:%8d}  [ {H.hod.2y1.negScalerRate:%7.1f} ]
-H2Y2-:  {H.hod.2y2.negScaler:%8d}  [ {H.hod.2y2.negScalerRate:%7.1f} ]
-H2Y3-:  {H.hod.2y3.negScaler:%8d}  [ {H.hod.2y3.negScalerRate:%7.1f} ]
-H2Y4-:  {H.hod.2y4.negScaler:%8d}  [ {H.hod.2y4.negScalerRate:%7.1f} ]
-H2Y5-:  {H.hod.2y5.negScaler:%8d}  [ {H.hod.2y5.negScalerRate:%7.1f} ]
-H2Y6-:  {H.hod.2y6.negScaler:%8d}  [ {H.hod.2y6.negScalerRate:%7.1f} ]
-H2Y7-:  {H.hod.2y7.negScaler:%8d}  [ {H.hod.2y7.negScalerRate:%7.1f} ]
-H2Y8-:  {H.hod.2y8.negScaler:%8d}  [ {H.hod.2y8.negScalerRate:%7.1f} ]
-H2Y9-:  {H.hod.2y9.negScaler:%8d}  [ {H.hod.2y9.negScalerRate:%7.1f} ]
-H2Y10-: {H.hod.2y10.negScaler:%8d}  [ {H.hod.2y10.negScalerRate:%7.1f} ]
-
-H1X:	{H.S1X.scaler:%8d} [ {H.S1X.scalerRate:%7.1f} ] AND between + and - sides of H1X 
-H1Y: 	{H.S1Y.scaler:%8d} [ {H.S1Y.scalerRate:%7.1f} ] AND between + and - sides of H1Y
-H2X: 	{H.S2X.scaler:%8d} [ {H.S2X.scalerRate:%7.1f} ] AND between + and - sides of H2X
-H2Y: 	{H.S2Y.scaler:%8d} [ {H.S2Y.scalerRate:%7.1f} ] AND between + and - sides of H2Y
-H1XH1Y: {H.S1XS1Y.scaler:%8d} [{H.S1XS1Y.scalerRate:%7.1f}] AND between H1X and H1Y planes 
-H2XH2Y: {H.S2XS2Y.scaler:%8d} [{H.S2XS2Y.scalerRate:%7.1f}] AND between H2X and H2Y planes                                                
-
-*Cerenkov*
-CERSUM:	     {H.CERSUM.scaler:%8d}  [{H.CERSUM.scalerRate:%8d}]
-
-*Calorimeter*
-PRESHOWERLO: {H.PSHWRLO.scaler:%8d}  [{H.PSHWRLO.scalerRate:%8d}]
-PRESHOWERHI: {H.PSHWRHI.scaler:%8d}  [{H.PSHWRHI.scalerRate:%8d}]
-SHWR: 	     {H.SHWR.scaler:%8d} [{H.SHWR.scalerRate:%8d}]
-ASUM: 	     {H.ASUM.scaler:%8d}  [{H.ASUM.scalerRate:%8d}]
-BSUM:	     {H.BSUM.scaler:%8d}  [{H.BSUM.scalerRate:%8d}]
-CSUM:	     {H.CSUM.scaler:%8d}  [{H.CSUM.scalerRate:%8d}]
-DSUM:	     {H.DSUM.scaler:%8d}  [{H.DSUM.scalerRate:%8d}]
-
-
-**********************************************************************************************************************************
-**DRIFTCHAMBER**
 I'm pretty sure that these are the "raw" number of counts. "Raw" means one or more hits per dc plane.
 hmsDC1_1hit_x1:      {hmsDC1_1hit_x1.npassed} 		
 hmsDC1_1hit_u1:      {hmsDC1_1hit_u1.npassed}		
@@ -334,8 +193,37 @@ cer_pmt2_elect:	     {cer_pmt2_elec.npassed}
 cer_elec:	     {cer_elec.npassed}
 cer_pi:		     {cer_pi.npassed}
 
+*****************************
+*HMS TRACKING EFFICIENCIES *
+*****************************
+htrig                          :   {hms_trigs.npassed}
+hhitslt = passed hits/cham     :   {hmsHitsLt.npassed}
+hhitsplanes = +planes >= 5/6   :   {hmsHitsPlanes.npassed}
+hhitsplanessps = + sps         :   {hSpacePoints.npassed}
+hhitsplanesspsstubs +stub      :   {hSpacePointsStub.npassed}
+hsfoundtrack                   :   {hFoundTrack.npassed}
+hscleantrack                   :   {hCleanTrack.npassed}
+hstublt = passed stub tests    :   {hStubLT.npassed}
+h1hitslt                       :   {hms1HitsLt.npassed}
+h2hitslt                       :   {hms2HitsLt.npassed}
+h1planesgt                     :   {hmsDC1PlanesGT.npassed}
+h2planesgt                     :   {hmsDC2PlanesGT.npassed}
+hplanesgt = gt 5 planes/cham   :   {hmsPlanesGT.npassed}
+f1hspacepoints                 :   {f1HSpacePoints.npassed}
+f2hspacepoints                 :   {f2HSpacePoints.npassed}
+htest1=p hits/planes, f sp     :   {hTest1.npassed}
+htest2=p sp, f stubs           :   {hTest2.npassed}
+hdid                           :   {HMSScinDid.npassed}
+hdide                          :   {HMSScinDide.npassed}
+hdidh                          :   {HMSScinDidh.npassed}
+hscinshould                    :   {HMSScinShould.npassed}
+hscinshoulde                   :   {HMSScinShoulde.npassed}
+hscinshouldh                   :   {HMSScinShouldh.npassed}
+SING FID TRACK EFFIC           :   {HMSScinDid.npassed/(HMSScinShould.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShould.npassed-HMSScinDid.npassed)/(HMSScinShould.npassed+.0001)):%8.4f}
+E SING FID TRACK EFFIC         :   {HMSScinDide.npassed/(HMSScinShoulde.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShoulde.npassed-HMSScinDide.npassed)/(HMSScinShoulde.npassed+.0001)):%8.4f}
+HADRON SING FID TRACK EFFIC    :   {HMSScinDidh.npassed/(HMSScinShouldh.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShouldh.npassed-HMSScinDidh.npassed)/(HMSScinShouldh.npassed+.0001)):%8.4f}
 
-****************
+************
 * HGC Cerenkov *
 ****************
 
@@ -359,10 +247,15 @@ and scal_npe_sum  > 3.0 (hardwired). (is this still true?)
 
 Events examined = strig       = {hms_trigs.npassed}
 Tracks found    = scleantrack = {hCleanTrack.npassed}
-Tracks passing chisquared cut = (hstat_cal_numevents:%7d) (in previous template, do we need this here?)
+//Tracks passing chisquared cut = (hstat_cal_numevents:%7d) (in previous template, do we need this here?)
 
-hmsPreShower	     Counts: (H.cal.stat_trksum1) eff : {H.cal.stat_hitsum1 / H.cal.stat_trksum1}
-hmsShowerArray	     Counts: (H.cal.stat_trksum_array) eff : (H.cal.stat_hitsum_array / H.cal.stat_trksum_array)
+hmsPreShower	     Counts: {H.cal.stat_trksum1} eff : {H.cal.stat_hitsum1 / H.cal.stat_trksum1}
+hmsShowerArray	     Counts: {H.cal.stat_trksum_array} eff : {H.cal.stat_hitsum_array / H.cal.stat_trksum_array}
+
+hA	     Counts: {H.cal.stat_trksum1} eff : {H.cal.stat_hitsum1 / H.cal.stat_trksum1}
+hB	     Counts: {H.cal.stat_trksum2} eff : {H.cal.stat_hitsum2 / H.cal.stat_trksum2}
+hC	     Counts: {H.cal.stat_trksum3} eff : {H.cal.stat_hitsum3 / H.cal.stat_trksum3}
+hD	     Counts: {H.cal.stat_trksum4} eff : {H.cal.stat_hitsum4 / H.cal.stat_trksum4}
 
 **************************
 * Hodoscope Efficiencies * 
@@ -372,9 +265,8 @@ with chisquared/dof < {hstat_maxchisq:%5.1f} came within {hstat_slop:%4.1f} cm o
 
 Events examined = strig       = {hms_trigs.npassed}
 Tracks found    = scleantrack = {hCleanTrack.npassed}
-Tracks passing chisquared cut = (hstat_numevents) (in previous template, do we still need this?)
+//Tracks passing chisquared cut = (stat_numevents) (in previous template, do we still need this?)
 
-Hodo efficiency:
 Plane 1: {hhodo_plane_AND_eff[0]}
 Plane 2: {hhodo_plane_AND_eff[1]}
 Plane 3: {hhodo_plane_AND_eff[2]}
@@ -388,122 +280,201 @@ STOF: {hhodo_stof_eff}
 3_of_4 EFF : {hhodo_3_of_4_eff}
 4_of_4 EFF : {hhodo_4_of_4_eff}
 
-
-*HODO EFF* Need to checkout hodoeff module.
+*HODO EFF*
 Scint		Pos eff		Neg eff		OR eff		AND eff		 Hits
------------------------------------------------------------------------------------------------------
-H1X1+			 
-H1X2+
-H1X3+	
-H1X4+
-H1X5+
-H1X6+
-H1X7+
-H1X8+
-H1X9+
-H1X10+
-H1X11+
-H1X12+
-H1X13+
-H1X14+
-H1X15+
-H1X16+
-
-H1X1-
-H1X2-
-H1X3-
-H1X4-
-H1X5-
-H1X6-
-H1X7-
-H1X8-
-H1X9-
-H1X10-
-H1X11-
-H1X12-
-H1X13-
-H1X14-
-H1X15-
-H1X16-
-
-H1Y1+
-H1Y2+
-H1Y3+
-H1Y4+
-H1Y5+
-H1Y6+
-H1Y7+
-H1Y8+
-H1Y9+
-H1Y10+
-
-H1Y1-
-H1Y2-
-H1Y3-
-H1Y4-
-H1Y5-
-H1Y6-
-H1Y7-
-H1Y8-
-H1Y9-
-H1Y10-
-
-H2X1+
-H2X2+
-H2X3+
-H2X4+
-H2X5+
-H2X6+
-H2X7+
-H2X8+
-H2X9+
-H2X10+
-H2X11+
-H2X12+
-H2X13+
-H2X14+
-H2X15+
-H2X16+
-
-H2X1-
-H2X2-
-H2X3-
-H2X4-
-H2X5-
-H2X6-
-H2X7-
-H2X8-
-H2X9-
-H2X10-
-H2X11-
-H2X12-
-H2X13-
-H2X14-
-H2X15-
-H2X16-
-
-H2Y1+
-H2Y2+
-H2Y3+
-H2Y4+
-H2Y5+
-H2Y6+
-H2Y7+
-H2Y8+
-H2Y9+
-H2Y10+
-
-H2Y1-
-H2Y2-
-H2Y3-
-H2Y4-
-H2Y5-
-H2Y6-
-H2Y7-
-H2Y8-
-H2Y9-
-H2Y10-
+-----------------------------------------------------------------------------------------------------------
+H1X1		{hhodo_pos_eff[0]}		{hhodo_neg_eff[0]}		 {hhodo_or_eff[0]}		 {hhodo_and_eff[0]}             {hhodo_gold_hits[0]}
+H1X2		{hhodo_pos_eff[4]}		{hhodo_neg_eff[4]}	 	 {hhodo_or_eff[4]}	 	 {hhodo_and_eff[4]}	       {hhodo_gold_hits[4]}
+H1X3	 	{hhodo_pos_eff[8]}		{hhodo_neg_eff[8]}		 {hhodo_or_eff[8]}	 	 {hhodo_and_eff[8]}  	       {hhodo_gold_hits[8]}
+H1X4 	 	{hhodo_pos_eff[12]}		{hhodo_neg_eff[12]} 	 	 {hhodo_or_eff[12]} 	 	 {hhodo_and_eff[12]}	       {hhodo_gold_hits[12]}
+H1X5	 	{hhodo_pos_eff[16]}		{hhodo_neg_eff[16]} 	 	 {hhodo_or_eff[16]} 	 	 {hhodo_and_eff[16]} 	       {hhodo_gold_hits[16]}
+H1X6	 	{hhodo_pos_eff[20]}		{hhodo_neg_eff[20]} 	 	 {hhodo_or_eff[20]} 	 	 {hhodo_and_eff[20]} 	       {hhodo_gold_hits[20]}
+H1X7 	 	{hhodo_pos_eff[24]}  		{hhodo_neg_eff[24]} 	 	 {hhodo_or_eff[24]} 	 	 {hhodo_and_eff[24]} 	       {hhodo_gold_hits[24]}
+H1X8 	 	{hhodo_pos_eff[28]} 		{hhodo_neg_eff[28]} 	 	 {hhodo_or_eff[28]} 	 	 {hhodo_and_eff[28]} 	       {hhodo_gold_hits[28]}
+H1X9 	 	{hhodo_pos_eff[32]}		{hhodo_neg_eff[32]} 	 	 {hhodo_or_eff[32]} 	 	 {hhodo_and_eff[32]} 	       {hhodo_gold_hits[32]}
+H1X10 	 	{hhodo_pos_eff[36]} 		{hhodo_neg_eff[36]} 	 	 {hhodo_or_eff[36]} 	 	 {hhodo_and_eff[36]}	       {hhodo_gold_hits[36]}
+H1X11	 	{hhodo_pos_eff[40]} 		{hhodo_neg_eff[40]} 	 	 {hhodo_or_eff[40]} 	 	 {hhodo_and_eff[40]} 	       {hhodo_gold_hits[40]}
+H1X12	 	{hhodo_pos_eff[44]} 		{hhodo_neg_eff[44]} 	 	 {hhodo_or_eff[44]} 	 	 {hhodo_and_eff[44]} 	       {hhodo_gold_hits[44]}
+H1X13 	 	{hhodo_pos_eff[48]} 		{hhodo_neg_eff[48]} 	 	 {hhodo_or_eff[48]} 	 	 {hhodo_and_eff[48]} 	       {hhodo_gold_hits[48]}
+H1X14 	 	{hhodo_pos_eff[52]} 		{hhodo_neg_eff[52]} 	 	 {hhodo_or_eff[52]} 	 	 {hhodo_and_eff[52]} 	       {hhodo_gold_hits[52]}
+H1X15 	 	{hhodo_pos_eff[56]} 		{hhodo_neg_eff[56]} 	 	 {hhodo_or_eff[56]} 	 	 {hhodo_and_eff[56]} 	       {hhodo_gold_hits[56]}
+H1X16  	 	{hhodo_pos_eff[60]} 		{hhodo_neg_eff[60]} 	 	 {hhodo_or_eff[60]} 	 	 {hhodo_and_eff[60]} 	       {hhodo_gold_hits[60]}
+
+H1Y1 	 	{hhodo_pos_eff[1]}		{hhodo_neg_eff[1]} 	 	 {hhodo_or_eff[1]}	 	 {hhodo_and_eff[1]}	       {hhodo_gold_hits[1]}
+H1Y2 	 	{hhodo_pos_eff[5]} 		{hhodo_neg_eff[5]} 	 	 {hhodo_or_eff[5]} 	 	 {hhodo_and_eff[5]} 	       {hhodo_gold_hits[5]}
+H1Y3		{hhodo_pos_eff[9]} 		{hhodo_neg_eff[9]} 	 	 {hhodo_or_eff[9]} 	 	 {hhodo_and_eff[9]} 	       {hhodo_gold_hits[9]}
+H1Y4   	 	{hhodo_pos_eff[13]} 		{hhodo_neg_eff[13]} 	 	 {hhodo_or_eff[13]} 	 	 {hhodo_and_eff[13]} 	       {hhodo_gold_hits[13]}
+H1Y5 	 	{hhodo_pos_eff[17]} 		{hhodo_neg_eff[17]} 	 	 {hhodo_or_eff[17]} 	 	 {hhodo_and_eff[17]} 	       {hhodo_gold_hits[17]}
+H1Y6 	 	{hhodo_pos_eff[21]} 		{hhodo_neg_eff[21]} 	 	 {hhodo_or_eff[21]} 	 	 {hhodo_and_eff[21]} 	       {hhodo_gold_hits[21]}
+H1Y7 	 	{hhodo_pos_eff[25]} 		{hhodo_neg_eff[25]} 	 	 {hhodo_or_eff[25]} 	 	 {hhodo_and_eff[25]} 	       {hhodo_gold_hits[25]}
+H1Y8 	 	{hhodo_pos_eff[29]} 		{hhodo_neg_eff[29]} 	 	 {hhodo_or_eff[29]} 	 	 {hhodo_and_eff[29]} 	       {hhodo_gold_hits[29]}
+H1Y9 	 	{hhodo_pos_eff[33]} 		{hhodo_neg_eff[33]} 	 	 {hhodo_or_eff[33]} 	 	 {hhodo_and_eff[33]} 	       {hhodo_gold_hits[33]}
+H1Y10 	 	{hhodo_pos_eff[37]} 		{hhodo_neg_eff[37]} 	 	 {hhodo_or_eff[37]} 	 	 {hhodo_and_eff[37]} 	       {hhodo_gold_hits[37]}
+
+H2X1	 	{hhodo_pos_eff[2]}	 	{hhodo_neg_eff[2]}	 	 {hhodo_or_eff[2]} 	 	 {hhodo_and_eff[2]} 	       {hhodo_gold_hits[2]}
+H2X2 	 	{hhodo_pos_eff[6]}	 	{hhodo_neg_eff[6]}	 	 {hhodo_or_eff[6]}	 	 {hhodo_and_eff[6]}	       {hhodo_gold_hits[6]}
+H2X3 	 	{hhodo_pos_eff[10]} 	 	{hhodo_neg_eff[10]} 	 	 {hhodo_or_eff[10]}	 	 {hhodo_and_eff[10]} 	       {hhodo_gold_hits[10]}
+H2X4 	 	{hhodo_pos_eff[14]} 	 	{hhodo_neg_eff[14]}	 	 {hhodo_or_eff[14]} 	 	 {hhodo_and_eff[14]} 	       {hhodo_gold_hits[14]}
+H2X5 	 	{hhodo_pos_eff[18]} 	 	{hhodo_neg_eff[18]} 	 	 {hhodo_or_eff[18]} 	 	 {hhodo_and_eff[18]}	       {hhodo_gold_hits[18]}
+H2X6 	 	{hhodo_pos_eff[22]}	 	{hhodo_neg_eff[22]}	 	 {hhodo_or_eff[22]} 	 	 {hhodo_and_eff[22]} 	       {hhodo_gold_hits[22]}
+H2X7 	 	{hhodo_pos_eff[26]} 	 	{hhodo_neg_eff[26]}	 	 {hhodo_or_eff[26]}	 	 {hhodo_and_eff[26]}	       {hhodo_gold_hits[26]}
+H2X8 	 	{hhodo_pos_eff[30]} 	 	{hhodo_neg_eff[30]}		 {hhodo_or_eff[30]}      	 {hhodo_and_eff[30]}	       {hhodo_gold_hits[30]}
+H2X9 	 	{hhodo_pos_eff[34]} 	 	{hhodo_neg_eff[34]}		 {hhodo_or_eff[34]}		 {hhodo_and_eff[34]}	       {hhodo_gold_hits[34]}
+H2X10	 	{hhodo_pos_eff[38]}	 	{hhodo_neg_eff[38]}		 {hhodo_or_eff[38]}		 {hhodo_and_eff[38]}	       {hhodo_gold_hits[38]}
+H2X11 	 	{hhodo_pos_eff[42]} 	 	{hhodo_neg_eff[42]}		 {hhodo_or_eff[42]}		 {hhodo_and_eff[42]}	       {hhodo_gold_hits[42]}
+H2X12 	 	{hhodo_pos_eff[46]} 	 	{hhodo_neg_eff[46]}		 {hhodo_or_eff[46]}		 {hhodo_and_eff[46]}	       {hhodo_gold_hits[46]}
+H2X13 	 	{hhodo_pos_eff[50]} 	 	{hhodo_neg_eff[50]}		 {hhodo_or_eff[50]}		 {hhodo_and_eff[50]}	       {hhodo_gold_hits[50]}
+H2X14 	 	{hhodo_pos_eff[54]} 	 	{hhodo_neg_eff[54]}		 {hhodo_or_eff[54]}		 {hhodo_and_eff[54]}	       {hhodo_gold_hits[54]}
+H2X15 	 	{hhodo_pos_eff[58]} 	 	{hhodo_neg_eff[58]}		 {hhodo_or_eff[58]}		 {hhodo_and_eff[58]}	       {hhodo_gold_hits[58]}
+H2X16 	 	{hhodo_pos_eff[62]} 	 	{hhodo_neg_eff[62]}		 {hhodo_or_eff[62]}		 {hhodo_and_eff[62]}	       {hhodo_gold_hits[62]}
+
+H2Y1	 	{hhodo_pos_eff[3]}	 	{hhodo_neg_eff[3]}		 {hhodo_or_eff[3]}       	 {hhodo_and_eff[3]}	       {hhodo_gold_hits[3]}
+H2Y2 	 	{hhodo_pos_eff[7]}	 	{hhodo_neg_eff[7]} 	 	 {hhodo_or_eff[7]} 	 	 {hhodo_and_eff[7]}    	       {hhodo_gold_hits[7]}
+H2Y3 	 	{hhodo_pos_eff[11]} 	 	{hhodo_neg_eff[11]}	 	 {hhodo_or_eff[11]} 	 	 {hhodo_and_eff[11]}	       {hhodo_gold_hits[11]}
+H2Y4 	 	{hhodo_pos_eff[15]} 	 	{hhodo_neg_eff[15]} 	 	 {hhodo_or_eff[15]} 	 	 {hhodo_and_eff[15]}	       {hhodo_gold_hits[15]}
+H2Y5 	 	{hhodo_pos_eff[19]} 	 	{hhodo_neg_eff[19]}	 	 {hhodo_or_eff[19]} 	 	 {hhodo_and_eff[19]}	       {hhodo_gold_hits[19]}
+H2Y6 	 	{hhodo_pos_eff[23]} 	 	{hhodo_neg_eff[23]} 	 	 {hhodo_or_eff[23]} 	 	 {hhodo_and_eff[23]}	       {hhodo_gold_hits[23]}
+H2Y7 	 	{hhodo_pos_eff[27]} 	 	{hhodo_neg_eff[27]} 	 	 {hhodo_or_eff[27]} 	 	 {hhodo_and_eff[27]}	       {hhodo_gold_hits[27]}
+H2Y8 	 	{hhodo_pos_eff[31]} 	 	{hhodo_neg_eff[31]} 	 	 {hhodo_or_eff[31]} 	 	 {hhodo_and_eff[31]}	       {hhodo_gold_hits[31]}
+H2Y9 	 	{hhodo_pos_eff[35]} 	 	{hhodo_neg_eff[35]} 	 	 {hhodo_or_eff[35]} 	 	 {hhodo_and_eff[35]}	       {hhodo_gold_hits[35]}
+H2Y10 	 	{hhodo_pos_eff[39]} 	 	{hhodo_neg_eff[39]} 	 	 {hhodo_or_eff[39]} 	 	 {hhodo_and_eff[39]}	       {hhodo_gold_hits[39]}
 
+*******************
+* Hardware Scalers
+*******************
+
+*HODOSCOPES*
+Scint	Counts		Rate
+H1X1+:  {H.hod.1x1.posScaler} [ {(H.hod.1x1.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X2+:  {H.hod.1x2.posScaler} [ {(H.hod.1x2.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X3+:  {H.hod.1x3.posScaler} [ {(H.hod.1x3.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X4+:  {H.hod.1x4.posScaler} [ {(H.hod.1x4.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X5+:  {H.hod.1x5.posScaler} [ {(H.hod.1x5.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X6+:  {H.hod.1x6.posScaler} [ {(H.hod.1x6.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X7+:  {H.hod.1x7.posScaler} [ {(H.hod.1x7.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X8+:  {H.hod.1x8.posScaler} [ {(H.hod.1x8.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X9+:  {H.hod.1x9.posScaler} [ {(H.hod.1x9.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X10+: {H.hod.1x10.posScaler} [ {(H.hod.1x10.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X11+: {H.hod.1x11.posScaler} [ {(H.hod.1x11.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] 
+H1X12+: {H.hod.1x12.posScaler} [ {(H.hod.1x12.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X13+: {H.hod.1x13.posScaler} [ {(H.hod.1x13.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X14+: {H.hod.1x14.posScaler} [ {(H.hod.1x14.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X15+: {H.hod.1x15.posScaler} [ {(H.hod.1x15.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X16+: {H.hod.1x16.posScaler} [ {(H.hod.1x16.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H1X1-:  {H.hod.1x1.negScaler} [ {(H.hod.1x1.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X2-:  {H.hod.1x2.negScaler} [ {(H.hod.1x2.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X3-:  {H.hod.1x3.negScaler} [ {(H.hod.1x3.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X4-:  {H.hod.1x4.negScaler} [ {(H.hod.1x4.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X5-:  {H.hod.1x5.negScaler} [ {(H.hod.1x5.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X6-:  {H.hod.1x6.negScaler} [ {(H.hod.1x6.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X7-:  {H.hod.1x7.negScaler} [ {(H.hod.1x7.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X8-:  {H.hod.1x8.negScaler} [ {(H.hod.1x8.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X9-:  {H.hod.1x9.negScaler} [ {(H.hod.1x9.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X10-: {H.hod.1x10.negScaler} [ {(H.hod.1x10.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X11-: {H.hod.1x11.negScaler} [ {(H.hod.1x11.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X12-: {H.hod.1x12.negScaler} [ {(H.hod.1x12.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X13-: {H.hod.1x13.negScaler} [ {(H.hod.1x13.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X14-: {H.hod.1x14.negScaler} [ {(H.hod.1x14.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X15-: {H.hod.1x15.negScaler} [ {(H.hod.1x15.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X16-: {H.hod.1x16.negScaler} [ {(H.hod.1x16.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+ 
+H1Y1+:  {H.hod.1y1.posScaler} [ {(H.hod.1y1.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y2+:  {H.hod.1y2.posScaler} [ {(H.hod.1y2.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y3+:  {H.hod.1y3.posScaler} [ {(H.hod.1y3.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y4+:  {H.hod.1y4.posScaler} [ {(H.hod.1y4.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y5+:  {H.hod.1y5.posScaler} [ {(H.hod.1y5.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y6+:  {H.hod.1y6.posScaler} [ {(H.hod.1y6.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y7+:  {H.hod.1y7.posScaler} [ {(H.hod.1y7.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y8+:  {H.hod.1y8.posScaler} [ {(H.hod.1y8.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y9+:  {H.hod.1y9.posScaler} [ {(H.hod.1y9.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y10+: {H.hod.1y10.posScaler} [ {(H.hod.1y10.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H1Y1-:  {H.hod.1y1.negScaler} [ {(H.hod.1y1.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y2-:  {H.hod.1y2.negScaler} [ {(H.hod.1y2.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y3-:  {H.hod.1y3.negScaler} [ {(H.hod.1y3.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y4-:  {H.hod.1y4.negScaler} [ {(H.hod.1y4.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y5-:  {H.hod.1y5.negScaler} [ {(H.hod.1y5.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y6-:  {H.hod.1y6.negScaler} [ {(H.hod.1y6.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y7-:  {H.hod.1y7.negScaler} [ {(H.hod.1y7.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y8-:  {H.hod.1y8.negScaler} [ {(H.hod.1y8.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y9-:  {H.hod.1y9.negScaler} [ {(H.hod.1y9.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y10-: {H.hod.1y10.negScaler} [ {(H.hod.1y10.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H2X1+:  {H.hod.2x1.posScaler} [ {(H.hod.2x1.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X2+:  {H.hod.2x2.posScaler} [ {(H.hod.2x2.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X3+:  {H.hod.2x3.posScaler} [ {(H.hod.2x3.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X4+:  {H.hod.2x4.posScaler} [ {(H.hod.2x4.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X5+:  {H.hod.2x5.posScaler} [ {(H.hod.2x5.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X6+:  {H.hod.2x6.posScaler} [ {(H.hod.2x6.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X7+:  {H.hod.2x7.posScaler} [ {(H.hod.2x7.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X8+:  {H.hod.2x8.posScaler} [ {(H.hod.2x8.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X9+:  {H.hod.2x9.posScaler} [ {(H.hod.2x9.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X10+: {H.hod.2x10.posScaler} [ {(H.hod.2x10.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X11+: {H.hod.2x11.posScaler} [ {(H.hod.2x11.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X12+: {H.hod.2x12.posScaler} [ {(H.hod.2x12.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X13+: {H.hod.2x13.posScaler} [ {(H.hod.2x13.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X14+: {H.hod.2x14.posScaler} [ {(H.hod.2x14.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X15+: {H.hod.2x15.posScaler} [ {(H.hod.2x15.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X16+: {H.hod.2x16.posScaler} [ {(H.hod.2x16.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H2X1-:  {H.hod.2x1.negScaler} [ {(H.hod.2x1.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X2-:  {H.hod.2x2.negScaler} [ {(H.hod.2x2.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X3-:  {H.hod.2x3.negScaler} [ {(H.hod.2x3.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X4-:  {H.hod.2x4.negScaler} [ {(H.hod.2x4.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X5-:  {H.hod.2x5.negScaler} [ {(H.hod.2x5.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X6-:  {H.hod.2x6.negScaler} [ {(H.hod.2x6.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X7-:  {H.hod.2x7.negScaler} [ {(H.hod.2x7.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X8-:  {H.hod.2x8.negScaler} [ {(H.hod.2x8.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X9-:  {H.hod.2x9.negScaler} [ {(H.hod.2x9.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X10-: {H.hod.2x10.negScaler} [ {(H.hod.2x10.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X11-: {H.hod.2x11.negScaler} [ {(H.hod.2x11.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X12-: {H.hod.2x12.negScaler} [ {(H.hod.2x12.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X13-: {H.hod.2x13.negScaler} [ {(H.hod.2x13.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X14-: {H.hod.2x14.negScaler} [ {(H.hod.2x14.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X15-: {H.hod.2x15.negScaler} [ {(H.hod.2x15.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X16-: {H.hod.2x16.negScaler} [ {(H.hod.2x16.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H2Y1+:  {H.hod.2y1.posScaler} [ {(H.hod.2y1.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y2+:  {H.hod.2y2.posScaler} [ {(H.hod.2y2.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y3+:  {H.hod.2y3.posScaler} [ {(H.hod.2y3.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] 
+H2Y4+:  {H.hod.2y4.posScaler} [ {(H.hod.2y4.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y5+:  {H.hod.2y5.posScaler} [ {(H.hod.2y5.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y6+:  {H.hod.2y6.posScaler} [ {(H.hod.2y6.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y7+:  {H.hod.2y7.posScaler} [ {(H.hod.2y7.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y8+:  {H.hod.2y8.posScaler} [ {(H.hod.2y8.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y9+:  {H.hod.2y9.posScaler} [ {(H.hod.2y9.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y10+: {H.hod.2y10.posScaler} [ {(H.hod.2y10.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H2Y1-:  {H.hod.2y1.negScaler} [ {(H.hod.2y1.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y2-:  {H.hod.2y2.negScaler} [ {(H.hod.2y2.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y3-:  {H.hod.2y3.negScaler} [ {(H.hod.2y3.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y4-:  {H.hod.2y4.negScaler} [ {(H.hod.2y4.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y5-:  {H.hod.2y5.negScaler} [ {(H.hod.2y5.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y6-:  {H.hod.2y6.negScaler} [ {(H.hod.2y6.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y7-:  {H.hod.2y7.negScaler} [ {(H.hod.2y7.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y8-:  {H.hod.2y8.negScaler} [ {(H.hod.2y8.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y9-:  {H.hod.2y9.negScaler} [ {(H.hod.2y9.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y10-: {H.hod.2y10.negScaler} [ {(H.hod.2y10.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H1X: {H.S1X.scaler} [ {(H.S1X.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of H1X 
+H1Y: {H.S1Y.scaler} [ {(H.S1Y.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of H1Y
+H2X: {H.S2X.scaler} [ {(H.S2X.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of H2X
+H2Y: {H.S2Y.scaler} [ {(H.S2Y.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of H2Y
+H1XH1Y: {H.S1XS1Y.scaler} [{(H.S1XS1Y.scaler/H.1Mhz.scalerTime)/1000.:%.3f}] AND between H1X and H1Y planes 
+H2XH2Y: {H.S2XS2Y.scaler} [{(H.S2XS2Y.scaler/H.1Mhz.scalerTime)/1000.:%.3f}] OR between H2X and H2Y planes (just for kpp, will be AND)
+
+*Cerenkov*
+CERSUM:	     {H.CERSUM.scaler}  [{(H.CERSUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz]
+
+*Calorimeter*
+PRESHOWERLO: {H.PSHWRLO.scaler}  [{(H.PSHWRLO.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz]
+PRESHOWERHI: {H.PSHWRHI.scaler}  [{(H.PSHWRHI.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz]
+SHWR: 	     {H.SHWR.scaler} [{(H.SHWR.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz]
+ASUM: 	     {H.ASUM.scaler}  [{(H.ASUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz]
+BSUM:	     {H.BSUM.scaler}  [{(H.BSUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz]
+CSUM:	     {H.CSUM.scaler}  [{(H.CSUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz]
+DSUM:	     {H.DSUM.scaler}  [{(H.DSUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz]
 
 
 
diff --git a/TEMPLATES/HMS/SCALERS/hscalers.template b/TEMPLATES/HMS/SCALERS/hscalers.template
index a73006b7..61507a4d 100644
--- a/TEMPLATES/HMS/SCALERS/hscalers.template
+++ b/TEMPLATES/HMS/SCALERS/hscalers.template
@@ -10,9 +10,9 @@ Run Length   : {H.1Mhz.scalerTime:%.3f} sec
 * Beamline
 ***********
   
-BCM1 Current: {H.BCM1.scalerCurrent:%.3f} uA		  
-BCM2 Current: {H.BCM2.scalerCurrent:%.3f} uA		 
-Unser Current: {H.Unser.scalerCurrent:%.3f} uA		  
+BCM1 Current: {H.BCM1.scalerCharge/H.1Mhz.scalerTime:%.3f} uA		  
+BCM2 Current: {H.BCM2.scalerCharge/H.1Mhz.scalerTime:%.3f} uA		 
+Unser Current: {H.Unser.scalerCharge/H.1Mhz.scalerTime:%.3f} uA		  
 
 With no cuts on BCM{gBCM_Current_threshold_index+1}.
 BCM1 Counts: {H.BCM1.scaler}		Total Charge: {H.BCM1.scalerCharge:%.3f} uC
@@ -48,6 +48,37 @@ HMS Event Types            : {HMS_Pretrig.npassed}
 HMS Computer Live Time : {(TRIG1.npassed / H.hTRIG1.scaler)*100.0:%3.4f} % [ {(TRIG1.npassed / (H.hTRIG1.scaler/ghconfig_ti_ps_factors[0]))*100.0:%3.4f} %  ]
 HMS Computer Dead Time : {100.0 - (TRIG1.npassed / H.hTRIG1.scaler)*100.0:%3.4f} % [ {100.0 - (TRIG1.npassed / (H.hTRIG1.scaler/ghconfig_ti_ps_factors[0]))*100.0:%3.4f} %  ]
 
+**************
+* MORE TRIGGERS
+**************
+HMS TRIG
+hEL_LO :	{H.hEL_LO.scaler}	[{H.hEL_LO.scaler/H.1Mhz.scalerTime}]
+hEL_HI :	{H.hEL_HI.scaler}	[{H.hEL_HI.scaler/H.1Mhz.scalerTime}]
+hEL_REAL :	{H.hEL_REAL.scaler}	[{H.hEL_REAL.scaler/H.1Mhz.scalerTime}]
+hEL_CLEAN :	{H.hEL_CLEAN.scaler}	[{H.hEL_CLEAN.scaler/H.1Mhz.scalerTime}]
+hSTOF:	  	{H.hSTOF.scaler}	[{H.hSTOF.scaler/H.1Mhz.scalerTime}]
+
+hTRIG1:	  	{H.hTRIG1.scaler} 	[{H.hTRIG1.scaler/H.1Mhz.scalerTime}]
+hTRIG2:	  	{H.hTRIG2.scaler} 	[{H.hTRIG2.scaler/H.1Mhz.scalerTime}]
+hTRIG3:	  	{H.hTRIG3.scaler} 	[{H.hTRIG3.scaler/H.1Mhz.scalerTime}]
+hTRIG4:	  	{H.hTRIG4.scaler} 	[{H.hTRIG4.scaler/H.1Mhz.scalerTime}]
+hTRIG5:	  	{H.hTRIG5.scaler} 	[{H.hTRIG5.scaler/H.1Mhz.scalerTime}]
+hTRIG6:	  	{H.hTRIG6.scaler} 	[{H.hTRIG6.scaler/H.1Mhz.scalerTime}]
+
+SHMS TRIG
+pEL_LO :	{H.pEL_LO.scaler}	[{H.pEL_LO.scaler/H.1Mhz.scalerTime}]
+pEL_HI :	{H.pEL_HI.scaler}	[{H.pEL_HI.scaler/H.1Mhz.scalerTime}]
+pEL_REAL :	{H.pEL_REAL.scaler}	[{H.pEL_REAL.scaler/H.1Mhz.scalerTime}]
+pEL_CLEAN :	{H.pEL_CLEAN.scaler}	[{H.pEL_CLEAN.scaler/H.1Mhz.scalerTime}]
+pSTOF:	  	{H.pSTOF.scaler}	[{H.pSTOF.scaler/H.1Mhz.scalerTime}]
+
+pTRIG1:	  	{H.pTRIG1.scaler} 	[{H.pTRIG1.scaler/H.1Mhz.scalerTime}]
+pTRIG2:	  	{H.pTRIG2.scaler} 	[{H.pTRIG2.scaler/H.1Mhz.scalerTime}]
+pTRIG3:	  	{H.pTRIG3.scaler} 	[{H.pTRIG3.scaler/H.1Mhz.scalerTime}]
+pTRIG4:	  	{H.pTRIG4.scaler} 	[{H.pTRIG4.scaler/H.1Mhz.scalerTime}]
+pTRIG5:	  	{H.pTRIG5.scaler} 	[{H.pTRIG5.scaler/H.1Mhz.scalerTime}]
+pTRIG6:	  	{H.pTRIG6.scaler} 	[{H.pTRIG6.scaler/H.1Mhz.scalerTime}]
+
 *******
 * EDTM
 *******
@@ -75,122 +106,134 @@ Accepted Physics Triggers  : {physics_accepted.npassed}
 
 *HODOSCOPES*
 Scint	Counts		Rate
-H1X1+:  {H.hod.1x1.posScaler} [ {H.hod.1x1.posScalerRate/1000.:%.3f} kHz ]
-H1X2+:  {H.hod.1x2.posScaler} [ {H.hod.1x2.posScalerRate/1000.:%.3f} kHz ]
-H1X3+:  {H.hod.1x3.posScaler} [ {H.hod.1x3.posScalerRate/1000.:%.3f} kHz ]
-H1X4+:  {H.hod.1x4.posScaler} [ {H.hod.1x4.posScalerRate/1000.:%.3f} kHz ]
-H1X5+:  {H.hod.1x5.posScaler} [ {H.hod.1x5.posScalerRate/1000.:%.3f} kHz ]
-H1X6+:  {H.hod.1x6.posScaler} [ {H.hod.1x6.posScalerRate/1000.:%.3f} kHz ]
-H1X7+:  {H.hod.1x7.posScaler} [ {H.hod.1x7.posScalerRate/1000.:%.3f} kHz ]
-H1X8+:  {H.hod.1x8.posScaler} [ {H.hod.1x8.posScalerRate/1000.:%.3f} kHz ]
-H1X9+:  {H.hod.1x9.posScaler} [ {H.hod.1x9.posScalerRate/1000.:%.3f} kHz ]
-H1X10+: {H.hod.1x10.posScaler} [ {H.hod.1x10.posScalerRate/1000.:%.3f} kHz ]
-H1X11+: {H.hod.1x11.posScaler} [ {H.hod.1x11.posScalerRate/1000.:%.3f} kHz ] 
-H1X12+: {H.hod.1x12.posScaler} [ {H.hod.1x12.posScalerRate/1000.:%.3f} kHz ]
-H1X13+: {H.hod.1x13.posScaler} [ {H.hod.1x13.posScalerRate/1000.:%.3f} kHz ]
-H1X14+: {H.hod.1x14.posScaler} [ {H.hod.1x14.posScalerRate/1000.:%.3f} kHz ]
-H1X15+: {H.hod.1x15.posScaler} [ {H.hod.1x15.posScalerRate/1000.:%.3f} kHz ]
-H1X16+: {H.hod.1x16.posScaler} [ {H.hod.1x16.posScalerRate/1000.:%.3f} kHz ]
-
-H1X1-:  {H.hod.1x1.negScaler} [ {H.hod.1x1.negScalerRate/1000.:%.3f} kHz ]
-H1X2-:  {H.hod.1x2.negScaler} [ {H.hod.1x2.negScalerRate/1000.:%.3f} kHz ]
-H1X3-:  {H.hod.1x3.negScaler} [ {H.hod.1x3.negScalerRate/1000.:%.3f} kHz ]
-H1X4-:  {H.hod.1x4.negScaler} [ {H.hod.1x4.negScalerRate/1000.:%.3f} kHz ]
-H1X5-:  {H.hod.1x5.negScaler} [ {H.hod.1x5.negScalerRate/1000.:%.3f} kHz ]
-H1X6-:  {H.hod.1x6.negScaler} [ {H.hod.1x6.negScalerRate/1000.:%.3f} kHz ]
-H1X7-:  {H.hod.1x7.negScaler} [ {H.hod.1x7.negScalerRate/1000.:%.3f} kHz ]
-H1X8-:  {H.hod.1x8.negScaler} [ {H.hod.1x8.negScalerRate/1000.:%.3f} kHz ]
-H1X9-:  {H.hod.1x9.negScaler} [ {H.hod.1x9.negScalerRate/1000.:%.3f} kHz ]
-H1X10-: {H.hod.1x10.negScaler} [ {H.hod.1x10.negScalerRate/1000.:%.3f} kHz ]
-H1X11-: {H.hod.1x11.negScaler} [ {H.hod.1x11.negScalerRate/1000.:%.3f} kHz ]
-H1X12-: {H.hod.1x12.negScaler} [ {H.hod.1x12.negScalerRate/1000.:%.3f} kHz ]
-H1X13-: {H.hod.1x13.negScaler} [ {H.hod.1x13.negScalerRate/1000.:%.3f} kHz ]
-H1X14-: {H.hod.1x14.negScaler} [ {H.hod.1x14.negScalerRate/1000.:%.3f} kHz ]
-H1X15-: {H.hod.1x15.negScaler} [ {H.hod.1x15.negScalerRate/1000.:%.3f} kHz ]
-H1X16-: {H.hod.1x16.negScaler} [ {H.hod.1x16.negScalerRate/1000.:%.3f} kHz ]
+H1X1+:  {H.hod.1x1.posScaler} [ {(H.hod.1x1.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X2+:  {H.hod.1x2.posScaler} [ {(H.hod.1x2.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X3+:  {H.hod.1x3.posScaler} [ {(H.hod.1x3.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X4+:  {H.hod.1x4.posScaler} [ {(H.hod.1x4.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X5+:  {H.hod.1x5.posScaler} [ {(H.hod.1x5.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X6+:  {H.hod.1x6.posScaler} [ {(H.hod.1x6.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X7+:  {H.hod.1x7.posScaler} [ {(H.hod.1x7.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X8+:  {H.hod.1x8.posScaler} [ {(H.hod.1x8.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X9+:  {H.hod.1x9.posScaler} [ {(H.hod.1x9.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X10+: {H.hod.1x10.posScaler} [ {(H.hod.1x10.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X11+: {H.hod.1x11.posScaler} [ {(H.hod.1x11.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] 
+H1X12+: {H.hod.1x12.posScaler} [ {(H.hod.1x12.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X13+: {H.hod.1x13.posScaler} [ {(H.hod.1x13.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X14+: {H.hod.1x14.posScaler} [ {(H.hod.1x14.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X15+: {H.hod.1x15.posScaler} [ {(H.hod.1x15.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X16+: {H.hod.1x16.posScaler} [ {(H.hod.1x16.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H1X1-:  {H.hod.1x1.negScaler} [ {(H.hod.1x1.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X2-:  {H.hod.1x2.negScaler} [ {(H.hod.1x2.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X3-:  {H.hod.1x3.negScaler} [ {(H.hod.1x3.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X4-:  {H.hod.1x4.negScaler} [ {(H.hod.1x4.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X5-:  {H.hod.1x5.negScaler} [ {(H.hod.1x5.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X6-:  {H.hod.1x6.negScaler} [ {(H.hod.1x6.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X7-:  {H.hod.1x7.negScaler} [ {(H.hod.1x7.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X8-:  {H.hod.1x8.negScaler} [ {(H.hod.1x8.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X9-:  {H.hod.1x9.negScaler} [ {(H.hod.1x9.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X10-: {H.hod.1x10.negScaler} [ {(H.hod.1x10.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X11-: {H.hod.1x11.negScaler} [ {(H.hod.1x11.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X12-: {H.hod.1x12.negScaler} [ {(H.hod.1x12.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X13-: {H.hod.1x13.negScaler} [ {(H.hod.1x13.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X14-: {H.hod.1x14.negScaler} [ {(H.hod.1x14.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X15-: {H.hod.1x15.negScaler} [ {(H.hod.1x15.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1X16-: {H.hod.1x16.negScaler} [ {(H.hod.1x16.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
  
-H1Y1+:  {H.hod.1y1.posScaler} [ {H.hod.1y1.posScalerRate/1000.:%.3f} kHz ]
-H1Y2+:  {H.hod.1y2.posScaler} [ {H.hod.1y2.posScalerRate/1000.:%.3f} kHz ]
-H1Y3+:  {H.hod.1y3.posScaler} [ {H.hod.1y3.posScalerRate/1000.:%.3f} kHz ]
-H1Y4+:  {H.hod.1y4.posScaler} [ {H.hod.1y4.posScalerRate/1000.:%.3f} kHz ]
-H1Y5+:  {H.hod.1y5.posScaler} [ {H.hod.1y5.posScalerRate/1000.:%.3f} kHz ]
-H1Y6+:  {H.hod.1y6.posScaler} [ {H.hod.1y6.posScalerRate/1000.:%.3f} kHz ]
-H1Y7+:  {H.hod.1y7.posScaler} [ {H.hod.1y7.posScalerRate/1000.:%.3f} kHz ]
-H1Y8+:  {H.hod.1y8.posScaler} [ {H.hod.1y8.posScalerRate/1000.:%.3f} kHz ]
-H1Y9+:  {H.hod.1y9.posScaler} [ {H.hod.1y9.posScalerRate/1000.:%.3f} kHz ]
-H1Y10+: {H.hod.1y10.posScaler} [ {H.hod.1y10.posScalerRate/1000.:%.3f} kHz ]
-
-H1Y1-:  {H.hod.1y1.negScaler} [ {H.hod.1y1.negScalerRate/1000.:%.3f} kHz ]
-H1Y2-:  {H.hod.1y2.negScaler} [ {H.hod.1y2.negScalerRate/1000.:%.3f} kHz ]
-H1Y3-:  {H.hod.1y3.negScaler} [ {H.hod.1y3.negScalerRate/1000.:%.3f} kHz ]
-H1Y4-:  {H.hod.1y4.negScaler} [ {H.hod.1y4.negScalerRate/1000.:%.3f} kHz ]
-H1Y5-:  {H.hod.1y5.negScaler} [ {H.hod.1y5.negScalerRate/1000.:%.3f} kHz ]
-H1Y6-:  {H.hod.1y6.negScaler} [ {H.hod.1y6.negScalerRate/1000.:%.3f} kHz ]
-H1Y7-:  {H.hod.1y7.negScaler} [ {H.hod.1y7.negScalerRate/1000.:%.3f} kHz ]
-H1Y8-:  {H.hod.1y8.negScaler} [ {H.hod.1y8.negScalerRate/1000.:%.3f} kHz ]
-H1Y9-:  {H.hod.1y9.negScaler} [ {H.hod.1y9.negScalerRate/1000.:%.3f} kHz ]
-H1Y10-: {H.hod.1y10.negScaler} [ {H.hod.1y10.negScalerRate/1000.:%.3f} kHz ]
-
-H2X1+:  {H.hod.2x1.posScaler} [ {H.hod.2x1.posScalerRate/1000.:%.3f} kHz ]
-H2X2+:  {H.hod.2x2.posScaler} [ {H.hod.2x2.posScalerRate/1000.:%.3f} kHz ]
-H2X3+:  {H.hod.2x3.posScaler} [ {H.hod.2x3.posScalerRate/1000.:%.3f} kHz ]
-H2X4+:  {H.hod.2x4.posScaler} [ {H.hod.2x4.posScalerRate/1000.:%.3f} kHz ]
-H2X5+:  {H.hod.2x5.posScaler} [ {H.hod.2x5.posScalerRate/1000.:%.3f} kHz ]
-H2X6+:  {H.hod.2x6.posScaler} [ {H.hod.2x6.posScalerRate/1000.:%.3f} kHz ]
-H2X7+:  {H.hod.2x7.posScaler} [ {H.hod.2x7.posScalerRate/1000.:%.3f} kHz ]
-H2X8+:  {H.hod.2x8.posScaler} [ {H.hod.2x8.posScalerRate/1000.:%.3f} kHz ]
-H2X9+:  {H.hod.2x9.posScaler} [ {H.hod.2x9.posScalerRate/1000.:%.3f} kHz ]
-H2X10+: {H.hod.2x10.posScaler} [ {H.hod.2x10.posScalerRate/1000.:%.3f} kHz ]
-H2X11+: {H.hod.2x11.posScaler} [ {H.hod.2x11.posScalerRate/1000.:%.3f} kHz ]
-H2X12+: {H.hod.2x12.posScaler} [ {H.hod.2x12.posScalerRate/1000.:%.3f} kHz ]
-H2X13+: {H.hod.2x13.posScaler} [ {H.hod.2x13.posScalerRate/1000.:%.3f} kHz ]
-H2X14+: {H.hod.2x14.posScaler} [ {H.hod.2x14.posScalerRate/1000.:%.3f} kHz ]
-H2X15+: {H.hod.2x15.posScaler} [ {H.hod.2x15.posScalerRate/1000.:%.3f} kHz ]
-H2X16+: {H.hod.2x16.posScaler} [ {H.hod.2x16.posScalerRate/1000.:%.3f} kHz ]
-
-H2X1-:  {H.hod.2x1.negScaler} [ {H.hod.2x1.negScalerRate/1000.:%.3f} kHz ]
-H2X2-:  {H.hod.2x2.negScaler} [ {H.hod.2x2.negScalerRate/1000.:%.3f} kHz ]
-H2X3-:  {H.hod.2x3.negScaler} [ {H.hod.2x3.negScalerRate/1000.:%.3f} kHz ]
-H2X4-:  {H.hod.2x4.negScaler} [ {H.hod.2x4.negScalerRate/1000.:%.3f} kHz ]
-H2X5-:  {H.hod.2x5.negScaler} [ {H.hod.2x5.negScalerRate/1000.:%.3f} kHz ]
-H2X6-:  {H.hod.2x6.negScaler} [ {H.hod.2x6.negScalerRate/1000.:%.3f} kHz ]
-H2X7-:  {H.hod.2x7.negScaler} [ {H.hod.2x7.negScalerRate/1000.:%.3f} kHz ]
-H2X8-:  {H.hod.2x8.negScaler} [ {H.hod.2x8.negScalerRate/1000.:%.3f} kHz ]
-H2X9-:  {H.hod.2x9.negScaler} [ {H.hod.2x9.negScalerRate/1000.:%.3f} kHz ]
-H2X10-: {H.hod.2x10.negScaler} [ {H.hod.2x10.negScalerRate/1000.:%.3f} kHz ]
-H2X11-: {H.hod.2x11.negScaler} [ {H.hod.2x11.negScalerRate/1000.:%.3f} kHz ]
-H2X12-: {H.hod.2x12.negScaler} [ {H.hod.2x12.negScalerRate/1000.:%.3f} kHz ]
-H2X13-: {H.hod.2x13.negScaler} [ {H.hod.2x13.negScalerRate/1000.:%.3f} kHz ]
-H2X14-: {H.hod.2x14.negScaler} [ {H.hod.2x14.negScalerRate/1000.:%.3f} kHz ]
-H2X15-: {H.hod.2x15.negScaler} [ {H.hod.2x15.negScalerRate/1000.:%.3f} kHz ]
-H2X16-: {H.hod.2x16.negScaler} [ {H.hod.2x16.negScalerRate/1000.:%.3f} kHz ]
-
-H2Y1+:  {H.hod.2y1.posScaler} [ {H.hod.2y1.posScalerRate/1000.:%.3f} kHz ]
-H2Y2+:  {H.hod.2y2.posScaler} [ {H.hod.2y2.posScalerRate/1000.:%.3f} kHz ]
-H2Y3+:  {H.hod.2y3.posScaler} [ {H.hod.2y3.posScalerRate/1000.:%.3f} kHz ] 
-H2Y4+:  {H.hod.2y4.posScaler} [ {H.hod.2y4.posScalerRate/1000.:%.3f} kHz ]
-H2Y5+:  {H.hod.2y5.posScaler} [ {H.hod.2y5.posScalerRate/1000.:%.3f} kHz ]
-H2Y6+:  {H.hod.2y6.posScaler} [ {H.hod.2y6.posScalerRate/1000.:%.3f} kHz ]
-H2Y7+:  {H.hod.2y7.posScaler} [ {H.hod.2y7.posScalerRate/1000.:%.3f} kHz ]
-H2Y8+:  {H.hod.2y8.posScaler} [ {H.hod.2y8.posScalerRate/1000.:%.3f} kHz ]
-H2Y9+:  {H.hod.2y9.posScaler} [ {H.hod.2y9.posScalerRate/1000.:%.3f} kHz ]
-H2Y10+: {H.hod.2y10.posScaler} [ {H.hod.2y10.posScalerRate/1000.:%.3f} kHz ]
-
-H2Y1-:  {H.hod.2y1.negScaler} [ {H.hod.2y1.negScalerRate/1000.:%.3f} kHz ]
-H2Y2-:  {H.hod.2y2.negScaler} [ {H.hod.2y2.negScalerRate/1000.:%.3f} kHz ]
-H2Y3-:  {H.hod.2y3.negScaler} [ {H.hod.2y3.negScalerRate/1000.:%.3f} kHz ]
-H2Y4-:  {H.hod.2y4.negScaler} [ {H.hod.2y4.negScalerRate/1000.:%.3f} kHz ]
-H2Y5-:  {H.hod.2y5.negScaler} [ {H.hod.2y5.negScalerRate/1000.:%.3f} kHz ]
-H2Y6-:  {H.hod.2y6.negScaler} [ {H.hod.2y6.negScalerRate/1000.:%.3f} kHz ]
-H2Y7-:  {H.hod.2y7.negScaler} [ {H.hod.2y7.negScalerRate/1000.:%.3f} kHz ]
-H2Y8-:  {H.hod.2y8.negScaler} [ {H.hod.2y8.negScalerRate/1000.:%.3f} kHz ]
-H2Y9-:  {H.hod.2y9.negScaler} [ {H.hod.2y9.negScalerRate/1000.:%.3f} kHz ]
-H2Y10-: {H.hod.2y10.negScaler} [ {H.hod.2y10.negScalerRate/1000.:%.3f} kHz ]
-
-H1X: {H.S1X.scaler} [ {H.S1X.scalerRate/1000.:%.3f} kHz ] AND between + and - sides of H1X 
-H1Y: {H.S1Y.scaler} [ {H.S1Y.scalerRate/1000.:%.3f} kHz ] AND between + and - sides of H1Y
-H2X: {H.S2X.scaler} [ {H.S2X.scalerRate/1000.:%.3f} kHz ] AND between + and - sides of H2X
-H2Y: {H.S2Y.scaler} [ {H.S2Y.scalerRate/1000.:%.3f} kHz ] AND between + and - sides of H2Y
-
-H1XH1Y: {H.S1XS1Y.scaler} [{H.S1XS1Y.scalerRate/1000.:%.3f}] AND between H1X and H1Y planes 
-H2XH2Y: {H.S2XS2Y.scaler} [{H.S2XS2Y.scalerRate/1000.:%.3f}] OR between H2X and H2Y planes (just for kpp, will be AND)
+H1Y1+:  {H.hod.1y1.posScaler} [ {(H.hod.1y1.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y2+:  {H.hod.1y2.posScaler} [ {(H.hod.1y2.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y3+:  {H.hod.1y3.posScaler} [ {(H.hod.1y3.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y4+:  {H.hod.1y4.posScaler} [ {(H.hod.1y4.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y5+:  {H.hod.1y5.posScaler} [ {(H.hod.1y5.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y6+:  {H.hod.1y6.posScaler} [ {(H.hod.1y6.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y7+:  {H.hod.1y7.posScaler} [ {(H.hod.1y7.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y8+:  {H.hod.1y8.posScaler} [ {(H.hod.1y8.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y9+:  {H.hod.1y9.posScaler} [ {(H.hod.1y9.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y10+: {H.hod.1y10.posScaler} [ {(H.hod.1y10.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H1Y1-:  {H.hod.1y1.negScaler} [ {(H.hod.1y1.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y2-:  {H.hod.1y2.negScaler} [ {(H.hod.1y2.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y3-:  {H.hod.1y3.negScaler} [ {(H.hod.1y3.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y4-:  {H.hod.1y4.negScaler} [ {(H.hod.1y4.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y5-:  {H.hod.1y5.negScaler} [ {(H.hod.1y5.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y6-:  {H.hod.1y6.negScaler} [ {(H.hod.1y6.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y7-:  {H.hod.1y7.negScaler} [ {(H.hod.1y7.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y8-:  {H.hod.1y8.negScaler} [ {(H.hod.1y8.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y9-:  {H.hod.1y9.negScaler} [ {(H.hod.1y9.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H1Y10-: {H.hod.1y10.negScaler} [ {(H.hod.1y10.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H2X1+:  {H.hod.2x1.posScaler} [ {(H.hod.2x1.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X2+:  {H.hod.2x2.posScaler} [ {(H.hod.2x2.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X3+:  {H.hod.2x3.posScaler} [ {(H.hod.2x3.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X4+:  {H.hod.2x4.posScaler} [ {(H.hod.2x4.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X5+:  {H.hod.2x5.posScaler} [ {(H.hod.2x5.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X6+:  {H.hod.2x6.posScaler} [ {(H.hod.2x6.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X7+:  {H.hod.2x7.posScaler} [ {(H.hod.2x7.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X8+:  {H.hod.2x8.posScaler} [ {(H.hod.2x8.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X9+:  {H.hod.2x9.posScaler} [ {(H.hod.2x9.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X10+: {H.hod.2x10.posScaler} [ {(H.hod.2x10.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X11+: {H.hod.2x11.posScaler} [ {(H.hod.2x11.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X12+: {H.hod.2x12.posScaler} [ {(H.hod.2x12.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X13+: {H.hod.2x13.posScaler} [ {(H.hod.2x13.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X14+: {H.hod.2x14.posScaler} [ {(H.hod.2x14.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X15+: {H.hod.2x15.posScaler} [ {(H.hod.2x15.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X16+: {H.hod.2x16.posScaler} [ {(H.hod.2x16.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H2X1-:  {H.hod.2x1.negScaler} [ {(H.hod.2x1.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X2-:  {H.hod.2x2.negScaler} [ {(H.hod.2x2.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X3-:  {H.hod.2x3.negScaler} [ {(H.hod.2x3.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X4-:  {H.hod.2x4.negScaler} [ {(H.hod.2x4.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X5-:  {H.hod.2x5.negScaler} [ {(H.hod.2x5.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X6-:  {H.hod.2x6.negScaler} [ {(H.hod.2x6.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X7-:  {H.hod.2x7.negScaler} [ {(H.hod.2x7.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X8-:  {H.hod.2x8.negScaler} [ {(H.hod.2x8.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X9-:  {H.hod.2x9.negScaler} [ {(H.hod.2x9.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X10-: {H.hod.2x10.negScaler} [ {(H.hod.2x10.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X11-: {H.hod.2x11.negScaler} [ {(H.hod.2x11.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X12-: {H.hod.2x12.negScaler} [ {(H.hod.2x12.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X13-: {H.hod.2x13.negScaler} [ {(H.hod.2x13.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X14-: {H.hod.2x14.negScaler} [ {(H.hod.2x14.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X15-: {H.hod.2x15.negScaler} [ {(H.hod.2x15.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2X16-: {H.hod.2x16.negScaler} [ {(H.hod.2x16.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H2Y1+:  {H.hod.2y1.posScaler} [ {(H.hod.2y1.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y2+:  {H.hod.2y2.posScaler} [ {(H.hod.2y2.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y3+:  {H.hod.2y3.posScaler} [ {(H.hod.2y3.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] 
+H2Y4+:  {H.hod.2y4.posScaler} [ {(H.hod.2y4.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y5+:  {H.hod.2y5.posScaler} [ {(H.hod.2y5.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y6+:  {H.hod.2y6.posScaler} [ {(H.hod.2y6.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y7+:  {H.hod.2y7.posScaler} [ {(H.hod.2y7.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y8+:  {H.hod.2y8.posScaler} [ {(H.hod.2y8.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y9+:  {H.hod.2y9.posScaler} [ {(H.hod.2y9.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y10+: {H.hod.2y10.posScaler} [ {(H.hod.2y10.posScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H2Y1-:  {H.hod.2y1.negScaler} [ {(H.hod.2y1.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y2-:  {H.hod.2y2.negScaler} [ {(H.hod.2y2.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y3-:  {H.hod.2y3.negScaler} [ {(H.hod.2y3.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y4-:  {H.hod.2y4.negScaler} [ {(H.hod.2y4.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y5-:  {H.hod.2y5.negScaler} [ {(H.hod.2y5.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y6-:  {H.hod.2y6.negScaler} [ {(H.hod.2y6.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y7-:  {H.hod.2y7.negScaler} [ {(H.hod.2y7.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y8-:  {H.hod.2y8.negScaler} [ {(H.hod.2y8.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y9-:  {H.hod.2y9.negScaler} [ {(H.hod.2y9.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+H2Y10-: {H.hod.2y10.negScaler} [ {(H.hod.2y10.negScaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+H1X: {H.S1X.scaler} [ {(H.S1X.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of H1X 
+H1Y: {H.S1Y.scaler} [ {(H.S1Y.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of H1Y
+H2X: {H.S2X.scaler} [ {(H.S2X.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of H2X
+H2Y: {H.S2Y.scaler} [ {(H.S2Y.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of H2Y
+H1XH1Y: {H.S1XS1Y.scaler} [{(H.S1XS1Y.scaler/H.1Mhz.scalerTime)/1000.:%.3f}  kHz ] AND between H1X and H1Y planes 
+H2XH2Y: {H.S2XS2Y.scaler} [{(H.S2XS2Y.scaler/H.1Mhz.scalerTime)/1000.:%.3f}  kHz ] OR between H2X and H2Y planes (just for kpp, will be AND)
+
+*Cerenkov*
+CERSUM:	     {H.CERSUM.scaler}  [{(H.CERSUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+*Calorimeter*
+PRESHOWERLO: {H.PSHWRLO.scaler}  [{(H.PSHWRLO.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+PRESHOWERHI: {H.PSHWRHI.scaler}  [{(H.PSHWRHI.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+SHWR: 	     {H.SHWR.scaler} [{(H.SHWR.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+ASUM: 	     {H.ASUM.scaler}  [{(H.ASUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+BSUM:	     {H.BSUM.scaler}  [{(H.BSUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+CSUM:	     {H.CSUM.scaler}  [{(H.CSUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+DSUM:	     {H.DSUM.scaler}  [{(H.DSUM.scaler/H.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
diff --git a/TEMPLATES/HMS/STACK/hstackana.template b/TEMPLATES/HMS/STACK/hstackana.template
index 79f65da4..bfc4c17e 100644
--- a/TEMPLATES/HMS/STACK/hstackana.template
+++ b/TEMPLATES/HMS/STACK/hstackana.template
@@ -30,17 +30,10 @@ hmsDC2v1Planes5	  Counts: {hmsDC2_5hits_v1.npassed} eff : {hmsDC2_6hits_v1.npass
 hmsDC2v2Planes5	  Counts: {hmsDC2_5hits_v2.npassed} eff : {hmsDC2_6hits_v2.npassed/hmsDC2_5hits_v2.npassed}
 hmsDC2x2Planes5	  Counts: {hmsDC2_5hits_x2.npassed} eff : {hmsDC2_6hits_x2.npassed/hmsDC2_5hits_x2.npassed}
 
-HMS Calorimeter Efficiencies
-
-hA	     Counts: {H.cal.stat_trksum1} eff : {H.cal.stat_hitsum1 / H.cal.stat_trksum1}
-hB	     Counts: {H.cal.stat_trksum2} eff : {H.cal.stat_hitsum2 / H.cal.stat_trksum2}
-hC	     Counts: {H.cal.stat_trksum3} eff : {H.cal.stat_hitsum3 / H.cal.stat_trksum3}
-hD	     Counts: {H.cal.stat_trksum4} eff : {H.cal.stat_hitsum4 / H.cal.stat_trksum4}
-
 *****************************
 *HMS TRACKING EFFICIENCIES *
 *****************************
-htrig                          :   {hmscoin_event.npassed}
+htrig                          :   {hms_trigs.npassed}
 hhitslt = passed hits/cham     :   {hmsHitsLt.npassed}
 hhitsplanes = +planes >= 5/6   :   {hmsHitsPlanes.npassed}
 hhitsplanessps = + sps         :   {hSpacePoints.npassed}
@@ -66,3 +59,119 @@ hscinshouldh                   :   {HMSScinShouldh.npassed}
 SING FID TRACK EFFIC           : {HMSScinDid.npassed/(HMSScinShould.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShould.npassed-HMSScinDid.npassed)/(HMSScinShould.npassed+.0001)):%8.4f}
 E SING FID TRACK EFFIC         : {HMSScinDide.npassed/(HMSScinShoulde.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShoulde.npassed-HMSScinDide.npassed)/(HMSScinShoulde.npassed+.0001)):%8.4f}
 HADRON SING FID TRACK EFFIC    : {HMSScinDidh.npassed/(HMSScinShouldh.npassed+0.0001):%8.4f} +- {(sqrt(HMSScinShouldh.npassed-HMSScinDidh.npassed)/(HMSScinShouldh.npassed+.0001)):%8.4f}
+
+************
+* HGC Cerenkov *
+****************
+
+Good Track Requirements:
+   1. Only one track found in the focal plane
+   2. chisq/dof < {hcer_red_chi2_max:%5.1f}
+   3. {hcer_beta_min:%5.3f} < beta < {hcer_beta_max:%5.3f}
+   4. {hcer_enorm_min:%5.3f} < calorimeter energy < {hcer_enorm_max:%5.3f}
+Threshold set at {hcer_npe_thresh:%4.1f}
+*HGC EFF* 2PMTs
+HMS Region 1 efficiency: {HMS_hcer_track_fired_region_1.npassed/HMS_hcer_track_matched_region_1.npassed} = {HMS_hcer_track_fired_region_1.npassed} of {HMS_hcer_track_matched_region_1.npassed} good tracks.
+HMS Region 2 efficiency: {HMS_hcer_track_fired_region_2.npassed/HMS_hcer_track_matched_region_2.npassed} = {HMS_hcer_track_fired_region_2.npassed} of {HMS_hcer_track_matched_region_2.npassed} good tracks.
+Overall HGC Efficiency: {HMS_hcer_track_fired_tot.npassed/HMS_hcer_track_matched_tot.npassed} = {HMS_hcer_track_fired_tot.npassed} of {HMS_hcer_track_matched_tot.npassed} good tracks.
+
+****************************
+* Calorimeter Efficiencies *
+****************************
+Efficiencies for calorimeter is the fraction of times block was hit when track
+with chisquared/dof < {hstat_cal_maxchisq:%5.1f} came within {hstat_cal_slop:%4.1f} cm of the center.
+and scal_npe_sum  > 3.0 (hardwired). (is this still true?)
+
+Events examined = strig       = {hms_trigs.npassed}
+Tracks found    = scleantrack = {hCleanTrack.npassed}
+Tracks passing chisquared cut = (hstat_cal_numevents:%7d) (in previous template, do we need this here?)
+
+hmsPreShower	     Counts: {H.cal.stat_trksum1} eff : {H.cal.stat_hitsum1 / H.cal.stat_trksum1}
+hmsShowerArray	     Counts: {H.cal.stat_trksum_array} eff : {H.cal.stat_hitsum_array / H.cal.stat_trksum_array}
+
+hA	     Counts: {H.cal.stat_trksum1} eff : {H.cal.stat_hitsum1 / H.cal.stat_trksum1}
+hB	     Counts: {H.cal.stat_trksum2} eff : {H.cal.stat_hitsum2 / H.cal.stat_trksum2}
+hC	     Counts: {H.cal.stat_trksum3} eff : {H.cal.stat_hitsum3 / H.cal.stat_trksum3}
+hD	     Counts: {H.cal.stat_trksum4} eff : {H.cal.stat_hitsum4 / H.cal.stat_trksum4}
+
+**************************
+* Hodoscope Efficiencies * 
+**************************
+Efficiencies for hodoscopes is the fraction of times scin. was hit when track
+with chisquared/dof < {hstat_maxchisq:%5.1f} came within {hstat_slop:%4.1f} cm of the center.
+
+Events examined = strig       = {hms_trigs.npassed}
+Tracks found    = scleantrack = {hCleanTrack.npassed}
+//Tracks passing chisquared cut = (stat_numevents) (in previous template, do we still need this?)
+
+Plane 1: {hhodo_plane_AND_eff[0]}
+Plane 2: {hhodo_plane_AND_eff[1]}
+Plane 3: {hhodo_plane_AND_eff[2]}
+Plane 4: {hhodo_plane_AND_eff[3]}
+
+S1XY : {hhodo_s1XY_eff}
+S2XY : {hhodo_s2XY_eff}
+
+STOF: {hhodo_stof_eff}
+
+3_of_4 EFF : {hhodo_3_of_4_eff}
+4_of_4 EFF : {hhodo_4_of_4_eff}
+
+*HODO EFF*
+Scint		Pos eff		Neg eff		OR eff		AND eff		 Hits
+-----------------------------------------------------------------------------------------------------------
+H1X1		{hhodo_pos_eff[0]}		{hhodo_neg_eff[0]}		 {hhodo_or_eff[0]}		 {hhodo_and_eff[0]}             {hhodo_gold_hits[0]}
+H1X2		{hhodo_pos_eff[4]}		{hhodo_neg_eff[4]}	 	 {hhodo_or_eff[4]}	 	 {hhodo_and_eff[4]}	       {hhodo_gold_hits[4]}
+H1X3	 	{hhodo_pos_eff[8]}		{hhodo_neg_eff[8]}		 {hhodo_or_eff[8]}	 	 {hhodo_and_eff[8]}  	       {hhodo_gold_hits[8]}
+H1X4 	 	{hhodo_pos_eff[12]}		{hhodo_neg_eff[12]} 	 	 {hhodo_or_eff[12]} 	 	 {hhodo_and_eff[12]}	       {hhodo_gold_hits[12]}
+H1X5	 	{hhodo_pos_eff[16]}		{hhodo_neg_eff[16]} 	 	 {hhodo_or_eff[16]} 	 	 {hhodo_and_eff[16]} 	       {hhodo_gold_hits[16]}
+H1X6	 	{hhodo_pos_eff[20]}		{hhodo_neg_eff[20]} 	 	 {hhodo_or_eff[20]} 	 	 {hhodo_and_eff[20]} 	       {hhodo_gold_hits[20]}
+H1X7 	 	{hhodo_pos_eff[24]}  		{hhodo_neg_eff[24]} 	 	 {hhodo_or_eff[24]} 	 	 {hhodo_and_eff[24]} 	       {hhodo_gold_hits[24]}
+H1X8 	 	{hhodo_pos_eff[28]} 		{hhodo_neg_eff[28]} 	 	 {hhodo_or_eff[28]} 	 	 {hhodo_and_eff[28]} 	       {hhodo_gold_hits[28]}
+H1X9 	 	{hhodo_pos_eff[32]}		{hhodo_neg_eff[32]} 	 	 {hhodo_or_eff[32]} 	 	 {hhodo_and_eff[32]} 	       {hhodo_gold_hits[32]}
+H1X10 	 	{hhodo_pos_eff[36]} 		{hhodo_neg_eff[36]} 	 	 {hhodo_or_eff[36]} 	 	 {hhodo_and_eff[36]}	       {hhodo_gold_hits[36]}
+H1X11	 	{hhodo_pos_eff[40]} 		{hhodo_neg_eff[40]} 	 	 {hhodo_or_eff[40]} 	 	 {hhodo_and_eff[40]} 	       {hhodo_gold_hits[40]}
+H1X12	 	{hhodo_pos_eff[44]} 		{hhodo_neg_eff[44]} 	 	 {hhodo_or_eff[44]} 	 	 {hhodo_and_eff[44]} 	       {hhodo_gold_hits[44]}
+H1X13 	 	{hhodo_pos_eff[48]} 		{hhodo_neg_eff[48]} 	 	 {hhodo_or_eff[48]} 	 	 {hhodo_and_eff[48]} 	       {hhodo_gold_hits[48]}
+H1X14 	 	{hhodo_pos_eff[52]} 		{hhodo_neg_eff[52]} 	 	 {hhodo_or_eff[52]} 	 	 {hhodo_and_eff[52]} 	       {hhodo_gold_hits[52]}
+H1X15 	 	{hhodo_pos_eff[56]} 		{hhodo_neg_eff[56]} 	 	 {hhodo_or_eff[56]} 	 	 {hhodo_and_eff[56]} 	       {hhodo_gold_hits[56]}
+H1X16  	 	{hhodo_pos_eff[60]} 		{hhodo_neg_eff[60]} 	 	 {hhodo_or_eff[60]} 	 	 {hhodo_and_eff[60]} 	       {hhodo_gold_hits[60]}
+
+H1Y1 	 	{hhodo_pos_eff[1]}		{hhodo_neg_eff[1]} 	 	 {hhodo_or_eff[1]}	 	 {hhodo_and_eff[1]}	       {hhodo_gold_hits[1]}
+H1Y2 	 	{hhodo_pos_eff[5]} 		{hhodo_neg_eff[5]} 	 	 {hhodo_or_eff[5]} 	 	 {hhodo_and_eff[5]} 	       {hhodo_gold_hits[5]}
+H1Y3		{hhodo_pos_eff[9]} 		{hhodo_neg_eff[9]} 	 	 {hhodo_or_eff[9]} 	 	 {hhodo_and_eff[9]} 	       {hhodo_gold_hits[9]}
+H1Y4   	 	{hhodo_pos_eff[13]} 		{hhodo_neg_eff[13]} 	 	 {hhodo_or_eff[13]} 	 	 {hhodo_and_eff[13]} 	       {hhodo_gold_hits[13]}
+H1Y5 	 	{hhodo_pos_eff[17]} 		{hhodo_neg_eff[17]} 	 	 {hhodo_or_eff[17]} 	 	 {hhodo_and_eff[17]} 	       {hhodo_gold_hits[17]}
+H1Y6 	 	{hhodo_pos_eff[21]} 		{hhodo_neg_eff[21]} 	 	 {hhodo_or_eff[21]} 	 	 {hhodo_and_eff[21]} 	       {hhodo_gold_hits[21]}
+H1Y7 	 	{hhodo_pos_eff[25]} 		{hhodo_neg_eff[25]} 	 	 {hhodo_or_eff[25]} 	 	 {hhodo_and_eff[25]} 	       {hhodo_gold_hits[25]}
+H1Y8 	 	{hhodo_pos_eff[29]} 		{hhodo_neg_eff[29]} 	 	 {hhodo_or_eff[29]} 	 	 {hhodo_and_eff[29]} 	       {hhodo_gold_hits[29]}
+H1Y9 	 	{hhodo_pos_eff[33]} 		{hhodo_neg_eff[33]} 	 	 {hhodo_or_eff[33]} 	 	 {hhodo_and_eff[33]} 	       {hhodo_gold_hits[33]}
+H1Y10 	 	{hhodo_pos_eff[37]} 		{hhodo_neg_eff[37]} 	 	 {hhodo_or_eff[37]} 	 	 {hhodo_and_eff[37]} 	       {hhodo_gold_hits[37]}
+
+H2X1	 	{hhodo_pos_eff[2]}	 	{hhodo_neg_eff[2]}	 	 {hhodo_or_eff[2]} 	 	 {hhodo_and_eff[2]} 	       {hhodo_gold_hits[2]}
+H2X2 	 	{hhodo_pos_eff[6]}	 	{hhodo_neg_eff[6]}	 	 {hhodo_or_eff[6]}	 	 {hhodo_and_eff[6]}	       {hhodo_gold_hits[6]}
+H2X3 	 	{hhodo_pos_eff[10]} 	 	{hhodo_neg_eff[10]} 	 	 {hhodo_or_eff[10]}	 	 {hhodo_and_eff[10]} 	       {hhodo_gold_hits[10]}
+H2X4 	 	{hhodo_pos_eff[14]} 	 	{hhodo_neg_eff[14]}	 	 {hhodo_or_eff[14]} 	 	 {hhodo_and_eff[14]} 	       {hhodo_gold_hits[14]}
+H2X5 	 	{hhodo_pos_eff[18]} 	 	{hhodo_neg_eff[18]} 	 	 {hhodo_or_eff[18]} 	 	 {hhodo_and_eff[18]}	       {hhodo_gold_hits[18]}
+H2X6 	 	{hhodo_pos_eff[22]}	 	{hhodo_neg_eff[22]}	 	 {hhodo_or_eff[22]} 	 	 {hhodo_and_eff[22]} 	       {hhodo_gold_hits[22]}
+H2X7 	 	{hhodo_pos_eff[26]} 	 	{hhodo_neg_eff[26]}	 	 {hhodo_or_eff[26]}	 	 {hhodo_and_eff[26]}	       {hhodo_gold_hits[26]}
+H2X8 	 	{hhodo_pos_eff[30]} 	 	{hhodo_neg_eff[30]}		 {hhodo_or_eff[30]}      	 {hhodo_and_eff[30]}	       {hhodo_gold_hits[30]}
+H2X9 	 	{hhodo_pos_eff[34]} 	 	{hhodo_neg_eff[34]}		 {hhodo_or_eff[34]}		 {hhodo_and_eff[34]}	       {hhodo_gold_hits[34]}
+H2X10	 	{hhodo_pos_eff[38]}	 	{hhodo_neg_eff[38]}		 {hhodo_or_eff[38]}		 {hhodo_and_eff[38]}	       {hhodo_gold_hits[38]}
+H2X11 	 	{hhodo_pos_eff[42]} 	 	{hhodo_neg_eff[42]}		 {hhodo_or_eff[42]}		 {hhodo_and_eff[42]}	       {hhodo_gold_hits[42]}
+H2X12 	 	{hhodo_pos_eff[46]} 	 	{hhodo_neg_eff[46]}		 {hhodo_or_eff[46]}		 {hhodo_and_eff[46]}	       {hhodo_gold_hits[46]}
+H2X13 	 	{hhodo_pos_eff[50]} 	 	{hhodo_neg_eff[50]}		 {hhodo_or_eff[50]}		 {hhodo_and_eff[50]}	       {hhodo_gold_hits[50]}
+H2X14 	 	{hhodo_pos_eff[54]} 	 	{hhodo_neg_eff[54]}		 {hhodo_or_eff[54]}		 {hhodo_and_eff[54]}	       {hhodo_gold_hits[54]}
+H2X15 	 	{hhodo_pos_eff[58]} 	 	{hhodo_neg_eff[58]}		 {hhodo_or_eff[58]}		 {hhodo_and_eff[58]}	       {hhodo_gold_hits[58]}
+H2X16 	 	{hhodo_pos_eff[62]} 	 	{hhodo_neg_eff[62]}		 {hhodo_or_eff[62]}		 {hhodo_and_eff[62]}	       {hhodo_gold_hits[62]}
+
+H2Y1	 	{hhodo_pos_eff[3]}	 	{hhodo_neg_eff[3]}		 {hhodo_or_eff[3]}       	 {hhodo_and_eff[3]}	       {hhodo_gold_hits[3]}
+H2Y2 	 	{hhodo_pos_eff[7]}	 	{hhodo_neg_eff[7]} 	 	 {hhodo_or_eff[7]} 	 	 {hhodo_and_eff[7]}    	       {hhodo_gold_hits[7]}
+H2Y3 	 	{hhodo_pos_eff[11]} 	 	{hhodo_neg_eff[11]}	 	 {hhodo_or_eff[11]} 	 	 {hhodo_and_eff[11]}	       {hhodo_gold_hits[11]}
+H2Y4 	 	{hhodo_pos_eff[15]} 	 	{hhodo_neg_eff[15]} 	 	 {hhodo_or_eff[15]} 	 	 {hhodo_and_eff[15]}	       {hhodo_gold_hits[15]}
+H2Y5 	 	{hhodo_pos_eff[19]} 	 	{hhodo_neg_eff[19]}	 	 {hhodo_or_eff[19]} 	 	 {hhodo_and_eff[19]}	       {hhodo_gold_hits[19]}
+H2Y6 	 	{hhodo_pos_eff[23]} 	 	{hhodo_neg_eff[23]} 	 	 {hhodo_or_eff[23]} 	 	 {hhodo_and_eff[23]}	       {hhodo_gold_hits[23]}
+H2Y7 	 	{hhodo_pos_eff[27]} 	 	{hhodo_neg_eff[27]} 	 	 {hhodo_or_eff[27]} 	 	 {hhodo_and_eff[27]}	       {hhodo_gold_hits[27]}
+H2Y8 	 	{hhodo_pos_eff[31]} 	 	{hhodo_neg_eff[31]} 	 	 {hhodo_or_eff[31]} 	 	 {hhodo_and_eff[31]}	       {hhodo_gold_hits[31]}
+H2Y9 	 	{hhodo_pos_eff[35]} 	 	{hhodo_neg_eff[35]} 	 	 {hhodo_or_eff[35]} 	 	 {hhodo_and_eff[35]}	       {hhodo_gold_hits[35]}
+H2Y10 	 	{hhodo_pos_eff[39]} 	 	{hhodo_neg_eff[39]} 	 	 {hhodo_or_eff[39]} 	 	 {hhodo_and_eff[39]}	       {hhodo_gold_hits[39]}
diff --git a/TEMPLATES/SHMS/PRODUCTION/pstackana_production.template b/TEMPLATES/SHMS/PRODUCTION/pstackana_production.template
index d042ecdf..b6c1d913 100644
--- a/TEMPLATES/SHMS/PRODUCTION/pstackana_production.template
+++ b/TEMPLATES/SHMS/PRODUCTION/pstackana_production.template
@@ -7,9 +7,9 @@ Run Length   : {P.1Mhz.scalerTime:%.3f} sec
 * Beamline
 ***********
   
-BCM1 Current: {P.BCM1.scalerCurrent:%.3f} uA		  
-BCM2 Current: {P.BCM2.scalerCurrent:%.3f} uA		 
-Unser Current: {P.Unser.scalerCurrent:%.3f} uA		  
+BCM1 Current: {P.BCM1.scalerCharge/P.1Mhz.scalerTime:%.3f} uA		  
+BCM2 Current: {P.BCM2.scalerCharge/P.1Mhz.scalerTime:%.3f} uA		 
+Unser Current: {P.Unser.scalerCharge/P.1Mhz.scalerTime:%.3f} uA		  
 
 With no cuts on BCM{gBCM_Current_threshold_index+1}.
 BCM1 Counts: {P.BCM1.scaler}		Total Charge: {P.BCM1.scalerCharge:%.3f} uC
@@ -45,28 +45,65 @@ SHMS Event Types            : {SHMS_Pretrig.npassed}
 SHMS Computer Live Time : {(TRIG1.npassed / P.pTRIG1.scaler)*100.0:%3.4f} % [ {(TRIG1.npassed / (P.pTRIG1.scaler/gpconfig_ti_ps_factors[0]))*100.0:%3.4f} %  ]
 SHMS Computer Dead Time : {100.0 - (TRIG1.npassed / P.pTRIG1.scaler)*100.0:%3.4f} % [ {100.0 - (TRIG1.npassed / (P.pTRIG1.scaler/gpconfig_ti_ps_factors[0]))*100.0:%3.4f} %  ]
 
-***** Hodoscope Efficiency ********
-
-Plane 1: {phodo_plane_AND_eff[0]}
-Plane 2: {phodo_plane_AND_eff[1]}
-Plane 3: {phodo_plane_AND_eff[2]}
-Plane 4: {phodo_plane_AND_eff[3]}
-
-S1XY : {phodo_s1XY_eff}
-S2XY : {phodo_s2XY_eff}
-
-STOF: {phodo_stof_eff}
-
-3_of_4 EFF : {phodo_3_of_4_eff}
-4_of_4 EFF : {phodo_4_of_4_eff}
-
-***********************************
-
-
-**DRIFT CHAMBER** 
-good_S1_time         Counts: {good_S1_time.npassed}     / shms_trigs : {good_S1_time.npassed / shms_trigs.npassed}       
-good_S2X_time        Counts: {good_S2X_time.npassed}    / shms_trigs : {good_S2X_time.npassed / shms_trigs.npassed}    
-good_S1_S2X_time     Counts: {good_S1_S2X_time.npassed} / shms_trigs : {good_S1_S2X_time.npassed / shms_trigs.npassed}
+*************
+* MORE TRIGGERS
+**************
+HMS TRIG
+hEL_LO :	{P.hEL_LO.scaler}	[{P.hEL_LO.scaler/P.1Mhz.scalerTime}]
+hEL_HI :	{P.hEL_HI.scaler}	[{P.hEL_HI.scaler/P.1Mhz.scalerTime}]
+hEL_REAL :	{P.hEL_REAL.scaler}	[{P.hEL_REAL.scaler/P.1Mhz.scalerTime]
+hEL_CLEAN :	{P.hEL_CLEAN.scaler}	[{P.hEL_CLEAN.scaler/P.1Mhz.scalerTime}]
+hSTOF:	  	{P.hSTOF.scaler}	[{P.hSTOF.scaler/P.1Mhz.scalerTime}]
+
+hTRIG1:	  	{P.hTRIG1.scaler} 	[{P.hTRIG1.scaler/P.1Mhz.scalerTime}]
+hTRIG2:	  	{P.hTRIG2.scaler} 	[{P.hTRIG2.scaler/P.1Mhz.scalerTime}]
+hTRIG3:	  	{P.hTRIG3.scaler} 	[{P.hTRIG3.scaler/P.1Mhz.scalerTime}]
+hTRIG4:	  	{P.hTRIG4.scaler} 	[{P.hTRIG4.scaler/P.1Mhz.scalerTime}]
+hTRIG5:	  	{P.hTRIG5.scaler} 	[{P.hTRIG5.scaler/P.1Mhz.scalerTime}]
+hTRIG6:	  	{P.hTRIG6.scaler} 	[{P.hTRIG6.scaler/P.1Mhz.scalerTime}]
+
+SHMS TRIG
+pEL_LO :	{P.pEL_LO.scaler}	[{P.pEL_LO.scaler/P.1Mhz.scalerTime}]
+pEL_HI :	{P.pEL_HI.scaler}	[{P.pEL_HI.scaler/P.1Mhz.scalerTime}]
+pEL_REAL :	{P.pEL_REAL.scaler}	[{P.pEL_REAL.scaler/P.1Mhz.scalerTime}]
+pEL_CLEAN :	{P.pEL_CLEAN.scaler}	[{P.pEL_CLEAN.scaler/P.1Mhz.scalerTime}]
+pSTOF:	  	{P.pSTOF.scaler}	[{P.pSTOF.scaler/P.1Mhz.scalerTime}]
+pTREF3:		{P.pTREF3.scaler}	[{P.pTREF3.scaler/P.1Mhz.scalerTime}]
+
+pTRIG1:	  	{P.pTRIG1.scaler} 	[{P.pTRIG1.scaler/P.1Mhz.scalerTime}]
+pTRIG2:	  	{P.pTRIG2.scaler} 	[{P.pTRIG2.scaler/P.1Mhz.scalerTime}]
+pTRIG3:	  	{P.pTRIG3.scaler} 	[{P.pTRIG3.scaler/P.1Mhz.scalerTime}]
+pTRIG4:	  	{P.pTRIG4.scaler} 	[{P.pTRIG4.scaler/P.1Mhz.scalerTime}]
+pTRIG5:	  	{P.pTRIG5.scaler} 	[{P.pTRIG5.scaler/P.1Mhz.scalerTime}]
+pTRIG6:	  	{P.pTRIG6.scaler} 	[{P.pTRIG6.scaler/P.1Mhz.scalerTime}]
+
+*******
+* EDTM
+*******
+
+EDTM Triggers           : {P.EDTM.scaler}
+Estimated EDTM Triggers : {P.EDTM.scalerRate*(P.1Mhz.scaler/1000000.):%.0f}
+EDTM Trigger Rate       : {P.EDTM.scalerRate/1000.:%.3f} kHz
+Accepted EDTM Triggers  : {edtm_accepted.npassed}
+
+Total Live Time (EDTM) : {(edtm_accepted.npassed / P.EDTM.scaler)*100.0:%3.4f} %
+Total Dead Time (EDTM) : {100.0 - (edtm_accepted.npassed / P.EDTM.scaler)*100.0:%3.4f} %
+
+*******************
+* Physics 3/4 Triggers
+*******************
+
+Physics 3/4 Triggers           : {P.pTRIG1.scaler - P.EDTM.scaler}
+Estimated Physics 3/4 Triggers : {(P.pTRIG1.scalerRate - P.EDTM.scalerRate)*(P.1Mhz.scaler/1000000.):%.0f}
+Physics 3/4 Trigger Rate       : {(P.pTRIG1.scalerRate - P.EDTM.scalerRate)/1000.:%.3f} kHz
+Accepted Physics Triggers      : {physics_accepted.npassed}
+
+****************
+* Chamber *
+****************
+good_S1_time         Counts: {good_S1_time.npassed}     / shms_trigs.scaler : {good_S1_time.npassed / shms_trigs.npassed}       
+good_S2X_time        Counts: {good_S2X_time.npassed}    / shms_trigs.scaler : {good_S2X_time.npassed / shms_trigs.npassed}    
+good_S1_S2X_time     Counts: {good_S1_S2X_time.npassed} / shms_trigs.scaler : {good_S1_S2X_time.npassed / shms_trigs.npassed}
 
 Chamber 1 hits > 0                        Counts: {shms_ch1_gt0.npassed} / shms_trigs : {shms_ch1_gt0.npassed / shms_trigs.npassed}         
 Chamber 2 hits > 0                   	  Counts: {shms_ch2_gt0.npassed} / shms_trigs : { shms_ch2_gt0.npassed / shms_trigs.npassed}        
@@ -80,21 +117,21 @@ Ch 1 hits > 3 & Ch 2 hits > 3 & track     Counts: {shms_ch_gt4_track.npassed} /
 
 Add cut on good_S1_S2X_time 
 
-Chamber 1 hits > 0                        Counts: {shms_ch1_gt0_gtime.npassed} / shms_trigs : {shms_ch1_gt0_gtime.npassed / shms_trigs.npassed}         
-Chamber 2 hits > 0                   	  Counts: {shms_ch2_gt0_gtime.npassed} / shms_trigs : { shms_ch2_gt0_gtime.npassed / shms_trigs.npassed}        
-Chamber 2 hits > 0 & Ch 1 hits = 0    	  Counts: {shms_ch2_gt0_noch1_gtime.npassed} / shms_trigs : { shms_ch2_gt0_noch1_gtime.npassed / shms_trigs.npassed}  
-Chamber 1 hits > 0 & Ch 2 hits = 0    	  Counts: {shms_ch1_gt0_noch2_gtime.npassed} / shms_trigs : {shms_ch1_gt0_noch2_gtime.npassed / shms_trigs.npassed}  
-Chamber 1 hits = 0 & Ch 2 hits = 0    	  Counts: {shms_noch1_noch2_gtime.npassed} / shms_trigs : {shms_noch1_noch2_gtime.npassed / shms_trigs.npassed}  
-Chamber 1 > 0 & Ch 2 hits > 0             Counts: {shms_ch_gt0_gtime.npassed} / shms_trigs : { shms_ch_gt0_gtime.npassed / shms_trigs.npassed}        
-Ch 1 hits > 0 & Ch 2 hits > 0 & track     Counts: {shms_ch_gt0_track_gtime.npassed} / shms_trigs : { shms_ch_gt0_track_gtime.npassed / shms_trigs.npassed}
-Chamber 1 > 3 & Ch 2 hits > 3             Counts: {shms_ch_gt4_gtime.npassed} / shms_trigs : { shms_ch_gt4_gtime.npassed / shms_trigs.npassed}        
-Ch 1 hits > 3 & Ch 2 hits > 3 & track     Counts: {shms_ch_gt4_track_gtime.npassed} / shms_trigs : { shms_ch_gt4_track_gtime.npassed / shms_trigs.npassed}
+Chamber 1 hits > 0                        Counts: {shms_ch1_gt0_gtime.npassed} / shms_trigs.scaler : {shms_ch1_gt0_gtime.npassed / shms_trigs.npassed}         
+Chamber 2 hits > 0                   	  Counts: {shms_ch2_gt0_gtime.npassed} / shms_trigs.scaler : { shms_ch2_gt0_gtime.npassed / shms_trigs.npassed}        
+Chamber 2 hits > 0 & Ch 1 hits = 0    	  Counts: {shms_ch2_gt0_noch1_gtime.npassed} / shms_trigs.scaler : { shms_ch2_gt0_noch1_gtime.npassed / shms_trigs.npassed}  
+Chamber 1 hits > 0 & Ch 2 hits = 0    	  Counts: {shms_ch1_gt0_noch2_gtime.npassed} / shms_trigs.scaler : {shms_ch1_gt0_noch2_gtime.npassed / shms_trigs.npassed}  
+Chamber 1 hits = 0 & Ch 2 hits = 0    	  Counts: {shms_noch1_noch2_gtime.npassed} / shms_trigs.scaler : {shms_noch1_noch2_gtime.npassed / shms_trigs.npassed}  
+Chamber 1 > 0 & Ch 2 hits > 0             Counts: {shms_ch_gt0_gtime.npassed} / shms_trigs.scaler : { shms_ch_gt0_gtime.npassed / shms_trigs.npassed}        
+Ch 1 hits > 0 & Ch 2 hits > 0 & track     Counts: {shms_ch_gt0_track_gtime.npassed} / shms_trigs.scaler : { shms_ch_gt0_track_gtime.npassed / shms_trigs.npassed}
+Chamber 1 > 3 & Ch 2 hits > 3             Counts: {shms_ch_gt4_gtime.npassed} / shms_trigs.scaler : { shms_ch_gt4_gtime.npassed / shms_trigs.npassed}        
+Ch 1 hits > 3 & Ch 2 hits > 3 & track     Counts: {shms_ch_gt4_track_gtime.npassed} / shms_trigs.scaler : { shms_ch_gt4_track_gtime.npassed / shms_trigs.npassed}
 
-shmsDC1Planes_large     Counts: {shmsDC1Planes_large.npassed} / shms_trigs : {shmsDC1Planes_large.npassed / shms_trigs.npassed}
-shmsDC2Planes_large     Counts: {shmsDC2Planes_large.npassed} / shms_trigs : {shmsDC2Planes_large.npassed / shms_trigs.npassed}  
+shmsDC1Planes_large     Counts: {shmsDC1Planes_large.npassed} / shms_trigs.scaler : {shmsDC1Planes_large.npassed / shms_trigs.npassed}
+shmsDC2Planes_large     Counts: {shmsDC2Planes_large.npassed} / shms_trigs.scaler : {shmsDC2Planes_large.npassed / shms_trigs.npassed}  
 
-shmsDC1Planes6     Counts: {shmsDC1Planes6hits.npassed} / shms_trigs : {shmsDC1Planes6hits.npassed / shms_trigs.npassed}
-shmsDC2Planes6     Counts: {shmsDC2Planes6hits.npassed} / shms_trigs : {shmsDC2Planes6hits.npassed / shms_trigs.npassed}  
+shmsDC1Planes6     Counts: {shmsDC1Planes6hits.npassed} / shms_trigs.scaler : {shmsDC1Planes6hits.npassed / shms_trigs.npassed}
+shmsDC2Planes6     Counts: {shmsDC2Planes6hits.npassed} / shms_trigs.scaler : {shmsDC2Planes6hits.npassed / shms_trigs.npassed}  
 
 shmsDC1x1Planes5     Counts: {shmsDC1_5hits_x1.npassed} eff : {shmsDC1_6hits_x1.npassed / shmsDC1_5hits_x1.npassed}
 shmsDC1u1Planes5     Counts: {shmsDC1_5hits_u1.npassed} eff : {shmsDC1_6hits_u1.npassed / shmsDC1_5hits_u1.npassed}
@@ -111,19 +148,19 @@ shmsDC2v2Planes5     Counts: {shmsDC2_5hits_v2.npassed} eff : {shmsDC2_6hits_v2.
 shmsDC2x2Planes5     Counts: {shmsDC2_5hits_x2.npassed} eff : {shmsDC2_6hits_x2.npassed / shmsDC2_5hits_x2.npassed}
 
 I'm pretty sure that these are the "raw" number of counts. "Raw" means one or more hits per dc plane.
-shmsDC1_1hit_x1: {shmsDC1_1hit_x1.npassed} 		;eff:
-shmsDC1_1hit_u1: {shmsDC1_1hit_u1.npassed}		;eff:
-shmsDC1_1hit_u2: {shmsDC1_1hit_u2.npassed}		;eff:
-shmsDC1_1hit_v1: {shmsDC1_1hit_v1.npassed}		;eff:
-shmsDC1_1hit_v2: {shmsDC1_1hit_v2.npassed}		;eff:
-shmsDC1_1hit_x2: {shmsDC1_1hit_x2.npassed}		;eff:
-
-shmsDC2_1hit_x1: {shmsDC2_1hit_x1.npassed}		;eff:
-shmsDC2_1hit_u1: {shmsDC2_1hit_u1.npassed}		;eff:
-shmsDC2_1hit_u2: {shmsDC2_1hit_u2.npassed}		;eff:
-shmsDC2_1hit_v1: {shmsDC2_1hit_v1.npassed}		;eff:
-shmsDC2_1hit_v2: {shmsDC2_1hit_v2.npassed}		;eff:
-shmsDC2_1hit_x2: {shmsDC2_1hit_x2.npassed}		;eff:
+shmsDC1_1hit_x1: {shmsDC1_1hit_x1.npassed} 		
+shmsDC1_1hit_u1: {shmsDC1_1hit_u1.npassed}		
+shmsDC1_1hit_u2: {shmsDC1_1hit_u2.npassed}		
+shmsDC1_1hit_v1: {shmsDC1_1hit_v1.npassed}		
+shmsDC1_1hit_v2: {shmsDC1_1hit_v2.npassed}		
+shmsDC1_1hit_x2: {shmsDC1_1hit_x2.npassed}		
+
+shmsDC2_1hit_x1: {shmsDC2_1hit_x1.npassed}		
+shmsDC2_1hit_u1: {shmsDC2_1hit_u1.npassed}		
+shmsDC2_1hit_u2: {shmsDC2_1hit_u2.npassed}		
+shmsDC2_1hit_v1: {shmsDC2_1hit_v1.npassed}		
+shmsDC2_1hit_v2: {shmsDC2_1hit_v2.npassed}		
+shmsDC2_1hit_x2: {shmsDC2_1hit_x2.npassed}		
 
 "Good" means one or two hits per dc plane.
 goodHDC1x1:	     {goodHDC1x1.npassed}	eff : {goodHDC1x1.npassed/(shms_trigs.npassed+.0001):%5.3f}
@@ -159,7 +196,6 @@ realhdc2v2:	     {realhdc2v2.npassed}
 realhdc2x2:	     {realhdc2x2.npassed}
     	   	       
 **HODOSCOPE**
-
 "Any" means one or more hits per scint plane.
 anyhs1x : {anyhs1x.npassed}		 eff: {anyhs1x.npassed/(shms_trigs.npassed+.0001):%5.3f}	BAD = ??
 anyhs1y : {anyhs1y.npassed}		 eff: {anyhs1y.npassed/(shms_trigs.npassed+.0001):%5.3f}
@@ -175,6 +211,19 @@ goodps2y : {goodps2y.npassed}		 eff: {goodps2y.npassed/(shms_trigs.npassed+.0001
 goodps2  : {goodps2.npassed}		 eff: {goodps2.npassed/(shms_trigs.npassed+.0001):%5.3f}
 goodps1s2: {goodps1s2.npassed}		 eff: {goodps1s2.npassed/(shms_trigs.npassed+.0001):%5.3f}
 
+**TRACKING**
+pFoundTrack  :{pFoundTrack.npassed}	 eff: {pFoundTrack.npassed/(shms_trigs.npassed+.0001):%5.3f} BAD = ??
+pFound1Track :{pFound1Track.npassed}	 eff: {pFound1Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
+pFound2Track :{pFound2Track.npassed}	 eff: {pFound2Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
+pFound3Track :{pFound3Track.npassed}	 eff: {pFound3Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
+pFound4Track :{pFound4Track.npassed}	 eff: {pFound4Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
+
+pCleanTrack :{pCleanTrack.npassed}	 eff: {pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}	 BAD = ??
+1pCleanTrack:{1pCleanTrack.npassed}	 eff: {1pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f} 
+2pCleanTrack:{2pCleanTrack.npassed}	 eff: {2pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
+3pCleanTrack:{3pCleanTrack.npassed}	 eff: {3pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
+4pCleanTrack:{4pCleanTrack.npassed}	 eff: {4pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
+
 **CHERENKOVS AND CAL**
 cer_ng_elec   :	  {cer_ng_elec.npassed}
 cer_ng_pi     :	  {cer_ng_pi.npassed}
@@ -192,169 +241,6 @@ p1hit1_cer_elec	     : {p1hit1_cer_elec.npassed}
 pCleanTrack_cal_elec : {pCleanTrack_cal_elec.npassed} 
 p1hit1_cal_elec	     : {p1hit1_cal_elec.npassed}
 
-*NGC EFF*
-Mirror 1 Efficiency 
-Mirror 2 Efficiency
-Mirror 3 Efficiency
-Mirror 4 Efficiency
-Overall Efficiency
-
-*HGC EFF*
-Mirror 1 Efficiency 
-Mirror 2 Efficiency
-Mirror 3 Efficiency
-Mirror 4 Efficiency
-Overall Efficiency
-
-*CAL EFF*
-Block		eff		Hits
-
-*HODO EFF*
-Scint		Pos eff		Neg eff		OR eff		AND eff		 Hits
------------------------------------------------------------------------------------------------------------
-P1X1+
-P1X2+
-P1X3+
-P1X4+
-P1X5+
-P1X6+
-P1X7+
-P1X8+
-P1X9+
-P1X10+
-P1X11+
-P1X12+
-P1X13+
-
-P1X1-
-P1X2-
-P1X3-
-P1X4-
-P1X5-
-P1X6-
-P1X7-
-P1X8-
-P1X9-
-P1X10-
-P1X11-
-P1X12-
-P1X13-
-
-P1Y1+
-P1Y2+
-P1Y3+
-P1Y4+
-P1Y5+
-P1Y6+
-P1Y7+
-P1Y8+
-P1Y9+
-P1Y10+
-P1Y11+
-P1Y12+
-P1Y13+
-
-P1Y1-
-P1Y2-
-P1Y3-
-P1Y4-
-P1Y5-
-P1Y6-
-P1Y7-
-P1Y8-
-P1Y9-
-P1Y10-
-P1Y11-
-P1Y12-
-P1Y13-
-
-P2X1+
-P2X2+
-P2X3+
-P2X4+
-P2X5+
-P2X6+
-P2X7+
-P2X8+
-P2X9+
-P2X10+
-P2X11+
-P2X12+
-P2X13+
-P2X14+
-
-P2X1-
-P2X2-
-P2X3-
-P2X4-
-P2X5-
-P2X6-
-P2X7-
-P2X8-
-P2X9-
-P2X10-
-P2X11-
-P2X12-
-P2X13-
-P2X14-
-
-P2Y1+
-P2Y2+
-P2Y3+
-P2Y4+
-P2Y5+
-P2Y6+
-P2Y7+
-P2Y8+
-P2Y9+
-P2Y10+
-P2Y11+
-P2Y12+
-P2Y13+
-P2Y14+
-P2Y15+
-P2Y16+
-P2Y17+
-P2Y18+
-P2Y19+
-P2Y20+
-P2Y21+
-
-P2Y1-
-P2Y2-
-P2Y3-
-P2Y4-
-P2Y5-
-P2Y6-
-P2Y7-
-P2Y8-
-P2Y9-
-P2Y10-
-P2Y11-
-P2Y12-
-P2Y13-
-P2Y14-
-P2Y15-
-P2Y16-
-P2Y17-
-P2Y18-
-P2Y19-
-P2Y20-
-P2Y21-
-
-**TRACKING**
-pFoundTrack  :{pFoundTrack.npassed}	 eff: {pFoundTrack.npassed/(shms_trigs.npassed+.0001):%5.3f} BAD = ??
-pFound1Track :{pFound1Track.npassed}	 eff: {pFound1Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-pFound2Track :{pFound2Track.npassed}	 eff: {pFound2Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-pFound3Track :{pFound3Track.npassed}	 eff: {pFound3Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-pFound4Track :{pFound4Track.npassed}	 eff: {pFound4Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-
-pCleanTrack :{pCleanTrack.npassed}	 eff: {pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}	 BAD = ??
-1pCleanTrack:{1pCleanTrack.npassed}	 eff: {1pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-2pCleanTrack:{2pCleanTrack.npassed}	 eff: {2pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
-3pCleanTrack:{3pCleanTrack.npassed}	 eff: {3pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
-4pCleanTrack:{4pCleanTrack.npassed}	 eff: {4pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
-
 ******************************
 * SHMS TRACKING EFFICIENCIES *
 ******************************
@@ -380,8 +266,313 @@ pdide                          : {shmsScinDide.npassed}
 pdidh                          : {shmsScinDidh.npassed}
 pscinshould                    : {shmsScinShould.npassed}
 pscinshoulde                   : {shmsScinShoulde.npassed}
-pscinshouldh                   : {shmsScinShouldh.npassed}
+pscinshouh                     : {shmsScinShouldh.npassed}
 SING FID TRACK EFFIC           : {shmsScinDid.npassed / (shmsScinShould.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShould.npassed-shmsScinDid.npassed) / (shmsScinShould.npassed+.0001)):%8.4f}
 E SING FID TRACK EFFIC         : {shmsScinDide.npassed / (shmsScinShoulde.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShoulde.npassed-shmsScinDide.npassed) / (shmsScinShoulde.npassed+.0001)):%8.4f}
 HADRON SING FID TRACK EFFIC    : {shmsScinDidh.npassed / (shmsScinShouldh.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShouldh.npassed-shmsScinDidh.npassed) / (shmsScinShouldh.npassed+.0001)):%8.4f}
 
+************
+* HGC Cerenkov *
+************
+Good Track Requirements:
+   1. Only one track found in the focal plane
+   2. chisq/dof < {phgcer_red_chi2_max:%5.1f}
+   3. {phgcer_beta_min:%5.3f} < beta < {phgcer_beta_max:%5.3f}
+   4. {phgcer_enorm_min:%5.3f} < calorimeter energy < {phgcer_enorm_max:%5.3f}
+Threshold set at {phgcer_npe_thresh:%4.1f}
+*HGC EFF* 4PMTs
+SHMS HGC Region 1 efficiency: {SHMS_hgcer_track_fired_region_1.npassed/SHMS_hgcer_track_matched_region_1.npassed} = {SHMS_hgcer_track_fired_region_1.npassed} of {SHMS_hgcer_track_matched_region_1.npassed} good tracks.
+SHMS HGC Region 2 efficiency: {SHMS_hgcer_track_fired_region_2.npassed/SHMS_hgcer_track_matched_region_2.npassed} = {SHMS_hgcer_track_fired_region_2.npassed} of {SHMS_hgcer_track_matched_region_2.npassed} good tracks.
+SHMS HGC Region 3 efficiency: {SHMS_hgcer_track_fired_region_3.npassed/SHMS_hgcer_track_matched_region_3.npassed} = {SHMS_hgcer_track_fired_region_3.npassed} of {SHMS_hgcer_track_matched_region_3.npassed} good tracks.
+SHMS HGC Region 4 efficiency: {SHMS_hgcer_track_fired_region_4.npassed/SHMS_hgcer_track_matched_region_4.npassed} = {SHMS_hgcer_track_fired_region_4.npassed} of {SHMS_hgcer_track_matched_region_4.npassed} good tracks.
+Overall HGC Efficiency: {SHMS_hgcer_track_fired_tot.npassed/SHMS_hgcer_track_matched_tot.npassed} = {SHMS_hgcer_track_fired_tot.npassed} of {SHMS_hgcer_track_matched_tot.npassed} good tracks.
+
+************
+* NGC Cerenkov *
+************
+Good Track Requirements:
+   1. Only one track found in the focal plane
+   2. chisq/dof < {pngcer_red_chi2_max:%5.1f}
+   3. {pngcer_beta_min:%5.3f} < beta < {pngcer_beta_max:%5.3f}
+   4. {pngcer_enorm_min:%5.3f} < calorimeter energy < {pngcer_enorm_max:%5.3f}
+Threshold set at {pngcer_npe_thresh:%4.1f}
+*NGC EFF* 4PMTs
+SHMS NGC Region 1 efficiency: {SHMS_ngcer_track_fired_region_1.npassed/SHMS_ngcer_track_matched_region_1.npassed} = {SHMS_ngcer_track_fired_region_1.npassed} of {SHMS_ngcer_track_matched_region_1.npassed} good tracks.
+SHMS NGC Region 2 efficiency: {SHMS_ngcer_track_fired_region_2.npassed/SHMS_ngcer_track_matched_region_2.npassed} = {SHMS_ngcer_track_fired_region_2.npassed} of {SHMS_ngcer_track_matched_region_2.npassed} good tracks.
+SHMS NGC Region 3 efficiency: {SHMS_ngcer_track_fired_region_3.npassed/SHMS_ngcer_track_matched_region_3.npassed} = {SHMS_ngcer_track_fired_region_3.npassed} of {SHMS_ngcer_track_matched_region_3.npassed} good tracks.
+SHMS NGC Region 4 efficiency: {SHMS_ngcer_track_fired_region_4.npassed/SHMS_ngcer_track_matched_region_4.npassed} = {SHMS_ngcer_track_fired_region_4.npassed} of {SHMS_ngcer_track_matched_region_4.npassed} good tracks.
+Overall NGC Efficiency: {SHMS_ngcer_track_fired_tot.npassed/SHMS_ngcer_track_matched_tot.npassed} = {SHMS_ngcer_track_fired_tot.npassed} of {SHMS_ngcer_track_matched_tot.npassed} good tracks.
+
+************
+* Aerogel Cerenkov * 
+************
+Good Track Requirements:
+   1. Only one track found in the focal plane 
+   2. chisq/dof < {paero_red_chi2_max:%5.1f}
+   3. {paero_beta_min:%5.3f} < beta < {paero_beta_max:%5.3f}
+   4. {paero_enorm_min:%5.3f} < calorimeter energy < {paero_enorm_max:%5.3f}
+   5. {paero_dp_min:%5.3f} < delta p (dp) < {paero_dp_max:%5.3f} //added because paero_cuts.param has this as a cut 
+Threshold set at {paero_npe_thresh:%4.1f}
+*AEROGEL EFF* 7 PMT pairs
+SHMS AERO Region 1 efficiency: {SHMS_aero_track_fired_region_1.npassed/SHMS_aero_track_matched_region_1.npassed} = {SHMS_aero_track_fired_region_1.npassed} of {SHMS_aero_track_matched_region_1.npassed} good tracks.
+SHMS AERO Region 2 efficiency: {SHMS_aero_track_fired_region_2.npassed/SHMS_aero_track_matched_region_2.npassed} = {SHMS_aero_track_fired_region_2.npassed} of {SHMS_aero_track_matched_region_2.npassed} good tracks.
+SHMS AERO Region 3 efficiency: {SHMS_aero_track_fired_region_3.npassed/SHMS_aero_track_matched_region_3.npassed} = {SHMS_aero_track_fired_region_3.npassed} of {SHMS_aero_track_matched_region_3.npassed} good tracks.
+SHMS AERO Region 4 efficiency: {SHMS_aero_track_fired_region_4.npassed/SHMS_aero_track_matched_region_4.npassed} = {SHMS_aero_track_fired_region_4.npassed} of {SHMS_aero_track_matched_region_4.npassed} good tracks.
+SHMS AERO Region 5 efficiency: {SHMS_aero_track_fired_region_5.npassed/SHMS_aero_track_matched_region_5.npassed} = {SHMS_aero_track_fired_region_5.npassed} of {SHMS_aero_track_matched_region_5.npassed} good tracks.
+SHMS AERO Region 6 efficiency: {SHMS_aero_track_fired_region_6.npassed/SHMS_aero_track_matched_region_6.npassed} = {SHMS_aero_track_fired_region_6.npassed} of {SHMS_aero_track_matched_region_6.npassed} good tracks.
+SHMS AERO Region 7 efficiency: {SHMS_aero_track_fired_region_7.npassed/SHMS_aero_track_matched_region_7.npassed} = {SHMS_aero_track_fired_region_7.npassed} of {SHMS_aero_track_matched_region_7.npassed} good tracks.
+Overall AERO Efficiency: {SHMS_aero_track_fired_tot.npassed/SHMS_aero_track_matched_tot.npassed} = {SHMS_aero_track_matched_tot.npassed} of {SHMS_aero_track_matched_tot.npassed} good tracks.
+
+****************************
+* Calorimeter Efficiencies *
+****************************
+Efficiencies for calorimeter is the fraction of times block was hit when track
+with chisquared/dof < {pstat_cal_maxchisq:%5.1f} came within {pstat_cal_slop:%4.1f} cm of the center.
+and scal_npe_sum  > 3.0 (hardwired). (is this still true?)
+
+Events examined = strig       = {shms_trigs.scaler.npassed}
+Tracks found    = scleantrack = {pCleanTrack.npassed}
+//Tracks passing chisquared cut = (pstat_cal_numevents:%7d) (in previous template, do we need this here?)
+
+shmsPreShower	     Counts: {P.cal.stat_trksum1} eff : {P.cal.stat_hitsum1 / P.cal.stat_trksum1}
+shmsShowerArray	     Counts: {P.cal.stat_trksum_array} eff : {P.cal.stat_hitsum_array / P.cal.stat_trksum_array}
+
+**************************
+* Hodoscope Efficiencies * 
+**************************
+Efficiencies for hodoscopes is the fraction of times scin. was hit when track
+with chisquared/dof < {pstat_maxchisq:%5.1f} came within {pstat_slop:%4.1f} cm of the center.
+
+Events examined = strig       = {shms_trigs.npassed}
+Tracks found    = scleantrack = {pCleanTrack.npassed}
+//Tracks passing chisquared cut = (pstat_numevents) (in previous template, do we still need this?)
+
+Plane 1: {phodo_plane_AND_eff[0]}
+Plane 2: {phodo_plane_AND_eff[1]}
+Plane 3: {phodo_plane_AND_eff[2]}
+Plane 4: {phodo_plane_AND_eff[3]}
+
+S1XY : {phodo_s1XY_eff}
+S2XY : {phodo_s2XY_eff}
+
+STOF: {phodo_stof_eff}
+
+3_of_4 EFF : {phodo_3_of_4_eff}
+4_of_4 EFF : {phodo_4_of_4_eff}
+
+Scint		Pos eff		Neg eff		OR eff		AND eff		 Hits
+-----------------------------------------------------------------------------------------------------------
+P1X1		{phodo_pos_eff[0]}		{phodo_neg_eff[0]}		 {phodo_or_eff[0]}		 {phodo_and_eff[0]}             {phodo_gold_hits[0]}
+P1X2		{phodo_pos_eff[4]}		{phodo_neg_eff[4]}	 	 {phodo_or_eff[4]}	 	 {phodo_and_eff[4]}	       {phodo_gold_hits[4]}
+P1X3	 	{phodo_pos_eff[8]}		{phodo_neg_eff[8]}		 {phodo_or_eff[8]}	 	 {phodo_and_eff[8]}  	       {phodo_gold_hits[8]}
+P1X4 	 	{phodo_pos_eff[12]}		{phodo_neg_eff[12]} 	 	 {phodo_or_eff[12]} 	 	 {phodo_and_eff[12]}	       {phodo_gold_hits[12]}
+P1X5	 	{phodo_pos_eff[16]}		{phodo_neg_eff[16]} 	 	 {phodo_or_eff[16]} 	 	 {phodo_and_eff[16]} 	       {phodo_gold_hits[16]}
+P1X6	 	{phodo_pos_eff[20]}		{phodo_neg_eff[20]} 	 	 {phodo_or_eff[20]} 	 	 {phodo_and_eff[20]} 	       {phodo_gold_hits[20]}
+P1X7 	 	{phodo_pos_eff[24]}  		{phodo_neg_eff[24]} 	 	 {phodo_or_eff[24]} 	 	 {phodo_and_eff[24]} 	       {phodo_gold_hits[24]}
+P1X8 	 	{phodo_pos_eff[28]} 		{phodo_neg_eff[28]} 	 	 {phodo_or_eff[28]} 	 	 {phodo_and_eff[28]} 	       {phodo_gold_hits[28]}
+P1X9 	 	{phodo_pos_eff[32]}		{phodo_neg_eff[32]} 	 	 {phodo_or_eff[32]} 	 	 {phodo_and_eff[32]} 	       {phodo_gold_hits[32]}
+P1X10 	 	{phodo_pos_eff[36]} 		{phodo_neg_eff[36]} 	 	 {phodo_or_eff[36]} 	 	 {phodo_and_eff[36]}	       {phodo_gold_hits[36]}
+P1X11	 	{phodo_pos_eff[40]} 		{phodo_neg_eff[40]} 	 	 {phodo_or_eff[40]} 	 	 {phodo_and_eff[40]} 	       {phodo_gold_hits[40]}
+P1X12	 	{phodo_pos_eff[44]} 		{phodo_neg_eff[44]} 	 	 {phodo_or_eff[44]} 	 	 {phodo_and_eff[44]} 	       {phodo_gold_hits[44]}
+P1X13 	 	{phodo_pos_eff[48]} 		{phodo_neg_eff[48]} 	 	 {phodo_or_eff[48]} 	 	 {phodo_and_eff[48]} 	       {phodo_gold_hits[48]}
+
+P1Y1 	 	{phodo_pos_eff[1]}		{phodo_neg_eff[1]} 	 	 {phodo_or_eff[1]}	 	 {phodo_and_eff[1]}	       {phodo_gold_hits[1]}
+P1Y2 	 	{phodo_pos_eff[5]} 		{phodo_neg_eff[5]} 	 	 {phodo_or_eff[5]} 	 	 {phodo_and_eff[5]} 	       {phodo_gold_hits[5]}
+P1Y3		{phodo_pos_eff[9]} 		{phodo_neg_eff[9]} 	 	 {phodo_or_eff[9]} 	 	 {phodo_and_eff[9]} 	       {phodo_gold_hits[9]}
+P1Y4   	 	{phodo_pos_eff[13]} 		{phodo_neg_eff[13]} 	 	 {phodo_or_eff[13]} 	 	 {phodo_and_eff[13]} 	       {phodo_gold_hits[13]}
+P1Y5 	 	{phodo_pos_eff[17]} 		{phodo_neg_eff[17]} 	 	 {phodo_or_eff[17]} 	 	 {phodo_and_eff[17]} 	       {phodo_gold_hits[17]}
+P1Y6 	 	{phodo_pos_eff[21]} 		{phodo_neg_eff[21]} 	 	 {phodo_or_eff[21]} 	 	 {phodo_and_eff[21]} 	       {phodo_gold_hits[21]}
+P1Y7 	 	{phodo_pos_eff[25]} 		{phodo_neg_eff[25]} 	 	 {phodo_or_eff[25]} 	 	 {phodo_and_eff[25]} 	       {phodo_gold_hits[25]}
+P1Y8 	 	{phodo_pos_eff[29]} 		{phodo_neg_eff[29]} 	 	 {phodo_or_eff[29]} 	 	 {phodo_and_eff[29]} 	       {phodo_gold_hits[29]}
+P1Y9 	 	{phodo_pos_eff[33]} 		{phodo_neg_eff[33]} 	 	 {phodo_or_eff[33]} 	 	 {phodo_and_eff[33]} 	       {phodo_gold_hits[33]}
+P1Y10 	 	{phodo_pos_eff[37]} 		{phodo_neg_eff[37]} 	 	 {phodo_or_eff[37]} 	 	 {phodo_and_eff[37]} 	       {phodo_gold_hits[37]}
+P1Y11 	 	{phodo_pos_eff[41]} 		{phodo_neg_eff[41]} 	 	 {phodo_or_eff[41]} 	 	 {phodo_and_eff[41]} 	       {phodo_gold_hits[41]}
+P1Y12 	 	{phodo_pos_eff[45]} 		{phodo_neg_eff[45]} 	 	 {phodo_or_eff[45]} 	 	 {phodo_and_eff[45]} 	       {phodo_gold_hits[45]}
+P1Y13 	 	{phodo_pos_eff[49]} 		{phodo_neg_eff[49]} 	 	 {phodo_or_eff[49]} 	 	 {phodo_and_eff[49]} 	       {phodo_gold_hits[49]}
+
+P2X1	 	{phodo_pos_eff[2]}	 	{phodo_neg_eff[2]}	 	 {phodo_or_eff[2]} 	 	 {phodo_and_eff[2]} 	       {phodo_gold_hits[2]}
+P2X2 	 	{phodo_pos_eff[6]}	 	{phodo_neg_eff[6]}	 	 {phodo_or_eff[6]}	 	 {phodo_and_eff[6]}	       {phodo_gold_hits[6]}
+P2X3 	 	{phodo_pos_eff[10]} 	 	{phodo_neg_eff[10]} 	 	 {phodo_or_eff[10]}	 	 {phodo_and_eff[10]} 	       {phodo_gold_hits[10]}
+P2X4 	 	{phodo_pos_eff[14]} 	 	{phodo_neg_eff[14]}	 	 {phodo_or_eff[14]} 	 	 {phodo_and_eff[14]} 	       {phodo_gold_hits[14]}
+P2X5 	 	{phodo_pos_eff[18]} 	 	{phodo_neg_eff[18]} 	 	 {phodo_or_eff[18]} 	 	 {phodo_and_eff[18]}	       {phodo_gold_hits[18]}
+P2X6 	 	{phodo_pos_eff[22]}	 	{phodo_neg_eff[22]}	 	 {phodo_or_eff[22]} 	 	 {phodo_and_eff[22]} 	       {phodo_gold_hits[22]}
+P2X7 	 	{phodo_pos_eff[26]} 	 	{phodo_neg_eff[26]}	 	 {phodo_or_eff[26]}	 	 {phodo_and_eff[26]}	       {phodo_gold_hits[26]}
+P2X8 	 	{phodo_pos_eff[30]} 	 	{phodo_neg_eff[30]}		 {phodo_or_eff[30]}      	 {phodo_and_eff[30]}	       {phodo_gold_hits[30]}
+P2X9 	 	{phodo_pos_eff[34]} 	 	{phodo_neg_eff[34]}		 {phodo_or_eff[34]}		 {phodo_and_eff[34]}	       {phodo_gold_hits[34]}
+P2X10	 	{phodo_pos_eff[38]}	 	{phodo_neg_eff[38]}		 {phodo_or_eff[38]}		 {phodo_and_eff[38]}	       {phodo_gold_hits[38]}
+P2X11 	 	{phodo_pos_eff[42]} 	 	{phodo_neg_eff[42]}		 {phodo_or_eff[42]}		 {phodo_and_eff[42]}	       {phodo_gold_hits[42]}
+P2X12 	 	{phodo_pos_eff[46]} 	 	{phodo_neg_eff[46]}		 {phodo_or_eff[46]}		 {phodo_and_eff[46]}	       {phodo_gold_hits[46]}
+P2X13 	 	{phodo_pos_eff[50]} 	 	{phodo_neg_eff[50]}		 {phodo_or_eff[50]}		 {phodo_and_eff[50]}	       {phodo_gold_hits[50]}
+P2X14 	 	{phodo_pos_eff[54]} 	 	{phodo_neg_eff[54]}		 {phodo_or_eff[54]}		 {phodo_and_eff[54]}	       {phodo_gold_hits[54]}
+
+P2Y1	 	{phodo_pos_eff[3]}	 	{phodo_neg_eff[3]}		 {phodo_or_eff[3]}       	 {phodo_and_eff[3]}	       {phodo_gold_hits[3]}
+P2Y2 	 	{phodo_pos_eff[7]}	 	{phodo_neg_eff[7]} 	 	 {phodo_or_eff[7]} 	 	 {phodo_and_eff[7]}    	       {phodo_gold_hits[7]}
+P2Y3 	 	{phodo_pos_eff[11]} 	 	{phodo_neg_eff[11]}	 	 {phodo_or_eff[11]} 	 	 {phodo_and_eff[11]}	       {phodo_gold_hits[11]}
+P2Y4 	 	{phodo_pos_eff[15]} 	 	{phodo_neg_eff[15]} 	 	 {phodo_or_eff[15]} 	 	 {phodo_and_eff[15]}	       {phodo_gold_hits[15]}
+P2Y5 	 	{phodo_pos_eff[19]} 	 	{phodo_neg_eff[19]}	 	 {phodo_or_eff[19]} 	 	 {phodo_and_eff[19]}	       {phodo_gold_hits[19]}
+P2Y6 	 	{phodo_pos_eff[23]} 	 	{phodo_neg_eff[23]} 	 	 {phodo_or_eff[23]} 	 	 {phodo_and_eff[23]}	       {phodo_gold_hits[23]}
+P2Y7 	 	{phodo_pos_eff[27]} 	 	{phodo_neg_eff[27]} 	 	 {phodo_or_eff[27]} 	 	 {phodo_and_eff[27]}	       {phodo_gold_hits[27]}
+P2Y8 	 	{phodo_pos_eff[31]} 	 	{phodo_neg_eff[31]} 	 	 {phodo_or_eff[31]} 	 	 {phodo_and_eff[31]}	       {phodo_gold_hits[31]}
+P2Y9 	 	{phodo_pos_eff[35]} 	 	{phodo_neg_eff[35]} 	 	 {phodo_or_eff[35]} 	 	 {phodo_and_eff[35]}	       {phodo_gold_hits[35]}
+P2Y10 	 	{phodo_pos_eff[39]} 	 	{phodo_neg_eff[39]} 	 	 {phodo_or_eff[39]} 	 	 {phodo_and_eff[39]}	       {phodo_gold_hits[39]}
+P2Y11 	 	{phodo_pos_eff[43]} 	 	{phodo_neg_eff[43]} 	 	 {phodo_or_eff[43]} 	 	 {phodo_and_eff[43]}	       {phodo_gold_hits[43]}
+P2Y12 	 	{phodo_pos_eff[47]} 	 	{phodo_neg_eff[47]} 	 	 {phodo_or_eff[47]} 	 	 {phodo_and_eff[47]}	       {phodo_gold_hits[47]}
+P2Y13 	 	{phodo_pos_eff[51]} 	 	{phodo_neg_eff[51]} 	 	 {phodo_or_eff[51]} 	 	 {phodo_and_eff[51]}	       {phodo_gold_hits[51]}
+P2Y14 	 	{phodo_pos_eff[55]} 	 	{phodo_neg_eff[55]} 	 	 {phodo_or_eff[55]} 	 	 {phodo_and_eff[55]}	       {phodo_gold_hits[55]}
+P2Y15 	 	{phodo_pos_eff[59]} 	 	{phodo_neg_eff[59]} 	 	 {phodo_or_eff[59]} 	 	 {phodo_and_eff[59]}	       {phodo_gold_hits[59]}
+P2Y16 	 	{phodo_pos_eff[63]} 	 	{phodo_neg_eff[63]} 	 	 {phodo_or_eff[63]}	 	 {phodo_and_eff[63]}	       {phodo_gold_hits[63]}
+P2Y17 	 	{phodo_pos_eff[67]} 	 	{phodo_neg_eff[67]} 	 	 {phodo_or_eff[67]} 	 	 {phodo_and_eff[67]}	       {phodo_gold_hits[67]}
+P2Y18 	 	{phodo_pos_eff[71]} 	 	{phodo_neg_eff[71]} 	 	 {phodo_or_eff[71]} 	 	 {phodo_and_eff[71]}	       {phodo_gold_hits[71]}
+P2Y19 	 	{phodo_pos_eff[75]} 	 	{phodo_neg_eff[75]} 	 	 {phodo_or_eff[75]} 	 	 {phodo_and_eff[75]}	       {phodo_gold_hits[75]}
+P2Y20 	 	{phodo_pos_eff[79]} 	 	{phodo_neg_eff[79]} 	 	 {phodo_or_eff[79]} 	 	 {phodo_and_eff[79]}	       {phodo_gold_hits[79]}
+P2Y21 	 	{phodo_pos_eff[83]} 	 	{phodo_neg_eff[83]}	 	 {phodo_or_eff[83]} 	 	 {phodo_and_eff[83]}	       {phodo_gold_hits[83]}
+
+*******************
+* Hardware Scalers
+*******************
+
+*HODOSCOPES*
+Scint	Counts		Rate
+P1X1+:  {P.hod.1x1.posScaler} [ {(P.hod.1x1.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X2+:  {P.hod.1x2.posScaler} [ {(P.hod.1x2.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X3+:  {P.hod.1x3.posScaler} [ {(P.hod.1x3.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X4+:  {P.hod.1x4.posScaler} [ {(P.hod.1x4.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X5+:  {P.hod.1x5.posScaler} [ {(P.hod.1x5.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X6+:  {P.hod.1x6.posScaler} [ {(P.hod.1x6.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X7+:  {P.hod.1x7.posScaler} [ {(P.hod.1x7.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X8+:  {P.hod.1x8.posScaler} [ {(P.hod.1x8.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X9+:  {P.hod.1x9.posScaler} [ {(P.hod.1x9.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X10+: {P.hod.1x10.posScaler} [ {(P.hod.1x10.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X11+: {P.hod.1x11.posScaler} [ {(P.hod.1x11.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] 
+P1X12+: {P.hod.1x12.posScaler} [ {(P.hod.1x12.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X13+: {P.hod.1x13.posScaler} [ {(P.hod.1x13.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P1X1-:  {P.hod.1x1.negScaler} [ {(P.hod.1x1.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X2-:  {P.hod.1x2.negScaler} [ {(P.hod.1x2.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X3-:  {P.hod.1x3.negScaler} [ {(P.hod.1x3.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X4-:  {P.hod.1x4.negScaler} [ {(P.hod.1x4.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X5-:  {P.hod.1x5.negScaler} [ {(P.hod.1x5.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X6-:  {P.hod.1x6.negScaler} [ {(P.hod.1x6.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X7-:  {P.hod.1x7.negScaler} [ {(P.hod.1x7.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X8-:  {P.hod.1x8.negScaler} [ {(P.hod.1x8.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X9-:  {P.hod.1x9.negScaler} [ {(P.hod.1x9.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X10-: {P.hod.1x10.negScaler} [ {(P.hod.1x10.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X11-: {P.hod.1x11.negScaler} [ {(P.hod.1x11.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X12-: {P.hod.1x12.negScaler} [ {(P.hod.1x12.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X13-: {P.hod.1x13.negScaler} [ {(P.hod.1x13.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+ 
+P1Y1+:  {P.hod.1y1.posScaler} [ {(P.hod.1y1.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y2+:  {P.hod.1y2.posScaler} [ {(P.hod.1y2.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y3+:  {P.hod.1y3.posScaler} [ {(P.hod.1y3.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y4+:  {P.hod.1y4.posScaler} [ {(P.hod.1y4.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y5+:  {P.hod.1y5.posScaler} [ {(P.hod.1y5.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y6+:  {P.hod.1y6.posScaler} [ {(P.hod.1y6.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y7+:  {P.hod.1y7.posScaler} [ {(P.hod.1y7.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y8+:  {P.hod.1y8.posScaler} [ {(P.hod.1y8.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y9+:  {P.hod.1y9.posScaler} [ {(P.hod.1y9.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y10+: {P.hod.1y10.posScaler} [ {(P.hod.1y10.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y11+: {P.hod.1y11.posScaler} [ {(P.hod.1y11.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y12+: {P.hod.1y12.posScaler} [ {(P.hod.1y12.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y13+: {P.hod.1y13.posScaler} [ {(P.hod.1y13.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P1Y1-:  {P.hod.1y1.negScaler} [ {(P.hod.1y1.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y2-:  {P.hod.1y2.negScaler} [ {(P.hod.1y2.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y3-:  {P.hod.1y3.negScaler} [ {(P.hod.1y3.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y4-:  {P.hod.1y4.negScaler} [ {(P.hod.1y4.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y5-:  {P.hod.1y5.negScaler} [ {(P.hod.1y5.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y6-:  {P.hod.1y6.negScaler} [ {(P.hod.1y6.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y7-:  {P.hod.1y7.negScaler} [ {(P.hod.1y7.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y8-:  {P.hod.1y8.negScaler} [ {(P.hod.1y8.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y9-:  {P.hod.1y9.negScaler} [ {(P.hod.1y9.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y10-: {P.hod.1y10.negScaler} [ {(P.hod.1y10.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y11-: {P.hod.1y11.negScaler} [ {(P.hod.1y11.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y12-: {P.hod.1y12.negScaler} [ {(P.hod.1y12.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y13-: {P.hod.1y13.negScaler} [ {(P.hod.1y13.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P2X1+:  {P.hod.2x1.posScaler} [ {(P.hod.2x1.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X2+:  {P.hod.2x2.posScaler} [ {(P.hod.2x2.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X3+:  {P.hod.2x3.posScaler} [ {(P.hod.2x3.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X4+:  {P.hod.2x4.posScaler} [ {(P.hod.2x4.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X5+:  {P.hod.2x5.posScaler} [ {(P.hod.2x5.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X6+:  {P.hod.2x6.posScaler} [ {(P.hod.2x6.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X7+:  {P.hod.2x7.posScaler} [ {(P.hod.2x7.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X8+:  {P.hod.2x8.posScaler} [ {(P.hod.2x8.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X9+:  {P.hod.2x9.posScaler} [ {(P.hod.2x9.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X10+: {P.hod.2x10.posScaler} [ {(P.hod.2x10.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X11+: {P.hod.2x11.posScaler} [ {(P.hod.2x11.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X12+: {P.hod.2x12.posScaler} [ {(P.hod.2x12.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X13+: {P.hod.2x13.posScaler} [ {(P.hod.2x13.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X14+: {P.hod.2x14.posScaler} [ {(P.hod.2x14.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P2X1-:  {P.hod.2x1.negScaler} [ {(P.hod.2x1.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X2-:  {P.hod.2x2.negScaler} [ {(P.hod.2x2.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X3-:  {P.hod.2x3.negScaler} [ {(P.hod.2x3.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X4-:  {P.hod.2x4.negScaler} [ {(P.hod.2x4.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X5-:  {P.hod.2x5.negScaler} [ {(P.hod.2x5.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X6-:  {P.hod.2x6.negScaler} [ {(P.hod.2x6.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X7-:  {P.hod.2x7.negScaler} [ {(P.hod.2x7.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X8-:  {P.hod.2x8.negScaler} [ {(P.hod.2x8.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X9-:  {P.hod.2x9.negScaler} [ {(P.hod.2x9.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X10-: {P.hod.2x10.negScaler} [ {(P.hod.2x10.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X11-: {P.hod.2x11.negScaler} [ {(P.hod.2x11.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X12-: {P.hod.2x12.negScaler} [ {(P.hod.2x12.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X13-: {P.hod.2x13.negScaler} [ {(P.hod.2x13.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X14-: {P.hod.2x14.negScaler} [ {(P.hod.2x14.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P2Y1+:  {P.hod.2y1.posScaler} [ {(P.hod.2y1.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y2+:  {P.hod.2y2.posScaler} [ {(P.hod.2y2.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y3+:  {P.hod.2y3.posScaler} [ {(P.hod.2y3.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] 
+P2Y4+:  {P.hod.2y4.posScaler} [ {(P.hod.2y4.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y5+:  {P.hod.2y5.posScaler} [ {(P.hod.2y5.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y6+:  {P.hod.2y6.posScaler} [ {(P.hod.2y6.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y7+:  {P.hod.2y7.posScaler} [ {(P.hod.2y7.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y8+:  {P.hod.2y8.posScaler} [ {(P.hod.2y8.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y9+:  {P.hod.2y9.posScaler} [ {(P.hod.2y9.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y10+: {P.hod.2y10.posScaler} [ {(P.hod.2y10.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y11+: {P.hod.2y11.posScaler} [ {(P.hod.2y11.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y12+: {P.hod.2y12.posScaler} [ {(P.hod.2y12.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y13+: {P.hod.2y13.posScaler} [ {(P.hod.2y13.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y14+: {P.hod.2y14.posScaler} [ {(P.hod.2y14.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y15+: {P.hod.2y15.posScaler} [ {(P.hod.2y15.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y16+: {P.hod.2y16.posScaler} [ {(P.hod.2y16.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y17+: {P.hod.2y17.posScaler} [ {(P.hod.2y17.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y18+: {P.hod.2y18.posScaler} [ {(P.hod.2y18.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y19+: {P.hod.2y19.posScaler} [ {(P.hod.2y19.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y20+: {P.hod.2y20.posScaler} [ {(P.hod.2y20.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y21+: {P.hod.2y21.posScaler} [ {(P.hod.2y21.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P2Y1-:  {P.hod.2y1.negScaler} [ {(P.hod.2y1.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y2-:  {P.hod.2y2.negScaler} [ {(P.hod.2y2.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y3-:  {P.hod.2y3.negScaler} [ {(P.hod.2y3.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y4-:  {P.hod.2y4.negScaler} [ {(P.hod.2y4.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y5-:  {P.hod.2y5.negScaler} [ {(P.hod.2y5.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y6-:  {P.hod.2y6.negScaler} [ {(P.hod.2y6.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y7-:  {P.hod.2y7.negScaler} [ {(P.hod.2y7.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y8-:  {P.hod.2y8.negScaler} [ {(P.hod.2y8.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y9-:  {P.hod.2y9.negScaler} [ {(P.hod.2y9.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y10-: {P.hod.2y10.negScaler} [ {(P.hod.2y10.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y11-: {P.hod.2y11.negScaler} [ {(P.hod.2y11.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y12-: {P.hod.2y12.negScaler} [ {(P.hod.2y12.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y13-: {P.hod.2y13.negScaler} [ {(P.hod.2y13.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y14-: {P.hod.2y14.negScaler} [ {(P.hod.2y14.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y15-: {P.hod.2y15.negScaler} [ {(P.hod.2y15.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y16-: {P.hod.2y16.negScaler} [ {(P.hod.2y16.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y17-: {P.hod.2y17.negScaler} [ {(P.hod.2y17.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y18-: {P.hod.2y18.negScaler} [ {(P.hod.2y18.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y19-: {P.hod.2y19.negScaler} [ {(P.hod.2y19.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y20-: {P.hod.2y20.negScaler} [ {(P.hod.2y20.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y21-: {P.hod.2y21.negScaler} [ {(P.hod.2y21.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P1X: {P.S1X.scaler} [ {(P.S1X.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of P1X 
+P1Y: {P.S1Y.scaler} [ {(P.S1Y.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of P1Y
+P2X: {P.S2X.scaler} [ {(P.S2X.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of P2X
+P2Y: {P.S2Y.scaler} [ {(P.S2Y.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of P2Y
+
+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 ] OR between P2X and P2Y planes (just for kpp, will be AND)                                               
+
+*Aerogel, NGC, HGC*
+AERO: {P.AERO.scaler} [ {(P.AERO.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] Aerogel sum currently not available
+HGC:{P.HGC.scaler} [ {(P.HGC.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+NGC:{P.NGC.scaler} [ {(P.NGC.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
diff --git a/TEMPLATES/SHMS/SCALERS/pscalers.template b/TEMPLATES/SHMS/SCALERS/pscalers.template
index 70f64393..ce02d1e5 100644
--- a/TEMPLATES/SHMS/SCALERS/pscalers.template
+++ b/TEMPLATES/SHMS/SCALERS/pscalers.template
@@ -11,9 +11,9 @@ Run Length   : {P.1Mhz.scalerTime:%.3f} sec
 * Beamline
 ***********
   
-BCM1 Current: {P.BCM1.scalerCurrent:%.3f} uA		  
-BCM2 Current: {P.BCM2.scalerCurrent:%.3f} uA		 
-Unser Current: {P.Unser.scalerCurrent:%.3f} uA		  
+BCM1 Current: {P.BCM1.scalerCharge/P.1Mhz.scalerTime:%.3f} uA		  
+BCM2 Current: {P.BCM2.scalerCharge/P.1Mhz.scalerTime:%.3f} uA		 
+Unser Current: {P.Unser.scalerCharge/P.1Mhz.scalerTime:%.3f} uA		  
 
 With no cuts on BCM{gBCM_Current_threshold_index+1}.
 BCM1 Counts: {P.BCM1.scaler}		Total Charge: {P.BCM1.scalerCharge:%.3f} uC
@@ -49,6 +49,38 @@ SHMS Event Types            : {SHMS_Pretrig.npassed}
 SHMS Computer Live Time : {(TRIG1.npassed / P.pTRIG1.scaler)*100.0:%3.4f} % [ {(TRIG1.npassed / (P.pTRIG1.scaler/gpconfig_ti_ps_factors[0]))*100.0:%3.4f} % ]
 SHMS Computer Dead Time : {100.0 - (TRIG1.npassed / P.pTRIG1.scaler)*100.0:%3.4f} % [ {100.0 - (TRIG1.npassed / (P.pTRIG1.scaler/gpconfig_ti_ps_factors[0]))*100.0:%3.4f} % ]
 
+*************
+* MORE TRIGGERS
+**************
+HMS TRIG
+hEL_LO :	{P.hEL_LO.scaler}	[{P.hEL_LO.scaler/P.1Mhz.scalerTime:%.3f}]
+hEL_HI :	{P.hEL_HI.scaler}	[{P.hEL_HI.scaler/P.1Mhz.scalerTime:%.3f}]
+hEL_REAL :	{P.hEL_REAL.scaler}	[{P.hEL_REAL.scaler/P.1Mhz.scalerTime:%.3f}]
+hEL_CLEAN :	{P.hEL_CLEAN.scaler}	[{P.hEL_CLEAN.scaler/P.1Mhz.scalerTime:%.3f}]
+hSTOF:	  	{P.hSTOF.scaler}	[{P.hSTOF.scaler/P.1Mhz.scalerTime:%.3f}]
+
+hTRIG1:	  	{P.hTRIG1.scaler} 	[{P.hTRIG1.scaler/P.1Mhz.scalerTime:%.3f}]
+hTRIG2:	  	{P.hTRIG2.scaler} 	[{P.hTRIG2.scaler/P.1Mhz.scalerTime:%.3f}]
+hTRIG3:	  	{P.hTRIG3.scaler} 	[{P.hTRIG3.scaler/P.1Mhz.scalerTime:%.3f}]
+hTRIG4:	  	{P.hTRIG4.scaler} 	[{P.hTRIG4.scaler/P.1Mhz.scalerTime:%.3f}}
+hTRIG5:	  	{P.hTRIG5.scaler} 	[{P.hTRIG5.scaler/P.1Mhz.scalerTime:%.3f}]
+hTRIG6:	  	{P.hTRIG6.scaler} 	[{P.hTRIG6.scaler/P.1Mhz.scalerTime:%.3f}]
+
+SHMS TRIG
+pEL_LO :	{P.pEL_LO.scaler}	[{P.pEL_LO.scaler/P.1Mhz.scalerTime:%.3f}]
+pEL_HI :	{P.pEL_HI.scaler}	[{P.pEL_HI.scaler/P.1Mhz.scalerTime:%.3f}]
+pEL_REAL :	{P.pEL_REAL.scaler}	[{P.pEL_REAL.scaler/P.1Mhz.scalerTime:%.3f}]
+pEL_CLEAN :	{P.pEL_CLEAN.scaler}	[{P.pEL_CLEAN.scaler/P.1Mhz.scalerTime:%.3f}]
+pSTOF:	  	{P.pSTOF.scaler}	[{P.pSTOF.scaler/P.1Mhz.scalerTime:%.3f}]
+pTREF3:		{P.pTREF3.scaler}	[{P.pTREF3.scaler/P.1Mhz.scalerTime:%.3f}] 
+
+pTRIG1:	  	{P.pTRIG1.scaler} 	[{P.pTRIG1.scaler/P.1Mhz.scalerTime:%.3f}]
+pTRIG2:	  	{P.pTRIG2.scaler} 	[{P.pTRIG2.scaler/P.1Mhz.scalerTime:%.3f}]
+pTRIG3:	  	{P.pTRIG3.scaler} 	[{P.pTRIG3.scaler/P.1Mhz.scalerTime:%.3f}]
+pTRIG4:	  	{P.pTRIG4.scaler} 	[{P.pTRIG4.scaler/P.1Mhz.scalerTime:%.3f}]
+pTRIG5:	  	{P.pTRIG5.scaler} 	[{P.pTRIG5.scaler/P.1Mhz.scalerTime:%.3f}]
+pTRIG6:	  	{P.pTRIG6.scaler} 	[{P.pTRIG6.scaler/P.1Mhz.scalerTime:%.3f}]
+
 *******
 * EDTM
 *******
@@ -68,7 +100,7 @@ Total Dead Time (EDTM) : {100.0 - (edtm_accepted.npassed / P.EDTM.scaler)*100.0:
 Physics 3/4 Triggers           : {P.pTRIG1.scaler - P.EDTM.scaler}
 Estimated Physics 3/4 Triggers : {(P.pTRIG1.scalerRate - P.EDTM.scalerRate)*(P.1Mhz.scaler/1000000.):%.0f}
 Physics 3/4 Trigger Rate       : {(P.pTRIG1.scalerRate - P.EDTM.scalerRate)/1000.:%.3f} kHz
-Accepted Physics Triggers  : {physics_accepted.npassed}
+Accepted Physics Triggers      : {physics_accepted.npassed}
 
 *******************
 * Hardware Scalers
@@ -76,145 +108,145 @@ Accepted Physics Triggers  : {physics_accepted.npassed}
 
 *HODOSCOPES*
 Scint	Counts		Rate
-P1X1+:  {P.hod.1x1.posScaler} [ {P.hod.1x1.posScalerRate/1000.:%.3f} kHz ]
-P1X2+:  {P.hod.1x2.posScaler} [ {P.hod.1x2.posScalerRate/1000.:%.3f} kHz ]
-P1X3+:  {P.hod.1x3.posScaler} [ {P.hod.1x3.posScalerRate/1000.:%.3f} kHz ]
-P1X4+:  {P.hod.1x4.posScaler} [ {P.hod.1x4.posScalerRate/1000.:%.3f} kHz ]
-P1X5+:  {P.hod.1x5.posScaler} [ {P.hod.1x5.posScalerRate/1000.:%.3f} kHz ]
-P1X6+:  {P.hod.1x6.posScaler} [ {P.hod.1x6.posScalerRate/1000.:%.3f} kHz ]
-P1X7+:  {P.hod.1x7.posScaler} [ {P.hod.1x7.posScalerRate/1000.:%.3f} kHz ]
-P1X8+:  {P.hod.1x8.posScaler} [ {P.hod.1x8.posScalerRate/1000.:%.3f} kHz ]
-P1X9+:  {P.hod.1x9.posScaler} [ {P.hod.1x9.posScalerRate/1000.:%.3f} kHz ]
-P1X10+: {P.hod.1x10.posScaler} [ {P.hod.1x10.posScalerRate/1000.:%.3f} kHz ]
-P1X11+: {P.hod.1x11.posScaler} [ {P.hod.1x11.posScalerRate/1000.:%.3f} kHz ] 
-P1X12+: {P.hod.1x12.posScaler} [ {P.hod.1x12.posScalerRate/1000.:%.3f} kHz ]
-P1X13+: {P.hod.1x13.posScaler} [ {P.hod.1x13.posScalerRate/1000.:%.3f} kHz ]
-
-P1X1-:  {P.hod.1x1.negScaler} [ {P.hod.1x1.negScalerRate/1000.:%.3f} kHz ]
-P1X2-:  {P.hod.1x2.negScaler} [ {P.hod.1x2.negScalerRate/1000.:%.3f} kHz ]
-P1X3-:  {P.hod.1x3.negScaler} [ {P.hod.1x3.negScalerRate/1000.:%.3f} kHz ]
-P1X4-:  {P.hod.1x4.negScaler} [ {P.hod.1x4.negScalerRate/1000.:%.3f} kHz ]
-P1X5-:  {P.hod.1x5.negScaler} [ {P.hod.1x5.negScalerRate/1000.:%.3f} kHz ]
-P1X6-:  {P.hod.1x6.negScaler} [ {P.hod.1x6.negScalerRate/1000.:%.3f} kHz ]
-P1X7-:  {P.hod.1x7.negScaler} [ {P.hod.1x7.negScalerRate/1000.:%.3f} kHz ]
-P1X8-:  {P.hod.1x8.negScaler} [ {P.hod.1x8.negScalerRate/1000.:%.3f} kHz ]
-P1X9-:  {P.hod.1x9.negScaler} [ {P.hod.1x9.negScalerRate/1000.:%.3f} kHz ]
-P1X10-: {P.hod.1x10.negScaler} [ {P.hod.1x10.negScalerRate/1000.:%.3f} kHz ]
-P1X11-: {P.hod.1x11.negScaler} [ {P.hod.1x11.negScalerRate/1000.:%.3f} kHz ]
-P1X12-: {P.hod.1x12.negScaler} [ {P.hod.1x12.negScalerRate/1000.:%.3f} kHz ]
-P1X13-: {P.hod.1x13.negScaler} [ {P.hod.1x13.negScalerRate/1000.:%.3f} kHz ]
+P1X1+:  {P.hod.1x1.posScaler} [ {(P.hod.1x1.posScalerRate/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X2+:  {P.hod.1x2.posScaler} [ {(P.hod.1x2.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X3+:  {P.hod.1x3.posScaler} [ {(P.hod.1x3.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X4+:  {P.hod.1x4.posScaler} [ {(P.hod.1x4.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X5+:  {P.hod.1x5.posScaler} [ {(P.hod.1x5.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X6+:  {P.hod.1x6.posScaler} [ {(P.hod.1x6.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X7+:  {P.hod.1x7.posScaler} [ {(P.hod.1x7.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X8+:  {P.hod.1x8.posScaler} [ {(P.hod.1x8.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X9+:  {P.hod.1x9.posScaler} [ {(P.hod.1x9.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X10+: {P.hod.1x10.posScaler} [ {(P.hod.1x10.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X11+: {P.hod.1x11.posScaler} [ {(P.hod.1x11.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] 
+P1X12+: {P.hod.1x12.posScaler} [ {(P.hod.1x12.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X13+: {P.hod.1x13.posScaler} [ {(P.hod.1x13.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P1X1-:  {P.hod.1x1.negScaler} [ {(P.hod.1x1.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X2-:  {P.hod.1x2.negScaler} [ {(P.hod.1x2.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X3-:  {P.hod.1x3.negScaler} [ {(P.hod.1x3.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X4-:  {P.hod.1x4.negScaler} [ {(P.hod.1x4.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X5-:  {P.hod.1x5.negScaler} [ {(P.hod.1x5.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X6-:  {P.hod.1x6.negScaler} [ {(P.hod.1x6.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X7-:  {P.hod.1x7.negScaler} [ {(P.hod.1x7.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X8-:  {P.hod.1x8.negScaler} [ {(P.hod.1x8.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X9-:  {P.hod.1x9.negScaler} [ {(P.hod.1x9.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X10-: {P.hod.1x10.negScaler} [ {(P.hod.1x10.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X11-: {P.hod.1x11.negScaler} [ {(P.hod.1x11.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X12-: {P.hod.1x12.negScaler} [ {(P.hod.1x12.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1X13-: {P.hod.1x13.negScaler} [ {(P.hod.1x13.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
  
-P1Y1+:  {P.hod.1y1.posScaler} [ {P.hod.1y1.posScalerRate/1000.:%.3f} kHz ]
-P1Y2+:  {P.hod.1y2.posScaler} [ {P.hod.1y2.posScalerRate/1000.:%.3f} kHz ]
-P1Y3+:  {P.hod.1y3.posScaler} [ {P.hod.1y3.posScalerRate/1000.:%.3f} kHz ]
-P1Y4+:  {P.hod.1y4.posScaler} [ {P.hod.1y4.posScalerRate/1000.:%.3f} kHz ]
-P1Y5+:  {P.hod.1y5.posScaler} [ {P.hod.1y5.posScalerRate/1000.:%.3f} kHz ]
-P1Y6+:  {P.hod.1y6.posScaler} [ {P.hod.1y6.posScalerRate/1000.:%.3f} kHz ]
-P1Y7+:  {P.hod.1y7.posScaler} [ {P.hod.1y7.posScalerRate/1000.:%.3f} kHz ]
-P1Y8+:  {P.hod.1y8.posScaler} [ {P.hod.1y8.posScalerRate/1000.:%.3f} kHz ]
-P1Y9+:  {P.hod.1y9.posScaler} [ {P.hod.1y9.posScalerRate/1000.:%.3f} kHz ]
-P1Y10+: {P.hod.1y10.posScaler} [ {P.hod.1y10.posScalerRate/1000.:%.3f} kHz ]
-P1Y11+: {P.hod.1y11.posScaler} [ {P.hod.1y11.posScalerRate/1000.:%.3f} kHz ]
-P1Y12+: {P.hod.1y12.posScaler} [ {P.hod.1y12.posScalerRate/1000.:%.3f} kHz ]
-P1Y13+: {P.hod.1y13.posScaler} [ {P.hod.1y13.posScalerRate/1000.:%.3f} kHz ]
-
-P1Y1-:  {P.hod.1y1.negScaler} [ {P.hod.1y1.negScalerRate/1000.:%.3f} kHz ]
-P1Y2-:  {P.hod.1y2.negScaler} [ {P.hod.1y2.negScalerRate/1000.:%.3f} kHz ]
-P1Y3-:  {P.hod.1y3.negScaler} [ {P.hod.1y3.negScalerRate/1000.:%.3f} kHz ]
-P1Y4-:  {P.hod.1y4.negScaler} [ {P.hod.1y4.negScalerRate/1000.:%.3f} kHz ]
-P1Y5-:  {P.hod.1y5.negScaler} [ {P.hod.1y5.negScalerRate/1000.:%.3f} kHz ]
-P1Y6-:  {P.hod.1y6.negScaler} [ {P.hod.1y6.negScalerRate/1000.:%.3f} kHz ]
-P1Y7-:  {P.hod.1y7.negScaler} [ {P.hod.1y7.negScalerRate/1000.:%.3f} kHz ]
-P1Y8-:  {P.hod.1y8.negScaler} [ {P.hod.1y8.negScalerRate/1000.:%.3f} kHz ]
-P1Y9-:  {P.hod.1y9.negScaler} [ {P.hod.1y9.negScalerRate/1000.:%.3f} kHz ]
-P1Y10-: {P.hod.1y10.negScaler} [ {P.hod.1y10.negScalerRate/1000.:%.3f} kHz ]
-P1Y11-: {P.hod.1y11.negScaler} [ {P.hod.1y11.negScalerRate/1000.:%.3f} kHz ]
-P1Y12-: {P.hod.1y12.negScaler} [ {P.hod.1y12.negScalerRate/1000.:%.3f} kHz ]
-P1Y13-: {P.hod.1y13.negScaler} [ {P.hod.1y13.negScalerRate/1000.:%.3f} kHz ]
-
-P2X1+:  {P.hod.2x1.posScaler} [ {P.hod.2x1.posScalerRate/1000.:%.3f} kHz ]
-P2X2+:  {P.hod.2x2.posScaler} [ {P.hod.2x2.posScalerRate/1000.:%.3f} kHz ]
-P2X3+:  {P.hod.2x3.posScaler} [ {P.hod.2x3.posScalerRate/1000.:%.3f} kHz ]
-P2X4+:  {P.hod.2x4.posScaler} [ {P.hod.2x4.posScalerRate/1000.:%.3f} kHz ]
-P2X5+:  {P.hod.2x5.posScaler} [ {P.hod.2x5.posScalerRate/1000.:%.3f} kHz ]
-P2X6+:  {P.hod.2x6.posScaler} [ {P.hod.2x6.posScalerRate/1000.:%.3f} kHz ]
-P2X7+:  {P.hod.2x7.posScaler} [ {P.hod.2x7.posScalerRate/1000.:%.3f} kHz ]
-P2X8+:  {P.hod.2x8.posScaler} [ {P.hod.2x8.posScalerRate/1000.:%.3f} kHz ]
-P2X9+:  {P.hod.2x9.posScaler} [ {P.hod.2x9.posScalerRate/1000.:%.3f} kHz ]
-P2X10+: {P.hod.2x10.posScaler} [ {P.hod.2x10.posScalerRate/1000.:%.3f} kHz ]
-P2X11+: {P.hod.2x11.posScaler} [ {P.hod.2x11.posScalerRate/1000.:%.3f} kHz ]
-P2X12+: {P.hod.2x12.posScaler} [ {P.hod.2x12.posScalerRate/1000.:%.3f} kHz ]
-P2X13+: {P.hod.2x13.posScaler} [ {P.hod.2x13.posScalerRate/1000.:%.3f} kHz ]
-P2X14+: {P.hod.2x14.posScaler} [ {P.hod.2x14.posScalerRate/1000.:%.3f} kHz ]
-
-P2X1-:  {P.hod.2x1.negScaler} [ {P.hod.2x1.negScalerRate/1000.:%.3f} kHz ]
-P2X2-:  {P.hod.2x2.negScaler} [ {P.hod.2x2.negScalerRate/1000.:%.3f} kHz ]
-P2X3-:  {P.hod.2x3.negScaler} [ {P.hod.2x3.negScalerRate/1000.:%.3f} kHz ]
-P2X4-:  {P.hod.2x4.negScaler} [ {P.hod.2x4.negScalerRate/1000.:%.3f} kHz ]
-P2X5-:  {P.hod.2x5.negScaler} [ {P.hod.2x5.negScalerRate/1000.:%.3f} kHz ]
-P2X6-:  {P.hod.2x6.negScaler} [ {P.hod.2x6.negScalerRate/1000.:%.3f} kHz ]
-P2X7-:  {P.hod.2x7.negScaler} [ {P.hod.2x7.negScalerRate/1000.:%.3f} kHz ]
-P2X8-:  {P.hod.2x8.negScaler} [ {P.hod.2x8.negScalerRate/1000.:%.3f} kHz ]
-P2X9-:  {P.hod.2x9.negScaler} [ {P.hod.2x9.negScalerRate/1000.:%.3f} kHz ]
-P2X10-: {P.hod.2x10.negScaler} [ {P.hod.2x10.negScalerRate/1000.:%.3f} kHz ]
-P2X11-: {P.hod.2x11.negScaler} [ {P.hod.2x11.negScalerRate/1000.:%.3f} kHz ]
-P2X12-: {P.hod.2x12.negScaler} [ {P.hod.2x12.negScalerRate/1000.:%.3f} kHz ]
-P2X13-: {P.hod.2x13.negScaler} [ {P.hod.2x13.negScalerRate/1000.:%.3f} kHz ]
-P2X14-: {P.hod.2x14.negScaler} [ {P.hod.2x14.negScalerRate/1000.:%.3f} kHz ]
-
-P2Y1+:  {P.hod.2y1.posScaler} [ {P.hod.2y1.posScalerRate/1000.:%.3f} kHz ]
-P2Y2+:  {P.hod.2y2.posScaler} [ {P.hod.2y2.posScalerRate/1000.:%.3f} kHz ]
-P2Y3+:  {P.hod.2y3.posScaler} [ {P.hod.2y3.posScalerRate/1000.:%.3f} kHz ] 
-P2Y4+:  {P.hod.2y4.posScaler} [ {P.hod.2y4.posScalerRate/1000.:%.3f} kHz ]
-P2Y5+:  {P.hod.2y5.posScaler} [ {P.hod.2y5.posScalerRate/1000.:%.3f} kHz ]
-P2Y6+:  {P.hod.2y6.posScaler} [ {P.hod.2y6.posScalerRate/1000.:%.3f} kHz ]
-P2Y7+:  {P.hod.2y7.posScaler} [ {P.hod.2y7.posScalerRate/1000.:%.3f} kHz ]
-P2Y8+:  {P.hod.2y8.posScaler} [ {P.hod.2y8.posScalerRate/1000.:%.3f} kHz ]
-P2Y9+:  {P.hod.2y9.posScaler} [ {P.hod.2y9.posScalerRate/1000.:%.3f} kHz ]
-P2Y10+: {P.hod.2y10.posScaler} [ {P.hod.2y10.posScalerRate/1000.:%.3f} kHz ]
-P2Y11+: {P.hod.2y11.posScaler} [ {P.hod.2y11.posScalerRate/1000.:%.3f} kHz ]
-P2Y12+: {P.hod.2y12.posScaler} [ {P.hod.2y12.posScalerRate/1000.:%.3f} kHz ]
-P2Y13+: {P.hod.2y13.posScaler} [ {P.hod.2y13.posScalerRate/1000.:%.3f} kHz ]
-P2Y14+: {P.hod.2y14.posScaler} [ {P.hod.2y14.posScalerRate/1000.:%.3f} kHz ]
-P2Y15+: {P.hod.2y15.posScaler} [ {P.hod.2y15.posScalerRate/1000.:%.3f} kHz ]
-P2Y16+: {P.hod.2y16.posScaler} [ {P.hod.2y16.posScalerRate/1000.:%.3f} kHz ]
-P2Y17+: {P.hod.2y17.posScaler} [ {P.hod.2y17.posScalerRate/1000.:%.3f} kHz ]
-P2Y18+: {P.hod.2y18.posScaler} [ {P.hod.2y18.posScalerRate/1000.:%.3f} kHz ]
-P2Y19+: {P.hod.2y19.posScaler} [ {P.hod.2y19.posScalerRate/1000.:%.3f} kHz ]
-P2Y20+: {P.hod.2y20.posScaler} [ {P.hod.2y20.posScalerRate/1000.:%.3f} kHz ]
-P2Y21+: {P.hod.2y21.posScaler} [ {P.hod.2y21.posScalerRate/1000.:%.3f} kHz ]
-
-P2Y1-:  {P.hod.2y1.negScaler} [ {P.hod.2y1.negScalerRate/1000.:%.3f} kHz ]
-P2Y2-:  {P.hod.2y2.negScaler} [ {P.hod.2y2.negScalerRate/1000.:%.3f} kHz ]
-P2Y3-:  {P.hod.2y3.negScaler} [ {P.hod.2y3.negScalerRate/1000.:%.3f} kHz ]
-P2Y4-:  {P.hod.2y4.negScaler} [ {P.hod.2y4.negScalerRate/1000.:%.3f} kHz ]
-P2Y5-:  {P.hod.2y5.negScaler} [ {P.hod.2y5.negScalerRate/1000.:%.3f} kHz ]
-P2Y6-:  {P.hod.2y6.negScaler} [ {P.hod.2y6.negScalerRate/1000.:%.3f} kHz ]
-P2Y7-:  {P.hod.2y7.negScaler} [ {P.hod.2y7.negScalerRate/1000.:%.3f} kHz ]
-P2Y8-:  {P.hod.2y8.negScaler} [ {P.hod.2y8.negScalerRate/1000.:%.3f} kHz ]
-P2Y9-:  {P.hod.2y9.negScaler} [ {P.hod.2y9.negScalerRate/1000.:%.3f} kHz ]
-P2Y10-: {P.hod.2y10.negScaler} [ {P.hod.2y10.negScalerRate/1000.:%.3f} kHz ]
-P2Y11-: {P.hod.2y11.negScaler} [ {P.hod.2y11.negScalerRate/1000.:%.3f} kHz ]
-P2Y12-: {P.hod.2y12.negScaler} [ {P.hod.2y12.negScalerRate/1000.:%.3f} kHz ]
-P2Y13-: {P.hod.2y13.negScaler} [ {P.hod.2y13.negScalerRate/1000.:%.3f} kHz ]
-P2Y14-: {P.hod.2y14.negScaler} [ {P.hod.2y14.negScalerRate/1000.:%.3f} kHz ]
-P2Y15-: {P.hod.2y15.negScaler} [ {P.hod.2y15.negScalerRate/1000.:%.3f} kHz ]
-P2Y16-: {P.hod.2y16.negScaler} [ {P.hod.2y16.negScalerRate/1000.:%.3f} kHz ]
-P2Y17-: {P.hod.2y17.negScaler} [ {P.hod.2y17.negScalerRate/1000.:%.3f} kHz ]
-P2Y18-: {P.hod.2y18.negScaler} [ {P.hod.2y18.negScalerRate/1000.:%.3f} kHz ]
-P2Y19-: {P.hod.2y19.negScaler} [ {P.hod.2y19.negScalerRate/1000.:%.3f} kHz ]
-P2Y20-: {P.hod.2y20.negScaler} [ {P.hod.2y20.negScalerRate/1000.:%.3f} kHz ]
-P2Y21-: {P.hod.2y21.negScaler} [ {P.hod.2y21.negScalerRate/1000.:%.3f} kHz ]
-
-P1X: {P.S1X.scaler} [ {P.S1X.scalerRate/1000.:%.3f} kHz ] AND between + and - sides of P1X 
-P1Y: {P.S1Y.scaler} [ {P.S1Y.scalerRate/1000.:%.3f} kHz ] AND between + and - sides of P1Y
-P2X: {P.S2X.scaler} [ {P.S2X.scalerRate/1000.:%.3f} kHz ] AND between + and - sides of P2X
-P2Y: {P.S2Y.scaler} [ {P.S2Y.scalerRate/1000.:%.3f} kHz ] AND between + and - sides of P2Y
-
-P1XP1Y: {P.S1XS1Y.scaler} [ {P.S1XS1Y.scalerRate/1000.:%.3f} kHz ] AND between P1X and P1Y planes 
-P2XP2Y: {P.S2XS2Y.scaler} [ {P.S2XS2Y.scalerRate/1000.:%.3f} kHz ] OR between P2X and P2Y planes (just for kpp, will be AND)                                               
+P1Y1+:  {P.hod.1y1.posScaler} [ {(P.hod.1y1.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y2+:  {P.hod.1y2.posScaler} [ {(P.hod.1y2.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y3+:  {P.hod.1y3.posScaler} [ {(P.hod.1y3.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y4+:  {P.hod.1y4.posScaler} [ {(P.hod.1y4.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y5+:  {P.hod.1y5.posScaler} [ {(P.hod.1y5.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y6+:  {P.hod.1y6.posScaler} [ {(P.hod.1y6.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y7+:  {P.hod.1y7.posScaler} [ {(P.hod.1y7.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y8+:  {P.hod.1y8.posScaler} [ {(P.hod.1y8.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y9+:  {P.hod.1y9.posScaler} [ {(P.hod.1y9.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y10+: {P.hod.1y10.posScaler} [ {(P.hod.1y10.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y11+: {P.hod.1y11.posScaler} [ {(P.hod.1y11.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y12+: {P.hod.1y12.posScaler} [ {(P.hod.1y12.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y13+: {P.hod.1y13.posScaler} [ {(P.hod.1y13.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P1Y1-:  {P.hod.1y1.negScaler} [ {(P.hod.1y1.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y2-:  {P.hod.1y2.negScaler} [ {(P.hod.1y2.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y3-:  {P.hod.1y3.negScaler} [ {(P.hod.1y3.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y4-:  {P.hod.1y4.negScaler} [ {(P.hod.1y4.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y5-:  {P.hod.1y5.negScaler} [ {(P.hod.1y5.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y6-:  {P.hod.1y6.negScaler} [ {(P.hod.1y6.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y7-:  {P.hod.1y7.negScaler} [ {(P.hod.1y7.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y8-:  {P.hod.1y8.negScaler} [ {(P.hod.1y8.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y9-:  {P.hod.1y9.negScaler} [ {(P.hod.1y9.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y10-: {P.hod.1y10.negScaler} [ {(P.hod.1y10.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y11-: {P.hod.1y11.negScaler} [ {(P.hod.1y11.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y12-: {P.hod.1y12.negScaler} [ {(P.hod.1y12.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P1Y13-: {P.hod.1y13.negScaler} [ {(P.hod.1y13.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P2X1+:  {P.hod.2x1.posScaler} [ {(P.hod.2x1.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X2+:  {P.hod.2x2.posScaler} [ {(P.hod.2x2.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X3+:  {P.hod.2x3.posScaler} [ {(P.hod.2x3.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X4+:  {P.hod.2x4.posScaler} [ {(P.hod.2x4.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X5+:  {P.hod.2x5.posScaler} [ {(P.hod.2x5.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X6+:  {P.hod.2x6.posScaler} [ {(P.hod.2x6.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X7+:  {P.hod.2x7.posScaler} [ {(P.hod.2x7.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X8+:  {P.hod.2x8.posScaler} [ {(P.hod.2x8.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X9+:  {P.hod.2x9.posScaler} [ {(P.hod.2x9.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X10+: {P.hod.2x10.posScaler} [ {(P.hod.2x10.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X11+: {P.hod.2x11.posScaler} [ {(P.hod.2x11.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X12+: {P.hod.2x12.posScaler} [ {(P.hod.2x12.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X13+: {P.hod.2x13.posScaler} [ {(P.hod.2x13.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X14+: {P.hod.2x14.posScaler} [ {(P.hod.2x14.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P2X1-:  {P.hod.2x1.negScaler} [ {(P.hod.2x1.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X2-:  {P.hod.2x2.negScaler} [ {(P.hod.2x2.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X3-:  {P.hod.2x3.negScaler} [ {(P.hod.2x3.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X4-:  {P.hod.2x4.negScaler} [ {(P.hod.2x4.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X5-:  {P.hod.2x5.negScaler} [ {(P.hod.2x5.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X6-:  {P.hod.2x6.negScaler} [ {(P.hod.2x6.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X7-:  {P.hod.2x7.negScaler} [ {(P.hod.2x7.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X8-:  {P.hod.2x8.negScaler} [ {(P.hod.2x8.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X9-:  {P.hod.2x9.negScaler} [ {(P.hod.2x9.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X10-: {P.hod.2x10.negScaler} [ {(P.hod.2x10.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X11-: {P.hod.2x11.negScaler} [ {(P.hod.2x11.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X12-: {P.hod.2x12.negScaler} [ {(P.hod.2x12.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X13-: {P.hod.2x13.negScaler} [ {(P.hod.2x13.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2X14-: {P.hod.2x14.negScaler} [ {(P.hod.2x14.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P2Y1+:  {P.hod.2y1.posScaler} [ {(P.hod.2y1.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y2+:  {P.hod.2y2.posScaler} [ {(P.hod.2y2.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y3+:  {P.hod.2y3.posScaler} [ {(P.hod.2y3.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] 
+P2Y4+:  {P.hod.2y4.posScaler} [ {(P.hod.2y4.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y5+:  {P.hod.2y5.posScaler} [ {(P.hod.2y5.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y6+:  {P.hod.2y6.posScaler} [ {(P.hod.2y6.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y7+:  {P.hod.2y7.posScaler} [ {(P.hod.2y7.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y8+:  {P.hod.2y8.posScaler} [ {(P.hod.2y8.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y9+:  {P.hod.2y9.posScaler} [ {(P.hod.2y9.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y10+: {P.hod.2y10.posScaler} [ {(P.hod.2y10.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y11+: {P.hod.2y11.posScaler} [ {(P.hod.2y11.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y12+: {P.hod.2y12.posScaler} [ {(P.hod.2y12.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y13+: {P.hod.2y13.posScaler} [ {(P.hod.2y13.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y14+: {P.hod.2y14.posScaler} [ {(P.hod.2y14.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y15+: {P.hod.2y15.posScaler} [ {(P.hod.2y15.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y16+: {P.hod.2y16.posScaler} [ {(P.hod.2y16.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y17+: {P.hod.2y17.posScaler} [ {(P.hod.2y17.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y18+: {P.hod.2y18.posScaler} [ {(P.hod.2y18.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y19+: {P.hod.2y19.posScaler} [ {(P.hod.2y19.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y20+: {P.hod.2y20.posScaler} [ {(P.hod.2y20.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y21+: {P.hod.2y21.posScaler} [ {(P.hod.2y21.posScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P2Y1-:  {P.hod.2y1.negScaler} [ {(P.hod.2y1.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y2-:  {P.hod.2y2.negScaler} [ {(P.hod.2y2.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y3-:  {P.hod.2y3.negScaler} [ {(P.hod.2y3.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y4-:  {P.hod.2y4.negScaler} [ {(P.hod.2y4.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y5-:  {P.hod.2y5.negScaler} [ {(P.hod.2y5.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y6-:  {P.hod.2y6.negScaler} [ {(P.hod.2y6.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y7-:  {P.hod.2y7.negScaler} [ {(P.hod.2y7.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y8-:  {P.hod.2y8.negScaler} [ {(P.hod.2y8.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y9-:  {P.hod.2y9.negScaler} [ {(P.hod.2y9.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y10-: {P.hod.2y10.negScaler} [ {(P.hod.2y10.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y11-: {P.hod.2y11.negScaler} [ {(P.hod.2y11.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y12-: {P.hod.2y12.negScaler} [ {(P.hod.2y12.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y13-: {P.hod.2y13.negScaler} [ {(P.hod.2y13.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y14-: {P.hod.2y14.negScaler} [ {(P.hod.2y14.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y15-: {P.hod.2y15.negScaler} [ {(P.hod.2y15.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y16-: {P.hod.2y16.negScaler} [ {(P.hod.2y16.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y17-: {P.hod.2y17.negScaler} [ {(P.hod.2y17.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y18-: {P.hod.2y18.negScaler} [ {(P.hod.2y18.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y19-: {P.hod.2y19.negScaler} [ {(P.hod.2y19.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y20-: {P.hod.2y20.negScaler} [ {(P.hod.2y20.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+P2Y21-: {P.hod.2y21.negScaler} [ {(P.hod.2y21.negScaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+
+P1X: {P.S1X.scaler} [ {(P.S1X.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of P1X 
+P1Y: {P.S1Y.scaler} [ {(P.S1Y.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of P1Y
+P2X: {P.S2X.scaler} [ {(P.S2X.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of P2X
+P2Y: {P.S2Y.scaler} [ {(P.S2Y.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] AND between + and - sides of P2Y
+
+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 ] OR between P2X and P2Y planes (just for kpp, will be AND)                                               
 
 *Aerogel, NGC, HGC*
-AERO: {P.AERO.scaler} [ {P.AERO.scalerRate/1000.:%.3f} kHz ] 
-HGC:{P.HGC.scaler} [ {P.HGC.scalerRate/1000.:%.3f} kHz ]
-NGC:{P.NGC.scaler} [ {P.NGC.scalerRate/1000.:%.3f} kHz ]
+AERO: {P.AERO.scaler} [ {(P.AERO.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ] Aerogel sum currently not available
+HGC:{P.HGC.scaler} [ {(P.HGC.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
+NGC:{P.NGC.scaler} [ {(P.NGC.scaler/P.1Mhz.scalerTime)/1000.:%.3f} kHz ]
diff --git a/TEMPLATES/SHMS/STACK/pstackana.template b/TEMPLATES/SHMS/STACK/pstackana.template
index ddd86a47..d1be61bc 100644
--- a/TEMPLATES/SHMS/STACK/pstackana.template
+++ b/TEMPLATES/SHMS/STACK/pstackana.template
@@ -48,36 +48,6 @@ shmsDC2v1Planes5     			  Counts: {shmsDC2_5hits_v1.npassed} eff : {shmsDC2_6hit
 shmsDC2v2Planes5     			  Counts: {shmsDC2_5hits_v2.npassed} eff : {shmsDC2_6hits_v2.npassed / shmsDC2_5hits_v2.npassed}
 shmsDC2x2Planes5     			  Counts: {shmsDC2_5hits_x2.npassed} eff : {shmsDC2_6hits_x2.npassed / shmsDC2_5hits_x2.npassed}
 
-******************************
-* SHMS TRACKING EFFICIENCIES *
-******************************
-ptrig                          : {shms_trigs.npassed}
-phitslt = passed hits/cham     : {shmsHitsLt.npassed}
-phitsplanes = +planes >= 5/6   : {shmsHitsPlanes.npassed}
-phitsplanessps = + sps         : {pSpacePoints.npassed}
-phitsplanesspsstubs +stub      : {pSpacePointsStub.npassed}
-psfoundtrack                   : {pFoundTrack.npassed}
-pscleantrack                   : {pCleanTrack.npassed}
-pstublt = passed stub tests    : {pStubLT.npassed}
-p1hitslt                       : {shms1HitsLt.npassed}
-p2hitslt                       : {shms2HitsLt.npassed}
-p1planesgt                     : {shmsDC1PlanesGT.npassed}
-p2planesgt                     : {shmsDC2PlanesGT.npassed}
-pplanesgt = gt 5 planes/cham   : {shmsPlanesGT.npassed}
-f1pspacepoints                 : {f1PSpacePoints.npassed}
-f2pspacepoints                 : {f2PSpacePoints.npassed}
-ptest1=p hits/planes, f sp     : {pTest1.npassed}
-ptest2=p sp, f stubs           : {pTest2.npassed}
-pdid                           : {shmsScinDid.npassed}
-pdide                          : {shmsScinDide.npassed}
-pdidh                          : {shmsScinDidh.npassed}
-pscinshould                    : {shmsScinShould.npassed}
-pscinshoulde                   : {shmsScinShoulde.npassed}
-pscinshouldh                   : {shmsScinShouldh.npassed}
-SING FID TRACK EFFIC           : {shmsScinDid.npassed / (shmsScinShould.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShould.npassed-shmsScinDid.npassed) / (shmsScinShould.npassed+.0001)):%8.4f}
-E SING FID TRACK EFFIC         : {shmsScinDide.npassed / (shmsScinShoulde.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShoulde.npassed-shmsScinDide.npassed) / (shmsScinShoulde.npassed+.0001)):%8.4f}
-HADRON SING FID TRACK EFFIC    : {shmsScinDidh.npassed / (shmsScinShouldh.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShouldh.npassed-shmsScinDidh.npassed) / (shmsScinShouldh.npassed+.0001)):%8.4f}
-
 **DRIFTCHAMBER**
 I'm pretty sure that these are the "raw" number of counts. "Raw" means one or more hits per dc plane.
 shmsDC1_1hit_x1:     	   {shmsDC1_1hit_x1.npassed} 		
@@ -95,23 +65,23 @@ shmsDC2_1hit_v2:      	   {shmsDC2_1hit_v2.npassed}
 shmsDC2_1hit_x2:      	   {shmsDC2_1hit_x2.npassed}		
 
 "Good" means one or two hits per dc plane.
-goodHDC1x1:  	    	   {goodHDC1x1.npassed}	eff : {goodHDC1x1.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC1u2:	    	   {goodHDC1u2.npassed}	eff : {goodHDC1u2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC1u1:         	   {goodHDC1u1.npassed}	eff : {goodHDC1u1.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC1v1:	    	   {goodHDC1v1.npassed}	eff : {goodHDC1v1.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC1v2:	    	   {goodHDC1v2.npassed}	eff : {goodHDC1v2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC1x2:	    	   {goodHDC1x2.npassed}	eff : {goodHDC1x2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-
-goodHDC2x1:	     	   {goodHDC2x1.npassed}	eff : {goodHDC2x1.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC2u2:	     	   {goodHDC2u2.npassed}	eff : {goodHDC2u2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC2u1:	     	   {goodHDC2u1.npassed}	eff : {goodHDC2u1.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC2v1:	     	   {goodHDC2v1.npassed}	eff : {goodHDC2v1.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC2v2:	     	   {goodHDC2v2.npassed}	eff : {goodHDC2v2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC2x2:	     	   {goodHDC2x2.npassed}	eff : {goodHDC2x2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-
-goodHDC1:	   	   {goodHDC1.npassed}	eff : {goodHDC1.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodHDC2:	     	   {goodHDC2.npassed}	eff : {goodHDC2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-bothgood:	     	   {bothGood.npassed}	eff : {bothGood.npassed/(shms_trigs.npassed+.0001):%5.3f}
+goodHDC1x1:	     {goodHDC1x1.npassed}	eff : {goodHDC1x1.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC1u2:	     {goodHDC1u2.npassed}	eff : {goodHDC1u2.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC1u1:          {goodHDC1u1.npassed}	eff : {goodHDC1u1.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC1v1:	     {goodHDC1v1.npassed}	eff : {goodHDC1v1.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC1v2:	     {goodHDC1v2.npassed}	eff : {goodHDC1v2.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC1x2:	     {goodHDC1x2.npassed}	eff : {goodHDC1x2.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+
+goodHDC2x1:	     {goodHDC2x1.npassed}	eff : {goodHDC2x1.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC2u2:	     {goodHDC2u2.npassed}	eff : {goodHDC2u2.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC2u1:	     {goodHDC2u1.npassed}	eff : {goodHDC2u1.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC2v1:	     {goodHDC2v1.npassed}	eff : {goodHDC2v1.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC2v2:	     {goodHDC2v2.npassed}	eff : {goodHDC2v2.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC2x2:	     {goodHDC2x2.npassed}	eff : {goodHDC2x2.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+
+goodHDC1:	     {goodHDC1.npassed}	eff : {goodHDC1.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+goodHDC2:	     {goodHDC2.npassed}	eff : {goodHDC2.npassed/(P.pTREF3.scaler+.0001):%5.3f}
+bothgood:	     {bothGood.npassed}	eff : {bothGood.npassed/(P.pTREF3.scaler+.0001):%5.3f}
 
 realhdc1x1:	     	   {realhdc1x1.npassed}
 realhdc1u2:	     	   {realhdc1u2.npassed}
@@ -129,31 +99,31 @@ realhdc2x2:	     	   {realhdc2x2.npassed}
     	   	       
 **HODOSCOPE**
 "Any" means one or more hits per scint plane.
-anyhs1x:    	   	   {anyhs1x.npassed}	eff: {anyhs1x.npassed/(shms_trigs.npassed+.0001):%5.3f}		BAD = ??
-anyhs1y:    	 	   {anyhs1y.npassed}	eff: {anyhs1y.npassed/(shms_trigs.npassed+.0001):%5.3f}
-anyhs2x:    	 	   {anyhs2x.npassed}	eff: {anyhs2x.npassed/(shms_trigs.npassed+.0001):%5.3f}
-anyhs2y:    	 	   {anyhs2y.npassed}	eff: {anyhs2y.npassed/(shms_trigs.npassed+.0001):%5.3f} 
+anyhs1x:    	   	   {anyhs1x.npassed}	eff: {anyhs1x.npassed/(P.pTREF3.npassed+.0001):%5.3f}		BAD = ??
+anyhs1y:    	 	   {anyhs1y.npassed}	eff: {anyhs1y.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+anyhs2x:    	 	   {anyhs2x.npassed}	eff: {anyhs2x.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+anyhs2y:    	 	   {anyhs2y.npassed}	eff: {anyhs2y.npassed/(P.pTREF3.npassed+.0001):%5.3f} 
 
 "Good" means one or two hits per scint plane.
-goodps1x:    	    	   {goodps1x.npassed}	eff: {goodps1x.npassed/(shms_trigs.npassed+.0001):%5.3f}		BAD = ??
-goodps1y:    	 	   {goodps1y.npassed}	eff: {goodps1y.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodps1:     	 	   {goodps1.npassed}	eff: {goodps1.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodps2x:    	 	   {goodps2x.npassed}	eff: {goodps2x.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodps2y:    	 	   {goodps2y.npassed}	eff: {goodps2y.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodps2:     	 	   {goodps2.npassed}	eff: {goodps2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-goodps1s2:   		   {goodps1s2.npassed}	eff: {goodps1s2.npassed/(shms_trigs.npassed+.0001):%5.3f}
-
-pFoundTrack: 	 	   {pFoundTrack.npassed}	eff: {pFoundTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}		BAD = ??
-pFound1Track:	 	   {pFound1Track.npassed}	eff: {pFound1Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-pFound2Track:	 	   {pFound2Track.npassed}	eff: {pFound2Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-pFound3Track:	 	   {pFound3Track.npassed}	eff: {pFound3Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-pFound4Track:	 	   {pFound4Track.npassed}	eff: {pFound4Track.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-
-pCleanTrack: 	 	   {pCleanTrack.npassed}	eff: {pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}		BAD = ??
-1pCleanTrack:	 	   {1pCleanTrack.npassed}	eff: {1pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f} 
-2pCleanTrack:	 	   {2pCleanTrack.npassed}	eff: {2pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
-3pCleanTrack:	 	   {3pCleanTrack.npassed}	eff: {3pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
-4pCleanTrack:	 	   {4pCleanTrack.npassed}	eff: {4pCleanTrack.npassed/(shms_trigs.npassed+.0001):%5.3f}
+goodps1x:    	    	   {goodps1x.npassed}	eff: {goodps1x.npassed/(P.pTREF3.npassed+.0001):%5.3f}		BAD = ??
+goodps1y:    	 	   {goodps1y.npassed}	eff: {goodps1y.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+goodps1:     	 	   {goodps1.npassed}	eff: {goodps1.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+goodps2x:    	 	   {goodps2x.npassed}	eff: {goodps2x.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+goodps2y:    	 	   {goodps2y.npassed}	eff: {goodps2y.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+goodps2:     	 	   {goodps2.npassed}	eff: {goodps2.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+goodps1s2:   		   {goodps1s2.npassed}	eff: {goodps1s2.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+
+pFoundTrack: 	 	   {pFoundTrack.npassed}	eff: {pFoundTrack.npassed/(P.pTREF3.npassed+.0001):%5.3f}		BAD = ??
+pFound1Track:	 	   {pFound1Track.npassed}	eff: {pFound1Track.npassed/(P.pTREF3.npassed+.0001):%5.3f} 
+pFound2Track:	 	   {pFound2Track.npassed}	eff: {pFound2Track.npassed/(P.pTREF3.npassed+.0001):%5.3f} 
+pFound3Track:	 	   {pFound3Track.npassed}	eff: {pFound3Track.npassed/(P.pTREF3.npassed+.0001):%5.3f} 
+pFound4Track:	 	   {pFound4Track.npassed}	eff: {pFound4Track.npassed/(P.pTREF3.npassed+.0001):%5.3f} 
+
+pCleanTrack: 	 	   {pCleanTrack.npassed}	eff: {pCleanTrack.npassed/(P.pTREF3.npassed+.0001):%5.3f}		BAD = ??
+1pCleanTrack:	 	   {1pCleanTrack.npassed}	eff: {1pCleanTrack.npassed/(P.pTREF3.npassed+.0001):%5.3f} 
+2pCleanTrack:	 	   {2pCleanTrack.npassed}	eff: {2pCleanTrack.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+3pCleanTrack:	 	   {3pCleanTrack.npassed}	eff: {3pCleanTrack.npassed/(P.pTREF3.npassed+.0001):%5.3f}
+4pCleanTrack:	 	   {4pCleanTrack.npassed}	eff: {4pCleanTrack.npassed/(P.pTREF3.npassed+.0001):%5.3f}
 
 **CHERENKOVS AND CAL**
 cer_ng_elec:		{cer_ng_elec.npassed}
@@ -172,10 +142,39 @@ p1hit1_cer_elec:      	{p1hit1_cer_elec.npassed}
 pCleanTrack_cal_elec: 	{pCleanTrack_cal_elec.npassed} 
 p1hit1_cal_elec:      	{p1hit1_cal_elec.npassed}
 
+******************************
+* SHMS TRACKING EFFICIENCIES *
+******************************
+ptrig                          : {SHMS_event.npassed}
+phitslt = passed hits/cham     : {shmsHitsLt.npassed}
+phitsplanes = +planes >= 5/6   : {shmsHitsPlanes.npassed}
+phitsplanessps = + sps         : {pSpacePoints.npassed}
+phitsplanesspsstubs +stub      : {pSpacePointsStub.npassed}
+psfoundtrack                   : {pFoundTrack.npassed}
+pscleantrack                   : {pCleanTrack.npassed}
+pstublt = passed stub tests    : {pStubLT.npassed}
+p1hitslt                       : {shms1HitsLt.npassed}
+p2hitslt                       : {shms2HitsLt.npassed}
+p1planesgt                     : {shmsDC1PlanesGT.npassed}
+p2planesgt                     : {shmsDC2PlanesGT.npassed}
+pplanesgt = gt 5 planes/cham   : {shmsPlanesGT.npassed}
+f1pspacepoints                 : {f1PSpacePoints.npassed}
+f2pspacepoints                 : {f2PSpacePoints.npassed}
+ptest1=p hits/planes, f sp     : {pTest1.npassed}
+ptest2=p sp, f stubs           : {pTest2.npassed}
+pdid                           : {shmsScinDid.npassed}
+pdide                          : {shmsScinDide.npassed}
+pdidh                          : {shmsScinDidh.npassed}
+pscinshould                    : {shmsScinShould.npassed}
+pscinshoulde                   : {shmsScinShoulde.npassed}
+pscinshouldh                   : {shmsScinShouldh.npassed}
+SING FID TRACK EFFIC           : {shmsScinDid.npassed / (shmsScinShould.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShould.npassed-shmsScinDid.npassed) / (shmsScinShould.npassed+.0001)):%8.4f}
+E SING FID TRACK EFFIC         : {shmsScinDide.npassed / (shmsScinShoulde.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShoulde.npassed-shmsScinDide.npassed) / (shmsScinShoulde.npassed+.0001)):%8.4f}
+HADRON SING FID TRACK EFFIC    : {shmsScinDidh.npassed / (shmsScinShouldh.npassed+0.0001):%8.4f} +- {(sqrt(shmsScinShouldh.npassed-shmsScinDidh.npassed) / (shmsScinShouldh.npassed+.0001)):%8.4f}
+
 ************
 * HGC Cerenkov *
 ************
-
 Good Track Requirements:
    1. Only one track found in the focal plane
    2. chisq/dof < {phgcer_red_chi2_max:%5.1f}
@@ -208,6 +207,12 @@ Overall NGC Efficiency: {SHMS_ngcer_track_fired_tot.npassed/SHMS_ngcer_track_mat
 ************
 * Aerogel Cerenkov * Still need to add requirements for what constitutes a good track.
 ************
+Good Track Requirements:
+   1. Only one track found in the focal plane 
+   2. chisq/dof < {paero_red_chi2_max:%5.1f}
+   3. {paero_beta_min:%5.3f} < beta < {paero_beta_max:%5.3f}
+   4. {paero_enorm_min:%5.3f} < calorimeter energy < {paero_enorm_max:%5.3f}
+   5. {paero_dp_min:%5.3f} < delta p (dp) < {paero_dp_max:%5.3f} //added because paero_cuts.param has this as a cut 
 *AEROGEL EFF* 7 PMT pairs
 SHMS AERO Region 1 efficiency: {SHMS_aero_track_fired_region_1.npassed/SHMS_aero_track_matched_region_1.npassed} = {SHMS_aero_track_fired_region_1.npassed} of {SHMS_aero_track_matched_region_1.npassed} good tracks.
 SHMS AERO Region 2 efficiency: {SHMS_aero_track_fired_region_2.npassed/SHMS_aero_track_matched_region_2.npassed} = {SHMS_aero_track_fired_region_2.npassed} of {SHMS_aero_track_matched_region_2.npassed} good tracks.
@@ -242,138 +247,82 @@ Events examined = strig       = {shms_trigs.npassed}
 Tracks found    = scleantrack = {pCleanTrack.npassed}
 //Tracks passing chisquared cut = {pstat_numevents} (in previous template, do we still need this?)
 
-*HODO EFF* Need to checkout hodoeff module.
-Scint		Pos eff		Neg eff		OR eff		AND eff		 Hits
------------------------------------------------------------------------------------------------------
-P1X1+			 
-P1X2+
-P1X3+	
-P1X4+
-P1X5+
-P1X6+
-P1X7+
-P1X8+
-P1X9+
-P1X10+
-P1X11+
-P1X12+
-P1X13+
-
-P1X1-
-P1X2-
-P1X3-
-P1X4-
-P1X5-
-P1X6-
-P1X7-
-P1X8-
-P1X9-
-P1X10-
-P1X11-
-P1X12-
-P1X13-
-
-P1Y1+
-P1Y2+
-P1Y3+
-P1Y4+
-P1Y5+
-P1Y6+
-P1Y7+
-P1Y8+
-P1Y9+
-P1Y10+
-P1Y11+
-P1Y12+
-P1Y13+
-
-P1Y1-
-P1Y2-
-P1Y3-
-P1Y4-
-P1Y5-
-P1Y6-
-P1Y7-
-P1Y8-
-P1Y9-
-P1Y10-
-P1Y11-
-P1Y12-
-P1Y13-
-
-P2X1+
-P2X2+
-P2X3+
-P2X4+
-P2X5+
-P2X6+
-P2X7+
-P2X8+
-P2X9+
-P2X10+
-P2X11+
-P2X12+
-P2X13+
-P2X14+
-
-P2X1-
-P2X2-
-P2X3-
-P2X4-
-P2X5-
-P2X6-
-P2X7-
-P2X8-
-P2X9-
-P2X10-
-P2X11-
-P2X12-
-P2X13-
-P2X14-
-
-P2Y1+
-P2Y2+
-P2Y3+
-P2Y4+
-P2Y5+
-P2Y6+
-P2Y7+
-P2Y8+
-P2Y9+
-P2Y10+
-P2Y11+
-P2Y12+
-P2Y13+
-P2Y14+
-P2Y15+
-P2Y16+
-P2Y17+
-P2Y18+
-P2Y19+
-P2Y20+
-P2Y21+
-
-P2Y1-
-P2Y2-
-P2Y3-
-P2Y4-
-P2Y5-
-P2Y6-
-P2Y7-
-P2Y8-
-P2Y9-
-P2Y10-
-P2Y11-
-P2Y12-
-P2Y13-
-P2Y14-
-P2Y15-
-P2Y16-
-P2Y17-
-P2Y18-
-P2Y19-
-P2Y20-
-P2Y21-
+Plane 1: {phodo_plane_AND_eff[0]}
+Plane 2: {phodo_plane_AND_eff[1]}
+Plane 3: {phodo_plane_AND_eff[2]}
+Plane 4: {phodo_plane_AND_eff[3]}
+
+S1XY : {phodo_s1XY_eff}
+S2XY : {phodo_s2XY_eff}
 
+STOF: {phodo_stof_eff}
 
+3_of_4 EFF : {phodo_3_of_4_eff}
+4_of_4 EFF : {phodo_4_of_4_eff}
 
+Scint		Pos eff		Neg eff		OR eff		AND eff		 Hits
+-----------------------------------------------------------------------------------------------------------
+P1X1		{phodo_pos_eff[0]}		{phodo_neg_eff[0]}		 {phodo_or_eff[0]}		 {phodo_and_eff[0]}             {phodo_gold_hits[0]}
+P1X2		{phodo_pos_eff[4]}		{phodo_neg_eff[4]}	 	 {phodo_or_eff[4]}	 	 {phodo_and_eff[4]}	       {phodo_gold_hits[4]}
+P1X3	 	{phodo_pos_eff[8]}		{phodo_neg_eff[8]}		 {phodo_or_eff[8]}	 	 {phodo_and_eff[8]}  	       {phodo_gold_hits[8]}
+P1X4 	 	{phodo_pos_eff[12]}		{phodo_neg_eff[12]} 	 	 {phodo_or_eff[12]} 	 	 {phodo_and_eff[12]}	       {phodo_gold_hits[12]}
+P1X5	 	{phodo_pos_eff[16]}		{phodo_neg_eff[16]} 	 	 {phodo_or_eff[16]} 	 	 {phodo_and_eff[16]} 	       {phodo_gold_hits[16]}
+P1X6	 	{phodo_pos_eff[20]}		{phodo_neg_eff[20]} 	 	 {phodo_or_eff[20]} 	 	 {phodo_and_eff[20]} 	       {phodo_gold_hits[20]}
+P1X7 	 	{phodo_pos_eff[24]}  		{phodo_neg_eff[24]} 	 	 {phodo_or_eff[24]} 	 	 {phodo_and_eff[24]} 	       {phodo_gold_hits[24]}
+P1X8 	 	{phodo_pos_eff[28]} 		{phodo_neg_eff[28]} 	 	 {phodo_or_eff[28]} 	 	 {phodo_and_eff[28]} 	       {phodo_gold_hits[28]}
+P1X9 	 	{phodo_pos_eff[32]}		{phodo_neg_eff[32]} 	 	 {phodo_or_eff[32]} 	 	 {phodo_and_eff[32]} 	       {phodo_gold_hits[32]}
+P1X10 	 	{phodo_pos_eff[36]} 		{phodo_neg_eff[36]} 	 	 {phodo_or_eff[36]} 	 	 {phodo_and_eff[36]}	       {phodo_gold_hits[36]}
+P1X11	 	{phodo_pos_eff[40]} 		{phodo_neg_eff[40]} 	 	 {phodo_or_eff[40]} 	 	 {phodo_and_eff[40]} 	       {phodo_gold_hits[40]}
+P1X12	 	{phodo_pos_eff[44]} 		{phodo_neg_eff[44]} 	 	 {phodo_or_eff[44]} 	 	 {phodo_and_eff[44]} 	       {phodo_gold_hits[44]}
+P1X13 	 	{phodo_pos_eff[48]} 		{phodo_neg_eff[48]} 	 	 {phodo_or_eff[48]} 	 	 {phodo_and_eff[48]} 	       {phodo_gold_hits[48]}
+
+P1Y1 	 	{phodo_pos_eff[1]}		{phodo_neg_eff[1]} 	 	 {phodo_or_eff[1]}	 	 {phodo_and_eff[1]}	       {phodo_gold_hits[1]}
+P1Y2 	 	{phodo_pos_eff[5]} 		{phodo_neg_eff[5]} 	 	 {phodo_or_eff[5]} 	 	 {phodo_and_eff[5]} 	       {phodo_gold_hits[5]}
+P1Y3		{phodo_pos_eff[9]} 		{phodo_neg_eff[9]} 	 	 {phodo_or_eff[9]} 	 	 {phodo_and_eff[9]} 	       {phodo_gold_hits[9]}
+P1Y4   	 	{phodo_pos_eff[13]} 		{phodo_neg_eff[13]} 	 	 {phodo_or_eff[13]} 	 	 {phodo_and_eff[13]} 	       {phodo_gold_hits[13]}
+P1Y5 	 	{phodo_pos_eff[17]} 		{phodo_neg_eff[17]} 	 	 {phodo_or_eff[17]} 	 	 {phodo_and_eff[17]} 	       {phodo_gold_hits[17]}
+P1Y6 	 	{phodo_pos_eff[21]} 		{phodo_neg_eff[21]} 	 	 {phodo_or_eff[21]} 	 	 {phodo_and_eff[21]} 	       {phodo_gold_hits[21]}
+P1Y7 	 	{phodo_pos_eff[25]} 		{phodo_neg_eff[25]} 	 	 {phodo_or_eff[25]} 	 	 {phodo_and_eff[25]} 	       {phodo_gold_hits[25]}
+P1Y8 	 	{phodo_pos_eff[29]} 		{phodo_neg_eff[29]} 	 	 {phodo_or_eff[29]} 	 	 {phodo_and_eff[29]} 	       {phodo_gold_hits[29]}
+P1Y9 	 	{phodo_pos_eff[33]} 		{phodo_neg_eff[33]} 	 	 {phodo_or_eff[33]} 	 	 {phodo_and_eff[33]} 	       {phodo_gold_hits[33]}
+P1Y10 	 	{phodo_pos_eff[37]} 		{phodo_neg_eff[37]} 	 	 {phodo_or_eff[37]} 	 	 {phodo_and_eff[37]} 	       {phodo_gold_hits[37]}
+P1Y11 	 	{phodo_pos_eff[41]} 		{phodo_neg_eff[41]} 	 	 {phodo_or_eff[41]} 	 	 {phodo_and_eff[41]} 	       {phodo_gold_hits[41]}
+P1Y12 	 	{phodo_pos_eff[45]} 		{phodo_neg_eff[45]} 	 	 {phodo_or_eff[45]} 	 	 {phodo_and_eff[45]} 	       {phodo_gold_hits[45]}
+P1Y13 	 	{phodo_pos_eff[49]} 		{phodo_neg_eff[49]} 	 	 {phodo_or_eff[49]} 	 	 {phodo_and_eff[49]} 	       {phodo_gold_hits[49]}
+
+P2X1	 	{phodo_pos_eff[2]}	 	{phodo_neg_eff[2]}	 	 {phodo_or_eff[2]} 	 	 {phodo_and_eff[2]} 	       {phodo_gold_hits[2]}
+P2X2 	 	{phodo_pos_eff[6]}	 	{phodo_neg_eff[6]}	 	 {phodo_or_eff[6]}	 	 {phodo_and_eff[6]}	       {phodo_gold_hits[6]}
+P2X3 	 	{phodo_pos_eff[10]} 	 	{phodo_neg_eff[10]} 	 	 {phodo_or_eff[10]}	 	 {phodo_and_eff[10]} 	       {phodo_gold_hits[10]}
+P2X4 	 	{phodo_pos_eff[14]} 	 	{phodo_neg_eff[14]}	 	 {phodo_or_eff[14]} 	 	 {phodo_and_eff[14]} 	       {phodo_gold_hits[14]}
+P2X5 	 	{phodo_pos_eff[18]} 	 	{phodo_neg_eff[18]} 	 	 {phodo_or_eff[18]} 	 	 {phodo_and_eff[18]}	       {phodo_gold_hits[18]}
+P2X6 	 	{phodo_pos_eff[22]}	 	{phodo_neg_eff[22]}	 	 {phodo_or_eff[22]} 	 	 {phodo_and_eff[22]} 	       {phodo_gold_hits[22]}
+P2X7 	 	{phodo_pos_eff[26]} 	 	{phodo_neg_eff[26]}	 	 {phodo_or_eff[26]}	 	 {phodo_and_eff[26]}	       {phodo_gold_hits[26]}
+P2X8 	 	{phodo_pos_eff[30]} 	 	{phodo_neg_eff[30]}		 {phodo_or_eff[30]}      	 {phodo_and_eff[30]}	       {phodo_gold_hits[30]}
+P2X9 	 	{phodo_pos_eff[34]} 	 	{phodo_neg_eff[34]}		 {phodo_or_eff[34]}		 {phodo_and_eff[34]}	       {phodo_gold_hits[34]}
+P2X10	 	{phodo_pos_eff[38]}	 	{phodo_neg_eff[38]}		 {phodo_or_eff[38]}		 {phodo_and_eff[38]}	       {phodo_gold_hits[38]}
+P2X11 	 	{phodo_pos_eff[42]} 	 	{phodo_neg_eff[42]}		 {phodo_or_eff[42]}		 {phodo_and_eff[42]}	       {phodo_gold_hits[42]}
+P2X12 	 	{phodo_pos_eff[46]} 	 	{phodo_neg_eff[46]}		 {phodo_or_eff[46]}		 {phodo_and_eff[46]}	       {phodo_gold_hits[46]}
+P2X13 	 	{phodo_pos_eff[50]} 	 	{phodo_neg_eff[50]}		 {phodo_or_eff[50]}		 {phodo_and_eff[50]}	       {phodo_gold_hits[50]}
+P2X14 	 	{phodo_pos_eff[54]} 	 	{phodo_neg_eff[54]}		 {phodo_or_eff[54]}		 {phodo_and_eff[54]}	       {phodo_gold_hits[54]}
+
+P2Y1	 	{phodo_pos_eff[3]}	 	{phodo_neg_eff[3]}		 {phodo_or_eff[3]}       	 {phodo_and_eff[3]}	       {phodo_gold_hits[3]}
+P2Y2 	 	{phodo_pos_eff[7]}	 	{phodo_neg_eff[7]} 	 	 {phodo_or_eff[7]} 	 	 {phodo_and_eff[7]}    	       {phodo_gold_hits[7]}
+P2Y3 	 	{phodo_pos_eff[11]} 	 	{phodo_neg_eff[11]}	 	 {phodo_or_eff[11]} 	 	 {phodo_and_eff[11]}	       {phodo_gold_hits[11]}
+P2Y4 	 	{phodo_pos_eff[15]} 	 	{phodo_neg_eff[15]} 	 	 {phodo_or_eff[15]} 	 	 {phodo_and_eff[15]}	       {phodo_gold_hits[15]}
+P2Y5 	 	{phodo_pos_eff[19]} 	 	{phodo_neg_eff[19]}	 	 {phodo_or_eff[19]} 	 	 {phodo_and_eff[19]}	       {phodo_gold_hits[19]}
+P2Y6 	 	{phodo_pos_eff[23]} 	 	{phodo_neg_eff[23]} 	 	 {phodo_or_eff[23]} 	 	 {phodo_and_eff[23]}	       {phodo_gold_hits[23]}
+P2Y7 	 	{phodo_pos_eff[27]} 	 	{phodo_neg_eff[27]} 	 	 {phodo_or_eff[27]} 	 	 {phodo_and_eff[27]}	       {phodo_gold_hits[27]}
+P2Y8 	 	{phodo_pos_eff[31]} 	 	{phodo_neg_eff[31]} 	 	 {phodo_or_eff[31]} 	 	 {phodo_and_eff[31]}	       {phodo_gold_hits[31]}
+P2Y9 	 	{phodo_pos_eff[35]} 	 	{phodo_neg_eff[35]} 	 	 {phodo_or_eff[35]} 	 	 {phodo_and_eff[35]}	       {phodo_gold_hits[35]}
+P2Y10 	 	{phodo_pos_eff[39]} 	 	{phodo_neg_eff[39]} 	 	 {phodo_or_eff[39]} 	 	 {phodo_and_eff[39]}	       {phodo_gold_hits[39]}
+P2Y11 	 	{phodo_pos_eff[43]} 	 	{phodo_neg_eff[43]} 	 	 {phodo_or_eff[43]} 	 	 {phodo_and_eff[43]}	       {phodo_gold_hits[43]}
+P2Y12 	 	{phodo_pos_eff[47]} 	 	{phodo_neg_eff[47]} 	 	 {phodo_or_eff[47]} 	 	 {phodo_and_eff[47]}	       {phodo_gold_hits[47]}
+P2Y13 	 	{phodo_pos_eff[51]} 	 	{phodo_neg_eff[51]} 	 	 {phodo_or_eff[51]} 	 	 {phodo_and_eff[51]}	       {phodo_gold_hits[51]}
+P2Y14 	 	{phodo_pos_eff[55]} 	 	{phodo_neg_eff[55]} 	 	 {phodo_or_eff[55]} 	 	 {phodo_and_eff[55]}	       {phodo_gold_hits[55]}
+P2Y15 	 	{phodo_pos_eff[59]} 	 	{phodo_neg_eff[59]} 	 	 {phodo_or_eff[59]} 	 	 {phodo_and_eff[59]}	       {phodo_gold_hits[59]}
+P2Y16 	 	{phodo_pos_eff[63]} 	 	{phodo_neg_eff[63]} 	 	 {phodo_or_eff[63]}	 	 {phodo_and_eff[63]}	       {phodo_gold_hits[63]}
+P2Y17 	 	{phodo_pos_eff[67]} 	 	{phodo_neg_eff[67]} 	 	 {phodo_or_eff[67]} 	 	 {phodo_and_eff[67]}	       {phodo_gold_hits[67]}
+P2Y18 	 	{phodo_pos_eff[71]} 	 	{phodo_neg_eff[71]} 	 	 {phodo_or_eff[71]} 	 	 {phodo_and_eff[71]}	       {phodo_gold_hits[71]}
+P2Y19 	 	{phodo_pos_eff[75]} 	 	{phodo_neg_eff[75]} 	 	 {phodo_or_eff[75]} 	 	 {phodo_and_eff[75]}	       {phodo_gold_hits[75]}
+P2Y20 	 	{phodo_pos_eff[79]} 	 	{phodo_neg_eff[79]} 	 	 {phodo_or_eff[79]} 	 	 {phodo_and_eff[79]}	       {phodo_gold_hits[79]}
+P2Y21 	 	{phodo_pos_eff[83]} 	 	{phodo_neg_eff[83]}	 	 {phodo_or_eff[83]} 	 	 {phodo_and_eff[83]}	       {phodo_gold_hits[83]}
\ No newline at end of file
-- 
GitLab