diff --git a/Reconstruction/egamma/egammaValidation/CMakeLists.txt b/Reconstruction/egamma/egammaValidation/CMakeLists.txt
index cb8720d005d0302c806bee02ab0000d22afdc39a..534847aa7ed5e7671320b73c7b8cba46fb316b5f 100644
--- a/Reconstruction/egamma/egammaValidation/CMakeLists.txt
+++ b/Reconstruction/egamma/egammaValidation/CMakeLists.txt
@@ -7,8 +7,11 @@ atlas_subdir( egammaValidation )
 atlas_add_component ( egammmaValidation
 	src/*.cxx 
 	src/components/*.cxx 
-    LINK_LIBRARIES AsgTools AthenaBaseComps EgammaAnalysisInterfacesLib GaudiKernel IsolationSelectionLib MCTruthClassifierLib PATCoreAcceptLib xAODBase xAODEgamma xAODEventInfo xAODTracking xAODTruth )
+    LINK_LIBRARIES AsgTools AthenaBaseComps EgammaAnalysisInterfacesLib GaudiKernel IsolationSelectionLib 
+                   MCTruthClassifierLib PATCoreAcceptLib xAODBase xAODEgamma xAODEventInfo 
+                   xAODTracking xAODTruth )
 
+atlas_install_python_modules( python/*.py POST_BUILD_CMD ${ATLAS_FLAKE8} )
 # Install JO files from the package:
 atlas_install_joboptions( share/*.py )
 # ART shell executable scripts :
diff --git a/Reconstruction/egamma/egammaValidation/python/egammaOnlyPreExec.py b/Reconstruction/egamma/egammaValidation/python/egammaOnlyPreExec.py
new file mode 100644
index 0000000000000000000000000000000000000000..a30d147a65a5afa5f77bddfd9f7d2267ad3d40d5
--- /dev/null
+++ b/Reconstruction/egamma/egammaValidation/python/egammaOnlyPreExec.py
@@ -0,0 +1,29 @@
+# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
+
+from ParticleBuilderOptions.AODFlags import AODFlags
+from RecExConfig.RecAlgsFlags import recAlgs
+from RecExConfig.RecFlags import rec
+from JetRec.JetRecFlags import jetFlags
+
+
+def setRunEgammaOnlyRecoFlags():
+    rec.doTrigger.set_Value_and_Lock(False)
+    rec.doTau.set_Value_and_Lock(False)
+    rec.doMuon.set_Value_and_Lock(False)
+    rec.doBTagging.set_Value_and_Lock(False)
+    recAlgs.doMuonSpShower.set_Value_and_Lock(False)
+    recAlgs.doEFlow.set_Value_and_Lock(False)
+    recAlgs.doEFlowJet.set_Value_and_Lock(False)
+    recAlgs.doMissingET.set_Value_and_Lock(False)
+    recAlgs.doMissingETSig.set_Value_and_Lock(False)
+    recAlgs.doTrigger.set_Value_and_Lock(False)
+    AODFlags.ThinGeantTruth.set_Value_and_Lock(False)
+    AODFlags.egammaTrackSlimmer.set_Value_and_Lock(False)
+    AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False)
+    AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False)
+    jetFlags.Enabled = False
+
+
+def setRunEgammaOnlyMergeFlags():
+    rec.doTrigger.set_Value_and_Lock(False)
+    recAlgs.doTrigger.set_Value_and_Lock(False)
diff --git a/Reconstruction/egamma/egammaValidation/share/egamma_art_checker_joboptions.py b/Reconstruction/egamma/egammaValidation/share/egamma_art_checker_joboptions.py
index cb3fed355cf6d408d885172e2530c2b8bd08e487..6570b2a068df86fb9eb1ec845e848d2613cde3d2 100755
--- a/Reconstruction/egamma/egammaValidation/share/egamma_art_checker_joboptions.py
+++ b/Reconstruction/egamma/egammaValidation/share/egamma_art_checker_joboptions.py
@@ -1,35 +1,35 @@
 #
-# Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration.
+# Copyright (C) 2002-2020 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
+from AtlasGeoModel import GeoModelInit
+from AtlasGeoModel import SetGeometryVersion
+from AthenaCommon.GlobalFlags import jobproperties
+from AthenaCommon.DetFlags import DetFlags
+from AthenaCommon.GlobalFlags import globalflags
+from AthenaCommon.AppMgr import theApp
+from AthenaCommon.AppMgr import ServiceMgr as svcMgr
+from AthenaCommon.AlgSequence import AlgSequence
+from GaudiSvc.GaudiSvcConf import THistSvc
 import AthenaPoolCnvSvc.ReadAthenaPool
 
 from MCTruthClassifier.MCTruthClassifierConf import MCTruthClassifier
-MCClassifier = MCTruthClassifier( name                      = "MCTruthClassifier",
-                                  ParticleCaloExtensionTool = "" )
+MCClassifier = MCTruthClassifier(name="MCTruthClassifier",
+                                 ParticleCaloExtensionTool="")
 ToolSvc += MCClassifier
 # Ouput Message Level
 svcMgr.MessageSvc.OutputLevel = INFO
 
-Geometry="ATLAS-R2-2016-01-00-01"
-from AthenaCommon.GlobalFlags import globalflags
+Geometry = "ATLAS-R2-2016-01-00-01"
 globalflags.DetGeo.set_Value_and_Lock('atlas')
-from AthenaCommon.DetFlags import DetFlags
 DetFlags.detdescr.all_setOn()
 DetFlags.Forward_setOff()
 DetFlags.ID_setOff()
 
-from AthenaCommon.GlobalFlags import jobproperties
-jobproperties.Global.DetDescrVersion=Geometry
+jobproperties.Global.DetDescrVersion = Geometry
 
-from AtlasGeoModel import SetGeometryVersion
-from AtlasGeoModel import GeoModelInit
-include( "CaloDetMgrDetDescrCnv/CaloDetMgrDetDescrCnv_joboptions.py" )
-include( "LArDetDescr/LArDetDescr_joboptions.py" )
+include("CaloDetMgrDetDescrCnv/CaloDetMgrDetDescrCnv_joboptions.py")
+include("LArDetDescr/LArDetDescr_joboptions.py")
 
 
 # ART File
@@ -38,7 +38,7 @@ svcMgr.EventSelector.InputCollections = [testFile]
 
 
 job = CfgMgr.AthSequencer("AthAlgSeq")
-job += CfgMgr.EgammaMonitoring('MonitoringAlg', sampleType = particleType)
+job += CfgMgr.EgammaMonitoring('MonitoringAlg', sampleType=particleType)
 
 
 theApp.EvtMax = 60000
@@ -46,7 +46,8 @@ theApp.EvtMax = 60000
 
 outputFile = 'Nightly-monitoring_'+particleType+'.hist.root'
 svcMgr += CfgMgr.THistSvc()
-svcMgr.THistSvc.Output = ["MONITORING DATAFILE='"+outputFile+"' OPT='RECREATE'"]
+svcMgr.THistSvc.Output = [
+    "MONITORING DATAFILE='"+outputFile+"' OPT='RECREATE'"]
 
 
-print ( "\n\nALL OK\n\n" )
+print("\n\nALL OK\n\n")
diff --git a/Reconstruction/egamma/egammaValidation/test/test_electron.sh b/Reconstruction/egamma/egammaValidation/test/test_electron.sh
index 3cbb7046e1ced4af548762a0cb754c10d9f41465..7d0918b9178aaef52e7248f9fa957d282dd19e20 100755
--- a/Reconstruction/egamma/egammaValidation/test/test_electron.sh
+++ b/Reconstruction/egamma/egammaValidation/test/test_electron.sh
@@ -29,7 +29,7 @@ case $ArtProcess in
         echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC}"
         unset  ATHENA_NUM_PROC
 
-	AODMerge_tf.py --inputAODFile=art_core_*/Nightly_AOD_electron.pool.root --outputAOD_MRGFile=Nightly_AOD_electron.pool.root --preExec "from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doTrigger=False" --postInclude "all:egammaValidation/egammaArtCaloCalPostInclude.py"
+	AODMerge_tf.py --inputAODFile=art_core_*/Nightly_AOD_electron.pool.root --outputAOD_MRGFile=Nightly_AOD_electron.pool.root --preExec "from egammaValidation.egammaOnlyPreExec import setRunEgammaOnlyMergeFlags; setRunEgammaOnlyMergeFlags()" --postInclude "all:egammaValidation/egammaArtCaloCalPostInclude.py"
 	
 	echo  "art-result: $? AODMerge"
 
@@ -67,7 +67,8 @@ case $ArtProcess in
 	echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC}"
 	unset  ATHENA_NUM_PROC
 	
