diff --git a/Reconstruction/egamma/egammaValidation/CMakeLists.txt b/Reconstruction/egamma/egammaValidation/CMakeLists.txt
index fdcff933b957ed4ae092d5390f4a16ee07950612..2fc3a576b1c2285430e1a5e12f47bbb91e36d1c7 100644
--- a/Reconstruction/egamma/egammaValidation/CMakeLists.txt
+++ b/Reconstruction/egamma/egammaValidation/CMakeLists.txt
@@ -6,12 +6,39 @@
 atlas_subdir( egammaValidation )
 
 # Declare the package's dependencies:
-atlas_depends_on_subdirs( PRIVATE
-                          TestPolicy )
+atlas_depends_on_subdirs( PUBLIC
+	GaudiKernel
+	AsgExternal/Asg_MCUtils
+	Control/AthToolSupport/AsgTools
+	Event/xAOD/xAODEgamma
+	Event/xAOD/xAODEventInfo
+	Event/xAOD/xAODTracking
+	PhysicsAnalysis/ElectronPhotonID/ElectronPhotonSelectorTools
+	PhysicsAnalysis/ElectronPhotonID/ElectronPhotonSelectorTools
+	PRIVATE
+	Control/AthenaBaseComps
+	TestPolicy 
+	Tracking/TrkValidation/TrkValHistUtils) 
 
-# Install files from the package:
-atlas_install_headers( egammaValidation )
+# Add a shared library
+atlas_add_library (egammaValidationLib 
+	egammaValidation/*.h  src/*.cxx 
+	PUBLIC_HEADERS egammaValidation
+	INCLUDE_DIRS
+	PRIVATE_INCLUDE_DIRS
+	LINK_LIBRARIES GaudiKernel AsgTools xAODEventInfo xAODEgamma xAODTracking ElectronPhotonSelectorToolsLib ElectronPhotonSelectorToolsLib AsgAnalysisInterfaces
+	PRIVATE_LINK_LIBRARIES AthenaBaseComps TrkValHistUtils)
+
+# add the Module/component library :
+atlas_add_component (egammmaValidation
+	src/*.cxx src/components/*.cxx 
+	INCLUDE_DIRS 
+	LINK_LIBRARIES egammaValidationLib GaudiKernel AthenaBaseComps AsgTools xAODEventInfo 
+	xAODEgamma xAODTracking ElectronPhotonSelectorToolsLib TrkValHistUtils ElectronPhotonSelectorToolsLib AsgAnalysisInterfaces)
+
+# Install JO/python files from the package:
 atlas_install_python_modules( python/*.py )
 atlas_install_joboptions( share/*.py )
-atlas_install_scripts( share/egammaRTTInit.py )
+# ART shell executable scripts :
+atlas_install_scripts( test/*.sh)
 
diff --git a/Reconstruction/egamma/egammaValidation/README.md b/Reconstruction/egamma/egammaValidation/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..e2ad827668ccb028117c0799d9529b32d4b6d834
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/README.md
@@ -0,0 +1,27 @@
+Git ART Monitoring Project
+=========================
+
+Run using the following:
+-----------------------------------------
+
+	art.py run athena/Reconstruction/egamma/egammaValidation/test outART
+
+Explanation & Output:
+----------------------------------------
+
+The command will run the reconstruction of two RAW files (electron and photon reconstruction) using the latest Athena build, and compare them to their respective previous versions to check if the changes work as intended.
+
+The outputs, that can be used to investigate any difference, are the following (before the extension each, file has an additional tag to distinguish which one refers to electrons and which one refers to photons [e.g. checkFile_ART_electron.txt or checkFile_ART_gamma.txt])
+
+- checkFile_ART.txt;
+- checkxAOD_ART.txt;
+- diffFile.txt (comparison of the checkFile_ART.txt with a reference one);
+- diffxAOD.txt (comparison of the checkxAOD_ART.txt with a reference one);
+- ART-monitoring.root (root file in which few plots are extrapolated from ART_Reco.pool.root).
+
+In order, then, to compare the nightlie with a Baseline plot, one must run:
+
+- python plotsMaker_gamma.py /eos/atlas/atlascerngroupdisk/data-art/grid-input/egammaValidation/Baseline_Files/rootFiles/Base-monitoring_gamma.root path_ARTRoot/name_ARTRoot_gamma
+- python plotsMaker_electron.py /eos/atlas/atlascerngroupdisk/data-art/grid-input/egammaValidation/Baseline_Files/rootFiles/Base-monitoring_electron.root path_ARTRoot/name_ARTRoot_electron
+
+The output will be saved in the directory the command is launched and it consists of a .pdf and .root version of the overlap of the "Baseline-monitoring.root" with the "ART-monitoring.root".
diff --git a/Reconstruction/egamma/egammaValidation/egammaValidation/EgammaMonitoring.h b/Reconstruction/egamma/egammaValidation/egammaValidation/EgammaMonitoring.h
new file mode 100644
index 0000000000000000000000000000000000000000..0e34b3a386c449d77a8a134c1f13034d6d134c2e
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/egammaValidation/EgammaMonitoring.h
@@ -0,0 +1,67 @@
+/*
+ * Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+ */
+
+#ifndef egammaValidation_EgammaMonitoring_H
+#define egammaValidation_EgammaMonitoring_H
+
+#include "GaudiKernel/ToolHandle.h"
+#include "GaudiKernel/Property.h"
+#include "GaudiKernel/ServiceHandle.h"
+#include "GaudiKernel/ToolHandle.h"
+#include "GaudiKernel/ITHistSvc.h"
+#include "AthenaBaseComps/AthAlgorithm.h"
+#include <AsgTools/AnaToolHandle.h>
+#include "ElectronPhotonSelectorTools/IAsgElectronLikelihoodTool.h"
+
+#include "TFile.h"
+#include "TH1.h"
+
+#include <string>
+
+using namespace std;
+
+class EgammaMonitoring : public AthAlgorithm
+{
+ public:
+
+  /// Tools and services ///
+  ITHistSvc*    rootHistSvc;
+
+  // Histos
+  // General Info
+  TH1D *evtNmb = nullptr; //!
+
+  // Electron
+  TH1D *pT_ElTrk_All  = nullptr; //!
+  TH1D *pT_ElTrk_LLH  = nullptr; //! 
+  TH1D *pT_ElTrk_MLH  = nullptr; //!
+  TH1D *pT_ElTrk_TLH  = nullptr; //!
+  TH1D *eta_ElTrk_All = nullptr; //!
+  TH1D *phi_ElTrk_All = nullptr; //!
+  
+  // Photon
+  TH1D *pT_Phot_All  = nullptr; //!
+  TH1D *eta_Phot_All = nullptr; //!
+  TH1D *phi_Phot_All = nullptr; //!
+  
+  EgammaMonitoring (const std::string& name, ISvcLocator* pSvcLocator);
+  
+  virtual StatusCode initialize ();
+  virtual StatusCode beginInputFile();
+  virtual StatusCode firstExecute();
+  virtual StatusCode execute ();
+  virtual StatusCode finalize ();
+
+ private:
+
+  /// Sample name ///
+  std::string m_sampleType;
+
+  asg::AnaToolHandle<IAsgElectronLikelihoodTool> m_LooseLH ; //!
+  asg::AnaToolHandle<IAsgElectronLikelihoodTool> m_MediumLH; //!
+  asg::AnaToolHandle<IAsgElectronLikelihoodTool> m_TightLH ; //!
+
+};
+
+#endif
diff --git a/Reconstruction/egamma/egammaValidation/python/__init__.py b/Reconstruction/egamma/egammaValidation/python/__init__.py
index fb371954d109441dbb60525991778e35647f9173..92bcd5e39f1d06d4586f01a872962e6c8c07f04a 100644
--- a/Reconstruction/egamma/egammaValidation/python/__init__.py
+++ b/Reconstruction/egamma/egammaValidation/python/__init__.py
@@ -1,3 +1 @@
-# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
-
-
+# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
diff --git a/Reconstruction/egamma/egammaValidation/python/egammaRTT_create.py b/Reconstruction/egamma/egammaValidation/python/egammaRTT_create.py
deleted file mode 100644
index 486ecd35c884f0d5b87a4cc1283ebb1d9b16a702..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/python/egammaRTT_create.py
+++ /dev/null
@@ -1,3027 +0,0 @@
-# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
-
-import user
-import ROOT
-
-def execute(g,electron = True, photon = True, expert = False) :
-    from ROOT import TObjArray
-
-    print "::: Creating File ::: "
-    if(expert) :
-        file = ROOT.TFile("expert.root","RECREATE")
-        pass
-    else :
-        file =  ROOT.TFile("shifter.root","RECREATE")
-        pass
-    
-    ## Default flags
-    flags = {}
-    
-    flags["Electron"] = electron               ## Electrons variables
-    flags["Photon"] = photon                   ## Photons variables
-    flags["Expert"] = expert                   ## expert/shifter mode
-    
-    treeg = g.egammaD3PD
-
-    
-    print "::: Histos definition ::: BEGIN"
-    
-    if flags["Electron"] :
-        histoEleAll = {}
-        histoEleAllLoose = {}
-        histoEleAllMedium = {}
-        histoEleAllTight = {}
-        
-        histoEleLoose = {}
-        histoEleLooseLoose = {}
-        histoEleLooseMedium = {}
-        histoEleLooseTight = {}
-        
-        histoEleMedium = {}
-        histoEleMediumLoose = {}
-        histoEleMediumMedium = {}
-        histoEleMediumTight = {}
-        
-        histoEleTight = {}
-        histoEleTightLoose = {}
-        histoEleTightMedium = {}
-        histoEleTightTight = {}
-        
-        histoEleAuthor1 = {}
-        histoEleAuthor1Loose = {}
-        histoEleAuthor1Medium = {}
-        histoEleAuthor1Tight = {}
-        
-        histoEleAuthor2 = {}
-        histoEleAuthor2Loose = {}
-        histoEleAuthor2Medium = {}
-        histoEleAuthor2Tight = {}
-        
-        histoEleAuthor3 = {}
-        histoEleAuthor3Loose = {}
-        histoEleAuthor3Medium = {}
-        histoEleAuthor3Tight = {}
-        
-        histoEleAuthor8 = {}
-        histoEleAuthor8Loose = {}
-        histoEleAuthor8Medium = {}
-        histoEleAuthor8Tight = {}
-
-        histoEleAll = defHistEle(0,histoEleAll)
-        histoEleAllLoose = defHistEle(1,histoEleAllLoose)
-        histoEleAllMedium = defHistEle(2,histoEleAllMedium)
-        histoEleAllTight = defHistEle(3,histoEleAllTight)
-        
-        histoEleLoose = defHistEle(10,histoEleLoose)
-        histoEleLooseLoose = defHistEle(11,histoEleLooseLoose)
-        histoEleLooseMedium = defHistEle(12,histoEleLooseMedium)
-        histoEleLooseTight = defHistEle(13,histoEleLooseTight)
-        
-        histoEleMedium = defHistEle(20,histoEleMedium)
-        histoEleMediumLoose = defHistEle(21,histoEleMediumLoose)
-        histoEleMediumMedium = defHistEle(22,histoEleMediumMedium)
-        histoEleMediumTight = defHistEle(23,histoEleMediumTight)
-        
-        histoEleTight = defHistEle(30,histoEleTight)
-        histoEleTightLoose = defHistEle(31,histoEleTightLoose)
-        histoEleTightMedium = defHistEle(32,histoEleTightMedium)
-        histoEleTightTight = defHistEle(33,histoEleTightTight)
-        
-        histoEleAuthor1 = defHistEle(40,histoEleAuthor1)
-        histoEleAuthor1Loose = defHistEle(41,histoEleAuthor1Loose)
-        histoEleAuthor1Medium = defHistEle(42,histoEleAuthor1Medium)
-        histoEleAuthor1Tight = defHistEle(43,histoEleAuthor1Tight)
-        
-        histoEleAuthor2 = defHistEle(50,histoEleAuthor2)
-        histoEleAuthor2Loose = defHistEle(51,histoEleAuthor2Loose)
-        histoEleAuthor2Medium = defHistEle(52,histoEleAuthor2Medium)
-        histoEleAuthor2Tight = defHistEle(53,histoEleAuthor2Tight)
-        
-        histoEleAuthor3 = defHistEle(60,histoEleAuthor3)
-        histoEleAuthor3Loose = defHistEle(61,histoEleAuthor3Loose)
-        histoEleAuthor3Medium = defHistEle(62,histoEleAuthor3Medium)
-        histoEleAuthor3Tight = defHistEle(63,histoEleAuthor3Tight)
-        
-        histoEleAuthor8 = defHistEle(70,histoEleAuthor8)
-        histoEleAuthor8Loose = defHistEle(71,histoEleAuthor8Loose)
-        histoEleAuthor8Medium = defHistEle(72,histoEleAuthor8Medium)
-        histoEleAuthor8Tight = defHistEle(73,histoEleAuthor8Tight)        
-
-        pass
-
-    if flags["Photon"] :
-        histoPhoAll = {}
-        histoPhoAllLoose = {}
-        histoPhoAllTight = {}
-        
-        histoPhoLoose = {}
-        histoPhoLooseLoose = {}
-        histoPhoLooseTight = {}
-        
-        histoPhoTight = {}
-        histoPhoTightLoose = {}
-        histoPhoTightTight = {}
-        
-        histoPhoAuthor4 = {}
-        histoPhoAuthor4Loose = {}
-        histoPhoAuthor4Tight = {}
-        
-        histoPhoAuthor16 = {}
-        histoPhoAuthor16Loose = {}
-        histoPhoAuthor16Tight = {}
-        
-        histoPhoIsConv = {}
-        histoPhoIsConvLoose = {}
-        histoPhoIsConvTight = {}
-        
-        histoPhoUnConv = {}
-        histoPhoUnConvLoose = {}
-        histoPhoUnConvTight = {}
-        
-        histoPhoAll = defHistPho(0,histoPhoAll)
-        histoPhoAllLoose = defHistPho(1,histoPhoAllLoose)
-        histoPhoAllTight = defHistPho(2,histoPhoAllTight)
-        
-        histoPhoLoose = defHistPho(10,histoPhoLoose)
-        histoPhoLooseLoose = defHistPho(11,histoPhoLooseLoose)
-        histoPhoLooseTight = defHistPho(12,histoPhoLooseTight)
-
-        hitoPhoTight = defHistPho(20,histoPhoTight)
-        histoPhoTightLoose = defHistPho(21,histoPhoTightLoose)
-        histoPhoTightTight = defHistPho(22,histoPhoTightTight)
-
-        histoPhoAuthor4 = defHistPho(30,histoPhoAuthor4)
-        histoPhoAuthor4Loose = defHistPho(31,histoPhoAuthor4Loose)
-        histoPhoAuthor4Tight = defHistPho(32,histoPhoAuthor4Tight)
-
-        histoPhoAuthor16 = defHistPho(40,histoPhoAuthor16)
-        histoPhoAuthor16Loose = defHistPho(41,histoPhoAuthor16Loose)
-        histoPhoAuthor16Tight = defHistPho(42,histoPhoAuthor16Tight)
-
-        histoPhoIsConv = defHistPho(50,histoPhoIsConv)
-        histoPhoIsConvLoose = defHistPho(51,histoPhoIsConvLoose)
-        histoPhoIsConvTight = defHistPho(52,histoPhoIsConvTight)
-
-        histoPhoUncov = defHistPho(60,histoPhoUnConv)
-        histoPhoUnConvLoose = defHistPho(61,histoPhoUnConvLoose)
-        histoPhoUnConvTight = defHistPho(62,histoPhoUnConvTight)
-
-        pass
-
-    if flags["Expert"] :
-        
-        histoExpEle = {}
-        histoExpEleIden = {} # identification variables
-        histoExpEleKin = {} # kinematics variables
-        histoExpEleConv = {} # conversion0 variables
-        histoExpEleEM = {} # EM variables
-        histoExpEleIso = {} # isolation variables
-        histoExpEleDis = {} # discriminants variables
-        histoExpElePoint = {} # pointing variables
-        histoExpEleClKin = {} # cluster kinematics
-        histoExpEleL1 = {} # L1 variables
-        histoExpEleEF = {} # EF variables
-        histoExpEleL2 = {} # L2 variables
-        histoExpEleJet = {} # jet variables
-        histoExpEleTrk = {} # track variables
-        histoExpEleRaw = {} # rawcl variables
-        histoExpEleVtx = {} # vertex variables
-        histoExpEleBrem = {} # Brem variables
-        histoExpEleMC = {} # MC variables
-        histoExpEleTrkMatch = {} # track match variables
-        histoExpEleEMTrkFit = {} # EM track fit variables
-        histoExpEleForward = {} # forward variables
-
-        histoExpEle = defHistExpEle(0,histoExpEle)
-        histoExpEleIden = defHistExpEle(1,histoExpEleIden)
-        histoExpEleKin = defHistExpEle(2,histoExpEleKin)
-        histoExpEleConv = defHistExpEle(3,histoExpEleConv)
-        histoExpEleEM = defHistExpEle(4,histoExpEleEM)
-        histoExpEleIso = defHistExpEle(5,histoExpEleIso)
-        histoExpEleDis = defHistExpEle(6,histoExpEleDis)
-        histoExpElePoint = defHistExpEle(7,histoExpElePoint)
-        histoExpEleClKin = defHistExpEle(8,histoExpEleClKin)
-        histoExpEleL1 = defHistExpEle(9,histoExpEleL1)
-        histoExpEleL2 = defHistExpEle(10,histoExpEleL2)
-        histoExpEleEF = defHistExpEle(11,histoExpEleEF)
-        histoExpEleJet = defHistExpEle(12,histoExpEleJet)
-        histoExpEleTrk = defHistExpEle(13,histoExpEleTrk)
-        histoExpEleRaw = defHistExpEle(14,histoExpEleRaw)
-        histoExpEleVtx = defHistExpEle(15,histoExpEleVtx)
-        histoExpEleBrem = defHistExpEle(16,histoExpEleBrem)
-        histoExpEleMC = defHistExpEle(17,histoExpEleMC)
-        histoExpEleTrkMatch = defHistExpEle(18,histoExpEleTrkMatch)
-        histoExpEleEMTrkFit = defHistExpEle(19,histoExpEleEMTrkFit)
-        histoExpEleForward = defHistExpEle(20,histoExpEleForward)
-        
-        histoExpPho = {}
-        histoExpPhoIden = {} # identification variables
-        histoExpPhoKin = {} # kinematics variables
-        histoExpPhoConv = {} # conversion0 variables
-        histoExpPhoEM = {} # EM variables
-        histoExpPhoIso = {} # isolation variables
-        histoExpPhoDis = {} # discriminants variables
-        histoExpPhoPoint = {} # pointing variables
-        histoExpPhoClKin = {} # cluster kinematics
-        histoExpPhoL1 = {} # L1 variables
-        histoExpPhoL2 = {} # L2 variables
-        histoExpPhoEF = {} # EF variables
-        histoExpPhoJet = {} # jet variables
-        histoExpPhoTrk = {} # track variables
-        histoExpPhoRaw = {} # rawcl variables
-        histoExpPhoTopo = {} # Topo variables
-        histoExpPhoMC = {} # MC variables
-
-        histoExpPho = defHistExpPho(0,histoExpPho)
-        histoExpPhoIden = defHistExpPho(1,histoExpPhoIden)
-        histoExpPhoKin = defHistExpPho(2,histoExpPhoKin)
-        histoExpPhoConv = defHistExpPho(3,histoExpPhoConv)
-        histoExpPhoEM = defHistExpPho(4,histoExpPhoEM)
-        histoExpPhoIso = defHistExpPho(5,histoExpPhoIso)
-        histoExpPhoDis = defHistExpPho(6,histoExpPhoDis)
-        histoExpPhoPoint = defHistExpPho(7,histoExpPhoPoint)
-        histoExpPhoClKin = defHistExpPho(8,histoExpPhoClKin)
-        histoExpPhoL1 = defHistExpPho(9,histoExpPhoL1)
-        histoExpPhoL2 = defHistExpPho(10,histoExpPhoL2)
-        histoExpPhoEF = defHistExpPho(11,histoExpPhoEF)
-        histoExpPhoJet = defHistExpPho(12,histoExpPhoJet)
-        histoExpPhoTrk = defHistExpPho(13,histoExpPhoTrk)
-        histoExpPhoRaw = defHistExpPho(14,histoExpPhoRaw)
-        histoExpPhoTopo = defHistExpPho(15,histoExpPhoTopo)
-        histoExpPhoMC = defHistExpPho(16,histoExpPhoMC)
-
-
-        histoExpMu = {}
-        histoExpMuKin = {} # kinematics varaibles
-        histoExpMuAlgo = {} # Algorithms
-        histoExpMuEnerCalo = {} # Energy loss in the Calo
-        histoExpMuHits = {} # Muon Spectrometer Hits Summary
-        histoExpMuIso = {} # Isolation
-        histoExpMuTrkPat = {} # Track pattern
-        histoExpMuTrk = {} # Track parameters
-        histoExpMuQ = {} # Track quality
-        histoExpMuL1 = {} # L1 variables
-        histoExpMuL2 = {} # L2 variables
-        histoExpMuEF = {} # EF variables
-        histoExpMuMC = {} # MC variables
-
-        histoExpMu = defHistExpMu(0,histoExpMu)
-        histoExpMuKin = defHistExpMu(1,histoExpMuKin)
-        histoExpMuAlgo = defHistExpMu(2,histoExpMuAlgo)
-        histoExpMuEnerCalo = defHistExpMu(3,histoExpMuEnerCalo)
-        histoExpMuHits = defHistExpMu(4,histoExpMuHits)
-        histoExpMuIso = defHistExpMu(5,histoExpMuIso)
-        histoExpMuTrkPat = defHistExpMu(6,histoExpMuTrkPat)
-        histoExpMuTrk = defHistExpMu(7,histoExpMuTrk)
-        histoExpMuQ = defHistExpMu(8,histoExpMuQ)
-        histoExpMuL1 = defHistExpMu(9,histoExpMuL1)
-        histoExpMuL2 = defHistExpMu(10,histoExpMuL2)
-        histoExpMuEF = defHistExpMu(11,histoExpMuEF)
-        histoExpMuMC = defHistExpMu(12,histoExpMuMC)
-
-
-        histoExpMC = {} # D3PD McEvent
-        histoExpGlobal = {} # D3PD GlobalEvent
-        histoExpJet = {} # D3PD JetContent
-        histoExpMET = {} # D3PD MetContent
-        histoExpMb = {} # D3PD Minimum Bias Content
-        histoExpTrig = {} # D3PD Trigger Bit
-
-        histoExpMC = defHistExpOther(0,histoExpMC)
-        histoExpGlobal = defHistExpOther(1,histoExpGlobal)
-        histoExpJet = defHistExpOther(2,histoExpJet)
-        histoExpMET = defHistExpOther(3,histoExpMET)
-        histoExpMb = defHistExpOther(4,histoExpMb)
-        histoExpTrig = defHistExpOther(5,histoExpTrig)
-
-
-        
-
-        pass
-    
-    print "::: Histos definition ::: END"
-
-
-    
-    print "::: Opening the branches ::: BEGIN"
-    for i in xrange(treeg.GetEntriesFast()) :
-        if treeg.GetEntry(i) <= 0 :
-            print "problem with the entrie", i
-            break
-        if flags["Electron"] : branchEle(treeg,histoEleAll,histoEleAllLoose,histoEleAllMedium,histoEleAllTight,histoEleLoose,histoEleLooseLoose,histoEleLooseMedium,histoEleLooseTight,histoEleMedium,histoEleMediumLoose,histoEleMediumMedium,histoEleMediumTight,histoEleTight,histoEleTightLoose,histoEleTightMedium,histoEleTightTight,histoEleAuthor1,histoEleAuthor1Loose,histoEleAuthor1Medium,histoEleAuthor1Tight,histoEleAuthor2,histoEleAuthor2Loose,histoEleAuthor2Medium,histoEleAuthor2Tight,histoEleAuthor3,histoEleAuthor3Loose,histoEleAuthor3Medium,histoEleAuthor3Tight,histoEleAuthor8,histoEleAuthor8Loose,histoEleAuthor8Medium,histoEleAuthor8Tight)
-        if flags["Photon"] : branchPho(treeg,histoPhoAll,histoPhoAllLoose,histoPhoAllTight,histoPhoLoose,histoPhoLooseLoose,histoPhoLooseTight,histoPhoTight,histoPhoTightLoose,histoPhoTightTight,histoPhoAuthor4,histoPhoAuthor4Loose,histoPhoAuthor4Tight,histoPhoAuthor16,histoPhoAuthor16Loose,histoPhoAuthor16Tight,histoPhoIsConv,histoPhoIsConvLoose,histoPhoIsConvTight,histoPhoUnConv,histoPhoUnConvLoose,histoPhoUnConvTight)
-        if flags["Expert"] :
-            branchExpert(treeg)
-            branchExpEle(treeg,histoExpEleIden,histoExpEleKin,histoExpEleConv,histoExpEleEM)
-            pass
-        pass
-    print "::: Opening the branches ::: END"
-    
-    
-    print "::: Writing histos ::: BEGIN"
-    if flags["Electron"] : WriteEle(file,histoEleAll,histoEleAllLoose,histoEleAllMedium,histoEleAllTight,histoEleLoose,histoEleLooseLoose,histoEleLooseMedium,histoEleLooseTight,histoEleMedium,histoEleMediumLoose,histoEleMediumMedium,histoEleMediumTight,histoEleTight,histoEleTightLoose,histoEleTightMedium,histoEleTightTight,histoEleAuthor1,histoEleAuthor1Loose,histoEleAuthor1Medium,histoEleAuthor1Tight,histoEleAuthor2,histoEleAuthor2Loose,histoEleAuthor2Medium,histoEleAuthor2Tight,histoEleAuthor3,histoEleAuthor3Loose,histoEleAuthor3Medium,histoEleAuthor3Tight,histoEleAuthor8,histoEleAuthor8Loose,histoEleAuthor8Medium,histoEleAuthor8Tight)
-    if flags["Photon"] : WritePho(file,histoPhoAll,histoPhoAllLoose,histoPhoAllTight,histoPhoLoose,histoPhoLooseLoose,histoPhoLooseTight,histoPhoTight,histoPhoTightLoose,histoPhoTightTight,histoPhoAuthor4,histoPhoAuthor4Loose,histoPhoAuthor4Tight,histoPhoAuthor16,histoPhoAuthor16Loose,histoPhoAuthor16Tight,histoPhoIsConv,histoPhoIsConvLoose,histoPhoIsConvTight,histoPhoUnConv,histoPhoUnConvLoose,histoPhoUnConvTight)
-    if flags["Expert"] :
-        Exp = WriteExpert(file)
-        WriteExpEle(file,Exp, histoExpEleIden, histoExpEleKin, histoExpEleConv, histoExpEleEM)
-        WriteExpPho(file,Exp)
-        WriteExpMu(file,Exp)
-        WriteExpOther(file,Exp)
-        pass
-    print "::: Writing histos ::: END"
-    
-    file.Close()
-    print "::: File closed ::: "
-    
-    return True
-
-
-
-#######################
-#######################
-###                 ###
-###   fonctions     ###
-###                 ###
-#######################
-#######################
-
-
-###################
-## Def of histos ##
-###################
-
-def defHistEle(n,histos) :
-
-    if n == 0 : ## histos for TDirectory Electron -> All
-        el_charge_h1 = ROOT.TH1F("el_charge_h1","el_charge",3,-1.5,1.5)
-        histos["el_charge"] = el_charge_h1
-        el_author_h1 = ROOT.TH1F("el_author_h1","el_author",10,0.,10.)
-        histos["el_author"] = el_author_h1
-        el_n_h1 = ROOT.TH1F("el_n_h1","el_n",20,0.,20.)
-        histos["el_n"] = el_n_h1
-        el_eta_h1 = ROOT.TH1F("el_eta_h1","el_eta",100,-4.5,4.5)
-        histos["el_eta"] = el_eta_h1
-        el_phi_h1 = ROOT.TH1F("el_phi_h1","el_phi",100,-4.5,4.5)
-        histos["el_phi"] = el_phi_h1
-        el_pt_h1 = ROOT.TH1F("el_pt_h1","el_pt",100,0.,100000.)
-        histos["el_pt"] = el_pt_h1
-        el_loose_h1 = ROOT.TH1F("el_loose_h1","el_loose",2,0.,2.)
-        histos["el_loose"] = el_loose_h1
-        el_medium_h1 = ROOT.TH1F("el_medium_h1","el_medium",2,0.,2.)
-        histos["el_medium"] = el_medium_h1
-        el_mediumIso_h1 = ROOT.TH1F("el_mediumIso_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso"] = el_mediumIso_h1
-        el_tight_h1 = ROOT.TH1F("el_tight_h1","el_tight",2,0.,2.)
-        histos["el_tight"] = el_tight_h1
-        el_tightIso_h1 = ROOT.TH1F("el_tightIso_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso"] = el_tightIso_h1
-        pass
-
-    elif n == 1 : ## histos for TDirectory Electron -> All -> LooseVariables
-        el_weta2_h1 = ROOT.TH1F("el_weta2_h1","el_weta2",100,-0.05,0.05)
-        histos["el_weta2"] = el_weta2_h1
-        el_E237_h1 = ROOT.TH1F("el_E237_h1","el_E237",100,0.,200000.)
-        histos["el_E237"] = el_E237_h1
-        el_E277_h1 = ROOT.TH1F("el_E277_h1","el_E277",100,0.,200000.)
-        histos["el_E277"] = el_E277_h1
-        el_Ethad_h1 = ROOT.TH1F("el_Ethad_h1","el_Ethad",100,0.,10000.)
-        histos["el_Ethad"] = el_Ethad_h1
-        el_Ethad1_h1 = ROOT.TH1F("el_Ethad1_h1","el_Ethad1",100,0.,10000.)
-        histos["el_Ethad1"] = el_Ethad1_h1
-        pass
-
-    elif n == 2 : ## histos for TDirectory Electron -> All -> MediumVariables
-        el_f1_h1 = ROOT.TH1F("el_f1_h1","el_f1",50,0.,1.)
-        histos["el_f1"] = el_f1_h1
-        el_wstot_h1 = ROOT.TH1F("el_wstot_h1","el_wstot",100,0.,10.)
-        histos["el_wstot"] = el_wstot_h1
-        el_emaxs1_h1 = ROOT.TH1F("el_emaxs1_h1","el_emaxs1",100,-5000.,50000.)
-        histos["el_emaxs1"] = el_emaxs1_h1
-        el_nPixHits_h1 = ROOT.TH1F("el_nPixHits_h1","el_nPixHits",10,0.,10.)
-        histos["el_nPixHits"] = el_nPixHits_h1
-        el_nSCTHits_h1 = ROOT.TH1F("el_nSCTHits_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits"] = el_nSCTHits_h1
-        el_nSiHits_h1 = ROOT.TH1F("el_nSiHits_h1","el_nSiHits",20,0.,20.)
-        histos["el_nSiHits"] = el_nSiHits_h1
-        pass
-
-    elif n == 3 : ## histos for TDirectory Electron -> All -> TightVariables       
-        el_nBLHits_h1 = ROOT.TH1F("el_nBLHits_h1","el_nBLHits",5,0.,5.)
-        histos["el_nBLHits"] = el_nBLHits_h1
-        el_expectHitInBLayer_h1 = ROOT.TH1F("el_expectHitInBLayer_h1","el_expectHitInBLayer",100,-1100.,100.)
-        histos["el_expectHitInBLayer"] = el_expectHitInBLayer_h1
-        el_cl_E_h1 = ROOT.TH1F("el_cl_E_h1","el_cl_E",100,0.,250000.)
-        histos["el_cl_E"] = el_cl_E_h1
-        el_trackpt_h1 = ROOT.TH1F("el_trackpt_h1","el_trackpt",100,0.,10000.)
-        histos["el_trackpt"] = el_trackpt_h1
-        el_nTRTHits_h1 = ROOT.TH1F("el_nTRTHits_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits"] = el_nTRTHits_h1
-        el_TRTHighTHitsRatio_h1 = ROOT.TH1F("el_TRTHighTHitsRatio_h1","el_TRTHighTHitsRatio",100,0.,1.)
-        histos["el_TRTHighTHitsRatio"] = el_TRTHighTHitsRatio_h1
-        pass
-    
-    elif n == 10 : ## histos for TDirectory Electron -> LooseElectrons
-        el_charge_ifLoose_h1 = ROOT.TH1F("el_charge_ifLoose_h1","el_charge",3,-1.5,1.5)
-        histos["el_charge_ifLoose"] = el_charge_ifLoose_h1
-        el_author_ifLoose_h1 = ROOT.TH1F("el_author_ifLoose_h1","el_author",10,0.,10.)
-        histos["el_author_ifLoose"] = el_author_ifLoose_h1
-        el_n_ifLoose_h1 = ROOT.TH1F("el_n_ifLoose_h1","el_n",20,0.,20.)
-        histos["el_n_ifLoose"] = el_n_ifLoose_h1
-        el_eta_ifLoose_h1 = ROOT.TH1F("el_eta_ifLoose_h1","el_eta",100,-4.5,4.5)
-        histos["el_eta_ifLoose"] = el_eta_ifLoose_h1
-        el_phi_ifLoose_h1 = ROOT.TH1F("el_phi_ifLoose_h1","el_phi",100,-4.5,4.5)
-        histos["el_phi_ifLoose"] = el_phi_ifLoose_h1
-        el_pt_ifLoose_h1 = ROOT.TH1F("el_pt_ifLoose_h1","el_pt",100,0.,100000.)
-        histos["el_pt_ifLoose"] = el_pt_ifLoose_h1
-        el_loose_ifLoose_h1 = ROOT.TH1F("el_loose_ifLoose_h1","el_loose",10,0.,2.5)
-        histos["el_loose_ifLoose"] = el_loose_ifLoose_h1
-        el_medium_ifLoose_h1 = ROOT.TH1F("el_medium_ifLoose_h1","el_medium",2,0.,2.)
-        histos["el_medium_ifLoose"] = el_medium_ifLoose_h1
-        el_mediumIso_ifLoose_h1 = ROOT.TH1F("el_mediumIso_ifLoose_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso_ifLoose"] = el_mediumIso_ifLoose_h1
-        el_tight_ifLoose_h1 = ROOT.TH1F("el_tight_ifLoose_h1","el_tight",2,0.,2.)
-        histos["el_tight_ifLoose"] = el_tight_ifLoose_h1
-        el_tightIso_ifLoose_h1 = ROOT.TH1F("el_tightIso_ifLoose_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso_ifLoose"] = el_tightIso_ifLoose_h1
-        pass
-
-    elif n == 11 : ## histos for TDirectory Electron -> LooseElectrons -> LooseVariables
-        el_weta2_isLoose_h1 = ROOT.TH1F("el_weta2_isLoose_h1","el_weta2",100,-0.05,0.05)
-        histos["el_weta2_ifLoose"] = el_weta2_isLoose_h1
-        el_E237_isLoose_h1 = ROOT.TH1F("el_E237_isLoose_h1","el_E237",100,0.,200000.)
-        histos["el_E237_ifLoose"] = el_E237_isLoose_h1
-        el_E277_isLoose_h1 = ROOT.TH1F("el_E277_isLoose_h1","el_E277",100,0.,200000.)
-        histos["el_E277_ifLoose"] = el_E277_isLoose_h1
-        el_Ethad_isLoose_h1 = ROOT.TH1F("el_Ethad_isLoose_h1","el_Ethad",100,0.,10000.)
-        histos["el_Ethad_ifLoose"] = el_Ethad_isLoose_h1
-        el_Ethad1_isLoose_h1 = ROOT.TH1F("el_Ethad1_isLoose_h1","el_Ethad1",100,0.,10000.)
-        histos["el_Ethad1_ifLoose"] = el_Ethad1_isLoose_h1
-        pass
-
-    elif n == 12 : ## histos for TDirectory Electron -> LooseElectrons -> MediumVariables
-        el_f1_isLoose_h1 = ROOT.TH1F("el_f1_isLoose_h1","el_f1",50,0.,1.)
-        histos["el_f1_ifLoose"] = el_f1_isLoose_h1
-        el_wstot_isLoose_h1 = ROOT.TH1F("el_wstot_isLoose_h1","el_wstot",100,0.,10.)
-        histos["el_wstot_ifLoose"] = el_wstot_isLoose_h1
-        el_emaxs1_isLoose_h1 = ROOT.TH1F("el_emaxs1_isLoose_h1","el_emaxs1",100,-5000.,50000.)
-        histos["el_emaxs1_ifLoose"] = el_emaxs1_isLoose_h1
-        el_nPixHits_isLoose_h1 = ROOT.TH1F("el_nPixHits_isLoose_h1","el_nPixHits",10,0.,10.)
-        histos["el_nPixHits_ifLoose"] = el_nPixHits_isLoose_h1
-        el_nSCTHits_isLoose_h1 = ROOT.TH1F("el_nSCTHits_isLoose_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits_ifLoose"] = el_nSCTHits_isLoose_h1
-        el_nSiHits_isLoose_h1 = ROOT.TH1F("el_nSiHits_isLoose_h1","el_nSiHits",20,0.,20.)
-        histos["el_nSiHits_ifLoose"] = el_nSiHits_isLoose_h1
-        pass
-
-    elif n == 13 : ## histos for TDirectory Electron -> LooseElectrons -> TightVariables       
-        el_nBLHits_isLoose_h1 = ROOT.TH1F("el_nBLHits_isLoose_h1","el_nBLHits",5,0.,5.)
-        histos["el_nBLHits_ifLoose"] = el_nBLHits_isLoose_h1
-        el_expectHitInBLayer_isLoose_h1 = ROOT.TH1F("el_expectHitInBLayer_isLoose_h1","el_expectHitInBLayer",100,-1100.,100.)
-        histos["el_expectHitInBLayer_ifLoose"] = el_expectHitInBLayer_isLoose_h1
-        el_cl_E_isLoose_h1 = ROOT.TH1F("el_cl_E_isLoose_h1","el_cl_E",100,0.,250000.)
-        histos["el_cl_E_ifLoose"] = el_cl_E_isLoose_h1
-        el_trackpt_isLoose_h1 = ROOT.TH1F("el_trackpt_isLoose_h1","el_trackpt",100,0.,10000.)
-        histos["el_trackpt_ifLoose"] = el_trackpt_isLoose_h1
-        el_nTRTHits_isLoose_h1 = ROOT.TH1F("el_nTRTHits_isLoose_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits_ifLoose"] = el_nTRTHits_isLoose_h1
-        el_TRTHighTHitsRatio_isLoose_h1 = ROOT.TH1F("el_TRTHighTHitsRatio_isLoose_h1","el_TRTHighTHitsRatio",100,0.,1.)
-        histos["el_TRTHighTHitsRatio_ifLoose"] = el_TRTHighTHitsRatio_isLoose_h1
-        pass
-
-    
-    elif n == 20 : ## histos for TDirectory Electron -> MediumElectrons
-        el_charge_ifMedium_h1 = ROOT.TH1F("el_charge_ifMedium_h1","el_charge",3,-1.5,1.5)
-        histos["el_charge_ifMedium"] = el_charge_ifMedium_h1
-        el_author_ifMedium_h1 = ROOT.TH1F("el_author_ifMedium_h1","el_author",10,0.,10.)
-        histos["el_author_ifMedium"] = el_author_ifMedium_h1
-        el_n_ifMedium_h1 = ROOT.TH1F("el_n_ifMedium_h1","el_n",20,0.,20.)
-        histos["el_n_ifMedium"] = el_n_ifMedium_h1
-        el_eta_ifMedium_h1 = ROOT.TH1F("el_eta_ifMedium_h1","el_eta",100,-4.5,4.5)
-        histos["el_eta_ifMedium"] = el_eta_ifMedium_h1
-        el_phi_ifMedium_h1 = ROOT.TH1F("el_phi_ifMedium_h1","el_phi",100,-4.5,4.5)
-        histos["el_phi_ifMedium"] = el_phi_ifMedium_h1
-        el_pt_ifMedium_h1 = ROOT.TH1F("el_pt_ifMedium_h1","el_pt",100,0.,100000.)
-        histos["el_pt_ifMedium"] = el_pt_ifMedium_h1
-        el_loose_ifMedium_h1 = ROOT.TH1F("el_loose_ifMedium_h1","el_medium",2,0.,2.)
-        histos["el_loose_ifMedium"] = el_loose_ifMedium_h1
-        el_medium_ifMedium_h1 = ROOT.TH1F("el_medium_ifMedium_h1","el_medium",2,0.,2.)
-        histos["el_medium_ifMedium"] = el_medium_ifMedium_h1
-        el_mediumIso_ifMedium_h1 = ROOT.TH1F("el_mediumIso_ifMedium_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso_ifMedium"] = el_mediumIso_ifMedium_h1
-        el_tight_ifMedium_h1 = ROOT.TH1F("el_tight_ifMedium_h1","el_tight",2,0.,2.)
-        histos["el_tight_ifMedium"] = el_tight_ifMedium_h1
-        el_tightIso_ifMedium_h1 = ROOT.TH1F("el_tightIso_ifMedium_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso_ifMedium"] = el_tightIso_ifMedium_h1
-        pass
-
-    elif n == 21 : ## histos for TDirectory Electron -> MediumElectrons -> MediumVariables
-        el_weta2_isMedium_h1 = ROOT.TH1F("el_weta2_isMedium_h1","el_weta2",100,-0.05,0.05)
-        histos["el_weta2_ifMedium"] = el_weta2_isMedium_h1
-        el_E237_isMedium_h1 = ROOT.TH1F("el_E237_isMedium_h1","el_E237",100,0.,200000.)
-        histos["el_E237_ifMedium"] = el_E237_isMedium_h1
-        el_E277_isMedium_h1 = ROOT.TH1F("el_E277_isMedium_h1","el_E277",100,0.,200000.)
-        histos["el_E277_ifMedium"] = el_E277_isMedium_h1
-        el_Ethad_isMedium_h1 = ROOT.TH1F("el_Ethad_isMedium_h1","el_Ethad",100,0.,10000.)
-        histos["el_Ethad_ifMedium"] = el_Ethad_isMedium_h1
-        el_Ethad1_isMedium_h1 = ROOT.TH1F("el_Ethad1_isMedium_h1","el_Ethad1",100,0.,10000.)
-        histos["el_Ethad1_ifMedium"] = el_Ethad1_isMedium_h1
-        pass
-
-    elif n == 22 : ## histos for TDirectory Electron -> MediumElectrons -> MediumVariables
-        el_f1_isMedium_h1 = ROOT.TH1F("el_f1_isMedium_h1","el_f1",50,0.,1.)
-        histos["el_f1_ifMedium"] = el_f1_isMedium_h1
-        el_wstot_isMedium_h1 = ROOT.TH1F("el_wstot_isMedium_h1","el_wstot",100,0.,10.)
-        histos["el_wstot_ifMedium"] = el_wstot_isMedium_h1
-        el_emaxs1_isMedium_h1 = ROOT.TH1F("el_emaxs1_isMedium_h1","el_emaxs1",100,-5000.,50000.)
-        histos["el_emaxs1_ifMedium"] = el_emaxs1_isMedium_h1
-        el_nPixHits_isMedium_h1 = ROOT.TH1F("el_nPixHits_isMedium_h1","el_nPixHits",10,0.,10.)
-        histos["el_nPixHits_ifMedium"] = el_nPixHits_isMedium_h1
-        el_nSCTHits_isMedium_h1 = ROOT.TH1F("el_nSCTHits_isMedium_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits_ifMedium"] = el_nSCTHits_isMedium_h1
-        el_nSiHits_isMedium_h1 = ROOT.TH1F("el_nSiHits_isMedium_h1","el_nSiHits",20,0.,20.)
-        histos["el_nSiHits_ifMedium"] = el_nSiHits_isMedium_h1
-        pass
-
-    elif n == 23 : ## histos for TDirectory Electron -> MediumElectrons -> TightVariables       
-        el_nBLHits_isMedium_h1 = ROOT.TH1F("el_nBLHits_isMedium_h1","el_nBLHits",5,0.,5.)
-        histos["el_nBLHits_ifMedium"] = el_nBLHits_isMedium_h1
-        el_expectHitInBLayer_isMedium_h1 = ROOT.TH1F("el_expectHitInBLayer_isMedium_h1","el_expectHitInBLayer",100,-1100.,100.)
-        histos["el_expectHitInBLayer_ifMedium"] = el_expectHitInBLayer_isMedium_h1
-        el_cl_E_isMedium_h1 = ROOT.TH1F("el_cl_E_isMedium_h1","el_cl_E",100,0.,250000.)
-        histos["el_cl_E_ifMedium"] = el_cl_E_isMedium_h1
-        el_trackpt_isMedium_h1 = ROOT.TH1F("el_trackpt_isMedium_h1","el_trackpt",100,0.,10000.)
-        histos["el_trackpt_ifMedium"] = el_trackpt_isMedium_h1
-        el_nTRTHits_isMedium_h1 = ROOT.TH1F("el_nTRTHits_isMedium_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits_ifMedium"] = el_nTRTHits_isMedium_h1
-        el_TRTHighTHitsRatio_isMedium_h1 = ROOT.TH1F("el_TRTHighTHitsRatio_isMedium_h1","el_TRTHighTHitsRatio",100,0.,1.)
-        histos["el_TRTHighTHitsRatio_ifMedium"] = el_TRTHighTHitsRatio_isMedium_h1
-        pass
-    
-    
-    elif n == 30 : ## histos for TDirectory Electron -> TightElectrons
-        el_charge_ifTight_h1 = ROOT.TH1F("el_charge_ifTight_h1","el_charge",3,-1.5,1.5)
-        histos["el_charge_ifTight"] = el_charge_ifTight_h1
-        el_author_ifTight_h1 = ROOT.TH1F("el_author_ifTight_h1","el_author",10,0.,10.)
-        histos["el_author_ifTight"] = el_author_ifTight_h1
-        el_n_ifTight_h1 = ROOT.TH1F("el_n_ifTight_h1","el_n",20,0.,20.)
-        histos["el_n_ifTight"] = el_n_ifTight_h1
-        el_eta_ifTight_h1 = ROOT.TH1F("el_eta_ifTight_h1","el_eta",100,-4.5,4.5)
-        histos["el_eta_ifTight"] = el_eta_ifTight_h1
-        el_phi_ifTight_h1 = ROOT.TH1F("el_phi_ifTight_h1","el_phi",100,-4.5,4.5)
-        histos["el_phi_ifTight"] = el_phi_ifTight_h1
-        el_pt_ifTight_h1 = ROOT.TH1F("el_pt_ifTight_h1","el_pt",100,0.,100000.)
-        histos["el_pt_ifTight"] = el_pt_ifTight_h1
-        el_loose_ifTight_h1 = ROOT.TH1F("el_loose_ifTight_h1","el_tight",2,0.,2.)
-        histos["el_loose_ifTight"] = el_loose_ifTight_h1
-        el_medium_ifTight_h1 = ROOT.TH1F("el_medium_ifTight_h1","el_medium",2,0.,2.)
-        histos["el_medium_ifTight"] = el_medium_ifTight_h1
-        el_mediumIso_ifTight_h1 = ROOT.TH1F("el_mediumIso_ifTight_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso_ifTight"] = el_mediumIso_ifTight_h1
-        el_tight_ifTight_h1 = ROOT.TH1F("el_tight_ifTight_h1","el_tight",2,0.,2.)
-        histos["el_tight_ifTight"] = el_tight_ifTight_h1
-        el_tightIso_ifTight_h1 = ROOT.TH1F("el_tightIso_ifTight_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso_ifTight"] = el_tightIso_ifTight_h1
-        pass
-
-    elif n == 31 : ## histos for TDirectory Electron -> TightElectrons -> TightVariables
-        el_weta2_isTight_h1 = ROOT.TH1F("el_weta2_isTight_h1","el_weta2",100,-0.05,0.05)
-        histos["el_weta2_ifTight"] = el_weta2_isTight_h1
-        el_E237_isTight_h1 = ROOT.TH1F("el_E237_isTight_h1","el_E237",100,0.,200000.)
-        histos["el_E237_ifTight"] = el_E237_isTight_h1
-        el_E277_isTight_h1 = ROOT.TH1F("el_E277_isTight_h1","el_E277",100,0.,200000.)
-        histos["el_E277_ifTight"] = el_E277_isTight_h1
-        el_Ethad_isTight_h1 = ROOT.TH1F("el_Ethad_isTight_h1","el_Ethad",100,0.,10000.)
-        histos["el_Ethad_ifTight"] = el_Ethad_isTight_h1
-        el_Ethad1_isTight_h1 = ROOT.TH1F("el_Ethad1_isTight_h1","el_Ethad1",100,0.,10000.)
-        histos["el_Ethad1_ifTight"] = el_Ethad1_isTight_h1
-        pass
-
-    elif n == 32 : ## histos for TDirectory Electron -> TightElectrons -> MediumVariables
-        el_f1_isTight_h1 = ROOT.TH1F("el_f1_isTight_h1","el_f1",50,0.,1.)
-        histos["el_f1_ifTight"] = el_f1_isTight_h1
-        el_wstot_isTight_h1 = ROOT.TH1F("el_wstot_isTight_h1","el_wstot",100,0.,10.)
-        histos["el_wstot_ifTight"] = el_wstot_isTight_h1
-        el_emaxs1_isTight_h1 = ROOT.TH1F("el_emaxs1_isTight_h1","el_emaxs1",100,-5000.,50000.)
-        histos["el_emaxs1_ifTight"] = el_emaxs1_isTight_h1
-        el_nPixHits_isTight_h1 = ROOT.TH1F("el_nPixHits_isTight_h1","el_nPixHits",10,0.,10.)
-        histos["el_nPixHits_ifTight"] = el_nPixHits_isTight_h1
-        el_nSCTHits_isTight_h1 = ROOT.TH1F("el_nSCTHits_isTight_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits_ifTight"] = el_nSCTHits_isTight_h1
-        el_nSiHits_isTight_h1 = ROOT.TH1F("el_nSiHits_isTight_h1","el_nSiHits",20,0.,20.)
-        histos["el_nSiHits_ifTight"] = el_nSiHits_isTight_h1
-        pass
-
-    elif n == 33 : ## histos for TDirectory Electron -> TightElectrons -> TightVariables       
-        el_nBLHits_isTight_h1 = ROOT.TH1F("el_nBLHits_isTight_h1","el_nBLHits",5,0.,5.)
-        histos["el_nBLHits_ifTight"] = el_nBLHits_isTight_h1
-        el_expectHitInBLayer_isTight_h1 = ROOT.TH1F("el_expectHitInBLayer_isTight_h1","el_expectHitInBLayer",100,-1100.,100.)
-        histos["el_expectHitInBLayer_ifTight"] = el_expectHitInBLayer_isTight_h1
-        el_cl_E_isTight_h1 = ROOT.TH1F("el_cl_E_isTight_h1","el_cl_E",100,0.,250000.)
-        histos["el_cl_E_ifTight"] = el_cl_E_isTight_h1
-        el_trackpt_isTight_h1 = ROOT.TH1F("el_trackpt_isTight_h1","el_trackpt",100,0.,10000.)
-        histos["el_trackpt_ifTight"] = el_trackpt_isTight_h1
-        el_nTRTHits_isTight_h1 = ROOT.TH1F("el_nTRTHits_isTight_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits_ifTight"] = el_nTRTHits_isTight_h1
-        el_TRTHighTHitsRatio_isTight_h1 = ROOT.TH1F("el_TRTHighTHitsRatio_isTight_h1","el_TRTHighTHitsRatio",100,0.,1.)
-        histos["el_TRTHighTHitsRatio_ifTight"] = el_TRTHighTHitsRatio_isTight_h1
-        pass
-    
-    
-    elif n == 40 : ## histos for TDirectory Electron -> Author1Electrons
-        el_charge_ifAuthor1_h1 = ROOT.TH1F("el_charge_ifAuthor1_h1","el_charge",3,-1.5,1.5)
-        histos["el_charge_ifAuthor1"] = el_charge_ifAuthor1_h1
-        el_author_ifAuthor1_h1 = ROOT.TH1F("el_author_ifAuthor1_h1","el_author",10,0.,10.)
-        histos["el_author_ifAuthor1"] = el_author_ifAuthor1_h1
-        el_n_ifAuthor1_h1 = ROOT.TH1F("el_n_ifAuthor1_h1","el_n",20,0.,20.)
-        histos["el_n_ifAuthor1"] = el_n_ifAuthor1_h1
-        el_eta_ifAuthor1_h1 = ROOT.TH1F("el_eta_ifAuthor1_h1","el_eta",100,-4.5,4.5)
-        histos["el_eta_ifAuthor1"] = el_eta_ifAuthor1_h1
-        el_phi_ifAuthor1_h1 = ROOT.TH1F("el_phi_ifAuthor1_h1","el_phi",100,-4.5,4.5)
-        histos["el_phi_ifAuthor1"] = el_phi_ifAuthor1_h1
-        el_pt_ifAuthor1_h1 = ROOT.TH1F("el_pt_ifAuthor1_h1","el_pt",100,0.,100000.)
-        histos["el_pt_ifAuthor1"] = el_pt_ifAuthor1_h1
-        el_loose_ifAuthor1_h1 = ROOT.TH1F("el_loose_ifAuthor1_h1","el_author1",2,0.,2.)
-        histos["el_loose_ifAuthor1"] = el_loose_ifAuthor1_h1
-        el_medium_ifAuthor1_h1 = ROOT.TH1F("el_medium_ifAuthor1_h1","el_medium",2,0.,2.)
-        histos["el_medium_ifAuthor1"] = el_medium_ifAuthor1_h1
-        el_mediumIso_ifAuthor1_h1 = ROOT.TH1F("el_mediumIso_ifAuthor1_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso_ifAuthor1"] = el_mediumIso_ifAuthor1_h1
-        el_tight_ifAuthor1_h1 = ROOT.TH1F("el_tight_ifAuthor1_h1","el_tight",2,0.,2.)
-        histos["el_tight_ifAuthor1"] = el_tight_ifAuthor1_h1
-        el_tightIso_ifAuthor1_h1 = ROOT.TH1F("el_tightIso_ifAuthor1_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso_ifAuthor1"] = el_tightIso_ifAuthor1_h1
-        pass
-
-    elif n == 41 : ## histos for TDirectory Electron -> Author1Electrons -> Author1Variables
-        el_weta2_isAuthor1_h1 = ROOT.TH1F("el_weta2_isAuthor1_h1","el_weta2",100,-0.05,0.05)
-        histos["el_weta2_ifAuthor1"] = el_weta2_isAuthor1_h1
-        el_E237_isAuthor1_h1 = ROOT.TH1F("el_E237_isAuthor1_h1","el_E237",100,0.,200000.)
-        histos["el_E237_ifAuthor1"] = el_E237_isAuthor1_h1
-        el_E277_isAuthor1_h1 = ROOT.TH1F("el_E277_isAuthor1_h1","el_E277",100,0.,200000.)
-        histos["el_E277_ifAuthor1"] = el_E277_isAuthor1_h1
-        el_Ethad_isAuthor1_h1 = ROOT.TH1F("el_Ethad_isAuthor1_h1","el_Ethad",100,0.,10000.)
-        histos["el_Ethad_ifAuthor1"] = el_Ethad_isAuthor1_h1
-        el_Ethad1_isAuthor1_h1 = ROOT.TH1F("el_Ethad1_isAuthor1_h1","el_Ethad1",100,0.,10000.)
-        histos["el_Ethad1_ifAuthor1"] = el_Ethad1_isAuthor1_h1
-        pass
-
-    elif n == 42 : ## histos for TDirectory Electron -> Author1Electrons -> MediumVariables
-        el_f1_isAuthor1_h1 = ROOT.TH1F("el_f1_isAuthor1_h1","el_f1",50,0.,1.)
-        histos["el_f1_ifAuthor1"] = el_f1_isAuthor1_h1
-        el_wstot_isAuthor1_h1 = ROOT.TH1F("el_wstot_isAuthor1_h1","el_wstot",100,0.,10.)
-        histos["el_wstot_ifAuthor1"] = el_wstot_isAuthor1_h1
-        el_emaxs1_isAuthor1_h1 = ROOT.TH1F("el_emaxs1_isAuthor1_h1","el_emaxs1",100,-5000.,50000.)
-        histos["el_emaxs1_ifAuthor1"] = el_emaxs1_isAuthor1_h1
-        el_nPixHits_isAuthor1_h1 = ROOT.TH1F("el_nPixHits_isAuthor1_h1","el_nPixHits",10,0.,10.)
-        histos["el_nPixHits_ifAuthor1"] = el_nPixHits_isAuthor1_h1
-        el_nSCTHits_isAuthor1_h1 = ROOT.TH1F("el_nSCTHits_isAuthor1_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits_ifAuthor1"] = el_nSCTHits_isAuthor1_h1
-        el_nSiHits_isAuthor1_h1 = ROOT.TH1F("el_nSiHits_isAuthor1_h1","el_nSiHits",20,0.,20.)
-        histos["el_nSiHits_ifAuthor1"] = el_nSiHits_isAuthor1_h1
-        pass
-
-    elif n == 43 : ## histos for TDirectory Electron -> Author1Electrons -> TightVariables       
-        el_nBLHits_isAuthor1_h1 = ROOT.TH1F("el_nBLHits_isAuthor1_h1","el_nBLHits",5,0.,5.)
-        histos["el_nBLHits_ifAuthor1"] = el_nBLHits_isAuthor1_h1
-        el_expectHitInBLayer_isAuthor1_h1 = ROOT.TH1F("el_expectHitInBLayer_isAuthor1_h1","el_expectHitInBLayer",100,-1100.,100.)
-        histos["el_expectHitInBLayer_ifAuthor1"] = el_expectHitInBLayer_isAuthor1_h1
-        el_cl_E_isAuthor1_h1 = ROOT.TH1F("el_cl_E_isAuthor1_h1","el_cl_E",100,0.,250000.)
-        histos["el_cl_E_ifAuthor1"] = el_cl_E_isAuthor1_h1
-        el_trackpt_isAuthor1_h1 = ROOT.TH1F("el_trackpt_isAuthor1_h1","el_trackpt",100,0.,10000.)
-        histos["el_trackpt_ifAuthor1"] = el_trackpt_isAuthor1_h1
-        el_nTRTHits_isAuthor1_h1 = ROOT.TH1F("el_nTRTHits_isAuthor1_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits_ifAuthor1"] = el_nTRTHits_isAuthor1_h1
-        el_TRTHighTHitsRatio_isAuthor1_h1 = ROOT.TH1F("el_TRTHighTHitsRatio_isAuthor1_h1","el_TRTHighTHitsRatio",100,0.,1.)
-        histos["el_TRTHighTHitsRatio_ifAuthor1"] = el_TRTHighTHitsRatio_isAuthor1_h1
-        pass
-    
-    
-    elif n == 50 : ## histos for TDirectory Electron -> Author2Electrons
-        el_charge_ifAuthor2_h1 = ROOT.TH1F("el_charge_ifAuthor2_h1","el_charge",3,-1.5,1.5)
-        histos["el_charge_ifAuthor2"] = el_charge_ifAuthor2_h1
-        el_author_ifAuthor2_h1 = ROOT.TH1F("el_author_ifAuthor2_h1","el_author",10,0.,10.)
-        histos["el_author_ifAuthor2"] = el_author_ifAuthor2_h1
-        el_n_ifAuthor2_h1 = ROOT.TH1F("el_n_ifAuthor2_h1","el_n",20,0.,20.)
-        histos["el_n_ifAuthor2"] = el_n_ifAuthor2_h1
-        el_eta_ifAuthor2_h1 = ROOT.TH1F("el_eta_ifAuthor2_h1","el_eta",100,-4.5,4.5)
-        histos["el_eta_ifAuthor2"] = el_eta_ifAuthor2_h1
-        el_phi_ifAuthor2_h1 = ROOT.TH1F("el_phi_ifAuthor2_h1","el_phi",100,-4.5,4.5)
-        histos["el_phi_ifAuthor2"] = el_phi_ifAuthor2_h1
-        el_pt_ifAuthor2_h1 = ROOT.TH1F("el_pt_ifAuthor2_h1","el_pt",100,0.,100000.)
-        histos["el_pt_ifAuthor2"] = el_pt_ifAuthor2_h1
-        el_loose_ifAuthor2_h1 = ROOT.TH1F("el_loose_ifAuthor2_h1","el_author2",2,0.,2.)
-        histos["el_loose_ifAuthor2"] = el_loose_ifAuthor2_h1
-        el_medium_ifAuthor2_h1 = ROOT.TH1F("el_medium_ifAuthor2_h1","el_medium",2,0.,2.)
-        histos["el_medium_ifAuthor2"] = el_medium_ifAuthor2_h1
-        el_mediumIso_ifAuthor2_h1 = ROOT.TH1F("el_mediumIso_ifAuthor2_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso_ifAuthor2"] = el_mediumIso_ifAuthor2_h1
-        el_tight_ifAuthor2_h1 = ROOT.TH1F("el_tight_ifAuthor2_h1","el_tight",2,0.,2.)
-        histos["el_tight_ifAuthor2"] = el_tight_ifAuthor2_h1
-        el_tightIso_ifAuthor2_h1 = ROOT.TH1F("el_tightIso_ifAuthor2_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso_ifAuthor2"] = el_tightIso_ifAuthor2_h1
-        pass
-
-    elif n == 51 : ## histos for TDirectory Electron -> Author2Electrons -> Author2Variables
-        el_weta2_isAuthor2_h1 = ROOT.TH1F("el_weta2_isAuthor2_h1","el_weta2",100,-0.05,0.05)
-        histos["el_weta2_ifAuthor2"] = el_weta2_isAuthor2_h1
-        el_E237_isAuthor2_h1 = ROOT.TH1F("el_E237_isAuthor2_h1","el_E237",100,0.,200000.)
-        histos["el_E237_ifAuthor2"] = el_E237_isAuthor2_h1
-        el_E277_isAuthor2_h1 = ROOT.TH1F("el_E277_isAuthor2_h1","el_E277",100,0.,200000.)
-        histos["el_E277_ifAuthor2"] = el_E277_isAuthor2_h1
-        el_Ethad_isAuthor2_h1 = ROOT.TH1F("el_Ethad_isAuthor2_h1","el_Ethad",100,0.,10000.)
-        histos["el_Ethad_ifAuthor2"] = el_Ethad_isAuthor2_h1
-        el_Ethad1_isAuthor2_h1 = ROOT.TH1F("el_Ethad1_isAuthor2_h1","el_Ethad1",100,0.,10000.)
-        histos["el_Ethad1_ifAuthor2"] = el_Ethad1_isAuthor2_h1
-        pass
-
-    elif n == 52 : ## histos for TDirectory Electron -> Author2Electrons -> MediumVariables
-        el_f1_isAuthor2_h1 = ROOT.TH1F("el_f1_isAuthor2_h1","el_f1",50,0.,1.)
-        histos["el_f1_ifAuthor2"] = el_f1_isAuthor2_h1
-        el_wstot_isAuthor2_h1 = ROOT.TH1F("el_wstot_isAuthor2_h1","el_wstot",100,0.,10.)
-        histos["el_wstot_ifAuthor2"] = el_wstot_isAuthor2_h1
-        el_emaxs1_isAuthor2_h1 = ROOT.TH1F("el_emaxs1_isAuthor2_h1","el_emaxs1",100,-5000.,50000.)
-        histos["el_emaxs1_ifAuthor2"] = el_emaxs1_isAuthor2_h1
-        el_nPixHits_isAuthor2_h1 = ROOT.TH1F("el_nPixHits_isAuthor2_h1","el_nPixHits",10,0.,10.)
-        histos["el_nPixHits_ifAuthor2"] = el_nPixHits_isAuthor2_h1
-        el_nSCTHits_isAuthor2_h1 = ROOT.TH1F("el_nSCTHits_isAuthor2_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits_ifAuthor2"] = el_nSCTHits_isAuthor2_h1
-        el_nSiHits_isAuthor2_h1 = ROOT.TH1F("el_nSiHits_isAuthor2_h1","el_nSiHits",20,0.,20.)
-        histos["el_nSiHits_ifAuthor2"] = el_nSiHits_isAuthor2_h1
-        pass
-
-    elif n == 53 : ## histos for TDirectory Electron -> Author2Electrons -> TightVariables       
-        el_nBLHits_isAuthor2_h1 = ROOT.TH1F("el_nBLHits_isAuthor2_h1","el_nBLHits",5,0.,5.)
-        histos["el_nBLHits_ifAuthor2"] = el_nBLHits_isAuthor2_h1
-        el_expectHitInBLayer_isAuthor2_h1 = ROOT.TH1F("el_expectHitInBLayer_isAuthor2_h1","el_expectHitInBLayer",100,-1100.,100.)
-        histos["el_expectHitInBLayer_ifAuthor2"] = el_expectHitInBLayer_isAuthor2_h1
-        el_cl_E_isAuthor2_h1 = ROOT.TH1F("el_cl_E_isAuthor2_h1","el_cl_E",100,0.,250000.)
-        histos["el_cl_E_ifAuthor2"] = el_cl_E_isAuthor2_h1
-        el_trackpt_isAuthor2_h1 = ROOT.TH1F("el_trackpt_isAuthor2_h1","el_trackpt",100,0.,10000.)
-        histos["el_trackpt_ifAuthor2"] = el_trackpt_isAuthor2_h1
-        el_nTRTHits_isAuthor2_h1 = ROOT.TH1F("el_nTRTHits_isAuthor2_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits_ifAuthor2"] = el_nTRTHits_isAuthor2_h1
-        el_TRTHighTHitsRatio_isAuthor2_h1 = ROOT.TH1F("el_TRTHighTHitsRatio_isAuthor2_h1","el_TRTHighTHitsRatio",100,0.,1.)
-        histos["el_TRTHighTHitsRatio_ifAuthor2"] = el_TRTHighTHitsRatio_isAuthor2_h1
-        pass
-    
-    
-    elif n == 60 : ## histos for TDirectory Electron -> Author3Electrons
-        el_charge_ifAuthor3_h1 = ROOT.TH1F("el_charge_ifAuthor3_h1","el_charge",3,-1.5,1.5)
-        histos["el_charge_ifAuthor3"] = el_charge_ifAuthor3_h1
-        el_author_ifAuthor3_h1 = ROOT.TH1F("el_author_ifAuthor3_h1","el_author",10,0.,10.)
-        histos["el_author_ifAuthor3"] = el_author_ifAuthor3_h1
-        el_n_ifAuthor3_h1 = ROOT.TH1F("el_n_ifAuthor3_h1","el_n",20,0.,20.)
-        histos["el_n_ifAuthor3"] = el_n_ifAuthor3_h1
-        el_eta_ifAuthor3_h1 = ROOT.TH1F("el_eta_ifAuthor3_h1","el_eta",100,-4.5,4.5)
-        histos["el_eta_ifAuthor3"] = el_eta_ifAuthor3_h1
-        el_phi_ifAuthor3_h1 = ROOT.TH1F("el_phi_ifAuthor3_h1","el_phi",100,-4.5,4.5)
-        histos["el_phi_ifAuthor3"] = el_phi_ifAuthor3_h1
-        el_pt_ifAuthor3_h1 = ROOT.TH1F("el_pt_ifAuthor3_h1","el_pt",100,0.,100000.)
-        histos["el_pt_ifAuthor3"] = el_pt_ifAuthor3_h1
-        el_loose_ifAuthor3_h1 = ROOT.TH1F("el_loose_ifAuthor3_h1","el_author3",2,0.,2.)
-        histos["el_loose_ifAuthor3"] = el_loose_ifAuthor3_h1
-        el_medium_ifAuthor3_h1 = ROOT.TH1F("el_medium_ifAuthor3_h1","el_medium",2,0.,2.)
-        histos["el_medium_ifAuthor3"] = el_medium_ifAuthor3_h1
-        el_mediumIso_ifAuthor3_h1 = ROOT.TH1F("el_mediumIso_ifAuthor3_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso_ifAuthor3"] = el_mediumIso_ifAuthor3_h1
-        el_tight_ifAuthor3_h1 = ROOT.TH1F("el_tight_ifAuthor3_h1","el_tight",2,0.,2.)
-        histos["el_tight_ifAuthor3"] = el_tight_ifAuthor3_h1
-        el_tightIso_ifAuthor3_h1 = ROOT.TH1F("el_tightIso_ifAuthor3_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso_ifAuthor3"] = el_tightIso_ifAuthor3_h1
-        pass
-
-    elif n == 61 : ## histos for TDirectory Electron -> Author3Electrons -> Author3Variables
-        el_weta2_isAuthor3_h1 = ROOT.TH1F("el_weta2_isAuthor3_h1","el_weta2",100,-0.05,0.05)
-        histos["el_weta2_ifAuthor3"] = el_weta2_isAuthor3_h1
-        el_E237_isAuthor3_h1 = ROOT.TH1F("el_E237_isAuthor3_h1","el_E237",100,0.,200000.)
-        histos["el_E237_ifAuthor3"] = el_E237_isAuthor3_h1
-        el_E277_isAuthor3_h1 = ROOT.TH1F("el_E277_isAuthor3_h1","el_E277",100,0.,200000.)
-        histos["el_E277_ifAuthor3"] = el_E277_isAuthor3_h1
-        el_Ethad_isAuthor3_h1 = ROOT.TH1F("el_Ethad_isAuthor3_h1","el_Ethad",100,0.,10000.)
-        histos["el_Ethad_ifAuthor3"] = el_Ethad_isAuthor3_h1
-        el_Ethad1_isAuthor3_h1 = ROOT.TH1F("el_Ethad1_isAuthor3_h1","el_Ethad1",100,0.,10000.)
-        histos["el_Ethad1_ifAuthor3"] = el_Ethad1_isAuthor3_h1
-        pass
-
-    elif n == 62 : ## histos for TDirectory Electron -> Author3Electrons -> MediumVariables
-        el_f1_isAuthor3_h1 = ROOT.TH1F("el_f1_isAuthor3_h1","el_f1",50,0.,1.)
-        histos["el_f1_ifAuthor3"] = el_f1_isAuthor3_h1
-        el_wstot_isAuthor3_h1 = ROOT.TH1F("el_wstot_isAuthor3_h1","el_wstot",100,0.,10.)
-        histos["el_wstot_ifAuthor3"] = el_wstot_isAuthor3_h1
-        el_emaxs1_isAuthor3_h1 = ROOT.TH1F("el_emaxs1_isAuthor3_h1","el_emaxs1",100,-5000.,50000.)
-        histos["el_emaxs1_ifAuthor3"] = el_emaxs1_isAuthor3_h1
-        el_nPixHits_isAuthor3_h1 = ROOT.TH1F("el_nPixHits_isAuthor3_h1","el_nPixHits",10,0.,10.)
-        histos["el_nPixHits_ifAuthor3"] = el_nPixHits_isAuthor3_h1
-        el_nSCTHits_isAuthor3_h1 = ROOT.TH1F("el_nSCTHits_isAuthor3_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits_ifAuthor3"] = el_nSCTHits_isAuthor3_h1
-        el_nSiHits_isAuthor3_h1 = ROOT.TH1F("el_nSiHits_isAuthor3_h1","el_nSiHits",20,0.,20.)
-        histos["el_nSiHits_ifAuthor3"] = el_nSiHits_isAuthor3_h1
-        pass
-
-    elif n == 63 : ## histos for TDirectory Electron -> Author3Electrons -> TightVariables       
-        el_nBLHits_isAuthor3_h1 = ROOT.TH1F("el_nBLHits_isAuthor3_h1","el_nBLHits",5,0.,5.)
-        histos["el_nBLHits_ifAuthor3"] = el_nBLHits_isAuthor3_h1
-        el_expectHitInBLayer_isAuthor3_h1 = ROOT.TH1F("el_expectHitInBLayer_isAuthor3_h1","el_expectHitInBLayer",100,-1100.,100.)
-        histos["el_expectHitInBLayer_ifAuthor3"] = el_expectHitInBLayer_isAuthor3_h1
-        el_cl_E_isAuthor3_h1 = ROOT.TH1F("el_cl_E_isAuthor3_h1","el_cl_E",100,0.,250000.)
-        histos["el_cl_E_ifAuthor3"] = el_cl_E_isAuthor3_h1
-        el_trackpt_isAuthor3_h1 = ROOT.TH1F("el_trackpt_isAuthor3_h1","el_trackpt",100,0.,10000.)
-        histos["el_trackpt_ifAuthor3"] = el_trackpt_isAuthor3_h1
-        el_nTRTHits_isAuthor3_h1 = ROOT.TH1F("el_nTRTHits_isAuthor3_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits_ifAuthor3"] = el_nTRTHits_isAuthor3_h1
-        el_TRTHighTHitsRatio_isAuthor3_h1 = ROOT.TH1F("el_TRTHighTHitsRatio_isAuthor3_h1","el_TRTHighTHitsRatio",100,0.,1.)
-        histos["el_TRTHighTHitsRatio_ifAuthor3"] = el_TRTHighTHitsRatio_isAuthor3_h1
-        pass
-    
-    
-    elif n == 70 : ## histos for TDirectory Electron -> Author8Electrons
-        el_charge_ifAuthor8_h1 = ROOT.TH1F("el_charge_ifAuthor8_h1","el_charge",3,-1.5,1.5)
-        histos["el_charge_ifAuthor8"] = el_charge_ifAuthor8_h1
-        el_author_ifAuthor8_h1 = ROOT.TH1F("el_author_ifAuthor8_h1","el_author",10,0.,10.)
-        histos["el_author_ifAuthor8"] = el_author_ifAuthor8_h1
-        el_n_ifAuthor8_h1 = ROOT.TH1F("el_n_ifAuthor8_h1","el_n",20,0.,20.)
-        histos["el_n_ifAuthor8"] = el_n_ifAuthor8_h1
-        el_eta_ifAuthor8_h1 = ROOT.TH1F("el_eta_ifAuthor8_h1","el_eta",100,-4.5,4.5)
-        histos["el_eta_ifAuthor8"] = el_eta_ifAuthor8_h1
-        el_phi_ifAuthor8_h1 = ROOT.TH1F("el_phi_ifAuthor8_h1","el_phi",100,-4.5,4.5)
-        histos["el_phi_ifAuthor8"] = el_phi_ifAuthor8_h1
-        el_pt_ifAuthor8_h1 = ROOT.TH1F("el_pt_ifAuthor8_h1","el_pt",100,0.,100000.)
-        histos["el_pt_ifAuthor8"] = el_pt_ifAuthor8_h1
-        el_loose_ifAuthor8_h1 = ROOT.TH1F("el_loose_ifAuthor8_h1","el_author8",2,0.,2.)
-        histos["el_loose_ifAuthor8"] = el_loose_ifAuthor8_h1
-        el_medium_ifAuthor8_h1 = ROOT.TH1F("el_medium_ifAuthor8_h1","el_medium",2,0.,2.)
-        histos["el_medium_ifAuthor8"] = el_medium_ifAuthor8_h1
-        el_mediumIso_ifAuthor8_h1 = ROOT.TH1F("el_mediumIso_ifAuthor8_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso_ifAuthor8"] = el_mediumIso_ifAuthor8_h1
-        el_tight_ifAuthor8_h1 = ROOT.TH1F("el_tight_ifAuthor8_h1","el_tight",2,0.,2.)
-        histos["el_tight_ifAuthor8"] = el_tight_ifAuthor8_h1
-        el_tightIso_ifAuthor8_h1 = ROOT.TH1F("el_tightIso_ifAuthor8_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso_ifAuthor8"] = el_tightIso_ifAuthor8_h1
-        pass
-
-    elif n == 71 : ## histos for TDirectory Electron -> Author8Electrons -> Author8Variables
-        el_weta2_isAuthor8_h1 = ROOT.TH1F("el_weta2_isAuthor8_h1","el_weta2",100,-0.05,0.05)
-        histos["el_weta2_ifAuthor8"] = el_weta2_isAuthor8_h1
-        el_E237_isAuthor8_h1 = ROOT.TH1F("el_E237_isAuthor8_h1","el_E237",100,0.,200000.)
-        histos["el_E237_ifAuthor8"] = el_E237_isAuthor8_h1
-        el_E277_isAuthor8_h1 = ROOT.TH1F("el_E277_isAuthor8_h1","el_E277",100,0.,200000.)
-        histos["el_E277_ifAuthor8"] = el_E277_isAuthor8_h1
-        el_Ethad_isAuthor8_h1 = ROOT.TH1F("el_Ethad_isAuthor8_h1","el_Ethad",100,0.,10000.)
-        histos["el_Ethad_ifAuthor8"] = el_Ethad_isAuthor8_h1
-        el_Ethad1_isAuthor8_h1 = ROOT.TH1F("el_Ethad1_isAuthor8_h1","el_Ethad1",100,0.,10000.)
-        histos["el_Ethad1_ifAuthor8"] = el_Ethad1_isAuthor8_h1
-        pass
-
-    elif n == 72 : ## histos for TDirectory Electron -> Author8Electrons -> MediumVariables
-        el_f1_isAuthor8_h1 = ROOT.TH1F("el_f1_isAuthor8_h1","el_f1",50,0.,1.)
-        histos["el_f1_ifAuthor8"] = el_f1_isAuthor8_h1
-        el_wstot_isAuthor8_h1 = ROOT.TH1F("el_wstot_isAuthor8_h1","el_wstot",100,0.,10.)
-        histos["el_wstot_ifAuthor8"] = el_wstot_isAuthor8_h1
-        el_emaxs1_isAuthor8_h1 = ROOT.TH1F("el_emaxs1_isAuthor8_h1","el_emaxs1",100,-5000.,50000.)
-        histos["el_emaxs1_ifAuthor8"] = el_emaxs1_isAuthor8_h1
-        el_nPixHits_isAuthor8_h1 = ROOT.TH1F("el_nPixHits_isAuthor8_h1","el_nPixHits",10,0.,10.)
-        histos["el_nPixHits_ifAuthor8"] = el_nPixHits_isAuthor8_h1
-        el_nSCTHits_isAuthor8_h1 = ROOT.TH1F("el_nSCTHits_isAuthor8_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits_ifAuthor8"] = el_nSCTHits_isAuthor8_h1
-        el_nSiHits_isAuthor8_h1 = ROOT.TH1F("el_nSiHits_isAuthor8_h1","el_nSiHits",20,0.,20.)
-        histos["el_nSiHits_ifAuthor8"] = el_nSiHits_isAuthor8_h1
-        pass
-
-    elif n == 73 : ## histos for TDirectory Electron -> Author8Electrons -> TightVariables       
-        el_nBLHits_isAuthor8_h1 = ROOT.TH1F("el_nBLHits_isAuthor8_h1","el_nBLHits",5,0.,5.)
-        histos["el_nBLHits_ifAuthor8"] = el_nBLHits_isAuthor8_h1
-        el_expectHitInBLayer_isAuthor8_h1 = ROOT.TH1F("el_expectHitInBLayer_isAuthor8_h1","el_expectHitInBLayer",100,-1100.,100.)
-        histos["el_expectHitInBLayer_ifAuthor8"] = el_expectHitInBLayer_isAuthor8_h1
-        el_cl_E_isAuthor8_h1 = ROOT.TH1F("el_cl_E_isAuthor8_h1","el_cl_E",100,0.,250000.)
-        histos["el_cl_E_ifAuthor8"] = el_cl_E_isAuthor8_h1
-        el_trackpt_isAuthor8_h1 = ROOT.TH1F("el_trackpt_isAuthor8_h1","el_trackpt",100,0.,10000.)
-        histos["el_trackpt_ifAuthor8"] = el_trackpt_isAuthor8_h1
-        el_nTRTHits_isAuthor8_h1 = ROOT.TH1F("el_nTRTHits_isAuthor8_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits_ifAuthor8"] = el_nTRTHits_isAuthor8_h1
-        el_TRTHighTHitsRatio_isAuthor8_h1 = ROOT.TH1F("el_TRTHighTHitsRatio_isAuthor8_h1","el_TRTHighTHitsRatio",100,0.,1.)
-        histos["el_TRTHighTHitsRatio_ifAuthor8"] = el_TRTHighTHitsRatio_isAuthor8_h1
-        pass
-    
-    else : ## ERROR
-        print "::: ERROR wrong flag :::"
-        pass
-    return histos
-
-def defHistPho(n,histos) :
-
-    if n == 0 : ## histos for TDirectory Photons -> AllPhotons
-        ph_E_h1 = ROOT.TH1F("ph_E_h1","ph_E",100,0.,100000.)
-        histos["ph_E"] = ph_E_h1
-        ph_author_h1 = ROOT.TH1F("ph_author_h1","ph_author",17,0.,17.)
-        histos["ph_author"] = ph_author_h1
-        ph_eta_h1 = ROOT.TH1F("ph_eta_h1","ph_eta",10,-3.5,3.5)
-        histos["ph_eta"] = ph_eta_h1
-        ph_loose_h1 = ROOT.TH1F("ph_loose_h1","ph_loose",2,0.,2.)
-        histos["ph_loose"] = ph_loose_h1
-        ph_n_h1 = ROOT.TH1F("ph_n_h1","ph_n",20,0.,20.)
-        histos["ph_n"] = ph_n_h1
-        ph_pt_h1 = ROOT.TH1F("ph_pt_h1","ph_pt",100,0.,100000.)
-        histos["ph_pt"] = ph_pt_h1
-        ph_phi_h1 = ROOT.TH1F("ph_phi_h1","ph_phi",100,-3.5,3.5)
-        histos["ph_phi"] = ph_phi_h1
-        ph_tight_h1 = ROOT.TH1F("ph_tight_h1","ph_tight",2,0.,2.)
-        histos["ph_tight"] = ph_tight_h1
-        ph_tightIso_h1 = ROOT.TH1F("ph_tightIso_h1","ph_tightIso",2,0.,2.)
-        histos["ph_tightIso"] = ph_tightIso_h1
-        ph_isConv_h1 = ROOT.TH1F("ph_isConv_h1","ph_isConv",2,0.,2.)
-        histos["ph_isConv"] = ph_isConv_h1
-        ph_nConv_h1 = ROOT.TH1F("ph_nConv_h1","ph_nConv",10,0.,10.)
-        histos["ph_nConv"] = ph_nConv_h1
-        pass
-    
-    elif n == 1 : ## histos for TDirectory Photons -> AllPhotons -> LooseVariables
-        ph_Es2_h1 = ROOT.TH1F("ph_Es2_h1","ph_Es2",100,0.,250000.)
-        histos["ph_Es2"] = ph_Es2_h1
-        ph_E233_h1 = ROOT.TH1F("ph_E233_h1","ph_E233",100,0.,250000.)
-        histos["ph_E233"] = ph_E233_h1
-        ph_E237_h1 = ROOT.TH1F("ph_E237_h1","ph_E237",100,0.,250000.)
-        histos["ph_E237"] = ph_E237_h1
-        ph_E277_h1 = ROOT.TH1F("ph_E277_h1","ph_E277",100,0.,250000.)
-        histos["ph_E277"] = ph_E277_h1
-        ph_weta2_h1 = ROOT.TH1F("ph_weta2_h1","ph_weta2",100,0.,0.05)
-        histos["ph_weta2"] = ph_weta2_h1
-        ph_Ethad_h1 = ROOT.TH1F("ph_Ethad_h1","ph_Ethad",100,-5000.,30000.)
-        histos["ph_Ethad"] = ph_Ethad_h1
-        ph_Ethad1_h1 = ROOT.TH1F("ph_Ethad1_h1","ph_Ethad1",100,-5000.,20000.)
-        histos["ph_Ethad1"] = ph_Ethad1_h1
-        pass
-    
-    elif n == 2 : ## histos for TDirectory Photons -> AllPhotons -> TightVariables
-        ph_wstot_h1 = ROOT.TH1F("ph_wstot_h1","ph_wstot",100,-10000.,1000.)
-        histos["ph_wstot"] = ph_wstot_h1
-        ph_deltaEmax2_h1 = ROOT.TH1F("ph_deltaEmax2_h1","ph_deltaEmax2",100,0.,5.)
-        histos["ph_deltaEmax2"] = ph_deltaEmax2_h1
-        ph_emaxs1_h1 = ROOT.TH1F("ph_emaxs1_h1","ph_emaxs1",100,0.,40000.)
-        histos["ph_emaxs1"] = ph_emaxs1_h1
-        ph_deltaEs_h1 = ROOT.TH1F("ph_deltaEs_h1","ph_deltaEs",100,0.,5000.)
-        histos["ph_deltaEs"] = ph_deltaEs_h1
-        ph_cl_E_h1 = ROOT.TH1F("ph_cl_E_h1","ph_cl_E",100,0.,350000.)
-        histos["ph_cl_E"] = ph_cl_E_h1
-        ph_f1_h1 = ROOT.TH1F("ph_f1_h1","ph_f1",100,0.,1.)
-        histos["ph_f1"] = ph_f1_h1
-        pass
-    
-    elif n == 10 : ## histos for TDirectory Photons -> LoosePhotons
-        ph_E_ifLoose_h1 = ROOT.TH1F("ph_E_ifLoose_h1","ph_E",100,0.,100000.)
-        histos["ph_E_ifLoose"] = ph_E_ifLoose_h1
-        ph_author_ifLoose_h1 = ROOT.TH1F("ph_author_ifLoose_h1","ph_author",17,0.,17.)
-        histos["ph_author_ifLoose"] = ph_author_ifLoose_h1
-        ph_eta_ifLoose_h1 = ROOT.TH1F("ph_eta_ifLoose_h1","ph_eta",10,-3.5,3.5)
-        histos["ph_eta_ifLoose"] = ph_eta_ifLoose_h1
-        ph_loose_ifLoose_h1 = ROOT.TH1F("ph_loose_ifLoose_h1","ph_loose",2,0.,2.)
-        histos["ph_loose_ifLoose"] = ph_loose_ifLoose_h1
-        ph_n_ifLoose_h1 = ROOT.TH1F("ph_n_ifLoose_h1","ph_n",20,0.,20.)
-        histos["ph_n_ifLoose"] = ph_n_ifLoose_h1
-        ph_pt_ifLoose_h1 = ROOT.TH1F("ph_pt_ifLoose_h1","ph_pt",100,0.,100000.)
-        histos["ph_pt_ifLoose"] = ph_pt_ifLoose_h1
-        ph_phi_ifLoose_h1 = ROOT.TH1F("ph_phi_ifLoose_h1","ph_phi",100,-3.5,3.5)
-        histos["ph_phi_ifLoose"] = ph_phi_ifLoose_h1
-        ph_tight_ifLoose_h1 = ROOT.TH1F("ph_tight_ifLoose_h1","ph_tight",2,0.,2.)
-        histos["ph_tight_ifLoose"] = ph_tight_ifLoose_h1
-        ph_tightIso_ifLoose_h1 = ROOT.TH1F("ph_tightIso_ifLoose_h1","ph_tightIso",2,0.,2.)
-        histos["ph_tightIso_ifLoose"] = ph_tightIso_ifLoose_h1
-        ph_isConv_ifLoose_h1 = ROOT.TH1F("ph_isConv_ifLoose_h1","ph_isConv",2,0.,2.)
-        histos["ph_isConv_ifLoose"] = ph_isConv_ifLoose_h1
-        ph_nConv_ifLoose_h1 = ROOT.TH1F("ph_nConv_ifLoose_h1","ph_nConv",10,0.,10.)
-        histos["ph_nConv_ifLoose"] = ph_nConv_ifLoose_h1
-        pass
-    elif n == 11 : ## histos for TDirectory Photons -> LoosePhotons -> LooseVariables
-        ph_Es2_ifLoose_h1 = ROOT.TH1F("ph_Es2_ifLoose_h1","ph_Es2",100,0.,250000.)
-        histos["ph_Es2_ifLoose"] = ph_Es2_ifLoose_h1
-        ph_E233_ifLoose_h1 = ROOT.TH1F("ph_E233_ifLoose_h1","ph_E233",100,0.,250000.)
-        histos["ph_E233_ifLoose"] = ph_E233_ifLoose_h1
-        ph_E237_ifLoose_h1 = ROOT.TH1F("ph_E237_ifLoose_h1","ph_E237",100,0.,250000.)
-        histos["ph_E237_ifLoose"] = ph_E237_ifLoose_h1
-        ph_E277_ifLoose_h1 = ROOT.TH1F("ph_E277_ifLoose_h1","ph_E277",100,0.,250000.)
-        histos["ph_E277_ifLoose"] = ph_E277_ifLoose_h1
-        ph_weta2_ifLoose_h1 = ROOT.TH1F("ph_weta2_ifLoose_h1","ph_weta2",100,0.,0.05)
-        histos["ph_weta2_ifLoose"] = ph_weta2_ifLoose_h1
-        ph_Ethad_ifLoose_h1 = ROOT.TH1F("ph_Ethad_ifLoose_h1","ph_Ethad",100,-5000.,30000.)
-        histos["ph_Ethad_ifLoose"] = ph_Ethad_ifLoose_h1
-        ph_Ethad1_ifLoose_h1 = ROOT.TH1F("ph_Ethad1_ifLoose_h1","ph_Ethad1",100,-5000.,20000.)
-        histos["ph_Ethad1_ifLoose"] = ph_Ethad1_ifLoose_h1
-        pass
-    elif n == 12 : ## histos for TDirectory Photons -> LoosePhotons -> TightVariables
-        ph_wstot_ifLoose_h1 = ROOT.TH1F("ph_wstot_ifLoose_h1","ph_wstot",100,-10000.,1000.)
-        histos["ph_wstot_ifLoose"] = ph_wstot_ifLoose_h1
-        ph_deltaEmax2_ifLoose_h1 = ROOT.TH1F("ph_deltaEmax2_ifLoose_h1","ph_deltaEmax2",100,0.,5.)
-        histos["ph_deltaEmax2_ifLoose"] = ph_deltaEmax2_ifLoose_h1
-        ph_emaxs1_ifLoose_h1 = ROOT.TH1F("ph_emaxs1_ifLoose_h1","ph_emaxs1",100,0.,40000.)
-        histos["ph_emaxs1_ifLoose"] = ph_emaxs1_ifLoose_h1
-        ph_deltaEs_ifLoose_h1 = ROOT.TH1F("ph_deltaEs_ifLoose_h1","ph_deltaEs",100,0.,5000.)
-        histos["ph_deltaEs_ifLoose"] = ph_deltaEs_ifLoose_h1
-        ph_cl_E_ifLoose_h1 = ROOT.TH1F("ph_cl_E_ifLoose_h1","ph_cl_E",100,0.,350000.)
-        histos["ph_cl_E_ifLoose"] = ph_cl_E_ifLoose_h1
-        ph_f1_ifLoose_h1 = ROOT.TH1F("ph_f1_ifLoose_h1","ph_f1",100,0.,1.)
-        histos["ph_f1_ifLoose"] = ph_f1_ifLoose_h1
-        pass
-    
-    elif n == 20 : ## histos for TDirectory Photons -> TightPhotons
-        ph_E_ifTight_h1 = ROOT.TH1F("ph_E_ifTight_h1","ph_E",100,0.,100000.)
-        histos["ph_E_ifTight"] = ph_E_ifTight_h1
-        ph_author_ifTight_h1 = ROOT.TH1F("ph_author_ifTight_h1","ph_author",17,0.,17.)
-        histos["ph_author_ifTight"] = ph_author_ifTight_h1
-        ph_eta_ifTight_h1 = ROOT.TH1F("ph_eta_ifTight_h1","ph_eta",10,-3.5,3.5)
-        histos["ph_eta_ifTight"] = ph_eta_ifTight_h1
-        ph_loose_ifTight_h1 = ROOT.TH1F("ph_loose_ifTight_h1","ph_loose",2,0.,2.)
-        histos["ph_loose_ifTight"] = ph_loose_ifTight_h1
-        ph_n_ifTight_h1 = ROOT.TH1F("ph_n_ifTight_h1","ph_n",20,0.,20.)
-        histos["ph_n_ifTight"] = ph_n_ifTight_h1
-        ph_pt_ifTight_h1 = ROOT.TH1F("ph_pt_ifTight_h1","ph_pt",100,0.,100000.)
-        histos["ph_pt_ifTight"] = ph_pt_ifTight_h1
-        ph_phi_ifTight_h1 = ROOT.TH1F("ph_phi_ifTight_h1","ph_phi",100,-3.5,3.5)
-        histos["ph_phi_ifTight"] = ph_phi_ifTight_h1
-        ph_tight_ifTight_h1 = ROOT.TH1F("ph_tight_ifTight_h1","ph_tight",2,0.,2.)
-        histos["ph_tight_ifTight"] = ph_tight_ifTight_h1
-        ph_tightIso_ifTight_h1 = ROOT.TH1F("ph_tightIso_ifTight_h1","ph_tightIso",2,0.,2.)
-        histos["ph_tightIso_ifTight"] = ph_tightIso_ifTight_h1
-        ph_isConv_ifTight_h1 = ROOT.TH1F("ph_isConv_ifTight_h1","ph_isConv",2,0.,2.)
-        histos["ph_isConv_ifTight"] = ph_isConv_ifTight_h1
-        ph_nConv_ifTight_h1 = ROOT.TH1F("ph_nConv_ifTight_h1","ph_nConv",10,0.,10.)
-        histos["ph_nConv_ifTight"] = ph_nConv_ifTight_h1
-        pass
-    elif n == 21 : ## histos for TDirectory Photons -> TightPhotons -> LooseVariables
-        ph_Es2_ifTight_h1 = ROOT.TH1F("ph_Es2_ifTight_h1","ph_Es2",100,0.,250000.)
-        histos["ph_Es2_ifTight"] = ph_Es2_ifTight_h1
-        ph_E233_ifTight_h1 = ROOT.TH1F("ph_E233_ifTight_h1","ph_E233",100,0.,250000.)
-        histos["ph_E233_ifTight"] = ph_E233_ifTight_h1
-        ph_E237_ifTight_h1 = ROOT.TH1F("ph_E237_ifTight_h1","ph_E237",100,0.,250000.)
-        histos["ph_E237_ifTight"] = ph_E237_ifTight_h1
-        ph_E277_ifTight_h1 = ROOT.TH1F("ph_E277_ifTight_h1","ph_E277",100,0.,250000.)
-        histos["ph_E277_ifTight"] = ph_E277_ifTight_h1
-        ph_weta2_ifTight_h1 = ROOT.TH1F("ph_weta2_ifTight_h1","ph_weta2",100,0.,0.05)
-        histos["ph_weta2_ifTight"] = ph_weta2_ifTight_h1
-        ph_Ethad_ifTight_h1 = ROOT.TH1F("ph_Ethad_ifTight_h1","ph_Ethad",100,-5000.,30000.)
-        histos["ph_Ethad_ifTight"] = ph_Ethad_ifTight_h1
-        ph_Ethad1_ifTight_h1 = ROOT.TH1F("ph_Ethad1_ifTight_h1","ph_Ethad1",100,-5000.,20000.)
-        histos["ph_Ethad1_ifTight"] = ph_Ethad1_ifTight_h1
-        pass
-    elif n == 22 : ## histos for TDirectory Photons -> TightPhotons -> TightVariables
-        ph_wstot_ifTight_h1 = ROOT.TH1F("ph_wstot_ifTight_h1","ph_wstot",100,-10000.,1000.)
-        histos["ph_wstot_ifTight"] = ph_wstot_ifTight_h1
-        ph_deltaEmax2_ifTight_h1 = ROOT.TH1F("ph_deltaEmax2_ifTight_h1","ph_deltaEmax2",100,0.,5.)
-        histos["ph_deltaEmax2_ifTight"] = ph_deltaEmax2_ifTight_h1
-        ph_emaxs1_ifTight_h1 = ROOT.TH1F("ph_emaxs1_ifTight_h1","ph_emaxs1",100,0.,40000.)
-        histos["ph_emaxs1_ifTight"] = ph_emaxs1_ifTight_h1
-        ph_deltaEs_ifTight_h1 = ROOT.TH1F("ph_deltaEs_ifTight_h1","ph_deltaEs",100,0.,5000.)
-        histos["ph_deltaEs_ifTight"] = ph_deltaEs_ifTight_h1
-        ph_cl_E_ifTight_h1 = ROOT.TH1F("ph_cl_E_ifTight_h1","ph_cl_E",100,0.,350000.)
-        histos["ph_cl_E_ifTight"] = ph_cl_E_ifTight_h1
-        ph_f1_ifTight_h1 = ROOT.TH1F("ph_f1_ifTight_h1","ph_f1",100,0.,1.)
-        histos["ph_f1_ifTight"] = ph_f1_ifTight_h1
-        pass
-    
-    elif n == 30 : ## histos for TDirectory Photons -> Author4Photons
-        ph_E_ifAuthor4_h1 = ROOT.TH1F("ph_E_ifAuthor4_h1","ph_E",100,0.,100000.)
-        histos["ph_E_ifAuthor4"] = ph_E_ifAuthor4_h1
-        ph_author_ifAuthor4_h1 = ROOT.TH1F("ph_author_ifAuthor4_h1","ph_author",17,0.,17.)
-        histos["ph_author_ifAuthor4"] = ph_author_ifAuthor4_h1
-        ph_eta_ifAuthor4_h1 = ROOT.TH1F("ph_eta_ifAuthor4_h1","ph_eta",10,-3.5,3.5)
-        histos["ph_eta_ifAuthor4"] = ph_eta_ifAuthor4_h1
-        ph_loose_ifAuthor4_h1 = ROOT.TH1F("ph_loose_ifAuthor4_h1","ph_loose",2,0.,2.)
-        histos["ph_loose_ifAuthor4"] = ph_loose_ifAuthor4_h1
-        ph_n_ifAuthor4_h1 = ROOT.TH1F("ph_n_ifAuthor4_h1","ph_n",20,0.,20.)
-        histos["ph_n_ifAuthor4"] = ph_n_ifAuthor4_h1
-        ph_pt_ifAuthor4_h1 = ROOT.TH1F("ph_pt_ifAuthor4_h1","ph_pt",100,0.,100000.)
-        histos["ph_pt_ifAuthor4"] = ph_pt_ifAuthor4_h1
-        ph_phi_ifAuthor4_h1 = ROOT.TH1F("ph_phi_ifAuthor4_h1","ph_phi",100,-3.5,3.5)
-        histos["ph_phi_ifAuthor4"] = ph_phi_ifAuthor4_h1
-        ph_tight_ifAuthor4_h1 = ROOT.TH1F("ph_tight_ifAuthor4_h1","ph_tight",2,0.,2.)
-        histos["ph_tight_ifAuthor4"] = ph_tight_ifAuthor4_h1
-        ph_tightIso_ifAuthor4_h1 = ROOT.TH1F("ph_tightIso_ifAuthor4_h1","ph_tightIso",2,0.,2.)
-        histos["ph_tightIso_ifAuthor4"] = ph_tightIso_ifAuthor4_h1
-        ph_isConv_ifAuthor4_h1 = ROOT.TH1F("ph_isConv_ifAuthor4_h1","ph_isConv",2,0.,2.)
-        histos["ph_isConv_ifAuthor4"] = ph_isConv_ifAuthor4_h1
-        ph_nConv_ifAuthor4_h1 = ROOT.TH1F("ph_nConv_ifAuthor4_h1","ph_nConv",10,0.,10.)
-        histos["ph_nConv_ifAuthor4"] = ph_nConv_ifAuthor4_h1
-        pass
-    elif n == 31 : ## histos for TDirectory Photons -> Author4Photons -> LooseVariables
-        ph_Es2_ifAuthor4_h1 = ROOT.TH1F("ph_Es2_ifAuthor4_h1","ph_Es2",100,0.,250000.)
-        histos["ph_Es2_ifAuthor4"] = ph_Es2_ifAuthor4_h1
-        ph_E233_ifAuthor4_h1 = ROOT.TH1F("ph_E233_ifAuthor4_h1","ph_E233",100,0.,250000.)
-        histos["ph_E233_ifAuthor4"] = ph_E233_ifAuthor4_h1
-        ph_E237_ifAuthor4_h1 = ROOT.TH1F("ph_E237_ifAuthor4_h1","ph_E237",100,0.,250000.)
-        histos["ph_E237_ifAuthor4"] = ph_E237_ifAuthor4_h1
-        ph_E277_ifAuthor4_h1 = ROOT.TH1F("ph_E277_ifAuthor4_h1","ph_E277",100,0.,250000.)
-        histos["ph_E277_ifAuthor4"] = ph_E277_ifAuthor4_h1
-        ph_weta2_ifAuthor4_h1 = ROOT.TH1F("ph_weta2_ifAuthor4_h1","ph_weta2",100,0.,0.05)
-        histos["ph_weta2_ifAuthor4"] = ph_weta2_ifAuthor4_h1
-        ph_Ethad_ifAuthor4_h1 = ROOT.TH1F("ph_Ethad_ifAuthor4_h1","ph_Ethad",100,-5000.,30000.)
-        histos["ph_Ethad_ifAuthor4"] = ph_Ethad_ifAuthor4_h1
-        ph_Ethad1_ifAuthor4_h1 = ROOT.TH1F("ph_Ethad1_ifAuthor4_h1","ph_Ethad1",100,-5000.,20000.)
-        histos["ph_Ethad1_ifAuthor4"] = ph_Ethad1_ifAuthor4_h1
-        pass
-    elif n == 32 : ## histos for TDirectory Photons -> Author4Photons -> TightVariables
-        ph_wstot_ifAuthor4_h1 = ROOT.TH1F("ph_wstot_ifAuthor4_h1","ph_wstot",100,-10000.,1000.)
-        histos["ph_wstot_ifAuthor4"] = ph_wstot_ifAuthor4_h1
-        ph_deltaEmax2_ifAuthor4_h1 = ROOT.TH1F("ph_deltaEmax2_ifAuthor4_h1","ph_deltaEmax2",100,0.,5.)
-        histos["ph_deltaEmax2_ifAuthor4"] = ph_deltaEmax2_ifAuthor4_h1
-        ph_emaxs1_ifAuthor4_h1 = ROOT.TH1F("ph_emaxs1_ifAuthor4_h1","ph_emaxs1",100,0.,40000.)
-        histos["ph_emaxs1_ifAuthor4"] = ph_emaxs1_ifAuthor4_h1
-        ph_deltaEs_ifAuthor4_h1 = ROOT.TH1F("ph_deltaEs_ifAuthor4_h1","ph_deltaEs",100,0.,5000.)
-        histos["ph_deltaEs_ifAuthor4"] = ph_deltaEs_ifAuthor4_h1
-        ph_cl_E_ifAuthor4_h1 = ROOT.TH1F("ph_cl_E_ifAuthor4_h1","ph_cl_E",100,0.,350000.)
-        histos["ph_cl_E_ifAuthor4"] = ph_cl_E_ifAuthor4_h1
-        ph_f1_ifAuthor4_h1 = ROOT.TH1F("ph_f1_ifAuthor4_h1","ph_f1",100,0.,1.)
-        histos["ph_f1_ifAuthor4"] = ph_f1_ifAuthor4_h1
-        pass
-    
-    elif n == 40 : ## histos for TDirectory Photons -> Author16Photons
-        ph_E_ifAuthor16_h1 = ROOT.TH1F("ph_E_ifAuthor16_h1","ph_E",100,0.,100000.)
-        histos["ph_E_ifAuthor16"] = ph_E_ifAuthor16_h1
-        ph_author_ifAuthor16_h1 = ROOT.TH1F("ph_author_ifAuthor16_h1","ph_author",17,0.,17.)
-        histos["ph_author_ifAuthor16"] = ph_author_ifAuthor16_h1
-        ph_eta_ifAuthor16_h1 = ROOT.TH1F("ph_eta_ifAuthor16_h1","ph_eta",10,-3.5,3.5)
-        histos["ph_eta_ifAuthor16"] = ph_eta_ifAuthor16_h1
-        ph_loose_ifAuthor16_h1 = ROOT.TH1F("ph_loose_ifAuthor16_h1","ph_loose",2,0.,2.)
-        histos["ph_loose_ifAuthor16"] = ph_loose_ifAuthor16_h1
-        ph_n_ifAuthor16_h1 = ROOT.TH1F("ph_n_ifAuthor16_h1","ph_n",20,0.,20.)
-        histos["ph_n_ifAuthor16"] = ph_n_ifAuthor16_h1
-        ph_pt_ifAuthor16_h1 = ROOT.TH1F("ph_pt_ifAuthor16_h1","ph_pt",100,0.,100000.)
-        histos["ph_pt_ifAuthor16"] = ph_pt_ifAuthor16_h1
-        ph_phi_ifAuthor16_h1 = ROOT.TH1F("ph_phi_ifAuthor16_h1","ph_phi",100,-3.5,3.5)
-        histos["ph_phi_ifAuthor16"] = ph_phi_ifAuthor16_h1
-        ph_tight_ifAuthor16_h1 = ROOT.TH1F("ph_tight_ifAuthor16_h1","ph_tight",2,0.,2.)
-        histos["ph_tight_ifAuthor16"] = ph_tight_ifAuthor16_h1
-        ph_tightIso_ifAuthor16_h1 = ROOT.TH1F("ph_tightIso_ifAuthor16_h1","ph_tightIso",2,0.,2.)
-        histos["ph_tightIso_ifAuthor16"] = ph_tightIso_ifAuthor16_h1
-        ph_isConv_ifAuthor16_h1 = ROOT.TH1F("ph_isConv_ifAuthor16_h1","ph_isConv",2,0.,2.)
-        histos["ph_isConv_ifAuthor16"] = ph_isConv_ifAuthor16_h1
-        ph_nConv_ifAuthor16_h1 = ROOT.TH1F("ph_nConv_ifAuthor16_h1","ph_nConv",10,0.,10.)
-        histos["ph_nConv_ifAuthor16"] = ph_nConv_ifAuthor16_h1
-        pass
-    elif n == 41 : ## histos for TDirectory Photons -> Author16Photons -> LooseVariables
-        ph_Es2_ifAuthor16_h1 = ROOT.TH1F("ph_Es2_ifAuthor16_h1","ph_Es2",100,0.,250000.)
-        histos["ph_Es2_ifAuthor16"] = ph_Es2_ifAuthor16_h1
-        ph_E233_ifAuthor16_h1 = ROOT.TH1F("ph_E233_ifAuthor16_h1","ph_E233",100,0.,250000.)
-        histos["ph_E233_ifAuthor16"] = ph_E233_ifAuthor16_h1
-        ph_E237_ifAuthor16_h1 = ROOT.TH1F("ph_E237_ifAuthor16_h1","ph_E237",100,0.,250000.)
-        histos["ph_E237_ifAuthor16"] = ph_E237_ifAuthor16_h1
-        ph_E277_ifAuthor16_h1 = ROOT.TH1F("ph_E277_ifAuthor16_h1","ph_E277",100,0.,250000.)
-        histos["ph_E277_ifAuthor16"] = ph_E277_ifAuthor16_h1
-        ph_weta2_ifAuthor16_h1 = ROOT.TH1F("ph_weta2_ifAuthor16_h1","ph_weta2",100,0.,0.05)
-        histos["ph_weta2_ifAuthor16"] = ph_weta2_ifAuthor16_h1
-        ph_Ethad_ifAuthor16_h1 = ROOT.TH1F("ph_Ethad_ifAuthor16_h1","ph_Ethad",100,-5000.,30000.)
-        histos["ph_Ethad_ifAuthor16"] = ph_Ethad_ifAuthor16_h1
-        ph_Ethad1_ifAuthor16_h1 = ROOT.TH1F("ph_Ethad1_ifAuthor16_h1","ph_Ethad1",100,-5000.,20000.)
-        histos["ph_Ethad1_ifAuthor16"] = ph_Ethad1_ifAuthor16_h1
-        pass
-    elif n == 42 : ## histos for TDirectory Photons -> Author16Photons -> TightVariables
-        ph_wstot_ifAuthor16_h1 = ROOT.TH1F("ph_wstot_ifAuthor16_h1","ph_wstot",100,-10000.,1000.)
-        histos["ph_wstot_ifAuthor16"] = ph_wstot_ifAuthor16_h1
-        ph_deltaEmax2_ifAuthor16_h1 = ROOT.TH1F("ph_deltaEmax2_ifAuthor16_h1","ph_deltaEmax2",100,0.,5.)
-        histos["ph_deltaEmax2_ifAuthor16"] = ph_deltaEmax2_ifAuthor16_h1
-        ph_emaxs1_ifAuthor16_h1 = ROOT.TH1F("ph_emaxs1_ifAuthor16_h1","ph_emaxs1",100,0.,40000.)
-        histos["ph_emaxs1_ifAuthor16"] = ph_emaxs1_ifAuthor16_h1
-        ph_deltaEs_ifAuthor16_h1 = ROOT.TH1F("ph_deltaEs_ifAuthor16_h1","ph_deltaEs",100,0.,5000.)
-        histos["ph_deltaEs_ifAuthor16"] = ph_deltaEs_ifAuthor16_h1
-        ph_cl_E_ifAuthor16_h1 = ROOT.TH1F("ph_cl_E_ifAuthor16_h1","ph_cl_E",100,0.,350000.)
-        histos["ph_cl_E_ifAuthor16"] = ph_cl_E_ifAuthor16_h1
-        ph_f1_ifAuthor16_h1 = ROOT.TH1F("ph_f1_ifAuthor16_h1","ph_f1",100,0.,1.)
-        histos["ph_f1_ifAuthor16"] = ph_f1_ifAuthor16_h1
-        pass
-    
-    elif n == 50 : ## histos for TDirectory Photons -> IsConvPhotons
-        ph_E_ifIsConv_h1 = ROOT.TH1F("ph_E_ifIsConv_h1","ph_E",100,0.,100000.)
-        histos["ph_E_ifIsConv"] = ph_E_ifIsConv_h1
-        ph_author_ifIsConv_h1 = ROOT.TH1F("ph_author_ifIsConv_h1","ph_author",17,0.,17.)
-        histos["ph_author_ifIsConv"] = ph_author_ifIsConv_h1
-        ph_eta_ifIsConv_h1 = ROOT.TH1F("ph_eta_ifIsConv_h1","ph_eta",10,-3.5,3.5)
-        histos["ph_eta_ifIsConv"] = ph_eta_ifIsConv_h1
-        ph_loose_ifIsConv_h1 = ROOT.TH1F("ph_loose_ifIsConv_h1","ph_loose",2,0.,2.)
-        histos["ph_loose_ifIsConv"] = ph_loose_ifIsConv_h1
-        ph_n_ifIsConv_h1 = ROOT.TH1F("ph_n_ifIsConv_h1","ph_n",20,0.,20.)
-        histos["ph_n_ifIsConv"] = ph_n_ifIsConv_h1
-        ph_pt_ifIsConv_h1 = ROOT.TH1F("ph_pt_ifIsConv_h1","ph_pt",100,0.,100000.)
-        histos["ph_pt_ifIsConv"] = ph_pt_ifIsConv_h1
-        ph_phi_ifIsConv_h1 = ROOT.TH1F("ph_phi_ifIsConv_h1","ph_phi",100,-3.5,3.5)
-        histos["ph_phi_ifIsConv"] = ph_phi_ifIsConv_h1
-        ph_tight_ifIsConv_h1 = ROOT.TH1F("ph_tight_ifIsConv_h1","ph_tight",2,0.,2.)
-        histos["ph_tight_ifIsConv"] = ph_tight_ifIsConv_h1
-        ph_tightIso_ifIsConv_h1 = ROOT.TH1F("ph_tightIso_ifIsConv_h1","ph_tightIso",2,0.,2.)
-        histos["ph_tightIso_ifIsConv"] = ph_tightIso_ifIsConv_h1
-        ph_isConv_ifIsConv_h1 = ROOT.TH1F("ph_isConv_ifIsConv_h1","ph_isConv",2,0.,2.)
-        histos["ph_isConv_ifIsConv"] = ph_isConv_ifIsConv_h1
-        ph_nConv_ifIsConv_h1 = ROOT.TH1F("ph_nConv_ifIsConv_h1","ph_nConv",10,0.,10.)
-        histos["ph_nConv_ifIsConv"] = ph_nConv_ifIsConv_h1
-        pass
-    elif n == 51 : ## histos for TDirectory Photons -> IsConvPhotons -> LooseVariables
-        ph_Es2_ifIsConv_h1 = ROOT.TH1F("ph_Es2_ifIsConv_h1","ph_Es2",100,0.,250000.)
-        histos["ph_Es2_ifIsConv"] = ph_Es2_ifIsConv_h1
-        ph_E233_ifIsConv_h1 = ROOT.TH1F("ph_E233_ifIsConv_h1","ph_E233",100,0.,250000.)
-        histos["ph_E233_ifIsConv"] = ph_E233_ifIsConv_h1
-        ph_E237_ifIsConv_h1 = ROOT.TH1F("ph_E237_ifIsConv_h1","ph_E237",100,0.,250000.)
-        histos["ph_E237_ifIsConv"] = ph_E237_ifIsConv_h1
-        ph_E277_ifIsConv_h1 = ROOT.TH1F("ph_E277_ifIsConv_h1","ph_E277",100,0.,250000.)
-        histos["ph_E277_ifIsConv"] = ph_E277_ifIsConv_h1
-        ph_weta2_ifIsConv_h1 = ROOT.TH1F("ph_weta2_ifIsConv_h1","ph_weta2",100,0.,0.05)
-        histos["ph_weta2_ifIsConv"] = ph_weta2_ifIsConv_h1
-        ph_Ethad_ifIsConv_h1 = ROOT.TH1F("ph_Ethad_ifIsConv_h1","ph_Ethad",100,-5000.,30000.)
-        histos["ph_Ethad_ifIsConv"] = ph_Ethad_ifIsConv_h1
-        ph_Ethad1_ifIsConv_h1 = ROOT.TH1F("ph_Ethad1_ifIsConv_h1","ph_Ethad1",100,-5000.,20000.)
-        histos["ph_Ethad1_ifIsConv"] = ph_Ethad1_ifIsConv_h1
-        pass
-    elif n == 52 : ## histos for TDirectory Photons -> IsConvPhotons -> TightVariables
-        ph_wstot_ifIsConv_h1 = ROOT.TH1F("ph_wstot_ifIsConv_h1","ph_wstot",100,-10000.,1000.)
-        histos["ph_wstot_ifIsConv"] = ph_wstot_ifIsConv_h1
-        ph_deltaEmax2_ifIsConv_h1 = ROOT.TH1F("ph_deltaEmax2_ifIsConv_h1","ph_deltaEmax2",100,0.,5.)
-        histos["ph_deltaEmax2_ifIsConv"] = ph_deltaEmax2_ifIsConv_h1
-        ph_emaxs1_ifIsConv_h1 = ROOT.TH1F("ph_emaxs1_ifIsConv_h1","ph_emaxs1",100,0.,40000.)
-        histos["ph_emaxs1_ifIsConv"] = ph_emaxs1_ifIsConv_h1
-        ph_deltaEs_ifIsConv_h1 = ROOT.TH1F("ph_deltaEs_ifIsConv_h1","ph_deltaEs",100,0.,5000.)
-        histos["ph_deltaEs_ifIsConv"] = ph_deltaEs_ifIsConv_h1
-        ph_cl_E_ifIsConv_h1 = ROOT.TH1F("ph_cl_E_ifIsConv_h1","ph_cl_E",100,0.,350000.)
-        histos["ph_cl_E_ifIsConv"] = ph_cl_E_ifIsConv_h1
-        ph_f1_ifIsConv_h1 = ROOT.TH1F("ph_f1_ifIsConv_h1","ph_f1",100,0.,1.)
-        histos["ph_f1_ifIsConv"] = ph_f1_ifIsConv_h1
-        pass
-    
-    elif n == 60 : ## histos for TDirectory Photons -> UnConvPhotons
-        ph_E_ifUnConv_h1 = ROOT.TH1F("ph_E_ifUnConv_h1","ph_E",100,0.,100000.)
-        histos["ph_E_ifUnConv"] = ph_E_ifUnConv_h1
-        ph_author_ifUnConv_h1 = ROOT.TH1F("ph_author_ifUnConv_h1","ph_author",17,0.,17.)
-        histos["ph_author_ifUnConv"] = ph_author_ifUnConv_h1
-        ph_eta_ifUnConv_h1 = ROOT.TH1F("ph_eta_ifUnConv_h1","ph_eta",10,-3.5,3.5)
-        histos["ph_eta_ifUnConv"] = ph_eta_ifUnConv_h1
-        ph_loose_ifUnConv_h1 = ROOT.TH1F("ph_loose_ifUnConv_h1","ph_loose",2,0.,2.)
-        histos["ph_loose_ifUnConv"] = ph_loose_ifUnConv_h1
-        ph_n_ifUnConv_h1 = ROOT.TH1F("ph_n_ifUnConv_h1","ph_n",20,0.,20.)
-        histos["ph_n_ifUnConv"] = ph_n_ifUnConv_h1
-        ph_pt_ifUnConv_h1 = ROOT.TH1F("ph_pt_ifUnConv_h1","ph_pt",100,0.,100000.)
-        histos["ph_pt_ifUnConv"] = ph_pt_ifUnConv_h1
-        ph_phi_ifUnConv_h1 = ROOT.TH1F("ph_phi_ifUnConv_h1","ph_phi",100,-3.5,3.5)
-        histos["ph_phi_ifUnConv"] = ph_phi_ifUnConv_h1
-        ph_tight_ifUnConv_h1 = ROOT.TH1F("ph_tight_ifUnConv_h1","ph_tight",2,0.,2.)
-        histos["ph_tight_ifUnConv"] = ph_tight_ifUnConv_h1
-        ph_tightIso_ifUnConv_h1 = ROOT.TH1F("ph_tightIso_ifUnConv_h1","ph_tightIso",2,0.,2.)
-        histos["ph_tightIso_ifUnConv"] = ph_tightIso_ifUnConv_h1
-        ph_isConv_ifUnConv_h1 = ROOT.TH1F("ph_isConv_ifUnConv_h1","ph_isConv",2,0.,2.)
-        histos["ph_isConv_ifUnConv"] = ph_isConv_ifUnConv_h1
-        ph_nConv_ifUnConv_h1 = ROOT.TH1F("ph_nConv_ifUnConv_h1","ph_nConv",10,0.,10.)
-        histos["ph_nConv_ifUnConv"] = ph_nConv_ifUnConv_h1
-        pass
-    elif n == 61 : ## histos for TDirectory Photons -> UnConvPhotons -> LooseVariables
-        ph_Es2_ifUnConv_h1 = ROOT.TH1F("ph_Es2_ifUnConv_h1","ph_Es2",100,0.,250000.)
-        histos["ph_Es2_ifUnConv"] = ph_Es2_ifUnConv_h1
-        ph_E233_ifUnConv_h1 = ROOT.TH1F("ph_E233_ifUnConv_h1","ph_E233",100,0.,250000.)
-        histos["ph_E233_ifUnConv"] = ph_E233_ifUnConv_h1
-        ph_E237_ifUnConv_h1 = ROOT.TH1F("ph_E237_ifUnConv_h1","ph_E237",100,0.,250000.)
-        histos["ph_E237_ifUnConv"] = ph_E237_ifUnConv_h1
-        ph_E277_ifUnConv_h1 = ROOT.TH1F("ph_E277_ifUnConv_h1","ph_E277",100,0.,250000.)
-        histos["ph_E277_ifUnConv"] = ph_E277_ifUnConv_h1
-        ph_weta2_ifUnConv_h1 = ROOT.TH1F("ph_weta2_ifUnConv_h1","ph_weta2",100,0.,0.05)
-        histos["ph_weta2_ifUnConv"] = ph_weta2_ifUnConv_h1
-        ph_Ethad_ifUnConv_h1 = ROOT.TH1F("ph_Ethad_ifUnConv_h1","ph_Ethad",100,-5000.,30000.)
-        histos["ph_Ethad_ifUnConv"] = ph_Ethad_ifUnConv_h1
-        ph_Ethad1_ifUnConv_h1 = ROOT.TH1F("ph_Ethad1_ifUnConv_h1","ph_Ethad1",100,-5000.,20000.)
-        histos["ph_Ethad1_ifUnConv"] = ph_Ethad1_ifUnConv_h1
-        pass
-    elif n == 62 : ## histos for TDirectory Photons -> UnConvPhotons -> TightVariables
-        ph_wstot_ifUnConv_h1 = ROOT.TH1F("ph_wstot_ifUnConv_h1","ph_wstot",100,-10000.,1000.)
-        histos["ph_wstot_ifUnConv"] = ph_wstot_ifUnConv_h1
-        ph_deltaEmax2_ifUnConv_h1 = ROOT.TH1F("ph_deltaEmax2_ifUnConv_h1","ph_deltaEmax2",100,0.,5.)
-        histos["ph_deltaEmax2_ifUnConv"] = ph_deltaEmax2_ifUnConv_h1
-        ph_emaxs1_ifUnConv_h1 = ROOT.TH1F("ph_emaxs1_ifUnConv_h1","ph_emaxs1",100,0.,40000.)
-        histos["ph_emaxs1_ifUnConv"] = ph_emaxs1_ifUnConv_h1
-        ph_deltaEs_ifUnConv_h1 = ROOT.TH1F("ph_deltaEs_ifUnConv_h1","ph_deltaEs",100,0.,5000.)
-        histos["ph_deltaEs_ifUnConv"] = ph_deltaEs_ifUnConv_h1
-        ph_cl_E_ifUnConv_h1 = ROOT.TH1F("ph_cl_E_ifUnConv_h1","ph_cl_E",100,0.,350000.)
-        histos["ph_cl_E_ifUnConv"] = ph_cl_E_ifUnConv_h1
-        ph_f1_ifUnConv_h1 = ROOT.TH1F("ph_f1_ifUnConv_h1","ph_f1",100,0.,1.)
-        histos["ph_f1_ifUnConv"] = ph_f1_ifUnConv_h1
-        pass
-    
-    else : ## ERROR
-        print "::: ERROR wrong flag :::"
-        pass
-    
-    return histos
-
-
-def defHistExpEle(n,histos) :
-    
-    if n == 0 : ## TDirectory Expert -> Electrons 
-        pass
-    elif n == 1 : ## TDirectory Expert -> Electrons -> Identification
-        el_origin_h1 = ROOT.TH1F("el_origin_h1","el_origin",50,0.,50.)
-        histos["el_origin"] = el_origin_h1
-        el_type_h1 = ROOT.TH1F("el_type_h1","el_type",20,0.,20.)
-        histos["el_type"] = el_type_h1
-        el_isEM_h1 = ROOT.TH1F("el_isEM_h1","el_isEM",2,0.,40000000000.)
-        histos["el_isEM"] = el_isEM_h1
-        el_author_h1 = ROOT.TH1F("el_author_h1","el_author",10,0.,10.)
-        histos["el_author"] = el_author_h1
-        el_loose_h1 = ROOT.TH1F("el_loose_h1","el_loose",2,0.,2.)
-        histos["el_loose"] = el_loose_h1
-        el_medium_h1 = ROOT.TH1F("el_medium_h1","el_medium",2,0.,2.)
-        histos["el_medium"] = el_medium_h1
-        el_tight_h1 = ROOT.TH1F("el_tight_h1","el_tight",2,0.,2.)
-        histos["el_tight"] = el_tight_h1
-        el_mediumIso_h1 = ROOT.TH1F("el_mediumIso_h1","el_mediumIso",2,0.,2.)
-        histos["el_mediumIso"] = el_mediumIso_h1
-        el_tightIso_h1 = ROOT.TH1F("el_tightIso_h1","el_tightIso",2,0.,2.)
-        histos["el_tightIso"] = el_tightIso_h1
-        #  el_tightNoIso_h1 = ROOT.TH1F("el_tightNoIso_h1","el_tightNoIso",2,0.,2.)
-        #  histos["el_tightNoIso"] = el_tightNoIso_h1
-        #  el_tightTRTNoIso_h1 = ROOT.TH1F("el_tightTRTNoIso_h1","el_tightTRTNoIso",2,0.,2.)
-        #  histos["el_tightTRTNoIso"] = el_tightTRTNoIso_h1
-        #  el_mediumNoIso_h1 = ROOT.TH1F("el_mediumNoIso_h1","el_mediumNoIso",2,0.,2.)
-        #  histos["el_mediumNoIso"] = el_mediumNoIso_h1
-        pass
-    
-    elif n == 2 : ## TDirectory Expert -> Electrons -> Kinematics
-        el_E_h1 = ROOT.TH1F("el_E_h1","el_E",100,0.,1800000.)
-        histos["el_E"] = el_E_h1
-        #  el_EF_E_h1 = ROOT.TH1F("el_EF_E_h1","el_EF_E",100,0.,1800000.)
-        #  histos["el_EF_E"] = el_EF_E_h1
-        el_Et_h1 = ROOT.TH1F("el_Et_h1","el_Et",100,0.,200000.)
-        histos["el_Et"] = el_Et_h1
-        #  el_EF_Et_h1 = ROOT.TH1F("el_EF_Et_h1","el_EF_Et",100,0.,200000.)
-        #  histos["el_EF_Et"] = el_EF_Et_h1
-        el_pt_h1 = ROOT.TH1F("el_pt_h1","el_pt",100,0.,200000.)
-        histos["el_pt"] = el_pt_h1
-        #  el_EF_pt_h1 = ROOT.TH1F("el_EF_pt_h1","el_EF_pt",100,0.,200000.)
-        #  histos["el_EF_pt"] = el_EF_pt_h1
-        el_m_h1 = ROOT.TH1F("el_m_h1","el_m",10,-1.,1.)
-        histos["el_m"] = el_m_h1
-        el_eta_h1 = ROOT.TH1F("el_eta_h1","el_eta",100,-5.,5.)
-        histos["el_eta"] = el_eta_h1
-        #  el_EF_eta_h1 = ROOT.TH1F("el_EF_eta_h1","el_EF_eta",100,-5.,5.)
-        #  histos["el_EF_eta"] = el_EF_eta_h1
-        el_phi_h1 = ROOT.TH1F("el_phi_h1","el_phi",100,-3.5,3.5)
-        histos["el_phi"] = el_phi_h1
-        #  el_EF_phi_h1 = ROOT.TH1F("el_EF_phi_h1","el_EF_phi",100,-3.5,3.5)
-        #  histos["el_EF_phi"] = el_EF_phi_h1
-        el_px_h1 = ROOT.TH1F("el_px_h1","el_px",100,-150000.,150000.)
-        histos["el_px"] = el_px_h1
-        el_py_h1 = ROOT.TH1F("el_py_h1","el_py",100,-150000.,150000.)
-        histos["el_py"] = el_py_h1
-        el_pz_h1 = ROOT.TH1F("el_pz_h1","el_pz",100,-2000000.,2000000.)
-        histos["el_pz"] = el_pz_h1
-        el_charge_h1 = ROOT.TH1F("el_charge_h1","el_charge",10,-1.1,1.1)
-        histos["el_charge"] = el_charge_h1
-        #  el_EF_charge_h1 = ROOT.TH1F("el_EF_charge_h1","el_EF_charge",10,-1.1,1.1)
-        #  histos["el_EF_charge"] = el_EF_charge_h1
-        el_author_h1 = ROOT.TH1F("el_author_h1","el_author",10,0.,10.)
-        histos["el_author"] = el_author_h1
-        pass
-    
-    elif n == 3 : ## TDirectory Expert -> Electrons -> Conversions
-        el_convFlag_h1 = ROOT.TH1F("el_convFlag_h1","el_convFlag",3,0.,3.)
-        histos["el_convFlag"] = el_convFlag_h1
-        el_isConv_h1 = ROOT.TH1F("el_isConv_h1","el_isConv",2,0.,2.)
-        histos["el_isConv"] = el_isConv_h1
-        pass
-    
-    elif n == 4 : ## TDirectory Expert -> Electrons -> EM
-        el_deltaEmax2_h1 = ROOT.TH1F("el_deltaEmax2_h1","el_deltaEmax2",100,-2.,8.)
-        histos["el_deltaEmax2"] = el_deltaEmax2_h1
-        el_Ethad_h1 = ROOT.TH1F("el_Ethad_h1","el_Ethad",100,-2000.,50000.)
-        histos["el_Ethad"] = el_Ethad_h1
-        #  el_EF_Ethad_h1 = ROOT.TH1F("el_EF_Ethad_h1","el_EF_Ethad",100,-2000.,50000.)
-        #  histos["el_EF_Ethad"] = el_EF_Ethad_h1
-        el_Ethad1_h1 = ROOT.TH1F("el_Ethad1_h1","el_Ethad1",100,-1000.,20000.)
-        histos["el_Ethad1"] = el_Ethad1_h1
-        #  el_EF_Ethad1_h1 = ROOT.TH1F("el_EF_Ethad1_h1","el_EF_Ethad1",100,-1000.,20000.)
-        #  histos["el_EF_Ethad1"] = el_EF_Ethad1_h1
-        el_f1_h1 = ROOT.TH1F("el_f1_h1","el_f1",100,-0.3,1.3)
-        histos["el_f1"] = el_f1_h1
-        #  el_EF_f1_h1 = ROOT.TH1F("el_EF_f1_h1","el_EF_f1",100,-0.3,1.3)
-        #  histos["el_EF_f1"] = el_EF_f1_h1
-        el_f1core_h1 = ROOT.TH1F("el_f1core_h1","el_f1core",100,-0.3,1.3)
-        histos["el_f1core"] = el_f1core_h1
-        el_Emins1_h1 = ROOT.TH1F("el_Emins1_h1","el_Emins1",100,-1000.,5000.)
-        histos["el_Emins1"] = el_Emins1_h1
-        #  el_EF_Emins1_h1 = ROOT.TH1F("el_EF_Emins1_h1","el_EF_Emins1",100,-1000.,5000.)
-        #  histos["el_EF_Emins1"] = el_EF_Emins1_h1
-        el_emaxs1_h1 = ROOT.TH1F("el_emaxs1_h1","el_emaxs1",100,0.,70000.)
-        histos["el_emaxs1"] = el_emaxs1_h1
-        el_Emax2_h1 = ROOT.TH1F("el_Emax2_h1","el_Emax2",100,-1000.,8000.)
-        histos["el_Emax2"] = el_Emax2_h1
-        #  el_EF_Emax2_h1 = ROOT.TH1F("el_EF_Emax2_h1","el_EF_Emax2",100,-1000.,8000.)
-        #  histos["el_EF_Emax2"] = el_EF_Emax2_h1
-        el_fside_h1 = ROOT.TH1F("el_fside_h1","el_fside",100,-1.,2.)
-        histos["el_fside"] = el_fside_h1
-        #  el_EF_fside_h1 = ROOT.TH1F("el_EF_fside_h1","el_EF_fside",100,-1.,2.)
-        #  histos["el_EF_fside"] = el_EF_fside_h1
-        el_ws3_h1 = ROOT.TH1F("el_ws3_h1","el_ws3",100,-100.,200.)
-        histos["el_ws3"] = el_ws3_h1
-        # el_EF_ws3_h1 = ROOT.TH1F("el_EF_ws3_h1","el_EF_ws3",100,-100.,200.)
-        # histos["el_EF_ws3"] = el_EF_ws3_h1
-        el_wstot_h1 = ROOT.TH1F("el_wstot_h1","el_wstot",100,0.,50.)
-        histos["el_wstot"] = el_wstot_h1
-        # el_EF_wstot_h1 = ROOT.TH1F("el_EF_wstot_h1","el_EF_wstot",100,0.,50.)
-        # histos["el_EF_wstot"] = el_EF_wstot_h1
-        el_deltaEs_h1 = ROOT.TH1F("el_deltaEs_h1","el_deltaEs",100,-1000.,6000.)
-        histos["el_deltaEs"] = el_deltaEs_h1
-        el_E233_h1 = ROOT.TH1F("el_E233_h1","el_E233",100,0.,500000.)
-        histos["el_E233"] = el_E233_h1
-        # el_EF_E233_h1 = ROOT.TH1F("el_EF_E233_h1","el_EF_E233",100,0.,500000.)
-        # histos["el_EF_E233"] = el_EF_E233_h1
-        el_E237_h1 = ROOT.TH1F("el_E237_h1","el_E237",100,0.,500000.)
-        histos["el_E237"] = el_E237_h1
-        # el_EF_E237_h1 = ROOT.TH1F("el_EF_E237_h1","el_EF_E237",100,0.,500000.)
-        # histos["el_EF_E237"] = el_EF_E237_h1
-        el_E277_h1 = ROOT.TH1F("el_E277_h1","el_E277",100,0.,500000.)
-        histos["el_E277"] = el_E277_h1
-        # el_EF_E277_h1 = ROOT.TH1F("el_EF_E277_h1","el_EF_E277",100,0.,500000.)
-        # histos["el_EF_E277"] = el_EF_E277_h1
-        el_weta2_h1 = ROOT.TH1F("el_weta2_h1","el_weta2",100,0.,1.)
-        histos["el_weta2"] = el_weta2_h1
-        # el_EF_weta2_h1 = ROOT.TH1F("el_EF_weta2_h1","el_EF_weta2",100,0.,1.)
-        # histos["el_EF_weta2"] = el_EF_weta2_h1
-        el_f3_h1 = ROOT.TH1F("el_f3_h1","el_f3",2,-999.5,-998.5)
-        histos["el_f3"] = el_f3_h1
-        el_f3core_h1 = ROOT.TH1F("el_f3core_h1","el_f3core",100,0.,1.)
-        histos["el_f3core"] = el_f3core_h1
-        el_rphiallcalo_h1 = ROOT.TH1F("el_rphiallcalo_h1","el_rphiallcalo",100,-1.,1.)
-        histos["el_rphiallcalo"] = el_rphiallcalo_h1
-        el_reta_h1 = ROOT.TH1F("el_reta_h1","el_reta",100,-1.,2.)
-        histos["el_reta"] = el_reta_h1
-        el_rphi_h1 = ROOT.TH1F("el_rphi_h1","el_rphi",100,0.,2.)
-        histos["el_rphi"] = el_rphi_h1
-        el_Es0_h1 = ROOT.TH1F("el_Es0_h1","el_Es0",100,0.,60000.)
-        histos["el_Es0"] = el_Es0_h1
-        el_Es1_h1 = ROOT.TH1F("el_Es1_h1","el_Es1",100,0.,120000.)
-        histos["el_Es1"] = el_Es1_h1
-        el_Es2_h1 = ROOT.TH1F("el_Es2_h1","el_Es2",100,0.,700000.)
-        histos["el_Es2"] = el_Es2_h1
-        el_Es3_h1 = ROOT.TH1F("el_Es3_h1","el_Es3",100,0.,50000.)
-        histos["el_Es3"] = el_Es3_h1
-        el_etas0_h1 = ROOT.TH1F("el_etas0_h1","el_etas0",100,-5.,5.)
-        histos["el_etas0"] = el_etas0_h1
-        el_etas1_h1 = ROOT.TH1F("el_etas1_h1","el_etas1",100,-5.,5.)
-        histos["el_etas1"] = el_etas1_h1
-        el_etas2_h1 = ROOT.TH1F("el_etas2_h1","el_etas2",100,-5.,5.)
-        histos["el_etas2"] = el_etas2_h1
-        el_etas3_h1 = ROOT.TH1F("el_etas3_h1","el_etas3",100,-5.,5.)
-        histos["el_etas3"] = el_etas3_h1
-        el_phis0_h1 = ROOT.TH1F("el_phis0_h1","el_phis0",100,-3.5,3.5)
-        histos["el_phis0"] = el_phis0_h1
-        el_phis1_h1 = ROOT.TH1F("el_phis1_h1","el_phis1",100,-3.5,3.5)
-        histos["el_phis1"] = el_phis1_h1
-        el_phis2_h1 = ROOT.TH1F("el_phis2_h1","el_phis2",100,-3.5,3.5)
-        histos["el_phis2"] = el_phis2_h1
-        el_phis3_h1 = ROOT.TH1F("el_phis3_h1","el_phis3",100,-3.5,3.5)
-        histos["el_phis3"] = el_phis3_h1
-        pass
-    elif n == 5 : ## TDirectory Expert -> Electrons -> Isolation
-        el_Etcone45_h1 = ROOT.TH1F("el_Etcone45_h1","el_Etcone45",3,-999.5,-998.5)
-        histos["el_Etcone45"] = el_Etcone45_h1
-        # el_EF_Etcone45_h1 = ROOT.TH1F("el_EF_Etcone45_h1","el_EF_Etcone45",3,-999.5,-998.5)
-        # histos["el_EF_Etcone45"] = el_EF_Etcone45_h1
-        el_Etcone20_h1 = ROOT.TH1F("el_Etcone20_h1","el_Etcone20",100,0.,80000.)
-        histos["el_Etcone20"] = el_Etcone20_h1
-        # el_EF_Etcone20_h1 = ROOT.TH1F("el_EF_Etcone20_h1","el_EF_Etcone20",100,0.,80000.)
-        # histos["el_EF_Etcone20"] = el_EF_Etcone20_h1
-        el_Etcone30_h1 = ROOT.TH1F("el_Etcone30_h1","el_Etcone30",100,0.,160000.)
-        histos["el_Etcone30"] = el_Etcone30_h1
-        # el_EF_Etcone30_h1 = ROOT.TH1F("el_EF_Etcone30_h1","el_EF_Etcone30",100,0.,160000.)
-        # histos["el_EF_Etcone30"] = el_EF_Etcone30_h1
-        el_Etcone40_h1 = ROOT.TH1F("el_Etcone40_h1","el_Etcone40",100,0.,160000.)
-        histos["el_Etcone40"] = el_Etcone40_h1
-        # el_EF_Etcone40_h1 = ROOT.TH1F("el_EF_Etcone40_h1","el_EF_Etcone40",100,0.,160000.)
-        # histos["el_EF_Etcone40"] = el_EF_Etcone40_h1
-        el_EtringnoisedR03sig2_h1 = ROOT.TH1F("el_EtringnoisedR03sig2_h1","el_EtringnoisedR03sig2",100,0.,160000.)
-        histos["el_EtringnoisedR03sig2"] = el_EtringnoisedR03sig2_h1
-        el_EtringnoisedR03sig3_h1 = ROOT.TH1F("el_EtringnoisedR03sig3_h1","el_EtringnoisedR03sig3",100,0.,160000.)
-        histos["el_EtringnoisedR03sig3"] = el_EtringnoisedR03sig3_h1
-        el_EtringnoisedR03sig4_h1 = ROOT.TH1F("el_EtringnoisedR03sig4_h1","el_EtringnoisedR03sig4",100,0.,160000.)
-        histos["el_EtringnoisedR03sig4"] = el_EtringnoisedR03sig4_h1
-        pass
-    elif n == 6 : ## TDirectory Expert -> Electrons -> Discriminants
-        el_isolationlikelihoodhqelectrons_h1 = ROOT.TH1F("el_isolationlikelihoodhqelectrons_h1","el_isolationlikelihoodhqelectrons",100,-200.,10.)
-        histos["el_isolationlikelihoodhqelectrons"] = el_isolationlikelihoodhqelectrons_h1
-        el_Hmatrix_h1 = ROOT.TH1F("el_Hmatrix_h1","el_Hmatrix",100,0.,2000.)
-        histos["el_Hmatrix"] = el_Hmatrix_h1
-        el_Hmatrix5_h1 = ROOT.TH1F("el_Hmatrix5_h1","el_Hmatrix5",100,0.,200000.)
-        histos["el_Hmatrix5"] = el_Hmatrix5_h1
-        el_isolationlikelihoodjets_h1 = ROOT.TH1F("el_isolationlikelihoodjets_h1","el_isolationlikelihoodjets",100,-200.,10.)
-        histos["el_isolationlikelihoodjets"] = el_isolationlikelihoodjets_h1
-        el_neuralnet_h1 = ROOT.TH1F("el_neuralnet_h1","el_neuralnet",100,0.,1.)
-        histos["el_neuralnet"] = el_neuralnet_h1
-        el_adaboost_h1 = ROOT.TH1F("el_adaboost_h1","el_adaboost",100,-400.,400.)
-        histos["el_adaboost"] = el_adaboost_h1
-        el_electronweight_h1 = ROOT.TH1F("el_electronweight_h1","el_electronweight",100,-60.,0.)
-        histos["el_electronweight"] = el_electronweight_h1
-        el_electronbgweight_h1 = ROOT.TH1F("el_electronbgweight_h1","el_electronbgweight",100,-40.,0.)
-        histos["el_electronbgweight"] = el_electronbgweight_h1
-        el_softeweight_h1 = ROOT.TH1F("el_softeweight_h1","el_softeweight",100,-20.,2.)
-        histos["el_sofetweight"] = el_softeweight_h1
-        el_softebgweight_h1 = ROOT.TH1F("el_softebgweight_h1","el_softebgweight",100,-20.,2.)
-        histos["el_softebgweight"] = el_softebgweight_h1
-        el_softeneuralnet_h1 = ROOT.TH1F("el_softeneuralnet_h1","el_softeneuralnet",3,-1.,1.)
-        histos["el_softeneuralnet"] = el_softeneuralnet_h1
-        pass
-    elif n == 7 : ## TDirectory Expert -> Electrons -> Pointing
-        el_zvertex_h1 = ROOT.TH1F("el_zvertex_h1","el_zvertex",100,-5000.,5000.)
-        histos["el_zvertex"] = el_zvertex_h1
-        # el_EF_zvertex_h1 = ROOT.TH1F("el_EF_zvertex_h1","el_EF_zvertex",100,-5000.,5000.)
-        # histos["el_EF_zvertex"] = el_EF_zvertex_h1
-        el_errz_h1 = ROOT.TH1F("el_errz_h1","el_errz",100,0.,100.)
-        histos["el_errz"] = el_errz_h1
-        # el_EF_errz_h1 = ROOT.TH1F("el_EF_errz_h1","el_EF_errz",100,0.,100.)
-        # histos["el_EF_errz"] = el_EF_errz_h1
-        el_etap_h1 = ROOT.TH1F("el_etap_h1","el_etap",100,-5.,5.)
-        histos["el_etap"] = el_etap_h1
-        el_depth_h1 = ROOT.TH1F("el_depth_h1","el_depth",100,1400.,1750.)
-        histos["el_depth"] = el_depth_h1
-        el_pos7_h1 = ROOT.TH1F("el_pos7_h1","el_pos7",100,-10.,10.)
-        histos["el_pos7"] = el_pos7_h1
-        pass 
-    elif n == 8 : ## TDirectory Expert -> Electrons -> ClusterKinematics
-        el_cl_E_h1 = ROOT.TH1F("el_cl_E_h1","el_cl_E",100,0.,1600000.)
-        histos["el_cl_E"] = el_cl_E_h1
-        el_cl_pt_h1 = ROOT.TH1F("el_cl_pt_h1","el_cl_pt",100,0.,120000.)
-        histos["el_cl_pt"] = el_cl_pt_h1
-        el_cl_eta_h1 = ROOT.TH1F("el_cl_eta_h1","el_cl_eta",100,-5.,5.)
-        histos["el_cl_eta"] = el_cl_eta_h1
-        el_cl_phi_h1 = ROOT.TH1F("el_cl_phi_h1","el_cl_phi",100,-3.5,3.5)
-        histos["el_cl_phi"] = el_cl_phi_h1
-        pass
-    elif n == 9 : ## TDirectory Expert -> Electrons -> L1
-        pass
-    elif n == 10 : ## TDirectory Expert -> Electrons -> L2
-        pass
-    elif n == 11 : ## TDirectory Expert -> Electrons -> EF
-        pass
-    elif n == 12 : ## TDirectory Expert -> Electrons -> Jet
-        el_jet_E_h1 = ROOT.TH1F("el_jet_E_h1","el_jet_E",100,0.,1600000.)
-        histos["el_jet_E"] = el_jet_E_h1
-        el_jet_pt_h1 = ROOT.TH1F("el_jet_pt_h1","el_jet_pt",100,0.,120000.)
-        histos["el_jet_pt"] = el_jet_pt_h1
-        el_jet_m_h1 = ROOT.TH1F("el_jet_m_h1","el_jet_m",100,0.,15000.)
-        histos["el_jet_m"] = el_jet_m_h1
-        el_jet_eta_h1 = ROOT.TH1F("el_jet_eta_h1","el_jet_eta",100,-5.,5.)
-        histos["el_jet_eta"] = el_jet_eta_h1
-        el_jet_phi_h1 = ROOT.TH1F("el_jet_phi_h1","el_jet_phi",100,-3.5,3.5)
-        histos["el_jet_phi"] = el_jet_phi_h1
-        el_jet_matched_h1 = ROOT.TH1F("el_jet_matched_h1","el_jet_matched",2,0.,2.)
-        histos["el_jet_matched"] = el_jet_matched_h1
-        el_jet_dr_h1 = ROOT.TH1F("el_jet_dr_h1","el_jet_dr",100,0.,1600000.)
-        histos["el_jet_dr"] = el_jet_dr_h1
-        el_jet_truth_dr_h1 = ROOT.TH1F("el_jet_truth_dr_h1","el_jet_truth_dr",100,0.,0.3)
-        histos["el_jet_truth_dr"] = el_jet_truth_dr_h1
-        el_jet_truth_E_h1 = ROOT.TH1F("el_jet_truth_E_h1","el_jet_truth_E",100,0.,1200000.)
-        histos["el_jet_truth_E"] = el_jet_truth_E_h1
-        el_jet_truth_pt_h1 = ROOT.TH1F("el_jet_truth_pt_h1","el_jet_truth_pt",100,0.,100000.)
-        histos["el_jet_truth_pt"] = el_jet_truth_pt_h1
-        el_jet_truth_m_h1 = ROOT.TH1F("el_jet_truth_m_h1","el_jet_truth_m",100,0.,15000.)
-        histos["el_jet_truth_m"] = el_jet_truth_m_h1
-        el_jet_truth_eta_h1 = ROOT.TH1F("el_jet_truth_eta_h1","el_jet_truth_eta",100,-5.,5.)
-        histos["el_jet_truth_eta"] = el_jet_truth_eta_h1
-        el_jet_truth_phi_h1 = ROOT.TH1F("el_jet_truth_phi_h1","el_jet_truth_phi",100,-3.5,3.5)
-        histos["el_jet_truth_phi"] = el_jet_truth_phi_h1
-        el_jet_truth_matched_h1 = ROOT.TH1F("el_jet_truth_matched_h1","el_jet_truth_matched",2,0.,2.)
-        histos["el_jet_truth_matched"] = el_jet_truth_matched_h1
-        pass
-    elif n == 13 : ## TDirectory Expert -> Electrons -> Track variables
-        el_convtrk1nBLHits_h1 = ROOT.TH1F("el_convtrk1nBLHits_h1","el_convtrk1nBLHits",3,0.,3.)
-        histos["el_convtrk1nBLHits"] = el_convtrk1nBLHits_h1
-        el_convtrk1nPixHits_h1 = ROOT.TH1F("el_convtrk1nPixHits_h1","el_convtrk1nPixHits",10,0.,10.)
-        histos["el_convtrk1nPixHits"] = el_convtrk1nPixHits_h1
-        el_convtrk1nSCTHits_h1 = ROOT.TH1F("el_convtrk1nSCTHits_h1","el_convtrk1nSCTHits",15,0.,15.)
-        histos["el_convtrk1nSCTHits"] = el_convtrk1nSCTHits_h1
-        el_convtrk1nTRTHits_h1 = ROOT.TH1F("el_convtrk1nTRTHits_h1","el_convtrk1nTRTHits",50,0.,50.)
-        histos["el_convtrk1nTRTHits"] = el_convtrk1nTRTHits_h1
-        el_convtrk2nBLHits_h1 = ROOT.TH1F("el_convtrk2nBLHits_h1","el_convtrk2nBLHits",3,0.,3.)
-        histos["el_convtrk2nBLHits"] = el_convtrk2nBLHits_h1
-        el_convtrk2nPixHits_h1 = ROOT.TH1F("el_convtrk2nPixHits_h1","el_convtrk2nPixHits",10,0.,10.)
-        histos["el_convtrk2nPixHits"] = el_convtrk2nPixHits_h1
-        el_convtrk2nSCTHits_h1 = ROOT.TH1F("el_convtrk2nSCTHits_h1","el_convtrk2nSCTHits",15,0.,15.)
-        histos["el_convtrk2nSCTHits"] = el_convtrk2nSCTHits_h1
-        el_convtrk2nTRTHits_h1 = ROOT.TH1F("el_convtrk2nTRTHits_h1","el_convtrk2nTRTHits",50,0.,50.)
-        histos["el_convtrk2nTRTHits"] = el_convtrk2nTRTHits_h1
-        el_convvtxx_h1 = ROOT.TH1F("el_convvtxx_h1","el_convvtxx",100,-800.,800.)
-        histos["el_convvtxx"] = el_convvtxx_h1
-        el_convvtxy_h1 = ROOT.TH1F("el_convvtxy_h1","el_convvtxy",100,-800.,800.)
-        histos["el_convvtxy"] = el_convvtxy_h1
-        el_convvtxz_h1 = ROOT.TH1F("el_convvtxz_h1","el_convvtxz",100,-2000.,2000.)
-        histos["el_convvtxz"] = el_convvtxz_h1
-        el_zconv_h1 = ROOT.TH1F("el_zconv_h1","el_zconv",100,-2000.,2000.)
-        histos["el_zconv"] = el_zconv_h1
-        el_Rconv_h1 = ROOT.TH1F("el_Rconv_h1","el_Rconv",100,0.,900.)
-        histos["el_Rconv"] = el_Rconv_h1
-        el_ptconv_h1 = ROOT.TH1F("el_ptconv_h1","el_ptconv",100,0.,100000.)
-        histos["el_ptconv"] = el_ptconv_h1
-        el_pt1conv_h1 = ROOT.TH1F("el_pt1conv_h1","el_pt1conv",100,0.,100000.)
-        histos["el_pt1conv"] = el_pt1conv_h1
-        el_pt2conv_h1 = ROOT.TH1F("el_pt2conv_h1","el_pt2conv",100,0.,10000.)
-        histos["el_pt2conv"] = el_pt2conv_h1
-        el_pzconv_h1 = ROOT.TH1F("el_pzconv_h1","el_pzconv",100,-20000.,20000.)
-        histos["el_pzconv"] = el_pzconv_h1
-        el_hasconv_h1 = ROOT.TH1F("el_hasconv_h1","el_hasconv",2,0.,2.)
-        histos["el_hasconv"] = el_hasconv_h1
-        el_convvtxchi2_h1 = ROOT.TH1F("el_convvtxchi2_h1","el_convvtxchi2",100,0.,200.)
-        histos["el_convvtxchi2"] = el_convvtxchi2_h1
-        el_convanglematch_h1 = ROOT.TH1F("el_convanglematch_h1","el_convanglematch",10,-1000.,2.)
-        histos["el_convanglematch"] = el_convanglematch_h1
-        el_convtrackmatch_h1 = ROOT.TH1F("el_convtrackmatch_h1","el_convtrackmatch",10,-1000.,2.)
-        histos["el_convtrackmatch"] = el_convtrackmatch_h1
-
-        el_hastrack_h1 = ROOT.TH1F("el_hastrack_h1","el_hastrack",2,0.,2.)
-        histos["el_hastrack"] = el_hastrack_h1
-        el_nBLHits_h1 = ROOT.TH1F("el_nBLHits_h1","el_nBLHits",4,0.,4.)
-        histos["el_nBLHits"] = el_nBLHits_h1
-        el_nPixHits_h1 = ROOT.TH1F("el_nPixHits_h1","el_nPixHits",9,0.,9.)
-        histos["el_nPixHits"] = el_nPixHits_h1
-        el_nSCTHits_h1 = ROOT.TH1F("el_nSCTHits_h1","el_nSCTHits",15,0.,15.)
-        histos["el_nSCTHits"] = el_nSCTHits_h1
-        el_nTRTHits_h1 = ROOT.TH1F("el_nTRTHits_h1","el_nTRTHits",50,0.,50.)
-        histos["el_nTRTHits"] = el_nTRTHits_h1
-        el_nTRTHighTHits_h1 = ROOT.TH1F("el_nTRTHighTHits_h1","el_nTRTHighTHits",25,0.,25.)
-        histos["el_nTRTHighTHits"] = el_nTRTHighTHits_h1
-        el_nBLSharedHits_h1 = ROOT.TH1F("el_nBLSharedHits_h1","el_nBLSharedHits",3,0.,3.)
-        histos["el_nBLSharedHits"] = el_nBLSharedHits_h1
-        el_nPixSharedHits_h1 = ROOT.TH1F("el_nPixSharedHits_h1","el_nPixSharedHits",4,0.,4.)
-        histos["el_nPixSharedHits"] = el_nPixSharedHits_h1
-        el_nPixHoles_h1 = ROOT.TH1F("el_nPixHoles_h1","el_nPixHoles",5,-2.,3.)
-        histos["el_nPixHoles"] = el_nPixHoles_h1
-        el_nSCTSharedHits_h1 = ROOT.TH1F("el_nSCTSharedHits_h1","el_nSCTSharedHits",6,0.,6.)
-        histos["el_nSCTSharedHits"] = el_nSCTSharedHits_h1
-        el_nSCTHoles_h1 = ROOT.TH1F("el_nSCTHoles_h1","el_nSCTHoles",5,-2.,3.)
-        histos["el_nSCTHoles"] = el_nSCTHoles_h1
-        el_nTRTOutliers_h1 = ROOT.TH1F("el_nTRTOutliers_h1","el_nTRTOutliers",50,0.,50.)
-        histos["el_nTRTOutliers"] = el_nTRTOutliers_h1
-        el_nTRTHighTOutliers_h1 = ROOT.TH1F("el_nTRTHighTOutliers_h1","el_nTRTHighTOutliers",25,0.,25.)
-        histos["el_nTRTHighTOutliers"] = el_nTRTHighTOutliers_h1
-        el_nSiHits_h1 = ROOT.TH1F("el_nSiHits_h1","el_nSiHits",2,0.,20.)
-        histos["el_nSiHits"] = el_nSiHits_h1
-        # el_EF_nSiHits_h1 = ROOT.TH1F("el_EF_nSiHits_h1","el_EF_nSiHits",20.,0.,20.)
-        # histos["el_EF_nSiHits"] = el_EF_nSiHits_h1
-        pass
-    elif n == 14 : ## TDirectory Expert -> Electrons -> Rawcl
-        el_rawcl_E_h1 = ROOT.TH1F("el_rawcl_E_h1","el_rawcl_E",100,0.,300000.)
-        histos["el_rawcl_E"] = el_rawcl_E_h1
-        el_rawcl_pt_h1 = ROOT.TH1F("el_rawcl_pt_h1","el_rawcl_pt",100,0.,80000.)
-        histos["el_rawcl_pt"] = el_rawcl_pt_h1
-        el_rawcl_eta_h1 = ROOT.TH1F("el_rawcl_eta_h1","el_rawcl_eta",100,-3.,3.)
-        histos["el_rawcl_eta"] = el_rawcl_eta_h1
-        el_rawcl_phi_h1 = ROOT.TH1F("el_rawcl_phi_h1","el_rawcl_phi",100,-3.5,3.5)
-        histos["el_rawcl_phi"] = el_rawcl_phi_h1
-        el_rawcl_Es0_h1 = ROOT.TH1F("el_rawcl_Es0_h1","el_rawcl_Es0",100,0.,25000.)
-        histos["el_rawcl_Es0"] = el_rawcl_Es0_h1
-        el_rawcl_etas0_h1 = ROOT.TH1F("el_rawcl_etas0_h1","el_rawcl_etas0",100,-3.,3.)
-        histos["el_rawcl_etas0"] = el_rawcl_etas0_h1
-        el_rawcl_phis0_h1 = ROOT.TH1F("el_rawcl_phis0_h1","el_rawcl_phis0",100,3.5,3.5)
-        histos["el_rawcl_phis0"] = el_rawcl_phis0_h1
-        el_rawcl_Es1_h1 = ROOT.TH1F("el_rawcl_Es1_h1","el_rawcl_Es1",100,0.,25000.)
-        histos["el_rawcl_Es1"] = el_rawcl_Es1_h1
-        el_rawcl_etas1_h1 = ROOT.TH1F("el_rawcl_etas1_h1","el_rawcl_etas1",100,-3.,3.)
-        histos["el_rawcl_etas1"] = el_rawcl_etas1_h1
-        el_rawcl_phis1_h1 = ROOT.TH1F("el_rawcl_phis1_h1","el_rawcl_phis1",100,3.5,3.5)
-        histos["el_rawcl_phis1"] = el_rawcl_phis1_h1
-        el_rawcl_Es2_h1 = ROOT.TH1F("el_rawcl_Es2_h1","el_rawcl_Es2",100,0.,25000.)
-        histos["el_rawcl_Es2"] = el_rawcl_Es2_h1
-        el_rawcl_etas2_h1 = ROOT.TH1F("el_rawcl_etas2_h1","el_rawcl_etas2",100,-3.,3.)
-        histos["el_rawcl_etas2"] = el_rawcl_etas2_h1
-        el_rawcl_phis2_h1 = ROOT.TH1F("el_rawcl_phis2_h1","el_rawcl_phis2",100,3.5,3.5)
-        histos["el_rawcl_phis2"] = el_rawcl_phis2_h1
-        el_rawcl_Es3_h1 = ROOT.TH1F("el_rawcl_Es3_h1","el_rawcl_Es3",100,0.,25000.)
-        histos["el_rawcl_Es3"] = el_rawcl_Es3_h1
-        el_rawcl_etas3_h1 = ROOT.TH1F("el_rawcl_etas3_h1","el_rawcl_etas3",100,-3.,3.)
-        histos["el_rawcl_etas3"] = el_rawcl_etas3_h1
-        el_rawcl_phis3_h1 = ROOT.TH1F("el_rawcl_phis3_h1","el_rawcl_phis3",100,3.5,3.5)
-        histos["el_rawcl_phis3"] = el_rawcl_phis3_h1
-        pass
-    elif n == 15 : ## TDirectory Expert -> Electrons -> Vertex
-        el_vertx_h1 = ROOT.TH1F("el_vertx_h1","el_vertx",100,-0.1,0.25)
-        histos["el_vertx"] = el_vertx_h1
-        el_verty_h1 = ROOT.TH1F("el_verty_h1","el_verty",100,0.,1.3)
-        histos["el_verty"] = el_verty_h1
-        el_vertz_h1 = ROOT.TH1F("el_vertz_h1","el_vertz",100,-200.,250.)
-        histos["el_vertz"] = el_vertz_h1
-        pass
-    elif n == 16 : ## TDirectory Expert -> Electrons -> Brem
-        pass
-    elif n == 17 : ## TDirectory Expert -> Electrons -> MC
-        el_truth_E_h1 = ROOT.TH1F("el_truth_E_h1","el_truth_E",100,0.,1000000.)
-        histos["el_truth_E"] = el_truth_E_h1
-        el_truth_pt_h1 = ROOT.TH1F("el_truth_pt_h1","el_truth_pt",100,0.,100000.)
-        histos["el_truth_pt"] = el_truth_pt_h1
-        el_truth_eta_h1 = ROOT.TH1F("el_truth_eta_h1","el_truth_eta",100,-5.,5.)
-        histos["el_truth_eta"] = el_truth_eta_h1
-        el_truth_phi_h1 = ROOT.TH1F("el_truth_phi_h1","el_truth_phi",100,-3.5,3.5)
-        histos["el_truth_phi"] = el_truth_phi_h1
-        el_truth_type_h1 = ROOT.TH1F("el_truth_type_h1","el_truth_type",100,-3300.,3300.)
-        histos["el_truth_type"] = el_truth_type_h1
-        el_truth_mothertype_h1 = ROOT.TH1F("el_truth_mothertype_h1","el_truth_mothertype",100,-2000.,2000.)
-        histos["el_truth_mothertype"] = el_truth_mothertype_h1
-        el_truth_barcode_h1 = ROOT.TH1F("el_truth_barcode_h1","el_truth_barcode",100,0.,100.)
-        histos["el_truth_barcode"] = el_truth_barcode_h1
-        el_truth_motherbarcode_h1 = ROOT.TH1F("el_truth_motherbarcode_h1","el_truth_motherbarcode",100,0.,100.)
-        histos["el_truth_motherbarcode"] = el_truth_motherbarcode_h1
-        el_truth_hasHardBrem_h1 = ROOT.TH1F("el_truth_hasHardBrem_h1","el_truth_hasHardBrem",2,0.,2.)
-        histos["el_truth_hasHardBrem"] = el_truth_hasHardBrem_h1
-        el_truth_status_h1 = ROOT.TH1F("el_truth_status_h1","el_truth_status",2,0.,2.)
-        histos["el_truth_status"] = el_truth_status_h1
-        el_truth_matched_h1 = ROOT.TH1F("el_truth_matched_h1","el_truth_matched",2,0.,2.)
-        histos["el_truth_matched"] = el_truth_matched_h1
-        pass
-    elif n == 18 : ## TDirectory Expert -> Electrons -> TrackMatch
-        el_etacorrmag_h1 = ROOT.TH1F("el_etacorrmag_h1","el_etacorrmag",3,-999.5,-998.5)
-        histos["el_etacorrmag"] = el_etacorrmag_h1
-        # el_EF_etacorrmag_h1 = ROOT.TH1F("el_EF_etacorrmag_h1","el_EF_etacorrmag",3,-999.5,-998.5)
-        # histos["el_EF_etacorrmag"] = el_EF_etacorrmag_h1
-        el_deltaeta1_h1 = ROOT.TH1F("el_deltaeta1_h1","el_deltaeta1",100,-1.5,1.5)
-        histos["el_deltaeta1"] = el_deltaeta1_h1
-        # el_EF_deltaeta1_h1 = ROOT.TH1F("el_EF_deltaeta1_h1","el_EF_deltaeta1",100,-1.5,1.5)
-        # histos["el_EF_deltaeta1"] = el_EF_deltaeta1_h1
-        el_deltaeta2_h1 = ROOT.TH1F("el_deltaeta2_h1","el_deltaeta2",100,-1.5,1.5)
-        histos["el_deltaeta2"] = el_deltaeta2_h1
-        # el_EF_deltaeta2_h1 = ROOT.TH1F("el_EF_deltaeta2_h1","el_EF_deltaeta2",100,-1.5,1.5)
-        # histos["el_EF_deltaeta2"] = el_EF_deltaeta2_h1
-        el_deltaphi2_h1 = ROOT.TH1F("el_deltaphi2_h1","el_deltaphi2",100,-0.1,0.06)
-        histos["el_deltaphi2"] = el_deltaphi2_h1
-        # el_EF_deltaphi2_h1 = ROOT.TH1F("el_EF_deltaphi2_h1","el_EF_deltaphi2",100,-0.1,0.06)
-        # histos["el_EF_deltaphi2"] = el_EF_deltaphi2_h1
-        el_deltaphiRescaled_h1 = ROOT.TH1F("el_deltaphiRescaled_h1","el_deltaphiRescaled",100,-0.5,1.5)
-        histos["el_deltaphiRescaled"] = el_deltaphiRescaled_h1
-        pass
-    elif n == 19 : ## TDirectory Expert -> Electrons -> EMTrackFit
-        el_refittedTrack_n_h1 = ROOT.TH1F("el_refittedTrack_n_h1","el_refittedTrack_n",3,0.,3.)
-        histos["el_refittedTrack_n"] = el_refittedTrack_n_h1
-        el_refittedtrackcovd0_h1 = ROOT.TH1F("el_refittedtrackcovd0_h1","el_refittedtrackcovd0",100,0.,30.)
-        histos["el_refittedtrackcovd0"] = el_refittedtrackcovd0_h1
-        el_refittedtrackcovd0phi_h1 = ROOT.TH1F("el_refittedtrackcovd0phi_h1","el_refittedtrackcovd0phi",100,-0.18,0.)
-        histos["el_refittedtrackcovd0phi"] = el_refittedtrackcovd0phi_h1
-        el_refittedtrackcovd0qoverp_h1 = ROOT.TH1F("el_refittedtrackcovd0qoverp_h1","el_refittedtrackcovd0qoverp",100,-0.00018,0.)
-        histos["el_refittedtrackcovd0qoverp"] = el_refittedtrackcovd0qoverp_h1
-        el_refittedtrackcovd0theta_h1 = ROOT.TH1F("el_refittedtrackcovd0theta_h1","el_refittedtrackcovd0theta",100,-0.006,0.002)
-        histos["el_refittedtrackcovd0theta"] = el_refittedtrackcovd0theta_h1
-        el_refittedtrackcovd0z0_h1 = ROOT.TH1F("el_refittedtrackcovd0z0_h1","el_refittedtrackcovd0z0",100,-15.,20.)
-        histos["el_refittedtrackcovd0z0"] = el_refittedtrackcovd0z0_h1
-        el_refittedtrackcovphi_h1 = ROOT.TH1F("el_refittedtrackcovphi_h1","el_refittedtrackcovphi",100,0.,0.001)
-        histos["el_refittedtrackcovphi"] = el_refittedtrackcovphi_h1
-        el_refittedtrackcovphiqoverp_h1 = ROOT.TH1F("el_refittedtrackcovphiqoverp_h1","el_refittedtrackcovphiqoverp",100,0.,0.000001)
-        histos["el_refittedtrackcovphiqoverp"] = el_refittedtrackcovphiqoverp_h1
-        el_refittedtrackcovphitheta_h1 = ROOT.TH1F("el_refittedtrackcovphitheta_h1","el_refittedtrackcovphitheta",100,-0.000001,0.0000025)
-        histos["el_refittedtrackcovphitheta"] = el_refittedtrackcovphitheta_h1
-        el_refittedtrackcovqoverp_h1 = ROOT.TH1F("el_refittedtrackcovqoverp_h1","el_refittedtrackcovqoverp",100,0.,0.000000004)
-        histos["el_refittedtrackcovqoverp"] = el_refittedtrackcovqoverp_h1
-        el_refittedtrackcovtheta_h1 = ROOT.TH1F("el_refittedtrackcovtheta_h1","el_refittedtrackcovtheta",100,0.,0.00005)
-        histos["el_refittedtrackcovtheta"] = el_refittedtrackcovtheta_h1
-        el_refittedtrackcovthetaqoverp_h1 = ROOT.TH1F("el_refittedtrackcovthetaqoverp_h1","el_refittedtrackcovthetaqoverp",100,-0.00000002,0.00000004)
-        histos["el_refittedtrackcovthetaqoverp"] = el_refittedtrackcovthetaqoverp_h1
-        el_refittedtrackcovz0_h1 = ROOT.TH1F("el_refittedtrackcovz0_h1","el_refittedtrackcovz0",100,0.,300.)
-        histos["el_refittedtrackcovz0"] = el_refittedtrackcovz0_h1
-        el_refittedtrackcovz0phi_h1 = ROOT.TH1F("el_refittedtrackcovz0phi_h1","el_refittedtrackcovz0phi",100,-0.1,0.06)
-        histos["el_refittedtrackcovz0phi"] = el_refittedtrackcovz0phi_h1
-        el_refittedtrackcovz0qoverp_h1 = ROOT.TH1F("el_refittedtrackcovz0qoverp_h1","el_refittedtrackcovz0qoverp",100,-0.00008,0.0001)
-        histos["el_refittedtrackcovz0qoverp"] = el_refittedtrackcovz0qoverp_h1
-        el_refittedtrackcovz0theta_h1 = ROOT.TH1F("el_refittedtrackcovz0theta_h1","el_refittedtrackcovz0theta",100,0.,0.2)
-        histos["el_refittedtrackcovz0theta"] = el_refittedtrackcovz0theta_h1
-        pass
-    elif n == 20 : ## TDirectory Expert -> Electrons -> Forward
-        el_firstEdens_h1 = ROOT.TH1F("el_firstEdens_h1","el_firstEdens",100,0.,8.)
-        histos["el_firstEdens"] = el_firstEdens_h1
-        el_cellmaxfrac_h1 = ROOT.TH1F("el_cellmaxfrac_h1","el_cellmaxfrac",100,0.,1.)
-        histos["el_cellmaxfrac"] = el_cellmaxfrac_h1
-        el_longitudinal_h1 = ROOT.TH1F("el_longitudinal_h1","el_longitudinal",100,0.,1.)
-        histos["el_longitudinal"] = el_longitudinal_h1
-        el_secondlambda_h1 = ROOT.TH1F("el_secondlambda_h1","el_secondlambda",100,0.,100000.)
-        histos["el_secondlambda"] = el_secondlambda_h1
-        el_lateral_h1 = ROOT.TH1F("el_lateral_h1","el_lateral",100,0.,1.)
-        histos["el_lateral"] = el_lateral_h1
-        el_secondR_h1 = ROOT.TH1F("el_secondR_h1","el_secondR",100,0.,40000.)
-        histos["el_secondR"] = el_secondR_h1
-        el_centerlambda_h1 = ROOT.TH1F("el_centerlambda_h1","el_centerlambda",100,0.,2000.)
-        histos["el_centerlambda"] = el_centerlambda_h1
-        pass
-    else : ## ERROR
-        print "::: ERROR wrong flag :::"
-        pass
-        
-    return histos
-
-def defHistExpPho(n,histos) :
-    
-    if n == 0 : ## TDirectory Expert -> Photons
-        pass
-    elif n == 1 : ## TDirectory Expert -> Photons -> Identification
-        pass
-    elif n == 2 : ## TDirectory Expert -> Photons -> Kinematics
-        pass
-    elif n == 3 : ## TDirectory Expert -> Photons -> Conversion
-        pass
-    elif n == 4 : ## TDirectory Expert -> Photons -> EM
-        pass
-    elif n == 5 : ## TDirectory Expert -> Photons -> Isolation
-        pass
-    elif n == 6 : ## TDirectory Expert -> Photons -> Discriminants
-        pass
-    elif n == 7 : ## TDirectory Expert -> Photons -> Pointing
-        pass
-    elif n == 8 : ## TDirectory Expert -> Photons -> ClusterKinematics
-        pass
-    elif n == 9 : ## TDirectory Expert -> Photons -> L1
-        pass
-    elif n == 10 : ## TDirectory Expert -> Photons -> L2
-        pass
-    elif n == 11 : ## TDirectory Expert -> Photons -> EF
-        pass
-    elif n == 12 : ## TDirectory Expert -> Photons -> Jet
-        pass
-    elif n == 13 : ## TDirectory Expert -> Photons -> Track
-        pass
-    elif n == 14 : ## TDirectory Expert -> Photons -> Rawcl
-        pass
-    elif n == 15 : ## TDirectory Expert -> Photons -> Topo
-        pass
-    elif n == 16 : ## TDirectory Expert -> Photons -> MC
-        pass
-    else : ## ERROR
-        print "::: ERROR wrong flag :::"
-        pass
-        
-    return histos
-
-def defHistExpMu(n,histos) :
-    
-    if n == 0 : ## TDirectory Expert -> Muons
-        pass
-    elif n == 1 : ## TDirectory Expert -> Muons -> Kinematics
-        pass
-    elif n == 2 : ## TDirectory Expert -> Muons -> Algorithms
-        pass
-    elif n == 3 : ## TDirectory Expert -> Muons -> EnergyLossCalo
-        pass
-    elif n == 4 : ## TDirectory Expert -> Muons -> nHitsSummary
-        pass
-    elif n == 5 : ## TDirectory Expert -> Muons -> Isolation
-        pass
-    elif n == 6 : ## TDirectory Expert -> Muons -> TrackPattern
-        pass
-    elif n == 7 : ## TDirectory Expert -> Muons -> TrackParameters
-        pass
-    elif n == 8 : ## TDirectory Expert -> Muons -> TrackQuality
-        pass
-    elif n == 9 : ## TDirectory Expert -> Muons -> L1
-        pass
-    elif n == 10 : ## TDirectory Expert -> Muons -> L2
-        pass
-    elif n == 11 : ## TDirectory Expert -> Muons -> EF
-        pass
-    elif n == 12 : ## TDirectory Expert -> Muons -> MC
-        pass
-    else : ## ERROR
-        print "::: ERROR wrong flag :::"
-        pass
-        
-    return histos
-
-def defHistExpOther(n,histos) :
-    
-
-    if n == 0 : ## TDirectory Expert -> Other -> MC
-        pass
-    elif n == 1 : ## TDirectory Expert -> Other -> GlobalEvent
-        pass
-    elif n == 2 : ## TDirectory Expert -> Other -> Jet
-        pass
-    elif n == 3 : ## TDirectory Expert -> Other -> Met
-        pass
-    elif n == 4 : ## TDirectory Expert -> Other -> MinimumBias
-        pass
-    elif n == 5 : ## TDirectory Expert -> Other -> Trigger
-        pass
-    else : ## ERROR
-        print "::: ERROR wrong flag :::"
-        pass
-        
-    return histos
-
-##############################################
-## Get the branch and call Filling function ##
-##############################################
-
-def branchEle(tree,histoEleAll,histoEleAllLoose,histoEleAllMedium,histoEleAllTight,histoEleLoose,histoEleLooseLoose,histoEleLooseMedium,histoEleLooseTight,histoEleMedium,histoEleMediumLoose,histoEleMediumMedium,histoEleMediumTight,histoEleTight,histoEleTightLoose,histoEleTightMedium,histoEleTightTight,histoEleAuthor1,histoEleAuthor1Loose,histoEleAuthor1Medium,histoEleAuthor1Tight,histoEleAuthor2,histoEleAuthor2Loose,histoEleAuthor2Medium,histoEleAuthor2Tight,histoEleAuthor3,histoEleAuthor3Loose,histoEleAuthor3Medium,histoEleAuthor3Tight,histoEleAuthor8,histoEleAuthor8Loose,histoEleAuthor8Medium,histoEleAuthor8Tight) : ## Get the differents branches for TDirectory Electron
-
-    bc_el_charge = getattr(tree,'el_charge')
-    bc_el_author = getattr(tree,'el_author')
-    bc_el_n = getattr(tree,'el_n')
-    bc_el_eta = getattr(tree,'el_eta')
-    bc_el_phi = getattr(tree,'el_phi')
-    bc_el_pt = getattr(tree,'el_pt')
-    bc_el_loose = getattr(tree,'el_loose')
-    bc_el_medium = getattr(tree,'el_medium')
-    bc_el_mediumIso = getattr(tree,'el_mediumIso')
-    bc_el_tight = getattr(tree,'el_tight')
-    bc_el_tightIso = getattr(tree,'el_tightIso')
-    
-    bc_el_weta2 = getattr(tree,'el_weta2')
-    br_el_E237 = getattr(tree,'el_E237')
-    bc_el_E277 = getattr(tree,'el_E277')
-    bc_el_Ethad = getattr(tree,'el_Ethad')
-    bc_el_Ethad1 = getattr(tree,'el_Ethad1')
-    bc_el_f1 = getattr(tree,'el_f1')
-    bc_el_wstot = getattr(tree,'el_wstot')
-    bc_el_emaxs1 = getattr(tree,'el_emaxs1')
-    bc_el_nBLHits = getattr(tree,'el_nBLHits')
-    bc_el_nPixHits = getattr(tree,'el_nPixHits')
-    bc_el_nSCTHits = getattr(tree,'el_nSCTHits')
-    bc_el_nSiHits = getattr(tree,'el_nSiHits')
-    bc_el_TRTHighTHitsRatio = getattr(tree,'el_TRTHighTHitsRatio')
-    bc_el_nTRTHits = getattr(tree,'el_nTRTHits')
-    bc_el_expectHitInBLayer = getattr(tree,'el_expectHitInBLayer')
-    bc_el_cl_E = getattr(tree,'el_cl_E')
-    bc_el_trackpt = getattr(tree,'el_trackpt')
-
-    #########
-    ## ALL ##
-    histoEleAll["el_charge"] = fill(bc_el_charge,histoEleAll["el_charge"])
-    histoEleAll["el_author"] = fill(bc_el_author,histoEleAll["el_author"])
-    histoEleAll["el_n"] = fill(bc_el_n,histoEleAll["el_n"])
-    histoEleAll["el_eta"] = fill(bc_el_eta,histoEleAll["el_eta"])
-    histoEleAll["el_phi"] = fill(bc_el_phi,histoEleAll["el_phi"])
-    histoEleAll["el_pt"] = fill(bc_el_pt,histoEleAll["el_pt"])
-    histoEleAll["el_loose"] = fill(bc_el_loose,histoEleAll["el_loose"])
-    histoEleAll["el_medium"] = fill(bc_el_medium,histoEleAll["el_medium"])
-    histoEleAll["el_mediumIso"] = fill(bc_el_mediumIso,histoEleAll["el_mediumIso"])
-    histoEleAll["el_tight"] = fill(bc_el_tight,histoEleAll["el_tight"])
-    histoEleAll["el_tightIso"] = fill(bc_el_tightIso,histoEleAll["el_tightIso"])
-
-    ## Loose variables
-    histoEleAllLoose["el_weta2"] = fill(bc_el_weta2,histoEleAllLoose["el_weta2"])
-    histoEleAllLoose["el_E237"] = fill(br_el_E237,histoEleAllLoose["el_E237"])
-    histoEleAllLoose["el_E277"] = fill(bc_el_E277,histoEleAllLoose["el_E277"])
-    histoEleAllLoose["el_Ethad"] = fill(bc_el_Ethad,histoEleAllLoose["el_Ethad"])
-    histoEleAllLoose["el_Ethad1"] = fill(bc_el_Ethad1,histoEleAllLoose["el_Ethad1"])
-
-    ## Medium variables
-    histoEleAllMedium["el_f1"] = fill(bc_el_f1,histoEleAllMedium["el_f1"])
-    histoEleAllMedium["el_wstot"] = fill(bc_el_wstot,histoEleAllMedium["el_wstot"])
-    histoEleAllMedium["el_emaxs1"] = fill(bc_el_emaxs1,histoEleAllMedium["el_emaxs1"])
-    histoEleAllMedium["el_nPixHits"] = fill(bc_el_nPixHits,histoEleAllMedium["el_nPixHits"])
-    histoEleAllMedium["el_nSCTHits"] = fill(bc_el_nSCTHits,histoEleAllMedium["el_nSCTHits"])
-    histoEleAllMedium["el_nSiHits"] = fill(bc_el_nSiHits,histoEleAllMedium["el_nSiHits"])
-
-    ## Tight variables
-    histoEleAllTight["el_TRTHighTHitsRatio"] = fill(bc_el_TRTHighTHitsRatio,histoEleAllTight["el_TRTHighTHitsRatio"])
-    histoEleAllTight["el_nTRTHits"] = fill(bc_el_nTRTHits,histoEleAllTight["el_nTRTHits"])
-    histoEleAllTight["el_expectHitInBLayer"] = fill(bc_el_expectHitInBLayer,histoEleAllTight["el_expectHitInBLayer"])
-    histoEleAllTight["el_cl_E"] = fill(bc_el_cl_E,histoEleAllTight["el_cl_E"])
-    histoEleAllTight["el_trackpt"] = fill(bc_el_trackpt,histoEleAllTight["el_trackpt"])
-    histoEleAllTight["el_nBLHits"] = fill(bc_el_nBLHits,histoEleAllTight["el_nBLHits"])
-
-    ##############
-    ## if Loose ##
-    histoEleLoose["el_charge_ifLoose"] = fillIsEM(bc_el_charge,histoEleLoose["el_charge_ifLoose"],bc_el_loose)
-    histoEleLoose["el_author_ifLoose"] = fillIsEM(bc_el_author,histoEleLoose["el_author_ifLoose"],bc_el_loose)
-    histoEleLoose["el_n_ifLoose"] = fillIsEM_N(bc_el_n,histoEleLoose["el_n_ifLoose"],bc_el_loose)
-    histoEleLoose["el_eta_ifLoose"] = fillIsEM(bc_el_eta,histoEleLoose["el_eta_ifLoose"],bc_el_loose)
-    histoEleLoose["el_phi_ifLoose"] = fillIsEM(bc_el_phi,histoEleLoose["el_phi_ifLoose"],bc_el_loose)
-    histoEleLoose["el_pt_ifLoose"] = fillIsEM(bc_el_pt,histoEleLoose["el_pt_ifLoose"],bc_el_loose)
-    histoEleLoose["el_loose_ifLoose"] = fillIsEM(bc_el_loose,histoEleLoose["el_loose_ifLoose"],bc_el_loose)
-    histoEleLoose["el_medium_ifLoose"] = fillIsEM(bc_el_medium,histoEleLoose["el_medium_ifLoose"],bc_el_loose)
-    histoEleLoose["el_mediumIso_ifLoose"] = fillIsEM(bc_el_mediumIso,histoEleLoose["el_mediumIso_ifLoose"],bc_el_loose)
-    histoEleLoose["el_tight_ifLoose"] = fillIsEM(bc_el_tight,histoEleLoose["el_tight_ifLoose"],bc_el_loose)
-    histoEleLoose["el_tightIso_ifLoose"] = fillIsEM(bc_el_tightIso,histoEleLoose["el_tightIso_ifLoose"],bc_el_loose)
-
-    ## Loose variables
-    histoEleLooseLoose["el_weta2_ifLoose"] = fillIsEM(bc_el_weta2,histoEleLooseLoose["el_weta2_ifLoose"],bc_el_loose)
-    histoEleLooseLoose["el_E237_ifLoose"] = fillIsEM(br_el_E237,histoEleLooseLoose["el_E237_ifLoose"],bc_el_loose)
-    histoEleLooseLoose["el_E277_ifLoose"] = fillIsEM(bc_el_E277,histoEleLooseLoose["el_E277_ifLoose"],bc_el_loose)
-    histoEleLooseLoose["el_Ethad_ifLoose"] = fillIsEM(bc_el_Ethad,histoEleLooseLoose["el_Ethad_ifLoose"],bc_el_loose)
-    histoEleLooseLoose["el_Ethad1_ifLoose"] = fillIsEM(bc_el_Ethad1,histoEleLooseLoose["el_Ethad1_ifLoose"],bc_el_loose)
-
-    ## Medium variables
-    histoEleLooseMedium["el_f1_ifLoose"] = fillIsEM(bc_el_f1,histoEleLooseMedium["el_f1_ifLoose"],bc_el_loose)
-    histoEleLooseMedium["el_wstot_ifLoose"] = fillIsEM(bc_el_wstot,histoEleLooseMedium["el_wstot_ifLoose"],bc_el_loose)
-    histoEleLooseMedium["el_emaxs1_ifLoose"] = fillIsEM(bc_el_emaxs1,histoEleLooseMedium["el_emaxs1_ifLoose"],bc_el_loose)
-    histoEleLooseMedium["el_nPixHits_ifLoose"] = fillIsEM(bc_el_nPixHits,histoEleLooseMedium["el_nPixHits_ifLoose"],bc_el_loose)
-    histoEleLooseMedium["el_nSCTHits_ifLoose"] = fillIsEM(bc_el_nSCTHits,histoEleLooseMedium["el_nSCTHits_ifLoose"],bc_el_loose)
-    histoEleLooseMedium["el_nSiHits_ifLoose"] = fillIsEM(bc_el_nSiHits,histoEleLooseMedium["el_nSiHits_ifLoose"],bc_el_loose)
-
-    ## Tight variables
-    histoEleLooseTight["el_TRTHighTHitsRatio_ifLoose"] = fillIsEM(bc_el_TRTHighTHitsRatio,histoEleLooseTight["el_TRTHighTHitsRatio_ifLoose"],bc_el_loose)
-    histoEleLooseTight["el_nTRTHits_ifLoose"] = fillIsEM(bc_el_nTRTHits,histoEleLooseTight["el_nTRTHits_ifLoose"],bc_el_loose)
-    histoEleLooseTight["el_expectHitInBLayer_ifLoose"] = fillIsEM(bc_el_expectHitInBLayer,histoEleLooseTight["el_expectHitInBLayer_ifLoose"],bc_el_loose)
-    histoEleLooseTight["el_cl_E_ifLoose"] = fillIsEM(bc_el_cl_E,histoEleLooseTight["el_cl_E_ifLoose"],bc_el_loose)
-    histoEleLooseTight["el_trackpt_ifLoose"] = fillIsEM(bc_el_trackpt,histoEleLooseTight["el_trackpt_ifLoose"],bc_el_loose)
-    histoEleLooseTight["el_nBLHits_ifLoose"] = fillIsEM(bc_el_nBLHits,histoEleLooseTight["el_nBLHits_ifLoose"],bc_el_loose)
-
-    ################
-    ## if Medium ##
-    histoEleMedium["el_charge_ifMedium"] = fillIsEM(bc_el_charge,histoEleMedium["el_charge_ifMedium"],bc_el_medium)
-    histoEleMedium["el_author_ifMedium"] = fillIsEM(bc_el_author,histoEleMedium["el_author_ifMedium"],bc_el_medium)
-    histoEleMedium["el_n_ifMedium"] = fillIsEM_N(bc_el_n,histoEleMedium["el_n_ifMedium"],bc_el_medium)
-    histoEleMedium["el_eta_ifMedium"] = fillIsEM(bc_el_eta,histoEleMedium["el_eta_ifMedium"],bc_el_medium)
-    histoEleMedium["el_phi_ifMedium"] = fillIsEM(bc_el_phi,histoEleMedium["el_phi_ifMedium"],bc_el_medium)
-    histoEleMedium["el_pt_ifMedium"] = fillIsEM(bc_el_pt,histoEleMedium["el_pt_ifMedium"],bc_el_medium)
-    histoEleMedium["el_loose_ifMedium"] = fillIsEM(bc_el_loose,histoEleMedium["el_loose_ifMedium"],bc_el_medium)
-    histoEleMedium["el_medium_ifMedium"] = fillIsEM(bc_el_medium,histoEleMedium["el_medium_ifMedium"],bc_el_medium)
-    histoEleMedium["el_mediumIso_ifMedium"] = fillIsEM(bc_el_mediumIso,histoEleMedium["el_mediumIso_ifMedium"],bc_el_medium)
-    histoEleMedium["el_tight_ifMedium"] = fillIsEM(bc_el_tight,histoEleMedium["el_tight_ifMedium"],bc_el_medium)
-    histoEleMedium["el_tightIso_ifMedium"] = fillIsEM(bc_el_tightIso,histoEleMedium["el_tightIso_ifMedium"],bc_el_medium)
-
-    ## Loose variables
-    histoEleMediumLoose["el_weta2_ifMedium"] = fillIsEM(bc_el_weta2,histoEleMediumLoose["el_weta2_ifMedium"],bc_el_medium)
-    histoEleMediumLoose["el_E237_ifMedium"] = fillIsEM(br_el_E237,histoEleMediumLoose["el_E237_ifMedium"],bc_el_medium)
-    histoEleMediumLoose["el_E277_ifMedium"] = fillIsEM(bc_el_E277,histoEleMediumLoose["el_E277_ifMedium"],bc_el_medium)
-    histoEleMediumLoose["el_Ethad_ifMedium"] = fillIsEM(bc_el_Ethad,histoEleMediumLoose["el_Ethad_ifMedium"],bc_el_medium)
-    histoEleMediumLoose["el_Ethad1_ifMedium"] = fillIsEM(bc_el_Ethad1,histoEleMediumLoose["el_Ethad1_ifMedium"],bc_el_medium)
-
-    ## Medium variables
-    histoEleMediumMedium["el_f1_ifMedium"] = fillIsEM(bc_el_f1,histoEleMediumMedium["el_f1_ifMedium"],bc_el_medium)
-    histoEleMediumMedium["el_wstot_ifMedium"] = fillIsEM(bc_el_wstot,histoEleMediumMedium["el_wstot_ifMedium"],bc_el_medium)
-    histoEleMediumMedium["el_emaxs1_ifMedium"] = fillIsEM(bc_el_emaxs1,histoEleMediumMedium["el_emaxs1_ifMedium"],bc_el_medium)
-    histoEleMediumMedium["el_nPixHits_ifMedium"] = fillIsEM(bc_el_nPixHits,histoEleMediumMedium["el_nPixHits_ifMedium"],bc_el_medium)
-    histoEleMediumMedium["el_nSCTHits_ifMedium"] = fillIsEM(bc_el_nSCTHits,histoEleMediumMedium["el_nSCTHits_ifMedium"],bc_el_medium)
-    histoEleMediumMedium["el_nSiHits_ifMedium"] = fillIsEM(bc_el_nSiHits,histoEleMediumMedium["el_nSiHits_ifMedium"],bc_el_medium)
-
-    ## Tight variables
-    histoEleMediumTight["el_TRTHighTHitsRatio_ifMedium"] = fillIsEM(bc_el_TRTHighTHitsRatio,histoEleMediumTight["el_TRTHighTHitsRatio_ifMedium"],bc_el_medium)
-    histoEleMediumTight["el_nTRTHits_ifMedium"] = fillIsEM(bc_el_nTRTHits,histoEleMediumTight["el_nTRTHits_ifMedium"],bc_el_medium)
-    histoEleMediumTight["el_expectHitInBLayer_ifMedium"] = fillIsEM(bc_el_expectHitInBLayer,histoEleMediumTight["el_expectHitInBLayer_ifMedium"],bc_el_medium)
-    histoEleMediumTight["el_cl_E_ifMedium"] = fillIsEM(bc_el_cl_E,histoEleMediumTight["el_cl_E_ifMedium"],bc_el_medium)
-    histoEleMediumTight["el_trackpt_ifMedium"] = fillIsEM(bc_el_trackpt,histoEleMediumTight["el_trackpt_ifMedium"],bc_el_medium)
-    histoEleMediumTight["el_nBLHits_ifMedium"] = fillIsEM(bc_el_nBLHits,histoEleMediumTight["el_nBLHits_ifMedium"],bc_el_medium)
-
-    ################
-    ## if Tight ##
-    histoEleTight["el_charge_ifTight"] = fillIsEM(bc_el_charge,histoEleTight["el_charge_ifTight"],bc_el_tight)
-    histoEleTight["el_author_ifTight"] = fillIsEM(bc_el_author,histoEleTight["el_author_ifTight"],bc_el_tight)
-    histoEleTight["el_n_ifTight"] = fillIsEM_N(bc_el_n,histoEleTight["el_n_ifTight"],bc_el_tight)
-    histoEleTight["el_eta_ifTight"] = fillIsEM(bc_el_eta,histoEleTight["el_eta_ifTight"],bc_el_tight)
-    histoEleTight["el_phi_ifTight"] = fillIsEM(bc_el_phi,histoEleTight["el_phi_ifTight"],bc_el_tight)
-    histoEleTight["el_pt_ifTight"] = fillIsEM(bc_el_pt,histoEleTight["el_pt_ifTight"],bc_el_tight)
-    histoEleTight["el_loose_ifTight"] = fillIsEM(bc_el_loose,histoEleTight["el_loose_ifTight"],bc_el_tight)
-    histoEleTight["el_medium_ifTight"] = fillIsEM(bc_el_medium,histoEleTight["el_medium_ifTight"],bc_el_tight)
-    histoEleTight["el_mediumIso_ifTight"] = fillIsEM(bc_el_mediumIso,histoEleTight["el_mediumIso_ifTight"],bc_el_tight)
-    histoEleTight["el_tight_ifTight"] = fillIsEM(bc_el_tight,histoEleTight["el_tight_ifTight"],bc_el_tight)
-    histoEleTight["el_tightIso_ifTight"] = fillIsEM(bc_el_tightIso,histoEleTight["el_tightIso_ifTight"],bc_el_tight)
-
-    ## Loose variables
-    histoEleTightLoose["el_weta2_ifTight"] = fillIsEM(bc_el_weta2,histoEleTightLoose["el_weta2_ifTight"],bc_el_tight)
-    histoEleTightLoose["el_E237_ifTight"] = fillIsEM(br_el_E237,histoEleTightLoose["el_E237_ifTight"],bc_el_tight)
-    histoEleTightLoose["el_E277_ifTight"] = fillIsEM(bc_el_E277,histoEleTightLoose["el_E277_ifTight"],bc_el_tight)
-    histoEleTightLoose["el_Ethad_ifTight"] = fillIsEM(bc_el_Ethad,histoEleTightLoose["el_Ethad_ifTight"],bc_el_tight)
-    histoEleTightLoose["el_Ethad1_ifTight"] = fillIsEM(bc_el_Ethad1,histoEleTightLoose["el_Ethad1_ifTight"],bc_el_tight)
-
-    ## Medium variables
-    histoEleTightMedium["el_f1_ifTight"] = fillIsEM(bc_el_f1,histoEleTightMedium["el_f1_ifTight"],bc_el_tight)
-    histoEleTightMedium["el_wstot_ifTight"] = fillIsEM(bc_el_wstot,histoEleTightMedium["el_wstot_ifTight"],bc_el_tight)
-    histoEleTightMedium["el_emaxs1_ifTight"] = fillIsEM(bc_el_emaxs1,histoEleTightMedium["el_emaxs1_ifTight"],bc_el_tight)
-    histoEleTightMedium["el_nPixHits_ifTight"] = fillIsEM(bc_el_nPixHits,histoEleTightMedium["el_nPixHits_ifTight"],bc_el_tight)
-    histoEleTightMedium["el_nSCTHits_ifTight"] = fillIsEM(bc_el_nSCTHits,histoEleTightMedium["el_nSCTHits_ifTight"],bc_el_tight)
-    histoEleTightMedium["el_nSiHits_ifTight"] = fillIsEM(bc_el_nSiHits,histoEleTightMedium["el_nSiHits_ifTight"],bc_el_tight)
-
-    ## Tight variables
-    histoEleTightTight["el_TRTHighTHitsRatio_ifTight"] = fillIsEM(bc_el_TRTHighTHitsRatio,histoEleTightTight["el_TRTHighTHitsRatio_ifTight"],bc_el_tight)
-    histoEleTightTight["el_nTRTHits_ifTight"] = fillIsEM(bc_el_nTRTHits,histoEleTightTight["el_nTRTHits_ifTight"],bc_el_tight)
-    histoEleTightTight["el_expectHitInBLayer_ifTight"] = fillIsEM(bc_el_expectHitInBLayer,histoEleTightTight["el_expectHitInBLayer_ifTight"],bc_el_tight)
-    histoEleTightTight["el_cl_E_ifTight"] = fillIsEM(bc_el_cl_E,histoEleTightTight["el_cl_E_ifTight"],bc_el_tight)
-    histoEleTightTight["el_trackpt_ifTight"] = fillIsEM(bc_el_trackpt,histoEleTightTight["el_trackpt_ifTight"],bc_el_tight)
-    histoEleTightTight["el_nBLHits_ifTight"] = fillIsEM(bc_el_nBLHits,histoEleTightTight["el_nBLHits_ifTight"],bc_el_tight)
-
-    ################
-    ## if Author1 ##
-    histoEleAuthor1["el_charge_ifAuthor1"] = fillAuthor(bc_el_charge,histoEleAuthor1["el_charge_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_author_ifAuthor1"] = fillAuthor(bc_el_author,histoEleAuthor1["el_author_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_n_ifAuthor1"] = fillAuthor_N(bc_el_n,histoEleAuthor1["el_n_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_eta_ifAuthor1"] = fillAuthor(bc_el_eta,histoEleAuthor1["el_eta_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_phi_ifAuthor1"] = fillAuthor(bc_el_phi,histoEleAuthor1["el_phi_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_pt_ifAuthor1"] = fillAuthor(bc_el_pt,histoEleAuthor1["el_pt_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_loose_ifAuthor1"] = fillAuthor(bc_el_loose,histoEleAuthor1["el_loose_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_medium_ifAuthor1"] = fillAuthor(bc_el_medium,histoEleAuthor1["el_medium_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_mediumIso_ifAuthor1"] = fillAuthor(bc_el_mediumIso,histoEleAuthor1["el_mediumIso_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_tight_ifAuthor1"] = fillAuthor(bc_el_tight,histoEleAuthor1["el_tight_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1["el_tightIso_ifAuthor1"] = fillAuthor(bc_el_tightIso,histoEleAuthor1["el_tightIso_ifAuthor1"],bc_el_author,1)
-
-    ## Author1 variables
-    histoEleAuthor1Loose["el_weta2_ifAuthor1"] = fillAuthor(bc_el_weta2,histoEleAuthor1Loose["el_weta2_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Loose["el_E237_ifAuthor1"] = fillAuthor(br_el_E237,histoEleAuthor1Loose["el_E237_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Loose["el_E277_ifAuthor1"] = fillAuthor(bc_el_E277,histoEleAuthor1Loose["el_E277_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Loose["el_Ethad_ifAuthor1"] = fillAuthor(bc_el_Ethad,histoEleAuthor1Loose["el_Ethad_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Loose["el_Ethad1_ifAuthor1"] = fillAuthor(bc_el_Ethad1,histoEleAuthor1Loose["el_Ethad1_ifAuthor1"],bc_el_author,1)
-
-    ## Medium variables
-    histoEleAuthor1Medium["el_f1_ifAuthor1"] = fillAuthor(bc_el_f1,histoEleAuthor1Medium["el_f1_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Medium["el_wstot_ifAuthor1"] = fillAuthor(bc_el_wstot,histoEleAuthor1Medium["el_wstot_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Medium["el_emaxs1_ifAuthor1"] = fillAuthor(bc_el_emaxs1,histoEleAuthor1Medium["el_emaxs1_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Medium["el_nPixHits_ifAuthor1"] = fillAuthor(bc_el_nPixHits,histoEleAuthor1Medium["el_nPixHits_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Medium["el_nSCTHits_ifAuthor1"] = fillAuthor(bc_el_nSCTHits,histoEleAuthor1Medium["el_nSCTHits_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Medium["el_nSiHits_ifAuthor1"] = fillAuthor(bc_el_nSiHits,histoEleAuthor1Medium["el_nSiHits_ifAuthor1"],bc_el_author,1)
-
-    ## Tight variables
-    histoEleAuthor1Tight["el_TRTHighTHitsRatio_ifAuthor1"] = fillAuthor(bc_el_TRTHighTHitsRatio,histoEleAuthor1Tight["el_TRTHighTHitsRatio_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Tight["el_nTRTHits_ifAuthor1"] = fillAuthor(bc_el_nTRTHits,histoEleAuthor1Tight["el_nTRTHits_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Tight["el_expectHitInBLayer_ifAuthor1"] = fillAuthor(bc_el_expectHitInBLayer,histoEleAuthor1Tight["el_expectHitInBLayer_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Tight["el_cl_E_ifAuthor1"] = fillAuthor(bc_el_cl_E,histoEleAuthor1Tight["el_cl_E_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Tight["el_trackpt_ifAuthor1"] = fillAuthor(bc_el_trackpt,histoEleAuthor1Tight["el_trackpt_ifAuthor1"],bc_el_author,1)
-    histoEleAuthor1Tight["el_nBLHits_ifAuthor1"] = fillAuthor(bc_el_nBLHits,histoEleAuthor1Tight["el_nBLHits_ifAuthor1"],bc_el_author,1)
-
-    ################
-    ## if Author2 ##
-    histoEleAuthor2["el_charge_ifAuthor2"] = fillAuthor(bc_el_charge,histoEleAuthor2["el_charge_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_author_ifAuthor2"] = fillAuthor(bc_el_author,histoEleAuthor2["el_author_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_n_ifAuthor2"] = fillAuthor_N(bc_el_n,histoEleAuthor2["el_n_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_eta_ifAuthor2"] = fillAuthor(bc_el_eta,histoEleAuthor2["el_eta_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_phi_ifAuthor2"] = fillAuthor(bc_el_phi,histoEleAuthor2["el_phi_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_pt_ifAuthor2"] = fillAuthor(bc_el_pt,histoEleAuthor2["el_pt_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_loose_ifAuthor2"] = fillAuthor(bc_el_loose,histoEleAuthor2["el_loose_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_medium_ifAuthor2"] = fillAuthor(bc_el_medium,histoEleAuthor2["el_medium_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_mediumIso_ifAuthor2"] = fillAuthor(bc_el_mediumIso,histoEleAuthor2["el_mediumIso_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_tight_ifAuthor2"] = fillAuthor(bc_el_tight,histoEleAuthor2["el_tight_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2["el_tightIso_ifAuthor2"] = fillAuthor(bc_el_tightIso,histoEleAuthor2["el_tightIso_ifAuthor2"],bc_el_author,2)
-
-    ## Loose variables
-    histoEleAuthor2Loose["el_weta2_ifAuthor2"] = fillAuthor(bc_el_weta2,histoEleAuthor2Loose["el_weta2_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Loose["el_E237_ifAuthor2"] = fillAuthor(br_el_E237,histoEleAuthor2Loose["el_E237_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Loose["el_E277_ifAuthor2"] = fillAuthor(bc_el_E277,histoEleAuthor2Loose["el_E277_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Loose["el_Ethad_ifAuthor2"] = fillAuthor(bc_el_Ethad,histoEleAuthor2Loose["el_Ethad_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Loose["el_Ethad1_ifAuthor2"] = fillAuthor(bc_el_Ethad1,histoEleAuthor2Loose["el_Ethad1_ifAuthor2"],bc_el_author,2)
-
-    ## Medium variables
-    histoEleAuthor2Medium["el_f1_ifAuthor2"] = fillAuthor(bc_el_f1,histoEleAuthor2Medium["el_f1_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Medium["el_wstot_ifAuthor2"] = fillAuthor(bc_el_wstot,histoEleAuthor2Medium["el_wstot_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Medium["el_emaxs1_ifAuthor2"] = fillAuthor(bc_el_emaxs1,histoEleAuthor2Medium["el_emaxs1_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Medium["el_nPixHits_ifAuthor2"] = fillAuthor(bc_el_nPixHits,histoEleAuthor2Medium["el_nPixHits_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Medium["el_nSCTHits_ifAuthor2"] = fillAuthor(bc_el_nSCTHits,histoEleAuthor2Medium["el_nSCTHits_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Medium["el_nSiHits_ifAuthor2"] = fillAuthor(bc_el_nSiHits,histoEleAuthor2Medium["el_nSiHits_ifAuthor2"],bc_el_author,2)
-
-    ## Tight variables
-    histoEleAuthor2Tight["el_TRTHighTHitsRatio_ifAuthor2"] = fillAuthor(bc_el_TRTHighTHitsRatio,histoEleAuthor2Tight["el_TRTHighTHitsRatio_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Tight["el_nTRTHits_ifAuthor2"] = fillAuthor(bc_el_nTRTHits,histoEleAuthor2Tight["el_nTRTHits_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Tight["el_expectHitInBLayer_ifAuthor2"] = fillAuthor(bc_el_expectHitInBLayer,histoEleAuthor2Tight["el_expectHitInBLayer_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Tight["el_cl_E_ifAuthor2"] = fillAuthor(bc_el_cl_E,histoEleAuthor2Tight["el_cl_E_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Tight["el_trackpt_ifAuthor2"] = fillAuthor(bc_el_trackpt,histoEleAuthor2Tight["el_trackpt_ifAuthor2"],bc_el_author,2)
-    histoEleAuthor2Tight["el_nBLHits_ifAuthor2"] = fillAuthor(bc_el_nBLHits,histoEleAuthor2Tight["el_nBLHits_ifAuthor2"],bc_el_author,2)
-
-    ################
-    ## if Author3 ##
-    histoEleAuthor3["el_charge_ifAuthor3"] = fillAuthor(bc_el_charge,histoEleAuthor3["el_charge_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_author_ifAuthor3"] = fillAuthor(bc_el_author,histoEleAuthor3["el_author_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_n_ifAuthor3"] = fillAuthor_N(bc_el_n,histoEleAuthor3["el_n_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_eta_ifAuthor3"] = fillAuthor(bc_el_eta,histoEleAuthor3["el_eta_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_phi_ifAuthor3"] = fillAuthor(bc_el_phi,histoEleAuthor3["el_phi_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_pt_ifAuthor3"] = fillAuthor(bc_el_pt,histoEleAuthor3["el_pt_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_loose_ifAuthor3"] = fillAuthor(bc_el_loose,histoEleAuthor3["el_loose_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_medium_ifAuthor3"] = fillAuthor(bc_el_medium,histoEleAuthor3["el_medium_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_mediumIso_ifAuthor3"] = fillAuthor(bc_el_mediumIso,histoEleAuthor3["el_mediumIso_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_tight_ifAuthor3"] = fillAuthor(bc_el_tight,histoEleAuthor3["el_tight_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3["el_tightIso_ifAuthor3"] = fillAuthor(bc_el_tightIso,histoEleAuthor3["el_tightIso_ifAuthor3"],bc_el_author,3)
-
-    ## Author3 variables
-    histoEleAuthor3Loose["el_weta2_ifAuthor3"] = fillAuthor(bc_el_weta2,histoEleAuthor3Loose["el_weta2_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Loose["el_E237_ifAuthor3"] = fillAuthor(br_el_E237,histoEleAuthor3Loose["el_E237_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Loose["el_E277_ifAuthor3"] = fillAuthor(bc_el_E277,histoEleAuthor3Loose["el_E277_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Loose["el_Ethad_ifAuthor3"] = fillAuthor(bc_el_Ethad,histoEleAuthor3Loose["el_Ethad_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Loose["el_Ethad1_ifAuthor3"] = fillAuthor(bc_el_Ethad1,histoEleAuthor3Loose["el_Ethad1_ifAuthor3"],bc_el_author,3)
-
-    ## Medium variables
-    histoEleAuthor3Medium["el_f1_ifAuthor3"] = fillAuthor(bc_el_f1,histoEleAuthor3Medium["el_f1_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Medium["el_wstot_ifAuthor3"] = fillAuthor(bc_el_wstot,histoEleAuthor3Medium["el_wstot_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Medium["el_emaxs1_ifAuthor3"] = fillAuthor(bc_el_emaxs1,histoEleAuthor3Medium["el_emaxs1_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Medium["el_nPixHits_ifAuthor3"] = fillAuthor(bc_el_nPixHits,histoEleAuthor3Medium["el_nPixHits_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Medium["el_nSCTHits_ifAuthor3"] = fillAuthor(bc_el_nSCTHits,histoEleAuthor3Medium["el_nSCTHits_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Medium["el_nSiHits_ifAuthor3"] = fillAuthor(bc_el_nSiHits,histoEleAuthor3Medium["el_nSiHits_ifAuthor3"],bc_el_author,3)
-
-    ## Tight variables
-    histoEleAuthor3Tight["el_TRTHighTHitsRatio_ifAuthor3"] = fillAuthor(bc_el_TRTHighTHitsRatio,histoEleAuthor3Tight["el_TRTHighTHitsRatio_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Tight["el_nTRTHits_ifAuthor3"] = fillAuthor(bc_el_nTRTHits,histoEleAuthor3Tight["el_nTRTHits_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Tight["el_expectHitInBLayer_ifAuthor3"] = fillAuthor(bc_el_expectHitInBLayer,histoEleAuthor3Tight["el_expectHitInBLayer_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Tight["el_cl_E_ifAuthor3"] = fillAuthor(bc_el_cl_E,histoEleAuthor3Tight["el_cl_E_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Tight["el_trackpt_ifAuthor3"] = fillAuthor(bc_el_trackpt,histoEleAuthor3Tight["el_trackpt_ifAuthor3"],bc_el_author,3)
-    histoEleAuthor3Tight["el_nBLHits_ifAuthor3"] = fillAuthor(bc_el_nBLHits,histoEleAuthor3Tight["el_nBLHits_ifAuthor3"],bc_el_author,3)
-
-    ################
-    ## if Author8 ##
-    histoEleAuthor8["el_charge_ifAuthor8"] = fillAuthor(bc_el_charge,histoEleAuthor8["el_charge_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_author_ifAuthor8"] = fillAuthor(bc_el_author,histoEleAuthor8["el_author_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_n_ifAuthor8"] = fillAuthor_N(bc_el_n,histoEleAuthor8["el_n_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_eta_ifAuthor8"] = fillAuthor(bc_el_eta,histoEleAuthor8["el_eta_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_phi_ifAuthor8"] = fillAuthor(bc_el_phi,histoEleAuthor8["el_phi_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_pt_ifAuthor8"] = fillAuthor(bc_el_pt,histoEleAuthor8["el_pt_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_loose_ifAuthor8"] = fillAuthor(bc_el_loose,histoEleAuthor8["el_loose_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_medium_ifAuthor8"] = fillAuthor(bc_el_medium,histoEleAuthor8["el_medium_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_mediumIso_ifAuthor8"] = fillAuthor(bc_el_mediumIso,histoEleAuthor8["el_mediumIso_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_tight_ifAuthor8"] = fillAuthor(bc_el_tight,histoEleAuthor8["el_tight_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8["el_tightIso_ifAuthor8"] = fillAuthor(bc_el_tightIso,histoEleAuthor8["el_tightIso_ifAuthor8"],bc_el_author,8)
-
-    ## Author8 variables
-    histoEleAuthor8Loose["el_weta2_ifAuthor8"] = fillAuthor(bc_el_weta2,histoEleAuthor8Loose["el_weta2_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Loose["el_E237_ifAuthor8"] = fillAuthor(br_el_E237,histoEleAuthor8Loose["el_E237_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Loose["el_E277_ifAuthor8"] = fillAuthor(bc_el_E277,histoEleAuthor8Loose["el_E277_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Loose["el_Ethad_ifAuthor8"] = fillAuthor(bc_el_Ethad,histoEleAuthor8Loose["el_Ethad_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Loose["el_Ethad1_ifAuthor8"] = fillAuthor(bc_el_Ethad1,histoEleAuthor8Loose["el_Ethad1_ifAuthor8"],bc_el_author,8)
-
-    ## Medium variables
-    histoEleAuthor8Medium["el_f1_ifAuthor8"] = fillAuthor(bc_el_f1,histoEleAuthor8Medium["el_f1_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Medium["el_wstot_ifAuthor8"] = fillAuthor(bc_el_wstot,histoEleAuthor8Medium["el_wstot_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Medium["el_emaxs1_ifAuthor8"] = fillAuthor(bc_el_emaxs1,histoEleAuthor8Medium["el_emaxs1_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Medium["el_nPixHits_ifAuthor8"] = fillAuthor(bc_el_nPixHits,histoEleAuthor8Medium["el_nPixHits_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Medium["el_nSCTHits_ifAuthor8"] = fillAuthor(bc_el_nSCTHits,histoEleAuthor8Medium["el_nSCTHits_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Medium["el_nSiHits_ifAuthor8"] = fillAuthor(bc_el_nSiHits,histoEleAuthor8Medium["el_nSiHits_ifAuthor8"],bc_el_author,8)
-
-    ## Tight variables
-    histoEleAuthor8Tight["el_TRTHighTHitsRatio_ifAuthor8"] = fillAuthor(bc_el_TRTHighTHitsRatio,histoEleAuthor8Tight["el_TRTHighTHitsRatio_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Tight["el_nTRTHits_ifAuthor8"] = fillAuthor(bc_el_nTRTHits,histoEleAuthor8Tight["el_nTRTHits_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Tight["el_expectHitInBLayer_ifAuthor8"] = fillAuthor(bc_el_expectHitInBLayer,histoEleAuthor8Tight["el_expectHitInBLayer_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Tight["el_cl_E_ifAuthor8"] = fillAuthor(bc_el_cl_E,histoEleAuthor8Tight["el_cl_E_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Tight["el_trackpt_ifAuthor8"] = fillAuthor(bc_el_trackpt,histoEleAuthor8Tight["el_trackpt_ifAuthor8"],bc_el_author,8)
-    histoEleAuthor8Tight["el_nBLHits_ifAuthor8"] = fillAuthor(bc_el_nBLHits,histoEleAuthor8Tight["el_nBLHits_ifAuthor8"],bc_el_author,8)
-
-    
-    return True
-
-
-def branchPho(tree,histoPhoAll,histoPhoAllLoose,histoPhoAllTight,histoPhoLoose,histoPhoLooseLoose,histoPhoLooseTight,histoPhoTight,histoPhoTightLoose,histoPhoTightTight,histoPhoAuthor4,histoPhoAuthor4Loose,histoPhoAuthor4Tight,histoPhoAuthor16,histoPhoAuthor16Loose,histoPhoAuthor16Tight,histoPhoIsConv,histoPhoIsConvLoose,histoPhoIsConvTight,histoPhoUnConv,histoPhoUnConvLoose,histoPhoUnConvTight) :
-    
-    bc_ph_phi = getattr(tree,'ph_phi')
-    bc_ph_pt = getattr(tree,'ph_pt')
-    bc_ph_E = getattr(tree,'ph_E')
-    bc_ph_tight = getattr(tree,'ph_tight')
-    bc_ph_tightIso = getattr(tree,'ph_tightIso')
-    bc_ph_eta = getattr(tree,'ph_eta')
-    bc_ph_author = getattr(tree,'ph_author')
-    bc_ph_loose = getattr(tree,'ph_loose')
-    bc_ph_n = getattr(tree,'ph_n')
-    bc_ph_isConv = getattr(tree,'ph_isConv')
-    bc_ph_nConv = getattr(tree,'ph_nConv')
-    bc_ph_Es2 = getattr(tree,'ph_Es2')
-    bc_ph_E233 = getattr(tree,'ph_E233')
-    bc_ph_E237 = getattr(tree,'ph_E237')
-    bc_ph_E277 = getattr(tree,'ph_E277')
-    bc_ph_weta2 = getattr(tree,'ph_weta2')
-    bc_ph_Ethad = getattr(tree,'ph_Ethad')
-    bc_ph_Ethad1 = getattr(tree,'ph_Ethad1')
-    bc_ph_wstot = getattr(tree,'ph_wstot')
-    bc_ph_deltaEmax2 = getattr(tree,'ph_deltaEmax2')
-    bc_ph_emaxs1 = getattr(tree,'ph_emaxs1')
-    bc_ph_deltaEs = getattr(tree,'ph_deltaEs')
-    bc_ph_cl_E = getattr(tree,'ph_cl_E')
-    bc_ph_f1 = getattr(tree,'ph_f1')
-    
-    #########
-    ## ALL ##
-    histoPhoAll["ph_phi"] = fill(bc_ph_phi,histoPhoAll["ph_phi"])
-    histoPhoAll["ph_pt"] = fill(bc_ph_pt,histoPhoAll["ph_pt"])
-    histoPhoAll["ph_E"] = fill(bc_ph_E,histoPhoAll["ph_E"])
-    histoPhoAll["ph_tight"] = fill(bc_ph_tight,histoPhoAll["ph_tight"])
-    histoPhoAll["ph_tightIso"] = fill(bc_ph_tightIso,histoPhoAll["ph_tightIso"])
-    histoPhoAll["ph_eta"] = fill(bc_ph_eta,histoPhoAll["ph_eta"])
-    histoPhoAll["ph_author"] = fill(bc_ph_author,histoPhoAll["ph_author"])
-    histoPhoAll["ph_loose"] = fill(bc_ph_loose,histoPhoAll["ph_loose"])
-    histoPhoAll["ph_n"] = fill(bc_ph_n,histoPhoAll["ph_n"])
-    histoPhoAll["ph_isConv"] = fill(bc_ph_isConv,histoPhoAll["ph_isConv"])
-    histoPhoAll["ph_nConv"] = fill(bc_ph_nConv,histoPhoAll["ph_nConv"])
-    
-    ## Loose variables
-    histoPhoAllLoose["ph_Es2"] = fill(bc_ph_Es2,histoPhoAllLoose["ph_Es2"])
-    histoPhoAllLoose["ph_E233"] = fill(bc_ph_E233,histoPhoAllLoose["ph_E233"])
-    histoPhoAllLoose["ph_E237"] = fill(bc_ph_E237,histoPhoAllLoose["ph_E237"])
-    histoPhoAllLoose["ph_E277"] = fill(bc_ph_E277,histoPhoAllLoose["ph_E277"])
-    histoPhoAllLoose["ph_weta2"] = fill(bc_ph_weta2,histoPhoAllLoose["ph_weta2"])
-    histoPhoAllLoose["ph_Ethad"] = fill(bc_ph_Ethad,histoPhoAllLoose["ph_Ethad"])
-    histoPhoAllLoose["ph_Ethad1"] = fill(bc_ph_Ethad1,histoPhoAllLoose["ph_Ethad1"])
-    
-    ## Tight variables
-    histoPhoAllTight["ph_wstot"] = fill(bc_ph_wstot,histoPhoAllTight["ph_wstot"])
-    histoPhoAllTight["ph_deltaEmax2"] = fill(bc_ph_deltaEmax2,histoPhoAllTight["ph_deltaEmax2"])
-    histoPhoAllTight["ph_emaxs1"] = fill(bc_ph_emaxs1,histoPhoAllTight["ph_emaxs1"])
-    histoPhoAllTight["ph_deltaEs"] = fill(bc_ph_deltaEs,histoPhoAllTight["ph_deltaEs"])
-    histoPhoAllTight["ph_cl_E"] = fill(bc_ph_cl_E,histoPhoAllTight["ph_cl_E"])
-    histoPhoAllTight["ph_f1"] = fill(bc_ph_f1,histoPhoAllTight["ph_f1"])
-    
-    ###########
-    ## LOOSE ##
-    histoPhoLoose["ph_phi_ifLoose"] = fillIsEM(bc_ph_phi,histoPhoLoose["ph_phi_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_pt_ifLoose"] = fillIsEM(bc_ph_pt,histoPhoLoose["ph_pt_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_E_ifLoose"] = fillIsEM(bc_ph_E,histoPhoLoose["ph_E_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_tight_ifLoose"] = fillIsEM(bc_ph_tight,histoPhoLoose["ph_tight_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_tightIso_ifLoose"] = fillIsEM(bc_ph_tightIso,histoPhoLoose["ph_tightIso_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_eta_ifLoose"] = fillIsEM(bc_ph_eta,histoPhoLoose["ph_eta_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_author_ifLoose"] = fillIsEM(bc_ph_author,histoPhoLoose["ph_author_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_loose_ifLoose"] = fillIsEM(bc_ph_loose,histoPhoLoose["ph_loose_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_n_ifLoose"] = fillIsEM_N(bc_ph_n,histoPhoLoose["ph_n_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_isConv_ifLoose"] = fillIsEM(bc_ph_isConv,histoPhoLoose["ph_isConv_ifLoose"],bc_ph_loose)
-    histoPhoLoose["ph_nConv_ifLoose"] = fillIsEM_N(bc_ph_nConv,histoPhoLoose["ph_nConv_ifLoose"],bc_ph_loose)
-    
-    ## Loose variables
-    histoPhoLooseLoose["ph_Es2_ifLoose"] = fillIsEM(bc_ph_Es2,histoPhoLooseLoose["ph_Es2_ifLoose"],bc_ph_loose)
-    histoPhoLooseLoose["ph_E233_ifLoose"] = fillIsEM(bc_ph_E233,histoPhoLooseLoose["ph_E233_ifLoose"],bc_ph_loose)
-    histoPhoLooseLoose["ph_E237_ifLoose"] = fillIsEM(bc_ph_E237,histoPhoLooseLoose["ph_E237_ifLoose"],bc_ph_loose)
-    histoPhoLooseLoose["ph_E277_ifLoose"] = fillIsEM(bc_ph_E277,histoPhoLooseLoose["ph_E277_ifLoose"],bc_ph_loose)
-    histoPhoLooseLoose["ph_weta2_ifLoose"] = fillIsEM(bc_ph_weta2,histoPhoLooseLoose["ph_weta2_ifLoose"],bc_ph_loose)
-    histoPhoLooseLoose["ph_Ethad_ifLoose"] = fillIsEM(bc_ph_Ethad,histoPhoLooseLoose["ph_Ethad_ifLoose"],bc_ph_loose)
-    histoPhoLooseLoose["ph_Ethad1_ifLoose"] = fillIsEM(bc_ph_Ethad1,histoPhoLooseLoose["ph_Ethad1_ifLoose"],bc_ph_loose)
-    
-    ## Tight variables
-    histoPhoLooseTight["ph_wstot_ifLoose"] = fillIsEM(bc_ph_wstot,histoPhoLooseTight["ph_wstot_ifLoose"],bc_ph_loose)
-    histoPhoLooseTight["ph_deltaEmax2_ifLoose"] = fillIsEM(bc_ph_deltaEmax2,histoPhoLooseTight["ph_deltaEmax2_ifLoose"],bc_ph_loose)
-    histoPhoLooseTight["ph_emaxs1_ifLoose"] = fillIsEM(bc_ph_emaxs1,histoPhoLooseTight["ph_emaxs1_ifLoose"],bc_ph_loose)
-    histoPhoLooseTight["ph_deltaEs_ifLoose"] = fillIsEM(bc_ph_deltaEs,histoPhoLooseTight["ph_deltaEs_ifLoose"],bc_ph_loose)
-    histoPhoLooseTight["ph_cl_E_ifLoose"] = fillIsEM(bc_ph_cl_E,histoPhoLooseTight["ph_cl_E_ifLoose"],bc_ph_loose)
-    histoPhoLooseTight["ph_f1_ifLoose"] = fillIsEM(bc_ph_f1,histoPhoLooseTight["ph_f1_ifLoose"],bc_ph_loose)
-    
-    ###########
-    ## TIGHT ##
-    histoPhoTight["ph_phi_ifTight"] = fillIsEM(bc_ph_phi,histoPhoTight["ph_phi_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_pt_ifTight"] = fillIsEM(bc_ph_pt,histoPhoTight["ph_pt_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_E_ifTight"] = fillIsEM(bc_ph_E,histoPhoTight["ph_E_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_tight_ifTight"] = fillIsEM(bc_ph_tight,histoPhoTight["ph_tight_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_tightIso_ifTight"] = fillIsEM(bc_ph_tightIso,histoPhoTight["ph_tightIso_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_eta_ifTight"] = fillIsEM(bc_ph_eta,histoPhoTight["ph_eta_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_author_ifTight"] = fillIsEM(bc_ph_author,histoPhoTight["ph_author_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_loose_ifTight"] = fillIsEM(bc_ph_loose,histoPhoTight["ph_loose_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_n_ifTight"] = fillIsEM_N(bc_ph_n,histoPhoTight["ph_n_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_isConv_ifTight"] = fillIsEM(bc_ph_isConv,histoPhoTight["ph_isConv_ifTight"],bc_ph_tight)
-    histoPhoTight["ph_nConv_ifTight"] = fillIsEM_N(bc_ph_nConv,histoPhoTight["ph_nConv_ifTight"],bc_ph_tight)
-    
-    ## Loose variables
-    histoPhoTightLoose["ph_Es2_ifTight"] = fillIsEM(bc_ph_Es2,histoPhoTightLoose["ph_Es2_ifTight"],bc_ph_tight)
-    histoPhoTightLoose["ph_E233_ifTight"] = fillIsEM(bc_ph_E233,histoPhoTightLoose["ph_E233_ifTight"],bc_ph_tight)
-    histoPhoTightLoose["ph_E237_ifTight"] = fillIsEM(bc_ph_E237,histoPhoTightLoose["ph_E237_ifTight"],bc_ph_tight)
-    histoPhoTightLoose["ph_E277_ifTight"] = fillIsEM(bc_ph_E277,histoPhoTightLoose["ph_E277_ifTight"],bc_ph_tight)
-    histoPhoTightLoose["ph_weta2_ifTight"] = fillIsEM(bc_ph_weta2,histoPhoTightLoose["ph_weta2_ifTight"],bc_ph_tight)
-    histoPhoTightLoose["ph_Ethad_ifTight"] = fillIsEM(bc_ph_Ethad,histoPhoTightLoose["ph_Ethad_ifTight"],bc_ph_tight)
-    histoPhoTightLoose["ph_Ethad1_ifTight"] = fillIsEM(bc_ph_Ethad1,histoPhoTightLoose["ph_Ethad1_ifTight"],bc_ph_tight)
-    
-    ## Tight variables
-    histoPhoTightTight["ph_wstot_ifTight"] = fillIsEM(bc_ph_wstot,histoPhoTightTight["ph_wstot_ifTight"],bc_ph_tight)
-    histoPhoTightTight["ph_deltaEmax2_ifTight"] = fillIsEM(bc_ph_deltaEmax2,histoPhoTightTight["ph_deltaEmax2_ifTight"],bc_ph_tight)
-    histoPhoTightTight["ph_emaxs1_ifTight"] = fillIsEM(bc_ph_emaxs1,histoPhoTightTight["ph_emaxs1_ifTight"],bc_ph_tight)
-    histoPhoTightTight["ph_deltaEs_ifTight"] = fillIsEM(bc_ph_deltaEs,histoPhoTightTight["ph_deltaEs_ifTight"],bc_ph_tight)
-    histoPhoTightTight["ph_cl_E_ifTight"] = fillIsEM(bc_ph_cl_E,histoPhoTightTight["ph_cl_E_ifTight"],bc_ph_tight)
-    histoPhoTightTight["ph_f1_ifTight"] = fillIsEM(bc_ph_f1,histoPhoTightTight["ph_f1_ifTight"],bc_ph_tight)
-    
-    ##############
-    ## AUTHOR 4 ##
-    histoPhoAuthor4["ph_phi_ifAuthor4"] = fillAuthor(bc_ph_phi,histoPhoAuthor4["ph_phi_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_pt_ifAuthor4"] = fillAuthor(bc_ph_pt,histoPhoAuthor4["ph_pt_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_E_ifAuthor4"] = fillAuthor(bc_ph_E,histoPhoAuthor4["ph_E_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_tight_ifAuthor4"] = fillAuthor(bc_ph_tight,histoPhoAuthor4["ph_tight_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_tightIso_ifAuthor4"] = fillAuthor(bc_ph_tightIso,histoPhoAuthor4["ph_tightIso_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_eta_ifAuthor4"] = fillAuthor(bc_ph_eta,histoPhoAuthor4["ph_eta_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_author_ifAuthor4"] = fillAuthor(bc_ph_author,histoPhoAuthor4["ph_author_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_loose_ifAuthor4"] = fillAuthor(bc_ph_loose,histoPhoAuthor4["ph_loose_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_n_ifAuthor4"] = fillAuthor_N(bc_ph_n,histoPhoAuthor4["ph_n_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_isConv_ifAuthor4"] = fillAuthor(bc_ph_isConv,histoPhoAuthor4["ph_isConv_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4["ph_nConv_ifAuthor4"] = fillAuthor_N(bc_ph_nConv,histoPhoAuthor4["ph_nConv_ifAuthor4"],bc_ph_author,4)
-    
-    ## Loose variables
-    histoPhoAuthor4Loose["ph_Es2_ifAuthor4"] = fillAuthor(bc_ph_Es2,histoPhoAuthor4Loose["ph_Es2_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Loose["ph_E233_ifAuthor4"] = fillAuthor(bc_ph_E233,histoPhoAuthor4Loose["ph_E233_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Loose["ph_E237_ifAuthor4"] = fillAuthor(bc_ph_E237,histoPhoAuthor4Loose["ph_E237_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Loose["ph_E277_ifAuthor4"] = fillAuthor(bc_ph_E277,histoPhoAuthor4Loose["ph_E277_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Loose["ph_weta2_ifAuthor4"] = fillAuthor(bc_ph_weta2,histoPhoAuthor4Loose["ph_weta2_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Loose["ph_Ethad_ifAuthor4"] = fillAuthor(bc_ph_Ethad,histoPhoAuthor4Loose["ph_Ethad_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Loose["ph_Ethad1_ifAuthor4"] = fillAuthor(bc_ph_Ethad1,histoPhoAuthor4Loose["ph_Ethad1_ifAuthor4"],bc_ph_author,4)
-    
-    ## Tight variables
-    histoPhoAuthor4Tight["ph_wstot_ifAuthor4"] = fillAuthor(bc_ph_wstot,histoPhoAuthor4Tight["ph_wstot_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Tight["ph_deltaEmax2_ifAuthor4"] = fillAuthor(bc_ph_deltaEmax2,histoPhoAuthor4Tight["ph_deltaEmax2_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Tight["ph_emaxs1_ifAuthor4"] = fillAuthor(bc_ph_emaxs1,histoPhoAuthor4Tight["ph_emaxs1_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Tight["ph_deltaEs_ifAuthor4"] = fillAuthor(bc_ph_deltaEs,histoPhoAuthor4Tight["ph_deltaEs_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Tight["ph_cl_E_ifAuthor4"] = fillAuthor(bc_ph_cl_E,histoPhoAuthor4Tight["ph_cl_E_ifAuthor4"],bc_ph_author,4)
-    histoPhoAuthor4Tight["ph_f1_ifAuthor4"] = fillAuthor(bc_ph_f1,histoPhoAuthor4Tight["ph_f1_ifAuthor4"],bc_ph_author,4)
-    
-    ###############
-    ## AUTHOR 16 ##
-    histoPhoAuthor16["ph_phi_ifAuthor16"] = fillAuthor(bc_ph_phi,histoPhoAuthor16["ph_phi_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_pt_ifAuthor16"] = fillAuthor(bc_ph_pt,histoPhoAuthor16["ph_pt_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_E_ifAuthor16"] = fillAuthor(bc_ph_E,histoPhoAuthor16["ph_E_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_tight_ifAuthor16"] = fillAuthor(bc_ph_tight,histoPhoAuthor16["ph_tight_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_tightIso_ifAuthor16"] = fillAuthor(bc_ph_tightIso,histoPhoAuthor16["ph_tightIso_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_eta_ifAuthor16"] = fillAuthor(bc_ph_eta,histoPhoAuthor16["ph_eta_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_author_ifAuthor16"] = fillAuthor(bc_ph_author,histoPhoAuthor16["ph_author_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_loose_ifAuthor16"] = fillAuthor(bc_ph_loose,histoPhoAuthor16["ph_loose_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_n_ifAuthor16"] = fillAuthor_N(bc_ph_n,histoPhoAuthor16["ph_n_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_isConv_ifAuthor16"] = fillAuthor(bc_ph_isConv,histoPhoAuthor16["ph_isConv_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16["ph_nConv_ifAuthor16"] = fillAuthor_N(bc_ph_nConv,histoPhoAuthor16["ph_nConv_ifAuthor16"],bc_ph_author,16)
-    
-    ## Loose variables
-    histoPhoAuthor16Loose["ph_Es2_ifAuthor16"] = fillAuthor(bc_ph_Es2,histoPhoAuthor16Loose["ph_Es2_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Loose["ph_E233_ifAuthor16"] = fillAuthor(bc_ph_E233,histoPhoAuthor16Loose["ph_E233_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Loose["ph_E237_ifAuthor16"] = fillAuthor(bc_ph_E237,histoPhoAuthor16Loose["ph_E237_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Loose["ph_E277_ifAuthor16"] = fillAuthor(bc_ph_E277,histoPhoAuthor16Loose["ph_E277_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Loose["ph_weta2_ifAuthor16"] = fillAuthor(bc_ph_weta2,histoPhoAuthor16Loose["ph_weta2_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Loose["ph_Ethad_ifAuthor16"] = fillAuthor(bc_ph_Ethad,histoPhoAuthor16Loose["ph_Ethad_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Loose["ph_Ethad1_ifAuthor16"] = fillAuthor(bc_ph_Ethad1,histoPhoAuthor16Loose["ph_Ethad1_ifAuthor16"],bc_ph_author,16)
-    
-    ## Tight variables
-    histoPhoAuthor16Tight["ph_wstot_ifAuthor16"] = fillAuthor(bc_ph_wstot,histoPhoAuthor16Tight["ph_wstot_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Tight["ph_deltaEmax2_ifAuthor16"] = fillAuthor(bc_ph_deltaEmax2,histoPhoAuthor16Tight["ph_deltaEmax2_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Tight["ph_emaxs1_ifAuthor16"] = fillAuthor(bc_ph_emaxs1,histoPhoAuthor16Tight["ph_emaxs1_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Tight["ph_deltaEs_ifAuthor16"] = fillAuthor(bc_ph_deltaEs,histoPhoAuthor16Tight["ph_deltaEs_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Tight["ph_cl_E_ifAuthor16"] = fillAuthor(bc_ph_cl_E,histoPhoAuthor16Tight["ph_cl_E_ifAuthor16"],bc_ph_author,16)
-    histoPhoAuthor16Tight["ph_f1_ifAuthor16"] = fillAuthor(bc_ph_f1,histoPhoAuthor16Tight["ph_f1_ifAuthor16"],bc_ph_author,16)
-    
-    #############
-    ## IS CONV ##
-    histoPhoIsConv["ph_phi_ifIsConv"] = fillIsEM(bc_ph_phi,histoPhoIsConv["ph_phi_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_pt_ifIsConv"] = fillIsEM(bc_ph_pt,histoPhoIsConv["ph_pt_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_E_ifIsConv"] = fillIsEM(bc_ph_E,histoPhoIsConv["ph_E_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_tight_ifIsConv"] = fillIsEM(bc_ph_tight,histoPhoIsConv["ph_tight_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_tightIso_ifIsConv"] = fillIsEM(bc_ph_tightIso,histoPhoIsConv["ph_tightIso_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_eta_ifIsConv"] = fillIsEM(bc_ph_eta,histoPhoIsConv["ph_eta_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_author_ifIsConv"] = fillIsEM(bc_ph_author,histoPhoIsConv["ph_author_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_loose_ifIsConv"] = fillIsEM(bc_ph_loose,histoPhoIsConv["ph_loose_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_n_ifIsConv"] = fillIsEM_N(bc_ph_n,histoPhoIsConv["ph_n_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_isConv_ifIsConv"] = fillIsEM(bc_ph_isConv,histoPhoIsConv["ph_isConv_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConv["ph_nConv_ifIsConv"] = fillIsEM_N(bc_ph_nConv,histoPhoIsConv["ph_nConv_ifIsConv"],bc_ph_isConv)
-    
-    ## Loose variables
-    histoPhoIsConvLoose["ph_Es2_ifIsConv"] = fillIsEM(bc_ph_Es2,histoPhoIsConvLoose["ph_Es2_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvLoose["ph_E233_ifIsConv"] = fillIsEM(bc_ph_E233,histoPhoIsConvLoose["ph_E233_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvLoose["ph_E237_ifIsConv"] = fillIsEM(bc_ph_E237,histoPhoIsConvLoose["ph_E237_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvLoose["ph_E277_ifIsConv"] = fillIsEM(bc_ph_E277,histoPhoIsConvLoose["ph_E277_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvLoose["ph_weta2_ifIsConv"] = fillIsEM(bc_ph_weta2,histoPhoIsConvLoose["ph_weta2_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvLoose["ph_Ethad_ifIsConv"] = fillIsEM(bc_ph_Ethad,histoPhoIsConvLoose["ph_Ethad_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvLoose["ph_Ethad1_ifIsConv"] = fillIsEM(bc_ph_Ethad1,histoPhoIsConvLoose["ph_Ethad1_ifIsConv"],bc_ph_isConv)
-    
-    ## Tight variables
-    histoPhoIsConvTight["ph_wstot_ifIsConv"] = fillIsEM(bc_ph_wstot,histoPhoIsConvTight["ph_wstot_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvTight["ph_deltaEmax2_ifIsConv"] = fillIsEM(bc_ph_deltaEmax2,histoPhoIsConvTight["ph_deltaEmax2_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvTight["ph_emaxs1_ifIsConv"] = fillIsEM(bc_ph_emaxs1,histoPhoIsConvTight["ph_emaxs1_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvTight["ph_deltaEs_ifIsConv"] = fillIsEM(bc_ph_deltaEs,histoPhoIsConvTight["ph_deltaEs_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvTight["ph_cl_E_ifIsConv"] = fillIsEM(bc_ph_cl_E,histoPhoIsConvTight["ph_cl_E_ifIsConv"],bc_ph_isConv)
-    histoPhoIsConvTight["ph_f1_ifIsConv"] = fillIsEM(bc_ph_f1,histoPhoIsConvTight["ph_f1_ifIsConv"],bc_ph_isConv)
-    
-    #############
-    ## UN CONV ##
-    histoPhoUnConv["ph_phi_ifUnConv"] = fillNotIsEM(bc_ph_phi,histoPhoUnConv["ph_phi_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_pt_ifUnConv"] = fillNotIsEM(bc_ph_pt,histoPhoUnConv["ph_pt_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_E_ifUnConv"] = fillNotIsEM(bc_ph_E,histoPhoUnConv["ph_E_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_tight_ifUnConv"] = fillNotIsEM(bc_ph_tight,histoPhoUnConv["ph_tight_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_tightIso_ifUnConv"] = fillNotIsEM(bc_ph_tightIso,histoPhoUnConv["ph_tightIso_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_eta_ifUnConv"] = fillNotIsEM(bc_ph_eta,histoPhoUnConv["ph_eta_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_author_ifUnConv"] = fillNotIsEM(bc_ph_author,histoPhoUnConv["ph_author_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_loose_ifUnConv"] = fillNotIsEM(bc_ph_loose,histoPhoUnConv["ph_loose_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_n_ifUnConv"] = fillNotIsEM_N(bc_ph_n,histoPhoUnConv["ph_n_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_isConv_ifUnConv"] = fillNotIsEM(bc_ph_isConv,histoPhoUnConv["ph_isConv_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConv["ph_nConv_ifUnConv"] = fillNotIsEM_N(bc_ph_nConv,histoPhoUnConv["ph_nConv_ifUnConv"],bc_ph_isConv)
-    
-    ## Loose variables
-    histoPhoUnConvLoose["ph_Es2_ifUnConv"] = fillNotIsEM(bc_ph_Es2,histoPhoUnConvLoose["ph_Es2_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvLoose["ph_E233_ifUnConv"] = fillNotIsEM(bc_ph_E233,histoPhoUnConvLoose["ph_E233_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvLoose["ph_E237_ifUnConv"] = fillNotIsEM(bc_ph_E237,histoPhoUnConvLoose["ph_E237_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvLoose["ph_E277_ifUnConv"] = fillNotIsEM(bc_ph_E277,histoPhoUnConvLoose["ph_E277_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvLoose["ph_weta2_ifUnConv"] = fillNotIsEM(bc_ph_weta2,histoPhoUnConvLoose["ph_weta2_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvLoose["ph_Ethad_ifUnConv"] = fillNotIsEM(bc_ph_Ethad,histoPhoUnConvLoose["ph_Ethad_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvLoose["ph_Ethad1_ifUnConv"] = fillNotIsEM(bc_ph_Ethad1,histoPhoUnConvLoose["ph_Ethad1_ifUnConv"],bc_ph_isConv)
-    
-    ## Tight variables
-    histoPhoUnConvTight["ph_wstot_ifUnConv"] = fillNotIsEM(bc_ph_wstot,histoPhoUnConvTight["ph_wstot_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvTight["ph_deltaEmax2_ifUnConv"] = fillNotIsEM(bc_ph_deltaEmax2,histoPhoUnConvTight["ph_deltaEmax2_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvTight["ph_emaxs1_ifUnConv"] = fillNotIsEM(bc_ph_emaxs1,histoPhoUnConvTight["ph_emaxs1_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvTight["ph_deltaEs_ifUnConv"] = fillNotIsEM(bc_ph_deltaEs,histoPhoUnConvTight["ph_deltaEs_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvTight["ph_cl_E_ifUnConv"] = fillNotIsEM(bc_ph_cl_E,histoPhoUnConvTight["ph_cl_E_ifUnConv"],bc_ph_isConv)
-    histoPhoUnConvTight["ph_f1_ifUnConv"] = fillNotIsEM(bc_ph_f1,histoPhoUnConvTight["ph_f1_ifUnConv"],bc_ph_isConv)
-    
-    return True
-
-def branchExpert(tree) :
-    return True
-
-def branchExpEle(tree,histoIden,histoKin,histoConv,histoEM) :
-
-    bc_el_origin = getattr(tree,'el_origin')
-    bc_el_type = getattr(tree,'el_type')
-    bc_el_isEM = getattr(tree,'el_isEM')
-    bc_el_author = getattr(tree,'el_author')
-    bc_el_loose = getattr(tree,'el_loose')
-    bc_el_medium = getattr(tree,'el_medium')
-    bc_el_tight = getattr(tree,'el_tight')
-    bc_el_mediumIso = getattr(tree,'el_mediumIso')
-    bc_el_tightIso = getattr(tree,'el_tightIso')
-    # bc_el_tightNoIso = getattr(tree,'el_tightNoIso')
-    # bc_el_tightTRTNoIso = getattr(tree,'el_tightTRTNoIso')
-    # bc_el_mediumNoIso = getattr(tree,'el_mediumNoIso')
-    
-    bc_el_E = getattr(tree,'el_E')
-    # bc_el_EF_E = getattr(tree,'el_EF_E')
-    bc_el_Et = getattr(tree,'el_Et')
-    # bc_el_EF_Et = getattr(tree,'el_EF_Et')
-    bc_el_pt = getattr(tree,'el_pt')
-    # bc_el_EF_pt = getattr(tree,'el_EF_pt')
-    bc_el_m = getattr(tree,'el_m')
-    bc_el_eta = getattr(tree,'el_eta')
-    # bc_el_EF_eta = getattr(tree,'el_EF_eta')
-    bc_el_phi = getattr(tree,'el_phi')
-    # bc_el_EF_phi = getattr(tree,'el_EF_phi')
-    bc_el_px = getattr(tree,'el_px')
-    bc_el_py = getattr(tree,'el_py')
-    bc_el_pz = getattr(tree,'el_pz')
-    bc_el_charge = getattr(tree,'el_charge')
-    # bc_el_EF_charge = getattr(tree,'el_EF_charge')
-    
-    bc_el_convFlag = getattr(tree,'el_convFlag')
-    bc_el_isConv = getattr(tree,'el_isConv')
-    
-    bc_el_deltaEmax2 = getattr(tree,'el_deltaEmax2')
-    bc_el_Ethad = getattr(tree,'el_Ethad')
-    # bc_el_EF_Ethad = getattr(tree,'el_EF_Ethad')
-    bc_el_Ethad1 = getattr(tree,'el_Ethad1')
-    # bc_el_EF_Ethad1 = getattr(tree,'el_EF_Ethad1')
-    bc_el_f1 = getattr(tree,'el_f1')
-    # bc_el_EF_f1 = getattr(tree,'el_EF_f1')
-    bc_el_f1core = getattr(tree,'el_f1core')
-    bc_el_Emins1 = getattr(tree,'el_Emins1')
-    # bc_el_EF_Emins1 = getattr(tree,'el_EF_Emins1')
-    bc_el_emaxs1 = getattr(tree,'el_emaxs1')
-    bc_el_Emax2 = getattr(tree,'el_Emax2')
-    # bc_el_EF_Emax2 = getattr(tree,'el_EF_Emax2')
-    bc_el_fside = getattr(tree,'el_fside')
-    # bc_el_EF_fside = getattr(tree,'el_EF_fside')
-    
-    ## TDirectory Expert -> Electrons -> Identification
-    histoIden["el_origin"] = fill(bc_el_origin,histoIden["el_origin"])
-    histoIden["el_type"] = fill(bc_el_type,histoIden["el_type"])
-    histoIden["el_isEM"] = fill(bc_el_isEM,histoIden["el_isEM"])
-    histoIden["el_author"] = fill(bc_el_author,histoIden["el_author"])
-    histoIden["el_loose"] = fill(bc_el_loose,histoIden["el_loose"])
-    histoIden["el_medium"] = fill(bc_el_medium,histoIden["el_medium"])
-    histoIden["el_tight"] = fill(bc_el_tight,histoIden["el_tight"])
-    histoIden["el_mediumIso"] = fill(bc_el_mediumIso,histoIden["el_mediumIso"])
-    histoIden["el_tightIso"] = fill(bc_el_tightIso,histoIden["el_tightIso"])
-    # histoIden["el_tightNoIso"] = fill(bc_el_tightNoIso,histoIden["el_tightNoIso"])
-    # histoIden["el_tightTRTNoIso"] = fill(bc_el_tightTRTNoIso,histoIden["el_tightTRTNoIso"])
-    # histoIden["el_mediumNoIso"] = fill(bc_el_mediumNoIso,histoIden["el_mediumNoIso"])
-    
-    ## TDirectory Expert -> Electrons -> Kinematics
-    histoKin["el_E"] = fill(bc_el_E,histoKin["el_E"])
-    # histoKin["el_EF_E"] = fill(bc_el_EF_E,histoKin["el_EF_E"])
-    histoKin["el_Et"] = fill(bc_el_Et,histoKin["el_Et"])
-    # histoKin["el_EF_Et"] = fill(bc_el_EF_Et,histoKin["el_EF_Et"])
-    histoKin["el_pt"] = fill(bc_el_pt,histoKin["el_pt"])
-    # histoKin["el_EF_pt"] = fill(bc_el_EF_pt,histoKin["el_EF_pt"])
-    histoKin["el_m"] = fill(bc_el_m,histoKin["el_m"])
-    histoKin["el_eta"] = fill(bc_el_eta,histoKin["el_eta"])
-    # histoKin["el_EF_eta"] = fill(bc_el_EF_eta,histoKin["el_EF_eta"])
-    histoKin["el_phi"] = fill(bc_el_phi,histoKin["el_phi"])
-    # histoKin["el_EF_phi"] = fill(bc_el_EF_phi,histoKin["el_EF_phi"])
-    histoKin["el_px"] = fill(bc_el_px,histoKin["el_px"])
-    histoKin["el_py"] = fill(bc_el_py,histoKin["el_py"])
-    histoKin["el_pz"] = fill(bc_el_pz,histoKin["el_pz"])
-    histoKin["el_charge"] = fill(bc_el_charge,histoKin["el_charge"])
-    # histoKin["el_EF_charge"] = fill(bc_el_EF_charge,histoKin["el_EF_charge"])
-    histoKin["el_author"] = fill(bc_el_author,histoKin["el_author"])
-    
-    
-    ## TDirectory Expert -> Electrons -> Conversions
-    histoConv["el_convFlag"] = fill(bc_el_convFlag,histoConv["el_convFlag"])
-    histoConv["el_isConv"] = fill(bc_el_isConv,histoConv["el_isConv"])
-
-    ## TDirectory Expert -> Electrons -> EM
-    histoEM["el_deltaEmax2"] = fill(bc_el_deltaEmax2,histoEM["el_deltaEmax2"])
-    histoEM["el_Ethad"] = fill(bc_el_Ethad,histoEM["el_Ethad"])
-    # histoEM["el_EF_Ethad"] = fill(bc_el_EF_Ethad,histoEM["el_EF_Ethad"])
-    histoEM["el_Ethad1"] = fill(bc_el_Ethad1,histoEM["el_Ethad1"])
-    # histoEM["el_EF_Ethad1"] = fill(bc_el_EF_Ethad1,histoEM["el_EF_Ethad1"])
-    histoEM["el_f1"] = fill(bc_el_f1,histoEM["el_f1"])
-    # histoEM["el_EF_f1"] = fill(bc_el_EF_f1,histoEM["el_EF_f1"])
-    histoEM["el_f1core"] = fill(bc_el_f1core,histoEM["el_f1core"])
-    histoEM["el_Emins1"] = fill(bc_el_Emins1,histoEM["el_Emins1"])
-    # histoEM["el_EF_Emins1"] = fill(bc_el_EF_Emins1,histoEM["el_EF_Emins1"])
-    histoEM["el_emaxs1"] = fill(bc_el_emaxs1,histoEM["el_emaxs1"])
-    histoEM["el_Emax2"] = fill(bc_el_Emax2,histoEM["el_Emax2"])
-    # histoEM["el_EF_Emax2"] = fill(bc_el_EF_Emax2,histoEM["el_EF_Emax2"])
-    histoEM["el_fside"] = fill(bc_el_fside,histoEM["el_fside"])
-    # histoEM["el_EF_fside"] = fill(bc_el_EF_fside,histoEM["el_EF_fside"])
-
-
-
-        
-#####################################
-## Print the content of the branch ##
-#####################################
-
-def printBr(branch, i):
-    for width in branch :
-        print i, width
-        pass
-    return True
-
-########################
-## Filling histograms ##
-########################
-
-def fill(branch,plot) : ## Fill the histogramms
-    u_h1 = plot
-    try :
-        for u in branch :
-            u_h1.Fill(u)
-            pass
-        pass
-    except :
-        # print "pb with filling histo", branch
-        try :
-            u_h1.Fill(branch)
-            pass
-        except :
-            print "impossible to fill this histo", u_h1
-            pass
-        pass
-    return u_h1
-
-def fillIsEM(branch,plot,selec) : ## Fill the histogramms in case isEM selection (loose,medium,tight)
-    u_h1 = plot
-    try :
-        for u in range(len(branch)) :
-            if selec[u] == 1 : u_h1.Fill(branch[u])
-            pass
-        pass
-    except :
-        # print "pb with filling histo", branch
-        try :
-            if select == True : u_h1.Fill(branch)
-            pass
-        except :
-            print "impossible to fill this histo", u_h1
-            pass
-        pass
-    return u_h1
-
-def fillIsEM_N(branch,plot,selec) : ## Fill the histogramms el_n in case isEM selection (loose,medium,tight)
-    u_h1 = plot
-    i = 0
-    try :
-        for u in range(len(selec)) :
-            if selec[u] == 1 : i += 1
-            pass
-        pass
-    except :
-        # print "pb with filling histo", branch
-        try :
-            if select == 1 : i += 1
-            pass
-        except :
-            print "impossible to fill this histo", u_h1
-            pass
-        pass
-    u_h1.Fill(i)
-    return u_h1
-
-    
-def fillNotIsEM(branch,plot,selec) : ## Fill the histogramms in case not isEM selection (loose,medium,tight)
-    u_h1 = plot
-    try :
-        for u in range(len(branch)) :
-            if selec[u] == 0 : u_h1.Fill(branch[u])
-            pass
-        pass
-    except :
-        # print "pb with filling histo", branch
-        try :
-            if select == False : u_h1.Fill(branch)
-            pass
-        except :
-            print "impossible to fill this histo", u_h1
-            pass
-        pass
-    return u_h1
-
-def fillNotIsEM_N(branch,plot,selec) : ## Fill the histogramms el_n in case not isEM selection (loose,medium,tight)
-    u_h1 = plot
-    i = 0
-    try :
-        for u in range(len(selec)) :
-            if selec[u] == 0 : i += 1
-            pass
-        pass
-    except :
-        # print "pb with filling histo", branch
-        try :
-            if select == 0 : i += 1
-            pass
-        except :
-            print "impossible to fill this histo", u_h1
-            pass
-        pass
-    u_h1.Fill(i)
-    return u_h1
-
-    
-def fillAuthor(branch,plot,author,n=0) : ## Fill the histogramms in case of author = n
-    u_h1 = plot
-    try :
-        for u in range(len(branch)) :
-            if author[u] == n :u_h1.Fill(branch[u])
-            pass
-        pass
-    except :
-        # print "pb with filling histo", branch
-        try :
-            if author == n : u_h1.Fill(branch)
-            pass
-        except :
-            print "impossible to fill this histo", u_h1
-            pass
-        pass
-    return u_h1
-    
-def fillAuthor_N(branch,plot,author,n=0) : ## Fill the histogramms el_n in case of author = n
-    u_h1 = plot
-    i = 0
-    try :
-        for u in range(len(author)) :
-            if author[u] == n : i += 1
-            pass
-        pass
-    except :
-        # print "pb with filling histo", branch
-        try :
-            if author == n : i += 1
-            pass
-        except :
-            print "impossible to fill this histo", u_h1
-            pass
-        pass
-    u_h1.Fill(i)
-    return u_h1
-    
-
-#####################
-## Save histograms ##
-#####################
-
-def WriteEle(file,histoEleAll,histoEleAllLoose,histoEleAllMedium,histoEleAllTight,histoEleLoose,histoEleLooseLoose,histoEleLooseMedium,histoEleLooseTight,histoEleMedium,histoEleMediumLoose,histoEleMediumMedium,histoEleMediumTight,histoEleTight,histoEleTightLoose,histoEleTightMedium,histoEleTightTight,histoEleAuthor1,histoEleAuthor1Loose,histoEleAuthor1Medium,histoEleAuthor1Tight,histoEleAuthor2,histoEleAuthor2Loose,histoEleAuthor2Medium,histoEleAuthor2Tight,histoEleAuthor3,histoEleAuthor3Loose,histoEleAuthor3Medium,histoEleAuthor3Tight,histoEleAuthor8,histoEleAuthor8Loose,histoEleAuthor8Medium,histoEleAuthor8Tight) :
-
-    ele = file.mkdir("ELECTRONS")
-    
-    all = ele.mkdir("AllElectrons")
-    all_L = all.mkdir("LooseVariables")
-    all_M = all.mkdir("MediumVariables")
-    all_T = all.mkdir("TightVariables")
-    all.cd()
-    for i in histoEleAll : histoEleAll[i].Write()
-    all_L.cd()
-    for i in histoEleAllLoose : histoEleAllLoose[i].Write()
-    all_M.cd()
-    for i in histoEleAllMedium : histoEleAllMedium[i].Write()
-    all_T.cd()
-    for i in histoEleAllTight : histoEleAllTight[i].Write()
-    
-    loose = ele.mkdir("LooseElectrons")
-    loose_L = loose.mkdir("LooseVariables")
-    loose_M = loose.mkdir("MediumVariables")
-    loose_T = loose.mkdir("TightVariables")
-    loose.cd()
-    for i in histoEleLoose : histoEleLoose[i].Write()
-    loose_L.cd()
-    for i in histoEleLooseLoose : histoEleLooseLoose[i].Write()
-    loose_M.cd()
-    for i in histoEleLooseMedium : histoEleLooseMedium[i].Write()
-    loose_T.cd()
-    for i in histoEleLooseTight : histoEleLooseTight[i].Write()
-    
-    medium = ele.mkdir("MediumElectrons")
-    medium_L = medium.mkdir("LooseVariables")
-    medium_M = medium.mkdir("MediumVariables")
-    medium_T = medium.mkdir("TightVariables")
-    medium.cd()
-    for i in histoEleMedium : histoEleMedium[i].Write()
-    medium_L.cd()
-    for i in histoEleMediumLoose : histoEleMediumLoose[i].Write()
-    medium_M.cd()
-    for i in histoEleMediumMedium : histoEleMediumMedium[i].Write()
-    medium_T.cd()
-    for i in histoEleMediumTight : histoEleMediumTight[i].Write()
-    
-    tight = ele.mkdir("TightElectrons")
-    tight_L = tight.mkdir("LooseVariables")
-    tight_M = tight.mkdir("MediumVariables")
-    tight_T = tight.mkdir("TightVariables")
-    tight.cd()
-    for i in histoEleTight : histoEleTight[i].Write()
-    tight_L.cd()
-    for i in histoEleTightLoose : histoEleTightLoose[i].Write()
-    tight_M.cd()
-    for i in histoEleTightMedium : histoEleTightMedium[i].Write()
-    tight_T.cd()
-    for i in histoEleTightTight : histoEleTightTight[i].Write()
-    
-    author1 = ele.mkdir("Author1Electrons")
-    author1_L = author1.mkdir("LooseVariables")
-    author1_M = author1.mkdir("MediumVariables")
-    author1_T = author1.mkdir("TightVariables")
-    author1.cd()
-    for i in histoEleAuthor1 : histoEleAuthor1[i].Write()
-    author1_L.cd()
-    for i in histoEleAuthor1Loose : histoEleAuthor1Loose[i].Write()
-    author1_M.cd()
-    for i in histoEleAuthor1Medium : histoEleAuthor1Medium[i].Write()
-    author1_T.cd()
-    for i in histoEleAuthor1Tight : histoEleAuthor1Tight[i].Write()
-
-    author2 = ele.mkdir("Author2Electrons")
-    author2_L = author2.mkdir("LooseVariables")
-    author2_M = author2.mkdir("MediumVariables")
-    author2_T = author2.mkdir("TightVariables")
-    author2.cd()
-    for i in histoEleAuthor2 : histoEleAuthor2[i].Write()
-    author2_L.cd()
-    for i in histoEleAuthor2Loose : histoEleAuthor2Loose[i].Write()
-    author2_M.cd()
-    for i in histoEleAuthor2Medium : histoEleAuthor2Medium[i].Write()
-    author2_T.cd()
-    for i in histoEleAuthor2Tight : histoEleAuthor2Tight[i].Write()
-
-    author3 = ele.mkdir("Author3Electrons")
-    author3_L = author3.mkdir("LooseVariables")
-    author3_M = author3.mkdir("MediumVariables")
-    author3_T = author3.mkdir("TightVariables")
-    author3.cd()
-    for i in histoEleAuthor3 : histoEleAuthor3[i].Write()
-    author3_L.cd()
-    for i in histoEleAuthor3Loose : histoEleAuthor3Loose[i].Write()
-    author3_M.cd()
-    for i in histoEleAuthor3Medium : histoEleAuthor3Medium[i].Write()
-    author3_T.cd()
-    for i in histoEleAuthor3Tight : histoEleAuthor3Tight[i].Write()
-
-    author8 = ele.mkdir("Author8Electrons")
-    author8_L = author8.mkdir("LooseVariables")
-    author8_M = author8.mkdir("MediumVariables")
-    author8_T = author8.mkdir("TightVariables")
-    author8.cd()
-    for i in histoEleAuthor8 : histoEleAuthor8[i].Write()
-    author8_L.cd()
-    for i in histoEleAuthor8Loose : histoEleAuthor8Loose[i].Write()
-    author8_M.cd()
-    for i in histoEleAuthor8Medium : histoEleAuthor8Medium[i].Write()
-    author8_T.cd()
-    for i in histoEleAuthor8Tight : histoEleAuthor8Tight[i].Write()
-
-    return True
-
-def WritePho(file,histoPhoAll,histoPhoAllLoose,histoPhoAllTight,histoPhoLoose,histoPhoLooseLoose,histoPhoLooseTight,histoPhoTight,histoPhoTightLoose,histoPhoTightTight,histoPhoAuthor4,histoPhoAuthor4Loose,histoPhoAuthor4Tight,histoPhoAuthor16,histoPhoAuthor16Loose,histoPhoAuthor16Tight,histoPhoIsConv,histoPhoIsConvLoose,histoPhoIsConvTight,histoPhoUnConv,histoPhoUnConvLoose,histoPhoUnConvTight) :
-
-    pho = file.mkdir("PHOTONS")
-
-    all = pho.mkdir("AllPhotons")
-    all_L = all.mkdir("LooseVariables")
-    all_T = all.mkdir("TightVariables")
-    all.cd()
-    for i in histoPhoAll : histoPhoAll[i].Write()
-    all_L.cd()
-    for i in histoPhoAllLoose : histoPhoAllLoose[i].Write()
-    all_T.cd()
-    for i in histoPhoAllTight : histoPhoAllTight[i].Write()
-
-    loose = pho.mkdir("LoosePhotons")
-    loose_L = loose.mkdir("LooseVariables")
-    loose_T = loose.mkdir("TightVariables")
-    loose.cd()
-    for i in histoPhoLoose : histoPhoLoose[i].Write()
-    loose_L.cd()
-    for i in histoPhoLooseLoose : histoPhoLooseLoose[i].Write()
-    loose_T.cd()
-    for i in histoPhoLooseTight : histoPhoLooseTight[i].Write()
-
-    tight = pho.mkdir("TightPhotons")
-    tight_L = tight.mkdir("LooseVariables")
-    tight_T = tight.mkdir("TightVariables")
-    tight.cd()
-    for i in histoPhoTight : histoPhoTight[i].Write()
-    tight_L.cd()
-    for i in histoPhoTightLoose : histoPhoTightLoose[i].Write()
-    tight_T.cd()
-    for i in histoPhoTightTight : histoPhoTightTight[i].Write()
-    
-    author4 = pho.mkdir("Author4Photons")
-    author4_L = author4.mkdir("LooseVariables")
-    author4_T = author4.mkdir("TightVariables")
-    author4.cd()
-    for i in histoPhoAuthor4 : histoPhoAuthor4[i].Write()
-    author4_L.cd()
-    for i in histoPhoAuthor4Loose : histoPhoAuthor4Loose[i].Write()
-    author4_T.cd()
-    for i in histoPhoAuthor4Tight : histoPhoAuthor4Tight[i].Write()
-    
-    author16 = pho.mkdir("Author16Photons")
-    author16_L = author16.mkdir("LooseVariables")
-    author16_T = author16.mkdir("TightVariables")
-    author16.cd()
-    for i in histoPhoAuthor16 : histoPhoAuthor16[i].Write()
-    author16_L.cd()
-    for i in histoPhoAuthor16Loose : histoPhoAuthor16Loose[i].Write()
-    author16_T.cd()
-    for i in histoPhoAuthor16Tight : histoPhoAuthor16Tight[i].Write()
-    
-    IsConv = pho.mkdir("IsConvPhotons")
-    IsConv_L = IsConv.mkdir("LooseVariables")
-    IsConv_T = IsConv.mkdir("TightVariables")
-    IsConv.cd()
-    for i in histoPhoIsConv : histoPhoIsConv[i].Write()
-    IsConv_L.cd()
-    for i in histoPhoIsConvLoose : histoPhoIsConvLoose[i].Write()
-    IsConv_T.cd()
-    for i in histoPhoIsConvTight : histoPhoIsConvTight[i].Write()
-    
-    UnConv = pho.mkdir("UnConvPhotons")
-    UnConv_L = UnConv.mkdir("LooseVariables")
-    UnConv_T = UnConv.mkdir("TightVariables")
-    UnConv.cd()
-    for i in histoPhoUnConv : histoPhoUnConv[i].Write()
-    UnConv_L.cd()
-    for i in histoPhoUnConvLoose : histoPhoUnConvLoose[i].Write()
-    UnConv_T.cd()
-    for i in histoPhoUnConvTight : histoPhoUnConvTight[i].Write()
-    
-    return True
-    
-def WriteExpert(file) :
-    Exp = file.mkdir("Expert")
-    return Exp
-
-def WriteExpEle(file, Exp, histoIden, histoKin, histoConv, histoEM) :
-    
-    ele = Exp.mkdir("Electrons")
-
-    iden   = ele.mkdir("Identification")
-    kin    = ele.mkdir("Kinematics")
-    conv   = ele.mkdir("Conversion")
-    em     = ele.mkdir("EMVariables")
-    iso    = ele.mkdir("Isolation")
-    dis    = ele.mkdir("DiscriminantsVariables")
-    point  = ele.mkdir("Pointing")
-    clK    = ele.mkdir("ClusterKinematics")
-    l1     = ele.mkdir("L1Variables")
-    l2     = ele.mkdir("L2Variables")
-    ef     = ele.mkdir("EFVariables")
-    jet    = ele.mkdir("Jet")
-    trk    = ele.mkdir("Track")
-    raw    = ele.mkdir("RawCl")
-    vtx    = ele.mkdir("Vertex")
-    bre    = ele.mkdir("Brem")
-    mc     = ele.mkdir("MC")
-    trkm   = ele.mkdir("TrackMatch")
-    emTrk  = ele.mkdir("EMTrackFit")
-    forw   = ele.mkdir("ForwardVariables")
-
-    iden.cd()
-    for i in histoIden : histoIden[i].Write()
-    kin.cd()
-    for i in histoKin : histoKin[i].Write()
-    conv.cd()
-    for i in histoConv : histoConv[i].Write()
-    em.cd()
-    for i in histoEM : histoEM[i].Write()
-    
-    return True
-
-def WriteExpPho(file, Exp) :
-    
-    pho = Exp.mkdir("Photons")
-
-    iden  = pho.mkdir("Identification")
-    kin   = pho.mkdir("Kinematics")
-    conv  = pho.mkdir("Conversion")
-    em    = pho.mkdir("EMVariables")
-    iso   = pho.mkdir("Isolation")
-    dis   = pho.mkdir("DiscriminantsVariables")
-    point = pho.mkdir("Pointing")
-    clK   = pho.mkdir("ClusterKinematics")
-    l1    = pho.mkdir("L1Variables")
-    l2    = pho.mkdir("L2Variables")
-    ef    = pho.mkdir("EFVariables")
-    jet   = pho.mkdir("Jet")
-    trk   = pho.mkdir("TrackVariables")
-    raw   = pho.mkdir("RawCl")
-    topo  = pho.mkdir("Topo")
-    mc    = pho.mkdir("MC")
-    
-    return True
-
-def WriteExpMu(file, Exp) :
-    
-    mu = Exp.mkdir("Muons")
-
-    kin     = mu.mkdir("Kinematics")
-    alg     = mu.mkdir("Algorithms")
-    eneCalo = mu.mkdir("EnergyLossCalo")
-    hits    = mu.mkdir("MuonSpectrometerHitsSummary")
-    iso     = mu.mkdir("Isolation")
-    trkPa   = mu.mkdir("TrackPattern")
-    trk     = mu.mkdir("TrackParameters")
-    trkQ    = mu.mkdir("TrackQuality")
-    l1      = mu.mkdir("L1Variables")
-    l2      = mu.mkdir("L2Variables")
-    ef      = mu.mkdir("EFVariables")
-    mc      = mu.mkdir("MC")
-    
-    return True
-
-
-def WriteExpOther(file, Exp) :
-    
-    oth = Exp.mkdir("Others")
-
-    mc = oth.mkdir("McEvent")
-    glob = oth.mkdir("GlobalEvent")
-    jet = oth.mkdir("JetContent")
-    met = oth.mkdir("METContent")
-    mb = oth.mkdir("MinimumBias")
-    trig = oth.mkdir("TriggerBit")
-
-    return True
-
diff --git a/Reconstruction/egamma/egammaValidation/python/egammaValD3PD.py b/Reconstruction/egamma/egammaValidation/python/egammaValD3PD.py
deleted file mode 100644
index b2646a310b9e1dc7f3364bf6dabd76fdff77eec9..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/python/egammaValD3PD.py
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
-
-# $Id$
-#
-# @file D3PDMakerConfig/python/egammaD3PD.py
-# @author scott snyder <snyder@bnl.gov>
-# @date Aug, 2009
-# @brief Construct an egamma D3PD.
-#
-
-
-import D3PDMakerCoreComps
-from D3PDMakerConfig.D3PDMakerFlags           import D3PDMakerFlags
-from EventCommonD3PDMaker.EventInfoD3PDObject import EventInfoD3PDObject
-from egammaD3PDMaker.ElectronD3PDObject       import ElectronD3PDObject
-from egammaD3PDMaker.PhotonD3PDObject         import PhotonD3PDObject
-#from MuonD3PDMaker.MuonD3PDObject             import MuonD3PDObject
-#from MuonD3PDMaker.TruthMuonD3PDObject        import TruthMuonD3PDObject
-#from MuonD3PDMaker.MuonTriggerBitsD3PDObject  import MuonTriggerBitsD3PDObject
-#from MissingETD3PDMaker.MissingETD3PDObject   import MissingETD3PDObject
-#from MissingETD3PDMaker.MissingETGoodnessD3PDObject import MissingETGoodnessD3PDObject
-#from JetD3PDMaker.JetD3PDObject               import JetD3PDObject  
-#from D3PDMakerConfig.METD3PDObject            import METD3PDObject
-from CaloD3PDMaker.MBTSD3PDObject             import MBTSD3PDObject
-from CaloD3PDMaker.MBTSTimeD3PDObject         import MBTSTimeD3PDObject
-from CaloD3PDMaker.MBTSTriggerBitsD3PDObject  import MBTSTriggerBitsD3PDObject
-#from CaloD3PDMaker.ZDCTriggerBitsD3PDObject   import ZDCTriggerBitsD3PDObject
-from CaloD3PDMaker.LArCollisionTimeD3PDObject import LArCollisionTimeD3PDObject
-from CaloD3PDMaker.CollisionDecisionD3PDObject import CollisionDecisionD3PDObject
-from EventCommonD3PDMaker.LBMetadataConfig    import LBMetadataConfig
-from EventCommonD3PDMaker.GenEventD3PDObject  import GenEventD3PDObject
-from EventCommonD3PDMaker.TruthParticleD3PDObject import TruthParticleD3PDObject
-from TrackD3PDMaker.VertexD3PDObject          import PrimaryVertexD3PDObject
-from TrigEgammaD3PDMaker.TrigEgammaD3PD       import TrigEgammaD3PDObjects
-from RecExConfig.RecFlags                     import rec
-
-
-from AthenaCommon.AlgSequence import AlgSequence
-topSequence = AlgSequence()
-
-
-def _args (level, name, kwin, **kw):
-    kw = kw.copy()
-    kw['level'] = level
-    for (k, v) in kwin.items():
-        if k.startswith (name + '_'):
-            kw[k[len(name)+1:]] = v
-            pass
-        pass
-    return kw
-
-
-def egammaValD3PD (file,
-                   level = 10,
-                   tuplename = 'egamma',
-                   seq = topSequence,
-                   D3PDSvc = 'D3PD::RootD3PDSvc',
-                   streamNameRoot = None,
-                   **kw):
-
-    # Add D3PD to the algorithm name to prevent clashes with the
-    # existing `egamma' algorithm in reco.
-    alg = D3PDMakerCoreComps.MakerAlg(tuplename + 'D3PD',
-                                      file = file,
-                                      D3PDSvc = D3PDSvc,
-                                      streamNameRoot = streamNameRoot)
-    detail=0
-    alg += EventInfoD3PDObject        (**_args (level, 'EventInfo', kw))
-    alg += LArCollisionTimeD3PDObject (**_args (detail, 'LArCollisionTime', kw)) 
-    alg += ElectronD3PDObject         (**_args (level, 'Electron', kw)) # doesn't work because of PAUPhotonShowerBuilder
-    alg += PhotonD3PDObject           (**_args (level, 'Photon', kw))  # idem
-    #alg += MuonD3PDObject             (**_args (detail, 'Muon', kw))
-    #alg += JetD3PDObject              (**_args (detail, 'Jet', kw))
-    #alg += METD3PDObject              (**_args (level, 'MET', kw))
-    #alg += MissingETD3PDObject        (**_args (level, 'MissingET', kw))
-    #alg += MissingETGoodnessD3PDObject(**_args ( 2, 'METGoodness', kw))
-    #alg += MBTSD3PDObject             (**_args (detail, 'MBTS', kw))
-    alg += MBTSTimeD3PDObject         (**_args (detail, 'MBTSTime', kw))
-    alg += MBTSTriggerBitsD3PDObject  (**_args (detail, 'MBTSTriggerBits', kw))
-    #alg += ZDCTriggerBitsD3PDObject   (**_args (level, 'ZDCTriggerBits', kw))
-    #alg += CollisionDecisionD3PDObject(**_args (detail, 'CollisionDecision', kw))
-    if D3PDMakerFlags.DoTrigger():
-        TrigEgammaD3PDObjects (alg, **_args (1, 'TrigEgamma', kw))
-        from TriggerD3PDMaker.EnergySumROID3PDObject import EnergySumROID3PDObject
-        from TrigMissingETD3PDMaker.TrigMETD3PDObject import TrigMETD3PDObject
-
-        alg += EnergySumROID3PDObject(**_args (level, 'EnergySumROI', kw,
-                                               prefix = "trig_L1_esum_",
-                                               allowMissing = True))
-
-        # The LVL2 information:
-        alg += TrigMETD3PDObject(**_args( level, 'TrigMETL2', kw,
-                                          prefix = "trig_L2_met_",
-                                          sgkey = "HLT_T2MissingET" ))
-
-        # The EF information:
-        alg += TrigMETD3PDObject(**_args ( level, 'TrigMETEF', kw,
-                                           prefix = "trig_EF_met_",
-                                           sgkey = "HLT_TrigEFMissingET" ))
-
-        
-        from TriggerD3PDMaker.BGCodeD3PDObject import BGCodeD3PDObject
-        alg += BGCodeD3PDObject (**_args (2, 'BGCode', kw))
-        pass
-    # May be missing in single-beam data.
-    alg += PrimaryVertexD3PDObject (**_args (1, 'PrimaryVertex', kw,
-                                             allowMissing = True,
-                                             sgkey = D3PDMakerFlags.VertexSGKey(),
-                                             prefix = 'vxp_'))
-
-    if rec.doTruth():
-        #alg += TruthMuonD3PDObject    (**_args (level, 'TruthMuon', kw))
-        alg += GenEventD3PDObject     (**_args (1, 'GenEvent', kw))
-        alg += TruthParticleD3PDObject(**_args (level, 'TruthParticle', kw))
-
-    alg.MetadataTools += [LBMetadataConfig()]
-
-    if D3PDMakerFlags.FilterCollCand():
-        from CaloD3PDMaker.CollisionFilterAlg import CollisionFilterAlg
-        alg.filterSeq += CollisionFilterAlg (tuplename + '_CollCandFilter')
-
-    return alg
diff --git a/Reconstruction/egamma/egammaValidation/python/plotsHelper.py b/Reconstruction/egamma/egammaValidation/python/plotsHelper.py
new file mode 100755
index 0000000000000000000000000000000000000000..695119fdf5972c3aca478f2ffe4ce59224a3b153
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/python/plotsHelper.py
@@ -0,0 +1,22 @@
+#
+# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+#
+
+from ROOT import gStyle, TCanvas, TH1, TH1F, kBlack, kBlue, TLegend
+
+def plotComp(HistBase, HistART, padNmb, mycanvas, myleg=None):
+
+    mycanvas.cd(padNmb)
+    HistBase.SetMarkerStyle(3);
+    HistART.SetLineColor(kBlue);
+    HistBase.Draw("hist p");
+    HistART.Draw("same");
+
+    if padNmb == 1 and myleg != None:
+    
+        myleg.SetName("myleg")
+        myleg.AddEntry(HistBase, "Baseline", "p")
+        myleg.AddEntry(HistART , "ART"     , "l")
+        myleg.Draw()    
+
+    pass
diff --git a/Reconstruction/egamma/egammaValidation/python/plotsMaker_electron.py b/Reconstruction/egamma/egammaValidation/python/plotsMaker_electron.py
new file mode 100755
index 0000000000000000000000000000000000000000..b0969b7de424b791c03763eadb41cb6a5eb1e62b
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/python/plotsMaker_electron.py
@@ -0,0 +1,100 @@
+#
+# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+#
+
+print "\n IMPORTING SOME PYTHON LIBRARIES "
+import sys
+import os
+import math
+
+#Import the ROOT libraries
+print "\n IMPORTING SOME ROOT LIBRARIES "
+from ROOT import gStyle, TCanvas, TH1, TH1F, kBlack, kBlue, TFile, TLegend
+
+print "\n IMPORTING SOME FUNCTIONS "
+from plotsHelper import plotComp
+
+file_name1 = sys.argv[1]
+file_name2 = sys.argv[2]
+
+print "\n ****************************************************************************************** "
+print " File 1 (Baseline) is \t", file_name1
+print " File 2 (ART) is \t", file_name2
+print " ****************************************************************************************** \n"
+
+evtNumb_Base    = TH1F("evtNumb_Base"   , ("Event Number Basline")          , 2000,    85000,   87000)
+el_pt_All_Base  = TH1F("el_pt_All_Base" , ("Electron Pt Track All Baseline"),  200,        0,     200)
+el_pt_LLH_Base  = TH1F("el_pt_LLH_Base" , ("Electron Pt Track LLH Baseline"),  200,        0,     200)
+el_LLH_Eff_Base = TH1F("el_LLH_Eff_Base", ("LLH Electron Efficiency")       ,  200,        0,     200)
+el_pt_MLH_Base  = TH1F("el_pt_MLH_Base" , ("Electron Pt Track MLH Baseline"),  200,        0,     200)
+el_MLH_Eff_Base = TH1F("el_MLH_Eff_Base", ("MLH Electron Efficiency")       ,  200,        0,     200)
+el_pt_TLH_Base  = TH1F("el_pt_TLH_Base" , ("Electron Pt Track TLH Baseline"),  200,        0,     200)
+el_TLH_Eff_Base = TH1F("el_TLH_Eff_Base", ("TLH Electron Efficiency")       ,  200,        0,     200)
+el_eta_Base     = TH1F("el_eta_Base"    , ("Electron Eta Coordinate")       ,  200,       -3,       3)
+el_phi_Base     = TH1F("el_phi_Base"    , ("Electron Phi Coordinate")       ,  100, -math.pi, math.pi)
+
+
+evtNumb_ART    = TH1F("evtNumb_ART"  , ("Event Number ART")         , 2000,    85000,   87000)
+el_pt_All_ART  = TH1F("el_pt_All_ART", ("Electron Pt Track All ART"),  200,        0,     200)
+el_pt_LLH_ART  = TH1F("el_pt_LLH_ART", ("Electron Pt Track LLH ART"),  200,        0,     200)
+el_LLH_Eff_ART = TH1F("el_LLH_Eff_ART", ("LLH Electron Efficiency") ,  200,        0,     200)
+el_pt_MLH_ART  = TH1F("el_pt_MLH_ART", ("Electron Pt Track MLH ART"),  200,        0,     200)
+el_MLH_Eff_ART = TH1F("el_MLH_Eff_ART", ("MLH Electron Efficiency") ,  200,        0,     200)
+el_pt_TLH_ART  = TH1F("el_pt_TLH_ART", ("Electron Pt Track TLH ART"),  200,        0,     200)
+el_TLH_Eff_ART = TH1F("el_TLH_Eff_ART", ("TLH Electron Efficiency") ,  200,        0,     200)
+el_eta_ART     = TH1F("el_eta_ART"    , ("Electron Eta Coordinate") ,  200,       -3,       3)
+el_phi_ART     = TH1F("el_phi_ART"    , ("Electron Phi Coordinate") ,  100, -math.pi, math.pi)
+
+
+BaseFile = TFile(file_name1)
+ARTFile  = TFile(file_name2)
+
+evtNumb_Base   = BaseFile.Get("evtNmb"       )
+el_pt_All_Base = BaseFile.Get("pT_ElTrk_All" )
+el_pt_LLH_Base = BaseFile.Get("pT_ElTrk_LLH" )
+el_pt_MLH_Base = BaseFile.Get("pT_ElTrk_MLH" )
+el_pt_TLH_Base = BaseFile.Get("pT_ElTrk_TLH" )
+el_eta_Base    = BaseFile.Get("eta_ElTrk_All")
+el_phi_Base    = BaseFile.Get("phi_ElTrk_All")
+
+evtNumb_ART   = ARTFile.Get("evtNmb"       )
+el_pt_All_ART = ARTFile.Get("pT_ElTrk_All" )
+el_pt_LLH_ART = ARTFile.Get("pT_ElTrk_LLH" )
+el_pt_MLH_ART = ARTFile.Get("pT_ElTrk_MLH" )
+el_pt_TLH_ART = ARTFile.Get("pT_ElTrk_TLH" )
+el_eta_ART    = ARTFile.Get("eta_ElTrk_All")
+el_phi_ART    = ARTFile.Get("phi_ElTrk_All")
+
+print " BEGINNING "
+
+c1 = TCanvas("c1", "c1", 1200, 900)
+c1.Divide(2, 3)
+
+style=gStyle
+style.SetOptStat(0)
+
+myleg = TLegend(0.2, 0.3, 0.45, 0.45)
+
+el_LLH_Eff_Base.Divide(el_pt_LLH_Base, el_pt_All_Base)
+el_LLH_Eff_ART.Divide(el_pt_LLH_ART, el_pt_All_ART)
+
+el_MLH_Eff_Base.Divide(el_pt_MLH_Base, el_pt_All_Base)
+el_MLH_Eff_ART.Divide(el_pt_MLH_ART, el_pt_All_ART)
+
+el_TLH_Eff_Base.Divide(el_pt_TLH_Base, el_pt_All_Base)
+el_TLH_Eff_ART.Divide(el_pt_TLH_ART, el_pt_All_ART)
+
+plotComp(evtNumb_Base   , evtNumb_ART   , 1, c1, myleg)
+plotComp(el_LLH_Eff_Base, el_LLH_Eff_ART, 2, c1)
+plotComp(el_MLH_Eff_Base, el_MLH_Eff_ART, 3, c1)
+plotComp(el_TLH_Eff_Base, el_TLH_Eff_ART, 4, c1)
+plotComp(el_eta_Base    , el_eta_ART    , 5, c1)
+plotComp(el_phi_Base    , el_phi_ART    , 6, c1)
+
+print " SAVING "
+
+c1.Update()
+c1.SaveAs("Comparison_electron.pdf")
+c1.SaveAs("Comparison_electron.root")
+
+print " FINISHED \n"
diff --git a/Reconstruction/egamma/egammaValidation/python/plotsMaker_gamma.py b/Reconstruction/egamma/egammaValidation/python/plotsMaker_gamma.py
new file mode 100755
index 0000000000000000000000000000000000000000..87035491391b446d3b73611806441a7942aca928
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/python/plotsMaker_gamma.py
@@ -0,0 +1,71 @@
+#
+# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+#
+
+print "\n IMPORTING SOME PYTHON LIBRARIES "
+import sys
+import os
+import math
+
+#Import the ROOT libraries
+print "\n IMPORTING SOME ROOT LIBRARIES "
+from ROOT import gStyle, TCanvas, TH1, TH1F, kBlack, kBlue, TFile, TLegend
+
+print "\n IMPORTING SOME FUNCTIONS "
+from plotsHelper import plotComp
+
+file_name1 = sys.argv[1]
+file_name2 = sys.argv[2]
+
+print "\n ****************************************************************************************** "
+print " File 1 (Baseline) is \t", file_name1
+print " File 2 (ART) is \t", file_name2
+print " ****************************************************************************************** \n"
+
+evtNumb_Base    = TH1F("evtNumb_Base"   , ("Event Number Basline")        , 250, 33894000, 33896000)
+ph_pt_All_Base  = TH1F("ph_pt_All_Base" , ("Photon Pt Track All Baseline"), 200,        0,      200)
+ph_eta_Base     = TH1F("ph_phi_Base"    , ("Photon Eta Coordinate")       , 200,       -3,        3)
+ph_phi_Base     = TH1F("ph_phi_Base"    , ("Photon Phi Coordinate")       , 100, -math.pi,  math.pi)
+
+
+evtNumb_ART    = TH1F("evtNumb_ART"  , ("Event Number ART")       , 250, 33894000, 33896000)
+ph_pt_All_ART  = TH1F("ph_pt_All_ART", ("Photon Pt Track All ART"), 200,        0,      200)
+ph_eta_ART     = TH1F("ph_phi_ART"    , ("Photon Eta Coordinate") , 200,       -3,        3)
+ph_phi_ART     = TH1F("ph_phi_ART"    , ("Photon Phi Coordinate") , 100, -math.pi,  math.pi)
+
+
+BaseFile = TFile(file_name1)
+ARTFile  = TFile(file_name2)
+
+evtNumb_Base   = BaseFile.Get("evtNmb"      )
+ph_pt_All_Base = BaseFile.Get("pT_Phot_All" )
+ph_eta_Base    = BaseFile.Get("eta_Phot_All")
+ph_phi_Base    = BaseFile.Get("phi_Phot_All")
+
+evtNumb_ART   = ARTFile.Get("evtNmb"      )
+ph_pt_All_ART = ARTFile.Get("pT_Phot_All" )
+ph_eta_ART    = ARTFile.Get("eta_Phot_All")
+ph_phi_ART    = ARTFile.Get("phi_Phot_All")
+
+print " BEGINNING "
+
+c1 = TCanvas("c1", "c1", 1200, 900)
+c1.Divide(2, 2)
+
+style=gStyle
+style.SetOptStat(0)
+
+myleg = TLegend(0.2, 0.3, 0.45, 0.45)
+
+plotComp(evtNumb_Base   , evtNumb_ART   , 1, c1, myleg)
+plotComp(ph_pt_All_Base , ph_pt_All_ART , 2, c1)
+plotComp(ph_eta_Base    , ph_eta_ART    , 3, c1)
+plotComp(ph_phi_Base    , ph_phi_ART    , 4, c1)
+
+print " SAVING "
+
+c1.Update()
+c1.SaveAs("Comparison_photon.pdf")
+c1.SaveAs("Comparison_photon.root")
+
+print " FINISHED \n"
diff --git a/Reconstruction/egamma/egammaValidation/share/egammaRTTInit.py b/Reconstruction/egamma/egammaValidation/share/egammaRTTInit.py
deleted file mode 100644
index dd94bf2213335dac6013d04302c91364017ddcc8..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/share/egammaRTTInit.py
+++ /dev/null
@@ -1,50 +0,0 @@
-## To execute this program, you need to do :
-## pyroot.py -c "MonNAME='MyFile.root'" egammaRTTInit.py if you want to change the Monitored File
-## or
-## pyroot.py -c "MonNAME='MyFile.root';expert=True" egammaRTTInit.py if you want to change the Monitored File and Expert Mode = True
-## or
-## pyroot.py egammaRTTInit.py if you want to use the default files
-
-import user
-import ROOT
-import AthenaROOTAccess.transientTree
-
-print "args:",sys.argv
-MonNAME = globals().get('MonNAME', 'egamma.root')
-ele = globals().get('ele',True)
-pho = globals().get('pho',True)
-expert = globals().get('expert',False)
-
-#if isinstance(FNAME, basestring):
-#   FNAME=[FNAME]
-#   pass
-# print "FNAME=",FNAME
-g = MonNAME
-print "monitored file",g
-g = ROOT.TFile.Open(g)
-
-#FNAME = ROOT.TFile.Open(FNAME)
-
-doAll = True
-#doAll = False
-if doAll:
-    import egammaValidation.egammaRTT_create #egammaValidation.egammaRTT_create
-    egammaValidation.egammaRTT_create.execute(g,ele,pho,expert) #egammaValidation.
-    #exit()
-    pass
-else :
-    print ""
-    print "You can do now :"
-    print "import egammaRTT_create"
-    print "egammaRTT_create.execute(g,options)"
-    print "3 possibities for the options :"
-    print "    - you want default choices, "
-    print "      ie electrons = True, photons = True, expert = True , you write : "
-    print "      egammaRTT_create.execute(g)"
-    print "    - in the initialisation you had already entered choices, you write : "
-    print "      egammaRTT_create.execute(g,ele,pho,expert)"
-    print "    - you haven't entered choices yet, you can do by : "
-    print "      egammaRTT_create.execute(g,ele=T/F,pho=T/F,expert=T/F), ex : (g,True,False,False)"
-    print ""
-    pass
-
diff --git a/Reconstruction/egamma/egammaValidation/share/egammaValidationHistsToPostScript.C b/Reconstruction/egamma/egammaValidation/share/egammaValidationHistsToPostScript.C
deleted file mode 100755
index a6817dfac528cb9ba4e187add12749e3e876611a..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/share/egammaValidationHistsToPostScript.C
+++ /dev/null
@@ -1,186 +0,0 @@
-// ====================================================
-// Produce ps files for egamma software validation
-// ====================================================
-
-void setStyle(){
-  cout<<"drawing..."<<endl;
-  
-  //Set Some default styles for the histogram plots
-  gStyle->SetMarkerStyle(8);
-  gStyle->SetStatW(0.2);
-  gStyle->SetStatH(0.2);
-  // gStyle->SetStatFontSize(0.07);
-  gStyle->SetLabelSize(0.06);
-  gStyle->SetOptStat(0000);
-  gStyle->SetCanvasBorderMode(0);
-  gStyle->SetPadBorderMode(0);
-  gStyle->SetPadColor(0);
-  gStyle->SetCanvasColor(0);
-  gStyle->SetTitleColor(0);
-  gStyle->SetStatColor(0);
-  // gStyle->SetTitleFontSize(0.08);
-  gStyle->SetMarkerSize(1.);
-}
-
-// ================================================================
-// Iterate over a hist file to retrieve hists.
-// Does not know the number of hists before execution
-TObjArray* getHists(char* fname) 
-{
-  cout<<"getting hists "<<endl;
-  
-  TFile* f = new TFile(fname);
-  TObjArray* hists = new TObjArray(0);
-  // if hist file open fails, return an empty collection
-  // of TObjects
-  
-  if(!f){
-    cout<<"Could not open file "<<fname<<endl;
-    return hists;
-  }
-  
-  TIter next(f->GetListOfKeys());
-  TKey *key;
-  while ((key=(TKey*)next())) {
-    char* name = key->GetName();
-    TObject* obj = f->Get(name);
-    hists->Add(obj);
-  }  
-  
-  return hists;
-}
-
-// ==================================================================
-// make a postscript file from hist and ref hist files
-// sets up the canvas parameters
-void histsToPostScript(char* newFile, char* refFile, char* psFile) 
-{
-  cout<<"histsToPostScript"<<endl;
-  TCanvas* c1 = new TCanvas("c1","cluster validation",200,10,600,400);
-  c1->Clear();
-  int nx = 2;
-  int ny = 2;
-  c1->Divide(nx, ny); 
-  
-  TPostScript *ps = new TPostScript(psFile, 112);
-
-  TObjArray* hListNew = getHists(newFile);
-  TObjArray* hListRef = getHists(refFile);
-  
-  TIter nIter(hListNew);
-  TIter rIter(hListRef);
-  
-  // Display in turn as many hists as there are windows
-  // until all the hists have been displayed
-  int nWin = nx*ny;
-  int count = nWin;
-  TH1* nhist;
-  TH1* rhist;
-  // cout<<"iterating..."<<endl;
-  TObjArray* nHistsForAPage = new TObjArray(0);
-  TObjArray* rHistsForAPage = new TObjArray(0);
-  while( (nhist = (TH1*)nIter.Next())){
-    // cout<<"found an  nhist"<<endl;
-    rhist = (TH1*)rIter.Next();
-
-    
-    
-    if( count == nWin){
-      c1->Clear();
-      c1->Divide(nx,ny);
-      // ps->NewPage();
-      nHistsForAPage->Clear();
-      rHistsForAPage->Clear();
-    }
-    
-    
-    nHistsForAPage->Add(nhist);
-    rHistsForAPage->Add(rhist);
-    --count;
-    // cout<<"count "<<count<<endl;
-    
-    if( count == 0){
-      displayHists(c1, nHistsForAPage, rHistsForAPage);
-      count = nWin;
-      c1->Update();
-    }
-  }
-    
-  // display the last set of hists
-  if(count != nWin){
-    displayHists(c1, nHistsForAPage, rHistsForAPage);
-    c1->Update();
-  }
-  
-  ps->Close();
-}
-
-// ====================================================================
-// display hists on a canvas
-void displayHists(TCanvas* c1, TObjArray* newHists, TObjArray* refHists) 
-{
-  // cout<<"displayHists"<<endl;
-  TIter nIter(newHists);
-  TIter rIter(refHists);
-  int panel = 0;
-  TH1* nhist;
-  TH1* rhist;
-  TH2F* d1;
-  TH2F* d2;
-  while( (nhist = (TH1*)nIter.Next())){
-    rhist = (TH1*)rIter.Next();
-    //cout<<"Print a hist"<<endl;
-
-    ++panel;
-    c1->cd(panel);
-
-//    try{
-    if (nhist->GetDimension()<2) {
-      if(nhist){
-	//cout<<"drawing 1d new"<<endl;
-        nhist->SetMarkerStyle();
-	nhist->SetLineColor(1);
-	nhist->Draw();
-      }
-
-      if(rhist){
-	//cout<<"drawing 1d ref"<<endl;
-        rhist->SetMarkerStyle();
-	//rhist->Scale(0.9); //debug..... remove for production!
-	rhist->SetLineColor(2);
-	rhist->Draw("same");
-      }
-//    }catch(){
-    }else{
-      if(nhist){
-	//cout<<"drawing 2d"<<endl;
-	d1 = (TH2F*)nhist;
-        d1->SetMarkerStyle(29);
-        d1->SetMarkerSize(.5);
-        d1->SetMarkerColor(1);        
-	d1->Draw();
-      }
-      
-      if(rhist){
-        //cout<<"drawing 2d - ref "<<endl;
-	d2 = (TH2F*)rhist;
-	//d2->Scale(0.9);
-        d2->SetMarkerStyle(25);
-        d2->SetMarkerSize(.5);        
-        d2->SetMarkerColor(2);        
-	d2->Draw("same");
-      }
-    }
-  }
-}
-
-// ===============================================================
-// Entrance point to the macro
-// supply names of new and reference histograms
-int egammaValidationHistsToPostScript(char* newFile, char* refFile, char* psFile){
-
-  setStyle();
-  histsToPostScript(newFile, refFile, psFile);
-  
-  return 0;
-}
diff --git a/Reconstruction/egamma/egammaValidation/share/egammaValidationRunMacros.C b/Reconstruction/egamma/egammaValidation/share/egammaValidationRunMacros.C
deleted file mode 100755
index 50da2c403f5dfa6e2f7de71c9684251bbae5cc1b..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/share/egammaValidationRunMacros.C
+++ /dev/null
@@ -1,25 +0,0 @@
-
-#include "TSystem.h"
-
-void egammaValidationRunMacros()
-{
-  int nbTests=6;
-  string macros[]={"'egammaValidation_hist.C\(\"ntuple.root\"\)'",
-		   "'egammaValidationHistsToPostScript.C\(\"cluster_validation.hist\",\"refFile_cluster_validation.hist\",\"cluster_validation.ps\"\)'",
-		   "'egammaValidationHistsToPostScript.C\(\"softE_validation.hist\",\"refFile_softE_validation.hist\",\"softE_validation.ps\"\)'",
-		   "'egammaValidationHistsToPostScript.C\(\"eGamma_validation.hist\",\"refFile_eGamma_validation.hist\",\"eGamma_validation.ps\"\)'",
-		   "'egammaValidation_ID_hist.C\(\"ntuple.root\"\)'",
-		   "'egammaValidationHistsToPostScript.C\(\"egammaID_validation.hist\",\"refFile_egammaID_validation.hist\",\"egammaID_validation.ps\"\)'"
-  };
-
-  ofstream chkfile("runMacros.txt",ios::out);	
-  
-  for(int i=0;i<nbTests;i++) {
-    string com;
-    chkfile << "Run " << macros[i] << std::endl;
-    com="root.exe -b -q "+macros[i];
-    gSystem->Exec(com.c_str());
-    chkfile << "Run " << macros[i] << " Done." << std::endl;
-  }
-  chkfile.close();
-}
diff --git a/Reconstruction/egamma/egammaValidation/share/egammaValidation_ID_hist.C b/Reconstruction/egamma/egammaValidation/share/egammaValidation_ID_hist.C
deleted file mode 100755
index b55277c868f8c6b5d7ab57c89df6f384d8f452f2..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/share/egammaValidation_ID_hist.C
+++ /dev/null
@@ -1,694 +0,0 @@
- 
- //////////////////////////////////////////////////////
- //
- // Base class. Leaves booking and filling to derived classes
- // virtual doesnt seem to work, so have to cut and paste
- // calling of the various methods to derived classes
- //
- //////////////////////////////////////////////////////
-#include <vector>
-
- class Hists{
- public:
-  // initialise with input file name
-  Hists(char* ntupFileName, char* histFileName)
-  {
-    cout<<"Hists construction"<<endl;
-     m_file    = new TFile(ntupFileName);
-     m_tree    = (TTree*) m_file->Get("CollectionTree");
-     m_hlist   = new TObjArray(0);
-  }
- 
-   //opens a disk file and writes out the hists
-   void writeHistsToDisk(char* ofname){
-    cout<<"writing..."<<endl;
-     ofile = new TFile(ofname, "recreate");
-     m_hlist->Write();
-     ofile->Close();
-   }
- 
-   // books histograms. Adds pointers of newly booked hists to an
-   // TObjArray list.
-   virtual void bookHists(){cout<<"Hists::booking()"<<endl;}
-   // uses the ntuple to fill the hists which are then normalised 
-   virtual void fillHists(){}
-   // normalise the histograms
-   void normH(TH1F* m_hist)
-   {
-     double scale=m_hist->GetEntries();
-     if ( m_hist->GetEntries() != 0 )
-       scale = 1/m_hist->GetEntries();
-     else
-       scale=1.;
-     int nb = m_hist->GetNdivisions();
-     double error = 0;
-     double value = 0;
-     for (int i=1;i<=nb;i++) {
-       error = m_hist-> GetBinError(i);
-       value = m_hist-> GetBinContent(i);
-       error = error*scale;
-       value = value*scale;
-       m_hist->SetBinError(i,error);   
-       m_hist->SetBinContent(i,value);   
-     } 
-       //     m_hist->Scale(scale);
-   }
-
-   void normHE(TH1F* m_hist, TH1F* m_histN)
-   {
-     int nd1 = m_hist->GetNdivisions();
-     int nd2 = m_histN->GetNdivisions();
-     if (nd1 != nd2) cout<<"ERROR : wrong set of histograms"<<endl;
-     double error = 0;
-     double value = 0;
-     double scale = 0;
-     for (int i=1;i<=nd1;i++) {
-       error = m_hist-> GetBinError(i);
-       value = m_hist-> GetBinContent(i);
-       scale = m_histN-> GetBinContent(i);
-       if (scale != 0) scale = 1./scale;
-       //       else scale = 1.
-       error = error*scale;
-       value = value*scale;
-       m_hist->SetBinError(i,error);   
-       m_hist->SetBinContent(i,value);   
-     } 
-       //     m_hist->Scale(scale);
-   }
-
- protected:
-   TObjArray* m_hlist;
-   // pointer to tree read from  file
-   TTree* m_tree;
- 
- 
- 
- };
-
- class EgammaIDHists:public Hists{
- public:
-   EgammaIDHists(char* ntupFileName, char* histFileName):Hists(ntupFileName, histFileName){
-     cout<<"EgammaIdHists construction"<<endl;
- 
-     this->bookHists();
-     this->fillHists();
-     this->writeHistsToDisk(histFileName);
- 
-   }
-   void bookHists(){
-     cout<<"EgammaIDHists booking..."<<endl;
-     
-       m_h100 = new TH1F("m_h100","Number of tracks", 50,0.,500);
-       m_h101 = new TH1F("m_h101","Number of clusters", 15,0.,15.);
-       m_h102 = new TH1F("m_h102","Fake rate vs cluster Et", 100,0.,110000.);
-       m_h103 = new TH1F("m_h103","Fake rate vs #eta", 25,0.,2.5);
-
-       m_h1 = new TH1F("m_h1","Eta of e/gamma object", 25,0.,2.5);
-       m_h2 = new TH1F("m_h2","Eta of e/gamma object", 21,0.,2.1);
-
-       m_h3 = new TH1F("m_h3","TRT 'zeros' w/o Outliers", 21,0.,2.1);
-       m_h4 = new TH1F("m_h4","TRT 'zeros' w/ Outliers", 21,0.,2.1);
-       m_h5 = new TH1F("m_h5","TRT hits w/o Outliers", 50,0.,50.);
-       m_h6 = new TH1F("m_h6","TRT hits w/ Outliers", 50,0.,50.);
-       m_h7 = new TH1F("m_h7","TR hits w/o Outliers", 20,0.,20.);
-       m_h8 = new TH1F("m_h8","TR hits w/ Outliers", 20,0.,20.);
-       m_h9 = new TH1F("m_h9","TR ratio w/o Outliers", 50,0.,1.);
-       m_h10 = new TH1F("m_h10","TR ratio w/ Outliers", 50,0.,1.);
-
-       m_h11 = new TH1F("m_h11","BLayer 'zeros'", 25,0.,2.5);
-       m_h12 = new TH1F("m_h12","Pixel 'zeros'", 25,0.,2.5);
-       m_h13 = new TH1F("m_h13","SCT 'zeros'", 25,0.,2.5);
-       m_h14 = new TH1F("m_h14","Silicons 'zeros'", 25,0.,2.5);
-       m_h15 = new TH1F("m_h15","BLayer hits", 5,0.,5.);
-       m_h16 = new TH1F("m_h16","Pixel hits", 10,0.,10.);
-       m_h17 = new TH1F("m_h17","SCT hits", 20,0.,20.);
-       m_h18 = new TH1F("m_h18","Silicons hits",20,0.,20.);
-
-       m_h19 = new TH1F("m_h19","Et of e/gamma cluster",100,0.,110000.);
-       m_h104 = new TH1F("m_h104","Et of e/gamma cluster",100,0.,110000.);
-       m_h20 = new TH1F("m_h20","E/P of e/gamma object",100,0.,4.5);
-       m_h21 = new TH1F("m_h21","A0 of e/gamma track",100,-4.,4.);
-       m_h22 = new TH1F("m_h22","dPhi of e/gamma object",100,-0.05,0.05);
-       m_h23 = new TH1F("m_h23","dEta of e/gamma object",100,-0.05,0.05);
-
-       m_h24 = new TH1F("m_h24","IsEM efficiencies", 30,0.,30.);
-       m_h25 = new TH1F("m_h25","IsEM efficiency vs Eta", 25,0.,2.5);
-       m_h26 = new TH1F("m_h26","Pt/PtTruth", 100,0.,2.);
- 
-       m_h30 = new TH1F("m_h30","E237", 150,0.,150000.);
-       m_h31 = new TH1F("m_h31","E277", 150,0.,150000.);
-       m_h32 = new TH1F("m_h32","Reta37", 110,0.,1.1);
-
-       m_h33 = new TH1F("m_h33","Wtot", 400,0.,10.);
-       m_h34 = new TH1F("m_h34","Weta2c", 100,0.,0.05);
-       m_h35 = new TH1F("m_h35","Weta1c", 100,0.,1.);
-
-       m_h36 = new TH1F("m_h36","Emax2", 220,-200.,2000.);
-       m_h37 = new TH1F("m_h37","Emin", 220,-200.,2000.);
-       m_h38 = new TH1F("m_h38","DeltaEmax2", 110,-0.1,1.);
-       m_h39 = new TH1F("m_h39","DeltaE", 110,-50.,500.);
-
-       m_h40 = new TH1F("m_h40","Fracm", 100,0.,1.);
-       m_h41 = new TH1F("m_h41","EtCone20", 200,-5000.,15000.);
-       m_h42 = new TH1F("m_h42","EtConeIso", 110,-0.1,1.);
-
-     m_hlist->Add(m_h1);
-     m_hlist->Add(m_h2);
-     m_hlist->Add(m_h3);
-     m_hlist->Add(m_h4);
-     m_hlist->Add(m_h5);
-     m_hlist->Add(m_h6);
-     m_hlist->Add(m_h7);
-     m_hlist->Add(m_h8);
-     m_hlist->Add(m_h9);
-     m_hlist->Add(m_h10);
-     m_hlist->Add(m_h11);
-     m_hlist->Add(m_h12);
-     m_hlist->Add(m_h13);
-     m_hlist->Add(m_h14);
-     m_hlist->Add(m_h15);
-     m_hlist->Add(m_h16);
-     m_hlist->Add(m_h17);
-     m_hlist->Add(m_h18);
-     m_hlist->Add(m_h19);
-     m_hlist->Add(m_h20);
-     m_hlist->Add(m_h21);
-     m_hlist->Add(m_h22);
-     m_hlist->Add(m_h23);
-     m_hlist->Add(m_h24);
-     m_hlist->Add(m_h25);
-     m_hlist->Add(m_h26);
-     m_hlist->Add(m_h30);
-     m_hlist->Add(m_h31);
-     m_hlist->Add(m_h32);
-     m_hlist->Add(m_h33);
-     m_hlist->Add(m_h34);
-     m_hlist->Add(m_h35);
-     m_hlist->Add(m_h36);
-     m_hlist->Add(m_h37);
-     m_hlist->Add(m_h38);
-     m_hlist->Add(m_h39);
-     m_hlist->Add(m_h40);
-     m_hlist->Add(m_h41);
-     m_hlist->Add(m_h42);
-     m_hlist->Add(m_h101);
-     m_hlist->Add(m_h102);
-     m_hlist->Add(m_h103);
-     m_hlist->Add(m_h104);
-     
-   }
-
-   // uses the ntuple to fill the hists which are then normalised 
-   void fillHists(){
-   if (m_tree == 0) return;
-   // Declaration of leave types
-   UInt_t          NPar;
-   //   vector<long>    *Type;
-   vector<float>   *PtGen;
-   vector<float>   *PhiGen;
-   vector<float>   *EtaGen;
-   UInt_t           Trk_totalNumTracks;
-   vector<float>   *Trk_d0;
-   vector<float>   *Trk_pt;
-   vector<long>    *Trk_truthNt;
-   vector<long>    *Trk_numberOfBLayerHits;
-   vector<long>    *Trk_numberOfPixelHits;
-   vector<long>    *Trk_numberOfSCTHits;
-   vector<long>    *Trk_numberOfTRTHits;
-   vector<long>    *Trk_numberOfTRTHighThresholdHits;
-   vector<long>    *Trk_numberOfTRTOutliers;
-   vector<long>    *Trk_numberOfTRTHighThresholdOutliers;
-   vector<long>    *Trk_ParticlePdg;
-   Int_t            Ele_nc;
-   vector<float>   *Ele_e;
-   vector<float>   *Ele_eta2;
-   vector<float>   *Ele_phi;
-   vector<float>   *Ele_cl_et;
-   vector<float>   *Ele_cl_eta;
-   vector<long>    *Ele_IsEM;
-   vector<long>    *Ele_trkmatchnt;
-   vector<long>    *Ele_numtracks;
-   vector<float>   *Ele_eoverp;
-   vector<float>   *Ele_deta1;
-   vector<float>   *Ele_dphi1;
-   vector<float>   *Ele_deta2;
-   vector<float>   *Ele_dphi2;
-   vector<float>   *Ele_Etha1;
-   vector<float>   *Ele_Etha;
-   vector<float>   *Ele_Eha1;
-   vector<float>   *Ele_F1;
-   vector<float>   *Ele_F3;
-   vector<float>   *Ele_E233;
-   vector<float>   *Ele_E237;
-   vector<float>   *Ele_E277;
-   vector<float>   *Ele_Weta1;
-   vector<float>   *Ele_Weta2;
-   vector<float>   *Ele_E2ts1;
-   vector<float>   *Ele_E2tsts1;
-   vector<float>   *Ele_Wtots1;
-   vector<float>   *Ele_Emins1;
-   vector<float>   *Ele_Emaxs1;
-   vector<float>   *Ele_Fracs1;
-   vector<float>   *Ele_EtCone20;
- 
-   // List of branches
-   TBranch        *b_NPar;   //!
-   //   TBranch        *b_Type;   //!
-   TBranch        *b_PtGen;   //!
-   TBranch        *b_PhiGen;   //!
-   TBranch        *b_EtaGen;   //!
-   TBranch        *b_Trk_totalNumTracks;   //!
-   TBranch        *b_Trk_truthNt;   //!
-   TBranch        *b_Trk_d0;   //!
-   TBranch        *b_Trk_pt;   //!
-   TBranch        *b_Trk_numberOfBLayerHits;   //!
-   TBranch        *b_Trk_numberOfPixelHits;   //!
-   TBranch        *b_Trk_numberOfSCTHits;   //!
-   TBranch        *b_Trk_numberOfTRTHits;   //!
-   TBranch        *b_Trk_numberOfTRTHighThresholdHits;   //!
-   TBranch        *b_Trk_numberOfTRTOutliers;   //!
-   TBranch        *b_Trk_numberOfTRTHighThresholdOutliers;   //!
-   TBranch        *b_Trk_ParticlePdg;   //!
-   TBranch        *b_eg_nc;   //!
-   TBranch        *b_Ele_e;   //!
-   TBranch        *b_Ele_eta2;   //!
-   TBranch        *b_Ele_phi;   //!
-   TBranch        *b_Ele_cl_et;   //!
-   TBranch        *b_Ele_cl_eta;   //!
-   TBranch        *b_Ele_IsEM;   //!
-   TBranch        *b_Ele_trkmatchnt;   //!
-   TBranch        *b_Ele_numtracks;   //!
-   TBranch        *b_Ele_eoverp;   //!
-   TBranch        *b_Ele_deta1;   //!
-   TBranch        *b_Ele_dphi1;   //!
-   TBranch        *b_Ele_deta2;   //!
-   TBranch        *b_Ele_dphi2;   //!
-   TBranch        *b_Ele_Etha1;   //!
-   TBranch        *b_Ele_Etha;   //!
-   TBranch        *b_Ele_Eha1;   //!
-   TBranch        *b_Ele_F1;   //!
-   TBranch        *b_Ele_F3;   //!
-   TBranch        *b_Ele_E233;   //!
-   TBranch        *b_Ele_E237;   //!
-   TBranch        *b_Ele_E277;   //!
-   TBranch        *b_Ele_Weta1;   //!
-   TBranch        *b_Ele_Weta2;   //!
-   TBranch        *b_Ele_E2ts1;   //!
-   TBranch        *b_Ele_E2tsts1;   //!
-   TBranch        *b_Ele_Wtots1;   //!
-   TBranch        *b_Ele_Emins1;   //!
-   TBranch        *b_Ele_Emaxs1;   //!
-   TBranch        *b_Ele_Fracs1;   //!
-   TBranch        *b_Ele_EtCone20;   //!
-
-   // Set object pointer
-   PtGen = 0;
-   Trk_d0 = 0;
-   Trk_pt = 0;
-   Trk_truthNt = 0;
-   Trk_numberOfBLayerHits = 0;
-   Trk_numberOfPixelHits = 0;
-   Trk_numberOfSCTHits = 0;
-   Trk_numberOfTRTHits = 0;
-   Trk_numberOfTRTHighThresholdHits = 0;
-   Trk_numberOfTRTOutliers = 0;
-   Trk_numberOfTRTHighThresholdOutliers = 0;
-   Trk_ParticlePdg = 0;
-   Ele_e = 0;
-   Ele_eta2 = 0;
-   Ele_phi = 0;
-   Ele_cl_et = 0;
-   Ele_cl_eta = 0;
-   Ele_IsEM = 0;
-   Ele_trkmatchnt = 0;
-   Ele_numtracks = 0;
-   Ele_eoverp = 0;
-   Ele_deta1 = 0;
-   Ele_dphi1 = 0;
-   Ele_deta2 = 0;
-   Ele_dphi2 = 0;
-   Ele_Etha1 = 0;
-   Ele_Etha = 0;
-   Ele_Eha1 = 0;
-   Ele_F1 = 0;
-   Ele_F3 = 0;
-   Ele_E233 = 0;
-   Ele_E237 = 0;
-   Ele_E277 = 0;
-   Ele_Weta1 = 0;
-   Ele_Weta2 = 0;
-   Ele_E2ts1 = 0;
-   Ele_E2tsts1 = 0;
-   Ele_Wtots1 = 0;
-   Ele_Emins1 = 0;
-   Ele_Emaxs1 = 0;
-   Ele_Fracs1 = 0;
-   // Set branch addresses and branch pointers
-   if (!m_tree) return;
-
-   m_tree->SetBranchAddress("NPar", &NPar, &b_NPar);
-   m_tree->SetBranchAddress("Trk_totalNumTracks", &Trk_totalNumTracks, &b_Trk_totalNumTracks);
-   m_tree->SetBranchAddress("Trk_truthNt", &Trk_truthNt, &b_Trk_truthNt);
-   m_tree->SetBranchAddress("Trk_d0", &Trk_d0, &b_Trk_d0);
-   m_tree->SetBranchAddress("Trk_pt", &Trk_pt, &b_Trk_pt);
-   m_tree->SetBranchAddress("PtGen", &PtGen, &b_PtGen);
-   m_tree->SetBranchAddress("Trk_numberOfBLayerHits", &Trk_numberOfBLayerHits, &b_Trk_numberOfBLayerHits);
-   m_tree->SetBranchAddress("Trk_numberOfPixelHits", &Trk_numberOfPixelHits, &b_Trk_numberOfPixelHits);
-   m_tree->SetBranchAddress("Trk_numberOfSCTHits", &Trk_numberOfSCTHits, &b_Trk_numberOfSCTHits);
-   m_tree->SetBranchAddress("Trk_numberOfTRTHits", &Trk_numberOfTRTHits, &b_Trk_numberOfTRTHits);
-   m_tree->SetBranchAddress("Trk_numberOfTRTHighThresholdHits", &Trk_numberOfTRTHighThresholdHits, &b_Trk_numberOfTRTHighThresholdHits);
-   m_tree->SetBranchAddress("Trk_numberOfTRTOutliers", &Trk_numberOfTRTOutliers, &b_Trk_numberOfTRTOutliers);
-   m_tree->SetBranchAddress("Trk_numberOfTRTHighThresholdOutliers", &Trk_numberOfTRTHighThresholdOutliers, &b_Trk_numberOfTRTHighThresholdOutliers);
-   m_tree->SetBranchAddress("Trk_ParticlePdg", &Trk_ParticlePdg, &b_Trk_ParticlePdg);
-
-   m_tree->SetBranchAddress("Ele_nc", &Ele_nc, &b_eg_nc);
-   m_tree->SetBranchAddress("Ele_e", &Ele_e, &b_Ele_e);
-   m_tree->SetBranchAddress("Ele_eta2", &Ele_eta2, &b_Ele_eta2);
-   m_tree->SetBranchAddress("Ele_phi", &Ele_phi, &b_Ele_phi);
-   m_tree->SetBranchAddress("Ele_cl_et", &Ele_cl_et, &b_Ele_cl_et);
-   m_tree->SetBranchAddress("Ele_cl_eta", &Ele_cl_eta, &b_Ele_cl_eta);
-   m_tree->SetBranchAddress("Ele_IsEM", &Ele_IsEM, &b_Ele_IsEM);
-   m_tree->SetBranchAddress("Ele_trkmatchnt", &Ele_trkmatchnt, &b_Ele_trkmatchnt);
-   m_tree->SetBranchAddress("Ele_numtracks", &Ele_numtracks, &b_Ele_numtracks);
-   m_tree->SetBranchAddress("Ele_eoverp", &Ele_eoverp, &b_Ele_eoverp);
-   m_tree->SetBranchAddress("Ele_deta1", &Ele_deta1, &b_Ele_deta1);
-   m_tree->SetBranchAddress("Ele_dphi1", &Ele_dphi1, &b_Ele_dphi1);
-   m_tree->SetBranchAddress("Ele_deta2", &Ele_deta2, &b_Ele_deta2);
-   m_tree->SetBranchAddress("Ele_dphi2", &Ele_dphi2, &b_Ele_dphi2);
-   m_tree->SetBranchAddress("Ele_Etha1", &Ele_Etha1, &b_Ele_Etha1);
-   m_tree->SetBranchAddress("Ele_Etha", &Ele_Etha, &b_Ele_Etha);
-   m_tree->SetBranchAddress("Ele_Eha1", &Ele_Eha1, &b_Ele_Eha1);
-   m_tree->SetBranchAddress("Ele_F1", &Ele_F1, &b_Ele_F1);
-   m_tree->SetBranchAddress("Ele_F3", &Ele_F3, &b_Ele_F3);
-   m_tree->SetBranchAddress("Ele_E233", &Ele_E233, &b_Ele_E233);
-   m_tree->SetBranchAddress("Ele_E237", &Ele_E237, &b_Ele_E237);
-   m_tree->SetBranchAddress("Ele_E277", &Ele_E277, &b_Ele_E277);
-   m_tree->SetBranchAddress("Ele_Weta1", &Ele_Weta1, &b_Ele_Weta1);
-   m_tree->SetBranchAddress("Ele_Weta2", &Ele_Weta2, &b_Ele_Weta2);
-   m_tree->SetBranchAddress("Ele_E2ts1", &Ele_E2ts1, &b_Ele_E2ts1);
-   m_tree->SetBranchAddress("Ele_E2tsts1", &Ele_E2tsts1, &b_Ele_E2tsts1);
-   m_tree->SetBranchAddress("Ele_Wtots1", &Ele_Wtots1, &b_Ele_Wtots1);
-   m_tree->SetBranchAddress("Ele_Emins1", &Ele_Emins1, &b_Ele_Emins1);
-   m_tree->SetBranchAddress("Ele_Emaxs1", &Ele_Emaxs1, &b_Ele_Emaxs1);
-   m_tree->SetBranchAddress("Ele_Fracs1", &Ele_Fracs1, &b_Ele_Fracs1);
-   m_tree->SetBranchAddress("Ele_EtCone20", &Ele_EtCone20, &b_Ele_EtCone20);
-
-
-      Float_t eta=0;
-      Long64_t IsEM=0;
-      Int_t NumTRT=0;
-      Int_t NumTRTOut=0;
-      Int_t NumTRTTotal=0;
-      Int_t Ntrack=0;
-      
-      Int_t Counter = 0;  
-
-   Int_t nentries = m_tree->GetEntriesFast();
-   cout<<nentries<<endl;
-
-   Long64_t nbytes = 0, nb = 0;
-   for (Int_t jentry=0; jentry<nentries;jentry++) {
-     //      Long64_t ientry = LoadTree(jentry);
-     //      if (ientry < 0) break;
-      //      cout<<"ientry  "<<ientry<<endl;
-      Int_t nc=Ele_nc;
-            m_h101->Fill(nc);
-      Int_t numTracks=Trk_totalNumTracks;
-            m_h100->Fill(numTracks);
-      //      cout<<"number of egamma objects "<<nc<<endl;
-      for (Int_t inc=0;inc<nc;inc++) {
-       	Int_t istrack = (*Ele_numtracks)[inc];
-        if (istrack<1) continue;  
-        eta =fabs( (*Ele_eta2)[inc]);
-             Float_t Et=(*Ele_cl_et)[inc];
-	     if (Et<17000.) continue;
-	Counter++;
-	  if (eta<2.47) {
-            m_h1->Fill(eta);
-
-
-	//-----------------IsEM efficiencies filling ------------
-	  IsEM = (*Ele_IsEM)[inc];
-	  //	  cout<<"IsEM = "<<IsEM<<endl;
-          if ((IsEM&0x1)==0)       m_h24->Fill(1,1.);
-          if ((IsEM&0x10)==0)      m_h24->Fill(4,1.);
-          if ((IsEM&0x20)==0)      m_h24->Fill(5,1.);
-          if ((IsEM&0x40)==0)      m_h24->Fill(6,1.);
-          if ((IsEM&0x80)==0)      m_h24->Fill(7,1.);
-          if ((IsEM&0x100)==0)     m_h24->Fill(8,1.);
-          if ((IsEM&0x200)==0)     m_h24->Fill(9,1.);
-          if ((IsEM&0x400)==0)     m_h24->Fill(10,1.);
-          if ((IsEM&0x800)==0)     m_h24->Fill(11,1.);
-          if ((IsEM&0x1000)==0)    m_h24->Fill(12,1.);
-          if ((IsEM&0x2000)==0)    m_h24->Fill(13,1.);
-          if ((IsEM&0x4000)==0)    m_h24->Fill(14,1.);
-          if ((IsEM&0x10000)==0)   m_h24->Fill(16,1.);
-          if ((IsEM&0x20000)==0)   m_h24->Fill(17,1.);
-          if ((IsEM&0x40000)==0)   m_h24->Fill(18,1.);
-          if ((IsEM&0x80000)==0)   m_h24->Fill(19,1.);
-          if ((IsEM&0x100000)==0)  m_h24->Fill(20,1.);
-          if ((IsEM&0x200000)==0)  m_h24->Fill(21,1.);
-          if ((IsEM&0x400000)==0)  m_h24->Fill(22,1.);
-	  //          if ((IsEM&0x1000000)==0) m_h24->Fill(24,1.);
-          if ((IsEM&0x2000000)==0) m_h24->Fill(25,1.);
-          if (IsEM==0)             m_h24->Fill(29,1.);
-	  //-----------------------------------------------------
-           
-
-
-            if (IsEM == 0) m_h25->Fill(eta);
-             Ntrack = (*Ele_trkmatchnt)[inc];
-
-
-   Float_t E237 = (*Ele_E237)[inc];
-   Float_t E277 = (*Ele_E277)[inc];
-   Float_t Weta1c = (*Ele_Weta1)[inc];
-   Float_t Weta2c = (*Ele_Weta2)[inc];
-   Float_t Emax2 = (*Ele_E2tsts1)[inc];
-   Float_t Wtot = (*Ele_Wtots1)[inc];
-   m_h33->Fill(Wtot);
-   m_h34->Fill(Weta2c);
-   m_h35->Fill(Weta1c);
-   Float_t Emin = (*Ele_Emins1)[inc];
-   Float_t Fracm = (*Ele_Fracs1)[inc];
-   m_h40->Fill(Fracm);
-   m_h36->Fill(Emax2);
-   m_h37->Fill(Emin);
-
-   Float_t EtCone20 = (*Ele_EtCone20)[inc];
-
-   Float_t EtConeIso = 0;
-   if (Et != 0) EtConeIso = EtCone20/Et;
-   m_h41->Fill(EtCone20);
-   m_h42->Fill(EtConeIso);
-   Float_t Reta37 = 0;
-
-   Int_t NTtruth=(*Trk_truthNt)[Ntrack];
-   Bool_t Electron = true;
-   if (abs((*Trk_ParticlePdg)[Ntrack])!=11) Electron = false;
-   if (!Electron) {
-     m_h102->Fill(Et);
-     m_h103->Fill(eta);
-   }
-   if (E277 !=0) Reta37 = E237/E277;
-   m_h30->Fill(E237);
-   m_h31->Fill(E277);
-   m_h32->Fill(Reta37);
-   if (Emax2 > 0) {
-     Float_t DeltaEmax2 = Emax2/(1000. + 0.009*Et);
-     Float_t DE = Emax2 - Emin;
-     m_h38->Fill(DeltaEmax2);
-     m_h39->Fill(DE);
-   }
-             Float_t EoverP=(*Ele_eoverp)[inc];
-             Float_t dPhi=(*Ele_dphi2)[inc];
-             Float_t dEta=(*Ele_deta1)[inc];
-             Float_t A0=(*Trk_d0)[Ntrack];
-             Float_t Pt=(*Trk_pt)[Ntrack];
-             Float_t PtTruth=(*PtGen)[NTtruth];
-             Float_t PtRes = 0;
-             if (PtTruth != 0) PtRes = Pt/PtTruth;
-             m_h20->Fill(EoverP);
-             m_h19->Fill(Et);
-             m_h104->Fill(Et);
-             m_h21->Fill(A0);
-             m_h22->Fill(dPhi);
-             m_h23->Fill(dEta);
-             m_h26->Fill(PtRes);
-
-
-
-             Int_t NumBL =(*Trk_numberOfBLayerHits)[Ntrack];
-             Int_t NumPix =(*Trk_numberOfPixelHits)[Ntrack];
-             Int_t NumSCT =(*Trk_numberOfSCTHits)[Ntrack];
-             Int_t NumSi = NumPix + NumSCT;
-	     if (NumBL == 0)  m_h11->Fill(eta);          
-	     if (NumPix == 0) m_h12->Fill(eta);          
-	     if (NumSCT == 0) m_h13->Fill(eta);          
-	     if (NumSi == 0)  m_h14->Fill(eta);          
-             m_h15->Fill(NumBL);
-             m_h16->Fill(NumPix);
-             m_h17->Fill(NumSCT);
-             m_h18->Fill(NumSi);
-	  }
-	  if (eta<2.){
-            m_h2->Fill(eta);
-            NumTRT =(*Trk_numberOfTRTHits)[Ntrack];
-            NumTRTOut =(*Trk_numberOfTRTOutliers)[Ntrack];
-            NumTRTTotal = NumTRT + NumTRTOut;
-            Int_t NumTR = (*Trk_numberOfTRTHighThresholdHits)[Ntrack];
-            Int_t NumTROut = (*Trk_numberOfTRTHighThresholdOutliers)[Ntrack];
-            Int_t NumTRTotal = NumTR + NumTROut;
-            Float_t TRTratio = 0;
-            Float_t TRTTotalRatio = 0;
-            if (NumTRT > 0.) TRTratio = (float)NumTR/NumTRT;
-            if (NumTRTTotal > 0.) TRTTotalRatio = (float)NumTRTotal/NumTRTTotal;
-
-            if (NumTRT == 0) m_h3->Fill(eta);
-            if (NumTRTTotal == 0) m_h4->Fill(eta);
-
-            m_h5->Fill(NumTRT);
-            m_h6->Fill(NumTRTTotal);
-            m_h7->Fill(NumTR);
-            m_h8->Fill(NumTRTotal);
-            m_h9->Fill(TRTratio);
-            m_h10->Fill(TRTTotalRatio);
-	  }
-      }
-      nb = m_tree->GetEntry(jentry);   nbytes += nb; // m_tree <-> fChain
-      // if (Cut(ientry) < 0) continue;
-   }
-   //------------normalisation of IsEM efficiencies---------
-        Double_t scale1=m_h1->GetEntries();
-        Double_t scale2=m_h2->GetEntries();
-     if ( m_h1->GetEntries() != 0 )
-       scale1 = 1/m_h1->GetEntries();
-     else
-       scale=1.;
-     if ( m_h2->GetEntries() != 0 )
-       scale2 = 1/m_h2->GetEntries();
-     else
-       scale=2.;
-     Int_t nd = m_h24->GetNdivisions();
-     Double_t error = 0;
-     Double_t value = 0;
-     for (Int_t i=1;i<=nd;i++) {
-       Double_t scale = scale1;
-       if (i==25) scale = scale2;
-       error = m_h24-> GetBinError(i);
-       value = m_h24-> GetBinContent(i);
-       error = error*scale;
-       value = value*scale;
-       m_h24->SetBinError(i,error);   
-       m_h24->SetBinContent(i,value);   
-     } 
-     //-------------------------------------------------------
-   normHE(m_h3,m_h2);
-   normHE(m_h4,m_h2);
-   normHE(m_h11,m_h1);
-   normHE(m_h12,m_h1);
-   normHE(m_h13,m_h1);
-   normHE(m_h14,m_h1);
-   normHE(m_h25,m_h1);
-   normH(m_h5);
-   normH(m_h6);
-   normH(m_h7);
-   normH(m_h8);
-   normH(m_h9);
-   normH(m_h10);
-   normH(m_h15);
-   normH(m_h16);
-   normH(m_h17);
-   normH(m_h18);
-   normH(m_h19);
-   normH(m_h20);
-   normH(m_h21);
-   normH(m_h22);
-   normH(m_h23);
-   normH(m_h26);
-   normH(m_h30);
-   normH(m_h31);
-   normH(m_h32);
-   normH(m_h33);
-   normH(m_h34);
-   normH(m_h35);
-   normH(m_h36);
-   normH(m_h37);
-   normH(m_h38);
-   normH(m_h39);
-   normH(m_h40);
-   normH(m_h41);
-   normH(m_h42);
-   normH(m_h100);
-   normH(m_h101);
-   normHE(m_h102,m_h104);
-   normHE(m_h103,m_h1);
-   cout<<"Processed  "<<Counter<<" egamma objects"<<endl;
-   }
-
- private:
-   // pointers to histogram objects
-   TH1F* m_h1;
-   TH1F* m_h2;
-   TH1F* m_h3;
-   TH1F* m_h4;
- 
-   TH1F* m_h5;
-   TH1F* m_h6;
-   TH1F* m_h7; 
-   TH1F* m_h8;
- 
-   TH1F* m_h9;
-   TH1F* m_h10;
-   TH1F* m_h11; 
-   TH1F* m_h12;
- 
-   TH1F* m_h13;
-   TH1F* m_h14;
-   TH1F* m_h15; 
-   TH1F* m_h16;
- 
-   TH1F* m_h17; 
-   TH1F* m_h18;
-   TH1F* m_h19; 
-   TH1F* m_h20;
-   TH1F* m_h26;
- 
-   TH1F* m_h21; 
-   TH1F* m_h22; 
-   TH1F* m_h23; 
-   TH1F* m_h24; 
-   TH1F* m_h25; 
-
-   TH1F* m_h30; 
-   TH1F* m_h31; 
-   TH1F* m_h32; 
-   TH1F* m_h33; 
-   TH1F* m_h34; 
-
-   TH1F* m_h35; 
-   TH1F* m_h36; 
-   TH1F* m_h37; 
-   TH1F* m_h38; 
-   TH1F* m_h39; 
-
-   TH1F* m_h40; 
-   TH1F* m_h41; 
-   TH1F* m_h42; 
- 
-   TH1F* m_h100; 
-   TH1F* m_h101; 
-   TH1F* m_h102; 
-   TH1F* m_h103; 
-   TH1F* m_h104; 
- };
- // Entrance point to the macro. 
- // Expects to find ntuple.root in current directory.
- // Outputs histograms to egammaID_validation.hist
- int egammaValidation_ID_hist(char* ntupFile)
- {
- 
-   EgammaIDHists  eg(ntupFile, "egammaID_validation.hist");
- 
-   return 0;
- }
diff --git a/Reconstruction/egamma/egammaValidation/share/egammaValidation_RTT_topOptions.py b/Reconstruction/egamma/egammaValidation/share/egammaValidation_RTT_topOptions.py
deleted file mode 100755
index b597cdd55da046e5d4bfa431dae46a679a25aab9..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/share/egammaValidation_RTT_topOptions.py
+++ /dev/null
@@ -1,50 +0,0 @@
-doMonitoring=False
-doWriteTAG=False
-doWriteAOD=False
-doWriteESD=False
-doCBNT=False
-doAOD=True
-doTruth=False
-
-
-#PoolRDOInput=[""]
-# number of event to process (can be modified externally)
-if not 'EvtMax' in dir():
-     EvtMax=2000
-
-OutputLevel = INFO 
-
-#-----------------------------------------------------------
-include("RecExCommon/RecExCommon_flags.py")
-#-----------------------------------------------------------
-
-
-
-#from TriggerJobOpts.TriggerConfigGetter import TriggerConfigGetter
-#TriggerConfigGetter("ReadPoolRDO")
-
-include ("RecExCommon/RecExCommon_topOptions.py")
-
-from TrigDecisionMaker.TrigDecisionMakerConfig import WriteTrigDecision
-trigDecWriter = WriteTrigDecision()
-
-
-from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool
-tdt = Trig__TrigDecisionTool("TrigDecisionTool")
-ToolSvc += tdt
-
- 
- 
-########Setup egamma monitoring ################
-from GaudiSvc.GaudiSvcConf import THistSvc
-THistSvc = Service ("THistSvc")
-THistSvc.Output += ["egammaMon DATAFILE='egammaMon.root' OPT='RECREATE'"]
-
-from AthenaMonitoring.DQMonFlags import DQMonFlags
-DQMonFlags.monManEnvironment         = "tier0ESD"
-DQMonFlags.monManFileKey = "egammaMon"
-DQMonFlags.useTrigger = True 
-
-include ("egammaValidation/egammaMonitoring_jobOptions.py")
-#include ("egammaPerformance/egamma_MonitorTool.py")
-
diff --git a/Reconstruction/egamma/egammaValidation/share/egammaValidation_hist.C b/Reconstruction/egamma/egammaValidation/share/egammaValidation_hist.C
deleted file mode 100755
index 06e4538dd9046dd652c3bd01a5dc37b24e3e3ea0..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/share/egammaValidation_hist.C
+++ /dev/null
@@ -1,1352 +0,0 @@
-//********************************
-//Macro for egamma software validation
-//
-//********************************
-
-//////////////////////////////////////////////////////
-//
-// Base class. Leaves booking and filling to derived classes
-// virtual doesnt seem to work, so have to cut and paste
-// calling of the various methods to derived classes
-//
-//////////////////////////////////////////////////////
-class Hists{
-public:
- // initialise with input file name
- Hists(char* ntupFileName, char* histFileName)
- {
-   cout<<"Hists construction"<<endl;
-    m_file    = new TFile(ntupFileName);
-    m_tree    = (TTree*) m_file->Get("CollectionTree");
-    m_hlist   = new TObjArray(0);
- }
-
-  //opens a disk file and writes out the hists
-
-  void writeHistsToDisk(char* ofname){
-    cout<<"writing..."<<endl;
-    ofile = new TFile(ofname, "recreate");
-    m_hlist->Write();
-    cout<< m_hlist->GetEntriesFast() <<endl;
-    ofile->Close();
-  }
-
-  // books histograms. Adds pointers of newly booked hists to an
-  // TObjArray list.
-  virtual void bookHists(){cout<<"Hists::booking()"<<endl;}
-  // uses the ntuple to fill the hists which are then normalised 
-  virtual void fillHists(){}
-  // normalise the histograms
-  void normH(TH1F* m_hist)
-  {
-    double scale=m_hist->GetEntries();
-    if ( m_hist->GetEntries() != 0 )
-      scale = 1/m_hist->GetEntries();
-    else
-      scale=1.;
-
-    m_hist->Scale(scale);
-  }
-protected:
-  TObjArray* m_hlist;
-  // pointer to tree read from  file
-  TTree* m_tree;
-
-};
-  
-class ClusterHists:public Hists{
-public:
-  ClusterHists(char* ntupFileName, char* histFileName):Hists(ntupFileName, histFileName){
-    cout<<"ClusterHists construction"<<endl;
-
-    this->bookHists();
-    this->fillHists();
-    this->writeHistsToDisk(histFileName);
-
-  }
-  void bookHists(){
-    cout<<"ClusterHists booking..."<<endl;
-    
-    m_h1    = new TH1F("m_h1","Cluster E (GeV)",50,70.,110.);
-    m_h2    = new TH1F("m_h2","Cluster E (GeV) - barrel",50,70.,110.);
-    m_h3    = new TH1F("m_h3","Cluster E (GeV) - endcap",50,70.,110.);
-    m_h4    = new TH1F("m_h4","Cluster eta",40,-2.5,2.5);
-
-    m_h5    = new TH1F("m_h5","Cluster phi",25,-7.,7.);
-    m_h6    = new TH1F("m_h6","number of clusters",6,-.5,5.5);
-    m_h7    = new TProfile("m_h7","Cluster E (GeV) vs eta",30,-2.5,2.5,80.,110.);
-    m_h8    = new TH2F("m_h8","number of clusters vs eta",50,-2.5,2.5,50,-.5,5.5);
-
-    m_h9    = new TH1F("m_h9","E frac. in Presampler - barrel",50,0.,1.);
-    m_h10   = new TH1F("m_h10","E frac. in 1st samp. - barrel",50,0.,1.);
-    m_h11   = new TH1F("m_h11","E frac. in 2nd samp. - barrel",50,0.,1.);
-    m_h12   = new TH1F("m_h12","E frac. in 3rd samp. - barrel",50,0.,.1);
-
-    m_h13   = new TH1F("m_h13","E frac. in Presampler - endcap",50,0.,1.);
-    m_h14   = new TH1F("m_h14","E frac. in 1st samp. - endcap",50,0.,1.);
-    m_h15   = new TH1F("m_h15","E frac. in 2nd samp. - endcap",50,0.,1.);
-    m_h16   = new TH1F("m_h16","E frac. in 3rd samp. - endcap",50,0.,0.1);
-
-    m_h17    = new TH2F("m_h17","E  (GeV) vs phi : barrel+",50,0.,3.3,50,70.,110.);
-    m_h18    = new TH2F("m_h18","E (GeV) vs phi : barrel-",50,0.,3.3,50,70.,110.); 
-    m_h19    = new TH2F("m_h19","E  (GeV) vs phi : ec+",50,-3.3,0.,50,70.,110.);
-    m_h20    = new TH2F("m_h20","E (GeV) vs phi : ec-",50,-3.3,0.,50,70.,110.); 
-
-    m_h21    = new TH1F("m_h21","Cluster Et (GeV)",50,10.,110.);
-    m_h22    = new TH1F("m_h22","Cluster Et (GeV) - barrel",50,10.,110.);
-    m_h23    = new TH1F("m_h23","Cluster Et (GeV) - endcap",50,10.,110.);
-    m_h24    = new TProfile("m_h24","Cluster Et (GeV) vs eta",30,-2.5,2.5,10.,110.);
-
-    m_h25    = new TH2F("m_h25","Et  (GeV) vs phi : barrel+",50,0.,3.3,50,10.,110.);
-    m_h26    = new TH2F("m_h26","Et (GeV) vs phi : barrel-",50,0.,3.3,50,10.,110.); 
-    m_h27    = new TH2F("m_h27","Et  (GeV) vs phi : ec+",50,-3.3,0.,50,10.,110.);
-    m_h28    = new TH2F("m_h28","Et (GeV) vs phi : ec-",50,-3.3,0.,50,10.,110.); 
-
-    m_hlist->Add(m_h1);
-    m_hlist->Add(m_h2);
-    m_hlist->Add(m_h3);
-    m_hlist->Add(m_h4);
-    m_hlist->Add(m_h5);
-    m_hlist->Add(m_h6);
-    //profile m_hlist->Add(m_h7);
-    m_hlist->Add(m_h8);
-    m_hlist->Add(m_h9);
-    m_hlist->Add(m_h10);
-    m_hlist->Add(m_h11);
-    m_hlist->Add(m_h12);
-    m_hlist->Add(m_h13);
-    m_hlist->Add(m_h14);
-    m_hlist->Add(m_h15);
-    m_hlist->Add(m_h16);
-    m_hlist->Add(m_h17);
-    m_hlist->Add(m_h18);
-    m_hlist->Add(m_h19);
-    m_hlist->Add(m_h20);
-    m_hlist->Add(m_h21); 
-    m_hlist->Add(m_h22);
-    m_hlist->Add(m_h23);     
-    //profile m_hlist->Add(m_h24);     
-    m_hlist->Add(m_h25);     
-    m_hlist->Add(m_h26);     
-    m_hlist->Add(m_h27);     
-    m_hlist->Add(m_h28);      
-    
-  }
-
-  // uses the ntuple to fill the hists which are then normalised 
-  void fillHists(){
-    cout<<"Cluster hist filling..."<<endl;
-    
-    m_tree->Draw("cl_et*cosh(cl_eta)/1000>>m_h1","","goff");
-    normH(m_h1);
-
-    m_tree->Draw("cl_et*cosh(cl_eta)/1000>>m_h2","abs(cl_eta)<1.475","goff");
-    normH(m_h2);
-
-    m_tree->Draw("cl_et*cosh(cl_eta)/1000>>m_h3","abs(cl_eta)>=1.475","goff");
-    normH(m_h3);
-
-    m_tree->Draw("cl_et/1000>>m_h21","","goff");
-    normH(m_h21);
-
-    m_tree->Draw("cl_et/1000>>m_h22","abs(cl_eta)<1.475","goff");
-    normH(m_h22);
-
-    m_tree->Draw("cl_et/1000>>m_h23","abs(cl_eta)>=1.475","goff");
-    normH(m_h23);
-
-    m_tree->Draw("cl_eta>>m_h4","","goff");
-    normH(m_h4);
-
-    m_tree->Draw("cl_phi>>m_h5","","goff");
-    normH(m_h5);
-
-    m_tree->Draw("cl_nc>>m_h6","","goff");
-    normH(m_h6);
-
-    m_tree->Draw("cl_et*cosh(cl_eta)/1000:cl_eta>>m_h7","","goff");
- 
-    m_tree->Draw("cl_nc:cl_eta>>m_h8","","goff");
-
-
-    m_tree->Draw("cl_eemb0/(cl_eemb0+cl_eemb1+cl_eemb2+cl_eemb3)>>m_h9","abs(cl_eta)<1.475","goff");
-    normH(m_h9);
-
-    m_tree->Draw("cl_eemb1/(cl_eemb0+cl_eemb1+cl_eemb2+cl_eemb3)>>m_h10","abs(cl_eta)<1.475","goff");
-    normH(m_h10);
-
-    m_tree->Draw("cl_eemb2/(cl_eemb0+cl_eemb1+cl_eemb2+cl_eemb3)>>m_h11","abs(cl_eta)<1.475","goff");
-    normH(m_h11);
-
-    m_tree->Draw("cl_eemb3/(cl_eemb0+cl_eemb1+cl_eemb2+cl_eemb3)>>m_h12","abs(cl_eta)<1.475","goff");
-    normH(m_h12);
-
-       
-    m_tree->Draw("cl_eeme0/(cl_eeme0+cl_eeme1+cl_eeme2+cl_eeme3)>>m_h13","abs(cl_eta)>=1.475 && abs(cl_eta)<=1.8","goff");
-    normH(m_h13);
-
-    m_tree->Draw("cl_eeme1/(cl_eeme0+cl_eeme1+cl_eeme2+cl_eeme3)>>m_h14","abs(cl_eta)>=1.475","goff");
-    normH(m_h14);
-
-    m_tree->Draw("cl_eeme2/(cl_eeme0+cl_eeme1+cl_eeme2+cl_eeme3)>>m_h15","abs(cl_eta)>=1.475","goff");
-    normH(m_h15);
-
-    m_tree->Draw("cl_eeme3/(cl_eeme0+cl_eeme1+cl_eeme2+cl_eeme3)>>m_h16","abs(cl_eta)>=1.475","goff");
-    normH(m_h16);
-
-    m_tree->Draw("cl_et*cosh(cl_eta)/1000:cl_phi>>m_h17","cl_eta<1.475 && cl_eta>0","goff");
-    m_tree->Draw("cl_et*cosh(cl_eta)/1000:cl_phi>>m_h18","cl_eta>-1.475 && cl_eta<0","goff");
-    m_tree->Draw("cl_et*cosh(cl_eta)/1000:cl_phi>>m_h19","cl_eta>1.475","goff");
-    m_tree->Draw("cl_et*cosh(cl_eta)/1000:cl_phi>>m_h20","cl_eta<-1.475","goff");
-    m_tree->Draw("cl_et/1000:cl_eta>>m_h24","","goff");
-
-    m_tree->Draw("cl_et/1000:cl_phi>>m_h25","cl_eta<1.475 && cl_eta>0","goff");
-    m_tree->Draw("cl_et/1000:cl_phi>>m_h26","cl_eta>-1.475 && cl_eta<0","goff");
-    m_tree->Draw("cl_et/1000:cl_phi>>m_h27","cl_eta>1.475","goff");
-    m_tree->Draw("cl_et/1000:cl_phi>>m_h28","cl_eta<-1.475","goff");
-
-  }
-private:
-  // pointers to histogram objects
-  TH1F* m_h1;
-  TH1F* m_h2;
-  TH1F* m_h3;
-  TH1F* m_h4;
-
-  TH1F* m_h5;
-  TH1F* m_h6;
-  TProfile* m_h7; 
-  TH2F* m_h8;
-
-  TH1F* m_h9;
-  TH1F* m_h10;
-  TH1F* m_h11; 
-  TH1F* m_h12;
-
-  TH1F* m_h13;
-  TH1F* m_h14;
-  TH1F* m_h15; 
-  TH1F* m_h16;
-
-  TH2F* m_h17; 
-  TH2F* m_h18;
-  TH2F* m_h19; 
-  TH2F* m_h20;
-
-  TH1F* m_h21;
-  TH1F* m_h22;
-  TH1F* m_h23;
-  TProfile* m_h24;
-
-  TH2F* m_h25; 
-  TH2F* m_h26;
-  TH2F* m_h27; 
-  TH2F* m_h28;
-
-};
-class SoftEHists:public Hists{
-public:
-  SoftEHists(char* ntupFileName, char* histFileName):Hists(ntupFileName, histFileName){
-    cout<<"SoftEHists construction"<<endl;
-
-    this->bookHists();
-    this->fillHists();
-    this->writeHistsToDisk(histFileName);
-
-  }
-  void bookHists(){
-    cout<<"SoftEHists booking..."<<endl;
-
-    m_h1    = new TH1F("m_h1","nTR Hits",33,0.,33.);
-    m_h2    = new TH1F("m_h2","Et/pt",50,0.,3.);
-    m_h3    = new TH1F("m_h3","Position match",50,-7.,7.);
-    m_h4    = new TH1F("m_h4","Asy",50,0.,1.);
-
-    m_h5    = new TH1F("m_h5","Width",50,-0.2,1.1);
-    m_h6    = new TH1F("m_h6","E1/E",50,0.,1.);
-    m_h7    = new TH1F("m_h7","E3/E",50,0.,.2);
-    m_h8    = new TH1F("m_h8","Isolation",50,0.,1.1);
-
-    m_h9    = new TH1F("m_h9","a0",50,0.,1.);
-    m_h10   = new TH1F("m_h10","deta0",50,-4.,4.);
-    m_h11   = new TH1F("m_h11","dphi0",50,-4.,4.); 
-    m_h12   = new TH1F("m_h12","deta1",50,-0.007,0.007); 
-
-    m_h13   = new TH1F("m_h13","dphi1",50,-0.08,0.08); 
-    m_h14   = new TH1F("m_h14","deta2",50,-0.04,0.04); 
-    m_h15   = new TH1F("m_h15","dphi2",50,-0.04,0.04); 
-    m_h16   = new TH1F("m_h16","deta3",50,-0.09,0.09); 
-
-    m_h17    = new TH1F("m_h17","dphi3",50,-0.015,0.015); 
-    m_h18    = new TH1F("m_h18","E131",100,0,30.);
-    m_h19    = new TH1F("m_h19","Ecore",100,0,120.); 
-    m_h20    = new TH1F("m_h20","number of soft e",6,-.5,5.5); 
-
-    m_hlist->Add(m_h1);
-    m_hlist->Add(m_h2);
-    m_hlist->Add(m_h3);
-    m_hlist->Add(m_h4);
-    m_hlist->Add(m_h5);
-    m_hlist->Add(m_h6);
-    m_hlist->Add(m_h7);
-    m_hlist->Add(m_h8);
-    m_hlist->Add(m_h9);
-    m_hlist->Add(m_h10);
-    m_hlist->Add(m_h11);
-    m_hlist->Add(m_h12);
-    m_hlist->Add(m_h13);
-    m_hlist->Add(m_h14);
-    m_hlist->Add(m_h15);
-    m_hlist->Add(m_h16);
-    m_hlist->Add(m_h17);
-    m_hlist->Add(m_h18);
-    m_hlist->Add(m_h19);
-    m_hlist->Add(m_h20);
-
-  }
-
-  // uses the ntuple to fill the hists which are then normalised 
-  void fillHists(){
-    cout<<"SoftE hist filling..."<<endl;
-    
-    m_tree->Draw("Trk_numberOfTRTHighThresholdHits>>m_h1","","goff");
-    normH(m_h1);
-
-    m_tree->Draw("Softe_eoverp>>m_h2","","goff");
-    normH(m_h2);
-    
-    m_tree->Draw("Softe_Pos7>>m_h3","","goff");
-    normH(m_h3);
-
-    m_tree->Draw("Softe_Asy1>>m_h4","","goff");
-    normH(m_h4);
-    
-    m_tree->Draw("Softe_Weta1>>m_h5","","goff");
-    normH(m_h5);
-
-    m_tree->Draw("Softe_F1core>>m_h6","","goff");
-    normH(m_h6);
-
-    m_tree->Draw("Softe_F3core>>m_h7","","goff");
-    normH(m_h7);
-
-    m_tree->Draw("Softe_Isol>>m_h8","","goff");
-    normH(m_h8);
-
-    m_tree->Draw("Trk_d0>>m_h9","","goff");
-    normH(m_h9);
-
-    m_tree->Draw("Softe_deta0>>m_h10","","goff");
-    normH(m_h10);
-
-    m_tree->Draw("Softe_dphi0>>m_h11","","goff");
-    normH(m_h11);
-
-    m_tree->Draw("Softe_deta1>>m_h12","","goff");
-    normH(m_h12);
-
-    m_tree->Draw("Softe_dphi1>>m_h13","","goff");
-    normH(m_h13);
-
-    m_tree->Draw("Softe_deta2>>m_h14","","goff");
-    normH(m_h14);
-
-    m_tree->Draw("Softe_dphi2>>m_h15","","goff");
-    normH(m_h15);
-
-    m_tree->Draw("Softe_deta3>>m_h16","","goff");
-    normH(m_h16);
-
-    m_tree->Draw("Softe_dphi3>>m_h17","","goff");
-    normH(m_h17);
-
-    m_tree->Draw("Softe_E131/1000.>>m_h18","","goff");
-    normH(m_h18);
-
-    m_tree->Draw("Softe_Ecore/1000.>>m_h19","","goff");
-    normH(m_h19);
-
-    m_tree->Draw("Softe_nc>>m_h20","","goff");
-    normH(m_h20);
-
-  }
-private:
-  // pointers to histogram objects
-  TH1F* m_h1;
-  TH1F* m_h2;
-  TH1F* m_h3;
-  TH1F* m_h4;
-
-  TH1F* m_h5;
-  TH1F* m_h6;
-  TH1F* m_h7; 
-  TH1F* m_h8;
-
-  TH1F* m_h9;
-  TH1F* m_h10;
-  TH1F* m_h11; 
-  TH1F* m_h12;
-
-  TH1F* m_h13;
-  TH1F* m_h14;
-  TH1F* m_h15; 
-  TH1F* m_h16;
-
-  TH1F* m_h17; 
-  TH1F* m_h18;
-  TH1F* m_h19; 
-  TH1F* m_h20; 
-
-};
-///////////////////////////////////////////////////////////////
-class EgammaHists:public Hists{
-public:
-  EgammaHists(char* ntupFileName, char* histFileName):Hists(ntupFileName, histFileName){
-    cout<<"EgammaHists construction"<<endl;
-
-    this->bookHists();
-    this->fillHists();
-    this->writeHistsToDisk(histFileName);
-
-  }
-  void bookHists(){
-    cout<<"EgammaHists booking..."<<endl;
-
-    m_h0    = new TH1F("m_h0","Barrel : non conv elec, conv elec, non conv phot, conv phot",10,0.,10.);
-    m_h100    = new TH1F("m_h100","Endcap : non conv elec, conv elec, non conv phot, conv phot ",10,0.,10.);
-
-    m_h1    = new TH1F("m_h1","Electrons E/p - barrel",50,.5,3.);
-    m_h2    = new TH1F("m_h2","Electrons E/p - endcap pos",50,0.5,3.);
-    m_h3    = new TH1F("m_h3","Electrons E/p - endcap neg",50,.5,3.);
-    m_h4    = new TH1F("m_h4","Electrons track match : deta 1st samp",50,-0.006,0.006);
-
-    m_h5    = new TH1F("m_h5","Electrons track match : deta 2nd samp",25,-0.006,0.006);
-    m_h6    = new TH1F("m_h6","Electrons E outside core (E(+-7)-E(+-3))/E(+-7)",50,0.,2.);
-    m_h7    = new TH1F("m_h7","Electrons track match : dphi 2nd samp",50,-0.02,0.02);
-    m_h8    = new TH1F("m_h8","Electrons number of strips in 1st samp.",50,0.,25.);
-
-    m_h9    = new TH1F("m_h9","Electrons uncorr width in 3 strips",50,0.,2.);
-    m_h10   = new TH1F("m_h10","Electrons corrected width in 3 strips",100,0.,1.);
-    m_h11   = new TH1F("m_h11","Electrons Frac. of E in 1st samp.",100,-0.1,1.);
-    m_h12   = new TH1F("m_h12","Electrons Corrected width in 3x5 - 2nd samp.",50,0.,.02); 
-
-    m_h13   = new TH1F("m_h13","Electrons E2(3x7)/E2(7x7)",50,0.4,1.);
-    m_h14   = new TH1F("m_h14","Electrons E2(3x3)/E2(3x7)",50,0.4,1.);
-    m_h15   = new TH1F("m_h15","Electrons Uncorr.width in 3x5 - 2nd samp.",50,0.,.02);
-    m_h16   = new TH1F("m_h16","Electrons Et 3x7",100,-1.,100.); 
-
-    m_h17    = new TH1F("m_h17","Electrons E max2",100,0.,0.5); 
-    m_h18    = new TH1F("m_h18","Electrons ET max2",100,0.,0.5);
-    m_h19    = new TH1F("m_h19","Electrons E min",100,-0.1,0.5);
-    m_h20    = new TH1F("m_h20","Electrons E max2 - E min",100,0.,0.2);
-
-    m_h21    = new TProfile("m_h21","Electrons E in S0 (GeV) vs eta",50,0.,2.5,0.,60.);
-    m_h22    = new TProfile("m_h22","Electrons E in S1 (GeV) vs eta",50,0.,2.5,0.,70.);
-    m_h23    = new TProfile("m_h23","Electrons E in S2 (GeV) vs eta",50,0.,2.5,1.,110.);
-    m_h24    = new TProfile("m_h24","Electrons E in S3 (GeV) vs eta",50,0.,2.5,0.,10.);
-
-    m_h25    = new TH1F("m_h25","Electrons ET leak. in 1st samp. HAD (MeV)",100,-1000.,1000.);
-    m_h26    = new TH1F("m_h26","Electrons ET leakage into had calo (Mev)",100,-1000.,1000.);
-    m_h27    = new TH2F("m_h27","Electrons Depth vs eta - barrel",50,-1.7,1.7,100,1450.,1700.);
-    m_h28    = new TH2F("m_h28","Electrons |Depth| vs eta - endcap",50,-2.7,2.7,100,3600.,4000.);
-
-    m_h29    = new TH1F("m_h29"," ",20,-2.5,2.5);
-    m_h30    = new TH1F("m_h30"," ",20,-2.5,2.5);
-    m_h31    = new TH1F("m_h31","Electrons Efficiency of e ID vs eta",20,-2.5,2.5);
-
-    m_h32    = new TH1F("m_h32","Electrons Efficiency : per bit ",30,0.,30.);
-    m_h37    = new TH1F("m_h37","Electrons Efficiency : marginal ",30,0.,30.);
-    m_h1032    = new TH1F("m_h1032","Electrons dummy",1,0.,1.);
-
-    m_h33    = new TH1F("m_h33","Electrons energy of C and ID",110,10.,120.);
-    m_h34    = new TH1F("m_h34","Electrons eta of C and ID",52,-2.6,2.6);
-    m_h35    = new TH1F("m_h35","Electrons phi of C and ID",66,-3.3,3.3);
-    m_h36    = new TH1F("m_h36","Electrons Et of C and ID",100,10.,110.);
-
-    m_h38    = new TH1F("m_h38","Electrons eta truth-calo",100,-0.25,0.25);
-
-    m_h39    = new TH1F("m_h39","Electrons NN",120,-0.1,1.1);
-    m_h40    = new TH1F("m_h40","Electrons EM / EM+Pion weight ",120,-0.1,1.1);
-    m_h41    = new TH1F("m_h41","Electrons Hmatrix5 ",100,0.,50.);
-    m_h42    = new TH1F("m_h42","Electrons Hmatrix10 ",100,0.,50.);
-    m_h43    = new TH1F("m_h43","Electrons isol likelihood ",100,0.,50.);
-    m_h44    = new TH1F("m_h44","Electrons IsEM",100,0.,1.e+7);
-
-    m_h45    = new TH1F("m_h45","Electrons IsEMse",100,0.,1.e+7);
-    m_h46    = new TH1F("m_h46","Electrons NNse",120,-0.1,1.1);
-    m_h47    = new TH1F("m_h47","Electrons EMse / EMse+Pionse weight ",120,-0.1,1.1);
-
-    // same for photons :
-
-    m_h101    = new TH1F("m_h101","Photons E/p - barrel",50,.5,3.);
-    m_h102    = new TH1F("m_h102","Photons E/p - endcap pos",50,0.5,3.);
-    m_h103    = new TH1F("m_h103","Photons E/p - endcap neg",50,.5,3.);
-    m_h104    = new TH1F("m_h104","Photons track match : deta 1st samp",50,-0.006,0.006);
-
-    m_h105    = new TH1F("m_h105","Photons track match : deta 2nd samp",25,-0.006,0.006);
-    m_h106    = new TH1F("m_h106","Photons E outside core (E(+-7)-E(+-3))/E(+-7)",50,0.,2.);
-    m_h107    = new TH1F("m_h107","Photons track match : dphi 2nd samp",50,-0.02,0.02);
-    m_h108    = new TH1F("m_h108","Photons number of strips in 1st samp.",50,0.,25.);
-
-    m_h109    = new TH1F("m_h109","Photons uncorr width in 3 strips",50,0.,2.);
-    m_h110   = new TH1F("m_h110","Photons corrected width in 3 strips",100,0.,1.);
-    m_h111   = new TH1F("m_h111","Photons Frac. of E in 1st samp.",100,-0.1,1.);
-    m_h112   = new TH1F("m_h112","Photons Corrected width in 3x5 - 2nd samp.",50,0.,.02); 
-
-    m_h113   = new TH1F("m_h113","Photons E2(3x7)/E2(7x7)",50,0.4,1.);
-    m_h114   = new TH1F("m_h114","Photons E2(3x3)/E2(3x7)",50,0.4,1.);
-    m_h115   = new TH1F("m_h115","Photons Uncorr. width in 3x5 - 2nd samp.",50,0.,.02);
-    m_h116   = new TH1F("m_h116","Photons Et 3x7",100,-1.,100.); 
-
-    m_h117    = new TH1F("m_h117","Photons E max2",100,0.,0.5); 
-    m_h118    = new TH1F("m_h118","Photons ET max2",100,0.,0.5);
-    m_h119    = new TH1F("m_h119","Photons E min",100,-0.1,0.5);
-    m_h120    = new TH1F("m_h120","Photons E max2 -E min",100,0.,0.2);
-
-    m_h121    = new TProfile("m_h121","Photons E in S0 (GeV) vs eta",50,0.,2.5,0.,60.);
-    m_h122    = new TProfile("m_h122","Photons E in S1 (GeV) vs eta",50,0.,2.5,0.,70.);
-    m_h123    = new TProfile("m_h123","Photons E in S2 (GeV) vs eta",50,0.,2.5,1.,110.);
-    m_h124    = new TProfile("m_h124","Photons E in S3 (GeV) vs eta",50,0.,2.5,0.,10.);
-
-    m_h125    = new TH1F("m_h125","Photons ET leak. in 1st samp. HAD (MeV)",100,-1000.,1000.);
-    m_h126    = new TH1F("m_h126","Photons ET leakage into had calo (Mev)",100,-1000.,1000.);
-    m_h127    = new TH2F("m_h127","Photons Depth vs eta - barrel",50,-1.7,1.7,100,1450.,1700.);
-    m_h128    = new TH2F("m_h128","Photons |Depth| vs eta - endcap",50,-2.7,2.7,100,3600.,4000.);
-
-    m_h129    = new TH1F("m_h129"," ",20,-2.5,2.5);
-    m_h130    = new TH1F("m_h130"," ",20,-2.5,2.5);
-    m_h131    = new TH1F("m_h131","Photons Efficiency of e ID vs eta",20,-2.5,2.5);
-
-    m_h132    = new TH1F("m_h132","Photons Efficiency : per bit ",30,0.,30.);
-    m_h137    = new TH1F("m_h137","Photons Efficiency : marginal ",30,0.,30.);
-    m_h1132    = new TH1F("m_h1132","Photons dummy",1,0.,1.);
-
-    m_h133    = new TH1F("m_h133","Photons energy of C and ID",110,10.,120.);
-    m_h134    = new TH1F("m_h134","Photons eta of C and ID",52,-2.6,2.6);
-    m_h135    = new TH1F("m_h135","Photons phi of C and ID",66,-3.3,3.3);
-    m_h136    = new TH1F("m_h136","Photons Et of C and ID",100,10.,110.);
-
-    m_h138    = new TH1F("m_h138","Photons eta truth-calo",100,-0.25,0.25);
-
-    m_h139    = new TH1F("m_h139","Photons NN",120,-0.1,1.1);
-    m_h140    = new TH1F("m_h140","Photons EM / EM+Pion weight ",120,-0.1,1.1);
-    m_h141    = new TH1F("m_h141","Photons Hmatrix5 ",100,0.,50.);
-    m_h142    = new TH1F("m_h142","Photons Hmatrix10 ",100,0.,50.);
-    m_h143    = new TH1F("m_h143","Photons isol likelihood ",100,0.,50.);
-    m_h144    = new TH1F("m_h144","Photons IsEM",100,0.,1.e+7);
-
-    m_h145    = new TH1F("m_h145","Photons IsEMse",100,0.,1.e+7);
-    m_h146    = new TH1F("m_h146","Photons NNse",120,-0.1,1.1);
-    m_h147    = new TH1F("m_h147","Photons EMse / EMse+Pionse weight ",120,-0.1,1.1);
-
-    // eg_truth :
-
-    m_h200    = new TH1F("m_h200","egtruth eta",70,-3.5,3.5);
-    m_h201    = new TH1F("m_h201","egtruth phi",70,-3.5,3.5);
-    m_h202    = new TH1F("m_h202","egtruth etaCalo : all ",14,-1200,200.);
-    m_h203    = new TH1F("m_h203","egtruth etaCalo: sucessful extrapol.",70,-3.5,3.5);
-
-
-    // this drives the ordering in the hist and PS files : 
-
-    // overal numbers 
-    m_hlist->Add(m_h0);
-    m_hlist->Add(m_h100);
-    m_hlist->Add(m_h33);
-    m_hlist->Add(m_h133);
-
-    //  Electrons 
-
-    // overall eta, phi, energy
-    m_hlist->Add(m_h34);
-    m_hlist->Add(m_h35);
-    m_hlist->Add(m_h31);
-    m_hlist->Add(m_h36);
-
-    // Et , e/p
-    m_hlist->Add(m_h16);
-    m_hlist->Add(m_h1);
-    m_hlist->Add(m_h2);
-    m_hlist->Add(m_h3);
-
-    // track match
-    m_hlist->Add(m_h38);
-    m_hlist->Add(m_h4);
-    m_hlist->Add(m_h5);
-    m_hlist->Add(m_h7);
-
-    // energy per layer 
-    //profile m_hlist->Add(m_h21);
-    //profile m_hlist->Add(m_h22);
-    //profile m_hlist->Add(m_h23);
-    //profile m_hlist->Add(m_h24);
-
-    // energy fraction
-    m_hlist->Add(m_h11);
-    m_hlist->Add(m_h6);
-    m_hlist->Add(m_h13);
-    m_hlist->Add(m_h14);
-
-    // width in strips
-    m_hlist->Add(m_h9);
-    m_hlist->Add(m_h10);
-    m_hlist->Add(m_h15);
-    m_hlist->Add(m_h12);
-
-    // second max
-    m_hlist->Add(m_h8);
-    m_hlist->Add(m_h17);
-    m_hlist->Add(m_h19);
-    m_hlist->Add(m_h20);
-
-    // Leakage & eff
-    m_hlist->Add(m_h25);
-    m_hlist->Add(m_h26);
-    //m_hlist->Add(m_h44);
-    m_hlist->Add(m_h32);
-    m_hlist->Add(m_h37);
-
-    // New tagging variables
-    m_hlist->Add(m_h39);
-    m_hlist->Add(m_h40);
-    m_hlist->Add(m_h41);
-    m_hlist->Add(m_h42);
-
-    m_hlist->Add(m_h43);
-    m_hlist->Add(m_h45);
-    m_hlist->Add(m_h46);
-    m_hlist->Add(m_h47);
-
-    //m_hlist->Add(m_h27);
-    //m_hlist->Add(m_h28);
-    //m_hlist->Add(m_h18);
-
-    // Photons :
-
-    // overall eta, phi, efficiency
-    m_hlist->Add(m_h134);
-    m_hlist->Add(m_h135);
-    m_hlist->Add(m_h131);
-    m_hlist->Add(m_h136);
-
-    // energy , e/p
-    m_hlist->Add(m_h116);
-    m_hlist->Add(m_h101);
-    m_hlist->Add(m_h102);
-    m_hlist->Add(m_h103);
-
-    // track match
-    m_hlist->Add(m_h138);
-    m_hlist->Add(m_h104);
-    m_hlist->Add(m_h105);
-    m_hlist->Add(m_h107);
-
-    // Efficiency & leakage
-    m_hlist->Add(m_h125);
-    m_hlist->Add(m_h126);
-    m_hlist->Add(m_h132);
-    m_hlist->Add(m_h137);
-
-    // energy per layer 
-    //profile m_hlist->Add(m_h121);
-    //profile m_hlist->Add(m_h122);
-    //profile  m_hlist->Add(m_h123);
-    //profile m_hlist->Add(m_h124);
-
-    // energy fraction
-    m_hlist->Add(m_h111);
-    m_hlist->Add(m_h106);
-    m_hlist->Add(m_h113);
-    m_hlist->Add(m_h114);
-
-    // width in strips
-    m_hlist->Add(m_h109);
-    m_hlist->Add(m_h110);
-    m_hlist->Add(m_h115);
-    m_hlist->Add(m_h112);
-
-    // second max
-    m_hlist->Add(m_h108);
-    m_hlist->Add(m_h117);
-    m_hlist->Add(m_h119);
-    m_hlist->Add(m_h120);
-
-    // New tagging variables
-    m_hlist->Add(m_h139);
-    m_hlist->Add(m_h140);
-    m_hlist->Add(m_h141);
-    m_hlist->Add(m_h142);
-
-    m_hlist->Add(m_h143);
-    m_hlist->Add(m_h145);
-    m_hlist->Add(m_h146);
-    m_hlist->Add(m_h147);
-
-    //m_hlist->Add(m_h127);
-    //m_hlist->Add(m_h128); 
-    //m_hlist->Add(m_h118);
-
-    // truth
-    m_hlist->Add(m_h200);
-    m_hlist->Add(m_h201);
-    m_hlist->Add(m_h202);
-    m_hlist->Add(m_h203);
-
-  }
-
-  void fillHists(){
-    cout<<"Egamma hist filling..."<<endl;
-
-    // Number of entries - barrel
-    m_tree->Draw("Ele_IsEM>>m_h1032","Ele_convTrkMatch==0 && abs(Ele_eta)<1.475","goff");
-    double ele = m_h1032->GetEntries();
-    //cout << " Barrel : number of non converted electrons " << ele << endl;
-    m_tree->Draw("Ele_IsEM>>m_h1032","Ele_convTrkMatch>0 && abs(Ele_eta)<1.475","goff");
-    double eleconv = m_h1032->GetEntries();
-    //cout << " Barrel : number of converted electrons " << eleconv << endl;
-    m_tree->Draw("Pho_IsEM>>m_h1032","Pho_convTrkMatch==0 && abs(Pho_eta)<1.475","goff");
-    double pho = m_h1032->GetEntries();
-    //cout << " Barrel : number of non converted photons " << pho << endl;
-    m_tree->Draw("Pho_IsEM>>m_h1032","Pho_convTrkMatch>0 && abs(Pho_eta)<1.475","goff");
-    double phoconv = m_h1032->GetEntries();
-    //cout << " Barrel : number of converted photons " << phoconv << endl;
-    m_h0->Fill(1,ele);
-    m_h0->Fill(2,eleconv);
-    m_h0->Fill(5,pho);
-    m_h0->Fill(6,phoconv);
-
-    // endcap
-    m_tree->Draw("Ele_IsEM>>m_h1032","Ele_convTrkMatch==0 && abs(Ele_eta)>=1.475","goff");
-    ele = m_h1032->GetEntries();
-    //cout << " EC : number of non converted electrons " << ele << endl;
-    m_tree->Draw("Ele_IsEM>>m_h1032","Ele_convTrkMatch>0 && abs(Ele_eta)>=1.475","goff");
-    eleconv = m_h1032->GetEntries();
-    //cout << " EC : number of converted electrons " << eleconv << endl;
-    m_tree->Draw("Pho_IsEM>>m_h1032","Pho_convTrkMatch==0 && abs(Pho_eta)<1.475","goff");
-    pho = m_h1032->GetEntries();
-    //cout << " EC : number of non converted photons " << pho << endl;
-    m_tree->Draw("Pho_IsEM>>m_h1032","Pho_convTrkMatch>0 && abs(Pho_eta)>=1.475","goff");
-    phoconv = m_h1032->GetEntries();
-    //cout << " EC : number of converted photons " << phoconv << endl;
-    m_h100->Fill(1,ele);
-    m_h100->Fill(2,eleconv);
-    m_h100->Fill(5,pho);
-    m_h100->Fill(6,phoconv);
-
-    m_tree->Draw("Ele_eoverp>>m_h1","abs(Ele_eta)<1.475","goff");
-    m_tree->Draw("Pho_eoverp>>m_h101","abs(Pho_eta)<1.475","goff");
-    normH(m_h1);
-    normH(m_h101);
-
-    m_tree->Draw("Ele_eoverp>>m_h2","Ele_eta>1.475","goff");
-    m_tree->Draw("Pho_eoverp>>m_h102","Pho_eta>1.475","goff");
-    normH(m_h2);
-    normH(m_h102);
-    
-    m_tree->Draw("Ele_eoverp>>m_h3","Ele_eta<-1.475","goff");
-    m_tree->Draw("Pho_eoverp>>m_h103","Pho_eta<-1.475","goff");
-    normH(m_h3);
-    normH(m_h103);
-
-    m_tree->Draw("Ele_deta1>>m_h4","","goff");
-    m_tree->Draw("Pho_deta1>>m_h104","","goff");
-    normH(m_h4);
-    normH(m_h104);
-
-    m_tree->Draw("Ele_deta2>>m_h5","","goff");
-    m_tree->Draw("Pho_deta2>>m_h105","","goff");
-    normH(m_h5);
-    normH(m_h105);
-
-    m_tree->Draw("Ele_Fracs1>>m_h6","","goff");
-    m_tree->Draw("Pho_Fracs1>>m_h106","","goff");
-    normH(m_h6);
-    normH(m_h106);
-
-    m_tree->Draw("Ele_dphi2>>m_h7","","goff");
-    m_tree->Draw("Pho_dphi2>>m_h107","","goff");
-    normH(m_h7);
-    normH(m_h107);
-
-    m_tree->Draw("Ele_Wtots1>>m_h8","Ele_Wtots1>-9999","goff");
-    m_tree->Draw("Pho_Wtots1>>m_h108","Pho_Wtots1>-9999","goff");
-    normH(m_h8);
-    normH(m_h108);
-
-    m_tree->Draw("Ele_Widths1>>m_h9","","goff");
-    m_tree->Draw("Pho_Widths1>>m_h109","","goff");
-    normH(m_h9);
-    normH(m_h109);
-
-    m_tree->Draw("Ele_Weta1>>m_h10","","goff");
-    m_tree->Draw("Pho_Weta1>>m_h110","","goff");
-    normH(m_h10);
-    normH(m_h110);
-
-    m_tree->Draw("Ele_F1>>m_h11","","goff");
-    m_tree->Draw("Pho_F1>>m_h111","","goff");
-    normH(m_h11);
-    normH(m_h111);
-
-    m_tree->Draw("Ele_Weta2>>m_h12","","goff");
-    m_tree->Draw("Pho_Weta2>>m_h112","","goff");
-    normH(m_h12);
-    normH(m_h112);
-
-    m_tree->Draw("Ele_E237/Ele_E277>>m_h13","Ele_E277>0","goff");
-    m_tree->Draw("Pho_E237/Pho_E277>>m_h113","Pho_E277>0","goff");
-    normH(m_h13);
-    normH(m_h113);
-
-    m_tree->Draw("Ele_E233/Ele_E237>>m_h14","Ele_E237>0","goff");
-    m_tree->Draw("Pho_E233/Pho_E237>>m_h114","Pho_E237>0","goff");
-    normH(m_h14);
-    normH(m_h114);
-
-    m_tree->Draw("Ele_Widths2>>m_h15","","goff");
-    m_tree->Draw("Pho_Widths2>>m_h115","","goff");
-    normH(m_h15);
-    normH(m_h115);
-
-    m_tree->Draw("Ele_E237/(cosh(Ele_eta2)*1000.)>>m_h16","","goff");
-    m_tree->Draw("Pho_E237/(cosh(Pho_eta2)*1000.)>>m_h116","","goff");
-    normH(m_h16);
-    normH(m_h116);
-
-    m_tree->Draw("Ele_E2tsts1/1000.>>m_h17","","goff");
-    m_tree->Draw("Pho_E2tsts1/1000.>>m_h117","","goff");
-    normH(m_h17);
-    normH(m_h117);
-
-    m_tree->Draw("Ele_E2tsts1/(exp(-Ele_eta2)+exp(Ele_eta2))/2./1000.>>m_h18","","goff");
-    m_tree->Draw("Pho_E2tsts1/(exp(-Pho_eta2)+exp(Pho_eta2))/2./1000.>>m_h118","","goff");
-    normH(m_h18);
-    normH(m_h118);
-
-    m_tree->Draw("Ele_Emins1/1000.>>m_h19","","goff");
-    m_tree->Draw("Pho_Emins1/1000.>>m_h119","","goff");
-    normH(m_h19);
-    normH(m_h119);
-
-    m_tree->Draw("(Ele_E2tsts1-Ele_Emins1)/1000.>>m_h20","","goff");
-    m_tree->Draw("(Pho_E2tsts1-Pho_Emins1)/1000.>>m_h120","","goff");
-    normH(m_h20);
-    normH(m_h120);
-
-    m_tree->Draw("Ele_e0/1000:Ele_eta>>m_h21","","goff");
-    m_tree->Draw("Pho_e0/1000:Pho_eta>>m_h121","","goff");
-
-    m_tree->Draw("Ele_e1/1000:Ele_eta>>m_h22","","goff");
-    m_tree->Draw("Pho_e1/1000:Pho_eta>>m_h122","","goff");
-
-    m_tree->Draw("Ele_e2/1000:Ele_eta>>m_h23","","goff");
-    m_tree->Draw("Pho_e2/1000:Pho_eta>>m_h123","","goff");
-
-    m_tree->Draw("Ele_e3/1000:Ele_eta>>m_h24","","goff");
-    m_tree->Draw("Pho_e3/1000:Pho_eta>>m_h124","","goff");
-
-    m_tree->Draw("Ele_Etha1>>m_h25","","goff");
-    m_tree->Draw("Pho_Etha1>>m_h125","","goff");
-    normH(m_h25);
-    normH(m_h125);
-
-    m_tree->Draw("Ele_Etha>>m_h26","","goff");
-    m_tree->Draw("Pho_Etha>>m_h126","","goff");
-    normH(m_h26);
-    normH(m_h126);
-
-    m_tree->Draw("Ele_depth:Ele_eta>>m_h27","abs(Ele_eta)<1.475","goff");
-    m_tree->Draw("Pho_depth:Pho_eta>>m_h127","abs(Pho_eta)<1.475","goff");
-
-    m_tree->Draw("abs(Ele_depth):Ele_eta>>m_h28","abs(Ele_eta)>=1.475","goff");
-    m_tree->Draw("abs(Pho_depth):Pho_eta>>m_h128","abs(Pho_eta)>=1.475","goff");
-
-    m_tree->Draw("Ele_eta>>m_h29","","goff");
-    m_tree->Draw("Pho_eta>>m_h129","","goff");
-    m_tree->Draw("Ele_eta>>m_h30","Ele_IsEM==0","goff");
-    m_tree->Draw("Pho_eta>>m_h130","Pho_IsEM==0","goff");
-    m_tree->Draw("Ele_eta>>m_h31","","goff");
-    m_tree->Draw("Pho_eta>>m_h131","","goff");
-    m_h31->Divide(m_h30,m_h29,1,1);  
-    m_h131->Divide(m_h130,m_h129,1,1);  
-
-    m_tree->Draw("Ele_epiNN>>m_h39","","goff");
-    m_tree->Draw("Pho_epiNN>>m_h139","","goff");
-    m_tree->Draw("Ele_EMWeight/(Ele_EMWeight+Ele_PionWeight)>>m_h40","","goff");
-    m_tree->Draw("Pho_EMWeight/(Pho_EMWeight+Pho_PionWeight)>>m_h140","","goff");
-    m_tree->Draw("Ele_Hmatrix5>>m_h41","","goff");
-    m_tree->Draw("Pho_Hmatrix5>>m_h141","","goff");
-    m_tree->Draw("Ele_Hmatrix10>>m_h42","","goff");
-    m_tree->Draw("Pho_Hmatrix10>>m_h142","","goff");
-    m_tree->Draw("Ele_IsolationLikelihood>>m_h43","","goff");
-    m_tree->Draw("Pho_IsolationLikelihood>>m_h143","","goff");
-    m_tree->Draw("Ele_IsEM*1.>>m_h44","","goff");
-    m_tree->Draw("Pho_IsEM*1.>>m_h144","","goff");
-
-    m_tree->Draw("Ele_IsEM*1.>>m_h45","","goff");
-    m_tree->Draw("Pho_IsEM*1.>>m_h145","","goff");
-    m_tree->Draw("Ele_epiNN>>m_h46","","goff");
-    m_tree->Draw("Pho_epiNN>>m_h46","","goff");
-    m_tree->Draw("Ele_EMWeight/(Ele_EMWeight+Ele_PionWeight)>>m_h47","","goff");
-    m_tree->Draw("Pho_EMWeight/(Pho_EMWeight+Pho_PionWeight)>>m_h147","","goff");
-
-    double scale = 1.;
-    double eff=0.;
-
-    // ------ Electrons efficiency --------
-
-    m_tree->Draw("Ele_IsEM>>m_h1032","","goff");
-    if (m_h1032->GetEntries() > 0)
-      scale = 1/m_h1032->GetEntries();
-    else
-      scale = 1.;
-    //cout << " electron : total " << m_h1032->GetEntries() << " scale= " << scale << endl;
-
-    /*
-    // 12.0.6 definitions : loose
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x7)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(1,eff);
-    // 12.0.6 definitions : medium
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x4FF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(2,eff);
-    // 12.0.6 definitions : tight
-    m_tree->Draw("Ele_IsEM>>m_h1032","Ele_IsEM==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(3,eff);
-    */
-
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x1)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(0,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x2)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(1,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x10)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(2,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x20)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(3,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x40)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(4,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x80)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(5,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x100)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(6,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x200)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(7,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x400)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(8,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x800)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(9,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x1000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(10,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x2000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(11,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x10000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(15,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x20000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(12,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x40000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(13,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x80000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(14,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x100000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(16,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x200000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(17,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x400000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(18,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x800000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(19,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0x1000000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(20,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","Ele_IsEM ==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h32->Fill(21,eff);
-
-    // ------- Electrons : "marginal" ----------
-
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFFFE)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(0,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFFFD)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(1,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFFEF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(2,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFFDF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(3,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFFBF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(4,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFF7F)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(5,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFEFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(6,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFDFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(7,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFFBFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(8,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFF7FF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(9,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFEFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(10,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFFDFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(11,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFEFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(15,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFDFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(12,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFFBFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(13,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFF7FFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(14,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFEFFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(16,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFDFFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(17,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFFBFFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(18,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFF7FFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(19,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","(Ele_IsEM & 0xFEFFFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(20,eff);
-    m_tree->Draw("Ele_IsEM>>m_h1032","Ele_IsEM ==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h37->Fill(21,eff);
-
-    // -------- Photons : efficiency ------
-
-    m_tree->Draw("Pho_IsEM>>m_h1032","","goff");
-    if (m_h1032->GetEntries() > 0)
-      scale = 1/m_h1032->GetEntries();
-    else
-      scale = 1.;
-
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x1)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(0,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x2)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(1,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x10)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(2,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x20)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(3,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x40)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(4,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x80)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(5,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x100)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(6,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x200)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(7,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x400)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(8,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x800)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(9,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x1000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(10,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x2000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(11,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x10000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(15,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x20000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(12,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x40000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(13,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x80000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(14,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x100000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(16,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x200000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(17,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x400000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(18,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x800000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(19,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0x1000000)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(20,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","Pho_IsEM ==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h132->Fill(21,eff);
-
-    // ------- Photons : "marginal" ----------
-
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFFFE)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(0,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFFFD)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(1,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFFEF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(2,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFFDF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(3,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFFBF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(4,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFF7F)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(5,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFEFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(6,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFDFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(7,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFFBFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(8,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFF7FF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(9,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFEFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(10,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFFDFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(11,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFEFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(15,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFDFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(12,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFFBFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(13,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFF7FFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(14,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFEFFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(16,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFDFFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(17,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFFBFFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(18,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFF7FFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(19,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","(Pho_IsEM & 0xFEFFFFFF)==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(20,eff);
-    m_tree->Draw("Pho_IsEM>>m_h1032","Pho_IsEM ==0 ","goff");
-    eff = scale*m_h1032->GetEntries();
-    m_h137->Fill(21,eff);
-
-    //------------------------------------------
-
-    m_tree->Draw("Ele_e/1000.>>m_h33","","goff");
-    normH(m_h33);
-    m_tree->Draw("Pho_e/1000.>>m_h133","","goff");
-    normH(m_h133);
-
-    m_tree->Draw("Ele_eta>>m_h34","","goff");
-    normH(m_h34);
-    m_tree->Draw("Pho_eta>>m_h134","","goff");
-    normH(m_h134);
-
-    m_tree->Draw("Ele_phi>>m_h35","","goff");
-    normH(m_h35);
-    m_tree->Draw("Pho_phi>>m_h135","","goff");
-    normH(m_h135);
-
-    m_tree->Draw("Ele_e/(cosh(Ele_eta)*1000.)>>m_h36","","goff");
-    normH(m_h36);
-    m_tree->Draw("Pho_e/(cosh(Pho_eta)*1000.)>>m_h136","","goff");
-    normH(m_h136);
-
-    m_tree->Draw("egtruth_etaCalo-Ele_eta>>m_h38","","goff");
-    normH(m_h38);
-    m_tree->Draw("egtruth_etaCalo-Pho_eta>>m_h138","","goff");
-    normH(m_h138);
-
-
-    // --------- truth ---------------
-
-    m_tree->Draw("egtruth_eta>>m_h200","","goff");
-    m_tree->Draw("egtruth_phi>>m_h201","","goff");
-    m_tree->Draw("egtruth_etaCalo>>m_h202","","goff");
-    m_tree->Draw("egtruth_etaCalo>>m_h203","egtruth_etaCalo>-10.","goff");
-
-
-  }
-private:
-  // pointers to histogram objects
-  TH1F* m_h0;
-  TH1F* m_h100;
-
-  TH1F* m_h1;
-  TH1F* m_h2;
-  TH1F* m_h3;
-  TH1F* m_h4;
-
-  TH1F* m_h5;
-  TH1F* m_h6;
-  TH1F* m_h7; 
-  TH1F* m_h8;
-
-  TH1F* m_h9;
-  TH1F* m_h10;
-  TH1F* m_h11; 
-  TH1F* m_h12;
-
-  TH1F* m_h13;
-  TH1F* m_h14;
-  TH1F* m_h15; 
-  TH1F* m_h16;
-
-  TH1F* m_h17; 
-  TH1F* m_h18;
-  TH1F* m_h19; 
-  TH1F* m_h20;
-
-  TProfile* m_h21; 
-  TProfile* m_h22;
-  TProfile* m_h23;
-  TProfile* m_h24;
-
-  TH1F* m_h25; 
-  TH1F* m_h26;
-
-  TH2F* m_h27; 
-  TH2F* m_h28;
-
-  TH1F* m_h29;
-  TH1F* m_h30;
-  TH1F* m_h31; 
-  TH1F* m_h32;
-  TH1F* m_h1032;
-  TH1F* m_h33;
-  TH1F* m_h34;
-  TH1F* m_h35;
-  TH1F* m_h37;
-  TH1F* m_h38;
-
-  TH1F* m_h101;
-  TH1F* m_h102;
-  TH1F* m_h103;
-  TH1F* m_h104;
-
-  TH1F* m_h105;
-  TH1F* m_h106;
-  TH1F* m_h107; 
-  TH1F* m_h108;
-
-  TH1F* m_h109;
-  TH1F* m_h110;
-  TH1F* m_h111; 
-  TH1F* m_h112;
-
-  TH1F* m_h113;
-  TH1F* m_h114;
-  TH1F* m_h115; 
-  TH1F* m_h116;
-
-  TH1F* m_h117; 
-  TH1F* m_h118;
-  TH1F* m_h119; 
-  TH1F* m_h120;
-
-  TProfile* m_h121; 
-  TProfile* m_h122;
-  TProfile* m_h123;
-  TProfile* m_h124;
-
-  TH1F* m_h125; 
-  TH1F* m_h126;
-
-  TH2F* m_h127; 
-  TH2F* m_h128;
-
-  TH1F* m_h129;
-  TH1F* m_h130;
-  TH1F* m_h131; 
-  TH1F* m_h132;
-  TH1F* m_h1132;
-  TH1F* m_h133;
-  TH1F* m_h134;
-  TH1F* m_h135;
-  TH1F* m_h136;
-  TH1F* m_h137;
-  TH1F* m_h138;
-
-};
-
-// Entrance point to the macro. 
-// Expects to find ntuple.root in current directory.
-// Outputs histograms to cluster_validation.hist
-int egammaValidation_hist(char* ntupFile)
-{
-
-  ClusterHists ch(ntupFile, "cluster_validation.hist");
-  SoftEHists   se(ntupFile, "softE_validation.hist");
-  EgammaHists  eg(ntupFile, "eGamma_validation.hist");
-
-  return 0;
-}
-
- 
diff --git a/Reconstruction/egamma/egammaValidation/share/egamma_art_checker_joboptions.py b/Reconstruction/egamma/egammaValidation/share/egamma_art_checker_joboptions.py
new file mode 100755
index 0000000000000000000000000000000000000000..412f97bb195f0e3238d6251bedf06bf91f3d1162
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/share/egamma_art_checker_joboptions.py
@@ -0,0 +1,31 @@
+#
+# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+#
+
+from AthenaCommon.AppMgr                    import theApp
+from AthenaCommon.AppMgr                    import ServiceMgr as svcMgr
+from AthenaCommon.AlgSequence               import AlgSequence
+from GaudiSvc.GaudiSvcConf                  import THistSvc
+import AthenaRootComps.ReadAthenaxAODHybrid
+
+# Ouput Message Level
+svcMgr.MessageSvc.OutputLevel = INFO
+
+# ART File
+testFile = 'ART_Rec_'+particleType+'.pool.root'
+svcMgr.EventSelector.InputCollections = [testFile]
+
+
+job = CfgMgr.AthSequencer("AthAlgSeq")
+job += CfgMgr.EgammaMonitoring('MonitoringAlg', sampleType = particleType)
+
+
+theApp.EvtMax = 2000
+
+
+outputFile = 'ART-monitoring_'+particleType+'.root'
+svcMgr += CfgMgr.THistSvc()
+svcMgr.THistSvc.Output = ["MONITORING DATAFILE='"+outputFile+"' OPT='RECREATE'"]
+
+
+print ( "\n\nALL OK\n\n" )
diff --git a/Reconstruction/egamma/egammaValidation/share/rdoToD3PD.py b/Reconstruction/egamma/egammaValidation/share/rdoToD3PD.py
deleted file mode 100644
index a5439cbc803a9f7d2a7500446373ddc7afd11f2c..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/share/rdoToD3PD.py
+++ /dev/null
@@ -1,94 +0,0 @@
-# $Id$
-#
-# @file D3PDMakerConfig/share/AODToEgammaD3PD.py
-# @author scott snyder <snyder@bnl.gov>
-# @date Aug, 2009
-# @brief Example for building an egamma D3PD from an AOD.
-#
-
-
-###################################################################3
-# Define the input file here.
-#
-
-from AthenaCommon.AthenaCommonFlags import athenaCommonFlags
-athenaCommonFlags.FilesInput= ["root://castoratlas//castor/cern.ch/atlas/atlascerngroupdisk/perf-egamma/rtt/mc10_7TeV.106046.PythiaZee_no_filter.recon.ESD.e574_s933_s946_r1835_ESD.213775._000003.pool.root"]
-# athenaCommonFlags.FilesInput= ["/build/atlas/rds/data/data11_7TeV.00179804.physics_Egamma.merge.AOD.f363_m806/data11_7TeV.00179804.physics_Egamma.merge.AOD.f363_m806._lb0287-lb0288._0001.1"]
-
-
-###################################################################3
-# Define the output file here.
-#
-
-if not globals().get('tupleFileOutput'):
-    tupleFileOutput = 'egamma.root'
-
-from D3PDMakerConfig.D3PDProdFlags import prodFlags
-prodFlags.WriteEgammaD3PD = True
-prodFlags.WriteEgammaD3PD.FileName = tupleFileOutput
-prodFlags.WriteEgammaD3PD.lock()
-
-###################################################################3
-# Define other job options here.
-#
-
-athenaCommonFlags.EvtMax = -1
-#athenaCommonFlags.EvtMax = 5
-
-# Example of changing D3PD maker flags.
-from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags
-D3PDMakerFlags.TruthSGKey    = 'GEN_AOD'
-D3PDMakerFlags.ElectronSGKey = 'ElectronAODCollection'
-D3PDMakerFlags.PhotonSGKey   = 'PhotonAODCollection'
-#D3PDMakerFlags.DoTrigger = False
-
-
-###################################################################
-# Configure RecExCommon.
-#
-
-from RecExConfig.RecFlags import rec
-
-rec.doESD.set_Value_and_Lock(True) # if false, all algorithms are switched off by defaults
-
-rec.doCBNT.set_Value_and_Lock(False)
-rec.readESD.set_Value_and_Lock(True)
-rec.doWriteESD.set_Value_and_Lock(False)
-rec.readAOD.set_Value_and_Lock(False)
-rec.doAOD.set_Value_and_Lock(True)
-rec.doWriteAOD.set_Value_and_Lock(False)
-rec.doWriteTAG.set_Value_and_Lock(False)
-rec.doTau.set_Value_and_Lock(False) 
-
-rec.doMuon.set_Value_and_Lock(False)
-rec.doJetMissingETTag.set_Value_and_Lock(False)
-rec.doMuonCombined.set_Value_and_Lock(False)
-rec.doTau.set_Value_and_Lock(False) 
-
-rec.DPDMakerScripts.append( "D3PDMakerConfig/EgammaD3PD_prodJobOFragment.py" )
-rec.doCBNT.set_Value_and_Lock( False )
-rec.doWriteTAG.set_Value_and_Lock( False )
-rec.doTrigger.set_Value_and_Lock(False) 
-include( "RecExCommon/RecExCommon_topOptions.py" )
-
-## ###################################################################
-## # Add in egFilter
-## #
-
-## from egammaFilt.egammaFiltConf import egFilter
-## my_egFilter = egFilter('egamma_egFilter')
-
-
-## # Choose either Z or J/psi filtering (default is Z)
-## my_egFilter.DoZFilt    = False
-## my_egFilter.DoJpsiFilt = True
-## my_egFilter.DoTrigger  = True  # default is to not do trigger
-## # my_egFilter.OutputLevel= DEBUG
-
-## # Add filter to sequence
-## preseq  = AlgSequence(D3PDMakerFlags.PreD3PDAlgSeqName())
-## preseq  += my_egFilter
-
-## # And set as filter for both main and trigger streams
-## EgammaD3PDStream.filterSeq += egFilter('egamma_egFilter')
-## EgammaTriggerD3PDStream.filterSeq += egFilter('egamma_egFilter')
diff --git a/Reconstruction/egamma/egammaValidation/src/EgammaMonitoring.cxx b/Reconstruction/egamma/egammaValidation/src/EgammaMonitoring.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..4385d9e4f33b6a679634c529df04ee35c5985e68
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/src/EgammaMonitoring.cxx
@@ -0,0 +1,201 @@
+/*
+ * Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+ */
+
+#include "GaudiKernel/IHistogramSvc.h"
+#include "GaudiKernel/ITHistSvc.h"
+#include "AsgTools/MessageCheck.h"
+#include "egammaValidation/EgammaMonitoring.h"
+
+#include "xAODEventInfo/EventInfo.h"
+#include "xAODTracking/VertexContainer.h"
+#include "xAODTracking/TrackParticle.h"
+
+#include "xAODEgamma/ElectronContainer.h"
+#include "xAODEgamma/PhotonContainer.h"
+#include "xAODEgamma/PhotonAuxContainer.h"
+#include "xAODEgamma/Egamma.h"
+#include "xAODEgamma/Photon.h"
+#include "xAODEgamma/Electron.h"
+#include "xAODEgamma/EgammaxAODHelpers.h"
+#include <AsgTools/AnaToolHandle.h>
+#include "ElectronPhotonSelectorTools/IAsgElectronLikelihoodTool.h"
+
+#include <vector>
+#include <cmath>
+
+
+EgammaMonitoring :: EgammaMonitoring (const std::string& name, ISvcLocator *pSvcLocator) : 
+  AthAlgorithm (name, pSvcLocator),
+  m_LooseLH ("AsgElectronLikelihoodTool/LooseLH"),
+  m_MediumLH("AsgElectronLikelihoodTool/MediumLH"),
+  m_TightLH ("AsgElectronLikelihoodTool/TightLH") 
+{
+  declareProperty( "sampleType", m_sampleType = "Unknown", "Descriptive name for the processed type of particle" );
+}
+
+// ******
+
+StatusCode EgammaMonitoring :: initialize ()
+{
+  ANA_MSG_INFO ("******************************* Initializing *******************************");
+
+  /// Get Histogram Service ///
+  ATH_CHECK(service("THistSvc", rootHistSvc));
+  
+  ANA_MSG_INFO ("******************* Running over " << m_sampleType << "*******************");
+
+  ANA_MSG_DEBUG ("*******************************  Histo INIT  *******************************");
+
+  evtNmb = new TH1D(); evtNmb->SetName("evtNmb"); evtNmb->SetTitle("Event Number"); 
+  CHECK( rootHistSvc->regHist("/MONITORING/evtNmb", evtNmb));
+    
+  if("electron" == m_sampleType) {
+
+    evtNmb->SetBins(2000, 85000, 87000);
+
+    pT_ElTrk_All  = new TH1D(); pT_ElTrk_All ->SetName("pT_ElTrk_All") ; pT_ElTrk_All ->SetTitle("Electron Pt Track All"); pT_ElTrk_All ->SetBins(200,  0, 200);
+    CHECK( rootHistSvc->regHist("/MONITORING/pT_ElTrk_All", pT_ElTrk_All));
+    
+    pT_ElTrk_LLH  = new TH1D(); pT_ElTrk_LLH ->SetName("pT_ElTrk_LLH") ; pT_ElTrk_LLH ->SetTitle("Electron Pt Track LLH"); pT_ElTrk_LLH ->SetBins(200,  0, 200);
+    CHECK( rootHistSvc->regHist("/MONITORING/pT_ElTrk_LLH", pT_ElTrk_LLH));
+    
+    pT_ElTrk_MLH  = new TH1D(); pT_ElTrk_MLH ->SetName("pT_ElTrk_MLH") ; pT_ElTrk_MLH ->SetTitle("Electron Pt Track MLH"); pT_ElTrk_MLH ->SetBins(200,  0, 200);
+    CHECK( rootHistSvc->regHist("/MONITORING/pT_ElTrk_MLH", pT_ElTrk_MLH));
+    
+    pT_ElTrk_TLH  = new TH1D(); pT_ElTrk_TLH ->SetName("pT_ElTrk_TLH") ; pT_ElTrk_TLH ->SetTitle("Electron Pt Track TLH"); pT_ElTrk_TLH ->SetBins(200,  0, 200);
+    CHECK( rootHistSvc->regHist("/MONITORING/pT_ElTrk_TLH", pT_ElTrk_TLH));
+    
+    eta_ElTrk_All = new TH1D(); eta_ElTrk_All->SetName("eta_ElTrk_All"); eta_ElTrk_All->SetTitle("Electron Eta All")     ; eta_ElTrk_All->SetBins(200, -3,   3);
+    CHECK( rootHistSvc->regHist("/MONITORING/eta_ElTrk_All", eta_ElTrk_All));
+    
+    phi_ElTrk_All = new TH1D(); phi_ElTrk_All->SetName("phi_ElTrk_All"); phi_ElTrk_All->SetTitle("Electron Phi All")     ; 
+    phi_ElTrk_All->SetBins(100, -TMath::Pi(), TMath::Pi());    
+    CHECK( rootHistSvc->regHist("/MONITORING/phi_ElTrk_All", phi_ElTrk_All));
+  
+  } // electron Hists
+
+  if("gamma" == m_sampleType) {
+
+    evtNmb->SetBins(250, 33894000, 33896000);
+    
+    pT_Phot_All  = new TH1D(); pT_Phot_All ->SetName("pT_Phot_All") ; pT_Phot_All ->SetTitle("Photon Pt All") ; pT_Phot_All ->SetBins(200,  0,  200);
+    CHECK( rootHistSvc->regHist("/MONITORING/pT_Phot_All", pT_Phot_All));
+    
+    eta_Phot_All = new TH1D(); eta_Phot_All->SetName("eta_Phot_All"); eta_Phot_All->SetTitle("Photon Eta All"); eta_Phot_All->SetBins(200, -3,    3);
+    CHECK( rootHistSvc->regHist("/MONITORING/eta_Phot_All", eta_Phot_All));
+    
+    phi_Phot_All = new TH1D(); phi_Phot_All->SetName("phi_Phot_All"); phi_Phot_All->SetTitle("Photon Phi All"); phi_Phot_All->SetBins(100, -TMath::Pi(), TMath::Pi());
+    CHECK( rootHistSvc->regHist("/MONITORING/phi_Phot_All", phi_Phot_All));
+  
+  } // gamma Hists
+
+  //*****************LLH Requirement********************
+  ANA_CHECK(m_LooseLH.setProperty("WorkingPoint", "LooseLHElectron"));
+  ANA_CHECK(m_LooseLH.initialize());
+  ANA_MSG_DEBUG ("*******************************  OK LLH Req  *******************************");
+  //****************************************************
+    
+  
+  //*****************MLH Requirement********************
+  ANA_CHECK(m_MediumLH.setProperty("WorkingPoint", "MediumLHElectron"));
+  ANA_CHECK(m_MediumLH.initialize());
+  ANA_MSG_DEBUG ("*******************************  OK MLH Req  *******************************");
+  //****************************************************
+
+  
+  //*****************TLH Requirement********************
+  ANA_CHECK(m_TightLH.setProperty("WorkingPoint", "TightLHElectron"));
+  ANA_CHECK(m_TightLH.initialize());
+  ANA_MSG_DEBUG ("*******************************  OK TLH Req  *******************************");
+  //****************************************************
+
+  
+  ANA_MSG_DEBUG ("*******************************   END INIT   *******************************");  
+  return StatusCode::SUCCESS;
+}
+
+// ******
+
+StatusCode EgammaMonitoring :: beginInputFile ()
+{
+  return StatusCode::SUCCESS;
+}
+
+// ******
+
+StatusCode EgammaMonitoring :: firstExecute ()
+{
+  return StatusCode::SUCCESS;
+}
+
+// ******
+
+StatusCode EgammaMonitoring :: execute ()
+{
+  
+  // Retrieve things from the event store
+
+  const xAOD::EventInfo *eventInfo = nullptr;
+  ANA_CHECK (evtStore()->retrieve(eventInfo, "EventInfo"));
+
+  if("electron" == m_sampleType) {
+    
+    const xAOD::ElectronContainer* RecoEl = nullptr;
+    if( !evtStore()->retrieve(RecoEl, "Electrons").isSuccess() ) {
+      ATH_MSG_ERROR("Failed to retrieve electron container. Exiting.");
+      return StatusCode::FAILURE;
+    }
+    
+    for(auto elrec : *RecoEl) {
+      
+      const xAOD::TrackParticle* tp = elrec->trackParticle();
+
+      if((tp->pt())/1000. > 0) {
+	
+	pT_ElTrk_All->Fill((tp->pt())/1000.); 
+	
+	if(m_LooseLH ->accept(elrec)) pT_ElTrk_LLH->Fill((tp->pt())/1000.);
+	if(m_MediumLH->accept(elrec)) pT_ElTrk_MLH->Fill((tp->pt())/1000.);
+	if(m_TightLH ->accept(elrec)) pT_ElTrk_TLH->Fill((tp->pt())/1000.);
+	
+      }
+
+      eta_ElTrk_All->Fill(tp->eta());
+      phi_ElTrk_All->Fill(tp->phi());
+      
+    } // RecoEl Loop
+
+  } // if electron
+
+
+  if("gamma" == m_sampleType) {
+    
+    const xAOD::PhotonContainer* RecoPh = nullptr;
+    if( !evtStore()->retrieve(RecoPh, "Photons").isSuccess() ) {
+      ATH_MSG_ERROR("Failed to retrieve photon container. Exiting.");
+      return StatusCode::FAILURE;
+    }  
+    
+    for(auto phrec : *RecoPh) {
+      
+      if((phrec->pt())/1000. > 0) pT_Phot_All->Fill((phrec->pt())/1000.);
+      eta_Phot_All->Fill(phrec->eta());
+      phi_Phot_All->Fill(phrec->phi());
+      
+    } // RecoPh Loop
+
+  } // if gamma
+
+  evtNmb->Fill(eventInfo->eventNumber());
+
+  return StatusCode::SUCCESS;
+}
+
+// ******
+
+StatusCode EgammaMonitoring :: finalize ()
+{
+  ANA_MSG_INFO ("******************************** Finalizing ********************************");
+  return StatusCode::SUCCESS;
+}
diff --git a/Reconstruction/egamma/egammaValidation/src/components/egammaValidation_entries.cxx b/Reconstruction/egamma/egammaValidation/src/components/egammaValidation_entries.cxx
new file mode 100644
index 0000000000000000000000000000000000000000..a47fce75d21fe56de050a62e557765efa97625ea
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/src/components/egammaValidation_entries.cxx
@@ -0,0 +1,10 @@
+/*
+ * Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+ */
+
+#include <GaudiKernel/DeclareFactoryEntries.h>
+
+#include "../../egammaValidation/EgammaMonitoring.h"
+
+DECLARE_COMPONENT( EgammaMonitoring )
+
diff --git a/Reconstruction/egamma/egammaValidation/test/dcube_config.xml b/Reconstruction/egamma/egammaValidation/test/dcube_config.xml
deleted file mode 100644
index 38f8b8d3eb6d53d12ae0bce441e619df64452725..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/test/dcube_config.xml
+++ /dev/null
@@ -1,552 +0,0 @@
-<?xml version="1.0" ?>
-<!--
- DCube configuration XML file = dcube_config_16_0_0_1.xml
- auto-generated using DCube 4.6692016 ($Rev: 217525 $ $Date$) by Krzysztof Daniel Ciba (Krzysztof.Ciba@NOSPAMgmail.com)
- on Tue, 28 Sep 2010 14:04:30 CEST
- from Root reference file: egammaRTT_16_0_0_1.root
- Statistics tests:
- "['bbb']"
- Legend:
- * KS    - Kolmogorov-Smirnov test (default)
- * chi2  - chi2 test
- * bbb   - bin-by-bin comparision
- * meany - avg eff mean y [TProfiles only!]
- * all   - all above tests
- Tweaks:
- [1] remove or comment out (using HTML comments tags) histograms not relevant
-     to your analysis
- [2] provide a new content to "ref_desc" and "mon_desc" tags to something
-     more meaningful
- [3] and of course feel free to change attribute "tests" in each "hist" tag
- [4] limits of p-value warning and failure can be set by changing attributes
-     in <plimit> tag
- [5] if you want to make plots FOR EVERY histogram in your monitored file
-     change attribute "inclusive" in <mode> tag to "true"
--->
-<dcube_client_config>
- <dcube branch="*" cmtconfig="*" install="*" jobId="*" project="*">
-  <!--
-  ###################################################
-  DCubeClient for:
-  [1] branch: *
-  [2] install: *
-  [3] cmtconfig: *
-  [4] project: *
-  [5] jobId: *
-  [6] reference root file: /afs/cern.ch/user/t/teinturi/www/egammaRTT_16_0_2_3.root
-  [7] p-values limits FAIL = 0.750000 WARN = 0.950000
-  ###################################################
--->
-  <reference file="/afs/cern.ch/user/t/teinturi/www/egammaRTT_16_0_2_3.root"/>
-  <ref_desc>
-   PUT YOUR REFERENCE DESCRIPTION HERE
-  </ref_desc>
-  <test_desc>
-   PUT YOUR TEST DESCRIPTION HERE
-  </test_desc>
-  <plimit fail="0.75" warn="0.95"/>
-  <TDirectory name="/">
-   <TDirectory name="General">
-    <TDirectory name="EventInfo">
-     <hist1D name="EventNumber_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="RunNumber_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Electron">
-     <hist1D name="el_medium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Photon">
-     <hist1D name="ph_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isEM_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-   <TDirectory name="AllElectron">
-    <TDirectory name="General">
-     <hist1D name="el_medium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Energy">
-     <TDirectory name="Sample">
-      <hist1D name="el_emaxs1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_HEC3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_HEC2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_HEC1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_HEC0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Es0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Es1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Es2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Es3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_EME2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_EME3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_EME1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_PreSamplerE_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E233_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_PreSamplerB_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_EMB3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_EMB2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_EMB1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_FCAL2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_FCAL0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_FCAL1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Tile">
-      <hist1D name="el_E_TileBar2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_TileBar0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_TileBar1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_TileGap3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_TileGap2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_TileGap1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_TileExt0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_TileExt1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E_TileExt2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="EtCone">
-      <hist1D name="el_mvaptcone20_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_mvaptcone30_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Etcone40_pt_corrected_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Etcone40_ED_corrected_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Etcone40_corrected_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_mvaptcone40_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Etcone40_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Etcone45_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Etcone20_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Etcone30_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Fractions">
-      <hist1D name="el_f1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f3core_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1core_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Others">
-      <hist1D name="el_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Et_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Emax2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_EtringnoisedR03sig4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Emins1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_EtringnoisedR03sig3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_EtringnoisedR03sig2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-    </TDirectory>
-    <TDirectory name="Cinematic">
-     <TDirectory name="Eta">
-      <hist1D name="el_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etas2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etas1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etas0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etacorrmag_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etap_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etas3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Phi">
-      <hist1D name="el_phis3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phis2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phis0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phis1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Pt">
-      <hist1D name="el_ptcone30_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_pz_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_pz_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_py_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_pt2conv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_ptconv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_pt1conv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-    </TDirectory>
-    <TDirectory name="Clusters">
-     <TDirectory name="Properties">
-      <hist1D name="el_cl_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="RawCl">
-      <hist1D name="el_rawcl_phis2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_phis0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_phis1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_etas3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_etas2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_etas1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_etas0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_phis3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_Es0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_Es1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_Es2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rawcl_Es3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Others"/>
-    </TDirectory>
-    <TDirectory name="Tracks">
-     <TDirectory name="nHits">
-      <hist1D name="el_nSiHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLSharedHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHoles_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHoles_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHighTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTOutliers_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_hastrack_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTSharedHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixSharedHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHighTOutliers_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TrackInfo">
-      <hist1D name="el_tracktheta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_tracksigd0z0pvunbiased_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_z0_qoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackz0pv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_z0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_phi_qoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_d0_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackz0pvunbiased_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_tracksigd0z0pv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackd0beam_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_qoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_phi_z0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_d0_theta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackd0pvunbiased_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_phi_theta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_theta_qoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackphi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_tracksigd0pv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_d0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackd0pv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_tracketa_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackfitndof_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_d0_qoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackd0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_z0_theta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_d0_z0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_z0_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_tracksigd0beam_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackfitchi2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_treackqoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackcov_theta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_tracksigd0pvunbiased_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackz0_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Reffit">
-      <hist1D name="el_refittedtrackcovd0theta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovqoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovd0qoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovphi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedTrack_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovz0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovz0theta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovd0phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovz0phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovz0qoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovd0z0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovphitheta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovtheta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovd0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovthetaqoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_refittedtrackcovphiqoverp_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-    </TDirectory>
-    <TDirectory name="Conversions">
-     <hist1D name="el_convtrk2nSCTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convtrackmatch_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convtrk2nBLHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convtrk1nBLHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convvtxy_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convvtxx_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convvtxz_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_nSingleTrackConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_isConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convtrk2nTRTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_nDoubleTrackConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_Rconv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convtrk1nSCTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convtrk2nPixHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convFlag_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_hasconv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pzconv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convtrk1nTRTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convvtxchi2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_zconv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convtrk1nPixHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_nConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_convanglematch_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="DeltaVariables">
-     <hist1D name="el_deltaphi2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_deltaphiRescaled_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_deltaeta1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_deltaeta2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_deltaEmax2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_deltaEs_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="JetVariables">
-     <hist1D name="el_jet_m_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_dr_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_matched_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Others">
-     <hist1D name="el_wstot_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="fwdError_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_type_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_errz_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_verty_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_calibHitsShowerDepth_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_vertz_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="fwdFlags_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_softeweight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eProbabilityToT_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_secondR_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_fside_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_electronweight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_m_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_adaboost_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_ws3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_rphiallcalo_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_rphi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_isolationlikelihoodhqelectrons_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pos7_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_lateral_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_centerlambda_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_secondlambda_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_longitudinal_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pixeldEdx_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_Hmatrix5_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_isolationlikelihoodjets_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_weta2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_vertx_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eProbabilityComb_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_origin_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eProbabilityBrem_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_softeneuralnet_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_firstEdens_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_depth_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_Hmatrix_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_reta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eProbabilityHT_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_cellmaxfrac_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_neuralnet_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_isIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_softebgweight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_isEM_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_zvertex_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_electronbgweight_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-   <TDirectory name="AllPhoton">
-    <TDirectory name="General">
-     <hist1D name="ph_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isEM_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Convertions">
-     <hist1D name="ph_convFlag_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nDoubleTrackConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nSingleTrackConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="PhotonPxyz">
-     <hist1D name="ph_pz_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_px_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_py_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="OtherVariables">
-     <hist1D name="ph_isRecovered_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_Et_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_m_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-   <TDirectory name="LArg">
-    <TDirectory name="General">
-     <hist1D name="larFlags_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="larError_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Energy">
-     <hist1D name="lar_energyC_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="lar_energyA_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="nCell">
-     <hist1D name="lar_ncellA_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="lar_ncellC_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Time">
-     <hist1D name="lar_timeA_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="lar_timeC_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="lar_timeDiff_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-   <TDirectory name="Vxp">
-    <hist1D name="vxp_purity_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_sumWeightOutliers_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_m_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_nTracks_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_z_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_x_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_y_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_sumWeightInliers_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_nPileUp_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_trk_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_nOutliers_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_type_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_sumWeightPileup_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_cov_z_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_cov_y_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_cov_x_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_sumPt_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_chi2_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_ndof_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_pz_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_py_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_px_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_nFakes_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_sumWeightFakes_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="vxp_nInliers_h1" plotopts="" tests="bbb" type="TH1F"/>
-   </TDirectory>
-   <TDirectory name="MC">
-    <TDirectory name="Electron">
-     <hist1D name="el_jet_truth_matched_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_matched_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_motherbarcode_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_truth_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_mothertype_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_status_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_barcode_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_hasHardBrem_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_truth_dr_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_truth_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_truth_type_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_truth_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_truth_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_jet_truth_m_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Photon">
-     <hist1D name="ph_truth_barcode_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_type_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_isPhotonFromHardProc_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_isConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_deltaRRecPhoton_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_matched_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_isFromHardProc_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_motherbarcode_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_mothertype_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_isBrem_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_status_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_truth_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="GeneralVaraible">
-     <hist1D name="mc_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_pdf2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_pdf1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_m_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_signal_process_id_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_pdf_scale_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_weight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_pdf_x2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_pdf_x1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_vx_z_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_vx_y_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_vx_x_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_barcode_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_alphaQED_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_pdgId_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_alphaQCD_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_charge_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_event_number_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_event_scale_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_status_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mc_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_pdf_id1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="mcevt_pdf_id2_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-   <TDirectory name="Others">
-    <hist1D name="mbtime_timeDiff_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="mbtime_timeC_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="mbtime_timeA_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="trtFlags_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="coreError_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="lbn_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="pixelFlags_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="tileFlags_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="trtError_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="tileError_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="detmask0_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="coreFlags_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="mbtime_countC_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="mbtime_countA_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="pixelError_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="detmask1_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="timestamp_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="sctFlags_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="sctError_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="bcid_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="muonError_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="timestamp_ns_h1" plotopts="" tests="bbb" type="TH1F"/>
-    <hist1D name="muonFlags_h1" plotopts="" tests="bbb" type="TH1F"/>
-   </TDirectory>
-  </TDirectory>
- </dcube>
-</dcube_client_config>
diff --git a/Reconstruction/egamma/egammaValidation/test/dcube_config_expert.xml b/Reconstruction/egamma/egammaValidation/test/dcube_config_expert.xml
deleted file mode 100644
index 97b176b36a657f4057cc34d1eeb762ea1f3cb48a..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/test/dcube_config_expert.xml
+++ /dev/null
@@ -1,676 +0,0 @@
-<?xml version="1.0" ?>
-<!--
- DCube configuration XML file = my_dcube_config_expert.xml
- auto-generated using DCube 4.6692016 ($Rev: 217525 $ $Date$) by Krzysztof Daniel Ciba (Krzysztof.Ciba@NOSPAMgmail.com)
- on Thu, 20 Jan 2011 10:59:44 CET
- from Root reference file: expert.root
- Statistics tests:
- "['KS', 'chi2', 'bbb']"
- Legend:
- * KS    - Kolmogorov-Smirnov test (default)
- * chi2  - chi2 test
- * bbb   - bin-by-bin comparision
- * meany - avg eff mean y [TProfiles only!]
- * all   - all above tests
- Tweaks:
- [1] remove or comment out (using HTML comments tags) histograms not relevant
-     to your analysis
- [2] provide a new content to "ref_desc" and "mon_desc" tags to something
-     more meaningful
- [3] and of course feel free to change attribute "tests" in each "hist" tag
- [4] limits of p-value warning and failure can be set by changing attributes
-     in <plimit> tag
- [5] if you want to make plots FOR EVERY histogram in your monitored file
-     change attribute "inclusive" in <mode> tag to "true"
--->
-<dcube_client_config>
- <dcube branch="*" cmtconfig="*" install="*" jobId="*" project="*">
-  <!--
-  ###################################################
-  DCubeClient for:
-  [1] branch: *
-  [2] install: *
-  [3] cmtconfig: *
-  [4] project: *
-  [5] jobId: *
-  [6] reference root file: /afs/cern.ch/user/t/teinturi/scratch0/working/egammaRTT_16_0_2_3_expert.root
-  [7] p-values limits FAIL = 0.750000 WARN = 0.950000
-  ###################################################
--->
-  <reference file="/afs/cern.ch/user/t/teinturi/scratch0/working/egammaRTT_16_0_2_3_expert.root"/>
-  <ref_desc>
-   PUT YOUR REFERENCE DESCRIPTION HERE
-  </ref_desc>
-  <test_desc>
-   PUT YOUR TEST DESCRIPTION HERE
-  </test_desc>
-  <plimit fail="0.75" warn="0.95"/>
-  <TDirectory name="/">
-   <TDirectory name="ELECTRONS">
-    <TDirectory name="AllElectrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_Ethad1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nSiHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_nBLHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_medium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="LooseElectrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_Ethad1_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nPixHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_expectHitInBLayer_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_eta_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="MediumElectrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_E237_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nSCTHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_TRTHighTHitsRatio_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_charge_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="TightElectrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_E277_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_f1_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_expectHitInBLayer_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_loose_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author1Electrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_E237_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nPixHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_cl_E_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_author_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author2Electrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_Ethad1_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nPixHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_trackpt_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_eta_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author3Electrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_Ethad1_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nPixHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_cl_E_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_eta_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author8Electrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_weta2_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_emaxs1_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_trackpt_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_author_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-   <TDirectory name="PHOTONS">
-    <TDirectory name="AllPhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_Ethad1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_deltaEmax2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_nConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="LoosePhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_E277_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_emaxs1_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_loose_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="TightPhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_E277_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_deltaEmax2_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_E_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author4Photons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_Ethad_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_deltaEs_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_eta_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author16Photons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_E233_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_emaxs1_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_tight_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="IsConvPhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_E237_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_cl_E_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_eta_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="UnConvPhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_Ethad_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_cl_E_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_isConv_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-   <TDirectory name="Expert">
-    <TDirectory name="Electrons">
-     <TDirectory name="Identification">
-      <hist1D name="el_type_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_medium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_mediumIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_isEM_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_origin_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Kinematics">
-      <hist1D name="el_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_pz_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_py_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_m_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_px_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Et_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_charge_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Conversion">
-      <hist1D name="el_convFlag_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_isConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="EMVariables">
-      <hist1D name="el_wstot_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etas3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etas2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etas1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_etas0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_deltaEs_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Es1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phis2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phis3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phis0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_phis1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_ws3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rphiallcalo_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_rphi_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Es0_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_fside_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Es2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Es3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f3core_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Emax2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Emins1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E233_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_reta_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1core_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_deltaEmax2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="Isolation"/>
-     <TDirectory name="DiscriminantsVariables"/>
-     <TDirectory name="Pointing"/>
-     <TDirectory name="ClusterKinematics"/>
-     <TDirectory name="L1Variables"/>
-     <TDirectory name="L2Variables"/>
-     <TDirectory name="EFVariables"/>
-     <TDirectory name="Jet"/>
-     <TDirectory name="Track"/>
-     <TDirectory name="RawCl"/>
-     <TDirectory name="Vertex"/>
-     <TDirectory name="Brem"/>
-     <TDirectory name="MC"/>
-     <TDirectory name="TrackMatch"/>
-     <TDirectory name="EMTrackFit"/>
-     <TDirectory name="ForwardVariables"/>
-    </TDirectory>
-    <TDirectory name="Photons">
-     <TDirectory name="Identification"/>
-     <TDirectory name="Kinematics"/>
-     <TDirectory name="Conversion"/>
-     <TDirectory name="EMVariables"/>
-     <TDirectory name="Isolation"/>
-     <TDirectory name="DiscriminantsVariables"/>
-     <TDirectory name="Pointing"/>
-     <TDirectory name="ClusterKinematics"/>
-     <TDirectory name="L1Variables"/>
-     <TDirectory name="L2Variables"/>
-     <TDirectory name="EFVariables"/>
-     <TDirectory name="Jet"/>
-     <TDirectory name="TrackVariables"/>
-     <TDirectory name="RawCl"/>
-     <TDirectory name="Topo"/>
-     <TDirectory name="MC"/>
-    </TDirectory>
-    <TDirectory name="Muons">
-     <TDirectory name="Kinematics"/>
-     <TDirectory name="Algorithms"/>
-     <TDirectory name="EnergyLossCalo"/>
-     <TDirectory name="MuonSpectrometerHitsSummary"/>
-     <TDirectory name="Isolation"/>
-     <TDirectory name="TrackPattern"/>
-     <TDirectory name="TrackParameters"/>
-     <TDirectory name="TrackQuality"/>
-     <TDirectory name="L1Variables"/>
-     <TDirectory name="L2Variables"/>
-     <TDirectory name="EFVariables"/>
-     <TDirectory name="MC"/>
-    </TDirectory>
-    <TDirectory name="Others">
-     <TDirectory name="McEvent"/>
-     <TDirectory name="GlobalEvent"/>
-     <TDirectory name="JetContent"/>
-     <TDirectory name="METContent"/>
-     <TDirectory name="MinimumBias"/>
-     <TDirectory name="TriggerBit"/>
-    </TDirectory>
-   </TDirectory>
-  </TDirectory>
- </dcube>
-</dcube_client_config>
diff --git a/Reconstruction/egamma/egammaValidation/test/dcube_config_shifter.xml b/Reconstruction/egamma/egammaValidation/test/dcube_config_shifter.xml
deleted file mode 100644
index 112e41e3aeaeef3d267114c1af852a005505b37a..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/test/dcube_config_shifter.xml
+++ /dev/null
@@ -1,553 +0,0 @@
-<?xml version="1.0" ?>
-<!--
- DCube configuration XML file = my_dcube_config.xml
- auto-generated using DCube 4.6692016 ($Rev: 217525 $ $Date$) by Krzysztof Daniel Ciba (Krzysztof.Ciba@NOSPAMgmail.com)
- on Mon, 10 Jan 2011 13:50:29 CET
- from Root reference file: mod.root
- Statistics tests:
- "['KS', 'chi2', 'bbb']"
- Legend:
- * KS    - Kolmogorov-Smirnov test (default)
- * chi2  - chi2 test
- * bbb   - bin-by-bin comparision
- * meany - avg eff mean y [TProfiles only!]
- * all   - all above tests
- Tweaks:
- [1] remove or comment out (using HTML comments tags) histograms not relevant
-     to your analysis
- [2] provide a new content to "ref_desc" and "mon_desc" tags to something
-     more meaningful
- [3] and of course feel free to change attribute "tests" in each "hist" tag
- [4] limits of p-value warning and failure can be set by changing attributes
-     in <plimit> tag
- [5] if you want to make plots FOR EVERY histogram in your monitored file
-     change attribute "inclusive" in <mode> tag to "true"
--->
-<dcube_client_config>
- <dcube branch="*" cmtconfig="*" install="*" jobId="*" project="*">
-  <!--
-  ###################################################
-  DCubeClient for:
-  [1] branch: *
-  [2] install: *
-  [3] cmtconfig: *
-  [4] project: *
-  [5] jobId: *
-  [6] reference root file: /afs/cern.ch/user/t/teinturi/scratch0/working/egammaRTT_16_0_2_3_shifter.root
-  [7] p-values limits FAIL = 0.750000 WARN = 0.950000
-  ###################################################
--->
-  <reference file="/afs/cern.ch/user/t/teinturi/scratch0/working/egammaRTT_16_0_2_3_shifter.root"/>
-  <ref_desc>
-   PUT YOUR REFERENCE DESCRIPTION HERE
-  </ref_desc>
-  <test_desc>
-   PUT YOUR TEST DESCRIPTION HERE
-  </test_desc>
-  <plimit fail="0.75" warn="0.95"/>
-  <TDirectory name="/">
-   <TDirectory name="ELECTRONS">
-    <TDirectory name="AllElectrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_Ethad1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nSiHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_nBLHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_medium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="LooseElectrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_Ethad1_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nPixHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_expectHitInBLayer_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_eta_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="MediumElectrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_E237_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nSCTHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_TRTHighTHitsRatio_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_charge_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifMedium_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="TightElectrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_E277_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_f1_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_expectHitInBLayer_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_loose_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author1Electrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_E237_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nPixHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_cl_E_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_author_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifAuthor1_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author2Electrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_Ethad1_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nPixHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_trackpt_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_eta_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifAuthor2_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author3Electrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_Ethad1_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_weta2_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_nPixHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_emaxs1_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_cl_E_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_trackpt_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_eta_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_author_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifAuthor3_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author8Electrons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="el_weta2_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E237_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad1_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_E277_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_Ethad_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="MediumVariables">
-      <hist1D name="el_emaxs1_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSiHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nPixHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nSCTHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_f1_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_wstot_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="el_trackpt_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_cl_E_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nTRTHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_TRTHighTHitsRatio_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_nBLHits_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="el_expectHitInBLayer_isAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="el_author_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_eta_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tightIso_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_phi_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_tight_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_pt_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_medium_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_mediumIso_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_loose_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_charge_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="el_n_ifAuthor8_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-   <TDirectory name="PHOTONS">
-    <TDirectory name="AllPhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_Ethad1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_deltaEmax2_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_nConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="LoosePhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_E277_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_emaxs1_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_loose_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifLoose_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="TightPhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_E277_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_deltaEmax2_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_E_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifTight_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author4Photons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_Ethad_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_deltaEs_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_eta_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifAuthor4_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="Author16Photons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_E233_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_emaxs1_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_cl_E_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_tight_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifAuthor16_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="IsConvPhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_E237_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_cl_E_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_eta_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_isConv_ifIsConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-    <TDirectory name="UnConvPhotons">
-     <TDirectory name="LooseVariables">
-      <hist1D name="ph_Ethad_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Es2_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E277_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E237_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_E233_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_weta2_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_Ethad1_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <TDirectory name="TightVariables">
-      <hist1D name="ph_cl_E_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_wstot_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_emaxs1_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_f1_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEmax2_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-      <hist1D name="ph_deltaEs_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     </TDirectory>
-     <hist1D name="ph_isConv_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_n_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_pt_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_E_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_loose_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_eta_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tight_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_tightIso_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_author_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_phi_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-     <hist1D name="ph_nConv_ifUnConv_h1" plotopts="" tests="bbb" type="TH1F"/>
-    </TDirectory>
-   </TDirectory>
-  </TDirectory>
- </dcube>
-</dcube_client_config>
diff --git a/Reconstruction/egamma/egammaValidation/test/egammaValidation_TestConfiguration.xml b/Reconstruction/egamma/egammaValidation/test/egammaValidation_TestConfiguration.xml
deleted file mode 100755
index 785467d5768080d27688623ff9cb52328c708d9e..0000000000000000000000000000000000000000
--- a/Reconstruction/egamma/egammaValidation/test/egammaValidation_TestConfiguration.xml
+++ /dev/null
@@ -1,128 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE unifiedTestConfiguration SYSTEM "http://www.hep.ucl.ac.uk/atlas/AtlasTesting/DTD/unifiedTestConfiguration.dtd">
-
-<unifiedTestConfiguration>
-<atn/>
-<kv/>
-<rtt xmlns="http://www.hep.ucl.ac.uk/atlas/AtlasTesting/rtt">
- 
-    <rttContactPerson>Marthe Teinturier (teinturier@cern.ch)</rttContactPerson>
-    <mailto>teinturier@NOSPAMcern.ch</mailto>
-    
-    <jobList>
-      
-      <chain>
-	<chainName>RDOtoDCube</chainName>
-	<sequential>
-	  
-	  <chainElement>
-	    <athena userJobId="egammaID">
-	      <doc>RDOtoD3PD job</doc>
-	      <options>egammaValidation/rdoToD3PD.py</options>
-	      <group>RDOtoD3PDegamma</group>
-	      <queue>long</queue>
-	    </athena>
-            <chainfileout>egamma.root</chainfileout>
-	  </chainElement>
-	  
-	  <parallel>
-	    <chainElement>
-	      <jobTransform userJobId="egammaPyrootShifter">
-		<jobTransformJobName>transform</jobTransformJobName>
-		<jobTransformCmd>
-		  get_files -scripts egammaRTTInit.py; pyroot.py -b -c "MonNAME='egamma.root'" egammaRTTInit.py
-		</jobTransformCmd>
-		<group>RDOtoD3PDegamma</group>
-		<chaindataset_info>
-                  <jobTransformData />    
-                  <chaindatasetName>egamma.root</chaindatasetName>
-		  <dataset_info> 
-		    <dc2 />
-		    <datasetName>/afs/cern.ch/user/s/schaffer/public/my_nonexistant.root</datasetName>
-		  </dataset_info>
-		</chaindataset_info> 
-	      </jobTransform>
-            <chainfileout>shifter.root</chainfileout>
-	  </chainElement>
-	    
-	    <chainElement>
-	      <jobTransform userJobId="egammaPyrootExpert">
-		<jobTransformJobName>transform</jobTransformJobName>
-		<jobTransformCmd>
-		  get_files -scripts egammaRTTInit.py; pyroot.py -b -c "MonNAME='egamma.root';expert=True" egammaRTTInit.py
-		</jobTransformCmd>
-		<group>RDOtoD3PDegamma</group>
-		<chaindataset_info>
-                  <jobTransformData />    
-                  <chaindatasetName>egamma.root</chaindatasetName>
-		  <dataset_info> 
-		    <dc2 />
-		    <datasetName>/afs/cern.ch/user/s/schaffer/public/my_nonexistant.root</datasetName>
-		  </dataset_info>
-		</chaindataset_info> 
-	      </jobTransform>
-            <chainfileout>expert.root</chainfileout>
-	  </chainElement>
-	    
-	  </parallel>
-
-	</sequential>
-      </chain>
-    </jobList>
-
-    <jobGroups>
-         <jobGroup name="RDOtoD3PDegammaShifter" parent="Transform">
-
-            <keepFilePattern>*</keepFilePattern>
-
-	    <test>
-	      <modulename>RttLibraryTools</modulename>
-	      <testname>DCubeRunner</testname>
-	      <arg>
-		<argname>DCubeCfg</argname>
-		<argvalue>dcube_config_shifter.xml</argvalue>
-	      </arg>
-	      <arg>
-		<argname>DCubeRef</argname>
-		<argvalue>egammaRTT_16_0_2_3_shifter.root</argvalue>
-	      </arg>
-	      <arg>
-		<argname>DCubeMon</argname>
-		<argvalue>shifter.root</argvalue>
-	      </arg>
-	   </test>
-
-         </jobGroup>
-         <jobGroup name="AthenaRDOtoD3PDegammaShifter" parent="Athena">
-         </jobGroup>
-
-         <jobGroup name="RDOtoD3PDegammaExpert" parent="Transform">
-
-            <keepFilePattern>*</keepFilePattern>
-
-	    <test>
-	      <modulename>RttLibraryTools</modulename>
-	      <testname>DCubeRunner</testname>
-	      <arg>
-		<argname>DCubeCfg</argname>
-		<argvalue>dcube_config_expert.xml</argvalue>
-	      </arg>
-	      <arg>
-		<argname>DCubeRef</argname>
-		<argvalue>egammaRTT_16_0_2_3_expert.root</argvalue>
-	      </arg>
-	      <arg>
-		<argname>DCubeMon</argname>
-		<argvalue>expert.root</argvalue>
-	      </arg>
-	   </test>
-
-         </jobGroup>
-         <jobGroup name="AthenaRDOtoD3PDegamma" parent="Athena">
-         </jobGroup>
-
-    </jobGroups>
-    
-</rtt>
-
-</unifiedTestConfiguration>
diff --git a/Reconstruction/egamma/egammaValidation/test/test_electron.sh b/Reconstruction/egamma/egammaValidation/test/test_electron.sh
new file mode 100755
index 0000000000000000000000000000000000000000..0ddb3c50a39c38b5ab71bc04961954cafc98edb5
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/test/test_electron.sh
@@ -0,0 +1,27 @@
+#!/bin/sh
+#
+# art-description: ART Monitoring Tool for electron Validation
+#
+# art-type: grid
+# art-output: *.pool.root
+# art-output: *.txt
+# art-output: *.root
+
+Reco_tf.py --inputRDOFile=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/egammaValidation/rootMCFiles/mc16_13TeV.423000.ParticleGun_single_electron_egammaET.recon.RDO.e3566_s3113_r9388/RDO.11229424._000031.pool.root.1 --outputAODFile=ART_Rec_electron.pool.root --autoConfiguration="everything" --preExec="rec.doTrigger=False; rec.doMuon=False; rec.doTau=False ; from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doMuonSpShower=False ; rec.doBTagging=False ; recAlgs.doEFlow=False ; recAlgs.doEFlowJet=False ; recAlgs.doMissingET=False ; recAlgs.doMissingETSig=False ; from JetRec.JetRecFlags import jetFlags ; jetFlags.Enabled=False ; "
+
+echo  "art-result: $? reconstruction"
+
+checkFile.py ART_Rec_electron.pool.root > checkFile_ART_electron.txt
+checkxAOD.py ART_Rec_electron.pool.root > checkxAOD_ART_electron.txt
+
+echo  "art-result: $? checks_files"
+
+diff checkFile_ART_electron.txt /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/egammaValidation/Baseline_Files/txtFiles/checkFile_Baseline_electron.txt > diffFile_electron.txt
+diff checkxAOD_ART_electron.txt /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/egammaValidation/Baseline_Files/txtFiles/checkxAOD_Baseline_electron.txt > diffxAOD_electron.txt
+
+echo  "art-result: $? diff_files"
+
+get_files -jo egamma_art_checker_joboptions.py
+athena -c "particleType='electron'" egamma_art_checker_joboptions.py
+
+echo  "art-result: $? athena_job"
\ No newline at end of file
diff --git a/Reconstruction/egamma/egammaValidation/test/test_gamma.sh b/Reconstruction/egamma/egammaValidation/test/test_gamma.sh
new file mode 100755
index 0000000000000000000000000000000000000000..3c6c073c39f98e9dd110ab5f5d6550cbed7a53dc
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/test/test_gamma.sh
@@ -0,0 +1,27 @@
+#!/bin/sh
+#
+# art-description: ART Monitoring Tool for gamma Validation
+#
+# art-type: grid
+# art-output: *.pool.root
+# art-output: *.txt
+# art-output: *.root
+
+Reco_tf.py --inputRDOFile=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/egammaValidation/rootMCFiles/mc16_13TeV.423001.ParticleGun_single_photon_egammaET.recon.RDO.e3566_s3113_r9388/RDO.11223039._000027.pool.root.1 --outputAODFile=ART_Rec_gamma.pool.root --autoConfiguration="everything" --preExec="rec.doTrigger=False; rec.doMuon=False; rec.doTau=False ; from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doMuonSpShower=False ; rec.doBTagging=False ; recAlgs.doEFlow=False ; recAlgs.doEFlowJet=False ; recAlgs.doMissingET=False ; recAlgs.doMissingETSig=False ; from JetRec.JetRecFlags import jetFlags ; jetFlags.Enabled=False ; "
+
+echo  "art-result: $? reconstruction"
+
+checkFile.py ART_Rec_gamma.pool.root > checkFile_ART_gamma.txt
+checkxAOD.py ART_Rec_gamma.pool.root > checkxAOD_ART_gamma.txt
+
+echo  "art-result: $? checks_files"
+
+diff checkFile_ART_gamma.txt /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/egammaValidation/Baseline_Files/txtFiles/checkFile_Baseline_gamma.txt > diffFile_gamma.txt
+diff checkxAOD_ART_gamma.txt /cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/egammaValidation/Baseline_Files/txtFiles/checkxAOD_Baseline_gamma.txt > diffxAOD_gamma.txt
+
+echo  "art-result: $? diff_files"
+
+get_files -jo egamma_art_checker_joboptions.py
+athena -c "particleType='gamma'" egamma_art_checker_joboptions.py
+
+echo  "art-result: $? athena_job"