diff --git a/Calorimeter/CaloRec/python/CaloTopoClusterConfig.py b/Calorimeter/CaloRec/python/CaloTopoClusterConfig.py
index 77cf8db914550b82f8967ed311bb3b41b2e481bc..dc0cfdacee61449f64d4577f43fbdbf47c5da635 100644
--- a/Calorimeter/CaloRec/python/CaloTopoClusterConfig.py
+++ b/Calorimeter/CaloRec/python/CaloTopoClusterConfig.py
@@ -2,6 +2,473 @@
 
 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
 from AthenaCommon.SystemOfUnits import MeV
+from AthenaCommon.Constants import VERBOSE
+
+def caloTopoCoolFolderCfg(configFlags):
+    result=ComponentAccumulator()
+    from IOVDbSvc.IOVDbSvcConfig import addFolders, IOVDbSvcCfg
+    result.mergeAll(IOVDbSvcCfg(configFlags))
+    # rely on global tag for both MC and data; do not specify folder tags
+    # use CALO_OFL only for GEO>=18
+    hadCalibFolders = [
+        "HadCalibration2/CaloEMFrac",
+        "HadCalibration2/H1ClusterCellWeights",
+        "HadCalibration2/CaloOutOfCluster",
+        "HadCalibration2/CaloOutOfClusterPi0",
+        "HadCalibration2/CaloDMCorr2"
+        ]
+    hadCalibPrefix = "/CALO/"
+    hadCalibDB = "CALO_ONL"
+    if configFlags.Input.isMC:
+        hadCalibPrefix = "/CALO/Ofl/"
+        hadCalibDB = "CALO_OFL"
+    hadCalibFolders = [ hadCalibPrefix + foldername for foldername in hadCalibFolders ]
+    result.merge(addFolders(configFlags, hadCalibFolders, hadCalibDB, className="CaloLocalHadCoeff"))
+
+    return result
+
+def getTopoClusterLocalCalibTools(configFlags, theCaloNoiseTool):
+    from CaloUtils.CaloUtilsConf import CaloLCClassificationTool, CaloLCWeightTool, CaloLCOutOfClusterTool, CaloLCDeadMaterialTool
+    from CaloClusterCorrection.CaloClusterCorrectionConf import CaloClusterLocalCalib
+    # Local cell weights
+    LCClassify   = CaloLCClassificationTool("LCClassify")
+    LCClassify.ClassificationKey   = "EMFracClassify"
+    LCClassify.UseSpread = False
+    LCClassify.MaxProbability = 0.5
+    # add the moments EM_PROBABILITY, HAD_WEIGHT, OOC_WEIGHT, DM_WEIGHT to the AOD:
+    LCClassify.StoreClassificationProbabilityInAOD = True
+    LCClassify.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    LCWeight = CaloLCWeightTool("LCWeight")
+    LCWeight.CorrectionKey       = "H1ClusterCellWeights"
+    LCWeight.SignalOverNoiseCut  = 2.0
+    # *****
+    # Needs calo noise tool config
+    LCWeight.CaloNoiseTool       = theCaloNoiseTool
+    # *****
+    LCWeight.UseHadProbability   = True
+
+    LocalCalib = CaloClusterLocalCalib ("LocalCalib")
+    LocalCalib.ClusterClassificationTool     = [LCClassify]
+    LocalCalib.ClusterRecoStatus             = [1,2]
+    LocalCalib.LocalCalibTools               = [LCWeight]
+    LocalCalib.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    # Out-of-cluster corrections
+    LCOut     = CaloLCOutOfClusterTool("LCOut")
+    LCOut.CorrectionKey       = "OOCCorrection"
+    LCOut.UseEmProbability    = False
+    LCOut.UseHadProbability   = True
+
+    OOCCalib   = CaloClusterLocalCalib ("OOCCalib")
+    OOCCalib.ClusterRecoStatus   = [1,2]
+    OOCCalib.LocalCalibTools     = [LCOut]
+    OOCCalib.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    LCOutPi0  = CaloLCOutOfClusterTool("LCOutPi0")
+    LCOutPi0.CorrectionKey    = "OOCPi0Correction"
+    LCOutPi0.UseEmProbability  = True
+    LCOutPi0.UseHadProbability = False
+
+    OOCPi0Calib   = CaloClusterLocalCalib ("OOCPi0Calib")
+    OOCPi0Calib.ClusterRecoStatus   = [1,2]
+    OOCPi0Calib.LocalCalibTools     = [LCOutPi0]
+
+    OOCPi0Calib.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    # Dead material corrections
+    LCDeadMaterial   = CaloLCDeadMaterialTool("LCDeadMaterial")
+    LCDeadMaterial.HadDMCoeffKey       = "HadDMCoeff2"
+    LCDeadMaterial.ClusterRecoStatus   = 0
+    LCDeadMaterial.WeightModeDM        = 2 
+    LCDeadMaterial.UseHadProbability   = True
+    LCDeadMaterial.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    DMCalib    = CaloClusterLocalCalib ("DMCalib")
+    DMCalib.ClusterRecoStatus   = [1,2]
+    DMCalib.LocalCalibTools      = [LCDeadMaterial]
+
+    DMCalib.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    lccalibtools = [
+        LocalCalib,
+        OOCCalib,
+        OOCPi0Calib,
+        DMCalib]
+    return lccalibtools
+
+def getTopoMoments(configFlags,theCaloNoiseTool):
+    from CaloRec.CaloRecConf import CaloClusterMomentsMaker
+    TopoMoments = CaloClusterMomentsMaker ("TopoMoments")
+    TopoMoments.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+    from AthenaCommon.SystemOfUnits import deg
+    TopoMoments.MaxAxisAngle = 20*deg
+    TopoMoments.CaloNoiseTool = theCaloNoiseTool
+    TopoMoments.UsePileUpNoise = True
+    TopoMoments.TwoGaussianNoise = configFlags.Calo.TopoCluster.doTwoGaussianNoise
+    TopoMoments.MinBadLArQuality = 4000
+    TopoMoments.MomentsNames = ["FIRST_PHI" 
+                                ,"FIRST_ETA"
+                                ,"SECOND_R" 
+                                ,"SECOND_LAMBDA"
+                                ,"DELTA_PHI"
+                                ,"DELTA_THETA"
+                                ,"DELTA_ALPHA" 
+                                ,"CENTER_X"
+                                ,"CENTER_Y"
+                                ,"CENTER_Z"
+                                ,"CENTER_MAG"
+                                ,"CENTER_LAMBDA"
+                                ,"LATERAL"
+                                ,"LONGITUDINAL"
+                                ,"FIRST_ENG_DENS" 
+                                ,"ENG_FRAC_EM" 
+                                ,"ENG_FRAC_MAX" 
+                                ,"ENG_FRAC_CORE" 
+                                ,"FIRST_ENG_DENS" 
+                                ,"SECOND_ENG_DENS" 
+                                ,"ISOLATION"
+                                ,"ENG_BAD_CELLS"
+                                ,"N_BAD_CELLS"
+                                ,"N_BAD_CELLS_CORR"
+                                ,"BAD_CELLS_CORR_E"
+                                ,"BADLARQ_FRAC"
+                                ,"ENG_POS"
+                                ,"SIGNIFICANCE"
+                                ,"CELL_SIGNIFICANCE"
+                                ,"CELL_SIG_SAMPLING"
+                                ,"AVG_LAR_Q"
+                                ,"AVG_TILE_Q"
+                                ,"PTD"
+                                ,"MASS"
+                                ]
+
+    # *****
+    # Is this still right?
+    # only add HV related moments if it is offline.
+    # from IOVDbSvc.CondDB import conddb
+    # if not conddb.isOnline:
+    from LArCellRec.LArCellRecConf import LArHVFraction
+    if configFlags.Input.isMC:
+        TopoMoments.LArHVFraction=LArHVFraction(HVScaleCorrKey="LArHVScaleCorr")
+    else:
+        TopoMoments.LArHVFraction=LArHVFraction(HVScaleCorrKey="LArHVScaleCorrRecomputed")
+    TopoMoments.MomentsNames += ["ENG_BAD_HV_CELLS"
+                                 ,"N_BAD_HV_CELLS"
+                                 ]
+
+    return TopoMoments
+
+# a.k.a. DigiTruth
+def getTopoTruthMoments(configFlags,theCaloNoiseTool):
+    from CaloRec.CaloRecConf import CaloClusterMomentsMaker
+    TopoMoments_Truth = CaloClusterMomentsMaker_DigiHSTruth ("TopoMoments_Truth")
+    from LArCellRec.LArCellRecConf import LArHVFraction
+    TopoMoments_Truth.LArHVFraction=LArHVFraction(HVScaleCorrKey="LArHVScaleCorr")
+    TopoMoments_Truth.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+    from AthenaCommon.SystemOfUnits import deg
+    TopoMoments_Truth.MaxAxisAngle = 20*deg
+    TopoMoments_Truth.CaloNoiseTool = theCaloNoiseTool
+    TopoMoments_Truth.UsePileUpNoise = True
+    TopoMoments_Truth.TwoGaussianNoise = configFlags.Calo,TopoCluster.doTwoGaussianNoise
+    TopoMoments_Truth.MinBadLArQuality = 4000
+    TopoMoments_Truth.MomentsNames = ["FIRST_PHI_DigiHSTruth"
+                                      ,"FIRST_ETA_DigiHSTruth"
+                                      ,"SECOND_R_DigiHSTruth"
+                                      ,"SECOND_LAMBDA_DigiHSTruth"
+                                      ,"DELTA_PHI_DigiHSTruth"
+                                      ,"DELTA_THETA_DigiHSTruth"
+                                      ,"DELTA_ALPHA_DigiHSTruth"
+                                      ,"CENTER_X_DigiHSTruth"
+                                      ,"CENTER_Y_DigiHSTruth"
+                                      ,"CENTER_Z_DigiHSTruth"
+                                      ,"CENTER_MAG_DigiHSTruth"
+                                      ,"CENTER_LAMBDA_DigiHSTruth"
+                                      ,"LATERAL_DigiHSTruth"
+                                      ,"LONGITUDINAL_DigiHSTruth"
+                                      ,"ENG_FRAC_CORE_DigiHSTruth"
+                                      ,"FIRST_ENG_DENS_DigiHSTruth"
+                                      ,"SECOND_ENG_DENS_DigiHSTruth"
+                                      ,"ISOLATION_DigiHSTruth"
+                                      ,"BAD_CELLS_CORR_E_DigiHSTruth"
+                                      ,"ENG_POS_DigiHSTruth"
+                                      ,"SIGNIFICANCE_DigiHSTruth"
+                                      ,"CELL_SIGNIFICANCE_DigiHSTruth"
+                                      ,"CELL_SIG_SAMPLING_DigiHSTruth"
+                                      ,"AVG_LAR_Q_DigiHSTruth"
+                                      ,"AVG_TILE_Q_DigiHSTruth"
+                                      ,"ENERGY_DigiHSTruth"
+                                      ,"PHI_DigiHSTruth"
+                                      ,"ETA_DigiHSTruth"
+                                      ]
+    return TopoMoments_Truth
+
+def getTopoCalibMoments(configFlags):
+    from CaloCalibHitRec.CaloCalibHitRecConf import CaloCalibClusterMomentsMaker2
+    TopoCalibMoments = CaloCalibClusterMomentsMaker2 ("TopoCalibMoments")
+    TopoCalibMoments.MomentsNames = ["ENG_CALIB_TOT"
+                                     ,"ENG_CALIB_OUT_L"
+                                     #,"ENG_CALIB_OUT_M"
+                                     # ,"ENG_CALIB_OUT_T"
+                                     # ,"ENG_CALIB_DEAD_L"
+                                     # ,"ENG_CALIB_DEAD_M"
+                                     # ,"ENG_CALIB_DEAD_T"
+                                     ,"ENG_CALIB_EMB0"
+                                     ,"ENG_CALIB_EME0"
+                                     ,"ENG_CALIB_TILEG3"
+                                     ,"ENG_CALIB_DEAD_TOT"
+                                     ,"ENG_CALIB_DEAD_EMB0"
+                                     ,"ENG_CALIB_DEAD_TILE0"
+                                     ,"ENG_CALIB_DEAD_TILEG3"
+                                     ,"ENG_CALIB_DEAD_EME0"
+                                     ,"ENG_CALIB_DEAD_HEC0"
+                                     ,"ENG_CALIB_DEAD_FCAL"
+                                     ,"ENG_CALIB_DEAD_LEAKAGE"
+                                     ,"ENG_CALIB_DEAD_UNCLASS"
+                                     ,"ENG_CALIB_FRAC_EM"
+                                     ,"ENG_CALIB_FRAC_HAD"
+                                     ,"ENG_CALIB_FRAC_REST"]
+    
+    TopoCalibMoments.CalibrationHitContainerNames = ["LArCalibrationHitInactive"
+                                                     ,"LArCalibrationHitActive"
+                                                     ,"TileCalibHitActiveCell"
+                                                     ,"TileCalibHitInactiveCell"]
+    TopoCalibMoments.DMCalibrationHitContainerNames = ["LArCalibrationHitDeadMaterial"
+                                                       ,"TileCalibHitDeadMaterial"]
+    return TopoCalibMOments
+
+def caloTopoCoolFolderCfg(configFlags):
+    result=ComponentAccumulator()
+    from IOVDbSvc.IOVDbSvcConfig import addFolders, IOVDbSvcCfg
+    result.mergeAll(IOVDbSvcCfg(configFlags))
+    # rely on global tag for both MC and data; do not specify folder tags
+    # use CALO_OFL only for GEO>=18
+    hadCalibFolders = [
+        "HadCalibration2/CaloEMFrac",
+        "HadCalibration2/H1ClusterCellWeights",
+        "HadCalibration2/CaloOutOfCluster",
+        "HadCalibration2/CaloOutOfClusterPi0",
+        "HadCalibration2/CaloDMCorr2"
+        ]
+    hadCalibPrefix = "/CALO/"
+    hadCalibDB = "CALO_ONL"
+    if configFlags.Input.isMC:
+        hadCalibPrefix = "/CALO/Ofl/"
+        hadCalibDB = "CALO_OFL"
+    hadCalibFolders = [ hadCalibPrefix + foldername for foldername in hadCalibFolders ]
+    result.merge(addFolders(configFlags, hadCalibFolders, hadCalibDB, className="CaloLocalHadCoeff"))
+
+    return result
+
+def getTopoClusterLocalCalibTools(configFlags, theCaloNoiseTool):
+    from CaloUtils.CaloUtilsConf import CaloLCClassificationTool, CaloLCWeightTool, CaloLCOutOfClusterTool, CaloLCDeadMaterialTool
+    from CaloClusterCorrection.CaloClusterCorrectionConf import CaloClusterLocalCalib
+    # Local cell weights
+    LCClassify   = CaloLCClassificationTool("LCClassify")
+    LCClassify.ClassificationKey   = "EMFracClassify"
+    LCClassify.UseSpread = False
+    LCClassify.MaxProbability = 0.5
+    # add the moments EM_PROBABILITY, HAD_WEIGHT, OOC_WEIGHT, DM_WEIGHT to the AOD:
+    LCClassify.StoreClassificationProbabilityInAOD = True
+    LCClassify.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    LCWeight = CaloLCWeightTool("LCWeight")
+    LCWeight.CorrectionKey       = "H1ClusterCellWeights"
+    LCWeight.SignalOverNoiseCut  = 2.0
+    # *****
+    # Needs calo noise tool config
+    LCWeight.CaloNoiseTool       = theCaloNoiseTool
+    # *****
+    LCWeight.UseHadProbability   = True
+
+    LocalCalib = CaloClusterLocalCalib ("LocalCalib")
+    LocalCalib.ClusterClassificationTool     = [LCClassify]
+    LocalCalib.ClusterRecoStatus             = [1,2]
+    LocalCalib.LocalCalibTools               = [LCWeight]
+    LocalCalib.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    # Out-of-cluster corrections
+    LCOut     = CaloLCOutOfClusterTool("LCOut")
+    LCOut.CorrectionKey       = "OOCCorrection"
+    LCOut.UseEmProbability    = False
+    LCOut.UseHadProbability   = True
+
+    OOCCalib   = CaloClusterLocalCalib ("OOCCalib")
+    OOCCalib.ClusterRecoStatus   = [1,2]
+    OOCCalib.LocalCalibTools     = [LCOut]
+    OOCCalib.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    LCOutPi0  = CaloLCOutOfClusterTool("LCOutPi0")
+    LCOutPi0.CorrectionKey    = "OOCPi0Correction"
+    LCOutPi0.UseEmProbability  = True
+    LCOutPi0.UseHadProbability = False
+
+    OOCPi0Calib   = CaloClusterLocalCalib ("OOCPi0Calib")
+    OOCPi0Calib.ClusterRecoStatus   = [1,2]
+    OOCPi0Calib.LocalCalibTools     = [LCOutPi0]
+
+    OOCPi0Calib.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    # Dead material corrections
+    LCDeadMaterial   = CaloLCDeadMaterialTool("LCDeadMaterial")
+    LCDeadMaterial.HadDMCoeffKey       = "HadDMCoeff2"
+    LCDeadMaterial.ClusterRecoStatus   = 0
+    LCDeadMaterial.WeightModeDM        = 2 
+    LCDeadMaterial.UseHadProbability   = True
+    LCDeadMaterial.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    DMCalib    = CaloClusterLocalCalib ("DMCalib")
+    DMCalib.ClusterRecoStatus   = [1,2]
+    DMCalib.LocalCalibTools      = [LCDeadMaterial]
+
+    DMCalib.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+
+    lccalibtools = [
+        LocalCalib,
+        OOCCalib,
+        OOCPi0Calib,
+        DMCalib]
+    return lccalibtools
+
+def getTopoMoments(configFlags,theCaloNoiseTool):
+    from CaloRec.CaloRecConf import CaloClusterMomentsMaker
+    TopoMoments = CaloClusterMomentsMaker ("TopoMoments")
+    TopoMoments.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+    from AthenaCommon.SystemOfUnits import deg
+    TopoMoments.MaxAxisAngle = 20*deg
+    TopoMoments.CaloNoiseTool = theCaloNoiseTool
+    TopoMoments.UsePileUpNoise = True
+    TopoMoments.TwoGaussianNoise = configFlags.Calo.TopoCluster.doTwoGaussianNoise
+    TopoMoments.MinBadLArQuality = 4000
+    TopoMoments.MomentsNames = ["FIRST_PHI" 
+                                ,"FIRST_ETA"
+                                ,"SECOND_R" 
+                                ,"SECOND_LAMBDA"
+                                ,"DELTA_PHI"
+                                ,"DELTA_THETA"
+                                ,"DELTA_ALPHA" 
+                                ,"CENTER_X"
+                                ,"CENTER_Y"
+                                ,"CENTER_Z"
+                                ,"CENTER_MAG"
+                                ,"CENTER_LAMBDA"
+                                ,"LATERAL"
+                                ,"LONGITUDINAL"
+                                ,"FIRST_ENG_DENS" 
+                                ,"ENG_FRAC_EM" 
+                                ,"ENG_FRAC_MAX" 
+                                ,"ENG_FRAC_CORE" 
+                                ,"FIRST_ENG_DENS" 
+                                ,"SECOND_ENG_DENS" 
+                                ,"ISOLATION"
+                                ,"ENG_BAD_CELLS"
+                                ,"N_BAD_CELLS"
+                                ,"N_BAD_CELLS_CORR"
+                                ,"BAD_CELLS_CORR_E"
+                                ,"BADLARQ_FRAC"
+                                ,"ENG_POS"
+                                ,"SIGNIFICANCE"
+                                ,"CELL_SIGNIFICANCE"
+                                ,"CELL_SIG_SAMPLING"
+                                ,"AVG_LAR_Q"
+                                ,"AVG_TILE_Q"
+                                ,"PTD"
+                                ,"MASS"
+                                ]
+
+    # *****
+    # Is this still right?
+    # only add HV related moments if it is offline.
+    # from IOVDbSvc.CondDB import conddb
+    # if not conddb.isOnline:
+    from LArCellRec.LArCellRecConf import LArHVFraction
+    if configFlags.Input.isMC:
+        TopoMoments.LArHVFraction=LArHVFraction(HVScaleCorrKey="LArHVScaleCorr")
+    else:
+        TopoMoments.LArHVFraction=LArHVFraction(HVScaleCorrKey="LArHVScaleCorrRecomputed")
+    TopoMoments.MomentsNames += ["ENG_BAD_HV_CELLS"
+                                 ,"N_BAD_HV_CELLS"
+                                 ]
+
+    return TopoMoments
+
+# a.k.a. DigiTruth
+def getTopoTruthMoments(configFlags,theCaloNoiseTool):
+    from CaloRec.CaloRecConf import CaloClusterMomentsMaker
+    TopoMoments_Truth = CaloClusterMomentsMaker_DigiHSTruth ("TopoMoments_Truth")
+    from LArCellRec.LArCellRecConf import LArHVFraction
+    TopoMoments_Truth.LArHVFraction=LArHVFraction(HVScaleCorrKey="LArHVScaleCorr")
+    TopoMoments_Truth.WeightingOfNegClusters = configFlags.Calo.TopoCluster.doTreatEnergyCutAsAbsolute
+    from AthenaCommon.SystemOfUnits import deg
+    TopoMoments_Truth.MaxAxisAngle = 20*deg
+    TopoMoments_Truth.CaloNoiseTool = theCaloNoiseTool
+    TopoMoments_Truth.UsePileUpNoise = True
+    TopoMoments_Truth.TwoGaussianNoise = configFlags.Calo,TopoCluster.doTwoGaussianNoise
+    TopoMoments_Truth.MinBadLArQuality = 4000
+    TopoMoments_Truth.MomentsNames = ["FIRST_PHI_DigiHSTruth"
+                                      ,"FIRST_ETA_DigiHSTruth"
+                                      ,"SECOND_R_DigiHSTruth"
+                                      ,"SECOND_LAMBDA_DigiHSTruth"
+                                      ,"DELTA_PHI_DigiHSTruth"
+                                      ,"DELTA_THETA_DigiHSTruth"
+                                      ,"DELTA_ALPHA_DigiHSTruth"
+                                      ,"CENTER_X_DigiHSTruth"
+                                      ,"CENTER_Y_DigiHSTruth"
+                                      ,"CENTER_Z_DigiHSTruth"
+                                      ,"CENTER_MAG_DigiHSTruth"
+                                      ,"CENTER_LAMBDA_DigiHSTruth"
+                                      ,"LATERAL_DigiHSTruth"
+                                      ,"LONGITUDINAL_DigiHSTruth"
+                                      ,"ENG_FRAC_CORE_DigiHSTruth"
+                                      ,"FIRST_ENG_DENS_DigiHSTruth"
+                                      ,"SECOND_ENG_DENS_DigiHSTruth"
+                                      ,"ISOLATION_DigiHSTruth"
+                                      ,"BAD_CELLS_CORR_E_DigiHSTruth"
+                                      ,"ENG_POS_DigiHSTruth"
+                                      ,"SIGNIFICANCE_DigiHSTruth"
+                                      ,"CELL_SIGNIFICANCE_DigiHSTruth"
+                                      ,"CELL_SIG_SAMPLING_DigiHSTruth"
+                                      ,"AVG_LAR_Q_DigiHSTruth"
+                                      ,"AVG_TILE_Q_DigiHSTruth"
+                                      ,"ENERGY_DigiHSTruth"
+                                      ,"PHI_DigiHSTruth"
+                                      ,"ETA_DigiHSTruth"
+                                      ]
+    return TopoMoments_Truth
+
+def getTopoCalibMoments(configFlags):
+    from CaloCalibHitRec.CaloCalibHitRecConf import CaloCalibClusterMomentsMaker2
+    TopoCalibMoments = CaloCalibClusterMomentsMaker2 ("TopoCalibMoments")
+    TopoCalibMoments.MomentsNames = ["ENG_CALIB_TOT"
+                                     ,"ENG_CALIB_OUT_L"
+                                     #,"ENG_CALIB_OUT_M"
+                                     # ,"ENG_CALIB_OUT_T"
+                                     # ,"ENG_CALIB_DEAD_L"
+                                     # ,"ENG_CALIB_DEAD_M"
+                                     # ,"ENG_CALIB_DEAD_T"
+                                     ,"ENG_CALIB_EMB0"
+                                     ,"ENG_CALIB_EME0"
+                                     ,"ENG_CALIB_TILEG3"
+                                     ,"ENG_CALIB_DEAD_TOT"
+                                     ,"ENG_CALIB_DEAD_EMB0"
+                                     ,"ENG_CALIB_DEAD_TILE0"
+                                     ,"ENG_CALIB_DEAD_TILEG3"
+                                     ,"ENG_CALIB_DEAD_EME0"
+                                     ,"ENG_CALIB_DEAD_HEC0"
+                                     ,"ENG_CALIB_DEAD_FCAL"
+                                     ,"ENG_CALIB_DEAD_LEAKAGE"
+                                     ,"ENG_CALIB_DEAD_UNCLASS"
+                                     ,"ENG_CALIB_FRAC_EM"
+                                     ,"ENG_CALIB_FRAC_HAD"
+                                     ,"ENG_CALIB_FRAC_REST"]
+    
+    TopoCalibMoments.CalibrationHitContainerNames = ["LArCalibrationHitInactive"
+                                                     ,"LArCalibrationHitActive"
+                                                     ,"TileCalibHitActiveCell"
+                                                     ,"TileCalibHitInactiveCell"]
+    TopoCalibMoments.DMCalibrationHitContainerNames = ["LArCalibrationHitDeadMaterial"
+                                                       ,"TileCalibHitDeadMaterial"]
+    return TopoCalibMOments
 
 def CaloTopoClusterCfg(configFlags):
     result=ComponentAccumulator()
@@ -16,14 +483,23 @@ def CaloTopoClusterCfg(configFlags):
     from CaloClusterCorrection.CaloClusterCorrectionConf import CaloClusterCellWeightCalib
     from CaloRec.CaloRecConf import CaloTopoClusterMaker, CaloTopoClusterSplitter, CaloClusterMomentsMaker, CaloClusterMaker, CaloClusterSnapshot #, CaloClusterLockVars, CaloClusterPrinter
 
-    
     result.merge(LArGMCfg(configFlags))
+
+    from LArBadChannelTool.LArBadChannelConfig import LArBadChannelCfg
+    result.merge(LArBadChannelCfg(configFlags))
+    from LArCalibUtils.LArHVScaleConfig import LArHVScaleCfg
+    result.merge(LArHVScaleCfg(configFlags))
+
     result.merge(TileGMCfg(configFlags))
+    from TileConditions.TileConditionsConfig import tileCondCfg
+    result.merge(tileCondCfg(configFlags))
 
     #Get CaloNoiseTool
     acc=CaloNoiseToolCfg(configFlags)
     theCaloNoiseTool=acc.getPublicTool("CaloNoiseTool")
     result.merge(acc)
+    
+    theCaloClusterSnapshot=CaloClusterSnapshot(OutputName="CaloTopoCluster",SetCrossLinks=True)
 
     # maker tools
     TopoMaker = CaloTopoClusterMaker("TopoMaker")
@@ -93,10 +569,26 @@ def CaloTopoClusterCfg(configFlags):
         
 
     CaloTopoCluster=CaloClusterMaker("CaloTopoCluster")
-    CaloTopoCluster.ClustersOutputName="CaloCalTopoClusters"   
+    CaloTopoCluster.ClustersOutputName="CaloTopoClusters"
+    if configFlags.Calo.TopoCluster.doTopoClusterLocalCalib:
+        CaloTopoCluster.ClustersOutputName="CaloCalTopoClusters"
 
     CaloTopoCluster.ClusterMakerTools = [TopoMaker, TopoSplitter]
     
+    from CaloClusterCorrection.CaloClusterBadChannelListCorr import CaloClusterBadChannelListCorr
+    BadChannelListCorr = CaloClusterBadChannelListCorr()
+    CaloTopoCluster.ClusterCorrectionTools += [BadChannelListCorr]
+
+    CaloTopoCluster.ClusterCorrectionTools += [getTopoMoments(configFlags,theCaloNoiseTool)]
+
+    CaloTopoCluster.ClusterCorrectionTools += [theCaloClusterSnapshot]
+
+    if configFlags.Calo.TopoCluster.doTopoClusterLocalCalib:
+        CaloTopoCluster.ClustersOutputName="CaloCalTopoClusters"
+        CaloTopoCluster.ClusterCorrectionTools += getTopoClusterLocalCalibTools(configFlags,theCaloNoiseTool)
+
+        result.merge(caloTopoCoolFolderCfg(configFlags))
+
     return result,CaloTopoCluster
 
 
@@ -110,18 +602,25 @@ if __name__=="__main__":
     from AthenaConfiguration.AllConfigFlags import ConfigFlags
     from AthenaConfiguration.TestDefaults import defaultTestFiles
 
-    log.setLevel(DEBUG)
+    #log.setLevel(DEBUG)
+
+    nThreads=1
+    ConfigFlags.Concurrency.NumThreads = nThreads
+    if nThreads>0:
+        ConfigFlags.Scheduler.ShowDataDeps = True
+        ConfigFlags.Scheduler.ShowDataFlow = True
+        ConfigFlags.Scheduler.ShowControlFlow = True
+        ConfigFlags.Concurrency.NumConcurrentEvents = nThreads
 
     #ConfigFlags.Input.isMC = False
     ConfigFlags.Input.Files = ConfigFlags.Input.Files = defaultTestFiles.ESD
     ConfigFlags.Output.ESDFileName= "esdOut.pool.root"
     ConfigFlags.lock()
 
-    from AthenaConfiguration.MainServicesConfig import MainServicesSerialCfg 
+    from AthenaConfiguration.MainServicesConfig import MainServicesThreadedCfg 
     from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg
 
-
-    cfg=MainServicesSerialCfg() 
+    cfg=MainServicesThreadedCfg(ConfigFlags)
     cfg.merge(PoolReadCfg(ConfigFlags))
     
     theKey="CaloCalTopoClustersNew"
@@ -133,14 +632,28 @@ if __name__=="__main__":
     cfg.addEventAlgo(topoAlg,sequenceName="AthAlgSeq")
 
     from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
-    cfg.merge(OutputStreamCfg(ConfigFlags,"ESD", ItemList=["xAOD::CaloClusterContainer#"+theKey,
-                                                            "xAOD::CaloClusterAuxContainer#"+theKey+"Aux.",
-                                                            "CaloClusterCellLinkContainer#"+theKey+"_links"]))
+    cfg.merge(OutputStreamCfg(ConfigFlags,"xAOD", ItemList=["xAOD::CaloClusterContainer#CaloCalTopoClusters*",#+theKey,
+                                                           "xAOD::CaloClusterAuxContainer#*CaloCalTopoClusters*Aux.",#+theKey+"Aux.",
+                                                           # "CaloClusterCellLinkContainer#"+theKey+"_links"
+                                                           ]))
+    cfg.getEventAlgo("OutputStreamxAOD").ForceRead=True
+
+    from AthenaServices.AthenaServicesConf import ThinningSvc, ThinningOutputTool
+    cfg.addService(ThinningSvc())
+    tot = ThinningOutputTool("Thin_xAOD",ThinningSvc = cfg.getService("ThinningSvc"))
+    cfg.getEventAlgo("OutputStreamxAOD").HelperTools += [tot]
 
+    from ThinningUtils.ThinningUtilsConf import ThinNegativeEnergyCaloClustersAlg
+    theNegativeEnergyCaloClustersThinner = ThinNegativeEnergyCaloClustersAlg(
+        "ThinNegativeEnergyCaloClustersAlg",
+        CaloClustersKey=theKey,
+        ThinNegativeEnergyCaloClusters = True,
+        )
+    cfg.addEventAlgo(theNegativeEnergyCaloClustersThinner,"AthAlgSeq")
   