-	Reco_tf.py --inputRDOFile=$x --outputAODFile=Nightly_AOD_electron.pool.root --maxEvents=2000 --autoConfiguration="everything" --preExec="from ParticleBuilderOptions.AODFlags import AODFlags; AODFlags.ThinGeantTruth.set_Value_and_Lock(False);AODFlags.egammaTrackSlimmer.set_Value_and_Lock(False);AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False); AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False); rec.doTrigger=False; rec.doTau=False ; rec.doMuon=False; rec.doBTagging=False ; from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doMuonSpShower=False ; recAlgs.doEFlow=False ; recAlgs.doEFlowJet=False ; recAlgs.doMissingET=False ; recAlgs.doMissingETSig=False ; recAlgs.doTrigger=False ; from JetRec.JetRecFlags import jetFlags ; jetFlags.Enabled=False ; " --postInclude "ESDtoAOD:egammaValidation/egammaArtCaloCalPostInclude.py" "POOLMergeAthenaMPAOD0:egammaValidation/egammaArtCaloCalPostInclude.py"
+    Reco_tf.py --inputRDOFile=$x --outputAODFile=Nightly_AOD_electron.pool.root --maxEvents=2000 --autoConfiguration="everything" --preExec="from egammaValidation.egammaOnlyPreExec import setRunEgammaOnlyRecoFlags; setRunEgammaOnlyRecoFlags()" --postInclude "ESDtoAOD:egammaValidation/egammaArtCaloCalPostInclude.py" "POOLMergeAthenaMPAOD0:egammaValidation/egammaArtCaloCalPostInclude.py"
+
 	
 	echo  "art-result: $? reconstruction"
 
