diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/python/HIGG5Common.py b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/python/HIGG5Common.py
index ded3b2c9e0d432b55ee3947c9c791562bc91372b..018886947cec6d32f6e5652ca4c2f1969d09e01d 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/python/HIGG5Common.py
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/python/HIGG5Common.py
@@ -49,6 +49,77 @@ def getHIGG5CommonTruth() :
         "MuonTruthParticles.barcode.decayVtxLink.e.m.pdgId.prodVtxLink.px.py.pz.recoMuonLink.status.truthOrigin.truthParticleLink.truthType"
         ]
 
+def getHIGG5CommonTruthDictionExtionson() :
+    return {
+        "TruthBoson"                         : "xAOD::TruthParticleContainer" ,
+        "TruthBosonAux"                      : "xAOD::TruthParticleAuxContainer" ,
+        "TruthTop"                           : "xAOD::TruthParticleContainer" ,
+        "TruthTopAux"                        : "xAOD::TruthParticleAuxContainer" ,
+        "TruthBSM"                           : "xAOD::TruthParticleContainer" ,
+        "TruthBSMAux"                        : "xAOD::TruthParticleAuxContainer" ,
+        "HardScatterParticles"               : "xAOD::TruthParticleContainer" ,
+        "HardScatterParticlesAux"            : "xAOD::TruthParticleAuxContainer" ,
+        "TruthBosonWithDecayParticles"       : "xAOD::TruthParticleContainer" ,
+        "TruthBosonWithDecayParticlesAux"    : "xAOD::TruthParticleAuxContainer" ,
+        "TruthTopQuarkWithDecayParticles"    : "xAOD::TruthParticleContainer" ,
+        "TruthTopQuarkWithDecayParticlesAux" : "xAOD::TruthParticleAuxContainer" ,
+        "TruthHFWithDecayParticles"          : "xAOD::TruthParticleContainer" ,
+        "TruthHFWithDecayParticlesAux"       : "xAOD::TruthParticleAuxContainer" ,
+        "HardScatterVertices"                : "xAOD::TruthVertexContainer" ,
+        "HardScatterVerticesAux"             : "xAOD::TruthVertexAuxContainer" ,
+        "TruthBosonWithDecayVertices"        : "xAOD::TruthVertexContainer" ,
+        "TruthBosonWithDecayVerticesAux"     : "xAOD::TruthVertexAuxContainer" ,
+        "TruthTopQuarkWithDecayVertices"     : "xAOD::TruthVertexContainer" ,
+        "TruthTopQuarkWithDecayVerticesAux"  : "xAOD::TruthVertexAuxContainer" ,
+        "TruthPrimaryVertices"               : "xAOD::TruthVertexContainer",
+        "TruthPrimaryVerticesAux"            : "xAOD::TruthVertexAuxContainer",
+        "TruthHFWithDecayVertices"           : "xAOD::TruthVertexContainer",
+        "TruthHFWithDecayVerticesAux"        : "xAOD::TruthVertexAuxContainer"
+        }
+
+def getHIGG5CommonDictionExtionson(add_truth_if_mc=True) :
+  common_dict = {
+      "AntiKtVR30Rmax4Rmin02TrackJets"         : "xAOD::JetContainer"        ,
+      "AntiKtVR30Rmax4Rmin02TrackJetsAux"      : "xAOD::JetAuxContainer"     ,
+      "BTagging_AntiKtVR30Rmax4Rmin02Track"    : "xAOD::BTaggingContainer"   ,
+      "BTagging_AntiKtVR30Rmax4Rmin02TrackAux" : "xAOD::BTaggingAuxContainer",
+      "BTagging_AntiKt4EMPFlow"                : "xAOD::BTaggingContainer"   ,
+      "BTagging_AntiKt4EMPFlowAux"             : "xAOD::BTaggingAuxContainer"
+      }
+  from DerivationFrameworkCore.DerivationFrameworkMaster import DerivationFrameworkIsMonteCarlo
+  if add_truth_if_mc and DerivationFrameworkIsMonteCarlo:
+      common_dict.update( getHIGG5CommonTruthDictionExtionson() )
+  return common_dict
+
+def getHIGG5CommonSmartCollections(add_truth_if_mc=True) :
+    common_smart_collections= ["Electrons",
+                               "Photons",
+                               "Muons",
+                               "TauJets",
+                               "MET_Reference_AntiKt4EMTopo",
+                               "MET_Reference_AntiKt4EMPFlow",
+                               "AntiKt4EMTopoJets",
+                               "AntiKt4EMPFlowJets",
+                               "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
+                               #  "AntiKtVR30Rmax4Rmin02Track",
+
+                               "BTagging_AntiKt4EMTopo",
+                               "BTagging_AntiKt4EMPFlow",
+                               "BTagging_AntiKt2Track",
+                               #  "BTagging_AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
+                               #  "BTagging_AntiKtVR30Rmax4Rmin02Track",
+                               "InDetTrackParticles",
+                               "PrimaryVertices"]
+    from DerivationFrameworkCore.DerivationFrameworkMaster import DerivationFrameworkIsMonteCarlo
+    if add_truth_if_mc and DerivationFrameworkIsMonteCarlo :
+        common_smart_collections += [
+            "AntiKt4TruthJets",
+            "AntiKt4TruthWZJets"
+            #          ,"AntiKt10TruthWZTrimmedPtFrac5SmallR20Jets"
+            ]
+    return common_smart_collections
+
+
 def filterContentList(pattern, content_list) :
     result=[]
     import re
diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG2D4.py b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG2D4.py
index 2ec805394cb6e54dd7eb172a9ba1d767693959fb..a962d0ec26c969d3bb9e615d16647fe532548389 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG2D4.py
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG2D4.py
@@ -12,17 +12,22 @@ from DerivationFrameworkJetEtMiss.METCommon import *
 from DerivationFrameworkFlavourTag.HbbCommon import *
 from DerivationFrameworkEGamma.EGammaCommon import *
 from DerivationFrameworkMuons.MuonsCommon import *
-if DerivationFrameworkIsMonteCarlo:
-    from DerivationFrameworkMCTruth.MCTruthCommon import addStandardTruthContents
-    addStandardTruthContents()
 from DerivationFrameworkInDet.InDetCommon import *
 from DerivationFrameworkCore.WeightMetadata import *
 from DerivationFrameworkHiggs.TruthCategories import *
 import AthenaCommon.SystemOfUnits as Units
 
+if DerivationFrameworkIsMonteCarlo:
+  from DerivationFrameworkTau.TauTruthCommon import scheduleTauTruthTools
+  scheduleTauTruthTools()
+
+
 # Add sumOfWeights metadata for LHE3 multiweights =======
 from DerivationFrameworkCore.LHE3WeightMetadata import *
 
+if DerivationFrameworkIsMonteCarlo :
+  from DerivationFrameworkHiggs.TruthCategories import *
+
 #==================================================================== 
 # SET UP STREAM 
 #==================================================================== 
@@ -31,6 +36,8 @@ fileName = buildFileName(derivationFlags.WriteDAOD_HIGG2D4Stream)
 HIGG2D4Stream = MSMgr.NewPoolRootStream( streamName, fileName) 
 HIGG2D4Stream.AcceptAlgs(["HIGG2D4Kernel"]) 
 
+import DerivationFrameworkHiggs.HIGG5Common as HIGG5Common
+
 #================
 # THINNING
 #================