-    cfg.getService("StoreGateSvc").Dump=True
+#    cfg.getService("StoreGateSvc").Dump=True
 
-    cfg.run()
+    cfg.run(10)
     #f=open("CaloTopoCluster.pkl","w")
     #cfg.store(f)
     #f.close()
diff --git a/Calorimeter/CaloTools/python/CaloNoiseToolConfig.py b/Calorimeter/CaloTools/python/CaloNoiseToolConfig.py
index d8779b5f10e289fe61f55bc49957adb5e2f6fe36..8f976d62789e96dfad7f43daec9b4a14481dc375 100644
--- a/Calorimeter/CaloTools/python/CaloNoiseToolConfig.py
+++ b/Calorimeter/CaloTools/python/CaloNoiseToolConfig.py
@@ -1,3 +1,4 @@
+
 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
 from IOVDbSvc.IOVDbSvcConfig import addFolders
 from CaloTools.CaloToolsConf import CaloNoiseToolDB
@@ -18,7 +19,7 @@ def CaloNoiseToolCfg(configFlags):
     if configFlags.Common.isOnline:
         #online mode:
         folder  = "/CALO/Noise/CellNoise"
-        result.merge(addFolders(configFlags,inputFlags,folder,'CALO_ONL'))
+        result.merge(addFolders(configFlags,folder,'CALO_ONL'))
         caloNoiseToolDB.FolderNames=[folder,]
         if fixedLumi >= 0 :
             caloNoiseToolDB.Luminosity = fixedLumi
@@ -35,7 +36,7 @@ def CaloNoiseToolCfg(configFlags):
                 log.info("online mode: ignore pileup noise")
                 pass
         result.addPublicTool(caloNoiseToolDB)
-        return result
+        return result, caloNoiseToolDB
 
     #The not-online case:
     if isMC:
@@ -75,7 +76,7 @@ def CaloNoiseToolCfg(configFlags):
                 lumiFolder = '/TRIGGER/LUMI/LBLESTONL'
                 result.merge(addFolders(configFlags,lumiFolder,'TRIGGER_ONL'))
                 log.info("offline mode: use luminosity = f(Lumiblock) to scale pileup noise")
-                caloNoiseToolDB.LumiFolderName = lumiFolder
+            caloNoiseToolDB.LumiFolderName = lumiFolder
 
 
         folders=[("LAR_OFL","/LAR/NoiseOfl/CellNoise"),
@@ -85,8 +86,32 @@ def CaloNoiseToolCfg(configFlags):
         if configFlags.IOVDb.DatabaseInstance=="COMP200":
             folders.append(("CALO_OFL","/CALO/Ofl/Noise/CellNoise")),
         
-        #Fixme: Add rescaling of noise based on HV! 
+        if configFlags.IOVDb.DatabaseInstance=="CONDBR2" and configFlags.Calo.Cell.doLArHVCorr:
+            log.info("Run2 & doLArHVCorr=True: Will rescale noise automatically for HV trips")
+
+            from LArCalibUtils.LArHVScaleConfig import LArHVScaleCfg
+            result.merge( LArHVScaleCfg(configFlags) )
+
+            from LArCondUtils.LArCondUtilsConf import LArHVToolDB
+            theLArHVToolDB = LArHVToolDB("LArHVToolDB")
+            result.addPublicTool( theLArHVToolDB )
 
+            from LArRecUtils.LArRecUtilsConf import LArHVCorrTool
+            theLArHVCorrTool = LArHVCorrTool("LArHVCorrTool")
+            theLArHVCorrTool.keyOutput = "LArHVScaleCorr"
+            theLArHVCorrTool.folderName= "/LAR/ElecCalibFlat/HVScaleCorr"
+            theLArHVCorrTool.doTdrift = False
+            theLArHVCorrTool.DeltaTupdate = 0
+            theLArHVCorrTool.HVTool = theLArHVToolDB
+            result.addPublicTool( theLArHVCorrTool )
+
+            from LArCellRec.LArCellRecConf import LArCellHVCorr
+            theLArCellHVCorr = LArCellHVCorr("LArCellHVCorr")
+            theLArCellHVCorr.HVCorrTool = theLArHVCorrTool
+            result.addPublicTool( theLArCellHVCorr )
+
+            caloNoiseToolDB.RescaleForHV=True
+            caloNoiseToolDB.LArHVCellCorrTool = theLArCellHVCorr
 
         pass #end of real data case
     
@@ -96,7 +121,6 @@ def CaloNoiseToolCfg(configFlags):
     caloNoiseToolDB.FolderNames=[f[1] for f in folders]    
 
     result.addPublicTool(caloNoiseToolDB)
-    
     return result
 
 if __name__ == "__main__":
diff --git a/Control/AthenaConfiguration/python/AllConfigFlags.py b/Control/AthenaConfiguration/python/AllConfigFlags.py
index cbcef7a4e36e3102c365909f8881a12c8fdf9334..3dbc6b7a75c84e0e220d291d95a834f3f65332ec 100644
--- a/Control/AthenaConfiguration/python/AllConfigFlags.py
+++ b/Control/AthenaConfiguration/python/AllConfigFlags.py
@@ -35,8 +35,9 @@ def _createCfgFlags():
 
     # replace global.Beam*
     acf.addFlag('Beam.BunchSpacing', 25) # former global.BunchSpacing
-    acf.addFlag("Beam.NumberOfCollisions",0) # former global.NumberOfCollisions
-    acf.addFlag('Beam.Type', 'collisions') # former global.BeamType
+    acf.addFlag('Beam.Type', lambda prevFlags : GetFileMD(prevFlags.Input.Files).get('beam_type','collisions') )# former global.BeamType
+    acf.addFlag("Beam.NumberOfCollisions", lambda prevFlags : (GetFileMD(prevFlags.Input.Files)["/Digitization/Parameters"]["numberOfCollisions"] if prevFlags.Input.isMC \
+                                                                   else (2. if prevFlags.Beam.Type=='collisions' else 0.))) # former global.NumberOfCollisions
     acf.addFlag('Beam.Energy', lambda prevFlags : GetFileMD(prevFlags.Input.Files).get('BeamEnergy',7*TeV)) # former global.BeamEnergy
     acf.addFlag('Beam.estimatedLuminosity', lambda prevFlags : ( 1E33*(prevFlags.Beam.NumberOfCollisions)/2.3 ) *\
         (25./prevFlags.Beam.BunchSpacing)) # former flobal.estimatedLuminosity
@@ -84,11 +85,14 @@ def _createCfgFlags():
 #CaloNoise Flags
     acf.addFlag("Calo.Noise.fixedLumiForNoise",-1)
     acf.addFlag("Calo.Noise.useCaloNoiseLumi",True)
-                
+
+#CaloCell flags
+    acf.addFlag("Calo.Cell.doLArHVCorr",False) # Disable for now as it is broken...
 
 #TopoCluster Flags:
     acf.addFlag("Calo.TopoCluster.doTwoGaussianNoise",True)
     acf.addFlag("Calo.TopoCluster.doTreatEnergyCutAsAbsolute",False)
+    acf.addFlag("Calo.TopoCluster.doTopoClusterLocalCalib",True)
 
 
     def __trigger():
diff --git a/Control/AthenaConfiguration/python/MainServicesConfig.py b/Control/AthenaConfiguration/python/MainServicesConfig.py
index e230efaf380c9bc0372131d7797a80100e89d1d5..b2f41bb149213242c1195c7bce4dfe3254d81b54 100644
--- a/Control/AthenaConfiguration/python/MainServicesConfig.py
+++ b/Control/AthenaConfiguration/python/MainServicesConfig.py
@@ -14,13 +14,32 @@ def MainServicesMiniCfg(LoopMgr='AthenaEventLoopMgr'):
     cfg.setAppProperty('JobOptionsPreAction', '')
     return cfg
 
+from AthenaConfiguration.AthConfigFlags import AthConfigFlags
 
-def MainServicesSerialCfg(LoopMgr='AthenaEventLoopMgr'):
+def MainServicesSerialCfg():
+    serialflags=AthConfigFlags()
+    serialflags.addFlag('Concurrency.NumProcs', 0)
+    serialflags.addFlag('Concurrency.NumThreads', 0)
+    serialflags.addFlag('Concurrency.NumConcurrentEvents', 0)
+    return MainServicesThreadedCfg(serialflags)
+
+def MainServicesThreadedCfg(cfgFlags):
+
+    # Run a serial job for threads=0
+    LoopMgr = 'AthenaEventLoopMgr'
+    if cfgFlags.Concurrency.NumThreads>0:
+        if cfgFlags.Concurrency.NumConcurrentEvents==0:
+            # In a threaded job this will mess you up because no events will be processed
+            raise Exception("Requested Concurrency.NumThreads>0 and Concurrency.NumConcurrentEvents==0, which will not process events!")
+
+        LoopMgr = "AthenaHiveEventLoopMgr"
+
+    ########################################################################
+    # Core components needed for serial and threaded jobs
     cfg=ComponentAccumulator("AthMasterSeq")
-    cfg.merge(MainServicesMiniCfg(LoopMgr))
+    cfg.merge( MainServicesMiniCfg(LoopMgr) )
     cfg.setAppProperty('TopAlg',['AthSequencer/AthMasterSeq'],overwrite=True)
-    cfg.setAppProperty('OutStreamType', 'AthenaOutputStream')    
-    
+    cfg.setAppProperty('OutStreamType', 'AthenaOutputStream')
 
     #Build standard sequences:
     cfg.addSequence(AthSequencer('AthAlgEvtSeq',Sequential=True, StopOverride=True),parentName="AthMasterSeq") 
@@ -29,9 +48,20 @@ def MainServicesSerialCfg(LoopMgr='AthenaEventLoopMgr'):
 
     cfg.addSequence(AthSequencer('AthBeginSeq',Sequential=True),parentName='AthAlgEvtSeq')
     cfg.addSequence(AthSequencer('AthAllAlgSeq'),parentName='AthAlgEvtSeq') 
-    cfg.addSequence(AthSequencer('AthAlgSeq',IgnoreFilterPassed=True,StopOverride=True),parentName='AthAllAlgSeq')
+
+    if cfgFlags.Concurrency.NumThreads==0:
+        # For serial execution, we need the CondAlgs to execute first.
+        cfg.addSequence(AthSequencer('AthCondSeq'),parentName='AthAllAlgSeq')
+        cfg.addSequence(AthSequencer('AthAlgSeq',IgnoreFilterPassed=True,StopOverride=True),parentName='AthAllAlgSeq')
+    else:
+        # In MT, the order of execution is irrelevant (determined by data deps).
+        # We add the conditions sequence later such that the CondInputLoader gets
+        # initialized after all other user Algorithms for MT, so the base classes
+        # of data deps can be correctly determined. 
+        cfg.addSequence(AthSequencer('AthAlgSeq',IgnoreFilterPassed=True,StopOverride=True),parentName='AthAllAlgSeq')
+        cfg.addSequence(AthSequencer('AthCondSeq'),parentName='AthAllAlgSeq')
+
     cfg.addSequence(AthSequencer('AthEndSeq',Sequential=True),parentName='AthAlgEvtSeq') 
-    cfg.addSequence(AthSequencer('AthCondSeq'),parentName='AthAllAlgSeq')
 
     #Set up incident firing:
     from AthenaServices.AthenaServicesConf import AthIncFirerAlg
@@ -47,97 +77,84 @@ def MainServicesSerialCfg(LoopMgr='AthenaEventLoopMgr'):
     from CLIDComps.CLIDCompsConf import ClassIDSvc
     cfg.addService(ClassIDSvc(CLIDDBFiles= ['clid.db',"Gaudi_clid.db" ]))
 
-
     from StoreGate.StoreGateConf import StoreGateSvc
     cfg.addService(StoreGateSvc())
     cfg.addService(StoreGateSvc("DetectorStore"))
     cfg.addService(StoreGateSvc("HistoryStore"))
     
     cfg.setAppProperty('InitializationLoopCheck',False)
-    return cfg
-    
 
-def MainServicesThreadedCfg(cfgFlags):
-    # Neater ways to set the loop manager? Can't be altered
-    # after setting up the 
-
-    # Run a serial job for threads=0
-    if cfgFlags.Concurrency.NumThreads==0:
-        return MainServicesSerialCfg()
-
-    if cfgFlags.Concurrency.NumConcurrentEvents==0:
-        # In a threaded job this will mess you up because no events will be processed
-        raise Exception("Requested Concurrency.NumThreads>0 and Concurrency.NumConcurrentEvents==0, which will not process events!")
-
-    cfg = MainServicesSerialCfg("AthenaHiveEventLoopMgr")
-
-    # Migrated code from AtlasThreadedJob.py
-    from GaudiCoreSvc.GaudiCoreSvcConf import MessageSvc
-    from GaudiSvc.GaudiSvcConf import StatusCodeSvc, AuditorSvc
-
-    msgsvc = MessageSvc()
-    msgsvc.defaultLimit = 0 
-    #msgFmt = "% F%40W%S%4W%e%s%7W%R%T %0W%M"
-    msgFmt = "% F%18W%S%7W%R%T %0W%M"
-    msgsvc.Format = msgFmt
-    cfg.addService(msgsvc)
-
-    scsvc = StatusCodeSvc()
-    scsvc.AbortOnError = False
-    cfg.addService(scsvc)
-    cfg.setAppProperty('StatusCodeCheck',False)
-
-    from StoreGate.StoreGateConf import SG__HiveMgrSvc
-    hivesvc = SG__HiveMgrSvc("EventDataSvc")
-    hivesvc.NSlots = cfgFlags.Concurrency.NumConcurrentEvents
-    cfg.addService( hivesvc )
-
-    from StoreGate.StoreGateConf import StoreGateSvc
-    cfg.addService( StoreGateSvc("ConditionStore") )
-
-    from GaudiHive.GaudiHiveConf import AlgResourcePool
-    from AthenaCommon.Constants import INFO
-    arp=AlgResourcePool( OutputLevel = INFO )
-    arp.TopAlg=["AthMasterSeq"] #this should enable control flow
-    cfg.addService( arp )
-
-    from GaudiHive.GaudiHiveConf import AvalancheSchedulerSvc
-    scheduler = AvalancheSchedulerSvc()
-    scheduler.CheckDependencies    = cfgFlags.Scheduler.CheckDependencies
-    scheduler.ShowDataDependencies = cfgFlags.Scheduler.ShowDataDeps
-    scheduler.ShowDataFlow         = cfgFlags.Scheduler.ShowDataFlow
-    scheduler.ShowControlFlow      = cfgFlags.Scheduler.ShowControlFlow
-    scheduler.ThreadPoolSize       = cfgFlags.Concurrency.NumThreads
-    cfg.addService(scheduler)
-
-    from SGComps.SGCompsConf import SGInputLoader
-    # FailIfNoProxy=False makes it a warning, not an error, if unmet data
-    # dependencies are not found in the store.  It should probably be changed
-    # to True eventually.
-    inputloader = SGInputLoader (FailIfNoProxy = False)
-    cfg.addEventAlgo( inputloader, "AthAlgSeq" )
-    scheduler.DataLoaderAlg = inputloader.getName()
-
-    from AthenaServices.AthenaServicesConf import AthenaHiveEventLoopMgr
-
-    elmgr = AthenaHiveEventLoopMgr()
-    elmgr.WhiteboardSvc = "EventDataSvc"
-    elmgr.SchedulerSvc = scheduler.getName()
-    cfg.addService( elmgr )
-
-    # enable timeline recording
-    from GaudiHive.GaudiHiveConf import TimelineSvc
-    cfg.addService( TimelineSvc( RecordTimeline = True, Partial = False ) )
-    
-    #
-    ## Setup SGCommitAuditor to sweep new DataObjects at end of Alg execute
-    #
-    
-    auditorsvc = AuditorSvc()
-    from SGComps.SGCompsConf import SGCommitAuditor
-    auditorsvc += SGCommitAuditor()
-    cfg.addService( auditorsvc )
-    cfg.setAppProperty("AuditAlgorithms", True)
+    ########################################################################
+    # Additional components needed for threaded jobs only
+    if cfgFlags.Concurrency.NumThreads>0:
+
+        # Migrated code from AtlasThreadedJob.py
+        from GaudiCoreSvc.GaudiCoreSvcConf import MessageSvc
+        from GaudiSvc.GaudiSvcConf import StatusCodeSvc, AuditorSvc
+
+        msgsvc = MessageSvc()
+        msgsvc.defaultLimit = 0 
+        #msgFmt = "% F%40W%S%4W%e%s%7W%R%T %0W%M"
+        msgFmt = "% F%18W%S%7W%R%T %0W%M"
+        msgsvc.Format = msgFmt
+        cfg.addService(msgsvc)
+
+        scsvc = StatusCodeSvc()
+        scsvc.AbortOnError = False
+        cfg.addService(scsvc)
+        cfg.setAppProperty('StatusCodeCheck',False)
+
+        from StoreGate.StoreGateConf import SG__HiveMgrSvc
+        hivesvc = SG__HiveMgrSvc("EventDataSvc")
+        hivesvc.NSlots = cfgFlags.Concurrency.NumConcurrentEvents
+        cfg.addService( hivesvc )
+
+        from StoreGate.StoreGateConf import StoreGateSvc
+        cfg.addService( StoreGateSvc("ConditionStore") )
+
+        from GaudiHive.GaudiHiveConf import AlgResourcePool
+        from AthenaCommon.Constants import INFO
+        arp=AlgResourcePool( OutputLevel = INFO )
+        arp.TopAlg=["AthMasterSeq"] #this should enable control flow
+        cfg.addService( arp )
+
+        from GaudiHive.GaudiHiveConf import AvalancheSchedulerSvc
+        scheduler = AvalancheSchedulerSvc()
+        scheduler.CheckDependencies    = cfgFlags.Scheduler.CheckDependencies
+        scheduler.ShowDataDependencies = cfgFlags.Scheduler.ShowDataDeps
+        scheduler.ShowDataFlow         = cfgFlags.Scheduler.ShowDataFlow
+        scheduler.ShowControlFlow      = cfgFlags.Scheduler.ShowControlFlow
+        scheduler.ThreadPoolSize       = cfgFlags.Concurrency.NumThreads
+        cfg.addService(scheduler)
+
+        from SGComps.SGCompsConf import SGInputLoader
+        # FailIfNoProxy=False makes it a warning, not an error, if unmet data
+        # dependencies are not found in the store.  It should probably be changed
+        # to True eventually.
+        inputloader = SGInputLoader (FailIfNoProxy = False)
+        cfg.addEventAlgo( inputloader, "AthAlgSeq" )
+        scheduler.DataLoaderAlg = inputloader.getName()
+
+        from AthenaServices.AthenaServicesConf import AthenaHiveEventLoopMgr
+
+        elmgr = AthenaHiveEventLoopMgr()
+        elmgr.WhiteboardSvc = "EventDataSvc"
+        elmgr.SchedulerSvc = scheduler.getName()
+        cfg.addService( elmgr )
+
+        # enable timeline recording
+        from GaudiHive.GaudiHiveConf import TimelineSvc
+        cfg.addService( TimelineSvc( RecordTimeline = True, Partial = False ) )
+
+        #
+        ## Setup SGCommitAuditor to sweep new DataObjects at end of Alg execute
+        #
+
+        auditorsvc = AuditorSvc()
+        from SGComps.SGCompsConf import SGCommitAuditor
+        auditorsvc += SGCommitAuditor()
+        cfg.addService( auditorsvc )
+        cfg.setAppProperty("AuditAlgorithms", True)
 
     return cfg
     
diff --git a/Control/CxxUtils/test/CachedUniquePtr_test.cxx b/Control/CxxUtils/test/CachedUniquePtr_test.cxx
index d47894580230d9628af460116af808c9d59510d7..b0e4586aa574c5465e958ebad88109fe49ad57d5 100644
--- a/Control/CxxUtils/test/CachedUniquePtr_test.cxx
+++ b/Control/CxxUtils/test/CachedUniquePtr_test.cxx
@@ -60,12 +60,14 @@ void test1()
 
   cp1 = std::move(cp2);
   assert (cp1->m_x == 2);
+  // cppcheck-suppress accessMoved
   assert (!cp2);
   assert (P::s_count == 1);
 
   {
     const CxxUtils::CachedUniquePtr<P> cp3 (std::move (cp1));
     assert (cp3->m_x == 2);
+    // cppcheck-suppress accessMoved
     assert (!cp1);
     assert (P::s_count == 1);
   }
diff --git a/Generators/GeneratorObjects/src/HepMcParticleLink.cxx b/Generators/GeneratorObjects/src/HepMcParticleLink.cxx
index 8bbcfddf44157596c225d276715614e450e838fa..bbbdc2afb3f80bbe3dedde27b17828aafcee6239 100644
--- a/Generators/GeneratorObjects/src/HepMcParticleLink.cxx
+++ b/Generators/GeneratorObjects/src/HepMcParticleLink.cxx
@@ -172,7 +172,8 @@ const HepMC::GenParticle* HepMcParticleLink::cptr() const
   if (!p) {
     if (0 == barcode()) {
 #if 0
-      mlog() << MSG::DEBUG
+      MsgStream log (Athena::getMessageSvc(), "HepMcParticleLink");
+      log << MSG::DEBUG
              << "cptr: no truth particle associated with this hit (barcode==0)."
              << " Probably this is a noise hit" << endmsg;
 #endif
@@ -186,7 +187,16 @@ const HepMC::GenParticle* HepMcParticleLink::cptr() const
         pEvt = pEvtColl->at(0);
       }
       else if (position != ExtendedBarCode::UNDEFINED) {
-        pEvt = pEvtColl->at (position);
+        if (position < pEvtColl->size()) {
+          pEvt = pEvtColl->at (position);
+        }
+        else {
+#if 0
+          MsgStream log (Athena::getMessageSvc(), "HepMcParticleLink");
+          log << MSG::WARNING << "cptr: position = " << position << ", McEventCollection size = "<< pEvtColl->size() << endmsg;
+#endif
+          return nullptr;
+        }
       }
       else {
         pEvt = pEvtColl->find (index);
diff --git a/Generators/GeneratorObjectsTPCnv/src/HepMcParticleLinkCnv_p1.cxx b/Generators/GeneratorObjectsTPCnv/src/HepMcParticleLinkCnv_p1.cxx
index a231c671b466e02a079b37f671a31c28ca860a42..322d8255909c6d43284cf8990faa7b61b3990599 100755
--- a/Generators/GeneratorObjectsTPCnv/src/HepMcParticleLinkCnv_p1.cxx
+++ b/Generators/GeneratorObjectsTPCnv/src/HepMcParticleLinkCnv_p1.cxx
@@ -23,10 +23,12 @@ void HepMcParticleLinkCnv_p1::persToTrans( const HepMcParticleLink_p1* persObj,
                                            HepMcParticleLink* transObj,
                                            MsgStream &/*msg*/ )
 {
+  EBC_EVCOLL evColl = EBC_MAINEVCOLL;
+  if (persObj->m_mcEvtIndex>0) evColl = EBC_FIRSTPUEVCOLL; // HACK
   transObj->setExtendedBarCode
     ( HepMcParticleLink::ExtendedBarCode( persObj->m_barcode,
                                           persObj->m_mcEvtIndex,
-                                          EBC_MAINEVCOLL,
+                                          evColl,
                                           HepMcParticleLink::IS_POSITION) );
   return;
 }
diff --git a/InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/src/SCT_CalibEventInfo.h b/InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/src/SCT_CalibEventInfo.h
index c245513fa077e3895ac1c673994983e521b8141c..15c6e755dd960303d366073767b69fe1fe2cf77a 100644
--- a/InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/src/SCT_CalibEventInfo.h
+++ b/InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/src/SCT_CalibEventInfo.h
@@ -17,7 +17,6 @@
 
 #include "GaudiKernel/ToolHandle.h"
 
-#include <atomic>
 #include <string>
 
 class StatusCode;
@@ -75,10 +74,10 @@ class SCT_CalibEventInfo: public extends<AthAlgTool, ISCT_CalibEvtInfo>
   std::string m_source;
 
   //
-  mutable std::atomic_int m_runNumber;
-  mutable std::atomic_int m_lumiBlock;
-  mutable std::atomic_int m_timeStamp;
-  mutable std::atomic_int m_bunchCrossing;
+  int  m_runNumber;
+  int  m_lumiBlock;
+  int  m_timeStamp;
+  int  m_bunchCrossing;
   int  m_counter;
   std::string toUtc(const int timestamp) const;
 };
diff --git a/InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/src/SCT_CalibLbTool.h b/InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/src/SCT_CalibLbTool.h
index 0ec1456490ac5f61f37607e5259aacb366f9bb30..12f5ccf4a03709ab119c55ffbcb28516286b67b1 100644
--- a/InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/src/SCT_CalibLbTool.h
+++ b/InnerDetector/InDetCalibAlgs/SCT_CalibAlgs/src/SCT_CalibLbTool.h
@@ -27,7 +27,6 @@
 #include "GaudiKernel/ToolHandle.h"
 
 //STL includes
-#include <atomic>
 #include <string>
 
 //fwd declarations
@@ -70,7 +69,7 @@ class SCT_CalibLbTool : public extends<AthAlgTool, ISCT_CalibHistoTool>
   VecInt* m_sct_firstStrip;
   VecInt* m_sct_rdoGroupSize;
 
-  mutable std::atomic_int m_lumiBlock;
+  int m_lumiBlock;
 
   //private use in this class
   int m_LbRange;
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTErrMonTool.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTErrMonTool.h
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTHitEffMonTool.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTHitEffMonTool.h
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTLorentzMonTool.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTLorentzMonTool.h
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTMotherTrigMonTool.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTMotherTrigMonTool.h
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTRatioNoiseMonTool.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTRatioNoiseMonTool.h
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTSummaryMonTool.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTSummaryMonTool.h
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTTracksMonTool.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCTTracksMonTool.h
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCT_ClusterStruct.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/SCT_Monitoring/SCT_ClusterStruct.h
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTErrMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTErrMonTool.cxx
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitEffMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitEffMonTool.cxx
old mode 100755
new mode 100644
index dad87c1380863b9bc8e895012b95a3fa1c02de8d..c509749d608a808272203552ba655ca35b9654ea
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitEffMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitEffMonTool.cxx
@@ -71,7 +71,7 @@ namespace {// anonymous namespace for functions at file scope
   };
   const std::string histogramPathRe[] = {
     "SCT/SCTEC/eff/perLumiBlock", "SCT/SCTB/eff/perLumiBlock", "SCT/SCTEA/eff/perLumiBlock"
-  };// 23.01.2015
+  };
 
   template< typename T > Identifier
   surfaceOnTrackIdentifier(const T &tsos, const bool useTrackParameters = true) {
@@ -87,7 +87,7 @@ namespace {// anonymous namespace for functions at file scope
     return result;
   }
 
-  constexpr Double_t radianDegrees(180. / 3.1415927);
+  constexpr Double_t radianDegrees(180. / M_PI);
 
   float
   amgPseudoRapidity(const Amg::Vector3D &position) {
@@ -371,11 +371,8 @@ SCTHitEffMonTool::initialize() {
 
 StatusCode
 SCTHitEffMonTool::bookHistograms() {
-  //  if (not isNewRun) return StatusCode::SUCCESS;                                                                   //
-  // hidetoshi 14.01.22
   if (not newRunFlag()) {
-    return StatusCode::SUCCESS;                                                                         // hidetoshi
-                                                                                                        // 14.01.22
+    return StatusCode::SUCCESS;
   }
   if (m_isCosmic) {
     WARNING("Running on cosmics: releasing d0 cut and forcing use of TRT timing");
@@ -403,7 +400,7 @@ SCTHitEffMonTool::bookHistograms() {
       MonGroup(this, m_path + histogramPathRe[ENDCAP_C_INDEX], run, ATTRIB_UNMANAGED),
       MonGroup(this, m_path + histogramPathRe[BARREL_INDEX], run, ATTRIB_UNMANAGED),
       MonGroup(this, m_path + histogramPathRe[ENDCAP_A_INDEX], run, ATTRIB_UNMANAGED)
-    }};// 23.01.2015
+    }};
 
     std::array < MonGroup, N_REGIONS + 1 > histGroupShift = {{
       MonGroup(this, m_path + histogramPath[ENDCAP_C_INDEX], run, ATTRIB_UNMANAGED),
@@ -427,7 +424,7 @@ SCTHitEffMonTool::bookHistograms() {
     m_Eff_hashCodeHisto->GetXaxis()->SetTitle("Module Hash Code");
     m_Eff_hashCodeHisto->GetYaxis()->SetTitle("Efficiency");
     CHECK(bookEffHisto(m_Eff_LumiBlockHisto_Total, histGroupE[GENERAL_INDEX], "effLumiBlock",
-                       "Efficiency vs Luminosity block", NBINS_LBs, 0.5, NBINS_LBs + 0.5));// 02.09.2016
+                       "Efficiency vs Luminosity block", NBINS_LBs, 0.5, NBINS_LBs + 0.5));
     m_Eff_LumiBlockHisto_Total->GetXaxis()->SetTitle("Luminosity block");
     m_Eff_LumiBlockHisto_Total->GetYaxis()->SetTitle("Efficiency");
     CHECK(bookEffHisto(m_effdistribution, histGroupE[GENERAL_INDEX], "SctEffDistribution",
@@ -481,7 +478,7 @@ SCTHitEffMonTool::bookHistograms() {
     }};
     std::array < TString, N_REGIONS > effLumiName = {{
       "m_eff_Lumi_", "eff_Lumi_", "p_eff_Lumi_"
-    }};// 23.01.2015
+    }};
     std::array < TString, N_REGIONS > sumeff = {{
       "summaryeffm", "summaryeff", "summaryeffp"
     }};
@@ -494,11 +491,11 @@ SCTHitEffMonTool::bookHistograms() {
     TString sumefftitle[3] = {
       "Summary Module Efficiency in Endcap C", "Summary Module Efficiency in Barrel",
       "Summary Module Efficiency in Endcap A"
-    };// 30.11.2014
+    };
     TString sumefftitleBCID[3] = {
       "Summary Module Efficiency in Endcap C for First BC", "Summary Module Efficiency in Barrel for First BC",
       "Summary Module Efficiency in Endcap A for First BC"
-    };// 30.11.2014
+    };
     std::array < TString, 12 > selecName = {{
       "All", "Module", "nHits", "TRTPhase", "Enclosed", "Phi", "Chi2", "Face", "Guard", "Bad chip", "d0", "pT"
     }};
@@ -540,7 +537,7 @@ SCTHitEffMonTool::bookHistograms() {
                              effLumiName[isub] + i + "_" + j,
                              "Efficiency vs LumiBlock of" + layerName[isub] + i + " / side " + j + " in " +
                              subDetName[isub],
-                             NBINS_LBs, 0.5, NBINS_LBs + 0.5));// 23.01.2015
+                             NBINS_LBs, 0.5, NBINS_LBs + 0.5));
           m_effLumiBlock[detIndex][j]->GetXaxis()->SetTitle("Luminosity Block");
           m_effLumiBlock[detIndex][j]->GetYaxis()->SetTitle("Efficiency");
         }