diff --git a/Reconstruction/egamma/egammaValidation/test/test_electron_pileup.sh b/Reconstruction/egamma/egammaValidation/test/test_electron_pileup.sh
index eefaece530862c357fa344f8d9caec95375d9656..c1fe227cba5a8779715029dd7f60c9d3ebe1edab 100755
--- a/Reconstruction/egamma/egammaValidation/test/test_electron_pileup.sh
+++ b/Reconstruction/egamma/egammaValidation/test/test_electron_pileup.sh
@@ -29,7 +29,7 @@ case $ArtProcess in
         echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC}"
         unset  ATHENA_NUM_PROC
 
-	AODMerge_tf.py --inputAODFile=art_core_*/Nightly_AOD_electron.pool.root --outputAOD_MRGFile=Nightly_AOD_electron.pool.root --preExec "from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doTrigger=False" --postInclude "all:egammaValidation/egammaArtCaloCalPostInclude.py"
+	AODMerge_tf.py --inputAODFile=art_core_*/Nightly_AOD_electron.pool.root --outputAOD_MRGFile=Nightly_AOD_electron.pool.root --preExec "from egammaValidation.egammaOnlyPreExec import setRunEgammaOnlyMergeFlags; setRunEgammaOnlyMergeFlags()" --postInclude "all:egammaValidation/egammaArtCaloCalPostInclude.py"
 	echo  "art-result: $? AODMerge"
 
 	set +e
@@ -65,7 +65,7 @@ case $ArtProcess in
 	echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC}"
 	unset  ATHENA_NUM_PROC
 	
