diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/CMakeLists.txt b/Trigger/TrigHypothesis/TrigMuonHypoMT/CMakeLists.txt
index 6784ca2c1da52a472c7bf4367c2946f2701fb35e..468a93078c410fc0dd3b49eddc4ac17f99a83160 100644
--- a/Trigger/TrigHypothesis/TrigMuonHypoMT/CMakeLists.txt
+++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/CMakeLists.txt
@@ -8,8 +8,8 @@ atlas_subdir( TrigMuonHypoMT )
 # Declare the package's dependencies:
 atlas_depends_on_subdirs( PUBLIC
                           Event/xAOD/xAODTrigMuon
-			  Trigger/TrigSteer/DecisionHandling
-			  Control/AthViews
+                          Trigger/TrigSteer/DecisionHandling
+                          Control/AthViews
                           PRIVATE
                           Event/xAOD/xAODMuon
                           GaudiKernel )
@@ -19,14 +19,20 @@ find_package( CLHEP )
 
 # Component(s) in the package:
 atlas_add_component( TrigMuonHypoMT
-		     src/*.cxx
+                     src/*.cxx
                      src/components/*.cxx
                      INCLUDE_DIRS ${CLHEP_INCLUDE_DIRS}
                      LINK_LIBRARIES ${CLHEP_LIBRARIES} xAODTrigMuon TrigInterfacesLib DecisionHandling AthViews xAODMuon GaudiKernel )
 
-atlas_add_test( TrigMuonHypoMTConfig SCRIPT python -m  	TrigMuonHypoMT.TrigMuonHypoMTConfig
-		POST_EXEC_SCRIPT nopost.sh )
-
 # Install files from the package:
 atlas_install_python_modules( python/*.py )
 
+# Unit tests:
+atlas_add_test( TrigMuonHypoMTConfig
+                SCRIPT python -m TrigMuonHypoMT.TrigMuonHypoMTConfig
+                POST_EXEC_SCRIPT nopost.sh )
+
+# Check python syntax:
+atlas_add_test( flake8
+                SCRIPT flake8 --select=ATL,F,E7,E9,W6 --enable-extension=ATL900,ATL901 ${CMAKE_CURRENT_SOURCE_DIR}/python
+                POST_EXEC_SCRIPT nopost.sh )
diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMTConfig.py b/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMTConfig.py
index 10c897e4a2dd53334230c3552b36da30478bad23..abde41835cee6f7e6409cfd6abdacf5161e74242 100755
--- a/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMTConfig.py
+++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMTConfig.py
@@ -1,12 +1,29 @@
 # Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 
-from TrigMuonHypoMT.TrigMuonHypoMTConf import TrigMufastHypoAlg, TrigMufastHypoTool, TrigmuCombHypoAlg, TrigmuCombHypoTool, TrigMuonEFMSonlyHypoAlg, TrigMuonEFMSonlyHypoTool, TrigMuisoHypoAlg, TrigMuisoHypoTool, TrigMuonEFCombinerHypoAlg, TrigMuonEFCombinerHypoTool, TrigMuonEFTrackIsolationHypoAlg, TrigMuonEFTrackIsolationHypoTool
-from TrigMuonHypoMT.TrigMuonHypoMonitoringMT import *
+# import Hypo Algs/Tools
+from TrigMuonHypoMT.TrigMuonHypoMTConf import (  # noqa: F401 (algs not used here)
+    TrigMufastHypoAlg, TrigMufastHypoTool,
+    TrigmuCombHypoAlg, TrigmuCombHypoTool,
+    TrigMuonEFMSonlyHypoAlg, TrigMuonEFMSonlyHypoTool,
+    TrigMuisoHypoAlg, TrigMuisoHypoTool,
+    TrigMuonEFCombinerHypoAlg, TrigMuonEFCombinerHypoTool,
+    TrigMuonEFTrackIsolationHypoAlg, TrigMuonEFTrackIsolationHypoTool
+)
+
+# import monitoring
+from TrigMuonHypoMT.TrigMuonHypoMonitoringMT import (
+    TrigMufastHypoMonitoring,
+    TrigmuCombHypoMonitoring,
+    TrigMuonEFMSonlyHypoMonitoring,
+    TrigMuisoHypoMonitoring,
+    TrigMuonEFCombinerHypoMonitoring
+)
+
+# other imports
 from AthenaCommon.SystemOfUnits import GeV
-from AthenaCommon.AppMgr import ToolSvc
-from TriggerJobOpts.TriggerFlags import TriggerFlags
-import re
 
+from AthenaCommon.Logging import logging
+log = logging.getLogger('TrigMuonHypoMTConfig')
 
 trigMuonEFSAThresholds = {
     '0GeV'             : [ [0,9.9],              [ 0.100 ] ],
@@ -189,15 +206,14 @@ trigMuonEFTrkIsoThresholds = {
 
 def addMonitoring(tool, monClass, name, thresholdHLT ):
     try:
-        if 'Validation' in TriggerFlags.enableMonitoring() or 'Online' in TriggerFlags.enableMonitoring() or 'Cosmic' in TriggerFlags.enableMonitoring():
-            tool.MonTool = monClass( name + "Monitoring_" + thresholdHLT ) 
+        tool.MonTool = monClass( "MonTool" )
+        tool.MonTool.HistPath = name + "/" + thresholdHLT
     except AttributeError:
-        tool.MonTool = ""
-        print name, ' Monitoring Tool failed'
+        log.error('%s Monitoring Tool failed', name)
 
 
 def getThresholdsFromDict( chainDict ):    
-    cparts = [i for i in chainDict['chainParts'] if i['signature'] is 'Muon' or i['signature'] is 'Bphysics']
+    cparts = [i for i in chainDict['chainParts'] if i['signature']=='Muon' or i['signature']=='Bphysics']
     return sum( [ [part['threshold']]*int(part['multiplicity']) for part in cparts ], [])
 
 
@@ -206,23 +222,22 @@ def TrigMufastHypoToolFromDict( chainDict ):
     thresholds = getThresholdsFromDict( chainDict )
     config = TrigMufastHypoConfig()
     tool=config.ConfigurationHypoTool( chainDict['chainName'], thresholds )
-    # # Setup MonTool for monitored variables in AthenaMonitoring package
-    TriggerFlags.enableMonitoring = ['Validation']
+    # Setup MonTool for monitored variables in AthenaMonitoring package
     addMonitoring( tool, TrigMufastHypoMonitoring, 'TrigMufastHypoTool', chainDict['chainName'] )
     
     return tool
 
 
-class TrigMufastHypoConfig():
-    
-    def ConfigurationHypoTool( self, thresholdHLT, thresholds ): 
-        
-        tool = TrigMufastHypoTool( thresholdHLT )  
+class TrigMufastHypoConfig(object):
+
+    log = logging.getLogger('TrigMufastHypoConfig')
 
-        datayear = '2017'
+    def ConfigurationHypoTool( self, thresholdHLT, thresholds ):
+
+        tool = TrigMufastHypoTool( thresholdHLT )  
 
         nt = len(thresholds)
-        print "TrigMufastHypoConfig: Set ", nt, " thresholds" 
+        log.debug('Set %d thresholds', nt)
         tool.PtBins = [ [ 0, 2.5 ] ] * nt
         tool.PtThresholds = [ [ 5.49 * GeV ] ] * nt
         tool.PtThresholdForECWeakBRegionA = [ 3. * GeV ] * nt
@@ -230,23 +245,21 @@ class TrigMufastHypoConfig():
 
         for th, thvalue in enumerate(thresholds):
             thvaluename = thvalue + 'GeV_v15a'
-            print "Number of threshold = ", th, ", Value of threshold = ", thvaluename
+            log.debug('Number of threshold = %d, Value of threshold = %s', th, thvaluename)
 
             try:
                 tool.AcceptAll = False
                 values = muFastThresholds[thvaluename]
                 tool.PtBins[th] = values[0]
                 tool.PtThresholds[th] = [ x * GeV for x in values[1] ]
-                print "TrigMufastHypoConfig: Configration of threshold[", th, "] ", tool.PtThresholds[th]
-                print "TrigMufastHypoConfig: Configration of PtBins[", th, "] ", tool.PtBins[th]
+                log.debug('Configration of threshold[%d] %s', th, tool.PtThresholds[th])
+                log.debug('Configration of PtBins[%d] %s', th, tool.PtBins[th])
                 if thvaluename in muFastThresholdsForECWeakBRegion:
                     spThres = muFastThresholdsForECWeakBRegion[thvaluename]
                     tool.PtThresholdForECWeakBRegionA[th] = spThres[0] * GeV
                     tool.PtThresholdForECWeakBRegionB[th] = spThres[1] * GeV
-                    print 'TrigMufastHypoConfig: -> Thresholds for A[', th, ']/B[', th, ']=',tool.PtThresholdForECWeakBRegionA[th],'/',tool.PtThresholdForECWeakBRegionB[th]
                 else:
-                    print 'TrigMufastHypoConfig: No special thresholds for EC weak Bfield regions for',thvaluename
-                    print 'TrigMufastHypoConfig: -> Copy EC1 for region A, EC2 for region B'
+                    log.debug('No special thresholds for EC weak Bfield regions for %s. Copy EC1 for region A, EC2 for region B.', thvaluename)
                     spThres = values[0][1]
                     if thvaluename == '2GeV' or thvaluename == '3GeV':
                         tool.PtThresholdForECWeakBRegionA[th] = spThres[0] * GeV
@@ -254,10 +267,11 @@ class TrigMufastHypoConfig():
                     else:
                         tool.PtThresholdForECWeakBRegionA[th] = spThres[1] * GeV
                         tool.PtThresholdForECWeakBRegionB[th] = spThres[2] * GeV
-                    print 'TrigMufastHypoConfig: -> Thresholds for A[', th, ']/B[', th, ']=',tool.PtThresholdForECWeakBRegionA[th],'/',tool.PtThresholdForECWeakBRegionB[th]
-                
+
+                log.debug('Thresholds for A[%d]/B[%d] = %d/%d', th, th, tool.PtThresholdForECWeakBRegionA[th], tool.PtThresholdForECWeakBRegionB[th])
+
             except LookupError:
-                if (thvaluename=='passthrough'):
+                if (thvalue=='passthrough'):
                     tool.PtBins[th] = [-10000.,10000.]
                     tool.PtThresholds[th] = [ -1. * GeV ]
                 else:
@@ -266,7 +280,6 @@ class TrigMufastHypoConfig():
         return tool
 
 def TrigmuCombHypoToolFromDict( chainDict ):
-    print chainDict
 
     thresholds = getThresholdsFromDict( chainDict )
     config = TrigmuCombHypoConfig()
@@ -278,27 +291,29 @@ def TrigmuCombHypoToolFromDict( chainDict ):
 
     return tool
 
-class TrigmuCombHypoConfig():
+class TrigmuCombHypoConfig(object):
+
+    log = logging.getLogger('TrigmuCombHypoConfig')
 
     def ConfigurationHypoTool( self, thresholdHLT, thresholds, tight ):
 
         tool = TrigmuCombHypoTool( thresholdHLT )
 
         nt = len(thresholds)
-        print "TrigMufastHypoConfig: Set ", nt, " thresholds" 
+        log.debug('Set %d thresholds', nt)
         tool.PtBins = [ [ 0, 2.5 ] ] * nt
         tool.PtThresholds = [ [ 5.83 * GeV ] ] * nt
 
         for th, thvalue in enumerate(thresholds):
             thvaluename = thvalue + 'GeV_v15a'
-            print "Number of threshold = ", th, ", Value of threshold = ", thvaluename
+            log.debug('Number of threshold = %d, Value of threshold = %s', th, thvaluename)
 
             try:
                 values = muCombThresholds[thvaluename]
                 tool.PtBins[th] = values[0]
                 tool.PtThresholds[th] = [ x * GeV for x in values[1] ]
             except LookupError:
-                if (threshold=='passthrough'):
+                if (thvalue=='passthrough'):
                     tool.AcceptAll = True
                     tool.PtBins[th] = [-10000.,10000.]
                     tool.PtThresholds[th] = [ -1. * GeV ]
@@ -307,7 +322,7 @@ class TrigmuCombHypoConfig():
                 else:
                     raise Exception('MuComb Hypo Misconfigured: threshold %r not supported' % thvaluename)
         
-            if (tight == True): 
+            if (tight is True):
                 tool.ApplyPikCuts        = True
                 tool.MaxPtToApplyPik      = 25.
                 tool.MaxChi2IDPik         = 3.5
@@ -325,7 +340,9 @@ def TrigMuisoHypoToolFromDict( chainDict ):
     return tool
     
 
-class TrigMuisoHypoConfig() :
+class TrigMuisoHypoConfig(object):
+
+    log = logging.getLogger('TrigMuisoHypoConfig')
 
     def ConfigurationHypoTool( self, toolName ):	
 
@@ -335,21 +352,19 @@ class TrigMuisoHypoConfig() :
         tool.AcceptAll = False
         if 'passthrough' in toolName:                    
             tool.AcceptAll = True
-            print 'MuisoHypoConfig configured in pasthrough mode'
+            log.debug('MuisoHypoConfig configured in pasthrough mode')
 
         if "FTK" in toolName: # allows us to use different working points in FTK mode
-            tool.IDConeSize   = 2;
+            tool.IDConeSize   = 2
             tool.MaxIDIso_1   = 0.12
             tool.MaxIDIso_2   = 0.12
             tool.MaxIDIso_3   = 0.12  
         else:
-            tool.IDConeSize   = 2;
+            tool.IDConeSize   = 2
             tool.MaxIDIso_1   = 0.1
             tool.MaxIDIso_2   = 0.1
             tool.MaxIDIso_3   = 0.1
 
-        print 'MuisoHypoConfig configuration done'
- 
         return tool
 
 
@@ -361,23 +376,25 @@ def TrigMuonEFMSonlyHypoToolFromDict( chainDict ) :
     return tool
 
     
-class TrigMuonEFMSonlyHypoConfig(): 
-        
+class TrigMuonEFMSonlyHypoConfig(object):
+
+    log = logging.getLogger('TrigMuonEFMSonlyHypoConfig')
 
     def ConfigurationHypoTool( self, thresholdHLT, thresholds ):
 
+        log = logging.getLogger(self.__class__.__name__)
         tool = TrigMuonEFMSonlyHypoTool( thresholdHLT )  
 
         nt = len(thresholds)
-        print "TrigMuonEFMSonlyHypoConfig: Set ", nt, " thresholds" 
-        print "But cann't use multi muon trigger due to not yet implemented it"
+        log.debug('Set %d thresholds', nt)
+        log.warning('But cannot use multi muon trigger (not implemented yet)')
         tool.PtBins = [ [ 0, 2.5 ] ] * nt
         tool.PtThresholds = [ [ 5.49 * GeV ] ] * nt
 
  
         for th, thvalue in enumerate(thresholds):
             thvaluename = thvalue + 'GeV'
-            print "Number of threshold = ", th, ", Value of threshold = ", thvaluename
+            log.debug('Number of threshold = %d, Value of threshold = %s', th, thvaluename)
 
             try:
                 tool.AcceptAll = False
@@ -386,11 +403,11 @@ class TrigMuonEFMSonlyHypoConfig():
                 tool.PtThresholds[th] = [ x * GeV for x in values[1] ]
 
             except LookupError:
-                if (threshold=='passthrough'):
+                if (thvalue=='passthrough'):
                     tool.PtBins[th] = [-10000.,10000.]
                     tool.PtThresholds[th] = [ -1. * GeV ]
                 else:
-                    raise Exception('MuonEFMSonly Hypo Misconfigured: threshold %r not supported' % threshold)
+                    raise Exception('MuonEFMSonly Hypo Misconfigured: threshold %r not supported' % thvaluename)
 
         return tool
 
@@ -402,22 +419,23 @@ def TrigMuonEFCombinerHypoToolFromDict( chainDict ) :
     addMonitoring( tool, TrigMuonEFCombinerHypoMonitoring, "TrigMuonEFCombinerHypoTool", chainDict['chainName'] )
     return tool
     
-class TrigMuonEFCombinerHypoConfig(): 
+class TrigMuonEFCombinerHypoConfig(object):
         
+    log = logging.getLogger('TrigMuonEFCombinerHypoConfig')
 
     def ConfigurationHypoTool( self, thresholdHLT, thresholds ):
 
         tool = TrigMuonEFCombinerHypoTool( thresholdHLT )  
 
         nt = len(thresholds)
-        print "TrigMuonEFCombinerHypoConfig: Set ", nt, " thresholds" 
+        log.debug('Set %d thresholds', nt)
         tool.PtBins = [ [ 0, 2.5 ] ] * nt
         tool.PtThresholds = [ [ 5.49 * GeV ] ] * nt
 
  
         for th, thvalue in enumerate(thresholds):
             thvaluename = thvalue + 'GeV_v15a'
-            print "Number of threshold = ", th, ", Value of threshold = ", thvaluename
+            log.debug('Number of threshold = %d, Value of threshold = %s', th, thvaluename)
 
             try:
                 tool.AcceptAll = False
@@ -426,24 +444,26 @@ class TrigMuonEFCombinerHypoConfig():
                 tool.PtThresholds[th] = [ x * GeV for x in values[1] ]
 
             except LookupError:
-                if (threshold=='passthrough'):
+                if (thvalue=='passthrough'):
                     tool.PtBins[th] = [-10000.,10000.]
                     tool.PtThresholds[th] = [ -1. * GeV ]
                 else:
-                    raise Exception('MuonEFCB Hypo Misconfigured: threshold %r not supported' % threshold)
+                    raise Exception('MuonEFCB Hypo Misconfigured: threshold %r not supported' % thvaluename)
 
         return tool
 
 
 
 def TrigMuonEFTrackIsolationHypoToolFromDict( chainDict ) :
-    cparts = [i for i in chainDict['chainParts'] if i['signature'] is 'Muon']
+    cparts = [i for i in chainDict['chainParts'] if i['signature']=='Muon']
     thresholds = cparts[0]['isoInfo']
     config = TrigMuonEFTrackIsolationHypoConfig()
     tool = config.ConfigurationHypoTool( chainDict['chainName'], thresholds )
     return tool
 
-class TrigMuonEFTrackIsolationHypoConfig() :
+class TrigMuonEFTrackIsolationHypoConfig(object) :
+
+    log = logging.getLogger('TrigMuonEFTrackIsolationHypoConfig')
 
     def ConfigurationHypoTool(self, toolName, isoCut):
 
@@ -468,10 +488,10 @@ class TrigMuonEFTrackIsolationHypoConfig() :
                 tool.useVarIso = False                                
         except LookupError:
             if(isoCut=='passthrough') :
-                print 'Setting passthrough'
+                log.debug('Setting passthrough')
                 tool.AcceptAll = True
             else:
-                print 'isoCut = ', isoCut
+                log.error('isoCut = ', isoCut)
                 raise Exception('TrigMuonEFTrackIsolation Hypo Misconfigured')
         return tool
 
@@ -494,7 +514,7 @@ if __name__ == '__main__':
     chainNameDecoder = DictFromChainName.DictFromChainName()
                     
     for c in configToTest:
-        print "testing config ", c
+        log.info("testing config %s", c)
         chainDict = chainNameDecoder.getChainDict(c)
         toolMufast = TrigMufastHypoToolFromDict(chainDict)
         assert toolMufast
@@ -507,4 +527,4 @@ if __name__ == '__main__':
         toolEFCombiner = TrigMuonEFCombinerHypoToolFromDict(chainDict)
         assert toolEFCombiner
         
-    print "All OK"
+    log.info("All OK")
diff --git a/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMonitoringMT.py b/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMonitoringMT.py
index 268d8863071274599cd4bdbfca83e1cc0781784a..f6eb0519561f9787a131d0a959ab81aa0cf2e590 100755
--- a/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMonitoringMT.py
+++ b/Trigger/TrigHypothesis/TrigMuonHypoMT/python/TrigMuonHypoMonitoringMT.py
@@ -1,90 +1,93 @@
 # Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
-#
-# PURPOSE: AthenaMT Migration
-#
 
-from AthenaMonitoring.GenericMonitoringTool import GenericMonitoringTool, defineHistogram
+from AthenaMonitoring.GenericMonitoringTool import GenericMonitoringTool
 
 class TrigMufastHypoMonitoring(GenericMonitoringTool):
     def __init__ (self, name):
         super(TrigMufastHypoMonitoring, self).__init__(name)
 
-        self.HistPath = name  
-        self.Histograms = [ defineHistogram('Pt', type='TH1F', path='EXPERT', title="P_{T} reconstruction from #muFast; P_{T} (GeV)", xbins=200, xmin=-100, xmax=100),
-                            defineHistogram('PtFL', type='TH1F', path='EXPERT', title="P_{T} of not selected muons from #muFast; p_{T} (GeV)", xbins=200, xmin=-100, xmax=100),
-                            defineHistogram('Eta , Phi', type='TH2F', path='EXPERT', title="Eta vs Phi reconstruction of #muFast; Eta; Phi",xbins=50, xmin=-3.2, xmax=3.2, ybins=25, ymin=-3.15, ymax=3.15),
-                            defineHistogram('Eta', type='TH1F', path='EXPERT', title="Eta reconstruction from #muFast; Eta",xbins=100, xmin=-3.2, xmax=3.2),
-                            defineHistogram('Phi', type='TH1F', path='EXPERT', title="Phi reconstruction from #muFast; Phi",xbins=100, xmin=-3.15, xmax=3.15),
-                            defineHistogram('ZatSt, Phi', type='TH2F', path='EXPERT', title="Z vs Phi reconstructed in MIDDLE station; Z (cm); Phi (rad)",xbins=50, xmin=-1200., xmax=1200., ybins=25, ymin=-3.2, ymax=3.2),
-                            defineHistogram('XatSt , YatSt', type='TH2F', path='EXPERT', title="Y vs X reconstructed in MIDDLE station; X (cm); Y(cm)",xbins=50, xmin=-1200., xmax=1200., ybins=50, ymin=-1200., ymax=1200.),
-                            defineHistogram('ZatBe', type='TH1F', path='EXPERT', title="DCA along Z; Z (cm)",xbins=100, xmin=-2100, xmax=2100),
-                            defineHistogram('XatBe', type='TH1F', path='EXPERT', title="DCA along X; X (cm)",xbins=100, xmin=-1000, xmax=1000) ]
+        self.defineHistogram('Pt', type='TH1F', path='EXPERT', title="P_{T} reconstruction from #muFast; P_{T} (GeV)",
+                             xbins=200, xmin=-100, xmax=100)
+        self.defineHistogram('PtFL', type='TH1F', path='EXPERT', title="P_{T} of not selected muons from #muFast; p_{T} (GeV)",
+                             xbins=200, xmin=-100, xmax=100)
+        self.defineHistogram('Eta , Phi', type='TH2F', path='EXPERT', title="Eta vs Phi reconstruction of #muFast; Eta; Phi",
+                             xbins=50, xmin=-3.2, xmax=3.2, ybins=25, ymin=-3.15, ymax=3.15)
+        self.defineHistogram('Eta', type='TH1F', path='EXPERT', title="Eta reconstruction from #muFast; Eta",
+                             xbins=100, xmin=-3.2, xmax=3.2)
+        self.defineHistogram('Phi', type='TH1F', path='EXPERT', title="Phi reconstruction from #muFast; Phi",
+                             xbins=100, xmin=-3.15, xmax=3.15)
+        self.defineHistogram('ZatSt, Phi', type='TH2F', path='EXPERT', title="Z vs Phi reconstructed in MIDDLE station; Z (cm); Phi (rad)",
+                             xbins=50, xmin=-1200., xmax=1200., ybins=25, ymin=-3.2, ymax=3.2)
+        self.defineHistogram('XatSt , YatSt', type='TH2F', path='EXPERT', title="Y vs X reconstructed in MIDDLE station; X (cm); Y(cm)",
+                             xbins=50, xmin=-1200., xmax=1200., ybins=50, ymin=-1200., ymax=1200.)
+        self.defineHistogram('ZatBe', type='TH1F', path='EXPERT', title="DCA along Z; Z (cm)",
+                             xbins=100, xmin=-2100, xmax=2100)
+        self.defineHistogram('XatBe', type='TH1F', path='EXPERT', title="DCA along X; X (cm)",
+                             xbins=100, xmin=-1000, xmax=1000)
 
 
 class TrigmuCombHypoMonitoring(GenericMonitoringTool):
     def __init__ (self, name):
         super(TrigmuCombHypoMonitoring, self).__init__(name)
 
-        self.HistPath = name  
-        self.Histograms = [ defineHistogram('Pt', type='TH1F', path='EXPERT', title="p_{T} reconstruction from #muComb; p_{T} (GeV)",
-                                            xbins=210, xmin=-105, xmax=105) ]
-        self.Histograms += [ defineHistogram('PtFL', type='TH1F', path='EXPERT', title="p_{T} of not selected muons from #muComb; p_{T} (GeV)",
-                                            xbins=210, xmin=-105., xmax=105.) ]
-        self.Histograms += [ defineHistogram('StrategyFlag', type='TH1F', path='EXPERT', title="Combination Strategy from #muComb; Strategy Code",
-                                            xbins=12, xmin=-1.5, xmax=10.5) ]
-        self.Histograms += [ defineHistogram('Eta', type='TH1F', path='EXPERT', title="Eta reconstruction from #muComb; Eta",
-                                             xbins=108, xmin=-2.7, xmax=2.7) ]
-        self.Histograms += [ defineHistogram('Phi', type='TH1F', path='EXPERT', title="Phi reconstruction from #muComb; Phi (rad)",
-                                             xbins=96, xmin=-3.1416, xmax=3.1416) ]
-        self.Histograms += [ defineHistogram('Z0', type='TH1F', path='EXPERT', title="PCA along Z from ID track from #muComb; PCA(Z0) (mm)",
-                                             xbins=100, xmin=-200, xmax=200) ]
-        self.Histograms += [ defineHistogram('A0', type='TH1F', path='EXPERT', title="PCA along x-y from ID track from #muComb; PCA(A0) (mm)",
-                                             xbins=100, xmin=-0.6, xmax=0.6) ]
+        self.defineHistogram('Pt', type='TH1F', path='EXPERT', title="p_{T} reconstruction from #muComb; p_{T} (GeV)",
+                             xbins=210, xmin=-105, xmax=105)
+        self.defineHistogram('PtFL', type='TH1F', path='EXPERT', title="p_{T} of not selected muons from #muComb; p_{T} (GeV)",
+                             xbins=210, xmin=-105., xmax=105.)
+        self.defineHistogram('StrategyFlag', type='TH1F', path='EXPERT', title="Combination Strategy from #muComb; Strategy Code",
+                             xbins=12, xmin=-1.5, xmax=10.5)
+        self.defineHistogram('Eta', type='TH1F', path='EXPERT', title="Eta reconstruction from #muComb; Eta",
+                             xbins=108, xmin=-2.7, xmax=2.7)
+        self.defineHistogram('Phi', type='TH1F', path='EXPERT', title="Phi reconstruction from #muComb; Phi (rad)",
+                             xbins=96, xmin=-3.1416, xmax=3.1416)
+        self.defineHistogram('Z0', type='TH1F', path='EXPERT', title="PCA along Z from ID track from #muComb; PCA(Z0) (mm)",
+                             xbins=100, xmin=-200, xmax=200)
+        self.defineHistogram('A0', type='TH1F', path='EXPERT', title="PCA along x-y from ID track from #muComb; PCA(A0) (mm)",
+                             xbins=100, xmin=-0.6, xmax=0.6)
 
 class TrigMuisoHypoMonitoring(GenericMonitoringTool):
 
     def __init__ (self, name):
         super(TrigMuisoHypoMonitoring, self).__init__(name)
 
-        self.HistPath = name  
-        self.Histograms  = [ defineHistogram('CutCounter', type='TH1F', path='EXPERT', title="MuIsoHypo cut counter;cut; nevents", xbins=9, xmin=-1.5, xmax=7.5, opt="kCumulative") ]
-        self.Histograms += [ defineHistogram('SumPtCone', type='TH1F', path='EXPERT', title="MuIsoHypo SumPt in cone around muon;E [GeV/c]; nevents", xbins=200, xmin=0., xmax=15.) ]
+        self.defineHistogram('CutCounter', type='TH1F', path='EXPERT', title="MuIsoHypo cut counter;cut; nevents",
+                             xbins=9, xmin=-1.5, xmax=7.5, opt="kCumulative")
+        self.defineHistogram('SumPtCone', type='TH1F', path='EXPERT', title="MuIsoHypo SumPt in cone around muon;E [GeV/c]; nevents",
+                             xbins=200, xmin=0., xmax=15.)
 
 
 class TrigMuonEFMSonlyHypoMonitoring(GenericMonitoringTool):
 
     def __init__ (self, name="TrigMuonEFMSonlyHypoMonitoring"):
         super(TrigMuonEFMSonlyHypoMonitoring, self).__init__(name)
-        self.HistPath = name  
-
-        self.Histograms = [ defineHistogram('Pt', type='TH1F', path='EXPERT', title="P_{T} reconstruction from #TrigMuonEFMSonlyHypo; P_{T} (MeV)",
-                                            xbins=200, xmin=-100, xmax=100) ]
-        self.Histograms += [ defineHistogram('Eta', type='TH1F', path='EXPERT', title="Eta reconstruction from #TrigMuonEFMSonlyHypo; Eta",
-                                            xbins=100, xmin=-3.2, xmax=3.2) ]
-        self.Histograms += [ defineHistogram('Phi', type='TH1F', path='EXPERT', title="Phi reconstruction from #TrigMuonEFMSonlyHypo; Phi",
-                                    xbins=100, xmin=-3.15, xmax=3.15) ]
-        self.Histograms += [ defineHistogram('Pt_sel', type='TH1F', path='EXPERT', title="Selected P_{T} reconstruction from #TrigMuonEFMSonlyHypo; P_{T} (MeV)",
-                                            xbins=200, xmin=-100, xmax=100) ]
-        self.Histograms += [ defineHistogram('Eta_sel', type='TH1F', path='EXPERT', title="Selected Eta reconstruction from #TrigMuonEFMSonlyHypo; Eta",
-                                            xbins=100, xmin=-3.2, xmax=3.2) ]
-        self.Histograms += [ defineHistogram('Phi_sel', type='TH1F', path='EXPERT', title="Selected Phi reconstruction from #TrigMuonEFMSonlyHypo; Phi",
-                                    xbins=100, xmin=-3.15, xmax=3.15) ]
+
+        self.defineHistogram('Pt', type='TH1F', path='EXPERT', title="P_{T} reconstruction from #TrigMuonEFMSonlyHypo; P_{T} (MeV)",
+                             xbins=200, xmin=-100, xmax=100)
+        self.defineHistogram('Eta', type='TH1F', path='EXPERT', title="Eta reconstruction from #TrigMuonEFMSonlyHypo; Eta",
+                             xbins=100, xmin=-3.2, xmax=3.2)
+        self.defineHistogram('Phi', type='TH1F', path='EXPERT', title="Phi reconstruction from #TrigMuonEFMSonlyHypo; Phi",
+                             xbins=100, xmin=-3.15, xmax=3.15)
+        self.defineHistogram('Pt_sel', type='TH1F', path='EXPERT', title="Selected P_{T} reconstruction from #TrigMuonEFMSonlyHypo; P_{T} (MeV)",
+                             xbins=200, xmin=-100, xmax=100)
+        self.defineHistogram('Eta_sel', type='TH1F', path='EXPERT', title="Selected Eta reconstruction from #TrigMuonEFMSonlyHypo; Eta",
+                             xbins=100, xmin=-3.2, xmax=3.2)
+        self.defineHistogram('Phi_sel', type='TH1F', path='EXPERT', title="Selected Phi reconstruction from #TrigMuonEFMSonlyHypo; Phi",
+                             xbins=100, xmin=-3.15, xmax=3.15)
 
 class TrigMuonEFCombinerHypoMonitoring(GenericMonitoringTool):
 
     def __init__ (self, name="TrigMuonEFCombinerHypoMonitoring"):
         super(TrigMuonEFCombinerHypoMonitoring, self).__init__(name)
-        self.HistPath = name  
-
-        self.Histograms = [ defineHistogram('Pt', type='TH1F', path='EXPERT', title="P_{T} reconstruction from #TrigMuonEFCombinerHypo; P_{T} (MeV)",
-                                            xbins=200, xmin=-100, xmax=100) ]
-        self.Histograms += [ defineHistogram('Eta', type='TH1F', path='EXPERT', title="Eta reconstruction from #TrigMuonEFCombinerHypo; Eta",
-                                            xbins=100, xmin=-3.2, xmax=3.2) ]
-        self.Histograms += [ defineHistogram('Phi', type='TH1F', path='EXPERT', title="Phi reconstruction from #TrigMuonEFCombinerHypo; Phi",
-                                    xbins=100, xmin=-3.15, xmax=3.15) ]
-        self.Histograms += [ defineHistogram('Pt_sel', type='TH1F', path='EXPERT', title="Selected P_{T} reconstruction from #TrigMuonEFCombinerHypo; P_{T} (MeV)",
-                                            xbins=200, xmin=-100, xmax=100) ]
-        self.Histograms += [ defineHistogram('Eta_sel', type='TH1F', path='EXPERT', title="Selected Eta reconstruction from #TrigMuonEFCombinerHypo; Eta",
-                                            xbins=100, xmin=-3.2, xmax=3.2) ]
-        self.Histograms += [ defineHistogram('Phi_sel', type='TH1F', path='EXPERT', title="Selected Phi reconstruction from #TrigMuonEFCombinerHypo; Phi",
-                                    xbins=100, xmin=-3.15, xmax=3.15) ]
+
+        self.defineHistogram('Pt', type='TH1F', path='EXPERT', title="P_{T} reconstruction from #TrigMuonEFCombinerHypo; P_{T} (MeV)",
+                             xbins=200, xmin=-100, xmax=100)
+        self.defineHistogram('Eta', type='TH1F', path='EXPERT', title="Eta reconstruction from #TrigMuonEFCombinerHypo; Eta",
+                             xbins=100, xmin=-3.2, xmax=3.2)
+        self.defineHistogram('Phi', type='TH1F', path='EXPERT', title="Phi reconstruction from #TrigMuonEFCombinerHypo; Phi",
+                             xbins=100, xmin=-3.15, xmax=3.15)
+        self.defineHistogram('Pt_sel', type='TH1F', path='EXPERT', title="Selected P_{T} reconstruction from #TrigMuonEFCombinerHypo; P_{T} (MeV)",
+                             xbins=200, xmin=-100, xmax=100)
+        self.defineHistogram('Eta_sel', type='TH1F', path='EXPERT', title="Selected Eta reconstruction from #TrigMuonEFCombinerHypo; Eta",
+                             xbins=100, xmin=-3.2, xmax=3.2)
+        self.defineHistogram('Phi_sel', type='TH1F', path='EXPERT', title="Selected Phi reconstruction from #TrigMuonEFCombinerHypo; Phi",
+                             xbins=100, xmin=-3.15, xmax=3.15)