@@ -579,20 +576,20 @@ SCTHitEffMonTool::bookHistograms() {
                          2 * n_layers[isub], 0., n_layers[isub]));
       unsigned int limit[3] = {
         N_DISKSx2, N_BARRELSx2, N_DISKSx2
-      };// 30.11.2014
+      };
       for (unsigned int i(0); i != limit[isub]; i++) {
         LayerSideFormatter layerSide(i, isub);
         // use dedicated title for the bin labels (from 0_1 to 3_0)
         m_Eff_summaryHisto[isub]->GetXaxis()->SetBinLabel(i + 1, layerSide.dedicated_title().c_str());
         m_Eff_summaryHistoFirstBCID[isub]->GetXaxis()->SetBinLabel(i + 1, layerSide.dedicated_title().c_str());
         m_Eff_summaryHisto_old[isub]->GetXaxis()->SetBinLabel(i + 1, layerSide.title().c_str());
-      }// 30.11.2014
+      }
       m_Eff_summaryHisto[isub]->GetYaxis()->SetTitle("Efficiency");
       m_Eff_summaryHistoFirstBCID[isub]->GetYaxis()->SetTitle("Efficiency");
       m_Eff_summaryHisto_old[isub]->GetYaxis()->SetTitle("Efficiency");
 
       CHECK(bookEffHisto(m_Eff_LumiBlockHisto[isub], histGroupE[isub], "effLumiBlock",
-                         "Efficiency vs Luminosity block in " + subDetName[isub], NBINS_LBs, 0.5, NBINS_LBs + 0.5));// 20.01.2015
+                         "Efficiency vs Luminosity block in " + subDetName[isub], NBINS_LBs, 0.5, NBINS_LBs + 0.5));
       m_Eff_LumiBlockHisto[isub]->GetXaxis()->SetTitle("Luminosity block");
       m_Eff_LumiBlockHisto[isub]->GetYaxis()->SetTitle("Efficiency");
 
@@ -697,7 +694,7 @@ SCTHitEffMonTool::bookHistograms() {
 
       if (m_superDetailed) {
         // CHECK (bookEffHisto(m_Eff_LumiBlockHisto[isub], histGroupE[isub],"effLumiBlock", "Efficiency v Luminosity
-        // block",1000,1,1001));20.01.2015
+        // block",1000,1,1001));
         CHECK(bookEffHisto(m_inEffStrip[isub], histGroupE[isub],
                            "StripInEfficiency" + subDetNameShort[isub], "Strips inefficiencies in " + subDetName[isub],
                            n_mod[isub] * 2, f_mod[isub] * 2 - 0.5, (f_mod[isub] + n_mod[isub]) * 2 - 0.5, N_STRIPS,
@@ -732,15 +729,8 @@ SCTHitEffMonTool::bookHistograms() {
   return StatusCode::SUCCESS;
 }
 
-// StatusCode SCTHitEffMonTool::bookHistograms( bool /*isNewEventsBlock*/, bool /*isNewLumiBlock*/, bool isNewRun )
-//    // hidetoshi 14.01.22
 StatusCode
-SCTHitEffMonTool::bookHistogramsRecurrent() {                                                                       // hidetoshi
-                                                                                                                    // 14.01.22
-  //  if (not isNewRun) return StatusCode::SUCCESS;                                                                   //
-  // hidetoshi 14.01.22
-  //  if (not newRunFlag()) return StatusCode::SUCCESS;
-  //                                                                         // hidetoshi 14.01.22
+SCTHitEffMonTool::bookHistogramsRecurrent() {
   if (m_isCosmic) {
     WARNING("Running on cosmics: releasing d0 cut and forcing use of TRT timing");
   }
@@ -767,7 +757,7 @@ SCTHitEffMonTool::bookHistogramsRecurrent() {
       MonGroup(this, m_path + histogramPathRe[ENDCAP_C_INDEX], run, ATTRIB_UNMANAGED),
       MonGroup(this, m_path + histogramPathRe[BARREL_INDEX], run, ATTRIB_UNMANAGED),
       MonGroup(this, m_path + histogramPathRe[ENDCAP_A_INDEX], run, ATTRIB_UNMANAGED)
-    }};// 23.01.2015
+    }};
 
     std::array < MonGroup, N_REGIONS + 1 > histGroupShift = {{
       MonGroup(this, m_path + histogramPath[ENDCAP_C_INDEX], run, ATTRIB_UNMANAGED),
@@ -787,11 +777,11 @@ SCTHitEffMonTool::bookHistogramsRecurrent() {
       m_Eff_TotalBCID->GetXaxis()->SetBinLabel(i + 1, subDetName[i]);
     }
     CHECK(bookEffHisto(m_Eff_hashCodeHisto, histGroupE[GENERAL_INDEX], "effHashCode", "Efficiency vs module Hash code",
-                       n_mod[GENERAL_INDEX] * 2, -0.5, n_mod[GENERAL_INDEX] * 2 - 0.5));// 26.11.2014
+                       n_mod[GENERAL_INDEX] * 2, -0.5, n_mod[GENERAL_INDEX] * 2 - 0.5));
     m_Eff_hashCodeHisto->GetXaxis()->SetTitle("Module Hash Code");
-    m_Eff_hashCodeHisto->GetYaxis()->SetTitle("Efficiency");// 15.12.2014
+    m_Eff_hashCodeHisto->GetYaxis()->SetTitle("Efficiency");
     CHECK(bookEffHisto(m_Eff_LumiBlockHisto_Total, histGroupE[GENERAL_INDEX], "effLumiBlock",
-                       "Efficiency vs Luminosity block", NBINS_LBs, 0.5, NBINS_LBs + 0.5));// 02.09.2016
+                       "Efficiency vs Luminosity block", NBINS_LBs, 0.5, NBINS_LBs + 0.5));
 
     if (m_detailed) {
       CHECK(bookEffHisto(m_SCTNHitHisto, histGroupE[BARREL_INDEX], "SCTNHit", "Number of total SCT hits", 30, -0.5,
@@ -835,7 +825,7 @@ SCTHitEffMonTool::bookHistogramsRecurrent() {
     }};
     std::array < TString, N_REGIONS > effLumiName = {{
       "m_eff_Lumi_", "eff_Lumi_", "p_eff_Lumi_"
-    }};// 23.01.2015
+    }};
     // inefficiency plots, i.e. 1 - efficiency
     std::array< TString, N_REGIONS > ineffMapName = {{
       "ineffm_", "ineff_", "ineffp_"
@@ -899,7 +889,7 @@ SCTHitEffMonTool::bookHistogramsRecurrent() {
                              effLumiName[isub] + i + "_" + j,
                              "Efficiency vs LumiBlock" + layerName[isub] + i + " / side " + j + " in " +
                              subDetName[isub],
-                             150, 1, 3001));// 23.01.2015
+                             150, 1, 3001));
           m_effLumiBlock[detIndex][j]->GetXaxis()->SetTitle("Luminosity Block");
           m_effLumiBlock[detIndex][j]->GetYaxis()->SetTitle("Efficiency");
         }
@@ -937,18 +927,18 @@ SCTHitEffMonTool::bookHistogramsRecurrent() {
                          2 * n_layers[isub], 0., n_layers[isub]));
       unsigned int limit[3] = {
         N_DISKSx2, N_BARRELSx2, N_DISKSx2
-      };// 30.11.2014
+      };
       for (unsigned int i(0); i != limit[isub]; i++) {
         LayerSideFormatter layerSide(i, isub);
         m_Eff_summaryHisto[isub]->GetXaxis()->SetBinLabel(i + 1, layerSide.dedicated_title().c_str());
         m_Eff_summaryHistoFirstBCID[isub]->GetXaxis()->SetBinLabel(i + 1, layerSide.dedicated_title().c_str());
         m_Eff_summaryHisto_old[isub]->GetXaxis()->SetBinLabel(i + 1, layerSide.title().c_str());
-      }// 30.11.2014
+      }
       m_Eff_summaryHisto[isub]->GetYaxis()->SetTitle("Efficiency");
       m_Eff_summaryHistoFirstBCID[isub]->GetYaxis()->SetTitle("Efficiency");
       m_Eff_summaryHisto_old[isub]->GetYaxis()->SetTitle("Efficiency");
       CHECK(bookEffHisto(m_Eff_LumiBlockHisto[isub], histGroupE[isub], "effLumiBlock",
-                         "Efficiency vs Luminosity block in " + subDetName[isub], NBINS_LBs, 0.5, NBINS_LBs + 0.5));// 20.01.2015
+                         "Efficiency vs Luminosity block in " + subDetName[isub], NBINS_LBs, 0.5, NBINS_LBs + 0.5));
       m_Eff_LumiBlockHisto[isub]->GetXaxis()->SetTitle("Luminosity block");
       m_Eff_LumiBlockHisto[isub]->GetYaxis()->SetTitle("Efficiency");
 