@@ -64,12 +71,12 @@ thinningTools.append( HIGG5Common.getAntiKt10LCTopoCaloClusterThinning( 'HIGG2D4
 thinningTools.append( HIGG5Common.getAntiKt10LCTopoTrimmedPtFrac5SmallR20Thinning('HIGG2D4',HIGG2D4ThinningHelper) )
 
 # Truth particles
-if DerivationFrameworkIsMonteCarlo:
-    thinningTools.append(HIGG5Common.getTruthThinningTool('HIGG2D4', HIGG2D4ThinningHelper))
-    from DerivationFrameworkMCTruth.MCTruthCommon import *
-    addStandardTruthContents()
+# if DerivationFrameworkIsMonteCarlo:
+#     thinningTools.append(HIGG5Common.getTruthThinningTool('HIGG2D4', HIGG2D4ThinningHelper))
+#     from DerivationFrameworkMCTruth.MCTruthCommon import *
+#     addStandardTruthContents()
 
-print "HIGG2D4.py thinningTools", thinningTools
+# print "HIGG2D4.py thinningTools", thinningTools
 
 #====================================================================
 # SKIMMING TOOLS 
@@ -291,6 +298,12 @@ FlavorTagInit(JetCollections = ['AntiKt4EMPFlowJets'], Sequencer = higg2d4Seq)
 import JetTagNonPromptLepton.JetTagNonPromptLeptonConfig as JetTagConfig
 higg2d4Seq += JetTagConfig.GetDecoratePromptLeptonAlgs()
 
+#====================================================================
+# SET UP CUSTOM TRUTH3 INFORMATION
+#====================================================================
+if DerivationFrameworkIsMonteCarlo :
+  HIGG5Common.getTruth3Collections(higg2d4Seq)
+
 # Main selection
 higg2d4Seq += CfgMgr.DerivationFramework__DerivationKernel(
     "HIGG2D4Kernel",
@@ -307,37 +320,8 @@ from DerivationFrameworkHiggs.HIGG2D4ExtraContent import *
 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
 HIGG2D4SlimmingHelper = SlimmingHelper("HIGG2D4SlimmingHelper")
 
-HIGG2D4SlimmingHelper.AppendToDictionary = {
-  "AntiKtVR30Rmax4Rmin02TrackJets"                :   "xAOD::JetContainer"        ,
-  "AntiKtVR30Rmax4Rmin02TrackJetsAux"             :   "xAOD::JetAuxContainer"     ,
-  "BTagging_AntiKtVR30Rmax4Rmin02Track"           :   "xAOD::BTaggingContainer"   ,
-  "BTagging_AntiKtVR30Rmax4Rmin02TrackAux"        :   "xAOD::BTaggingAuxContainer",
-  "BTagging_AntiKt4EMPFlow" : "xAOD::BTaggingContainer"   ,
-  "BTagging_AntiKt4EMPFlowAux" : "xAOD::BTaggingAuxContainer"   ,
-  "TruthBoson" : "xAOD::TruthParticleContainer" ,
-  "TruthBosonAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthTop" : "xAOD::TruthParticleContainer" ,
-  "TruthTopAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthBSM" : "xAOD::TruthParticleContainer" ,  
-  }
-
-HIGG2D4SlimmingHelper.SmartCollections = ["Electrons",
-                                          "Photons",
-                                          "Muons",
-                                          "TauJets",
-                                          "MET_Reference_AntiKt4EMTopo",
-                                          "MET_Reference_AntiKt4EMPFlow",
-                                          "AntiKt4EMTopoJets",
-                                          "AntiKt4EMPFlowJets",
-                                          "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
-                                          "AntiKt4TruthJets",
-                                          "BTagging_AntiKt4EMTopo",
-                                          "BTagging_AntiKt4EMPFlow",
-                                          "BTagging_AntiKt2Track",
-#                                           "BTagging_AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
-#                                           "BTagging_AntiKtVR30Rmax4Rmin02Track",
-                                          "InDetTrackParticles",
-                                          "PrimaryVertices"]
+HIGG2D4SlimmingHelper.AppendToDictionary = HIGG5Common.getHIGG5CommonDictionExtionson()
+HIGG2D4SlimmingHelper.SmartCollections   = HIGG5Common.getHIGG5CommonSmartCollections()
 
 HIGG2D4SlimmingHelper.ExtraVariables = ExtraContent
 HIGG2D4SlimmingHelper.ExtraVariables.append(
@@ -361,11 +345,11 @@ if DerivationFrameworkIsMonteCarlo :
 HIGG5Common.addJetOutputs(HIGG2D4SlimmingHelper,["HIGG2D4Jets"],slimmed_content, ['AntiKt4PV0TrackJets'])
 addOriginCorrectedClusters(HIGG2D4SlimmingHelper, writeLC=True, writeEM=False)
 
-HIGG2D4SlimmingHelper.IncludeMuonTriggerContent = True
+HIGG2D4SlimmingHelper.IncludeMuonTriggerContent   = True
 HIGG2D4SlimmingHelper.IncludeEGammaTriggerContent = True
 HIGG2D4SlimmingHelper.IncludeEtMissTriggerContent = True
-HIGG2D4SlimmingHelper.IncludeJetTriggerContent = True
-HIGG2D4SlimmingHelper.IncludeBJetTriggerContent = True
+HIGG2D4SlimmingHelper.IncludeJetTriggerContent    = True
+HIGG2D4SlimmingHelper.IncludeBJetTriggerContent   = True
 
 HIGG2D4SlimmingHelper.AppendContentToStream(HIGG2D4Stream)
 
diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG5D1.py b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG5D1.py
index 7198354f06b0c41c6826d7885ed77da709e4031d..979779fff9e90281aab4e32ec9a4a90f5e136cf0 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG5D1.py
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG5D1.py
@@ -32,6 +32,8 @@ fileName   = buildFileName( derivationFlags.WriteDAOD_HIGG5D1Stream )
 HIGG5D1Stream = MSMgr.NewPoolRootStream( streamName, fileName )
 HIGG5D1Stream.AcceptAlgs(["HIGG5D1Kernel"])
 
+import DerivationFrameworkHiggs.HIGG5Common as HIGG5Common
+
 #====================================================================
 # THINNING TOOLS
 #====================================================================
@@ -44,7 +46,6 @@ HIGG5D1ThinningHelper = ThinningHelper("HIGG5D1ThinningHelper")
 HIGG5D1ThinningHelper.TriggerChains = 'HLT_xe.*|HLT_j.*|HLT_g.*'
 HIGG5D1ThinningHelper.AppendToStream(HIGG5D1Stream)
 
-import DerivationFrameworkHiggs.HIGG5Common as HIGG5Common
 #TrackParticles thinning
 # thinningTools.append( HIGG5Common.getAntiKt4EMTopoTrackParticleThinning('HIGG5D1',HIGG5D1ThinningHelper) )
 thinningTools.append( HIGG5Common.getMuonTrackParticleThinning(         'HIGG5D1',HIGG5D1ThinningHelper) )
@@ -63,11 +64,12 @@ thinningTools.append( HIGG5Common.getAntiKt10LCTopoCaloClusterThinning( 'HIGG5D1
 thinningTools.append( HIGG5Common.getAntiKt10LCTopoTrimmedPtFrac5SmallR20Thinning('HIGG5D1',HIGG5D1ThinningHelper) )
 
 # MC truth thinning (not for data)
-if DerivationFrameworkIsMonteCarlo :
-    thinningTools.append(HIGG5Common.getTruthThinningTool('HIGG5D1', HIGG5D1ThinningHelper))
-    #add Truth3 information
-    from DerivationFrameworkMCTruth.MCTruthCommon import *
-    addStandardTruthContents()
+# if DerivationFrameworkIsMonteCarlo :
+#  from DerivationFrameworkHiggs.TruthCategories import *
+#  # thinningTools.append(HIGG5Common.getTruthThinningTool('HIGG5D1', HIGG5D1ThinningHelper))
+#  #add Truth3 information
+#  # from DerivationFrameworkMCTruth.MCTruthCommon import *
+#  # addStandardTruthContents()
 
 #====================================================================
 # jet selection
@@ -262,6 +264,11 @@ FlavorTagInit(JetCollections = ['AntiKt4EMPFlowJets'], Sequencer = higg5d1Seq)
 import JetTagNonPromptLepton.JetTagNonPromptLeptonConfig as JetTagConfig
 higg5d1Seq += JetTagConfig.GetDecoratePromptLeptonAlgs()
 
+#====================================================================
+# SET UP CUSTOM TRUTH3 INFORMATION
+#====================================================================
+if DerivationFrameworkIsMonteCarlo :
+  HIGG5Common.getTruth3Collections(higg5d1Seq)
 
 higg5d1Seq += CfgMgr.DerivationFramework__DerivationKernel(
     "HIGG5D1Kernel_jet",
@@ -290,47 +297,8 @@ from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
 from DerivationFrameworkHiggs.HIGG5D1ExtraContent import *
 HIGG5D1SlimmingHelper = SlimmingHelper("HIGG5D1SlimmingHelper")
 
-HIGG5D1SlimmingHelper.AppendToDictionary = {
-  "AntiKtVR30Rmax4Rmin02TrackJets"               :   "xAOD::JetContainer"        ,
-  "AntiKtVR30Rmax4Rmin02TrackJetsAux"            :   "xAOD::JetAuxContainer"     ,
-  "BTagging_AntiKtVR30Rmax4Rmin02Track"          :   "xAOD::BTaggingContainer"   ,
-  "BTagging_AntiKtVR30Rmax4Rmin02TrackAux"       :   "xAOD::BTaggingAuxContainer",
-  "BTagging_AntiKt4EMPFlow" : "xAOD::BTaggingContainer"   ,
-  "BTagging_AntiKt4EMPFlowAux" : "xAOD::BTaggingAuxContainer"   ,
-  "TruthBoson" : "xAOD::TruthParticleContainer" ,
-  "TruthBosonAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthTop" : "xAOD::TruthParticleContainer" ,
-  "TruthTopAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthBSM" : "xAOD::TruthParticleContainer" ,
-  "TruthBSMAux" : "xAOD::TruthParticleAuxContainer" ,
-  }
-
-HIGG5D1SlimmingHelper.SmartCollections = [ "Electrons",
-                                           "Photons",
-                                           "Muons",
-                                           "TauJets",
-                                           "MET_Reference_AntiKt4EMTopo",
-                                           "MET_Reference_AntiKt4EMPFlow",
-                                           "AntiKt4EMTopoJets",
-                                           "AntiKt4EMPFlowJets",
-                                           "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
-                                           "AntiKt4TruthJets",
-#                                            "AntiKtVR30Rmax4Rmin02Track",
-                                           "BTagging_AntiKt4EMTopo",
-                                           "BTagging_AntiKt4EMPFlow",
-                                           "BTagging_AntiKt2Track",
-#                                           "BTagging_AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
-#                                           "BTagging_AntiKtVR30Rmax4Rmin02Track",
-                                           "InDetTrackParticles",
-                                           "PrimaryVertices" ]
-if DerivationFrameworkIsMonteCarlo :
-    HIGG5D1SlimmingHelper.SmartCollections += [
-         "AntiKt4TruthJets",
-         "AntiKt4TruthWZJets"
-#          ,"AntiKt10TruthWZTrimmedPtFrac5SmallR20Jets"
-    ]
-
-
+HIGG5D1SlimmingHelper.AppendToDictionary = HIGG5Common.getHIGG5CommonDictionExtionson()
+HIGG5D1SlimmingHelper.SmartCollections   = HIGG5Common.getHIGG5CommonSmartCollections()
 
 HIGG5D1SlimmingHelper.ExtraVariables = ExtraContent
 HIGG5D1SlimmingHelper.ExtraVariables.append(
@@ -356,12 +324,12 @@ HIGG5Common.addJetOutputs(HIGG5D1SlimmingHelper,["HIGG5D1Jets"],slimmed_content,
 addOriginCorrectedClusters(HIGG5D1SlimmingHelper, writeLC=True, writeEM=False)
 
 # if not DerivationFrameworkIsMonteCarlo : # for very early data
-# HIGG5D1SlimmingHelper.IncludeMuonTriggerContent = True
+#   HIGG5D1SlimmingHelper.IncludeMuonTriggerContent = True
 HIGG5D1SlimmingHelper.IncludeEGammaTriggerContent = True
 # HIGG5D1SlimmingHelper.IncludeBJetTriggerContent = True
 # HIGG5D1SlimmingHelper.IncludeBPhysTriggerContent = True
 # HIGG5D1SlimmingHelper.IncludeJetTauEtMissTriggerContent = True
 HIGG5D1SlimmingHelper.IncludeEtMissTriggerContent = True
-HIGG5D1SlimmingHelper.IncludeJetTriggerContent = True
+HIGG5D1SlimmingHelper.IncludeJetTriggerContent    = True
 
 HIGG5D1SlimmingHelper.AppendContentToStream(HIGG5D1Stream)
diff --git a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG5D2.py b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG5D2.py
index 47088639d8508050a2fbc305e9226ac93733f488..288d0021a2478ebce4ed151e15fafb6f34d14d64 100644
--- a/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG5D2.py
+++ b/PhysicsAnalysis/DerivationFramework/DerivationFrameworkHiggs/share/HIGG5D2.py
@@ -17,7 +17,7 @@ if DerivationFrameworkIsMonteCarlo:
   scheduleTauTruthTools()
 
 # running on data or MC
-from AthenaCommon.GlobalFlags import globalflags
+# from AthenaCommon.GlobalFlags import globalflags
 # print "DEBUG is MC ? ",DerivationFrameworkIsMonteCarlo
 
 if DerivationFrameworkIsMonteCarlo :
@@ -362,64 +362,8 @@ from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
 from DerivationFrameworkHiggs.HIGG5D2ExtraContent import *
 HIGG5D2SlimmingHelper = SlimmingHelper("HIGG5D2SlimmingHelper")
 
-HIGG5D2SlimmingHelper.AppendToDictionary = {
-  "AntiKtVR30Rmax4Rmin02TrackJets"               :   "xAOD::JetContainer"        ,
-  "AntiKtVR30Rmax4Rmin02TrackJetsAux"            :   "xAOD::JetAuxContainer"     ,
-  "BTagging_AntiKtVR30Rmax4Rmin02Track"          :   "xAOD::BTaggingContainer"   ,
-  "BTagging_AntiKtVR30Rmax4Rmin02TrackAux"       :   "xAOD::BTaggingAuxContainer",
-  "BTagging_AntiKt4EMPFlow" : "xAOD::BTaggingContainer"   ,
-  "BTagging_AntiKt4EMPFlowAux" : "xAOD::BTaggingAuxContainer"   ,
-  "TruthBoson" : "xAOD::TruthParticleContainer" ,
-  "TruthBosonAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthTop" : "xAOD::TruthParticleContainer" ,
-  "TruthTopAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthBSM" : "xAOD::TruthParticleContainer" ,
-  "TruthBSMAux" : "xAOD::TruthParticleAuxContainer" ,
-  "HardScatterParticles" : "xAOD::TruthParticleContainer" ,
-  "HardScatterParticlesAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthBosonWithDecayParticles" : "xAOD::TruthParticleContainer" ,
-  "TruthBosonWithDecayParticlesAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthTopQuarkWithDecayParticles" : "xAOD::TruthParticleContainer" ,
-  "TruthTopQuarkWithDecayParticlesAux" : "xAOD::TruthParticleAuxContainer" ,
-  "TruthHFWithDecayParticles" : "xAOD::TruthParticleContainer" ,
-  "TruthHFWithDecayParticlesAux" : "xAOD::TruthParticleAuxContainer" ,
-  "HardScatterVertices" : "xAOD::TruthVertexContainer" ,
-  "HardScatterVerticesAux" : "xAOD::TruthVertexAuxContainer" ,
-  "TruthBosonWithDecayVertices" : "xAOD::TruthVertexContainer" ,
-  "TruthBosonWithDecayVerticesAux" : "xAOD::TruthVertexAuxContainer" ,
-  "TruthTopQuarkWithDecayVertices" : "xAOD::TruthVertexContainer" ,
-  "TruthTopQuarkWithDecayVerticesAux" : "xAOD::TruthVertexAuxContainer" ,
-  "TruthPrimaryVertices" : "xAOD::TruthVertexContainer",
-  "TruthPrimaryVerticesAux" : "xAOD::TruthVertexAuxContainer",
-  "TruthHFWithDecayVertices" : "xAOD::TruthVertexContainer",
-  "TruthHFWithDecayVerticesAux" : "xAOD::TruthVertexAuxContainer",
-  }
-
-HIGG5D2SlimmingHelper.SmartCollections = [ "Electrons",
-                                           "Photons",
-                                           "Muons",
-                                           "TauJets",
-                                           "MET_Reference_AntiKt4EMTopo",
-                                           "MET_Reference_AntiKt4EMPFlow",
-                                           "AntiKt4EMTopoJets",
-                                           "AntiKt4EMPFlowJets",
-                                           "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
-                                           "AntiKt4TruthJets",
-#                                            "AntiKtVR30Rmax4Rmin02Track",
-                                           "BTagging_AntiKt4EMTopo",
-                                           "BTagging_AntiKt4EMPFlow",
-                                           "BTagging_AntiKt2Track",
-#                                           "BTagging_AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
-#                                           "BTagging_AntiKtVR30Rmax4Rmin02Track",
-                                           "InDetTrackParticles",
-                                           "PrimaryVertices" ]
-if DerivationFrameworkIsMonteCarlo :
-    HIGG5D2SlimmingHelper.SmartCollections += [
-         "AntiKt4TruthJets",
-         "AntiKt4TruthWZJets"
-#          ,"AntiKt10TruthWZTrimmedPtFrac5SmallR20Jets"
-    ]
-
+HIGG5D2SlimmingHelper.AppendToDictionary = HIGG5Common.getHIGG5CommonDictionExtionson()
+HIGG5D2SlimmingHelper.SmartCollections =   HIGG5Common.getHIGG5CommonSmartCollections()
 
 HIGG5D2SlimmingHelper.ExtraVariables = ExtraContent
 HIGG5D2SlimmingHelper.ExtraVariables.append(
@@ -446,13 +390,13 @@ if DerivationFrameworkIsMonteCarlo :
 HIGG5Common.addJetOutputs(HIGG5D2SlimmingHelper,["HIGG5D2Jets"],slimmed_content,['AntiKt4PV0TrackJets'])
 addOriginCorrectedClusters(HIGG5D2SlimmingHelper, writeLC=True, writeEM=False)
 
-HIGG5D2SlimmingHelper.IncludeMuonTriggerContent = True
-HIGG5D2SlimmingHelper.IncludeEGammaTriggerContent = True
-#HIGG5D2SlimmingHelper.IncludeBPhysTriggerContent = True
-#HIGG5D2SlimmingHelper.IncludeJetTauEtMissTriggerContent = True
-HIGG5D2SlimmingHelper.IncludeEtMissTriggerContent = True
-HIGG5D2SlimmingHelper.IncludeJetTriggerContent = True
+HIGG5D2SlimmingHelper.IncludeMuonTriggerContent         = True
+HIGG5D2SlimmingHelper.IncludeEGammaTriggerContent       = True
+# HIGG5D2SlimmingHelper.IncludeBPhysTriggerContent        = True
+# HIGG5D2SlimmingHelper.IncludeJetTauEtMissTriggerContent = True
+HIGG5D2SlimmingHelper.IncludeEtMissTriggerContent       = True
+HIGG5D2SlimmingHelper.IncludeJetTriggerContent          = True
 # if globalflags.DataSource()!='geant4': # for very early data
-# HIGG5D2SlimmingHelper.IncludeBJetTriggerContent = True
+#   HIGG5D2SlimmingHelper.IncludeBJetTriggerContent       = True
 
 HIGG5D2SlimmingHelper.AppendContentToStream(HIGG5D2Stream)