-	Reco_tf.py --inputRDOFile=$x --outputAODFile=Nightly_AOD_electron.pool.root --maxEvents=2000 --autoConfiguration="everything" --preExec="from ParticleBuilderOptions.AODFlags import AODFlags; AODFlags.ThinGeantTruth.set_Value_and_Lock(False);AODFlags.egammaTrackSlimmer.set_Value_and_Lock(False);AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False);AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False); rec.doTrigger=False; rec.doTau=False ; rec.doMuon=False; rec.doBTagging=False ; from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doMuonSpShower=False ; recAlgs.doEFlow=False ; recAlgs.doEFlowJet=False ; recAlgs.doMissingET=False ; recAlgs.doMissingETSig=False ; recAlgs.doTrigger=False ; from JetRec.JetRecFlags import jetFlags ; jetFlags.Enabled=False ; " --postInclude "ESDtoAOD:egammaValidation/egammaArtCaloCalPostInclude.py" "POOLMergeAthenaMPAOD0:egammaValidation/egammaArtCaloCalPostInclude.py"
+	Reco_tf.py --inputRDOFile=$x --outputAODFile=Nightly_AOD_electron.pool.root --maxEvents=2000 --autoConfiguration="everything" --preExec="from egammaValidation.egammaOnlyPreExec import setRunEgammaOnlyRecoFlags; setRunEgammaOnlyRecoFlags()" --postInclude "ESDtoAOD:egammaValidation/egammaArtCaloCalPostInclude.py" "POOLMergeAthenaMPAOD0:egammaValidation/egammaArtCaloCalPostInclude.py"
 
 	echo  "art-result: $? reconstruction"
 
diff --git a/Reconstruction/egamma/egammaValidation/test/test_gamma.sh b/Reconstruction/egamma/egammaValidation/test/test_gamma.sh
index b9a4f6dc4ebf07b2849edceb559aaf1c2826e2e2..22ff7aca1b011bc7292dc1c2fafd80a14717a36e 100755
--- a/Reconstruction/egamma/egammaValidation/test/test_gamma.sh
+++ b/Reconstruction/egamma/egammaValidation/test/test_gamma.sh
@@ -30,7 +30,7 @@ case $ArtProcess in
         echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC}"
         unset  ATHENA_NUM_PROC
 
-        AODMerge_tf.py --inputAODFile=art_core_*/Nightly_AOD_gamma.pool.root --outputAOD_MRGFile=Nightly_AOD_gamma.pool.root  --preExec "from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doTrigger=False" --postInclude "all:egammaValidation/egammaArtCaloCalPostInclude.py"
+        AODMerge_tf.py --inputAODFile=art_core_*/Nightly_AOD_gamma.pool.root --outputAOD_MRGFile=Nightly_AOD_gamma.pool.root  --preExec "rec.doTrigger=False; from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doTrigger=False" --postInclude "all:egammaValidation/egammaArtCaloCalPostInclude.py"
 	
 	echo  "art-result: $? AODMerge"
 
diff --git a/Reconstruction/egamma/egammaValidation/test/test_gamma_pileup.sh b/Reconstruction/egamma/egammaValidation/test/test_gamma_pileup.sh
index f02696fe63d3cc76dacbf4e23c65de02f0145226..8b7be4f921ad6cc76a95fa4025f5a879fc9f16aa 100755
--- a/Reconstruction/egamma/egammaValidation/test/test_gamma_pileup.sh
+++ b/Reconstruction/egamma/egammaValidation/test/test_gamma_pileup.sh
@@ -30,7 +30,7 @@ case $ArtProcess in
         echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC}"
         unset  ATHENA_NUM_PROC
 
-        AODMerge_tf.py --inputAODFile=art_core_*/Nightly_AOD_gamma.pool.root --outputAOD_MRGFile=Nightly_AOD_gamma.pool.root --preExec "from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doTrigger=False" --postInclude "all:egammaValidation/egammaArtCaloCalPostInclude.py" 
+        AODMerge_tf.py --inputAODFile=art_core_*/Nightly_AOD_gamma.pool.root --outputAOD_MRGFile=Nightly_AOD_gamma.pool.root --preExec "rec.doTrigger=False; from RecExConfig.RecAlgsFlags import recAlgs; recAlgs.doTrigger=False" --postInclude "all:egammaValidation/egammaArtCaloCalPostInclude.py" 
 
 	echo  "art-result: $? AODMerge"