@@ -1052,8 +1042,6 @@ SCTHitEffMonTool::bookHistogramsRecurrent() {
       }
 
       if (m_superDetailed) {
-        // CHECK (bookEffHisto(m_Eff_LumiBlockHisto[isub], histGroupE[isub],"effLumiBlock", "Efficiency v Luminosity
-        // block",1000,1,1001));//20.01.2015
         CHECK(bookEffHisto(m_inEffStrip[isub], histGroupE[isub],
                            "StripInEfficiency" + subDetNameShort[isub], "Strips inefficiencies in " + subDetName[isub],
                            n_mod[isub] * 2, f_mod[isub] * 2 - 0.5, (f_mod[isub] + n_mod[isub]) * 2 - 0.5, N_STRIPS,
@@ -1692,9 +1680,9 @@ SCTHitEffMonTool::fillHistograms() {
       VERBOSE("Candidate passed all cuts");
       m_Eff_summaryHisto_old[isub]->Fill(layerPlusHalfSide, eff); // in order to calculate m_EffsummaryIncBadMod
       m_Eff_summaryHisto[isub]->Fill(dedicated_layerPlusHalfSide, eff); // adjustment for dedicated_title()
-      m_Eff_hashCodeHisto->Fill(Double_t(sideHash), eff);// 15.12.2014
-      m_Eff_LumiBlockHisto[isub]->Fill(pEvent->lumiBlock(), eff);// 20.01.2015
-      m_Eff_LumiBlockHisto_Total->Fill(pEvent->lumiBlock(), eff);// 02.09.2016
+      m_Eff_hashCodeHisto->Fill(Double_t(sideHash), eff);
+      m_Eff_LumiBlockHisto[isub]->Fill(pEvent->lumiBlock(), eff);
+      m_Eff_LumiBlockHisto_Total->Fill(pEvent->lumiBlock(), eff);
       if (BCIDpos <= 0) {
         m_Eff_summaryHistoFirstBCID[isub]->Fill(dedicated_layerPlusHalfSide, eff); // adjustment for dedicated_title()
       }
@@ -1722,7 +1710,6 @@ SCTHitEffMonTool::fillHistograms() {
         m_Eff_nGoodTrk[isub]->Fill(nTrkGood, eff);
       }
       if (m_superDetailed) {
-        // m_Eff_LumiBlockHisto[isub]->Fill(pEvent->lumiBlock(), eff);//20.01.2015
         chipPos = (side == 1) ? 11 - chipPos : chipPos;
         m_inEffChip[isub]->Fill(sideHash, chipPos, int(eff == 0));
         m_inEffStrip[isub]->Fill(sideHash, xl / 79.95e-3 + 768. / 2., int(eff == 0));
@@ -1758,7 +1745,7 @@ SCTHitEffMonTool::fillHistograms() {
       if( BCIDpos <= 0 ){
         m_effMapFirstBCID[histnumber][side]->Fill(ieta, iphi, eff);
       }
-      m_effLumiBlock[histnumber][side]->Fill(pEvent->lumiBlock(), eff);// 23.01.2015
+      m_effLumiBlock[histnumber][side]->Fill(pEvent->lumiBlock(), eff);
 
       if (testOffline) {
         m_ineffMap[histnumber][side]->Fill(ieta, iphi, 1); // dummyfill for testing
@@ -1821,11 +1808,8 @@ SCTHitEffMonTool::fillHistograms() {
   return StatusCode::SUCCESS;
 }
 
-// StatusCode SCTHitEffMonTool::procHistograms(bool /*isEndOfEventsBlock*/, bool /*isEndOfLumiBlock*/, bool
-// /*isEndOfRun*/){ // hidetoshi 14.01.22
 StatusCode
-SCTHitEffMonTool::procHistograms() {                                                                             // hidetoshi
-                                                                                                                 // 14.01.22
+SCTHitEffMonTool::procHistograms() {
   if (m_superDetailed) {
     SG::ReadCondHandle<InDetDD::SiDetectorElementCollection> sctDetEle(m_SCTDetEleCollKey);
     const InDetDD::SiDetectorElementCollection* elements(sctDetEle.retrieve());
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitsNoiseMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitsNoiseMonTool.cxx
old mode 100755
new mode 100644
index 2234eb8c6c334876e0fafbca32c4515ce9292f2a..e18850fb3b3977cb3e0338278aa16addc0c3dc17
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitsNoiseMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTHitsNoiseMonTool.cxx
@@ -243,7 +243,6 @@ SCTHitsNoiseMonTool::SCTHitsNoiseMonTool(const std::string &type,
   m_occTriggerECp_lb{},
   m_occTriggerECm_lb{},
   m_eventsTrigger_lb(0),
-  // Add 09.09.2016
   m_BARHO(nullptr),
   m_BARHOTrigger(nullptr),
   m_ECmHO(nullptr),
@@ -252,7 +251,6 @@ SCTHitsNoiseMonTool::SCTHitsNoiseMonTool(const std::string &type,
   m_ECpHOTrigger(nullptr),
   m_SCTHO(nullptr),
   m_SCTHOTrigger(nullptr),
-  //
   m_HallHitsBAR_vsLB(nullptr),
   m_HSPHitsBAR_vsLB(nullptr),
   m_HallHitsECm_vsLB(nullptr),
@@ -266,7 +264,6 @@ SCTHitsNoiseMonTool::SCTHitsNoiseMonTool(const std::string &type,
   m_NoisyModulesWithHO100_vsLB(nullptr),
   m_NoisyModulesWithHO1000_vsLB(nullptr),
   m_NoisyModulesWithHO10000_vsLB(nullptr),
-  //
   m_HallHitsTriggerBAR_vsLB(nullptr),
   m_HSPHitsTriggerBAR_vsLB(nullptr),
   m_HallHitsTriggerECm_vsLB(nullptr),
@@ -381,46 +378,44 @@ SCTHitsNoiseMonTool::bookHistograms() {
   for (unsigned int det(0); det != N_REGIONS; ++det) {
     if (doSystem[det]) {
       if (m_doTrackHits and bookGeneralTrackTimeHistos(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralTrackTimeHistos()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralTrackTimeHistos()");
       }
       if (m_doTrackHits and bookGeneralTrackHits(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralTrackHits()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralTrackHits()");
       }
       if (bookGeneralNoiseOccupancyMaps(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralNoiseOccupancyMaps()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralNoiseOccupancyMaps()");
       }
       if (bookGeneralHitOccupancyMaps(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralHitOccupancyMaps()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralHitOccupancyMaps()");
       }
       if (bookGeneralHits(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralHits()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralHits()");
       }
       // offline only?
       if (bookGeneralCluSize(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralSize()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralSize()");
       }
       //
     }
   }
 
   if (bookSPvsEventNumber().isFailure()) {
-    msg(MSG::WARNING) << "Error in bookSPvsEventNumber()" << endmsg;
+    ATH_MSG_WARNING("Error in bookSPvsEventNumber()");
   }
   if (bookNoiseDistributions().isFailure()) {
-    msg(MSG::WARNING) << "Error in bookNoiseDistributions()" << endmsg;
+    ATH_MSG_WARNING("Error in bookNoiseDistributions()");
   }
 
   if (m_boolhitmaps) {
     if (book1DHitHists().isFailure()) {
-      msg(MSG::WARNING) << "Error in barrel book1DHitHists()" << endmsg;
+      ATH_MSG_WARNING("Error in barrel book1DHitHists()");
     }
     // Only want these histograms when running the code offline
   }
 
   if (bookClusterSize().isFailure()) {
-    if (msgLvl(MSG::WARNING)) {
-      msg(MSG::WARNING) << "Error in bookClusterSize()" << endmsg;
-    }
+    ATH_MSG_WARNING("Error in bookClusterSize()");
   }
 
   if (newRunFlag()) {
@@ -431,23 +426,23 @@ SCTHitsNoiseMonTool::bookHistograms() {
     m_ncluHisto->GetXaxis()->SetTitle("Total SCT Hits");
     m_ncluHisto->GetYaxis()->SetTitle("Entries");
     if (clu.regHist(m_ncluHisto).isFailure()) {
-      msg(MSG::WARNING) << "Cannot book Histogram:" << stem + "sct_hits" << endmsg;
+      ATH_MSG_WARNING("Cannot book Histogram:" << stem + "sct_hits");
     }
     if (m_booltxscan) {
       if (newEventsBlockFlag()) {
         // book histograms for TX scans
         m_hitsvstrigger = TH1F_LW::create("hits_vs_trigger", "Hits vs Trigger Type", 32, -0.5, 31.5);
         if (clu.regHist(m_hitsvstrigger).isFailure()) {
-          msg(MSG::WARNING) << "Cannot book Histogram:" << stem + "hitsvstrigger" << endmsg;
+          ATH_MSG_WARNING("Cannot book Histogram:" << stem + "hitsvstrigger");
         }
         m_hitsvsL1ID = TH1F_LW::create("hits_vs_L1ID", "Hits vs L1ID", 1000, 0., 10000.);
         if (clu.regHist(m_hitsvsL1ID).isFailure()) {
-          msg(MSG::WARNING) << "Cannot book Histogram:" << stem + "hitsvsL1ID" << endmsg;
+          ATH_MSG_WARNING("Cannot book Histogram:" << stem + "hitsvsL1ID");
         }
       }
     }
     if (initializeNoiseMaps().isFailure()) {
-      msg(MSG::WARNING) << "Failed to initalize noise occupancy maps!" << endmsg;
+      ATH_MSG_WARNING("Failed to initalize noise occupancy maps!");
     }
   }
 
@@ -472,46 +467,44 @@ SCTHitsNoiseMonTool::bookHistogramsRecurrent() {
   for (unsigned int det(0); det != N_REGIONS; ++det) {
     if (doSystem[det]) {
       if (m_doTrackHits and bookGeneralTrackTimeHistos(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralTrackTimeHistos()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralTrackTimeHistos()");
       }
       if (m_doTrackHits and bookGeneralTrackHits(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralTrackHits()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralTrackHits()");
       }
       if (bookGeneralNoiseOccupancyMaps(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralNoiseOccupancyMaps()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralNoiseOccupancyMaps()");
       }
       if (bookGeneralHitOccupancyMaps(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralHitOccupancyMaps()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralHitOccupancyMaps()");
       }
       if (bookGeneralHits(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralHits()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralHits()");
       }
       // offline only?
       if (bookGeneralCluSize(det).isFailure()) {
-        msg(MSG::WARNING) << "Error in bookGeneralSize()" << endmsg;
+        ATH_MSG_WARNING("Error in bookGeneralSize()");
       }
       //
     }
   }
 
   if (bookSPvsEventNumber().isFailure()) {
-    msg(MSG::WARNING) << "Error in bookSPvsEventNumber()" << endmsg;
+    ATH_MSG_WARNING("Error in bookSPvsEventNumber()");
   }
   if (bookNoiseDistributions().isFailure()) {
-    msg(MSG::WARNING) << "Error in bookNoiseDistributions()" << endmsg;
+    ATH_MSG_WARNING("Error in bookNoiseDistributions()");
   }
 
   if (m_boolhitmaps) {
     if (book1DHitHists().isFailure()) {
-      msg(MSG::WARNING) << "Error in barrel book1DHitHists()" << endmsg;
+      ATH_MSG_WARNING("Error in barrel book1DHitHists()");
     }
     // Only want these histograms when running the code offline
   }
 
   if (bookClusterSize().isFailure()) {
-    if (msgLvl(MSG::WARNING)) {
-      msg(MSG::WARNING) << "Error in bookClusterSize()" << endmsg;
-    }
+    ATH_MSG_WARNING("Error in bookClusterSize()");
   }
 
   std::string stem = m_stream + "/SCT/GENERAL/hits/summary";
@@ -521,21 +514,21 @@ SCTHitsNoiseMonTool::bookHistogramsRecurrent() {
   m_ncluHisto->GetXaxis()->SetTitle("Event Number");
   m_ncluHisto->GetYaxis()->SetTitle("Num of SCT Hits");
   if (clu.regHist(m_ncluHisto).isFailure()) {
-    msg(MSG::WARNING) << "Cannot book Histogram:" << stem + "sct_hits" << endmsg;
+    ATH_MSG_WARNING("Cannot book Histogram:" << stem + "sct_hits");
   }
   if (m_booltxscan) {
     // book histograms for TX scans
     m_hitsvstrigger = TH1F_LW::create("hits_vs_trigger", "Hits vs Trigger Type", 32, -0.5, 31.5);
     if (clu.regHist(m_hitsvstrigger).isFailure()) {
-      msg(MSG::WARNING) << "Cannot book Histogram:" << stem + "hitsvstrigger" << endmsg;
+      ATH_MSG_WARNING("Cannot book Histogram:" << stem + "hitsvstrigger");
     }
     m_hitsvsL1ID = TH1F_LW::create("hits_vs_L1ID", "Hits vs L1ID", 1000, 0., 10000.);
     if (clu.regHist(m_hitsvsL1ID).isFailure()) {
-      msg(MSG::WARNING) << "Cannot book Histogram:" << stem + "hitsvsL1ID" << endmsg;
+      ATH_MSG_WARNING("Cannot book Histogram:" << stem + "hitsvsL1ID");
     }
   }
   if (initializeNoiseMaps().isFailure()) {
-    msg(MSG::WARNING) << "Failed to initalize noise occupancy maps!" << endmsg;
+    ATH_MSG_WARNING("Failed to initalize noise occupancy maps!");
   }
 
   return StatusCode::SUCCESS;
@@ -551,9 +544,7 @@ SCTHitsNoiseMonTool::fillHistograms() {
   ++m_numberOfEventsRecent;
   SG::ReadHandle<xAOD::EventInfo> pEvent(m_eventInfoKey);
   if (not pEvent.isValid()) {
-    if (msgLvl(MSG::ERROR)) {
-      msg(MSG::ERROR) << "Could not retrieve event info!" << endmsg;
-    }
+    ATH_MSG_ERROR("Could not retrieve event info!");
     return StatusCode::RECOVERABLE;
   }
   int tmp_lb = pEvent->lumiBlock();
@@ -572,7 +563,6 @@ SCTHitsNoiseMonTool::fillHistograms() {
     m_occTriggerBAR_lb[m_current_lb] = 0;
     m_occTriggerECp_lb[m_current_lb] = 0;
     m_occTriggerECm_lb[m_current_lb] = 0;
-    // add 09.09.2016
     m_noisyMWithHO100[m_current_lb] = 0;
     m_noisyMWithHO1000[m_current_lb] = 0;
     m_noisyMWithHO10000[m_current_lb] = 0;
@@ -614,7 +604,6 @@ SCTHitsNoiseMonTool::fillHistograms() {
         if ((1E5) * m_occSumUnbiased_lb[*planeIterator] / m_events_lb > 10000.) {
           m_noisyM10000[m_current_lb]++;
         }
-        // 09.09.2016
         m_hitocc_lb[m_current_lb] += m_hitoccSumUnbiased_lb[*planeIterator] / m_events_lb;
         m_hitoccBAR_lb[m_current_lb] += m_hitoccSumUnbiasedBAR_lb[*planeIterator] / m_events_lb;
         m_hitoccECp_lb[m_current_lb] += m_hitoccSumUnbiasedECp_lb[*planeIterator] / m_events_lb;
@@ -643,7 +632,6 @@ SCTHitsNoiseMonTool::fillHistograms() {
         if ((1E5) * m_occSumUnbiasedTrigger_lb[*planeIterator] / m_eventsTrigger_lb > 10000.) {
           m_noisyMTrigger10000[m_current_lb]++;
         }
-        // add 09.09.2016
         m_hitoccTrigger_lb[m_current_lb] += (1E5) * m_hitoccSumUnbiasedTrigger_lb[*planeIterator] / m_eventsTrigger_lb;
         m_hitoccTriggerBAR_lb[m_current_lb] += (1E5) * m_hitoccSumUnbiasedTriggerBAR_lb[*planeIterator] /
 	  m_eventsTrigger_lb;
@@ -669,7 +657,6 @@ SCTHitsNoiseMonTool::fillHistograms() {
       m_occSumUnbiasedTriggerBAR_lb[*planeIterator] = 0;
       m_occSumUnbiasedTriggerECp_lb[*planeIterator] = 0;
       m_occSumUnbiasedTriggerECm_lb[*planeIterator] = 0;
-      // 09.09.2016
       m_hitoccSumUnbiased_lb[*planeIterator] = 0;
       m_hitoccSumUnbiasedBAR_lb[*planeIterator] = 0;
       m_hitoccSumUnbiasedECp_lb[*planeIterator] = 0;
@@ -683,76 +670,62 @@ SCTHitsNoiseMonTool::fillHistograms() {
       if (bec == ENDCAP_C)nlinksECm++;
       nlinks++;
     }
-    //std::cout <<"Line660: Number of links = "<<nlinks << std::endl;
     if (nlinks >0){
       m_occ_lb[m_current_lb] /= nlinks;
       m_occTrigger_lb[m_current_lb] /= nlinks;
-      // 09.09.2016
       m_hitocc_lb[m_current_lb] /= nlinks;
       m_hitoccTrigger_lb[m_current_lb] /= nlinks;
     }
     if (nlinksBAR >0){
       m_occBAR_lb[m_current_lb] /= nlinksBAR;
       m_occTriggerBAR_lb[m_current_lb] /= nlinksBAR;
-      // 09.09.2016
       m_hitoccBAR_lb[m_current_lb] /= nlinksBAR;
       m_hitoccTriggerBAR_lb[m_current_lb] /= nlinksBAR;
     }
     if (nlinksECp >0){
       m_occECp_lb[m_current_lb] /= nlinksECp;
       m_occTriggerECp_lb[m_current_lb] /= nlinksECp;
-      // 09.09.2016
       m_hitoccECp_lb[m_current_lb] /= nlinksECp;
       m_hitoccTriggerECp_lb[m_current_lb] /= nlinksECp;
     }
     if (nlinksECm >0){
       m_occECm_lb[m_current_lb] /= nlinksECm;
       m_occTriggerECm_lb[m_current_lb] /= nlinksECm;
-      // 09.09.2016
       m_hitoccECm_lb[m_current_lb] /= nlinksECm;
       m_hitoccTriggerECm_lb[m_current_lb] /= nlinksECm;
     }
-    //
     m_events_lb = 0;
     m_eventsTrigger_lb = 0;
   }
   m_current_lb = pEvent->lumiBlock();
   // If track hits are selected, make the vector of track rdo identifiers
   if (m_doTrackHits) {
-    if (makeVectorOfTrackRDOIdentifiers().isFailure() and msgLvl(MSG::WARNING)) {
-      msg(MSG::WARNING) << "Couldn't make vector of track RDO identifiers" << endmsg;
+    if (makeVectorOfTrackRDOIdentifiers().isFailure()) {
+      ATH_MSG_WARNING("Couldn't make vector of track RDO identifiers");
     }
   }
-  if (generalHistsandNoise().isFailure() and msgLvl(MSG::WARNING)) {
-    msg(MSG::WARNING) << "Error in generalHists" << endmsg;
+  if (generalHistsandNoise().isFailure()) {
+    ATH_MSG_WARNING("Error in generalHists");
   }
-  if (makeSPvsEventNumber().isFailure() and msgLvl(MSG::WARNING)) {
-    msg(MSG::WARNING) << "Error in makeSPvsEventNumber" << endmsg;
+  if (makeSPvsEventNumber().isFailure()) {
+    ATH_MSG_WARNING("Error in makeSPvsEventNumber");
   }
 
   if (m_environment == AthenaMonManager::online) {
     if ((m_numberOfEvents % m_checkrate) == 0) {
       if (checkNoiseMaps(true).isFailure()) {
-        if (msgLvl(MSG::WARNING)) {
-          msg(MSG::WARNING) << "Error in checkNoiseMaps(true)" << endmsg;
-        }
+        ATH_MSG_WARNING("Error in checkNoiseMaps(true)");
       }
     }
     if ((m_current_lb % m_checkrecent == 0) && (m_current_lb > m_last_reset_lb)) {
       if (checkNoiseMaps(true).isFailure()) {
-        if (msgLvl(MSG::WARNING)) {
-          msg(MSG::WARNING) << "Error in checkNoiseMaps(true)" << endmsg;
-        }
+        ATH_MSG_WARNING("Error in checkNoiseMaps(true)");
       }
       if (resetNoiseMapsRecent().isFailure()) {
-        if (msgLvl(MSG::WARNING)) {
-          msg(MSG::WARNING) << "Error in resetNoiseMapsRecent" << endmsg;
-        }
+        ATH_MSG_WARNING("Error in resetNoiseMapsRecent");
       }
       if (resetHitMapHists().isFailure()) {
-        if (msgLvl(MSG::WARNING)) {
-          msg(MSG::WARNING) << "Error in resetHitMapsRecent" << endmsg;
-        }
+        ATH_MSG_WARNING("Error in resetHitMapsRecent");
       }
       m_last_reset_lb = m_current_lb;
       m_numberOfEventsRecent = 0;
@@ -774,9 +747,7 @@ SCTHitsNoiseMonTool::procHistograms() {
 
   if (endOfEventsBlock) {
     if (checkNoiseMaps(true).isFailure()) {
-      if (msgLvl(MSG::WARNING)) {
-        msg(MSG::WARNING) << "Error in checkNoiseMaps(true)" << endmsg;
-      }
+      ATH_MSG_WARNING("Error in checkNoiseMaps(true)");
     }
   }
   return StatusCode::SUCCESS;
@@ -809,9 +780,7 @@ SCTHitsNoiseMonTool::generalHistsandNoise() {
   SG::ReadHandle<SCT_RDO_Container> p_rdocontainer(m_dataObjectName);
   SG::ReadHandle<xAOD::EventInfo> pEvent(m_eventInfoKey);
   if (not pEvent.isValid()) {
-    if (msgLvl(MSG::ERROR)) {
-      msg(MSG::ERROR) << "Could not retrieve event info!" << endmsg;
-    }
+    ATH_MSG_ERROR("Could not retrieve event info!");
     return StatusCode::FAILURE;
   }
   unsigned int current_lb = pEvent->lumiBlock();
@@ -1060,9 +1029,7 @@ SCTHitsNoiseMonTool::generalHistsandNoise() {
       if (diff < 0) {
         num = 0;
         m_skipEvents++;
-        if (msgLvl(MSG::WARNING)) {
-          msg(MSG::WARNING) << "Too many reconstructed space points for number of real hits" << endmsg;
-        }
+        ATH_MSG_WARNING("Too many reconstructed space points for number of real hits");
       }
       if (den > 0) {
         sumocc = num / static_cast<float> (den);
@@ -1109,7 +1076,7 @@ SCTHitsNoiseMonTool::generalHistsandNoise() {
         }
       }
 
-      { // hit occupancy 09.09.2016
+      { // hit occupancy
         float sumhitocc(0.);
         sumhitocc = static_cast<float> (numberOfHitsFromAllRDOs) / static_cast<float> (N_STRIPS);
         m_hitoccSumUnbiased[theWaferIdentifierOfTheRDOCollection] += sumhitocc;
@@ -1267,9 +1234,7 @@ SCTHitsNoiseMonTool::generalHistsandNoise() {
   // Fill Cluster size histogram
   SG::ReadHandle<InDet::SCT_ClusterContainer> p_clucontainer(m_clusContainerKey);
   if (not p_clucontainer.isValid()) {
-    if (msgLvl(MSG::WARNING)) {
-      msg(MSG::WARNING) << "Couldn't retrieve clusters" << endmsg;
-    }
+    ATH_MSG_WARNING("Couldn't retrieve clusters");
   }
   InDet::SCT_ClusterContainer::const_iterator clucol_it = p_clucontainer->begin();
   InDet::SCT_ClusterContainer::const_iterator lastcluCol = p_clucontainer->end();
@@ -1318,9 +1283,7 @@ SCTHitsNoiseMonTool::generalHistsandNoise() {
 
   if ((m_numberOfEvents % m_checkrate) == 0) {
     if (checkHists(false).isFailure()) {
-      if (msgLvl(MSG::WARNING)) {
-        msg(MSG::WARNING) << "Error in checkHists(false)" << endmsg;
-      }
+      ATH_MSG_WARNING("Error in checkHists(false)");
     }
   }
 
@@ -1353,9 +1316,7 @@ SCTHitsNoiseMonTool::book1DHitHists() {
       if (bec == BARREL) {
         h1Factory(formattedPosition, histotitle, BarrelHitHists, m_phitmapHistoVector, FIRST_STRIP - 0.5,
                   LAST_STRIP + 0.5, N_BINS);
-        if (msgLvl(MSG::DEBUG)) {
-          msg(MSG::DEBUG) << "Have registered the barrel hists" << endmsg;
-        }
+        ATH_MSG_DEBUG("Have registered the barrel hists");
       } else if (m_doPositiveEndcap && bec == ENDCAP_A) {
         h1Factory(formattedPosition, histotitle, PlusECHitHists, m_phitmapHistoVector, FIRST_STRIP - 0.5,
                   LAST_STRIP + 0.5, N_BINS);
@@ -1363,9 +1324,7 @@ SCTHitsNoiseMonTool::book1DHitHists() {
         h1Factory(formattedPosition, histotitle, MinusECHitHists, m_phitmapHistoVector, FIRST_STRIP - 0.5,
                   LAST_STRIP + 0.5, N_BINS);
       }
-      if (msgLvl(MSG::DEBUG)) {
-        msg(MSG::DEBUG) << "Have registered the hists" << endmsg;
-      }
+      ATH_MSG_DEBUG("Have registered the hists");
     }
   }
   return StatusCode::SUCCESS;
@@ -1376,7 +1335,7 @@ SCTHitsNoiseMonTool::bookGeneralHits(const unsigned int systemIndex) {
   const SCT_Monitoring::Bec bec(index2Bec(systemIndex));
 
   if (bec == INVALID_SYSTEM) {
-    msg(MSG::FATAL) << "Invalid subsystem index, should be 0-2, was " << systemIndex << endmsg;
+    ATH_MSG_FATAL("Invalid subsystem index, should be 0-2, was " << systemIndex);
     return StatusCode::FAILURE;
   }
   const string paths[] = {
@@ -1427,7 +1386,7 @@ SCTHitsNoiseMonTool::bookGeneralHits(const unsigned int systemIndex) {
     }
 
     default: {
-      msg(MSG::FATAL) << "Invalid barrel/endcap indicator, should be -2, 0 or 2, was " << bec << endmsg;
+      ATH_MSG_FATAL("Invalid barrel/endcap indicator, should be -2, 0 or 2, was " << bec);
       return StatusCode::FAILURE;
 
       break;
@@ -1557,7 +1516,7 @@ SCTHitsNoiseMonTool::bookGeneralCluSize(const unsigned int systemIndex) {
   };
 
   if (bec == INVALID_SYSTEM) {
-    msg(MSG::FATAL) << "Invalid subsystem index, should be 0-2, was " << systemIndex << endmsg;
+    ATH_MSG_FATAL("Invalid subsystem index, should be 0-2, was " << systemIndex);
     return StatusCode::FAILURE;
   }
   VecH1_t &clusterSizeVector = *(clusterSizeArray[systemIndex]);
@@ -1592,7 +1551,7 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
   const SCT_Monitoring::Bec bec(index2Bec(systemIndex));
 
   if (bec == INVALID_SYSTEM) {
-    msg(MSG::FATAL) << "Invalid subsystem index, should be 0-2, was " << systemIndex << endmsg;
+    ATH_MSG_FATAL("Invalid subsystem index, should be 0-2, was " << systemIndex);
     return StatusCode::FAILURE;
   }
   if (newRunFlag()) {
@@ -1642,21 +1601,21 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NallHitsECm_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NallHitsECm_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (noiseOccMaps.regHist(m_NallHitsECm_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NallHitsECm_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NallHitsECm_vsLB");
       }
       m_NSPHitsECm_vsLB = TProfile_LW::create("h_NSPHitsECm_vsLB", "Average num of SP Hits in ECm vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
                                        SCT_Monitoring::NBINS_LBs + 0.5);
       m_NSPHitsECm_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NSPHitsECm_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (noiseOccMaps.regHist(m_NSPHitsECm_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NSPHitsECm_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NSPHitsECm_vsLB");
       }
       m_ECmNO_vsLB =
         TProfile_LW::create("ECCNO_vsLB", "NO vs LB for the EndCap C (SP noise)", SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_ECmNO_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_ECmNO_vsLB->GetYaxis()->SetTitle("Noise Occupancy [10^{-5}]");
       if (noiseOccMaps.regHist(m_ECmNO_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book ECmNO_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book ECmNO_vsLB");
       }
       m_NallHitsTriggerECm_vsLB = TProfile_LW::create("h_NallHitsTriggerECm_vsLB",
                                                "Average num of all Hits in ECm with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1664,7 +1623,7 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NallHitsTriggerECm_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NallHitsTriggerECm_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (noiseOccMaps.regHist(m_NallHitsTriggerECm_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NallHitsTriggerECm_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NallHitsTriggerECm_vsLB");
       }
       m_NSPHitsTriggerECm_vsLB = TProfile_LW::create("h_NSPHitsTriggerECm_vsLB",
                                               "Average num of SP Hits in ECm with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1672,14 +1631,14 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NSPHitsTriggerECm_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NSPHitsTriggerECm_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (noiseOccMaps.regHist(m_NSPHitsTriggerECm_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NSPHitsTriggerECm_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NSPHitsTriggerECm_vsLB");
       }
       m_ECmNOTrigger_vsLB = TProfile_LW::create("ECCNOTrigger_vsLB", "NO with trigger vs LB for the EndCap C (SP noise)",
                                          SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_ECmNOTrigger_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_ECmNOTrigger_vsLB->GetYaxis()->SetTitle("Noise Occupancy [10^{-5}]");
       if (noiseOccMaps.regHist(m_ECmNOTrigger_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book ECmNOTrigger_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book ECmNOTrigger_vsLB");
       }
     }
     if (systemIndex == 1) { // BAR
@@ -1688,20 +1647,20 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NallHitsBAR_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NallHitsBAR_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (noiseOccMaps.regHist(m_NallHitsBAR_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NallHitsBAR_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NallHitsBAR_vsLB");
       }
       m_NSPHitsBAR_vsLB = TProfile_LW::create("h_NSPHitsBAR_vsLB", "Average num of SP Hits in Barrel vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
                                        SCT_Monitoring::NBINS_LBs + 0.5);
       m_NSPHitsBAR_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NSPHitsBAR_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (noiseOccMaps.regHist(m_NSPHitsBAR_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NSPHitsBAR_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NSPHitsBAR_vsLB");
       }
       m_BARNO_vsLB = TProfile_LW::create("BARNO_vsLB", "NO vs LB for the Barrel (SP noise)", SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_BARNO_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_BARNO_vsLB->GetYaxis()->SetTitle("Noise Occupancy [10^{-5}]");
       if (noiseOccMaps.regHist(m_BARNO_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book BARNO_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book BARNO_vsLB");
       }
       m_NallHitsTriggerBAR_vsLB = TProfile_LW::create("h_NallHitsTriggerBAR_vsLB",
                                                "Average num of all Hits in Barrel with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1709,7 +1668,7 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NallHitsTriggerBAR_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NallHitsTriggerBAR_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (noiseOccMaps.regHist(m_NallHitsTriggerBAR_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NallHitsTriggerBAR_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NallHitsTriggerBAR_vsLB");
       }
       m_NSPHitsTriggerBAR_vsLB = TProfile_LW::create("h_NSPHitsTriggerBAR_vsLB",
                                               "Average num of SP Hits in Barrel with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1717,14 +1676,14 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NSPHitsTriggerBAR_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NSPHitsTriggerBAR_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (noiseOccMaps.regHist(m_NSPHitsTriggerBAR_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NSPHitsTriggerBAR_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NSPHitsTriggerBAR_vsLB");
       }
       m_BARNOTrigger_vsLB = TProfile_LW::create("BARNOTrigger_vsLB", "NO with trigger vs LB for the Barrel (SP noise)",
                                          SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_BARNOTrigger_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_BARNOTrigger_vsLB->GetYaxis()->SetTitle("Noise Occupancy [10^{-5}]");
       if (noiseOccMaps.regHist(m_BARNOTrigger_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book BARNOTrigger_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book BARNOTrigger_vsLB");
       }
     }
     if (systemIndex == 2) { // ECp=ECA
@@ -1733,21 +1692,21 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NallHitsECp_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NallHitsECp_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (noiseOccMaps.regHist(m_NallHitsECp_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NallHitsECp_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NallHitsECp_vsLB");
       }
       m_NSPHitsECp_vsLB = TProfile_LW::create("h_NSPHitsECp_vsLB", "Average num of SP Hits in ECp vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
                                        SCT_Monitoring::NBINS_LBs + 0.5);
       m_NSPHitsECp_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NSPHitsECp_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (noiseOccMaps.regHist(m_NSPHitsECp_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NSPHitsECp_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NSPHitsECp_vsLB");
       }
       m_ECpNO_vsLB =
         TProfile_LW::create("ECANO_vsLB", "NO vs LB for the EndCap A (SP noise)", SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_ECpNO_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_ECpNO_vsLB->GetYaxis()->SetTitle("Noise Occupancy [10^{-5}]");
       if (noiseOccMaps.regHist(m_ECpNO_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book ECpNO_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book ECpNO_vsLB");
       }
       m_NallHitsTriggerECp_vsLB = TProfile_LW::create("h_NallHitsTriggerECp_vsLB",
                                                "Average num of all Hits in ECp with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1755,7 +1714,7 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NallHitsTriggerECp_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NallHitsTriggerECp_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (noiseOccMaps.regHist(m_NallHitsTriggerECp_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NallHitsTriggerECp_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NallHitsTriggerECp_vsLB");
       }
       m_NSPHitsTriggerECp_vsLB = TProfile_LW::create("h_NSPHitsTriggerECp_vsLB",
                                               "Average num of SP Hits in ECp with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1763,27 +1722,26 @@ SCTHitsNoiseMonTool::bookGeneralNoiseOccupancyMaps(const unsigned int systemInde
       m_NSPHitsTriggerECp_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_NSPHitsTriggerECp_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (noiseOccMaps.regHist(m_NSPHitsTriggerECp_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book NSPHitsTriggerECp_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book NSPHitsTriggerECp_vsLB");
       }
       m_ECpNOTrigger_vsLB = TProfile_LW::create("ECANOTrigger_vsLB", "NO with trigger vs LB for the EndCap A (SP noise)",
                                          SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_ECpNOTrigger_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_ECpNOTrigger_vsLB->GetYaxis()->SetTitle("Noise Occupancy [10^{-5}]");
       if (noiseOccMaps.regHist(m_ECpNOTrigger_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book ECpNOTrigger_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book ECpNOTrigger_vsLB");
       }
     }
   }
   return StatusCode::SUCCESS;
 }
 
-// 09.09.2016
 StatusCode
 SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex) {
   const SCT_Monitoring::Bec bec(index2Bec(systemIndex));
 
   if (bec == INVALID_SYSTEM) {
-    msg(MSG::FATAL) << "Invalid subsystem index, should be 0-2, was " << systemIndex << endmsg;
+    ATH_MSG_FATAL("Invalid subsystem index, should be 0-2, was " << systemIndex);
     return StatusCode::FAILURE;
   }
   if (newRunFlag()) {
@@ -1836,20 +1794,20 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HallHitsECm_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HallHitsECm_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (hitOccMaps.regHist(m_HallHitsECm_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HallHitsECm_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HallHitsECm_vsLB");
       }
       m_HSPHitsECm_vsLB = TProfile_LW::create("h_HSPHitsECm_vsLB", "Average num of SP Hits in ECm vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
                                        SCT_Monitoring::NBINS_LBs + 0.5);
       m_HSPHitsECm_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HSPHitsECm_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (hitOccMaps.regHist(m_HSPHitsECm_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HSPHitsECm_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HSPHitsECm_vsLB");
       }
       m_ECmHO_vsLB = TProfile_LW::create("ECCHO_vsLB", "HO vs LB for the EndCap C", SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_ECmHO_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_ECmHO_vsLB->GetYaxis()->SetTitle("Hit Occupancy [10^{-5}]");
       if (hitOccMaps.regHist(m_ECmHO_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book ECmHO_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book ECmHO_vsLB");
       }
       m_HallHitsTriggerECm_vsLB = TProfile_LW::create("h_HallHitsTriggerECm_vsLB",
                                                "Average num of all Hits in ECm with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1857,7 +1815,7 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HallHitsTriggerECm_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HallHitsTriggerECm_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (hitOccMaps.regHist(m_HallHitsTriggerECm_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HallHitsTriggerECm_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HallHitsTriggerECm_vsLB");
       }
       m_HSPHitsTriggerECm_vsLB = TProfile_LW::create("h_HSPHitsTriggerECm_vsLB",
                                               "Average num of SP Hits in ECm with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1865,14 +1823,14 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HSPHitsTriggerECm_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HSPHitsTriggerECm_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (hitOccMaps.regHist(m_HSPHitsTriggerECm_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HSPHitsTriggerECm_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HSPHitsTriggerECm_vsLB");
       }
       m_ECmHOTrigger_vsLB = TProfile_LW::create("ECCHOTrigger_vsLB", "HO with trigger vs LB for the EndCap C (SP noise)",
                                          SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_ECmHOTrigger_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_ECmHOTrigger_vsLB->GetYaxis()->SetTitle("Hit Occupancy [10^{-5}]");
       if (hitOccMaps.regHist(m_ECmHOTrigger_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book ECmHOTrigger_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book ECmHOTrigger_vsLB");
       }
     }
     if (systemIndex == 1) { // BAR
@@ -1881,20 +1839,20 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HallHitsBAR_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HallHitsBAR_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (hitOccMaps.regHist(m_HallHitsBAR_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HallHitsBAR_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HallHitsBAR_vsLB");
       }
       m_HSPHitsBAR_vsLB = TProfile_LW::create("h_HSPHitsBAR_vsLB", "Average num of SP Hits in Barrel vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
                                        SCT_Monitoring::NBINS_LBs + 0.5);
       m_HSPHitsBAR_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HSPHitsBAR_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (hitOccMaps.regHist(m_HSPHitsBAR_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HSPHitsBAR_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HSPHitsBAR_vsLB");
       }
       m_BARHO_vsLB = TProfile_LW::create("BARHO_vsLB", "HO vs LB for the Barrel (SP noise)", SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_BARHO_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_BARHO_vsLB->GetYaxis()->SetTitle("Hit Occupancy [10^{-5}]");
       if (hitOccMaps.regHist(m_BARHO_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book BARHO_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book BARHO_vsLB");
       }
       m_HallHitsTriggerBAR_vsLB = TProfile_LW::create("h_HallHitsTriggerBAR_vsLB",
                                                "Average num of all Hits in Barrel with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1902,7 +1860,7 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HallHitsTriggerBAR_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HallHitsTriggerBAR_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (hitOccMaps.regHist(m_HallHitsTriggerBAR_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HallHitsTriggerBAR_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HallHitsTriggerBAR_vsLB");
       }
       m_HSPHitsTriggerBAR_vsLB = TProfile_LW::create("h_HSPHitsTriggerBAR_vsLB",
                                               "Average num of SP Hits in Barrel with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1910,14 +1868,14 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HSPHitsTriggerBAR_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HSPHitsTriggerBAR_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (hitOccMaps.regHist(m_HSPHitsTriggerBAR_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HSPHitsTriggerBAR_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HSPHitsTriggerBAR_vsLB");
       }
       m_BARHOTrigger_vsLB = TProfile_LW::create("BARHOTrigger_vsLB", "HO with trigger vs LB for the Barrel (SP noise)",
                                          SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_BARHOTrigger_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_BARHOTrigger_vsLB->GetYaxis()->SetTitle("Hit Occupancy [10^{-5}]");
       if (hitOccMaps.regHist(m_BARHOTrigger_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book BARHOTrigger_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book BARHOTrigger_vsLB");
       }
     }
     if (systemIndex == 2) { // ECp=ECA
@@ -1926,21 +1884,21 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HallHitsECp_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HallHitsECp_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (hitOccMaps.regHist(m_HallHitsECp_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HallHitsECp_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HallHitsECp_vsLB");
       }
       m_HSPHitsECp_vsLB = TProfile_LW::create("h_HSPHitsECp_vsLB", "Average num of SP Hits in ECp vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
                                        SCT_Monitoring::NBINS_LBs + 0.5);
       m_HSPHitsECp_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HSPHitsECp_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (hitOccMaps.regHist(m_HSPHitsECp_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HSPHitsECp_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HSPHitsECp_vsLB");
       }
       m_ECpHO_vsLB =
         TProfile_LW::create("ECAHO_vsLB", "HO vs LB for the EndCap A (SP noise)", SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_ECpHO_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_ECpHO_vsLB->GetYaxis()->SetTitle("Hit Occupancy [10^{-5}]");
       if (hitOccMaps.regHist(m_ECpHO_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book ECpHO_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book ECpHO_vsLB");
       }
       m_HallHitsTriggerECp_vsLB = TProfile_LW::create("h_HallHitsTriggerECp_vsLB",
                                                "Average num of all Hits in ECp with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1948,7 +1906,7 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HallHitsTriggerECp_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HallHitsTriggerECp_vsLB->GetYaxis()->SetTitle("Average number of all Hits");
       if (hitOccMaps.regHist(m_HallHitsTriggerECp_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HallHitsTriggerECp_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HallHitsTriggerECp_vsLB");
       }
       m_HSPHitsTriggerECp_vsLB = TProfile_LW::create("h_HSPHitsTriggerECp_vsLB",
                                               "Average num of SP Hits in ECp with trigger vs LB", SCT_Monitoring::NBINS_LBs, 0.5,
@@ -1956,14 +1914,14 @@ SCTHitsNoiseMonTool::bookGeneralHitOccupancyMaps(const unsigned int systemIndex)
       m_HSPHitsTriggerECp_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_HSPHitsTriggerECp_vsLB->GetYaxis()->SetTitle("Average number of SP Hits");
       if (hitOccMaps.regHist(m_HSPHitsTriggerECp_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book HSPHitsTriggerECp_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book HSPHitsTriggerECp_vsLB");
       }
       m_ECpHOTrigger_vsLB = TProfile_LW::create("ECAHOTrigger_vsLB", "HO with trigger vs LB for the EndCap A (SP noise)",
                                          SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
       m_ECpHOTrigger_vsLB->GetXaxis()->SetTitle("LumiBlock");
       m_ECpHOTrigger_vsLB->GetYaxis()->SetTitle("Hit Occupancy [10^{-5}]");
       if (hitOccMaps.regHist(m_ECpHOTrigger_vsLB).isFailure()) {
-        msg(MSG::WARNING) << "Couldn't book ECpHOTrigger_vsLB" << endmsg;
+        ATH_MSG_WARNING("Couldn't book ECpHOTrigger_vsLB");
       }
     }
   }
@@ -1987,7 +1945,7 @@ SCTHitsNoiseMonTool::checkNoiseMaps(bool final) {
       ////////////////////////////////////////////////////////
       if (m_environment == AthenaMonManager::online) { // Reset histos for online so there is proper weighting of events
         if (resetNoiseMapHists().isFailure()) {
-          msg(MSG::WARNING) << "Failed to reset noise occupancy maps!" << endmsg;
+          ATH_MSG_WARNING("Failed to reset noise occupancy maps!");
         }
       }
       if (m_occSumUnbiased.size() && m_numberOfEvents) {
@@ -2065,7 +2023,6 @@ SCTHitsNoiseMonTool::checkNoiseMaps(bool final) {
         }
       }
 
-      // Add 09.09.2016
       if (m_hitoccSumUnbiased.size() && m_numberOfEvents) {
         for (std::map<Identifier, float>::iterator it = m_hitoccSumUnbiased.begin(); it != m_hitoccSumUnbiased.end();
              it++) {
@@ -2157,7 +2114,6 @@ SCTHitsNoiseMonTool::checkNoiseMaps(bool final) {
 	m_occTriggerBAR_lb[m_current_lb] = 0;
 	m_occTriggerECp_lb[m_current_lb] = 0;
 	m_occTriggerECm_lb[m_current_lb] = 0;
-	// 09.09.2016
 	m_noisyMWithHO100[m_current_lb] = 0;
 	m_noisyMWithHO1000[m_current_lb] = 0;
 	m_noisyMWithHO10000[m_current_lb] = 0;
@@ -2200,7 +2156,6 @@ SCTHitsNoiseMonTool::checkNoiseMaps(bool final) {
 	    if ((1E5) * m_occSumUnbiased_lb[*planeIterator] / m_events_lb > 10000.) {
 	      m_noisyM10000[m_current_lb]++;
 	    }
-	    // 09.09.2016
 	    m_hitocc_lb[m_current_lb] += (1E5) * m_hitoccSumUnbiased_lb[*planeIterator] / m_events_lb;
 	    m_hitoccBAR_lb[m_current_lb] += (1E5) * m_hitoccSumUnbiasedBAR_lb[*planeIterator] / m_events_lb;
 	    m_hitoccECp_lb[m_current_lb] += (1E5) * m_hitoccSumUnbiasedECp_lb[*planeIterator] / m_events_lb;
@@ -2232,7 +2187,6 @@ SCTHitsNoiseMonTool::checkNoiseMaps(bool final) {
 	    if ((1E5) * m_occSumUnbiasedTrigger_lb[*planeIterator] / m_eventsTrigger_lb > 10000.) {
 	      m_noisyMTrigger10000[m_current_lb]++;
 	    }
-	    // 09.09.2016
 	    m_hitoccTrigger_lb[m_current_lb] += (1E5) * m_hitoccSumUnbiasedTrigger_lb[*planeIterator] /
 	      m_eventsTrigger_lb;
 	    m_hitoccTriggerBAR_lb[m_current_lb] += (1E5) * m_hitoccSumUnbiasedTriggerBAR_lb[*planeIterator] /
@@ -2256,32 +2210,27 @@ SCTHitsNoiseMonTool::checkNoiseMaps(bool final) {
 	  if (bec == ENDCAP_C)nlinksECm++;
 	  nlinks++;
 	}
-	//
 	if (nlinks >0){
 	  m_occ_lb[m_current_lb] /= nlinks;
 	  m_occTrigger_lb[m_current_lb] /= nlinks;
-	  // 09.09.2016
 	  m_hitocc_lb[m_current_lb] /= nlinks;
 	  m_hitoccTrigger_lb[m_current_lb] /= nlinks;
 	}
 	if (nlinksBAR >0){
 	  m_occBAR_lb[m_current_lb] /= nlinksBAR;
 	  m_occTriggerBAR_lb[m_current_lb] /= nlinksBAR;
-	  // 09.09.2016
 	  m_hitoccBAR_lb[m_current_lb] /= nlinksBAR;
 	  m_hitoccTriggerBAR_lb[m_current_lb] /= nlinksBAR;
 	}
 	if (nlinksECp >0){
 	  m_occECp_lb[m_current_lb] /= nlinksECp;
 	  m_occTriggerECp_lb[m_current_lb] /= nlinksECp;
-	  // 09.09.2016
 	  m_hitoccECp_lb[m_current_lb] /= nlinksECp;
 	  m_hitoccTriggerECp_lb[m_current_lb] /= nlinksECp;
 	}
 	if (nlinksECm >0){
 	  m_occECm_lb[m_current_lb] /= nlinksECm;
 	  m_occTriggerECm_lb[m_current_lb] /= nlinksECm;
-	  // 09.09.2016
 	  m_hitoccECm_lb[m_current_lb] /= nlinksECm;
 	  m_hitoccTriggerECm_lb[m_current_lb] /= nlinksECm;
 	}
@@ -2301,7 +2250,6 @@ SCTHitsNoiseMonTool::checkNoiseMaps(bool final) {
       m_NoisyModulesTrigger100_vsLB->Reset();
       m_NoisyModulesTrigger1000_vsLB->Reset();
       m_NoisyModulesTrigger10000_vsLB->Reset();
-      // 09.09.2016
       m_BARHO_vsLB->Reset();
       m_ECmHO_vsLB->Reset();
       m_ECpHO_vsLB->Reset();
@@ -2361,7 +2309,6 @@ SCTHitsNoiseMonTool::checkNoiseMaps(bool final) {
 	  m_NoisyModulesTrigger10000_vsLB->Fill(bin, m_noisyMTrigger10000[bin]);
 	}
       }
-      // 09.09.2016
       for (int bin = 1; bin <= SCT_Monitoring::NBINS_LBs; bin++) {
 	if (m_hitoccBAR_lb[bin] != 0) {
 	  m_BARHO_vsLB->Fill(bin, m_hitoccBAR_lb[bin]);
@@ -2437,7 +2384,6 @@ SCTHitsNoiseMonTool::initializeNoiseMaps() {
     m_occSumUnbiasedTriggerBAR_lb[*planeIterator] = 0.;
     m_occSumUnbiasedTriggerECp_lb[*planeIterator] = 0.;
     m_occSumUnbiasedTriggerECm_lb[*planeIterator] = 0.;
-    // 09.09.2016
     m_hitoccSumUnbiased[*planeIterator] = 0.;
     m_hitoccSumUnbiasedTrigger[*planeIterator] = 0.;
     m_hitoccSumUnbiasedRecent[*planeIterator] = 0.;
@@ -2463,63 +2409,62 @@ SCTHitsNoiseMonTool::initializeNoiseMaps() {
 StatusCode
 SCTHitsNoiseMonTool::resetNoiseMapHists() {
   if (resetVecProf2(m_pnoiseoccupancymapHistoVector).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVector!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVector!");
   }
   if (resetVecProf2(m_pnoiseoccupancymapHistoVectorECp).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVectorECp!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVectorECp!");
   }
   if (resetVecProf2(m_pnoiseoccupancymapHistoVectorECm).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVectorECm!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVectorECm!");
   }
   if (m_environment == AthenaMonManager::online) {
     if (resetVecProf2(m_pnoiseoccupancymapHistoVectorRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVectorRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVectorRecent!");
     }
     if (resetVecProf2(m_pnoiseoccupancymapHistoVectorECpRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVectorECpRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVectorECpRecent!");
     }
     if (resetVecProf2(m_pnoiseoccupancymapHistoVectorECmRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVectorECmRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVectorECmRecent!");
     }
   }
   if (resetVecProf2(m_pnoiseoccupancymapHistoVectorTrigger).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVectorTrigger!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVectorTrigger!");
   }
   if (resetVecProf2(m_pnoiseoccupancymapHistoVectorECpTrigger).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVectorECpTrigger!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVectorECpTrigger!");
   }
   if (resetVecProf2(m_pnoiseoccupancymapHistoVectorECmTrigger).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset noiseoccupancymapHistoVectorECmTrigger!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset noiseoccupancymapHistoVectorECmTrigger!");
   }
-  // 09.09.2016
   if (resetVecProf2(m_phitoccupancymapHistoVector).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVector!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVector!");
   }
   if (resetVecProf2(m_phitoccupancymapHistoVectorECp).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVectorECp!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVectorECp!");
   }
   if (resetVecProf2(m_phitoccupancymapHistoVectorECm).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVectorECm!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVectorECm!");
   }
   if (m_environment == AthenaMonManager::online) {
     if (resetVecProf2(m_phitoccupancymapHistoVectorRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVectorRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVectorRecent!");
     }
     if (resetVecProf2(m_phitoccupancymapHistoVectorECpRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVectorECpRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVectorECpRecent!");
     }
     if (resetVecProf2(m_phitoccupancymapHistoVectorECmRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVectorECmRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVectorECmRecent!");
     }
   }
   if (resetVecProf2(m_phitoccupancymapHistoVectorTrigger).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVectorTrigger!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVectorTrigger!");
   }
   if (resetVecProf2(m_phitoccupancymapHistoVectorECpTrigger).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVectorECpTrigger!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVectorECpTrigger!");
   }
   if (resetVecProf2(m_phitoccupancymapHistoVectorECmTrigger).isFailure()) {
-    msg(MSG::WARNING) << "Failed to reset hitoccupancymapHistoVectorECmTrigger!" << endmsg;
+    ATH_MSG_WARNING("Failed to reset hitoccupancymapHistoVectorECmTrigger!");
   }
 
 
@@ -2531,7 +2476,6 @@ SCTHitsNoiseMonTool::resetNoiseMapHists() {
   m_ECpNOTrigger->Reset();
   m_SCTNO->Reset();
   m_SCTNOTrigger->Reset();
-  // 09.09.2016
   m_BARHO->Reset();
   m_BARHOTrigger->Reset();
   m_ECmHO->Reset();
@@ -2559,7 +2503,7 @@ SCTHitsNoiseMonTool::resetNoiseMapsRecent() {
   for (std::map<Identifier, float>::iterator it = m_hitoccSumUnbiasedRecent.begin();
        it != m_hitoccSumUnbiasedRecent.end(); ++it) {
     it->second = 0.0;
-  }// 09.09.2016
+  }
   return StatusCode::SUCCESS;
 }
 
@@ -2573,40 +2517,40 @@ StatusCode
 SCTHitsNoiseMonTool::resetHitMapHists() {
   if (m_environment == AthenaMonManager::online) {
     if (resetVecH2(m_ptrackhitsHistoVectorRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset ptrackhitsHistoVectorRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset ptrackhitsHistoVectorRecent!");
     }
     if (resetVecH2(m_ptrackhitsHistoVectorRecentECp).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset ptrackhitsHistoVectorRecentECp!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset ptrackhitsHistoVectorRecentECp!");
     }
     if (resetVecH2(m_ptrackhitsHistoVectorRecentECm).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset ptrackhitsHistoVectorRecentECm!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset ptrackhitsHistoVectorRecentECm!");
     }
     if (resetVecH1(m_tbinHistoVectorRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_tbinHistoVectorRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_tbinHistoVectorRecent!");
     }
     if (resetVecH1(m_tbinHistoVectorRecentECp).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_tbinHistoVectorRecentECp!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_tbinHistoVectorRecentECp!");
     }
     if (resetVecH1(m_tbinHistoVectorRecentECm).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_tbinHistoVectorRecentECm!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_tbinHistoVectorRecentECm!");
     }
     if (resetVecH2(m_phitsHistoVectorRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_phitsHistoVectorRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_phitsHistoVectorRecent!");
     }
     if (resetVecH2(m_phitsHistoVectorRecentECp).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_phitsHistoVectorRecentECp!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_phitsHistoVectorRecentECp!");
     }
     if (resetVecH2(m_phitsHistoVectorRecentECm).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_phitsHistoVectorRecentECm!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_phitsHistoVectorRecentECm!");
     }
     if (resetVecH1(m_clusizeHistoVectorRecent).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_clusizeHistoVectorRecent!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_clusizeHistoVectorRecent!");
     }
     if (resetVecH1(m_clusizeHistoVectorRecentECp).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_clusizeHistoVectorRecentECp!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_clusizeHistoVectorRecentECp!");
     }
     if (resetVecH1(m_clusizeHistoVectorRecentECm).isFailure()) {
-      msg(MSG::WARNING) << "Failed to reset m_clusizeHistoVectorRecentECm!" << endmsg;
+      ATH_MSG_WARNING("Failed to reset m_clusizeHistoVectorRecentECm!");
     }
     m_tbinHistoRecent->Reset();
     m_tbinHistoRecentECp->Reset();
@@ -2704,7 +2648,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_BARNO->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_BARNO).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book BARNO" << endmsg;
+      ATH_MSG_WARNING("Couldn't book BARNO");
     }
 
     std::string barrelNO_title = "NO Distribution for the Barrel for " + m_NOTrigger + " trigger";
@@ -2715,7 +2659,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_BARNOTrigger->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_BARNOTrigger).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book BARNOTrigger" << endmsg;
+      ATH_MSG_WARNING("Couldn't book BARNOTrigger");
     }
 
     m_ECmNO = new TH1F("ECCNOdistribution", "NO Distribution for the EndCap C", bins, xmin, xmax);
@@ -2725,7 +2669,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_ECmNO->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_ECmNO).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book ECmNO" << endmsg;
+      ATH_MSG_WARNING("Couldn't book ECmNO");
     }
 
     std::string ECmNO_title = "NO Distribution for the EndCap C for " + m_NOTrigger + " trigger";
@@ -2736,7 +2680,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_ECmNOTrigger->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_ECmNOTrigger).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book ECmNOTrigger" << endmsg;
+      ATH_MSG_WARNING("Couldn't book ECmNOTrigger");
     }
 
     m_ECpNO = new TH1F("ECANOdistribution", "NO Distribution for the EndCap A", bins, xmin, xmax);
@@ -2746,7 +2690,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_ECpNO->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_ECpNO).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book ECpNO" << endmsg;
+      ATH_MSG_WARNING("Couldn't book ECpNO");
     }
 
     std::string ECpNO_title = "NO Distribution for the EndCap A for " + m_NOTrigger + " trigger";
@@ -2757,7 +2701,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_ECpNOTrigger->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_ECpNOTrigger).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book ECpNOTrigger" << endmsg;
+      ATH_MSG_WARNING("Couldn't book ECpNOTrigger");
     }
 
     m_SCTNO = new TH1F("SCTNOdistribution", "NO Distribution for the SCT", bins, xmin, xmax);
@@ -2767,7 +2711,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_SCTNO->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_SCTNO).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NO" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NO");
     }
 
     std::string NO_title = "NO Distribution for the SCT for " + m_NOTrigger + " trigger";
@@ -2778,14 +2722,14 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_SCTNOTrigger->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_SCTNOTrigger).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NOTrigger" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NOTrigger");
     }
 
     m_SCTNO_vsLB = TProfile_LW::create("NO_vsLB", "NO vs LB for all region (SP noise)", SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
     m_SCTNO_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_SCTNO_vsLB->GetYaxis()->SetTitle("Noise Occupancy [10^{-5}]");
     if (NoiseDistributions.regHist(m_SCTNO_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book SCTNO_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book SCTNO_vsLB");
     }
 
     m_NoisyModulesTrigger100_vsLB = TProfile_LW::create("NoisyModulesTrigger100_vsLB",
@@ -2794,7 +2738,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesTrigger100_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesTrigger100_vsLB->GetYaxis()->SetTitle("Noisy Modules");
     if (NoiseDistributions.regHist(m_NoisyModulesTrigger100_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesTrigger100_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesTrigger100_vsLB");
     }
 
     m_NoisyModulesTrigger1000_vsLB = TProfile_LW::create("NoisyModulesTrigger1000_vsLB",
@@ -2803,7 +2747,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesTrigger1000_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesTrigger1000_vsLB->GetYaxis()->SetTitle("Noisy Modules");
     if (NoiseDistributions.regHist(m_NoisyModulesTrigger1000_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesTrigger1000_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesTrigger1000_vsLB");
     }
 
     m_NoisyModulesTrigger10000_vsLB = TProfile_LW::create("NoisyModulesTrigger10000_vsLB",
@@ -2812,7 +2756,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesTrigger10000_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesTrigger10000_vsLB->GetYaxis()->SetTitle("Noisy Modules");
     if (NoiseDistributions.regHist(m_NoisyModulesTrigger10000_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesTrigger10000_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesTrigger10000_vsLB");
     }
 
     m_SCTNOTrigger_vsLB = TProfile_LW::create("NOTrigger_vsLB", "NO with trigger vs LB for all region (SP noise)", SCT_Monitoring::NBINS_LBs,
@@ -2820,7 +2764,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_SCTNOTrigger_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_SCTNOTrigger_vsLB->GetYaxis()->SetTitle("Noise Occupancy [10^{-5}]");
     if (NoiseDistributions.regHist(m_SCTNOTrigger_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book SCTNOTrigger_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book SCTNOTrigger_vsLB");
     }
 
     m_NoisyModules100_vsLB = TProfile_LW::create("NoisyModules100_vsLB", "NoisyModules100 vs LB for all region (SP noise)",
@@ -2828,7 +2772,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModules100_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModules100_vsLB->GetYaxis()->SetTitle("Noisy Modules");
     if (NoiseDistributions.regHist(m_NoisyModules100_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModules100_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModules100_vsLB");
     }
 
     m_NoisyModules1000_vsLB = TProfile_LW::create("NoisyModules1000_vsLB", "NoisyModules1000 vs LB for all region (SP noise)",
@@ -2836,7 +2780,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModules1000_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModules1000_vsLB->GetYaxis()->SetTitle("Noisy Modules");
     if (NoiseDistributions.regHist(m_NoisyModules1000_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModules1000_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModules1000_vsLB");
     }
 
     m_NoisyModules10000_vsLB = TProfile_LW::create("NoisyModules10000_vsLB", "NoisyModules10000 vs LB for all region (SP noise)",
@@ -2844,9 +2788,8 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModules10000_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModules10000_vsLB->GetYaxis()->SetTitle("Noisy Modules");
     if (NoiseDistributions.regHist(m_NoisyModules10000_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModules10000_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModules10000_vsLB");
     }
-    // 09.09.2016
     m_BARHO = new TH1F("barrelHOdistribution", "HO Distribution for the Barrel", bins, xmin, xmax);
     m_BARHO->GetXaxis()->SetTitle("Hit Occupancy [10^{-5}]");
     m_BARHO->GetYaxis()->SetTitle("Modules");
@@ -2854,7 +2797,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_BARHO->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_BARHO).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book BARHO" << endmsg;
+      ATH_MSG_WARNING("Couldn't book BARHO");
     }
 
     std::string barrelHO_title = "HO Distribution for the Barrel for " + m_NOTrigger + " trigger";
@@ -2865,7 +2808,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_BARHOTrigger->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_BARHOTrigger).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book BARHOTrigger" << endmsg;
+      ATH_MSG_WARNING("Couldn't book BARHOTrigger");
     }
     m_ECmHO = new TH1F("ECCHOdistribution", "HO Distribution for the EndCap C", bins, xmin, xmax);
 
@@ -2875,7 +2818,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_ECmHO->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_ECmHO).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book ECmHO" << endmsg;
+      ATH_MSG_WARNING("Couldn't book ECmHO");
     }
 
     std::string ECmHO_title = "HO Distribution for the EndCap C for " + m_NOTrigger + " trigger";
@@ -2886,7 +2829,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_ECmHOTrigger->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_ECmHOTrigger).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book ECmHOTrigger" << endmsg;
+      ATH_MSG_WARNING("Couldn't book ECmHOTrigger");
     }
 
     m_ECpHO = new TH1F("ECAHOdistribution", "HO Distribution for the EndCap A", bins, xmin, xmax);
@@ -2896,7 +2839,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_ECpHO->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_ECpHO).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book ECpHO" << endmsg;
+      ATH_MSG_WARNING("Couldn't book ECpHO");
     }
 
     std::string ECpHO_title = "HO Distribution for the EndCap A for " + m_NOTrigger + " trigger";
@@ -2907,7 +2850,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_ECpHOTrigger->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_ECpHOTrigger).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book ECpHOTrigger" << endmsg;
+      ATH_MSG_WARNING("Couldn't book ECpHOTrigger");
     }
 
     m_SCTHO = new TH1F("SCTHOdistribution", "HO Distribution for the SCT", bins, xmin, xmax);
@@ -2917,7 +2860,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_SCTHO->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_SCTHO).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book HO" << endmsg;
+      ATH_MSG_WARNING("Couldn't book HO");
     }
 
     std::string HO_title = "HO Distribution for the SCT for " + m_NOTrigger + " trigger";
@@ -2928,14 +2871,14 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
       m_SCTHOTrigger->SetBins(bins, xbins);
     }
     if (NoiseDistributions.regHist(m_SCTHOTrigger).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book HOTrigger" << endmsg;
+      ATH_MSG_WARNING("Couldn't book HOTrigger");
     }
 
     m_SCTHO_vsLB = TProfile_LW::create("HO_vsLB", "HO vs LB for all region (SP noise)", SCT_Monitoring::NBINS_LBs, 0.5, SCT_Monitoring::NBINS_LBs + 0.5);
     m_SCTHO_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_SCTHO_vsLB->GetYaxis()->SetTitle("Hit Occupancy [10^{-5}]");
     if (NoiseDistributions.regHist(m_SCTHO_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book SCTHO_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book SCTHO_vsLB");
     }
 
     m_NoisyModulesWithHOTrigger100_vsLB = TProfile_LW::create("NoisyModulesWithHOTrigger100_vsLB",
@@ -2944,7 +2887,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesWithHOTrigger100_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesWithHOTrigger100_vsLB->GetYaxis()->SetTitle("Noisy Modules with HO");
     if (NoiseDistributions.regHist(m_NoisyModulesWithHOTrigger100_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesWithHOTrigger100_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesWithHOTrigger100_vsLB");
     }
 
     m_NoisyModulesWithHOTrigger1000_vsLB = TProfile_LW::create("NoisyModulesWithHOTrigger1000_vsLB",
@@ -2953,7 +2896,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesWithHOTrigger1000_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesWithHOTrigger1000_vsLB->GetYaxis()->SetTitle("Noisy Modules with HO");
     if (NoiseDistributions.regHist(m_NoisyModulesWithHOTrigger1000_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesWithHOTrigger1000_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesWithHOTrigger1000_vsLB");
     }
 
     m_NoisyModulesWithHOTrigger10000_vsLB = TProfile_LW::create("NoisyModulesWithHOTrigger10000_vsLB",
@@ -2962,7 +2905,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesWithHOTrigger10000_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesWithHOTrigger10000_vsLB->GetYaxis()->SetTitle("Noisy Modules with HO");
     if (NoiseDistributions.regHist(m_NoisyModulesWithHOTrigger10000_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesWithHOTrigger10000_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesWithHOTrigger10000_vsLB");
     }
 
     m_SCTHOTrigger_vsLB = TProfile_LW::create("HOTrigger_vsLB", "HO with trigger vs LB for all region (SP noise)", SCT_Monitoring::NBINS_LBs,
@@ -2970,7 +2913,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_SCTHOTrigger_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_SCTHOTrigger_vsLB->GetYaxis()->SetTitle("Hit Occupancy [10^{-5}]");
     if (NoiseDistributions.regHist(m_SCTHOTrigger_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book SCTHOTrigger_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book SCTHOTrigger_vsLB");
     }
 
     m_NoisyModulesWithHO100_vsLB = TProfile_LW::create("NoisyModulesWithHO100_vsLB",
@@ -2979,7 +2922,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesWithHO100_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesWithHO100_vsLB->GetYaxis()->SetTitle("Noisy Modules with HO");
     if (NoiseDistributions.regHist(m_NoisyModulesWithHO100_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesWithHO100_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesWithHO100_vsLB");
     }
 
     m_NoisyModulesWithHO1000_vsLB = TProfile_LW::create("NoisyModulesWithHO1000_vsLB",
@@ -2988,7 +2931,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesWithHO1000_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesWithHO1000_vsLB->GetYaxis()->SetTitle("Noisy Modules with HO");
     if (NoiseDistributions.regHist(m_NoisyModulesWithHO1000_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesWithHO1000_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesWithHO1000_vsLB");
     }
 
     m_NoisyModulesWithHO10000_vsLB = TProfile_LW::create("NoisyModulesWithHO10000_vsLB",
@@ -2997,7 +2940,7 @@ SCTHitsNoiseMonTool::bookNoiseDistributions() {
     m_NoisyModulesWithHO10000_vsLB->GetXaxis()->SetTitle("LumiBlock");
     m_NoisyModulesWithHO10000_vsLB->GetYaxis()->SetTitle("Noisy Modules with HO");
     if (NoiseDistributions.regHist(m_NoisyModulesWithHO10000_vsLB).isFailure()) {
-      msg(MSG::WARNING) << "Couldn't book NoisyModulesWithHO10000_vsLB" << endmsg;
+      ATH_MSG_WARNING("Couldn't book NoisyModulesWithHO10000_vsLB");
     }
   }
   return StatusCode::SUCCESS;
@@ -3071,9 +3014,7 @@ SCTHitsNoiseMonTool::makeSPvsEventNumber() {
 
   // get space points for SCT from TDS
   if (not SCT_spcontainer.isValid()) {
-    if (msgLvl(MSG::WARNING)) {
-      msg(MSG::WARNING) << "Si SpacePoint container for SCT not found" << endmsg;
-    }
+    ATH_MSG_WARNING("Si SpacePoint container for SCT not found");
     return StatusCode::FAILURE;
   }
   int sct_nspacepoints(0);
@@ -3150,43 +3091,34 @@ SCTHitsNoiseMonTool::makeVectorOfTrackRDOIdentifiers() {
   m_RDOsOnTracks.clear();
   SG::ReadHandle<SCT_RDO_Container> p_rdocontainer(m_dataObjectName);
   if (not p_rdocontainer.isValid()) {
-    msg(MSG::FATAL) << "Could not find the data object " << m_dataObjectName.key() << " !" << endmsg;
+    ATH_MSG_FATAL("Could not find the data object " << m_dataObjectName.key() << " !");
     return StatusCode::FAILURE;
   } else {
-    if (msgLvl(MSG::DEBUG)) {
-      msg(MSG::DEBUG) << "Data object " << m_dataObjectName.key() << " found" << endmsg;
-    }
+    ATH_MSG_DEBUG("Data object " << m_dataObjectName.key() << " found");
   }
   
   SG::ReadHandle<TrackCollection> tracks(m_tracksName);
   if (not tracks.isValid()) {
-    msg(MSG::FATAL) << "No tracks for you!" << endmsg;
+    ATH_MSG_FATAL("No tracks for you!");
     return StatusCode::FAILURE;
   }
   // Only do for events with less than some number of tracks
   if (tracks->size() > m_maxTracks) {
-    if (msgLvl(MSG::DEBUG)) {
-      msg(MSG::DEBUG) << "The event has more than " << m_maxTracks
-                      << " tracks. Don't do hits-on-track-hists" << endmsg;
-    }
+    ATH_MSG_DEBUG("The event has more than " << m_maxTracks
+                  << " tracks. Don't do hits-on-track-hists");
     return StatusCode::SUCCESS;
   }
   // assemble list of rdo ids associated with tracks
   for (int i = 0; i < (int) tracks->size(); i++) {
     const Trk::Track *track = (*tracks)[i];
     if (track == 0) {
-      if (msgLvl(MSG::WARNING)) {
-        msg(MSG::WARNING) << "no pointer to track!!!" << endmsg;
-      }
+      ATH_MSG_WARNING("no pointer to track!!!");
       break;
     }
     // Get pointer to track state on surfaces
     const DataVector<const Trk::TrackStateOnSurface> *trackStates = track->trackStateOnSurfaces();
     if (trackStates == 0) {
-      if (msgLvl(MSG::WARNING)) {
-        msg(MSG::WARNING) <<
-	  "for current track is TrackStateOnSurfaces == Null, no data will be written for this track" << endmsg;
-      }
+      ATH_MSG_WARNING("for current track is TrackStateOnSurfaces == Null, no data will be written for this track");
     }else {// Loop over all track states on surfaces
       for (DataVector<const Trk::TrackStateOnSurface>::const_iterator it = trackStates->begin();
            it != trackStates->end(); it++) {
@@ -3197,9 +3129,7 @@ SCTHitsNoiseMonTool::makeVectorOfTrackRDOIdentifiers() {
           // Get Pointer to prepRawDataObject
           const InDet::SiCluster *RawDataClus = dynamic_cast<const InDet::SiCluster *>(clus->prepRawData());
           if (RawDataClus == 0) {
-            if (msgLvl(MSG::WARNING)) {
-              msg(MSG::WARNING) << "SiCluster WITHOUT prepRawData!!!!" << endmsg;
-            }
+            ATH_MSG_WARNING("SiCluster WITHOUT prepRawData!!!!");
             break;
           }
           // if Cluster is in SCT ...
@@ -3211,9 +3141,7 @@ SCTHitsNoiseMonTool::makeVectorOfTrackRDOIdentifiers() {
       }
     }
   }
-  if (msgLvl(MSG::DEBUG)) {
-    msg(MSG::DEBUG) << "JEGN!! num RDOs on tracks is " << m_RDOsOnTracks.size() << endmsg;
-  }
+  ATH_MSG_DEBUG("JEGN!! num RDOs on tracks is " << m_RDOsOnTracks.size());
   return StatusCode::SUCCESS;
 }
 
@@ -3223,7 +3151,7 @@ SCTHitsNoiseMonTool::bookGeneralTrackHits(const unsigned int systemIndex) {
   const SCT_Monitoring::Bec bec(index2Bec(systemIndex));
 
   if (bec == INVALID_SYSTEM) {
-    msg(MSG::FATAL) << "Invalid subsystem index, should be 0-2, was " << systemIndex << endmsg;
+    ATH_MSG_FATAL("Invalid subsystem index, should be 0-2, was " << systemIndex);
     return StatusCode::FAILURE;
   }
   const string paths[] = {
@@ -3427,7 +3355,7 @@ SCTHitsNoiseMonTool::h2Factory(const std::string &name, const std::string &title
   tmp->SetYTitle("Index in the direction of #phi");
   bool success(registry.regHist(tmp).isSuccess());
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   storageVector.push_back(tmp);
   return success ? tmp : NULL;
@@ -3442,7 +3370,7 @@ SCTHitsNoiseMonTool::h2IFactory(const std::string &name, const std::string &titl
   tmp->SetYTitle("Time bin");
   bool success(registry.regHist(tmp).isSuccess());
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -3456,7 +3384,7 @@ SCTHitsNoiseMonTool::prof2DFactory(const std::string &name, const std::string &t
   tmp->SetYTitle("Index in the direction of #phi");
   bool success(registry.regHist(tmp).isSuccess());
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -3470,7 +3398,7 @@ SCTHitsNoiseMonTool::profFactory(const std::string &name, const std::string &tit
   tmp->SetYTitle("Fraction of 01X");
   bool success(registry.regHist(tmp).isSuccess());
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -3485,7 +3413,7 @@ SCTHitsNoiseMonTool::profFactory(const std::string &name, const std::string &tit
   tmp->GetXaxis()->SetBinLabel(3, "Endcap A");
   bool success(registry.regHist(tmp).isSuccess());
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -3510,7 +3438,7 @@ SCTHitsNoiseMonTool::prof2Factory(const std::string &name, const std::string &ti
   tmp->SetYTitle("Index in the direction of #phi");
   bool success(registry.regHist(tmp).isSuccess());
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   storageVector.push_back(tmp);
   return success ? tmp : NULL;
@@ -3523,7 +3451,7 @@ SCTHitsNoiseMonTool::h1Factory(const std::string &name, const std::string &title
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -3535,7 +3463,7 @@ SCTHitsNoiseMonTool::h1Factory(const std::string &name, const std::string &title
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   storageVector.push_back(tmp);
   return success ? tmp : NULL;
@@ -3548,7 +3476,7 @@ SCTHitsNoiseMonTool::th1Factory(const std::string &name, const std::string &titl
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -3560,7 +3488,7 @@ SCTHitsNoiseMonTool::th1Factory(const std::string &name, const std::string &titl
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   storageVector.push_back(tmp);
   return success ? tmp : NULL;
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTLorentzMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTLorentzMonTool.cxx
old mode 100755
new mode 100644
index a578cbcbb60ce42f2e7b1c812d10cc95b4c3f544..cf4ccd067287e18fc9734eb3ebfef3e874b2b289
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTLorentzMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTLorentzMonTool.cxx
@@ -9,7 +9,6 @@
  *    Modified by Yuta
  */
 #include "SCT_Monitoring/SCTLorentzMonTool.h"
-#include "deletePointers.h"
 #include "SCT_NameFormatter.h"
 #include <cmath>
 #include <type_traits>
@@ -85,22 +84,16 @@ StatusCode SCTLorentzMonTool::initialize() {
 // ====================================================================================================
 //                       SCTLorentzMonTool :: bookHistograms
 // ====================================================================================================
-// StatusCode SCTLorentzMonTool::bookHistograms( bool /*isNewEventsBlock*/, bool isNewLumiBlock, bool isNewRun
-// )//suppress 'unused' compiler warning     // hidetoshi 14.01.21
 StatusCode
-SCTLorentzMonTool::bookHistogramsRecurrent( ) {                                                                                              //
-                                                                                                                                             // hidetoshi
-                                                                                                                                             // 14.01.21
+SCTLorentzMonTool::bookHistogramsRecurrent( ) {
   m_path = "";
   if (newRunFlag()) {
-    m_numberOfEvents = 0;                                                                                                                        //
-                                                                                                                                                 // hidetoshi
-                                                                                                                                                 // 14.01.21
+    m_numberOfEvents = 0;
   }
   ATH_MSG_DEBUG("initialize being called");
   // Booking  Track related Histograms
   if (bookLorentzHistos().isFailure()) {
-    msg(MSG::WARNING) << "Error in bookLorentzHistos()" << endmsg;                                // hidetoshi 14.01.22
+    ATH_MSG_WARNING("Error in bookLorentzHistos()");
   }
   return StatusCode::SUCCESS;
 }
@@ -109,19 +102,15 @@ SCTLorentzMonTool::bookHistogramsRecurrent( ) {
 //                       SCTLorentzMonTool :: bookHistograms
 // ====================================================================================================
 StatusCode
-SCTLorentzMonTool::bookHistograms( ) {                                                                                                      //
-                                                                                                                                            // hidetoshi
-                                                                                                                                            // 14.01.21
+SCTLorentzMonTool::bookHistograms( ) {
   m_path = "";
-  m_numberOfEvents = 0;                                                                                                                                  //
-                                                                                                                                                         // hidetoshi
-                                                                                                                                                         // 14.01.21
+  m_numberOfEvents = 0;
   ATH_MSG_DEBUG("initialize being called");
   /* Retrieve TrackToVertex extrapolator tool */
   ATH_CHECK(m_trackToVertexTool.retrieve());
   // Booking  Track related Histograms
   if (bookLorentzHistos().isFailure()) {
-    msg(MSG::WARNING) << "Error in bookLorentzHistos()" << endmsg;                                // hidetoshi 14.01.22
+    ATH_MSG_WARNING("Error in bookLorentzHistos()");
   }
   return StatusCode::SUCCESS;
 }
@@ -167,7 +156,7 @@ SCTLorentzMonTool::fillHistograms() {
 
   SG::ReadHandle<TrackCollection> tracks(m_tracksName);
   if (not tracks.isValid()) {
-    msg(MSG::WARNING) << " TrackCollection not found: Exit SCTLorentzTool" << m_tracksName.key() << endmsg;
+    ATH_MSG_WARNING(" TrackCollection not found: Exit SCTLorentzTool" << m_tracksName.key());
     return StatusCode::SUCCESS;
   }
   TrackCollection::const_iterator trkitr = tracks->begin();
@@ -177,21 +166,20 @@ SCTLorentzMonTool::fillHistograms() {
     // Get track
     const Trk::Track *track = (*trkitr);
     if (not track) {
-      msg(MSG::ERROR) << "no pointer to track!!!" << endmsg;
+      ATH_MSG_ERROR("no pointer to track!!!");
       continue;
     }
 
     // Get pointer to track state on surfaces
     const DataVector<const Trk::TrackStateOnSurface> *trackStates = track->trackStateOnSurfaces();
     if (not trackStates) {
-      msg(MSG::WARNING) << "for current track, TrackStateOnSurfaces == Null, no data will be written for this track" <<
-      endmsg;
+      ATH_MSG_WARNING("for current track, TrackStateOnSurfaces == Null, no data will be written for this track");
       continue;
     }
 
     const Trk::TrackSummary *summary = track->trackSummary();
     if (not summary) {
-      msg(MSG::WARNING) << " null trackSummary" << endmsg;
+      ATH_MSG_WARNING(" null trackSummary");
       continue;
     }
 
@@ -229,7 +217,7 @@ SCTLorentzMonTool::fillHistograms() {
             int nStrip = rdoList.size();
             const Trk::TrackParameters *trkp = dynamic_cast<const Trk::TrackParameters *>((*it)->trackParameters());
             if (not trkp) {
-              msg(MSG::WARNING) << " Null pointer to MeasuredTrackParameters" << endmsg;
+              ATH_MSG_WARNING(" Null pointer to MeasuredTrackParameters");
               continue;
             }
 
@@ -245,7 +233,7 @@ SCTLorentzMonTool::fillHistograms() {
               pTrack[2] = trkp->momentum().z();
               int iflag = findAnglesToWaferSurface(pTrack, sinAlpha, clus->identify(), elements, thetaToWafer, phiToWafer);
               if (iflag < 0) {
-                msg(MSG::WARNING) << "Error in finding track angles to wafer surface" << endmsg;
+                ATH_MSG_WARNING("Error in finding track angles to wafer surface");
                 continue; // Let's think about this (later)... continue, break or return?
               }
 
@@ -256,7 +244,7 @@ SCTLorentzMonTool::fillHistograms() {
                   (summary->get(Trk::numberOfSCTHits) > 6)// && // #SCTHits >6
                   ) {
                 passesCuts = true;
-              }// 01.02.2015
+              }
               else if ((track->perigeeParameters()->parameters()[Trk::qOverP] < 0.) && // use negative track only
                        (fabs(perigee->parameters()[Trk::d0]) < 1.) && // d0 < 1mm
                        (fabs(perigee->parameters()[Trk::z0] * sin(perigee->parameters()[Trk::theta])) < 1.) && // d0 <
@@ -299,9 +287,7 @@ SCTLorentzMonTool::fillHistograms() {
 //                             SCTLorentzMonTool :: procHistograms
 // ====================================================================================================
 StatusCode
-SCTLorentzMonTool::procHistograms() {                                                                                                                //
-                                                                                                                                                     // hidetoshi
-                                                                                                                                                     // 14.01.21
+SCTLorentzMonTool::procHistograms() {
   if (endOfRunFlag()) {
     ATH_MSG_DEBUG("finalHists()");
     ATH_MSG_DEBUG("Total Rec Event Number: " << m_numberOfEvents);
@@ -323,14 +309,11 @@ SCTLorentzMonTool::checkHists(bool /*fromFinalize*/) {
 //                              SCTLorentzMonTool :: bookLorentzHistos
 // ====================================================================================================
 StatusCode
-SCTLorentzMonTool::bookLorentzHistos() {                                                                                                                //
-                                                                                                                                                        // hidetoshi
-                                                                                                                                                        // 14.01.22
+SCTLorentzMonTool::bookLorentzHistos() {
   const int nLayers(4);
   const int nSides(2);
   string stem = m_path + "/SCT/GENERAL/lorentz/";
-  //    MonGroup Lorentz(this,m_path+"SCT/GENERAL/lorentz",expert,run);        // hidetoshi 14.01.21
-  MonGroup Lorentz(this, m_path + "SCT/GENERAL/lorentz", run, ATTRIB_UNMANAGED);     // hidetoshi 14.01.21
+  MonGroup Lorentz(this, m_path + "SCT/GENERAL/lorentz", run, ATTRIB_UNMANAGED);
 
   string hNum[nLayers] = {
     "0", "1", "2", "3"
@@ -386,23 +369,6 @@ SCTLorentzMonTool::bookLorentzHistos() {
   if (success == 0) {
     return StatusCode::FAILURE;
   }
-  //  }
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //   
-  //                                                                                                                 //
-  // hidetoshi 14.01.22
   return StatusCode::SUCCESS;
 }
 
@@ -413,9 +379,7 @@ SCTLorentzMonTool::pFactory(const std::string &name, const std::string &title, i
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    if (msgLvl(MSG::ERROR)) {
-      msg(MSG::ERROR) << "Cannot book SCT histogram: " << name << endmsg;
-    }
+    ATH_MSG_ERROR("Cannot book SCT histogram: " << name);
     iflag = 0;
   }else {
     iflag = 1;
@@ -433,9 +397,7 @@ SCTLorentzMonTool::h1Factory(const std::string &name, const std::string &title,
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    if (msgLvl(MSG::ERROR)) {
-      msg(MSG::ERROR) << "Cannot book SCT histogram: " << name << endmsg;
-    }
+    ATH_MSG_ERROR("Cannot book SCT histogram: " << name);
   }
   storageVector.push_back(tmp);
   return success;
@@ -454,9 +416,8 @@ SCTLorentzMonTool::findAnglesToWaferSurface(const float (&vec)[3], const float &
   const IdentifierHash waferHash = m_pSCTHelper->wafer_hash(waferId);
   const InDetDD::SiDetectorElement *element = elements->getDetectorElement(waferHash);
   if (!element) {
-    MsgStream log(msgSvc(), name());
-    log << MSG::ERROR << "findAnglesToWaferSurface:  failed to find detector element for id=" <<
-    m_pSCTHelper->show_to_string(id) << endmsg;
+    ATH_MSG_ERROR("findAnglesToWaferSurface:  failed to find detector element for id=" <<
+                  m_pSCTHelper->show_to_string(id));
     return iflag;
   }
 
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTMotherTrigMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTMotherTrigMonTool.cxx
old mode 100755
new mode 100644
index 78240d503e516252f8e2653c6e9e8f455940a7ea..b935037b7828667be53b6f783bef387ac235f7a3
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTMotherTrigMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTMotherTrigMonTool.cxx
@@ -30,7 +30,7 @@ SCTMotherTrigMonTool::SCTMotherTrigMonTool(const std::string &type, const std::s
 StatusCode
 SCTMotherTrigMonTool::initialize() {
   if (ManagedMonitorToolBase::initialize().isFailure()) {
-    msg(MSG::ERROR) << "Could not initialize Monitor tool base!" << endmsg;
+    ATH_MSG_ERROR("Could not initialize Monitor tool base!");
     return StatusCode::FAILURE;
   }
 
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTRatioNoiseMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTRatioNoiseMonTool.cxx
old mode 100755
new mode 100644
index 7cc6669cdaa563ae9eb4cf83af343b7b53329d4a..778dc20c4bc13cd22a811df912cdb5edc55835a6
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTRatioNoiseMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTRatioNoiseMonTool.cxx
@@ -8,7 +8,6 @@
  *
  */
 #include "SCT_Monitoring/SCTRatioNoiseMonTool.h"
-#include "deletePointers.h"
 #include "SCT_NameFormatter.h"
 #include <cmath>
 
@@ -277,7 +276,7 @@ SCTRatioNoiseMonTool::bookHistogramsRecurrent() {
   }
   // Booking  Track related Histograms
   if (bookRatioNoiseHistos().isFailure()) {
-    msg(MSG::WARNING) << "Error in bookRatioNoiseHistos()" << endmsg;
+    ATH_MSG_WARNING("Error in bookRatioNoiseHistos()");
   }
   return StatusCode::SUCCESS;
 }
@@ -299,7 +298,7 @@ SCTRatioNoiseMonTool::bookHistograms() {
   }
   // Booking  Track related Histograms
   if (bookRatioNoiseHistos().isFailure()) {
-    msg(MSG::WARNING) << "Error in bookRatioNoiseHistos()" << endmsg;
+    ATH_MSG_WARNING("Error in bookRatioNoiseHistos()");
   }
 
   return StatusCode::SUCCESS;
@@ -800,9 +799,7 @@ SCTRatioNoiseMonTool::procHistograms() {
   m_NOECCSide->SetBinContent(m_NOECCSide->GetNbinsX(), m_NOECCSide->GetBinContent(
                                m_NOECCSide->GetNbinsX()) + m_NOECCSide->GetBinContent(m_NOECCSide->GetNbinsX() + 1));
 
-  if (msgLvl(MSG::DEBUG)) {
-    msg(MSG::DEBUG) << "Total Rec Event Number: " << m_numberOfEvents << endmsg;
-  }
+  ATH_MSG_DEBUG("Total Rec Event Number: " << m_numberOfEvents);
   return StatusCode::SUCCESS;
 }
 
@@ -830,10 +827,10 @@ SCTRatioNoiseMonTool::checkHists(bool /*fromFinalize*/) {
 //                              SCTRatioNoiseMonTool :: bookRatioNoiseHistos
 // ====================================================================================================
 StatusCode
-SCTRatioNoiseMonTool::bookRatioNoiseHistos() {      // hidetoshi 14.01.22
-  if (newRunFlag()) {                                         // hidetoshi 14.01.22
+SCTRatioNoiseMonTool::bookRatioNoiseHistos() {
+  if (newRunFlag()) {
     string stem = m_path + "/SCT/GENERAL/RatioNoise/";
-    MonGroup RatioNoise(this, m_path + "SCT/GENERAL/RatioNoise", run, ATTRIB_UNMANAGED); // hidetoshi 14.01.22
+    MonGroup RatioNoise(this, m_path + "SCT/GENERAL/RatioNoise", run, ATTRIB_UNMANAGED);
 
     string hNumBarrel[N_BARRELS] = {
       "0", "1", "2", "3"
@@ -1090,7 +1087,7 @@ SCTRatioNoiseMonTool::pFactory(const std::string &name, const std::string &title
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -1102,7 +1099,7 @@ SCTRatioNoiseMonTool::h1Factory(const std::string &name, const std::string &titl
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -1115,7 +1112,7 @@ SCTRatioNoiseMonTool::h2Factory(const std::string &name, const std::string &titl
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   return success ? tmp : NULL;
 }
@@ -1127,7 +1124,7 @@ SCTRatioNoiseMonTool::h1Factory(const std::string &name, const std::string &titl
   bool success(registry.regHist(tmp).isSuccess());
 
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   storageVector.push_back(tmp);
   return success ? tmp : NULL;
@@ -1153,7 +1150,7 @@ SCTRatioNoiseMonTool::prof2Factory(const std::string &name, const std::string &t
   tmp->SetYTitle("Index in the direction of #phi");
   bool success(registry.regHist(tmp).isSuccess());
   if (not success) {
-    msg(MSG::WARNING) << "Cannot book SCT histogram: " << name << endmsg;
+    ATH_MSG_WARNING("Cannot book SCT histogram: " << name);
   }
   storageVector.push_back(tmp);
   return success ? tmp : NULL;
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTSummaryMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTSummaryMonTool.cxx
old mode 100755
new mode 100644
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTTracksMonTool.cxx b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTTracksMonTool.cxx
index 9d281448370713649c446eba41ea7f8d08e00988..69914f5e1c3e0a1955e49dd4ca8eef351f4400d8 100644
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTTracksMonTool.cxx
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCTTracksMonTool.cxx
@@ -8,7 +8,6 @@
  *    Also uses code from InDet::SCT_ResidualPullCalculator
  */
 #include "SCT_Monitoring/SCTTracksMonTool.h"
-#include "deletePointers.h"
 #include "SCT_NameFormatter.h"
 #include <cmath>
 #include "AthenaKernel/errorcheck.h"
@@ -153,24 +152,19 @@ StatusCode SCTTracksMonTool::initialize() {
 // ====================================================================================================
 //                       SCTTracksMonTool :: bookHistograms
 // ====================================================================================================
-// StatusCode SCTTracksMonTool::bookHistograms( bool /*isNewEventsBlock*/, bool isNewLumiBlock, bool isNewRun )  //
-// hidetoshi 14.01.21
 StatusCode
-SCTTracksMonTool::bookHistogramsRecurrent() {                                                        // hidetoshi
-                                                                                                     // 14.01.21
+SCTTracksMonTool::bookHistogramsRecurrent() {
   ATH_MSG_DEBUG("SCTTracksMonTool::bookHistograms");
   m_path = (m_useIDGlobal) ? ("/InDetGlobal/") : ("");
   if (newRunFlag()) {
-    m_numberOfEvents = 0;                                                                              // hidetoshi
-                                                                                                       // 14.01.21
+    m_numberOfEvents = 0;
   }
   CHECK(detStore()->retrieve(m_pSCTHelper, "SCT_ID"));
   if (m_doUnbiasedCalc) {
     CHECK(m_updator.retrieve());
   }
   // Booking  Track related Histograms
-  CHECK(bookGeneralHistos());                                                                                   // hidetoshi
-                                                                                                                // 14.01.21
+  CHECK(bookGeneralHistos());
   const bool doThisSubsystem[N_REGIONS] = {
     m_doNegativeEndcap, true, m_doPositiveEndcap
   };
@@ -178,8 +172,7 @@ SCTTracksMonTool::bookHistogramsRecurrent() {
     "endcap C", "barrel", "endcap A"
   };
   for (unsigned int sys(0); sys != N_REGIONS; ++sys) {
-    if (doThisSubsystem[sys] and bookTrackHistos(index2Bec(sys)).isFailure()) {                                 // hidetoshi
-                                                                                                                // 14.01.22
+    if (doThisSubsystem[sys] and bookTrackHistos(index2Bec(sys)).isFailure()) {
       ATH_MSG_WARNING("Error in booking track histograms for " << names[sys]);
     }
   }
@@ -190,24 +183,19 @@ SCTTracksMonTool::bookHistogramsRecurrent() {
 // ====================================================================================================
 //                       SCTTracksMonTool :: bookHistograms
 // ====================================================================================================
-// StatusCode SCTTracksMonTool::bookHistograms( bool /*isNewEventsBlock*/, bool isNewLumiBlock, bool isNewRun ) //
-// hidetoshi 14.01.21
 StatusCode
-SCTTracksMonTool::bookHistograms() {                                                                // hidetoshi
-                                                                                                    // 14.01.21
+SCTTracksMonTool::bookHistograms() {
   ATH_MSG_DEBUG("SCTTracksMonTool::bookHistograms");
   m_path = (m_useIDGlobal) ? ("/InDetGlobal/") : ("");
   if (newRunFlag()) {
-    m_numberOfEvents = 0;                                                                            // hidetoshi
-                                                                                                     // 14.11.27
+    m_numberOfEvents = 0;
   }
   CHECK(detStore()->retrieve(m_pSCTHelper, "SCT_ID"));
   if (m_doUnbiasedCalc) {
     CHECK(m_updator.retrieve());
   }
   // Booking  Track related Histograms
-  CHECK(bookGeneralHistos());                                                                                   // hidetoshi
-                                                                                                                // 14.01.21
+  CHECK(bookGeneralHistos());
   const bool doThisSubsystem[N_REGIONS] = {
     m_doNegativeEndcap, true, m_doPositiveEndcap
   };
@@ -215,8 +203,7 @@ SCTTracksMonTool::bookHistograms() {
     "endcap C", "barrel", "endcap A"
   };
   for (unsigned int sys(0); sys != N_REGIONS; ++sys) {
-    if (doThisSubsystem[sys] and bookTrackHistos(index2Bec(sys)).isFailure()) {                               // hidetoshi
-                                                                                                              // 14.01.22
+    if (doThisSubsystem[sys] and bookTrackHistos(index2Bec(sys)).isFailure()) {
       ATH_MSG_WARNING("Error in booking track histograms for " << names[sys]);
     }
   }
@@ -241,7 +228,7 @@ SCTTracksMonTool::fillHistograms() {
       m_psctresiduals_summaryHistoVector[n]->GetXaxis()->SetTitle("Residuals [mm]");
       m_psctpulls_summaryHistoVector[n]->GetXaxis()->SetTitle("Pull");
     }
-    if (m_environment != AthenaMonManager::online) { // 27.11.2014
+    if (m_environment != AthenaMonManager::online) {
       for (int mm = 0; mm < N_DISKSx2; mm++) {
         m_psctresidualsHistoVectorECm[mm]->GetXaxis()->SetTitle("Index in the direction of #eta");
         m_psctresidualsHistoVectorECm[mm]->GetYaxis()->SetTitle("Index in the direction of #phi");
@@ -358,13 +345,13 @@ SCTTracksMonTool::fillHistograms() {
     VecProf2_t *pullsHistogramArray[3];
     Prof2_t residualsHistogram(0);
     Prof2_t pullsHistogram(0);
-    if (m_environment != AthenaMonManager::online) { // 27.11.2014
+    if (m_environment != AthenaMonManager::online) {
       residualsHistogramArray[0] = &m_psctresidualsHistoVectorECm;
       residualsHistogramArray[1] = &m_psctresidualsHistoVector;
       residualsHistogramArray[2] = &m_psctresidualsHistoVectorECp;
       pullsHistogramArray[0] = &m_psctpullsHistoVectorECm;
       pullsHistogramArray[1] = &m_psctpullsHistoVector;
-      pullsHistogramArray[2] = &m_psctpullsHistoVectorECp;// 27.11.2014
+      pullsHistogramArray[2] = &m_psctpullsHistoVectorECp;
     }
 
     VecH1_t *residualsSummaryHistogramArray[3] = {
@@ -435,16 +422,16 @@ SCTTracksMonTool::fillHistograms() {
                   if (doThisDetector) {
                     residualsSummaryHistogram = (*residualsSummaryHistogramArray[subsystemIndex])[element];
                     pullsSummaryHistogram = (*pullsSummaryHistogramArray[subsystemIndex])[element];
-                    if (m_environment != AthenaMonManager::online) { // 27.11.2014
-                      residualsHistogram = (*residualsHistogramArray[subsystemIndex])[element]; // 27.11.2014
-                      pullsHistogram = (*pullsHistogramArray[subsystemIndex])[element];// 27.11.2014
+                    if (m_environment != AthenaMonManager::online) {
+                      residualsHistogram = (*residualsHistogramArray[subsystemIndex])[element];
+                      pullsHistogram = (*pullsHistogramArray[subsystemIndex])[element];
                       if (residualsHistogram) {
                         residualsHistogram->Fill(eta, phi, local_residual);
                       }
                       if (bigPull and pullsHistogram) {
                         pullsHistogram->Fill(eta, phi, local_pull);
                       }
-                    } // 27.11.2014
+                    }
                     if (residualsSummaryHistogram) {
                       residualsSummaryHistogram->Fill(local_residual, 1.);
                     }
@@ -484,11 +471,10 @@ SCTTracksMonTool::fillHistograms() {
                                     if (doThisDetector){
                                         residualsSummaryHistogram =
                                            (*residualsSummaryHistogramArray[subsystemIndex])[element];
-                                        if(m_environment != AthenaMonManager::online){ // 27.11.2014
+                                        if(m_environment != AthenaMonManager::online){
                                             residualsHistogram = (*residualsHistogramArray[subsystemIndex])[element];
-                                               //27.11.2014
                                             if (residualsHistogram) residualsHistogram->Fill(eta, phi, local_residual);
-                                        } //27.11.2014
+                                        }
                                         if (residualsSummaryHistogram) residualsSummaryHistogram->Fill(local_residual,
                                            1.);
                                         if(bec == 0) m_totalBarrelResidual->Fill(local_residual, 1.);
@@ -507,12 +493,12 @@ SCTTracksMonTool::fillHistograms() {
                + (LocalTrackParameters[Trk::locY] - clus->localParameters()[Trk::locY]) * sinAlpha);
                                         residualsSummaryHistogram = (bec == BARREL) ? 0 :
                                          +(*residualsSummaryHistogramArray[subsystemIndex])[element];
-                                        if(m_environment != AthenaMonManager::online){ // 27.11.2014
+                                        if(m_environment != AthenaMonManager::online){
                                             residualsHistogram = (bec == BARREL) ? 0 :
                                              +(*residualsHistogramArray[subsystemIndex])[layer];//!!! this is 'layer' in
-                                             +the original code, others are elements //27.11.2014
+                                             +the original code, others are elements
                                             if (residualsHistogram) residualsHistogram->Fill(eta, phi, local_residual);
-                                        } //27.11.2014
+                                        }
                                         if (residualsSummaryHistogram) residualsSummaryHistogram->Fill(local_residual,
                                          +1.);
                                         if(bec == 0) m_totalBarrelResidual->Fill(local_residual, 1.);
@@ -545,7 +531,7 @@ SCTTracksMonTool::fillHistograms() {
   m_trk_N->Fill(goodTrks_N);
   m_trk_nclu_totHisto->Fill(local_tot_trkhits, 1.);
   if (m_environment == AthenaMonManager::online) {
-    if (m_numberOfEvents == 1 || (m_numberOfEvents > 1 && m_numberOfEvents % m_checkrate == 0)) {// 30.11.2014
+    if (m_numberOfEvents == 1 || (m_numberOfEvents > 1 && m_numberOfEvents % m_checkrate == 0)) {
       ATH_MSG_DEBUG("Calling checkHists(false); false := during run");
       if (checkHists(false).isFailure()) {
         ATH_MSG_WARNING("Error in checkHists(false)");
@@ -589,12 +575,8 @@ SCTTracksMonTool::fillHistograms() {
 //                             SCTTracksMonTool :: procHistograms
 // ====================================================================================================
 StatusCode
-SCTTracksMonTool::procHistograms() {                                                                           //  hidetoshi
-                                                                                                               // 14.01.21
-  if (endOfRunFlag()) {                                                                                                              //
-                                                                                                                                     // 
-                                                                                                                                     // hidetoshi
-                                                                                                                                     // 14.01.21
+SCTTracksMonTool::procHistograms() {
+  if (endOfRunFlag()) {
     ATH_MSG_DEBUG("SCTTracksMonTool::procHistograms");
     ATH_MSG_DEBUG("Total Rec Event Number: " << m_numberOfEvents);
     ATH_MSG_DEBUG("Calling checkHists(true); true := end of run");
@@ -633,7 +615,7 @@ SCTTracksMonTool::checkHists(bool /*fromFinalize*/) {
   const int negativeEndCap(0);
 
 
-  if (m_environment != AthenaMonManager::online) { // 27.11.2014
+  if (m_environment != AthenaMonManager::online) {
     const VecProf2_t *residuals[3] = {
       &m_psctresidualsHistoVectorECm, &m_psctresidualsHistoVector, &m_psctresidualsHistoVectorECp
     };
@@ -642,10 +624,10 @@ SCTTracksMonTool::checkHists(bool /*fromFinalize*/) {
     };
     const VecH2_t *pullsRms[3] = {
       &m_psctpullsRMSHistoVectorECm, &m_psctpullsRMSHistoVector, &m_psctpullsRMSHistoVectorECp
-    };// 27.11.2014
+    };
     const VecH2_t *residualsRms[3] = {
       &m_psctresidualsRMSHistoVectorECm, &m_psctresidualsRMSHistoVector, &m_psctresidualsRMSHistoVectorECp
-    };// 27.11.2014
+    };
 
     for (int thisDetector(negativeEndCap); thisDetector != N_REGIONS; ++thisDetector) {
       if (doDetector[thisDetector]) {
@@ -669,7 +651,7 @@ SCTTracksMonTool::checkHists(bool /*fromFinalize*/) {
       }
     }
     //  (*residualsRms[0])[0]->GetXaxis()->SetTitle("Index in the direction of #eta");
-  } // 27.11.2014
+  }
     // Now checking RMS and Means of Pulls 1D Histos
   TF1 pullgaus("pullgaus", "gaus");
   pullgaus.SetParameter(1, 0.);
@@ -734,15 +716,11 @@ SCTTracksMonTool::calculatePull(const float residual, const float trkErr, const
 // ====================================================================================================
 //                              SCTTracksMonTool :: bookGeneralHistos
 // ====================================================================================================
-//  StatusCode SCTTracksMonTool::bookGeneralHistos(bool isNewRun,bool /*isNewLumiBlock*/){  // hidetoshi 14.01.22
 StatusCode
-SCTTracksMonTool::bookGeneralHistos() {                                        // hidetoshi 14.01.22
-  //    if(isNewRun){                                                            // hidetoshi 14.01.22
-  if (newRunFlag()) {                                                                   // hidetoshi 14.11.27
+SCTTracksMonTool::bookGeneralHistos() {
+  if (newRunFlag()) {
     string stem(m_path + "/SCT/GENERAL/tracks/");
-    //    MonGroup Tracks(this,m_path+"SCT/GENERAL/tracks",expert,run);          // hidetoshi 14.01.21
-    MonGroup Tracks(this, m_path + "SCT/GENERAL/tracks", run, ATTRIB_UNMANAGED);      // hidetoshi 14.01.21
-    // MonGroup TracksPerLB(this,m_path+"SCT/GENERAL/tracks",expert,lumiBlock);
+    MonGroup Tracks(this, m_path + "SCT/GENERAL/tracks", run, ATTRIB_UNMANAGED);
 
     // Book histogram of number of tracks per region
     m_tracksPerRegion = new TH1F("tracksPerRegion", "Number of tracks in eta regions", 3, 0, 3);
@@ -834,7 +812,6 @@ SCTTracksMonTool::bookGeneralHistos() {                                        /
     m_trk_eta->GetXaxis()->SetTitle("#eta");
     CHECK(Tracks.regHist(m_trk_eta));
 
-    // m_psctresidualsRMSHistoVector[0]->GetXaxis()->SetTitle("Index in the direction of #eta"); test
     if (m_environment == AthenaMonManager::online) {
       m_nTracks = new TH1I("sct_tracks_vs_en", "Number of Tracks vs Event Number", m_evtsbins, 1, m_evtsbins + 1);
       m_nTracks->GetXaxis()->SetTitle("Event Number");
@@ -845,18 +822,14 @@ SCTTracksMonTool::bookGeneralHistos() {                                        /
       m_nTracks_pos = 0;
       CHECK(Tracks.regHist(m_nTracks));
     }
-  }                               // hidetoshi 14.01.22
+  }
   return StatusCode::SUCCESS;
 }
 
-// StatusCode SCTTracksMonTool::bookTrackHistos(const bool isNewRun, const SCT_Monitoring::Bec becVal){ // hidetoshi
-// 14.01.22
 StatusCode
-SCTTracksMonTool::bookTrackHistos(const SCT_Monitoring::Bec becVal) {                       // hidetoshi 14.01.22
-  //  if(not isNewRun) return StatusCode::SUCCESS;                                                     // hidetoshi
-  // 14.01.22
+SCTTracksMonTool::bookTrackHistos(const SCT_Monitoring::Bec becVal) {
   if (not newRunFlag()) {
-    return StatusCode::SUCCESS;                                                           // hidetoshi 14.11.27
+    return StatusCode::SUCCESS;
   }
   const string pathDelimiter("/");
   const string streamDelimiter("_");
@@ -871,10 +844,10 @@ SCTTracksMonTool::bookTrackHistos(const SCT_Monitoring::Bec becVal) {
   };
   const string localPathsResi[N_REGIONS] = {
     "SCT/SCTEC/tracks", "SCT/SCTB/tracks", "SCT/SCTEA/tracks"
-  };// 07.01.2015
+  };
   const string localPathsPull[N_REGIONS] = {
     "SCT/SCTEC/tracks", "SCT/SCTB/tracks", "SCT/SCTEA/tracks"
-  };// 07.01.2015
+  };
   const unsigned int limits[N_REGIONS] = {
     N_DISKSx2, N_BARRELSx2, N_DISKSx2
   };
@@ -896,17 +869,16 @@ SCTTracksMonTool::bookTrackHistos(const SCT_Monitoring::Bec becVal) {
   const unsigned int limit(limits[systemIndex]);
   VecH1_t *p_residualsSummary(residualsSummaryArray[systemIndex]), *p_pullsSummary(pullsSummaryArray[systemIndex]);
 
-  //  MonGroup endCapTracks(this, m_path+localPath, expert, run);            // hidetoshi 14.01.21
-  MonGroup endCapTracks(this, m_path + localPath, run, ATTRIB_UNMANAGED);      // hidetoshi 14.01.21
-  MonGroup endCapTracksResi(this, m_path + localPathResi, run, ATTRIB_UNMANAGED);// 07.01.2015
-  MonGroup endCapTracksPull(this, m_path + localPathPull, run, ATTRIB_UNMANAGED);// 07.01.2015
+  MonGroup endCapTracks(this, m_path + localPath, run, ATTRIB_UNMANAGED);
+  MonGroup endCapTracksResi(this, m_path + localPathResi, run, ATTRIB_UNMANAGED);
+  MonGroup endCapTracksPull(this, m_path + localPathPull, run, ATTRIB_UNMANAGED);
 
   p_residualsSummary->clear();
   p_pullsSummary->clear();
 
   string stem(m_stream + pathDelimiter + localPath + pathDelimiter);
   for (unsigned int i(0); i != limit; ++i) {
-    LayerSideFormatter layerSide(i, systemIndex);// 30.11.2014
+    LayerSideFormatter layerSide(i, systemIndex);
     string streamResidual(string("residuals") + abbreviation + streamDelimiter + layerSide.name());
     string streamPull(string("pulls") + abbreviation + streamDelimiter + layerSide.name());
     string titleResidual(string("SCT Residuals for ") + polarityString + ": " + layerSide.title());
@@ -917,8 +889,7 @@ SCTTracksMonTool::bookTrackHistos(const SCT_Monitoring::Bec becVal) {
   }
 
 
-  if (m_environment != AthenaMonManager::online) { // 27.11.2014
-    // if(1){//27.11
+  if (m_environment != AthenaMonManager::online) {
     VecProf2_t *residualsArray[] = {
       &m_psctresidualsHistoVectorECm, &m_psctresidualsHistoVector, &m_psctresidualsHistoVectorECp
     };
@@ -952,7 +923,7 @@ SCTTracksMonTool::bookTrackHistos(const SCT_Monitoring::Bec becVal) {
 
       CHECK(p2Factory(streamResidual, titleResidual, becVal, endCapTracksResi, *p_residuals));
       CHECK(p2Factory(streamPull, titlePull, becVal, endCapTracksPull, *p_pulls));
-    } // 27.11.2014
+    }
 
     for (unsigned int i(0); i != limit; ++i) {
       LayerSideFormatter layerSide(i, systemIndex);
@@ -966,7 +937,7 @@ SCTTracksMonTool::bookTrackHistos(const SCT_Monitoring::Bec becVal) {
       CHECK(h2Factory(streamResidual, titleResidual, becVal, endCapTracksResi, *p_residualsRms));
       CHECK(h2Factory(streamPull, titlePull, becVal, endCapTracksPull, *p_pullsRms));
     }
-  } // 27.11.2014
+  }
 
   return StatusCode::SUCCESS;
 }
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCT_NameFormatter.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCT_NameFormatter.h
index 8cab566b35e8ef8bbdaf1b46f82692f722c96038..498959900e5d37bec8e2e69bda75572910f36f0e 100644
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCT_NameFormatter.h
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/SCT_NameFormatter.h
@@ -20,7 +20,7 @@ private:
     const unsigned int m_element;
     const std::string m_layerStr;
     const std::string m_sideStr;
-    unsigned int m_region;// 30.11.2014
+    unsigned int m_region;
 public:
     LayerSideFormatter(const unsigned int i) : m_element(i), m_layerStr(std::to_string(i / 2)), m_sideStr(std::to_string(
                                                                                                             i % 2)),
@@ -29,7 +29,7 @@ public:
     }
 
     LayerSideFormatter(const unsigned int i, const unsigned int m) : m_element(i), m_layerStr(std::to_string(i / 2)),
-      m_sideStr(std::to_string(i % 2)), m_region(m) {// 30.11.2014
+      m_sideStr(std::to_string(i % 2)), m_region(m) {
       // nop
     }
 
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/deletePointers.h b/InnerDetector/InDetMonitoring/SCT_Monitoring/src/deletePointers.h
deleted file mode 100644
index eba2e1356f324a8851518efcdaf4c2293a221c3b..0000000000000000000000000000000000000000
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/src/deletePointers.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
-*/
-
-/**
- * @file deletePointers.h
- * @author Shaun Roe
- * @date 1/09/2009
- * Header file for declaration and definition of templated functions to
- * delete a pointer and a container of pointers.
- * The template may be further specialized to delete a map of pointers (not done here)
- *
- **/
-#ifndef SCTMonitoring_deletePointers_h
-#define SCTMonitoring_deletePointers_h
-#include <algorithm>
-namespace SCT_Monitoring {
-///Delete a pointer and set it to zero. Suitable for use in a 'std::for_each' algorithm
-// @todo check the type is really a pointer
-  template <class PointerType>
-  void
-  deletePointer(PointerType &p) {
-    delete p;
-    p = 0;
-  }
-
-///Delete a container of pointers and then clear it
-  template<class C>
-  void
-  deletePtrArray(C &container) {
-    std::for_each(container.begin(), container.end(), deletePointer<typename C::value_type>);
-
-    container.clear();
-  }
-}// end of namespace
-
-#endif
\ No newline at end of file
diff --git a/InnerDetector/InDetRawAlgs/InDetOverlay/CMakeLists.txt b/InnerDetector/InDetRawAlgs/InDetOverlay/CMakeLists.txt
index 1a7443086f9a8989f0f13d0306d3a18785ce6f42..f1a3579953ffe0ee50761ab52c6cf70bfc78240c 100644
--- a/InnerDetector/InDetRawAlgs/InDetOverlay/CMakeLists.txt
+++ b/InnerDetector/InDetRawAlgs/InDetOverlay/CMakeLists.txt
@@ -32,7 +32,7 @@ set( _jobOPath "${_jobOPath}:$ENV{JOBOPTSEARCHPATH}" )
 
 # Unit Tests
 atlas_add_test( PixelOverlay_test
-                SOURCES src/PixelOverlay.cxx test/PixelOverlay_test.cxx
+                SOURCES test/PixelOverlay_test.cxx src/PixelOverlay.cxx
                 INCLUDE_DIRS ${CLHEP_INCLUDE_DIRS} ${GTEST_INCLUDE_DIRS}
                 LINK_LIBRARIES ${CLHEP_LIBRARIES} AthenaBaseComps IDC_OverlayBase GaudiKernel InDetRawData StoreGateLib SGtests GeneratorObjects InDetIdentifier InDetSimData TrkTrack ${GTEST_LIBRARIES}
                 EXTRA_PATTERNS "[0-9]+ ms")
diff --git a/LArCalorimeter/LArCalibUtils/python/LArHVScaleConfig.py b/LArCalorimeter/LArCalibUtils/python/LArHVScaleConfig.py
new file mode 100644
index 0000000000000000000000000000000000000000..fbe52c53e4564898296da689e8021e61578e9ea0
--- /dev/null
+++ b/LArCalorimeter/LArCalibUtils/python/LArHVScaleConfig.py
@@ -0,0 +1,80 @@
+# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+
+from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
+
+def LArHVScaleCfg(configFlags):
+    result=ComponentAccumulator()
+
+    if configFlags.Input.isMC:
+        result.merge(addFolders(configFlags,["/LAR/IdentifierOfl/HVLineToElectrodeMap<tag>LARHVLineToElectrodeMap-001</tag>"], "LAR_OFL", className="AthenaAttributeList"))
+
+    elif not configFlags.Common.isOnline:
+        from IOVDbSvc.IOVDbSvcConfig import addFolders, IOVDbSvcCfg
+        result.mergeAll(IOVDbSvcCfg(configFlags))
+        result.merge(addFolders(configFlags,["/LAR/DCS/HV/BARREl/I16"], "DCS_OFL", className="CondAttrListCollection"))
+        result.merge(addFolders(configFlags,["/LAR/DCS/HV/BARREL/I8"],  "DCS_OFL", className="CondAttrListCollection"))
+
+        result.merge(addFolders(configFlags,["/LAR/IdentifierOfl/HVLineToElectrodeMap"], "LAR_OFL", className="AthenaAttributeList"))
+        result.merge(addFolders(configFlags,["/LAR/HVPathologiesOfl/Pathologies"], "LAR_OFL", className="AthenaAttributeList"))
+
+        result.merge(addFolders(configFlags,["/LAR/ElecCalibFlat/HVScaleCorr"],"LAR_ONL", className="CondAttrListCollection"))
+
+        from LArBadChannelTool.LArBadChannelConfig import LArBadChannelCfg, LArBadFebCfg
+        result.merge(LArBadChannelCfg(configFlags))
+        result.merge(LArBadFebCfg(configFlags))
+
+        from LArRecUtils.LArRecUtilsConf import LArHVIdMappingAlg
+        hvmapalg = LArHVIdMappingAlg(ReadKey="/LAR/IdentifierOfl/HVLineToElectrodeMap",WriteKey="LArHVIdMap")
+        result.addCondAlgo(hvmapalg)
+
+        from LArRecUtils.LArRecUtilsConf import LArHVPathologyDbCondAlg
+        hvpath = LArHVPathologyDbCondAlg(PathologyFolder="/LAR/HVPathologiesOfl/Pathologies",
+                                         HVMappingKey="LArHVIdMap",
+                                         HVPAthologyKey="LArHVPathology")
+        result.addCondAlgo(hvpath)
+
+        from LArRecUtils.LArRecUtilsConf import LArHVCondAlg
+        hvcond = LArHVCondAlg("LArHVPathologyAlg",HVPathologies="LArHVPathology",OutputHVData="LArHVData")
+        result.addCondAlgo(hvcond)
+
+        from LArRecUtils.LArRecUtilsConf import LArFlatConditionsAlg_LArHVScaleCorrFlat_ as LArHVScaleCorrFlat
+        hvscaleflat = LArHVScaleCorrFlat("LArHVScaleCorrFlat",
+                                         ReadKey="/LAR/ElecCalibFlat/HVScaleCorr",
+                                         WriteKey='LArHVScaleCorr')
+        result.addCondAlgo(hvscaleflat)
+
+        from LArRecUtils.LArRecUtilsConf import LArHVScaleCorrCondAlg
+        hvscalecorrkey = "LArHVScaleCorrRecomputed"
+        if configFlags.Input.isMC:
+            hvscalecorrkey = "LArHVScaleCorr"
+
+        hvscale = LArHVScaleCorrCondAlg(keyHVdata="LArHVData",keyOutputCorr=hvscalecorrkey)
+        hvscale.UndoOnlineHVCorr=True
+        result.addCondAlgo(hvscale)
+
+    return result
+
+if __name__=="__main__":
+    from AthenaCommon.Configurable import Configurable
+    Configurable.configurableRun3Behavior=1
+    from AthenaConfiguration.AllConfigFlags import ConfigFlags
+
+    nThreads=1
+    ConfigFlags.Concurrency.NumThreads = nThreads
+    if nThreads>0:
+        ConfigFlags.Scheduler.ShowDataDeps = True
+        ConfigFlags.Scheduler.ShowDataFlow = True
+        ConfigFlags.Scheduler.ShowControlFlow = True
+        ConfigFlags.Concurrency.NumConcurrentEvents = nThreads
+
+    ConfigFlags.Input.Files = ["myESD-data.pool.root"]
+    ConfigFlags.lock()
+
+    from AthenaConfiguration.MainServicesConfig import MainServicesSerialCfg
+    from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg
+    cfg=MainServicesSerialCfg()
+    cfg.merge(PoolReadCfg(ConfigFlags))
+
+    cfg.merge( LArHVScaleCfg(ConfigFlags) )
+
+    cfg.run(10)
diff --git a/LArCalorimeter/LArCalibUtils/src/LArHVCorrMaker.cxx b/LArCalorimeter/LArCalibUtils/src/LArHVCorrMaker.cxx
index 2fc0708ce896c10113c4bac27711d1d1e7c04bfa..2fe8f589b5bdf8cf73e09152afed23aaa62e2d6c 100755
--- a/LArCalorimeter/LArCalibUtils/src/LArHVCorrMaker.cxx
+++ b/LArCalorimeter/LArCalibUtils/src/LArHVCorrMaker.cxx
@@ -14,8 +14,9 @@
 LArHVCorrMaker::LArHVCorrMaker(const std::string& name, ISvcLocator* pSvcLocator) 
   : AthAlgorithm(name, pSvcLocator),
     m_lar_on_id(0),
-    m_hvCorrTool("LArHVCorrTool")
+    m_hvCorrTool("LArHVCorrTool",this)
 {
+  declareProperty("HVCorrTool", m_hvCorrTool);
 }
 
 //---------------------------------------------------------------------------
diff --git a/LArCalorimeter/LArCnv/LArByteStream/CMakeLists.txt b/LArCalorimeter/LArCnv/LArByteStream/CMakeLists.txt
index 3f8b98f691931b9e978855379179be3a3d521084..af833d5353be96502cc08e01bdcd6a2fba6e2e6a 100644
--- a/LArCalorimeter/LArCnv/LArByteStream/CMakeLists.txt
+++ b/LArCalorimeter/LArCnv/LArByteStream/CMakeLists.txt
@@ -15,9 +15,9 @@ atlas_depends_on_subdirs(
    Control/AthenaBaseComps
    Control/AthenaKernel
    Control/StoreGate
+   Event/xAOD/xAODEventInfo
    Event/ByteStreamCnvSvcBase
    Event/ByteStreamData
-   Event/EventInfo
    GaudiKernel
    LArCalorimeter/LArIdentifier
    LArCalorimeter/LArROD
@@ -43,7 +43,7 @@ atlas_add_library( LArByteStreamLib
    PUBLIC_HEADERS LArByteStream
    INCLUDE_DIRS ${TDAQ-COMMON_INCLUDE_DIRS}
    LINK_LIBRARIES ${TDAQ-COMMON_LIBRARIES} CaloIdentifier AthenaBaseComps
-   AthenaKernel ByteStreamData EventInfo GaudiKernel LArIdentifier LArRawEvent
+   AthenaKernel xAODEventInfo ByteStreamData GaudiKernel LArIdentifier LArRawEvent
    LArRecConditions LArRecEvent CaloDetDescrLib CaloUtilsLib StoreGateLib
    ByteStreamCnvSvcBaseLib LArRODLib LArRawUtilsLib LArRecUtilsLib LArCablingLib
    ByteStreamCnvSvcLib
diff --git a/LArCalorimeter/LArCnv/LArByteStream/LArByteStream/LArRawDataContByteStreamTool.h b/LArCalorimeter/LArCnv/LArByteStream/LArByteStream/LArRawDataContByteStreamTool.h
index ea887422cbe342371023871ba0d4f360e47a6362..a892e9094772394e38971bb2ddaebdc546802635 100644
--- a/LArCalorimeter/LArCnv/LArByteStream/LArByteStream/LArRawDataContByteStreamTool.h
+++ b/LArCalorimeter/LArCnv/LArByteStream/LArByteStream/LArRawDataContByteStreamTool.h
@@ -1,7 +1,7 @@
 //Dear emacs, this is -*- c++ -*-
 
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 /**
@@ -21,8 +21,6 @@
 #include "ByteStreamCnvSvcBase/FullEventAssembler.h" 
 #include "ByteStreamData/RawEvent.h" 
 #include "LArByteStream/LArRodDecoder.h"
-#include "EventInfo/EventInfo.h"
-#include "EventInfo/EventID.h"
 
 #include "CaloIdentifier/CaloGain.h"
 
diff --git a/LArCalorimeter/LArCnv/LArByteStream/LArByteStream/LArRodDecoder.h b/LArCalorimeter/LArCnv/LArByteStream/LArByteStream/LArRodDecoder.h
index d9ea5b98b9ccb2d54da4dbc84c941fc088c72cc7..d20b7be1216a080f7fe68b6a05db91d94111fffb 100644
--- a/LArCalorimeter/LArCnv/LArByteStream/LArByteStream/LArRodDecoder.h
+++ b/LArCalorimeter/LArCnv/LArByteStream/LArByteStream/LArRodDecoder.h
@@ -40,7 +40,10 @@
 #include "ByteStreamData/RawEvent.h" 
 #include "LArRecEvent/LArFebEnergy.h" 
 #include "LArRecEvent/LArFebEnergyCollection.h" 
-// #include "eformat/RODHeader.h"
+
+#include "StoreGate/ReadHandleKey.h"
+#include "xAODEventInfo/EventInfo.h"
+
 #include "eformat/Version.h"
 #include "eformat/Issue.h"
 #include <vector>
@@ -202,6 +205,7 @@ private:
 
   
   ToolHandle<LArCablingLegacyService> m_larCablingSvc;
+  SG::ReadHandleKey<xAOD::EventInfo>    m_evt  {this, "EvtInfo", "EventInfo", "EventInfo name"};
   float	m_LArCellEthreshold ;
   bool m_larCell; // set to True if it is used for ConvertingLArCell 
   bool m_readtdc; // set to True if the tdc phase is read from the upper byte of the nsamples word.
diff --git a/LArCalorimeter/LArCnv/LArByteStream/src/LArRawChannelContByteStreamCnv.cxx b/LArCalorimeter/LArCnv/LArByteStream/src/LArRawChannelContByteStreamCnv.cxx
index 43e4363990bf1174d0745e970a225fcb0b00f2ab..f1139d9ba36e1c3f3335915cdf21416dfa3e2640 100644
--- a/LArCalorimeter/LArCnv/LArByteStream/src/LArRawChannelContByteStreamCnv.cxx
+++ b/LArCalorimeter/LArCnv/LArByteStream/src/LArRawChannelContByteStreamCnv.cxx
@@ -11,8 +11,6 @@
 #include "ByteStreamCnvSvcBase/IROBDataProviderSvc.h" 
 #include "ByteStreamData/RawEvent.h" 
 
-#include "EventInfo/EventID.h"
-
 #include "GaudiKernel/MsgStream.h"
 #include "GaudiKernel/StatusCode.h"
 #include "GaudiKernel/DataObject.h"
diff --git a/LArCalorimeter/LArCnv/LArByteStream/src/LArRodDecoder.cxx b/LArCalorimeter/LArCnv/LArByteStream/src/LArRodDecoder.cxx
index 76ccc0aa641ce6e4bf9447e14cfcd21f5d84e506..d751f098fdc0bbb5b551fdb386a744dffc890263 100644
--- a/LArCalorimeter/LArCnv/LArByteStream/src/LArRodDecoder.cxx
+++ b/LArCalorimeter/LArCnv/LArByteStream/src/LArRodDecoder.cxx
@@ -30,9 +30,6 @@
 #include <algorithm>
 #include <fstream>
 
-#include "EventInfo/EventInfo.h"
-#include "EventInfo/EventID.h"
-
 #include "LArRawConditions/LArCalibParams.h"
 
 static const InterfaceID IID_ILArRodDecoder
@@ -129,6 +126,7 @@ LArRodDecoder::initialize()
  }
  m_doBadChanMasking = m_badChannelMasker->isMaskingOn();
   
+ ATH_CHECK( m_evt.initialize() );
 
  std::vector<std::string>::const_iterator it = m_LArCellCorrNames.begin(); 
  std::vector<std::string>::const_iterator it_end = m_LArCellCorrNames.end();
@@ -653,13 +651,12 @@ void LArRodDecoder::fillCollection(const uint32_t* p, uint32_t n, LArCalibDigitC
       return;
       }
     //2st step, get Event number
-    const DataHandle<EventInfo> thisEventInfo;
-    sc=evtStore()->retrieve(thisEventInfo);
-    if (sc.isFailure()) {
-      ATH_MSG_ERROR("Cannot read EventID from StoreGate");
+    SG::ReadHandle<xAOD::EventInfo> evt(m_evt);
+    if (!evt.isValid()) {
+      ATH_MSG_ERROR("Cannot get EventInfo");
       return; //Return empty container. 
     }
-    const unsigned eventNb=thisEventInfo->event_ID()->event_number(); 
+    const unsigned eventNb=evt->eventNumber();
     const std::vector<HWIdentifier>* calibChannelIDs;
     do { //Loop over all FEBs in this ROD
       
diff --git a/LArCalorimeter/LArElecCalib/LArElecCalib/ATLAS_CHECK_THREAD_SAFETY b/LArCalorimeter/LArElecCalib/LArElecCalib/ATLAS_CHECK_THREAD_SAFETY
new file mode 100644
index 0000000000000000000000000000000000000000..347bf36b9d2912d97f3b83526279dfb6d71b583a
--- /dev/null
+++ b/LArCalorimeter/LArElecCalib/LArElecCalib/ATLAS_CHECK_THREAD_SAFETY
@@ -0,0 +1 @@
+LArCalorimeter/LArElecCalib
diff --git a/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.cxx b/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.cxx
index 8893edfe85ac1cb6418984d7252da8a36f9c0120..f16d01686a8a0c13f29d1d442606bdbc095cefa3 100644
--- a/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.cxx
+++ b/LArCalorimeter/LArRecUtils/src/LArHVCorrTool.cxx
@@ -36,7 +36,7 @@ LArHVCorrTool::LArHVCorrTool(const std::string& type,
     m_electrodeID(nullptr),
     m_calodetdescrmgr(nullptr),
     m_cablingService("LArCablingLegacyService"),
-    m_hvtool("LArHVToolMC")
+    m_hvtool("LArHVToolMC",this)
 {
   declareInterface<ILArHVCorrTool>(this);
 
diff --git a/LumiBlock/LumiBlockComps/CMakeLists.txt b/LumiBlock/LumiBlockComps/CMakeLists.txt
index 6926d1ca0f79ff1876599a37c6baac5ea19ef66b..9397b7a6d7e373c6ea939e0019e6bb5f6b65f197 100644
--- a/LumiBlock/LumiBlockComps/CMakeLists.txt
+++ b/LumiBlock/LumiBlockComps/CMakeLists.txt
@@ -20,8 +20,7 @@ if( XAOD_ANALYSIS )
       DataQuality/GoodRunsLists
       Database/AthenaPOOL/AthenaPoolUtilities
       Database/AthenaPOOL/DBDataModel
-      Database/CoraCool
-      Event/EventInfo )
+      Database/CoraCool )
 else()
    atlas_depends_on_subdirs(
       PUBLIC
@@ -37,8 +36,7 @@ else()
       DataQuality/GoodRunsLists
       Database/AthenaPOOL/AthenaPoolUtilities
       Database/AthenaPOOL/DBDataModel
-      Database/CoraCool
-      Event/EventInfo )
+      Database/CoraCool )
 endif()
 
 # External dependencies:
@@ -63,7 +61,7 @@ atlas_add_library( LumiBlockCompsLib
    LINK_LIBRARIES ${CORAL_LIBRARIES} ${ROOT_LIBRARIES} AthenaBaseComps
    AthenaKernel xAODLuminosity GaudiKernel StoreGateLib ${extra_libs}
    PRIVATE_LINK_LIBRARIES ${COOL_LIBRARIES} AthenaPoolUtilities DBDataModel
-   EventInfo GoodRunsListsLib xAODRootAccess )
+   GoodRunsListsLib xAODRootAccess )
 
 atlas_add_component( LumiBlockComps
    src/components/*.cxx
diff --git a/LumiBlock/LumiBlockComps/src/LumiBlockMuTool.cxx b/LumiBlock/LumiBlockComps/src/LumiBlockMuTool.cxx
index 1951063077f3b022bcefd1e73045f5a9f02cd9a2..c055be5006deeffa32211e6c2d22f5c2655ec1e9 100644
--- a/LumiBlock/LumiBlockComps/src/LumiBlockMuTool.cxx
+++ b/LumiBlock/LumiBlockComps/src/LumiBlockMuTool.cxx
@@ -1,13 +1,9 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 
 #include "LumiBlockComps/LumiBlockMuTool.h"
 
-//#include "EventInfo/EventID.h"
-//#include "EventInfo/EventInfo.h"
-//#include "EventInfo/EventType.h"
-
 //--------------------------------------------------
 
 LumiBlockMuTool::LumiBlockMuTool(const std::string& type,
diff --git a/MuonSpectrometer/MuonTruthAlgs/src/MuonPRD_MultiTruthMaker.cxx b/MuonSpectrometer/MuonTruthAlgs/src/MuonPRD_MultiTruthMaker.cxx
index 883cf72c5c7ee31be1839e40212b84ca425c3dea..d57d9d05870681e437e800fec1099f39d354038c 100755
--- a/MuonSpectrometer/MuonTruthAlgs/src/MuonPRD_MultiTruthMaker.cxx
+++ b/MuonSpectrometer/MuonTruthAlgs/src/MuonPRD_MultiTruthMaker.cxx
@@ -163,57 +163,52 @@ void MuonPRD_MultiTruthMaker::addPRDRange (SG::WriteHandle<PRD_MultiTruthCollect
 //================================================================
 template <class SIMDATACOLLECTION>
 void MuonPRD_MultiTruthMaker::addPrepRawDatum(SG::WriteHandle<PRD_MultiTruthCollection> prdTruth,
-					      const Trk::PrepRawData* prd,
-					      SG::ReadHandle<SIMDATACOLLECTION> simDataMap
-    )
+                                              const Trk::PrepRawData* prd,
+                                              SG::ReadHandle<SIMDATACOLLECTION> simDataMap
+                                              )
 {
-    ATH_MSG_VERBOSE( "addPrepRawDatum(): new PRD "<<prd<<", id="<<prd->identify()<<", number of RDOs: " << prd->rdoList().size() );
+  ATH_MSG_VERBOSE( "addPrepRawDatum(): new PRD "<<prd<<", id="<<prd->identify()<<", number of RDOs: " << prd->rdoList().size() );
 
-    bool gotSDO = false;
-    bool gotValidParticle = false;
+  bool gotSDO = false;
+  bool gotValidParticle = false;
 
   // loop over RDOs
-    std::vector<Identifier>::const_iterator nextRDO = prd->rdoList().begin();
-    std::vector<Identifier>::const_iterator lastRDO = prd->rdoList().end();   
-    for (; nextRDO!=lastRDO; ++nextRDO) {
-        typename SIMDATACOLLECTION::const_iterator iter(simDataMap->find(*nextRDO));
+  for (const auto& nextRDO : prd->rdoList()) {
+    typename SIMDATACOLLECTION::const_iterator iter(simDataMap->find(nextRDO));
 
-        if(iter != simDataMap->end() )  {
-            gotSDO = true;
+    if(iter != simDataMap->end() )  {
+      gotSDO = true;
       // Got an SDO.  Try to associate the PRD to MC particles we have info about.
-            typedef typename SIMDATACOLLECTION::mapped_type SIMDATA;
-            const SIMDATA& sdo = iter->second; 
-            const std::vector<   typename SIMDATA::Deposit >& deposits = sdo.getdeposits();
-            typename std::vector< typename SIMDATA::Deposit >::const_iterator nextdeposit = deposits.begin();
-            typename std::vector< typename SIMDATA::Deposit >::const_iterator lastdeposit = deposits.end();
-            for( ; nextdeposit!=lastdeposit; ++nextdeposit) {
-                const HepMcParticleLink& particleLink = nextdeposit->first;
-
-                ATH_MSG_VERBOSE("addPrepRawDatum(): Barcode " << particleLink.barcode()<< " evt " << particleLink.eventIndex() );
-
-                if (particleLink.isValid()) {
-                    gotValidParticle = true;
-      // Associate the particle to the PRD. But don't add duplicates.
-      // Note: it may be more efficient to filter out duplicates among particles for the current PRD, then check-and-add the reduced set to the large multimap.
-      // But may be not for the typically small RDO/PRD ratio.
-                    typedef PRD_MultiTruthCollection::iterator truthiter;
-                    std::pair<truthiter, truthiter> r = prdTruth->equal_range(prd->identify());
-		    if(r.second == std::find_if(r.first, r.second, 
-                          [ particleLink ](const PRD_MultiTruthCollection::value_type &prd_to_truth) {
-                             return prd_to_truth.second == particleLink;
-                          } )) {
-                        prdTruth->insert(std::make_pair(prd->identify(), particleLink));
-                    }
-                }
-            }
+      typedef typename SIMDATACOLLECTION::mapped_type SIMDATA;
+      const SIMDATA& sdo = iter->second;
+      const std::vector<   typename SIMDATA::Deposit >& deposits = sdo.getdeposits();
+      if (deposits.empty()) { continue; }
+      for (const auto& [particleLink, mcData] : deposits) {
+        ATH_MSG_VERBOSE("addPrepRawDatum(): particleLink.isValid() " << particleLink.isValid() );
+        ATH_MSG_VERBOSE("addPrepRawDatum(): Barcode " << particleLink.barcode()<< " evt " << particleLink.eventIndex() );
+        if (particleLink.isValid()) {
+          gotValidParticle = true;
+          // Associate the particle to the PRD. But don't add duplicates.
+          // Note: it may be more efficient to filter out duplicates among particles for the current PRD, then check-and-add the reduced set to the large multimap.
+          // But may be not for the typically small RDO/PRD ratio.
+          typedef PRD_MultiTruthCollection::iterator truthiter;
+          std::pair<truthiter, truthiter> r = prdTruth->equal_range(prd->identify());
+          if(r.second == std::find_if(r.first, r.second,
+                                      [ particleLink ](const PRD_MultiTruthCollection::value_type &prd_to_truth) {
+                                        return prd_to_truth.second == particleLink;
+                                      } )) {
+            prdTruth->insert(std::make_pair(prd->identify(), particleLink));
+          }
         }
+      }
     }
+  }
 
-    if(gotSDO && !gotValidParticle) {
+  if(gotSDO && !gotValidParticle) {
     // Looked at all the deposits from all the SDOs, but did not find any valid particle link.
     //prdTruth->insert(std::make_pair(prd, particleLinkUnknown));
-        ATH_MSG_DEBUG("addPrepRawDatum(): got SDO but no particles");
-    }
+    ATH_MSG_DEBUG("addPrepRawDatum(): got SDO but no particles");
+  }
 }
 
 //================================================================
diff --git a/Projects/AnalysisBase/externals.txt b/Projects/AnalysisBase/externals.txt
index 4454336bc6a902ba725b0889efa721252d924700..0bb58aaafa9a4b112c336ae104862f35dc2376fd 100644
--- a/Projects/AnalysisBase/externals.txt
+++ b/Projects/AnalysisBase/externals.txt
@@ -6,4 +6,4 @@
 # forbidden.
 
 # The version of atlas/atlasexternals to use:
-AnalysisBaseExternalsVersion = 2.0.25
+AnalysisBaseExternalsVersion = 2.0.26
diff --git a/Projects/AnalysisTop/externals.txt b/Projects/AnalysisTop/externals.txt
index 397ba201f2a8bbe30f986659194da5c9bd5774cc..f9053ec10e8ff9cd017b270fdf9bed0ac1c0ce89 100644
--- a/Projects/AnalysisTop/externals.txt
+++ b/Projects/AnalysisTop/externals.txt
@@ -1,4 +1,4 @@
 # Versions of the various externals to build before starting the build of
 # this project, when doing a full stack nightly build.
 
-AnalysisBaseExternalsVersion = 2.0.25
+AnalysisBaseExternalsVersion = 2.0.26
diff --git a/Projects/AthDataQuality/externals.txt b/Projects/AthDataQuality/externals.txt
index fa8d37a6e0337a47c44a60e60760c7acc87a0ebf..734c26b6b8ff0880e1e850b19b71805ab44c1d4b 100644
--- a/Projects/AthDataQuality/externals.txt
+++ b/Projects/AthDataQuality/externals.txt
@@ -5,4 +5,4 @@
 # an "origin/" prefix before it. For tags however this is explicitly
 # forbidden.
 
-AtlasExternalsVersion = 2.0.25
+AtlasExternalsVersion = 2.0.26
diff --git a/Projects/AthSimulation/externals.txt b/Projects/AthSimulation/externals.txt
index 28b4bfa25b07772d638426f4917023f18805a30f..9a7765b9b48aff26b1d675edbc5446529306f624 100644
--- a/Projects/AthSimulation/externals.txt
+++ b/Projects/AthSimulation/externals.txt
@@ -6,7 +6,7 @@
 # forbidden.
 
 # The version of atlas/atlasexternals to use:
-AthSimulationExternalsVersion = 2.0.25
+AthSimulationExternalsVersion = 2.0.26
 
 # The version of atlas/Gaudi to use:
 GaudiVersion = v31r0.002
diff --git a/Projects/Athena/externals.txt b/Projects/Athena/externals.txt
index d03228bfb6118bbfb083e9d6d57a2068a77ee174..784a0efbe02021efef18efc578f35dc5cfc6e5bd 100644
--- a/Projects/Athena/externals.txt
+++ b/Projects/Athena/externals.txt
@@ -6,7 +6,7 @@
 # forbidden.
 
 # The version of atlas/atlasexternals to use:
-AthenaExternalsVersion = 2.0.25
+AthenaExternalsVersion = 2.0.26
 
 # The version of atlas/Gaudi to use:
 GaudiVersion = v31r0.002
diff --git a/Trigger/TrigConfiguration/TrigConfigSvc/CMakeLists.txt b/Trigger/TrigConfiguration/TrigConfigSvc/CMakeLists.txt
index ef6d1bdca61260b25557baf8f36e2c809ab1d3d3..a23d389c03b76625332d413ca27841d9be7dd56a 100644
--- a/Trigger/TrigConfiguration/TrigConfigSvc/CMakeLists.txt
+++ b/Trigger/TrigConfiguration/TrigConfigSvc/CMakeLists.txt
@@ -57,7 +57,7 @@ atlas_install_joboptions(  share/hltConfigSvc_standalone_test_configurables.py
   share/lvl1ConfigSvc_standalone_test.py
   share/testKeyByNameLoader.py
   share/testTriggerFrontierQuery.py )
-atlas_install_scripts( share/checkTrigger.py share/checkTriggerConfigOld.py )
+atlas_install_scripts( share/checkTrigger.py share/checkTriggerConfigOld.py share/trigconf_property.py )
 atlas_install_xmls( data/*.dtd )
 
 # Aliases:
diff --git a/Trigger/TrigTools/TrigUtils/bin/trigconf_property.py b/Trigger/TrigConfiguration/TrigConfigSvc/share/trigconf_property.py
similarity index 100%
rename from Trigger/TrigTools/TrigUtils/bin/trigconf_property.py
rename to Trigger/TrigConfiguration/TrigConfigSvc/share/trigconf_property.py
diff --git a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRates.cxx b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRates.cxx
index e6fd547bdbf496cc857b648f8c09e2b688420add..8e5d7a0b387c4f6fa89c2cfadea5793a29d69974 100644
--- a/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRates.cxx
+++ b/Trigger/TrigCost/TrigCostRootAnalysis/Root/MonitorRates.cxx
@@ -680,6 +680,9 @@ namespace TrigCostRootAnalysis {
       if (counterA->getStrDecoration(kDecType) != "Chain") {
         continue; // I'm not a HLT chain counter - next
       }
+      if (isZero(counterA->getDecoration(kDecPrescaleVal) + 1)) {
+        continue; // Prescaled out in rates processing
+      }
 
       if (checkPatternOverlap(counterA->getName(), kFALSE) == kFALSE) continue;
 
@@ -691,6 +694,9 @@ namespace TrigCostRootAnalysis {
         if (counterB->getStrDecoration(kDecType) != "Chain") {
           continue; // I'm not a HLT chain counter - next
         }
+        if (isZero(counterB->getDecoration(kDecPrescaleVal) + 1)) {
+          continue; // Prescaled out in rates processing
+        }
 
         // Same group?
         if (Config::config().getInt(kDoGroupOverlap) == kTRUE
diff --git a/Trigger/TrigSteer/TrigOutputHandling/CMakeLists.txt b/Trigger/TrigSteer/TrigOutputHandling/CMakeLists.txt
index 3f575d8bf995ee417d43aa94d2d2837d9fdbf865..3d88e13fef4b8d9662e1b484367271041d4f3548 100644
--- a/Trigger/TrigSteer/TrigOutputHandling/CMakeLists.txt
+++ b/Trigger/TrigSteer/TrigOutputHandling/CMakeLists.txt
@@ -26,7 +26,7 @@ atlas_depends_on_subdirs( PUBLIC
                           Trigger/TrigMonitoring/TrigCostMonitorMT
                           Trigger/TrigAlgorithms/TrigPartialEventBuilding
 			  Trigger/TrigDataAccess/TrigSerializeTP
-			  Control/AthContainersRoot/AthContainersRoot
+			  Control/AthContainersRoot
                           )
 find_package( tdaq-common COMPONENTS eformat )
 find_package( Boost )
diff --git a/Trigger/TrigT1/TrigT1Interfaces/CMakeLists.txt b/Trigger/TrigT1/TrigT1Interfaces/CMakeLists.txt
index bae7f42f98d3e9f0299f8394ef6970021ae3362d..ee3aa5e7f115734299cda9c9a66be039b8e0128a 100644
--- a/Trigger/TrigT1/TrigT1Interfaces/CMakeLists.txt
+++ b/Trigger/TrigT1/TrigT1Interfaces/CMakeLists.txt
@@ -12,7 +12,8 @@ atlas_depends_on_subdirs( PUBLIC
                           Control/AthContainers
                           GaudiKernel
                           PRIVATE
-                          Trigger/TrigConfiguration/TrigConfL1Data )
+                          Trigger/TrigConfiguration/TrigConfL1Data
+                          AtlasTest/TestTools )
 
 # External dependencies:
 find_package( ROOT COMPONENTS Core Tree MathCore Hist RIO pthread )
@@ -33,3 +34,12 @@ atlas_add_dictionary( TrigT1InterfacesDict
                       INCLUDE_DIRS ${XERCESC_INCLUDE_DIRS} ${TDAQ-COMMON_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS}
                       LINK_LIBRARIES ${XERCESC_LIBRARIES} ${TDAQ-COMMON_LIBRARIES} ${ROOT_LIBRARIES} AthenaBaseComps AthContainers AthenaKernel GaudiKernel TrigConfL1Data TrigT1Interfaces )
 
+
+atlas_add_test( CPRoIDecoder_test
+                SOURCES test/CPRoIDecoder_test.cxx
+                LINK_LIBRARIES TrigT1Interfaces )
+
+
+atlas_add_test( JEPRoIDecoder_test
+                SOURCES test/JEPRoIDecoder_test.cxx
+                LINK_LIBRARIES TrigT1Interfaces )
diff --git a/Trigger/TrigT1/TrigT1Interfaces/share/CPRoIDecoder_test.ref b/Trigger/TrigT1/TrigT1Interfaces/share/CPRoIDecoder_test.ref
new file mode 100644
index 0000000000000000000000000000000000000000..867e87fc7efd1bb6daf89905f5482ec4fad3ba8f
--- /dev/null
+++ b/Trigger/TrigT1/TrigT1Interfaces/share/CPRoIDecoder_test.ref
@@ -0,0 +1,2 @@
+CPRoIDecoder_test
+test1
diff --git a/Trigger/TrigT1/TrigT1Interfaces/share/JEPRoIDecoder_test.ref b/Trigger/TrigT1/TrigT1Interfaces/share/JEPRoIDecoder_test.ref
new file mode 100644
index 0000000000000000000000000000000000000000..78e83dbbf873b5acd9e960b6b327bcbdac6ab3d5
--- /dev/null
+++ b/Trigger/TrigT1/TrigT1Interfaces/share/JEPRoIDecoder_test.ref
@@ -0,0 +1,2 @@
+JEPRoIDecoder_test
+test1
diff --git a/Trigger/TrigT1/TrigT1Interfaces/src/JEPRoIDecoder.cxx b/Trigger/TrigT1/TrigT1Interfaces/src/JEPRoIDecoder.cxx
index 3db7a968c2a22378e0a5c0eabd751fed96594a0f..630f3ba0f19f69d46d42e52dcb0913474a61d1e3 100644
--- a/Trigger/TrigT1/TrigT1Interfaces/src/JEPRoIDecoder.cxx
+++ b/Trigger/TrigT1/TrigT1Interfaces/src/JEPRoIDecoder.cxx
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 */
 /***************************************************************************
                          JEPRoIDecoder.cxx  -  description
@@ -320,7 +320,7 @@ unsigned int LVL1::JEPRoIDecoder::jetRoIVersion( unsigned int word ) const {
       }
     } //endfor
 
-    return m_sumEtThreshPassedVec;
+    return m_mEtSigThreshPassedVec;
   }
 
   /** returns a vector containing the numbers of threshold passed i.e. if the vector contains 1,3,5 it
diff --git a/Trigger/TrigT1/TrigT1Interfaces/test/CPRoIDecoder_test.cxx b/Trigger/TrigT1/TrigT1Interfaces/test/CPRoIDecoder_test.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..748f350f526e1ba549e4d595350f682086636652
--- /dev/null
+++ b/Trigger/TrigT1/TrigT1Interfaces/test/CPRoIDecoder_test.cxx
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+ */
+/**
+ * @file TrigT1Interfaces/test/CPRoIDecoder_test.cxx
+ * @author scott snyder <snyder@bnl.gov>
+ * @date Mar, 2019
+ * @brief Unit tests for CPRoIDecoder.
+ */
+
+
+#undef NDEBUG
+#include "TrigT1Interfaces/CPRoIDecoder.h"
+#include "TestTools/FLOATassert.h"
+#include <iostream>
+#include <cassert>
+
+
+void test1()
+{
+  std::cout << "test1\n";
+
+  const double cratePhiSize = M_PI / 2.0;
+  const double fpgaPhiSize = M_PI / 16.0;
+  const double localCoordPhiSize = M_PI / 32.0;
+  const double cpmEtaSize = 0.4;
+  const double localCoordEtaSize = 0.1;
+
+  LVL1::CPRoIDecoder d;
+  assert (d.roiType(0x22345678) == LVL1::TrigT1CaloDefs::CpRoIWordType);
+  assert (d.roiType(0xa2345678) == LVL1::TrigT1CaloDefs::EMRoIWordType);
+  assert (d.roiType(0xb2345678) == LVL1::TrigT1CaloDefs::TauRoIWordType);
+  assert (d.roiType(0xc2345678) == LVL1::TrigT1CaloDefs::RoIWordTypeError);
+
+  // EMRoI, crate=2, module=11, chip=5, localcoord=3, et=0x48, isol=0x12
+  unsigned int word1 = 0xaaeb1248;
+  assert (d.roiType(word1) == LVL1::TrigT1CaloDefs::EMRoIWordType);
+  assert (d.crate(word1) == 2);
+  assert (d.module(word1) == 11);
+  assert (d.chip(word1) == 5);
+  assert (d.localcoord(word1) == 3);
+  assert (d.thresholdsPassed(word1) == (std::vector<unsigned>{}));
+  assert (d.et(word1) == 0x48);
+  assert (d.isolationWord(word1) == 0x12);
+  LVL1::CoordinateRange cr1 = d.coordinate (word1);
+  double phi1 = 2*cratePhiSize + 5*fpgaPhiSize + 2*localCoordPhiSize;
+  double eta1 = 3*cpmEtaSize + 2*localCoordEtaSize;
+  FLOAT_EQassert (cr1.phi(), phi1);
+  FLOAT_EQassert (cr1.phiRange().min(), phi1-localCoordPhiSize);
+  FLOAT_EQassert (cr1.phiRange().max(), phi1+localCoordPhiSize);
+  FLOAT_EQassert (cr1.eta(), eta1);
+  FLOAT_EQassert (cr1.etaRange().min(), eta1-localCoordEtaSize);
+  FLOAT_EQassert (cr1.etaRange().max(), eta1+localCoordEtaSize);
+
+  // CpRoI, crate=1, module=7, chip=2, localcoord=5, tp=4,7,10,13
+  unsigned int word2 = 0x17541248;
+  assert (d.roiType(word2) == LVL1::TrigT1CaloDefs::CpRoIWordType);
+  assert (d.crate(word2) == 1);
+  assert (d.module(word2) == 7);
+  assert (d.chip(word2) == 2);
+  assert (d.localcoord(word2) == 5);
+  assert (d.thresholdsPassed(word2) == (std::vector<unsigned>{4,7,10,13}));
+  assert (d.et(word2) == 0);
+  assert (d.isolationWord(word2) == 0);
+  LVL1::CoordinateRange cr2 = d.coordinate (word2);
+  double phi2 = 1*cratePhiSize + 2*fpgaPhiSize + localCoordPhiSize;
+  double eta2 = (-1)*cpmEtaSize + 4*localCoordEtaSize;
+  FLOAT_EQassert (cr2.phi(), phi2);
+  FLOAT_EQassert (cr2.phiRange().min(), phi2-localCoordPhiSize);
+  FLOAT_EQassert (cr2.phiRange().max(), phi2+localCoordPhiSize);
+  FLOAT_EQassert (cr2.eta(), eta2);
+  FLOAT_EQassert (cr2.etaRange().min(), eta2-localCoordEtaSize);
+  FLOAT_EQassert (cr2.etaRange().max(), eta2+localCoordEtaSize);
+}
+
+
+int main()
+{
+  std::cout << "CPRoIDecoder_test\n";
+  test1();
+  return 0;
+}
diff --git a/Trigger/TrigT1/TrigT1Interfaces/test/JEPRoIDecoder_test.cxx b/Trigger/TrigT1/TrigT1Interfaces/test/JEPRoIDecoder_test.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..f55b08dae9308d8197a94e35a5a66f1e67372513
--- /dev/null
+++ b/Trigger/TrigT1/TrigT1Interfaces/test/JEPRoIDecoder_test.cxx
@@ -0,0 +1,133 @@
+/*
+ * Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+ */
+/**
+ * @file TrigT1Interfaces/test/JEPRoIDecoder_test.cxx
+ * @author scott snyder <snyder@bnl.gov>
+ * @date Mar, 2019
+ * @brief Unit tests for JEPRoIDecoder.
+ */
+
+
+#undef NDEBUG
+#include "TrigT1Interfaces/JEPRoIDecoder.h"
+#include "TestTools/FLOATassert.h"
+#include <iostream>
+#include <cassert>
+
+
+void test1()
+{
+  std::cout << "test1\n";
+
+  const double jemPhiSize = M_PI / 2;
+  const double jePhiSize = M_PI / 16;
+  const double JEMEtaSize = 0.8;
+  const double jeEtaSize = 0.2;
+
+    LVL1::JEPRoIDecoder d;
+  assert (d.roiType(0x82345678) == LVL1::TrigT1CaloDefs::JetRoIWordType);
+  assert (d.roiType(0x02345678) == LVL1::TrigT1CaloDefs::JetRoIWordType);
+  assert (d.roiType(0xa2345678) == LVL1::TrigT1CaloDefs::JetEtRoIWordType);
+  assert (d.roiType(0x42345678) == LVL1::TrigT1CaloDefs::EnergyRoIWordType0);
+  assert (d.roiType(0x52345678) == LVL1::TrigT1CaloDefs::EnergyRoIWordType2);
+  assert (d.roiType(0x62345678) == LVL1::TrigT1CaloDefs::EnergyRoIWordType1);
+
+  assert (d.jetRoIVersion(0x82345678) == 1);
+  assert (d.jetRoIVersion(0x02345678) == 2);
+  assert (d.jetRoIVersion(0x32345678) == 999);
+
+  // run1; crate=0; jem=13; col=2, row=5 [frame=6 rl=2]; th=4,7; fth=2
+  unsigned int word1 = 0x8dd01248;
+  assert (d.crate(word1) == 0);
+  assert (d.module(word1) == 13);
+  assert (d.column(word1) == 2);
+  assert (d.row(word1) == 5);
+  assert (d.thresholdsPassed(word1)    == (std::vector<unsigned>{4,7}));
+  assert (d.fwdThresholdsPassed(word1) == (std::vector<unsigned>{2}));
+  assert (d.etLarge(word1) == 0);
+  assert (d.etSmall(word1) == 0);
+  const double phi1 = 2*jemPhiSize + 6*jePhiSize;
+  const double eta1 = JEMEtaSize + 3*jeEtaSize;
+  LVL1::CoordinateRange cr1 = d.coordinate(word1);
+  FLOAT_EQassert (cr1.phi(), phi1);
+  FLOAT_EQassert (cr1.phiRange().min(), phi1-jePhiSize);
+  FLOAT_EQassert (cr1.phiRange().max(), phi1+jePhiSize);
+  FLOAT_EQassert (cr1.eta(), eta1);
+  FLOAT_EQassert (cr1.etaRange().min(), eta1-jeEtaSize);
+  FLOAT_EQassert (cr1.etaRange().max(), eta1+jeEtaSize);
+
+  // run2; crate=1; jem=7; col=1, row=6 [frame=3 rl=1]; etLarge=0x0x248; etSmall=0x40
+  unsigned int word2 = 0x17681248;
+  assert (d.crate(word2) == 1);
+  assert (d.module(word2) == 7);
+  assert (d.column(word2) == 1);
+  assert (d.row(word2) == 6);
+  assert (d.thresholdsPassed(word2)    == (std::vector<unsigned>{}));
+  assert (d.fwdThresholdsPassed(word2) == (std::vector<unsigned>{}));
+  assert (d.etLarge(word2) == 0x248);
+  assert (d.etSmall(word2) == 0x04);
+  LVL1::CoordinateRange cr2 = d.coordinate(word2);
+  const double phi2 = jemPhiSize + 7*jePhiSize;
+  FLOAT_EQassert (cr2.phi(), phi2);
+  FLOAT_EQassert (cr2.phiRange().min(), phi2-jePhiSize);
+  FLOAT_EQassert (cr2.phiRange().max(), phi2+jePhiSize);
+  FLOAT_EQassert (cr2.etaRange().min(), 2.7);
+  FLOAT_EQassert (cr2.etaRange().max(), 3.2);
+  FLOAT_EQassert (cr2.eta(), 2.95);
+
+  // run2; crate=1; jem=8; col=0, row=3 [frame=1 rl=2]; etLarge=0x0x321; etSmall=0x10
+  unsigned int word3 = 0x18304321;
+  assert (d.crate(word3) == 1);
+  assert (d.module(word3) == 8);
+  assert (d.column(word3) == 0);
+  assert (d.row(word3) == 3);
+  assert (d.thresholdsPassed(word3)    == (std::vector<unsigned>{}));
+  assert (d.fwdThresholdsPassed(word3) == (std::vector<unsigned>{}));
+  assert (d.etLarge(word3) == 0x321);
+  assert (d.etSmall(word3) == 0x10);
+  LVL1::CoordinateRange cr3 = d.coordinate(word3);
+  const double phi3 = 3*jemPhiSize + 4*jePhiSize;
+  FLOAT_EQassert (cr3.phi(), phi3);
+  FLOAT_EQassert (cr3.phiRange().min(), phi3-jePhiSize);
+  FLOAT_EQassert (cr3.phiRange().max(), phi3+jePhiSize);
+  FLOAT_EQassert (cr3.etaRange().min(), -4.9);
+  FLOAT_EQassert (cr3.etaRange().max(), -2.9);
+  FLOAT_EQassert (cr3.eta(), -3.9);
+
+  unsigned int word10 = 0x40241234;
+  assert (d.energyX(word10) == 0x1234);
+  assert (d.energyY(word10) == 0);
+  assert (d.energyT(word10) == 0);
+  assert (d.energyOverflow(word10) == false);
+  assert (d.mEtSigThresholdsPassed(word10) == (std::vector<unsigned>{3,6}));
+  assert (d.mEtSigThresholdPassed(word10, 2) == true);
+  assert (d.mEtSigThresholdPassed(word10, 5) == true);
+  assert (d.mEtSigThresholdPassed(word10, 4) == false);
+
+  unsigned int word11 = 0x6013d234;
+  assert (d.energyX(word11) == 0);
+  assert (d.energyY(word11) == -11724);
+  assert (d.energyT(word11) == 0);
+  assert (d.energyOverflow(word11) == true);
+  assert (d.etSumThresholdsPassed(word11) == (std::vector<unsigned>{1,2,5}));
+  assert (d.sumEtThresholdPassed(word11, 1) == true);
+  assert (d.sumEtThresholdPassed(word11, 2) == false);
+
+  unsigned int word12 = 0x50c2a856;
+  assert (d.energyX(word12) == 0);
+  assert (d.energyY(word12) == 0);
+  assert (d.energyT(word12) == 0x2856);
+  assert (d.energyOverflow(word12) == true);
+  assert (d.etMissThresholdsPassed(word12) == (std::vector<unsigned>{2,7,8}));
+  assert (d.etMissThresholdPassed(word12, 5) == false);
+  assert (d.etMissThresholdPassed(word12, 6) == true);
+}
+
+
+int main()
+{
+  std::cout << "JEPRoIDecoder_test\n";
+  test1();
+  return 0;
+}
diff --git a/Trigger/TrigTools/TrigUtils/CMakeLists.txt b/Trigger/TrigTools/TrigUtils/CMakeLists.txt
deleted file mode 100644
index efec566746033dd8860a7cb4837aeb9fbe3ad5e1..0000000000000000000000000000000000000000
--- a/Trigger/TrigTools/TrigUtils/CMakeLists.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-################################################################################
-# Package: TrigUtils
-################################################################################
-
-# Declare the package name:
-atlas_subdir( TrigUtils )
-
-# Install files from the package:
-atlas_install_scripts( bin/*.py )
diff --git a/Trigger/TrigTools/TrigUtils/bin/hltCoolNotify.py b/Trigger/TrigTools/TrigUtils/bin/hltCoolNotify.py
deleted file mode 100755
index 598aea9145332788e61363e4764566b098266235..0000000000000000000000000000000000000000
--- a/Trigger/TrigTools/TrigUtils/bin/hltCoolNotify.py
+++ /dev/null
@@ -1,407 +0,0 @@
-#!/usr/bin/env tdaq_python
-
-# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
-#
-# Based on Walter Lampl's getIOVAge.py and CoolConvUtilities/AtlCoolTool.py
-#
-# Author: Frank Winklmeier
-#
-__doc__ = """\
-Usage: hltCoolNotify.py [OPTIONS] [Database ...]
-
-Show changes in COOL folders between two runs. If no run number is specified, the
-tool is running in online mode. In this case the difference between the current
-run and the last stable beams run will be shown. The GlobalTag for a given run
-is retrieved from the TriggerDB via the SuperMasterKey, which itself is retrieved
-from COOL.
-
-If only one run is specified, all COOL folders and tags will be shown.
-
-Database is one or more COOL connection strings (e.g. COOLONL_LAR/COMP200).
-If not specified, a predefined set of COOLONL database instances is used.
-"""
-
-import sys
-import time
-import operator
-import optparse
-import signal
-import cPickle
-
-import ispy
-from PyCool import cool
-from CoolConvUtilities.AtlCoolLib import indirectOpen
-from CoolConvUtilities.AtlCoolTool import AtlCoolTool
-from CoolRunQuery.AtlRunQueryIOV import IOVTime, IOVRange
-
-from TrigConfStorage.TriggerCoolUtil import TriggerCoolUtil
-from TrigConfigSvc.TrigConfigSvcUtils import getPropertyFromDB
-
-from AthenaCommon.Logging import logging
-msg = logging.getLogger("hltCoolNotify")
-msg.setLevel(logging.INFO)
-msg.setFormat("%(asctime)s  Py:%(name)-15s %(levelname)7s %(message)s")
-   
-
-# List of DB instances used by HLT
-hltCondDB = ["COOLONL_CALO/COMP200",
-             "COOLONL_CSC/COMP200",
-             #"COOLONL_FWD/COMP200",
-             "COOLONL_GLOBAL/COMP200",
-             "COOLONL_INDET/COMP200",
-             "COOLONL_LAR/COMP200",
-             "COOLONL_MDT/COMP200",
-             "COOLONL_MUONALIGN/COMP200",
-             "COOLONL_PIXEL/COMP200",
-             "COOLONL_RPC/COMP200",
-             "COOLONL_SCT/COMP200",
-             "COOLONL_TDAQ/COMP200",
-             "COOLONL_TGC/COMP200",
-             "COOLONL_TILE/COMP200",
-             "COOLONL_TRIGGER/COMP200",
-             "COOLONL_TRT/COMP200"]
-
-# Log output 
-log = []
-
-# Global stop flag
-STOP = False
-
-# Helpers to convert validity key
-def toRun(validity):
-   return (validity >> 32)
-   
-def toLB(validity):
-   return (validity & 0xFFFFFFFF)
-
-def toSec(validity):
-   return (validity / 1000000000L)
-
-class CoolDB:
-   """Cache for COOL db conneciton objects"""
-   cooldbs = {}
-   
-   @classmethod
-   def get(cls, dbname):
-      if not dbname in cls.cooldbs: 
-         cls.cooldbs[dbname] = indirectOpen(dbname,readOnly=True,oracle=True)
-
-      return cls.cooldbs[dbname]
-
-
-class Run:
-   def __init__(self, runno):
-      self.runno = runno
-      self.smk = None
-      self.sor = None         # start of run time in UTC
-      self.globalTag = None
-      if self.runno!=None: self.update()
-      
-   def update(self):
-      # SOR
-      if self.sor==None:
-         db = CoolDB.get("COOLONL_TDAQ/COMP200")
-         f = db.getFolder("/TDAQ/RunCtrl/SOR_Params")
-         o = f.findObject(cool.ValidityKey(self.runno<<32), 0)
-         self.sor = toSec(o.get().payload()['SORTime'])
-
-      # SMK
-      if self.smk==None:
-         keys = TriggerCoolUtil.getHLTConfigKeys(CoolDB.get('COOLONL_TRIGGER/COMP200'),
-                                                 [[self.runno,self.runno]])
-
-         if not self.runno in keys:
-            raise RuntimeError, ("Cannot find SMK for run %d" % self.runno)
-         self.smk = int(keys[self.runno]['SMK'])
-
-      # GlobalTag
-      if self.globalTag==None:
-         res = getPropertyFromDB('TRIGGERDB', self.smk , 'IOVDbSvc', 'GlobalTag')
-         if len(res)==0:
-            raise RuntimeError, ('Cannot find GlobalTag for SMK %d' % self.smk)
-         
-         self.globalTag = res[0][3]
-
-
-class OnlineRun(Run):
-   def __init__(self):
-      Run.__init__(self,None)
-      self.update()
-      
-   def update(self):
-      p = ispy.IPCPartition("ATLAS")
-      rp = ispy.ISObject(p, "RunParams.RunParams")
-      rp.checkout()   
-      conf = ispy.ISObject(p, "RunParams.TrigConfSmKey")
-      conf.checkout()
-
-      self.runno = rp.run_number
-      self.sor = rp.timeSOR.c_time()
-      self.smk = conf.SuperMasterKey
-
-      Run.update(self)
-
-
-class Folder:   
-   def __init__(self, folder, tag, obj, istime, channel=None):
-      self.iov = IOVRange(obj,istime)
-      self.folder = folder
-      self.tag = tag
-      self.insertTime = '%s' % obj.insertionTime()
-      self.channel = channel
-      
-   def __str__(self):
-       return '%-40s %s%s %s (%s)' % (self.iov, self.folder, (' (%s)' % self.channel) if self.channel!=None else '',
-                                      self.tag, self.insertTime.split('.')[0])
-
-   def __cmp__(self, other):
-      return cmp(self.iov, other.iov)
-
-   def __eq__(self, other):
-      return self.folder==other.folder and self.tag==other.tag and \
-             self.iov==other.iov and self.channel==self.channel
-
-   def __hash__(self):
-      return hash('%s%s%s%s%s' % (self.iov, self.folder, self.tag,
-                                  self.insertTime, self.channel))
-   
-class HltCoolTool(AtlCoolTool):
-
-   def __init__(self, database):
-      AtlCoolTool.__init__(self, database)
-   
-   def listFolders(self, run, sor, tag,
-                   chan = None, allChan = False):
-      """
-      Return folder list
-      """
-
-      folderList = []
-      
-      nodelist = self.db.listAllNodes()
-      for node in nodelist:
-         if not self.db.existsFolder(node): continue
-         f = self.db.getFolder(node)
-
-         if chan==None:
-            chansel = cool.ChannelSelection.all()
-         else:
-            chansel = cool.ChannelSelection(chan)
-
-         istime = ((f.description()).find('<timeStamp>time')!=-1)
-         if istime:
-            limmin = limmax = sor*1000000000L
-         else:
-            limmin = limmax = (run << 32)
-
-         if tag=='':
-            objs = f.browseObjects(limmin,limmax,chansel)
-         else:
-            if not tag in f.listTags():
-               # tag is not defined here, try hierarchical tag
-               try:
-                  restag = f.resolveTag(tag)
-               except Exception:
-                  continue
-            else:
-               restag = tag
-
-            objs = f.browseObjects(limmin,limmax,chansel,restag)
-
-         done = False
-         while objs.goToNext() and not done:
-            obj = objs.currentRef()
-            ch = obj.channelId()
-
-            if not allChan: done = True
-            folderList.append(Folder(node, restag, obj, istime, ch if allChan else None))
-           
-      return folderList
-      
-
-def getLastPhysicsRuns(N=1):
-   """Return the last N runs with ReadyForPhysics"""
-
-   db = CoolDB.get("COOLONL_TDAQ/COMP200")
-   f = db.getFolder("/TDAQ/RunCtrl/DataTakingMode")
-   objs = f.browseObjects(cool.ValidityKeyMin, cool.ValidityKeyMax, cool.ChannelSelection(0))
-   lastrun = []
-   while objs.goToNext():
-      obj= objs.currentRef()
-      if obj.payload()['ReadyForPhysics']==0: continue
-      lastrun.append(toRun(obj.since()))
-
-   return lastrun[len(lastrun)-N:]
-
-
-def email(toaddr, subject, log):
-   import smtplib
-   try:
-      s = smtplib.SMTP()
-      s.connect()
-   except Exception as e:
-      msg.error('%s' % e)
-      return
-   
-   fromaddr = 'atlas-trigger-conditions-commit@cern.ch' # Required to allow sending to this egroup
-   txt = 'From: %s\r\n'\
-         'To: %s\r\n'\
-         'Reply-To: %s\r\n'\
-         'Subject: %s\r\n\r\n' % (fromaddr, toaddr, toaddr, subject)
-
-   txt += '\n'.join(log)
-   try:
-      s.sendmail(fromaddr, toaddr, txt)
-   except Exception as e:
-      msg.error('Failure sending email: %s' % e)
-      return
-
-   msg.info('Successfully sent email to %s' % toaddr)
-   s.quit()
-
-
-def myhelp(option, opt_str, value, parser):
-   """Custom help callback since optparse does not preserve newlines"""
-
-   print __doc__
-   
-   parser.print_help()
-   sys.exit(1)
-
-
-def handler(signum, f_globals):
-   global STOP
-   msg.warning('Signal handler called with signal %d' % signum)
-   STOP = True
-
-
-def main():
-   signal.signal(signal.SIGTERM, handler)
-   
-   parser = optparse.OptionParser(usage = '',
-                                  add_help_option = False)
-
-   parser.add_option("-r", "--run", action="append", type='int',
-                     help="Run number(s). If two runs are given a diff will be done.")
-
-   parser.add_option("-c", "--channels", action="store_true", default = False,
-                     help="Show all channels, otherwise only first one")
-
-   parser.add_option("-m", "--mail", type="string",
-                     help="Email non-zero differences to given mailing address(es)")
-
-   parser.add_option("-i", "--ignore", type="string",
-                     help="File name with list of folders to ignore in diff")
-
-   parser.add_option("-o","--oldDiff", type="string",
-                     help="File name with already reported diffs")
-   
-   parser.add_option("-h", "--help", action="callback", callback=myhelp)
-     
-   (opt, args) = parser.parse_args()
-
-   oldDiff = set()  # pairs of folder diffs already reported
-   if opt.oldDiff:
-      try:
-         oldDiff = cPickle.load(open(opt.oldDiff))
-      except:
-         pass
-      
-   if opt.run!=None and len(opt.run)>2:
-      parser.print_help()
-      parser.error('Cannot specify more than two run numbers')
-
-   if opt.run==None:
-      r = OnlineRun()
-      runs = [r]
-      lastruns = sorted(getLastPhysicsRuns(2))
-      if lastruns[1]==r.runno: runs.append(Run(int(lastruns[0])))
-      else: runs.append(Run(int(lastruns[1])))
-   else:
-      runs = [Run(r) for r in opt.run]
-
-   # Order by run number
-   runs = sorted(runs, key=operator.attrgetter('runno'))
-   msg.info('Reading conditions for %s' % [r.runno for r in runs])
-   
-   cooldb = args if len(args)>0 else hltCondDB
-
-   for r in runs:
-      log.append('=== Run: %d %s (%s)' %
-                 (r.runno,time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(r.sor)),r.globalTag))
-
-   log.append('=== DBs: %s' % cooldb)
-   
-   folders = {}
-   for db in cooldb:
-      msg.info('Reading %s' % db)
-      try:
-         coolTool = HltCoolTool(db)
-      except:
-         msg.error('Cannot connect to %s' % db)
-         continue
-
-      for r in runs:
-         if STOP:
-            msg.warning('Aborting...')
-            return 0
-
-         if not r.runno in folders: folders[r.runno] = []
-         folders[r.runno] += coolTool.listFolders(r.runno, r.sor, r.globalTag,
-                                                  allChan = opt.channels)
-
-   # Diff or printout
-   diff = []
-   ignored = []
-   if len(runs)==2:
-
-      ignore = []
-      if opt.ignore!=None:
-         try:
-            ignore = [l.strip() for l in open(opt.ignore).readlines() if not l.startswith('#')]
-         except:
-            msg.warning('Cannot open file %s' % opt.ignore)
-         
-      folders_r0 = dict([(f.folder,f) for f in folders[runs[0].runno]])
-      for f in folders[runs[1].runno]:
-         if not f in folders[runs[0].runno]:
-            pair = (folders_r0[f.folder],f)
-            if (f.folder in ignore or pair in oldDiff):
-               l = ignored
-            else:
-               l = diff
-               oldDiff.add(pair)
-               
-            l.append("    %s" % folders_r0[f.folder])
-            l.append("--> %s" % f)
-            
-      if len(diff)>0:
-         log.append('\nConditions differences found:')
-         log.extend(diff)
-      else:
-         log.append('\nNo conditions differences found')
-         
-      if len(ignored)>0:
-         log.append('\nConditions differences ignored:')
-         log.extend(ignored)
-
-   else:
-      for f in folders[runs[0].runno]:
-         log.append(f)
-
-   print '='*80
-   for l in log: print l
-   print '='*80
-   
-   if opt.mail!=None and len(diff)>0:
-      email(opt.mail, ('HLT conditions changes for run %d' % runs[1].runno),log)
-
-   if opt.oldDiff:
-      msg.info('Writing already reported differences to %s' % opt.oldDiff)
-      cPickle.dump(oldDiff, open(opt.oldDiff,'w'))
-      
-   msg.info('Exiting')
-         
-if __name__ == "__main__":
-   sys.exit(main())
-      
diff --git a/Trigger/TrigValidation/TrigValTools/bin/rootcomp.py b/Trigger/TrigValidation/TrigValTools/bin/rootcomp.py
index 11aa6208f8d21d6f158609127936d39859d293a5..81638d612216d5e80ac3548e6b51d1429b471ca1 100755
--- a/Trigger/TrigValidation/TrigValTools/bin/rootcomp.py
+++ b/Trigger/TrigValidation/TrigValTools/bin/rootcomp.py
@@ -1,26 +1,11 @@
 #!/usr/bin/env python
-
-# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+#
+# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 # @file:    rootcomp.py
 # @purpose: Script to compare the histograms in two root files
 # @author:  Frank Winklmeier, Will Buttinger
 #
-# $Id: rootcomp.py,v 1.18 2009-04-18 20:06:28 sgeorge Exp $
-
-"""
-Compares the histograms in two root files.
-
-Return value: totalHistograms > 0 : 
-                   (totalHistograms - matchingHistograms - missingHistograms)
-              totalHistograms = 0 :
-                   255
-              (i.e. script returns 0 if all histograms match)     
-"""              
-
-__author__  = "Frank Winklmeier, Will Buttinger"
-__version__ = "$Revision: 1.18 $"
-__doc__     = "Script to compare the histograms in two root files"
-
+from __future__ import print_function
 import sys
 import os
 import os.path
@@ -80,12 +65,10 @@ def diffFiles(ref,file,opts):
       selection = lambda x : reduce(lambda a,b:a|b,[re.search(pat,x)!=None for pat in opts.select])
       
    refonly = filter(selection,filter(lambda s:s[0]=='-',diff))
-   #fileonly = filter(selection,filter(lambda s:s[0]=='+',diff))
 
    if len(refonly)>0:
-      print
-      print "Histograms only found in reference:"
-      for s in refonly: print s
+      print("\nHistograms only found in reference:")
+      for s in refonly: print(s)
 
    return
 
@@ -165,7 +148,6 @@ def main():
                      action = "store_true", default = False,
                      help = "be verbose")
 
-
    parser.add_option("--atnMode",
                      action = "store_true", default = False, help = "reference file is one from previous atn nightly test")
    
@@ -178,7 +160,7 @@ def main():
       for i in range(1,7):
          refFile = getPreviousNightlyPath(i) + "/" + args[0]
          if os.path.isfile(refFile): break
-         print "Could not find file %s" % refFile
+         print("Could not find file %s" % refFile)
       args = [refFile] + args
 
    if len(args)!=2:
@@ -187,6 +169,7 @@ def main():
 
    if not opts.noSkipList:
       opts.skip += ["TIMERS"]
+      opts.skip += ["/TIME_"]
       opts.skip += ["TimerTot"]         # For TrigCalo[Cell,Cluster,Tower]Maker
       opts.skip += ["FullCalo_Total"]   # TrigCaloCellMaker_fullcalo/FullCalo_Total
       opts.skip += ["signatureAcceptance"]
@@ -214,21 +197,18 @@ def main():
       if opts.chi2: opts.threshold = 0.95
       else: opts.threshold = 1e-6
       
-   print "-"*70
-   print " rootcomp.py, "+__version__
-   print
-   print "Command    : rootcomp.py %s" % (" ".join(sys.argv[1:]))
-   print
-   print "Reference  : %s" % (args[0])
-   print "File       : %s" % (args[1])
-   print "Comparison :",
-   if opts.chi2: print "CHI2 (%.2f)" % opts.threshold
-   elif opts.axis: print "AXIS"
-   else: print "BIN-BY-BIN (%.1e)" % opts.threshold
-   if not opts.skip==[]: print "Ignored histograms: %s" % (", ".join(opts.skip))
-   if not opts.select==[]: print "Selected histograms: %s" % (", ".join(opts.select))   
-
-   print "-"*70
+   print("-"*70)
+   print("Command    : rootcomp.py %s\n" % (" ".join(sys.argv[1:])))
+   print("Reference  : %s" % args[0])
+   print("File       : %s" % args[1])
+   print("Comparison : ", end="")
+   if opts.chi2: print("CHI2 (%.2f)" % opts.threshold)
+   elif opts.axis: print("AXIS")
+   else: print("BIN-BY-BIN (%.1e)" % opts.threshold)
+   if not opts.skip==[]: print("Ignored histograms: %s" % (", ".join(opts.skip)))
+   if not opts.select==[]: print("Selected histograms: %s" % (", ".join(opts.select)))
+
+   print("-"*70)
 
 
    # Now import ROOT
@@ -283,7 +263,7 @@ def main():
    
    # Run
    rc = valid.setReferenceFile(args[0],opts.refBaseDir)
-   if rc==False:
+   if rc is False:
       return 255
 
    rc = valid.run(args[1],opts.fileBaseDir)
@@ -292,7 +272,7 @@ def main():
    sys.stderr.flush()
    
    if opts.zip and not opts.pdf:
-      print "GZipping postscript file -> %s.ps.gz" % (opts.outFile)
+      print("GZipping postscript file -> %s.ps.gz" % opts.outFile)
       os.system("gzip -f %s.ps" % (opts.outFile))
 
    # List histograms that are only found in reference
@@ -313,11 +293,9 @@ def main():
 
    if opts.html:
       os.system("root2html.py *.root")
-   
 
-   print "Overall test result: %i" % result
+   print("Overall test result: %i" % result)
    return result
 
-
 if __name__ == "__main__":
    sys.exit(main())
diff --git a/graphics/VP1/VP1Base/CMakeLists.txt b/graphics/VP1/VP1Base/CMakeLists.txt
index 7bd3aab554acfa0d3ceea8f21768bcfd6202a7dc..6ab18d579e51ec5e1753e7e2c55e1d378847b6d4 100644
--- a/graphics/VP1/VP1Base/CMakeLists.txt
+++ b/graphics/VP1/VP1Base/CMakeLists.txt
@@ -14,9 +14,9 @@ atlas_depends_on_subdirs(
    PRIVATE graphics/VP1/VP1HEPVis )
 
 # Find the external dependencies:
-find_package( Qt5 COMPONENTS Core OpenGL Gui PrintSupport Widgets)
-find_package( SoQt  )
-find_package( Coin3D  )
+find_package( Qt5 COMPONENTS Core OpenGL Gui PrintSupport Widgets )
+find_package( SoQt )
+find_package( Coin3D )
 
 # Generate UI files automatically:
 # Note: add the "Widgets" component to "find_package( Qt5 ...)" if you have UI files, otherwise UIC, even if CMAKE_AUTOUIC is set to ON, is not run
@@ -31,10 +31,7 @@ set( CMAKE_AUTORCC TRUE )
 # declaration of PRIVATE_INCLUDE_DIRS.
 atlas_add_library( VP1Base VP1Base/*.h src/*.cxx src/*.qrc
    PUBLIC_HEADERS VP1Base
-   INCLUDE_DIRS ${SOQT_INCLUDE_DIRS} ${COIN3D_INCLUDE_DIRS}
+   INCLUDE_DIRS ${QT5_INCLUDE_DIRS} ${SOQT_INCLUDE_DIRS} ${COIN3D_INCLUDE_DIRS}
    PRIVATE_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR}
-   LINK_LIBRARIES Qt5::Core Qt5::Gui Qt5::PrintSupport ${SOQT_LIBRARIES} ${COIN3D_LIBRARIES} GeoPrimitives
-   PRIVATE_LINK_LIBRARIES Qt5::OpenGL VP1HEPVis )
-
-
-
+   LINK_LIBRARIES ${QT5_LIBRARIES} ${SOQT_LIBRARIES} ${COIN3D_LIBRARIES} GeoPrimitives
+   PRIVATE_LINK_LIBRARIES VP1HEPVis )