From 9ffbb1ce60f38f4fdf4a2ece33eaa96bba16b2c7 Mon Sep 17 00:00:00 2001
From: Tatyana Kharlamova <tatyana.kharlamova@cern.ch>
Date: Thu, 6 Aug 2015 09:21:56 +0200
Subject: [PATCH] update event overlay configuration
 (EventOverlayJobTransforms-00-06-00)

	* python/overlayTrfArgs.py, python/overlayTransformUtils.py, share/skeleton.BSOverlayFilter_tf.py, share/ConfiguredOverlay_jobOptions.py, share/Level1Overlay_jobOptions.py, share/synchFlags_jobOptions.py, share/g4runnumber.py, share/skeleton.commis.py, share/InnerDetectorOverlay_jobOptions.py, share/SignalOutputItemList_jobOptions.py, share/TileMcSignal_jobOptions.py, share/skeleton.OverlayBS_tf.py, share/OverlayOutputItemList_jobOptions.py, share/skeleton.BSFilter.py, share/MuonMcSignal_jobOptions.py, share/LArMcSignal_jobOptions.py, share/skeleton.overlay.py, share/BeamOverlay_jobOptions.py, share/TruthOverlay_jobOptions.py, share/L1Signal_jobOptions.py, share/CaloOverlay_jobOptions.py, share/MuonOverlay_jobOptions.py, share/InDetMcSignal_jobOptions.py, share/skeleton.OverlayPool_tf.py, scripts/OverlayChain_tf.py - update event overlay configuration: add an overlay section to DetFlags.py, convert OverlayFlags to jobproperties, use a TXT output for the events.txt output written by the initial BSFilter step in OverlayChain_tf.py. ATLASSIM-1921. Requires AthenaCommon-03-03-03
	* EventOverlayJobTransforms-00-06-00
---
 .../python/overlayTransformUtils.py           |  6 +-
 .../python/overlayTrfArgs.py                  | 21 ++++-
 .../scripts/OverlayChain_tf.py                |  4 +-
 .../share/BeamOverlay_jobOptions.py           |  4 +-
 .../share/CaloOverlay_jobOptions.py           | 15 ++--
 .../share/ConfiguredOverlay_jobOptions.py     |  6 +-
 .../share/InDetMcSignal_jobOptions.py         |  4 +-
 .../share/InnerDetectorOverlay_jobOptions.py  | 15 ++--
 .../share/L1Signal_jobOptions.py              |  3 +-
 .../share/LArMcSignal_jobOptions.py           |  2 +-
 .../share/Level1Overlay_jobOptions.py         |  6 +-
 .../share/MuonMcSignal_jobOptions.py          |  8 +-
 .../share/MuonOverlay_jobOptions.py           | 17 ++--
 .../share/OverlayOutputItemList_jobOptions.py | 44 +++++-----
 .../share/SignalOutputItemList_jobOptions.py  | 50 +++++------
 .../share/TileMcSignal_jobOptions.py          |  2 +-
 .../share/TruthOverlay_jobOptions.py          |  3 +-
 .../share/g4runnumber.py                      | 25 ++++--
 .../share/skeleton.BSFilter.py                |  5 +-
 .../share/skeleton.BSOverlayFilter_tf.py      |  9 +-
 .../share/skeleton.OverlayBS_tf.py            | 36 ++++----
 .../share/skeleton.OverlayPool_tf.py          | 27 +++---
 .../share/skeleton.commis.py                  | 27 +++---
 .../share/skeleton.overlay.py                 | 26 +++---
 .../share/synchFlags_jobOptions.py            | 87 +++++++++----------
 25 files changed, 246 insertions(+), 206 deletions(-)

diff --git a/Event/EventOverlay/EventOverlayJobTransforms/python/overlayTransformUtils.py b/Event/EventOverlay/EventOverlayJobTransforms/python/overlayTransformUtils.py
index 7cba5e2fc61..5c61d5baa8f 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/python/overlayTransformUtils.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/python/overlayTransformUtils.py
@@ -2,7 +2,7 @@
 
 ## @brief Specialist reconstruction and bytestream transforms
 #  @author atlas-comp-jt-dev@cern.ch
-#  @version $Id: overlayTransformUtils.py 664098 2015-04-30 14:12:37Z jchapman $
+#  @version $Id: overlayTransformUtils.py 687841 2015-08-06 09:20:13Z tkharlam $
 
 import os
 import re
@@ -137,6 +137,8 @@ def addOverlayChainOverrideArguments(parser):
 def addCommonOverlayArguments(parser):
     from SimuJobTransforms.simTrfArgs import addForwardDetTrfArgs
     addForwardDetTrfArgs(parser)
+    from EventOverlayJobTransforms.overlayTrfArgs import addOverlayInputSimArgs
+    addOverlayInputSimArgs(parser)
 
 def addUniqueOverlayBSFilterArguments(parser):
     from EventOverlayJobTransforms.overlayTrfArgs import addOverlayBSFilterArgs
@@ -170,7 +172,7 @@ def addOverlay_BSArguments(parser):
 ### Add Sub-step Methods
 def addOverlayBSFilterSubstep(executorSet):
     executorSet.add(BSJobSplitterExecutor(name = 'BSFilter', skeletonFile = 'EventOverlayJobTransforms/skeleton.BSOverlayFilter_tf.py', substep='overlayBSFilt',
-                                          perfMonFile = 'ntuple.pmon.gz', inData = ['ZeroBiasBS'], outData = ['BS_SKIM']))
+                                          perfMonFile = 'ntuple.pmon.gz', inData = ['ZeroBiasBS'], outData = ['BS_SKIM','TXT_EVENTID']))
 
 def addOverlay_PoolSubstep(executorSet):
     executorSet.add(athenaExecutor(name = 'OverlayPool', skeletonFile = 'EventOverlayJobTransforms/skeleton.OverlayPool_tf.py',
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/python/overlayTrfArgs.py b/Event/EventOverlay/EventOverlayJobTransforms/python/overlayTrfArgs.py
index d8d66481e08..2524047e63e 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/python/overlayTrfArgs.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/python/overlayTrfArgs.py
@@ -9,7 +9,7 @@ import os
 
 from PyJobTransforms.trfArgClasses import argFactory, argFile, argInt, argFloat, argString, argSubstep, trfArgParser, argList, argBool, argBSFile, argPOOLFile, argHITSFile, argRDOFile, argSubstepInt, argSubstepBool #, argSubstepString
 
-## Add arguments whose default properties have to be overridden for the Overlay Chain
+## Arguments whose default properties have to be overridden for the Overlay Chain
 def addOverlayChainOverrideArgs(parser):
     parser.defineArgGroup('Overlay Chain', 'Overlay Chain transform arguments')
     parser.add_argument('--skipEvents', group='Overlay Chain', type=argFactory(argSubstepInt, defaultSubstep='EVNTtoHITS'),
@@ -30,8 +30,12 @@ def addOverlayBSFilterArgs(parser):
     parser.add_argument('--outputBS_SKIMFile', '--outputBSFile',
                         type=argFactory(argBSFile, io='output', type='BS', subtype='BS_SKIM'),
                         help='Output skimmed BS file', group='Overlay Filter')
-    parser.add_argument('--eventIdFile',
-                        type=argFactory(argSubstep, defaultSubstep='overlayBSFilt'), help='The name of the file to write to for EventIdModifierSvc lines', group='Overlay Filter')
+
+#    parser.add_argument('--eventIdFile',
+#                        type=argFactory(argSubstep, defaultSubstep='overlayBSFilt'), help='The name of the file to write to for EventIdModifierSvc lines', group='Overlay Filter')
+    parser.add_argument('--outputTXT_EVENTIDFile', default = 'events.txt',
+                        type=argFactory(argFile, io = 'output', type='TXT', subtype='TXT_EVENTID'), help='The name of the file to write the EventIdModifierSvc config for the EVNTtoHITS step', group='Overlay Filter')
+    
     parser.add_argument('--jobNumber',
                         type=argFactory(argInt),
                         help='Job number', group='Overlay Filter')
@@ -41,7 +45,7 @@ def addOverlayBSFilterArgs(parser):
     parser.add_argument('--maxFilesPerSubjob',
                         type=argFactory(argSubstepInt, defaultSubstep='overlayBSFilt'),
                         help='Number of bytestream input files for each athena subjob', group='Overlay Filter')
-
+   
 # jobNumber=102
 # InputDataTarFile=/afs/cern.ch/work/e/efeld/overlay/prep/mytar.tar.gz
 # InputLbnMapFile=lbn_anal_map.txt
@@ -77,3 +81,12 @@ def addOverlayPoolTrfArgs(parser):
     parser.add_argument('--inputRDO_BKGFile', nargs='+',
                         type=argFactory(argRDOFile, io='input'),
                         help='Input RAW RDO for pileup overlay', group='EventOverlayPool')
+
+
+#Add input txt file to EVNTtoHITS step
+def addOverlayInputSimArgs(parser):
+    parser.defineArgGroup('EventOverlayInputSim', 'EventOverlayInputSim')
+    parser.add_argument('--inputTXT_EVENTIDFile', nargs='+',
+                    type=argFactory(argFile, io='input', type='TXT', subtype='TXT_EVENTID'),
+                    help='The name of the file to read to configure the EventIdModifierSvc', group='EventOverlayInputSim')
+
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/scripts/OverlayChain_tf.py b/Event/EventOverlay/EventOverlayJobTransforms/scripts/OverlayChain_tf.py
index 8e673dbb505..4ef103e5f5a 100755
--- a/Event/EventOverlay/EventOverlayJobTransforms/scripts/OverlayChain_tf.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/scripts/OverlayChain_tf.py
@@ -22,7 +22,7 @@ from PyJobTransforms.trfDecorators import stdTrfExceptionHandler, sigUsrStackTra
 import PyJobTransforms.trfArgClasses as trfArgClasses
 
 # Prodsys hack...
-ListOfDefaultPositionalKeys=['--AFPOn', '--ALFAOn', '--AMIConfig', '--AMITag', '--AddCaloDigi', '--CosmicFilterVolume', '--CosmicFilterVolume2', '--CosmicPtSlice', '--DBRelease', '--DataRunNumber', '--FwdRegionOn', '--LucidOn', '--ReadByteStream', '--ZDCOn', '--argJSON', '--asetup', '--athena', '--athenaMPMergeTargetSize', '--athenaopts', '--attempt', '--beamType', '--checkEventCount', '--command', '--conditionsTag', '--digiRndmSvc', '--digiSeedOffset1', '--digiSeedOffset2', '--digiSteeringConf', '--doAllNoise', '--dumpJSON', '--dumpPickle', '--enableLooperKiller', '--env', '--eventAcceptanceEfficiency', '--eventIdFile', '--execOnly', '--fSampltag', '--fileValidation', '--firstEvent', '--geometryVersion', '--ignoreErrors', '--ignoreFiles', '--ignorePatterns', '--imf', '--inputBS_SKIMFile', '--inputEVNTFile', '--inputEVNT_CAVERNFile', '--inputEVNT_COSMICSFile', '--inputFileValidation', '--inputHITSFile', '--inputZeroBiasBSFile', '--jobNumber', '--jobid', '--lumiBlockMapFile', '--maxEvents', '--maxFilesPerSubjob', '--orphanKiller', '--outputBS_SKIMFile', '--outputEVNT_CAVERNTRFile', '--outputEVNT_COSMICSTRFile', '--outputFileValidation', '--outputHITSFile', '--outputRDOFile', '--outputRDO_FILTFile', '--outputRDO_SGNLFile', '--overlayConfigFile', '--parallelFileValidation', '--physicsList', '--postExec', '--postInclude', '--preExec', '--preInclude', '--randomSeed', '--reportName', '--reportType', '--runNumber', '--samplingFractionDbTag', '--showGraph', '--showPath', '--showSteps', '--simulator', '--skipEvents', '--skipFileValidation', '--skipInputFileValidation', '--skipOutputFileValidation', '--steering', '--taskid', '--tcmalloc', '--tmpRDO', '--tmpRDO_FILT', '--triggerBit', '--truthStrategy', '--useISF', '--valgrind', '--valgrindbasicopts', '--valgrindextraopts']
+ListOfDefaultPositionalKeys=['--AFPOn', '--ALFAOn', '--AMIConfig', '--AMITag', '--AddCaloDigi', '--CosmicFilterVolume', '--CosmicFilterVolume2', '--CosmicPtSlice', '--DBRelease', '--DataRunNumber', '--FwdRegionOn', '--LucidOn', '--ReadByteStream', '--ZDCOn', '--argJSON', '--asetup', '--athena', '--athenaMPMergeTargetSize', '--athenaopts', '--attempt', '--beamType', '--checkEventCount', '--command', '--conditionsTag', '--digiRndmSvc', '--digiSeedOffset1', '--digiSeedOffset2', '--digiSteeringConf', '--doAllNoise', '--dumpJSON', '--dumpPickle', '--enableLooperKiller', '--env', '--eventAcceptanceEfficiency', '--outputTXT_EVENTIDFile','--inputTXT_EVENTIDFile', '--execOnly', '--fSampltag', '--fileValidation', '--firstEvent', '--geometryVersion', '--ignoreErrors', '--ignoreFiles', '--ignorePatterns', '--imf', '--inputBS_SKIMFile', '--inputEVNTFile', '--inputEVNT_CAVERNFile', '--inputEVNT_COSMICSFile', '--inputFileValidation', '--inputHITSFile', '--inputZeroBiasBSFile', '--jobNumber', '--jobid', '--lumiBlockMapFile', '--maxEvents', '--maxFilesPerSubjob', '--orphanKiller', '--outputBS_SKIMFile', '--outputEVNT_CAVERNTRFile', '--outputEVNT_COSMICSTRFile', '--outputFileValidation', '--outputHITSFile', '--outputRDOFile', '--outputRDO_FILTFile', '--outputRDO_SGNLFile', '--overlayConfigFile', '--parallelFileValidation', '--physicsList', '--postExec', '--postInclude', '--preExec', '--preInclude', '--randomSeed', '--reportName', '--reportType', '--runNumber', '--samplingFractionDbTag', '--showGraph', '--showPath', '--showSteps', '--simulator', '--skipEvents', '--skipFileValidation', '--skipInputFileValidation', '--skipOutputFileValidation', '--steering', '--taskid', '--tcmalloc', '--tmpRDO', '--tmpRDO_FILT', '--triggerBit', '--truthStrategy', '--useISF', '--valgrind', '--valgrindbasicopts', '--valgrindextraopts']
 
 @stdTrfExceptionHandler
 @sigUsrStackTrace
@@ -54,7 +54,7 @@ def getTransform():
     addUniqueOverlayBSFilterArguments(trf.parser)
     addSimulationArguments(trf.parser)
     addUniqueOverlay_BSArguments(trf.parser)
-
+   
     return trf
 
 if __name__ == '__main__':
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/BeamOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/BeamOverlay_jobOptions.py
index 7a6140be201..5abd8b45a45 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/BeamOverlay_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/BeamOverlay_jobOptions.py
@@ -1,11 +1,11 @@
 
 include.block ( "EventOverlayJobTransforms/BeamOverlay_jobOptions.py" )
 
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 
 from AthenaCommon.Resilience import treatException,protectedInclude
 
-if OverlayFlags.doBCM():
+if DetFlags.overlay.BCM_on():
     protectedInclude( "InDetBCM_EventAthenaPool/InDetBCM_EventAthenaPool_joboptions.py" )
     from AthenaCommon.AlgSequence import AlgSequence
     job = AlgSequence()
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/CaloOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/CaloOverlay_jobOptions.py
index bff2dfc3976..4975e4fe39e 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/CaloOverlay_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/CaloOverlay_jobOptions.py
@@ -4,20 +4,21 @@ include.block ( "EventOverlayJobTransforms/CaloOverlay_jobOptions.py" )
 from AthenaCommon.Resilience import treatException,protectedInclude
 
 from Digitization.DigitizationFlags import jobproperties
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
+from OverlayCommonAlgs.OverlayFlags import overlayFlags
 
-if OverlayFlags.doBkg():
-   if OverlayFlags.doLAr():
+if overlayFlags.doBkg==True:
+   if DetFlags.overlay.LAr_on():
        from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects
        job += DeepCopyObjects("BkgRdo2")
        job.BkgRdo2.LArObjects = True
-   if OverlayFlags.doTile():
+   if DetFlags.overlay.Tile_on():
        from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects
        job += DeepCopyObjects("BkgRdo3")
        job.BkgRdo3.TileObjects = True
                                
                             
-if OverlayFlags.doLAr() or OverlayFlags.doTile():
+if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on():
 
    jobproperties.Digitization.doCaloNoise=False
 
@@ -31,7 +32,7 @@ if OverlayFlags.doLAr() or OverlayFlags.doTile():
    include( "LArIdCnv/LArIdCnv_joboptions.py" )
    include( "CaloDetMgrDetDescrCnv/CaloDetMgrDetDescrCnv_joboptions.py" )
 
-if OverlayFlags.doLAr():
+if DetFlags.overlay.LAr_on():
 
     from AthenaCommon.GlobalFlags import GlobalFlags
     
@@ -60,7 +61,7 @@ if OverlayFlags.doLAr():
        job.LArRawChannelBuilder.DataLocation = "LArDigitContainer_MC"
 
 #----------------------------------------------------------------
-if OverlayFlags.doTile():
+if DetFlags.overlay.Tile_on():
 
     include( "TileIdCnv/TileIdCnv_jobOptions.py" )
     include( "TileConditions/TileConditions_jobOptions.py" )        
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/ConfiguredOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/ConfiguredOverlay_jobOptions.py
index 777c919e0a8..42b88d12b43 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/ConfiguredOverlay_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/ConfiguredOverlay_jobOptions.py
@@ -30,9 +30,9 @@ jobproperties.Digitization.rndmSeedList.addSeed( pupStream, 123, 345 )
 
 pileUpEventLoopMgr.OutStreamType = "AthenaOutputStream"
 
-include ("EventOverlayJobTransforms/synchFlags_jobOptions.py")
-print "================ OverlayFlags ================ "
-OverlayFlags.Print()
+#include ("EventOverlayJobTransforms/synchFlags_jobOptions.py")
+print "================  DetFlags  ================ "
+DetFlags.Print()
 
 #if globalflags.InputFormat()=='bytestream':
 if readBS:
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/InDetMcSignal_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/InDetMcSignal_jobOptions.py
index bda40258241..8eb296817e2 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/InDetMcSignal_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/InDetMcSignal_jobOptions.py
@@ -1,8 +1,8 @@
 include.block ( "EventOverlayJobTransforms/InDetMcSignal_jobOptions.py" )
 
 from AthenaCommon.GlobalFlags import globalflags
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
-if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
+from AthenaCommon.DetFlags import DetFlags
+if DetFlags.overlay.Pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay.TRT_on():
 
    from OverlayCommonAlgs.OverlayCommonAlgsConf import SaveInDetObjects
    job += SaveInDetObjects()
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/InnerDetectorOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/InnerDetectorOverlay_jobOptions.py
index f1461d2dfdf..abaa429ce96 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/InnerDetectorOverlay_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/InnerDetectorOverlay_jobOptions.py
@@ -1,14 +1,15 @@
 include.block ( "EventOverlayJobTransforms/InnerDetectorOverlay_jobOptions.py" )
 
 from Digitization.DigitizationFlags import jobproperties
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 from AthenaCommon import CfgMgr
+from OverlayCommonAlgs.OverlayFlags import overlayFlags
 
 from AthenaCommon.Resilience import treatException,protectedInclude
 
-if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
+if DetFlags.overlay.pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay.TRT_on():
 
-    if OverlayFlags.doBkg():
+    if overlayFlags.doBkg==True:
        from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects
        job += DeepCopyObjects("BkgRdo1")
        job.BkgRdo1.InDetObjects = True
@@ -23,7 +24,7 @@ if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
     #if readBS and isRealData:
     #   include( "InDetCosmicRecExample/InDetCosmicFlags_jobOptions.py" )
 
-    if OverlayFlags.doPixel():
+    if DetFlags.overlay.pixel_on():
         protectedInclude( "PixelDigitization/PixelDigitization_jobOptions.py" )
         from AthenaCommon import CfgGetter
         CfgGetter.getPublicTool("PixelDigitizationTool",checkType=True).EvtStore = "BkgEvent_0_SG"
@@ -35,7 +36,7 @@ if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
     else:
         indetovl.do_Pixel = False
 
-    if OverlayFlags.doSCT():
+    if DetFlags.overlay.SCT_on():
 
         # Setup the ReadCalibChip folders and Svc
         if isRealData:
@@ -71,7 +72,7 @@ if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
     else:
         indetovl.do_SCT = False
 
-    if OverlayFlags.doTRT():
+    if DetFlags.overlay.TRT_on():
         if isRealData:
            conddb.blockFolder("/TRT/Cond/DigVers")
            #conddb.addFolderWithTag("TRT_OFL","/TRT/Cond/DigVers","TRTCondDigVers-Collisions-01",force=True,forceMC=True)
@@ -110,7 +111,7 @@ if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
     else:
         indetovl.do_TRT = False
 
-    if OverlayFlags.doSignal():
+    if overlayFlags.doSignal==True:
        include ("EventOverlayJobTransforms/InDetMcSignal_jobOptions.py")
 
     job += indetovl
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/L1Signal_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/L1Signal_jobOptions.py
index 4f759358282..67f500b3342 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/L1Signal_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/L1Signal_jobOptions.py
@@ -6,9 +6,8 @@ from AthenaCommon.Logging import logging
 from AthenaCommon.DetFlags import DetFlags
 from AthenaCommon.GlobalFlags import globalflags
 from Digitization.DigitizationFlags import jobproperties
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
 
-if OverlayFlags.doLVL1():
+if DetFlags.overlay.LVL1_on():
 
     from AthenaCommon.AlgSequence import AlgSequence
     topSequence = AlgSequence()
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/LArMcSignal_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/LArMcSignal_jobOptions.py
index c08319513e3..9d253dcae62 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/LArMcSignal_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/LArMcSignal_jobOptions.py
@@ -4,7 +4,7 @@ from AthenaCommon.GlobalFlags import globalflags
 from LArROD.LArRODFlags import larRODFlags
 
 # calorimeter
-if OverlayFlags.doLAr():
+if DetFlags.overlay.LAr_on():
 
    # Remove some objects from MC event store before re-running digitization
    from OverlayCommonAlgs.OverlayCommonAlgsConf import RemoveObjects
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/Level1Overlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/Level1Overlay_jobOptions.py
index bc23cd5e7e8..cb1b2ef7fa5 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/Level1Overlay_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/Level1Overlay_jobOptions.py
@@ -3,11 +3,11 @@ include.block ( "EventOverlayJobTransforms/Level1Overlay_jobOptions.py" )
 
 from AthenaCommon.DetFlags import DetFlags
 from Digitization.DigitizationFlags import jobproperties
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from OverlayCommonAlgs.OverlayFlags import overlayFlags
 
-if OverlayFlags.doLVL1():
+if DetFlags.overlay.LVL1_on():
 
-    if OverlayFlags.doBkg():
+    if overlayFlags.doBkg==True:
        from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects
        job += DeepCopyObjects("BkgRdo5")
        job.BkgRdo5.Level1Objects = True
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/MuonMcSignal_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/MuonMcSignal_jobOptions.py
index 4dc6af897d7..90ab4cd36be 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/MuonMcSignal_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/MuonMcSignal_jobOptions.py
@@ -8,28 +8,28 @@ include.block ( "EventOverlayJobTransforms/MuonMcSignal_jobOptions.py" )
 # for CSC, Digit -> RDO was already done during overlay and 
 # should not be repeated here
 
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 
 theApp.Dlls += [ "MuonByteStreamCnvTest" ]
 theApp.Dlls += [ "TrigT1RPChardware" ]
 theApp.Dlls += [ "TrigT1RPCsteering" ]
 theApp.Dlls += [ "TrigT1RPCmonitoring" ]
 
-if OverlayFlags.doMDT():
+if DetFlags.overlay.MDT_on():
         from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import MdtDigitToMdtRDO
         job += MdtDigitToMdtRDO( "SigMdtDigitToMdtRDO" )
         job.SigMdtDigitToMdtRDO.Store = job.MdtOverlay.MCStore
         #ACH if readBS==False:
            #ACH job += MdtDigitToMdtRDO( "BkgMdtDigitToMdtRDO" )
            #ACH job.BkgMdtDigitToMdtRDO.Store = job.MdtOverlay.TempBkgStore
-if OverlayFlags.doRPC():
+if DetFlags.overlay.RPC_on():
         from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import RpcDigitToRpcRDO
         job += RpcDigitToRpcRDO( "SigRpcDigitToRpcRDO" )
         job.SigRpcDigitToRpcRDO.Store = job.RpcOverlay.MCStore
         #ACH if readBS==False:
            #ACH job += RpcDigitToRpcRDO( "BkgRpcDigitToRpcRDO" )
            #ACH job.BkgRpcDigitToRpcRDO.Store = job.RpcOverlay.TempBkgStore
-if OverlayFlags.doTGC():
+if DetFlags.overlay.TGC_on():
         from MuonByteStreamCnvTest.MuonByteStreamCnvTestConf import TgcDigitToTgcRDO
         job += TgcDigitToTgcRDO( "SigTgcDigitToTgcRDO" )
         job.SigTgcDigitToTgcRDO.Store = job.TgcOverlay.MCStore
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/MuonOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/MuonOverlay_jobOptions.py
index ee30b64d5f6..4bd0caed1ab 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/MuonOverlay_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/MuonOverlay_jobOptions.py
@@ -3,19 +3,20 @@ include.block ( "EventOverlayJobTransforms/MuonOverlay_jobOptions.py" )
 from AthenaCommon.AppMgr import ServiceMgr
 from AthenaCommon.AppMgr import ToolSvc
 from Digitization.DigitizationFlags import digitizationFlags
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 from MuonRecExample.MuonRecFlags import muonRecFlags,mooreFlags,muonboyFlags
+from OverlayCommonAlgs.OverlayFlags import overlayFlags
 
 from RecExConfig.RecFlags import rec as recFlags
 
-if OverlayFlags.doMDT() or OverlayFlags.doCSC() or OverlayFlags.doRPC() or OverlayFlags.doTGC():
+if DetFlags.overlay.MDT_on() or DetFlags.overlay.CSC_on() or DetFlags.overlay.RPC_on() or DetFlags.overlay.TGC_on():
    
     include( "MuonEventAthenaPool/MuonEventAthenaPool_joboptions.py" )
  
     import MuonRecExample.MuonReadCalib
     if readBS and isRealData:
        theApp.Dlls += [ "MuonByteStream"]
-       if OverlayFlags.doCSC():
+       if DetFlags.overlay.CSC_on():
           from MuonRecExample.MuonRecFlags import muonRecFlags
           muonRecFlags.doCSCs.set_Value_and_Lock = True
 
@@ -24,7 +25,7 @@ if OverlayFlags.doMDT() or OverlayFlags.doCSC() or OverlayFlags.doRPC() or Overl
        muonByteStreamFlags.RpcDataType = "atlas"#FIXME should not be setting jobproperties at this point in the configuration.
        muonByteStreamFlags.MdtDataType = "atlas"#FIXME should not be setting jobproperties at this point in the configuration.
 
-    if OverlayFlags.doBkg():
+    if overlayFlags.doBkg==True:
        from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects
        job += DeepCopyObjects("BkgRdo4")
        job.BkgRdo4.MuonObjects = True
@@ -36,7 +37,7 @@ if OverlayFlags.doMDT() or OverlayFlags.doCSC() or OverlayFlags.doRPC() or Overl
     if readBS:
        include("MuonRecExample/MuonReadBS_jobOptions.py")
 
-    if OverlayFlags.doCSC():
+    if DetFlags.overlay.CSC_on():
         if readBS:
            ToolSvc.CscRawDataProviderTool.EvtStore = "OriginalEvent_SG"
         include ( "CscOverlay/CscOverlay_jobOptions.py" )
@@ -52,7 +53,7 @@ if OverlayFlags.doMDT() or OverlayFlags.doCSC() or OverlayFlags.doRPC() or Overl
         #print "ACH123: NumSamples = 2 for MakeRDOTool"
         #job.CscOverlay.MakeRDOTool.NumSamples=2
         
-    if OverlayFlags.doMDT():
+    if DetFlags.overlay.MDT_on():
         if not hasattr(ToolSvc, 'MdtDigitizationTool'):
             from AthenaCommon import CfgGetter
             ToolSvc += CfgGetter.getPrivateTool("MdtDigitizationTool", checkType=True)
@@ -67,7 +68,7 @@ if OverlayFlags.doMDT() or OverlayFlags.doCSC() or OverlayFlags.doRPC() or Overl
         #job.MdtOverlay.OutputLevel = VERBOSE
         #job.MdtDigitToMdtRDO.OutputLevel = VERBOSE
 
-    if OverlayFlags.doRPC():
+    if DetFlags.overlay.RPC_on():
         include ( "RpcOverlay/RpcOverlay_jobOptions.py" )
         #job.RpcOverlay.DataStore = "BkgEvent_2_SG"
         if readBS:
@@ -76,7 +77,7 @@ if OverlayFlags.doMDT() or OverlayFlags.doCSC() or OverlayFlags.doRPC() or Overl
         #job.RpcOverlay.OutputLevel = VERBOSE
         #job.RpcDigitToRpcRDO.OutputLevel = VERBOSE
 
-    if OverlayFlags.doTGC():
+    if DetFlags.overlay.TGC_on():
         include ( "TgcOverlay/TgcOverlay_jobOptions.py" )
         #job.TgcOverlay.DataStore = "BkgEvent_2_SG"
         if readBS:
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/OverlayOutputItemList_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/OverlayOutputItemList_jobOptions.py
index 1bb73ab32eb..707b3c89d6b 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/OverlayOutputItemList_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/OverlayOutputItemList_jobOptions.py
@@ -1,7 +1,7 @@
 include.block ( "EventOverlayJobTransforms/OverlayOutputItemList_jobOptions.py" )
 
 from AthenaCommon.AppMgr import ServiceMgr
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 
 # The output - overlay
 from AthenaPoolCnvSvc.WriteAthenaPool import AthenaPoolOutputStream
@@ -13,64 +13,64 @@ print "ACH123 new OverlayOutputItemList_jobOptions.py"
 outStream.ItemList += [ "EventInfo#*", "PileUpEventInfo#*" ]
 outStream.ItemList += [ "LumiBlockCollection#*" ]
 
-if OverlayFlags.doTruth():
+if DetFlags.overlay.Truth_on():
    outStream.ItemList += [
                              "McEventCollection#*",
                              "TrackRecordCollection#*"
                            ]
-   if OverlayFlags.doCSC():
+   if DetFlags.overlay.CSC_on():
       outStream.ItemList += [ "CscSimDataCollection#CSC_SDO" ]
-   if OverlayFlags.doMDT():
+   if DetFlags.overlay.MDT_on():
       outStream.ItemList += [ "MuonSimDataCollection#MDT_SDO" ]
-   if OverlayFlags.doRPC():
+   if DetFlags.overlay.RPC_on():
       outStream.ItemList += [ "MuonSimDataCollection#RPC_SDO" ]
-   if OverlayFlags.doTGC():
+   if DetFlags.overlay.TGC_on():
       outStream.ItemList += [ "MuonSimDataCollection#TGC_SDO" ]
-   if OverlayFlags.doLAr() or OverlayFlags.doTile():
+   if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on():
       outStream.ItemList += [ "CaloCalibrationHitContainer#*" ]
-   if OverlayFlags.doPixel():
+   if DetFlags.overlay.pixel_on():
       outStream.ItemList += [ "InDetSimDataCollection#PixelSDO_Map" ]
-   if OverlayFlags.doSCT():
+   if DetFlags.overlay.SCT_on():
       outStream.ItemList += [ "InDetSimDataCollection#SCT_SDO_Map" ]
-   if OverlayFlags.doTRT():
+   if DetFlags.overlay.TRT_on():
       outStream.ItemList += [ "InDetSimDataCollection#TRT_SDO_Map" ]
-   if OverlayFlags.doBCM():
+   if DetFlags.overlay.BCM_on():
       outStream.ItemList += [ "InDetSimDataCollection#BCM_SDO_Map" ] 
 
-if OverlayFlags.doPixel():
+if DetFlags.overlay.pixel_on():
    outStream.ItemList += ["PixelRDO_Container#*"]
-if OverlayFlags.doSCT():
+if DetFlags.overlay.SCT_on():
    outStream.ItemList += ["SCT_RDO_Container#*"]
-if OverlayFlags.doTRT():
+if DetFlags.overlay.TRT_on():
    outStream.ItemList += ["TRT_RDO_Container#*"]
 
-if OverlayFlags.doLAr():
+if DetFlags.overlay.LAr_on():
    outStream.ItemList+=["LArRawChannelContainer#*"]
    outStream.ItemList+=["LArDigitContainer#LArDigitContainer_MC_Thinned"]
-if OverlayFlags.doTile():
+if DetFlags.overlay.Tile_on():
    if isRealData:
       outStream.ItemList += [ "TileDigitsContainer#*" ]
    else:
       outStream.ItemList += [ "TileDigitsContainer#TileDigitsFlt" ]
    outStream.ItemList += [ "TileRawChannelContainer#*" ]
 
-if OverlayFlags.doCSC():
+if DetFlags.overlay.CSC_on():
    outStream.ItemList += [ "CscRawDataContainer#*" ]
    outStream.ItemList += [ "CscDigitContainer#*" ]
-if OverlayFlags.doMDT():
+if DetFlags.overlay.MDT_on():
    outStream.ItemList += [ "MdtCsmContainer#*" ]
 #   outStream.ItemList += [ "MdtDigitContainer#*" ]
-if OverlayFlags.doRPC():
+if DetFlags.overlay.RPC_on():
    outStream.ItemList += [ "RpcPadContainer#*" ]
 #   outStream.ItemList += [ "RpcDigitContainer#*" ]
-if OverlayFlags.doTGC():
+if DetFlags.overlay.TGC_on():
    outStream.ItemList += [ "TgcRdoContainer#*" ]
 #   outStream.ItemList += [ "TgcDigitContainer#*" ]
 
-if OverlayFlags.doBCM():
+if DetFlags.overlay.BCM_on():
    outStream.ItemList+=["BCM_RDO_Container#*"]
 
-if OverlayFlags.doLVL1():
+if DetFlags.overlay.LVL1_on():
    outStream.ItemList+=["LArTTL1Container#*"]
    outStream.ItemList+=["TileTTL1Container#*"]
    outStream.ItemList+=[
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/SignalOutputItemList_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/SignalOutputItemList_jobOptions.py
index 6cc53aa2b64..d7e366f8127 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/SignalOutputItemList_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/SignalOutputItemList_jobOptions.py
@@ -1,21 +1,21 @@
 include.block ( "EventOverlayJobTransforms/SignalOutputItemList_jobOptions.py" )
 
 from AthenaCommon.DetFlags import DetFlags
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 
 #copy stuff back into the MC before persistency
 from OverlayCommonAlgs.OverlayCommonAlgsConf import CopyObjects
 
-if OverlayFlags.doTruth():
+if DetFlags.overlay.Truth_on():
    job += CopyObjects("CopyTruth")
    job.CopyTruth.TruthObjects = True
 
 # copy InDet objects back into Signal event store
-if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
+if DetFlags.overlay.pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay.TRT_on():
    job += CopyObjects("CopyInDet")
    job.CopyInDet.InDetObjects = True
 
-if OverlayFlags.doCSC() or OverlayFlags.doMDT() or OverlayFlags.doRPC() or OverlayFlags.doTGC():
+if DetFlags.overlay.CSC_on() or DetFlags.overlay.MDT_on() or DetFlags.overlay.RPC_on() or DetFlags.overlay.TGC_on():
    job += CopyObjects("CopyMuons")
    job.CopyMuons.MuonObjects = True
 
@@ -41,58 +41,58 @@ signalStream.Store = "TemporaryStore"
 
 signalStream.ItemList += [ "EventInfo#*", "EventStreamInfo#*", "PileUpEventInfo#*" ]
 
-if OverlayFlags.doTruth():
+if DetFlags.overlay.Truth_on():
    signalStream.ItemList += [
                              "McEventCollection#*",
                              "TrackRecordCollection#*"
                            ]
-   if OverlayFlags.doCSC():
+   if DetFlags.overlay.CSC_on():
       signalStream.ItemList += [ "CscSimDataCollection#CSC_SDO" ]
-   if OverlayFlags.doMDT():
+   if DetFlags.overlay.MDT_on():
       signalStream.ItemList += [ "MuonSimDataCollection#MDT_SDO" ]
-   if OverlayFlags.doRPC():
+   if DetFlags.overlay.RPC_on():
       signalStream.ItemList += [ "MuonSimDataCollection#RPC_SDO" ]
-   if OverlayFlags.doTGC():
+   if DetFlags.overlay.TGC_on():
       signalStream.ItemList += [ "MuonSimDataCollection#TGC_SDO" ]
-   if OverlayFlags.doLAr() or OverlayFlags.doTile():
+   if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on():
       signalStream.ItemList += [ "CaloCalibrationHitContainer#*" ]
-   if OverlayFlags.doPixel():
+   if DetFlags.overlay.pixel_on():
       signalStream.ItemList += [ "InDetSimDataCollection#PixelSDO_Map" ]
-   if OverlayFlags.doSCT():
+   if DetFlags.overlay.SCT_on():
       signalStream.ItemList += [ "InDetSimDataCollection#SCT_SDO_Map" ]
-   if OverlayFlags.doTRT():
+   if DetFlags.overlay.TRT_on():
       signalStream.ItemList += [ "InDetSimDataCollection#TRT_SDO_Map" ]
-   if OverlayFlags.doBCM():
+   if DetFlags.overlay.BCM_on():
       signalStream.ItemList += [ "InDetSimDataCollection#BCM_SDO_Map" ] 
 
-if OverlayFlags.doPixel():
+if DetFlags.overlay.pixel_on():
    signalStream.ItemList += ["PixelRDO_Container#*"]
-if OverlayFlags.doSCT():
+if DetFlags.overlay.SCT_on():
    signalStream.ItemList += ["SCT_RDO_Container#*"]
-if OverlayFlags.doTRT():
+if DetFlags.overlay.TRT_on():
    signalStream.ItemList += ["TRT_RDO_Container#*"]
 
-if OverlayFlags.doLAr():
+if DetFlags.overlay.LAr_on():
     signalStream.ItemList+=["LArRawChannelContainer#*"]
     signalStream.ItemList+=["LArDigitContainer#LArDigitContainer_MC_Thinned"]
-if OverlayFlags.doTile():
+if DetFlags.overlay.Tile_on():
     signalStream.ItemList += [ "TileDigitsContainer#TileDigitsFlt" ]
     signalStream.ItemList += ["TileL2Container#TileL2Cnt"]
     signalStream.ItemList += [ "TileRawChannelContainer#*" ]
 
-if OverlayFlags.doCSC():
+if DetFlags.overlay.CSC_on():
    signalStream.ItemList += [ "CscRawDataContainer#*" ]
-if OverlayFlags.doMDT():
+if DetFlags.overlay.MDT_on():
    signalStream.ItemList += [ "MdtCsmContainer#*" ]
-if OverlayFlags.doRPC():
+if DetFlags.overlay.RPC_on():
    signalStream.ItemList += [ "RpcPadContainer#*" ]
-if OverlayFlags.doTGC():
+if DetFlags.overlay.TGC_on():
    signalStream.ItemList += [ "TgcRdoContainer#*" ]
 
-if OverlayFlags.doBCM():
+if DetFlags.overlay.BCM_on():
    signalStream.ItemList+=["BCM_RDO_Container#*"]
 
-if OverlayFlags.doLVL1():
+if DetFlags.overlay.LVL1_on():
    signalStream.ItemList+=["LArTTL1Container#*"]
    signalStream.ItemList+=["TileTTL1Container#*"]
    signalStream.ItemList+=[
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/TileMcSignal_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/TileMcSignal_jobOptions.py
index 39f13ba63d1..9ecb5e3c0bb 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/TileMcSignal_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/TileMcSignal_jobOptions.py
@@ -4,7 +4,7 @@ from AthenaCommon.AppMgr import ToolSvc
 from AthenaCommon.GlobalFlags import globalflags
 from AthenaCommon import CfgGetter
 
-if OverlayFlags.doTile():
+if DetFlags.overlay.Tile_on():
 #copy stuff back into the MC before persstency
    from OverlayCommonAlgs.OverlayCommonAlgsConf import RemoveObjects
    job += RemoveObjects("RemoveTileOldMC")
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/TruthOverlay_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/TruthOverlay_jobOptions.py
index e03d8326214..935de91318b 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/TruthOverlay_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/TruthOverlay_jobOptions.py
@@ -4,8 +4,9 @@ include.block ( "EventOverlayJobTransforms/TruthOverlay_jobOptions.py" )
 # McEventCollection copying.  Alghough logically it belongs to
 # overlaying that is done later, it has to be scheduled before
 # digitization algorithms as a workaround for bug #35465
+from OverlayCommonAlgs.OverlayFlags import overlayFlags
 
-if OverlayFlags.doBkg():
+if overlayFlags.doBkg==True:
     from OverlayCommonAlgs.OverlayCommonAlgsConf import DeepCopyObjects   
     job += DeepCopyObjects("BkgRdo")
     job.BkgRdo.EvtInfoObjects = True
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/g4runnumber.py b/Event/EventOverlay/EventOverlayJobTransforms/share/g4runnumber.py
index 87171a923c0..8315efefd23 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/g4runnumber.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/g4runnumber.py
@@ -11,18 +11,29 @@ else:
     svcMgr.EvtIdModifierSvc.Modifiers = []
 svcMgr.EvtIdModifierSvc.OutputLevel=DEBUG
 
-include("events.txt")
-#svcMgr.EvtIdModifierSvc.add_modifier(run_nbr=167776, evt_nbr=18, time_stamp=1269948350, lbk_nbr=124, nevts=1)
+fname=None
 
+from OverlayCommonAlgs.OverlayFlags import overlayFlags
+fname=overlayFlags.EventIDTextFile()
+
+#if hasattr(runArgs,'inputTXT_EVENTIDFile'):
+#fname=runArgs.inputTXT_EVENTIDFile[0]
+
+if fname == None:
+    print 'g4runnumber.py: No eventID file provided!'
+    raise RuntimeError
+
+print "fname  ", fname
+
+include(fname)
 
-#set the max number of events
-fname = "events.txt"
 num_lines = 0
+
 with open(fname, 'r') as f:
     for line in f:
         num_lines += 1
         print line,
-print "Number of lines in events.txt is "+str(num_lines)
+print "Number of lines in TXT_EVENTID is "+str(num_lines)
 from AthenaCommon.AthenaCommonFlags import athenaCommonFlags
 athenaCommonFlags.EvtMax.unlock()
 athenaCommonFlags.EvtMax.set_Value_and_Lock(num_lines)
@@ -33,7 +44,7 @@ if not hasattr(ServiceMgr.ToolSvc, 'IOVDbMetaDataTool'):
     svcMgr.ToolSvc += CfgMgr.IOVDbMetaDataTool()
     svcMgr.ToolSvc.IOVDbMetaDataTool.MinMaxRunNumbers = [svcMgr.EvtIdModifierSvc.Modifiers[0], 2147483647]
     ## FIXME need to use maxRunNumber = 2147483647 for now to keep overlay working but in the future this should be set properly.
-
+    
 #use conditions from this run number and timestamp
 svcMgr.EventSelector.RunNumber = svcMgr.EvtIdModifierSvc.Modifiers[0]
 svcMgr.EventSelector.OverrideRunNumber = True
@@ -41,4 +52,4 @@ svcMgr.EventSelector.OverrideEventNumber = True
 svcMgr.EventSelector.InitialTimeStamp = svcMgr.EvtIdModifierSvc.Modifiers[2]
 print svcMgr.EventSelector
 svcMgr.TagInfoMgr.OutputLevel=DEBUG
-
+    
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.BSFilter.py b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.BSFilter.py
index 404b3aa18e2..cad24039e0a 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.BSFilter.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.BSFilter.py
@@ -60,8 +60,9 @@ if hasattr( runArgs, "TriggerBit"):
 else:
     filAlg.TriggerBit = -1
 
-if hasattr( runArgs, "EventIdFile"):
-    filAlg.EventIdFile=runArgs.EventIdFile # The name of the file to write to for EventIdModifierSvc lines
+#    if hasattr( runArgs, "EventIdFile"):
+if hasattr( runArgs, "outputTXT_EVENTIDFile"):
+    filAlg.EventIdFile=runArgs.outputTXT_EVENTIDFile # The name of the file to write to for EventIdModifierSvc lines
 else:
     filAlg.EventIdFile=""
 
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.BSOverlayFilter_tf.py b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.BSOverlayFilter_tf.py
index 56009c2878e..0a4f6f2541c 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.BSOverlayFilter_tf.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.BSOverlayFilter_tf.py
@@ -56,8 +56,13 @@ if hasattr( runArgs, "triggerBit"):
 else:
     filAlg.TriggerBit = -1
 
-if hasattr(runArgs, 'eventIdFile'):
-    filAlg.EventIdFile=runArgs.eventIdFile # The name of the file to write to for EventIdModifierSvc lines
+#if hasattr(runArgs, 'eventIdFile'):
+#    filAlg.EventIdFile=runArgs.eventIdFile # The name of the file to write to for EventIdModifierSvc lines
+#else:
+#    filAlg.EventIdFile=""
+
+if hasattr(runArgs, 'outputTXT_EVENTIDFile'):
+    filAlg.EventIdFile=runArgs.outputTXT_EVENTIDFile # The name of the file to write to for EventIdModifierSvc lines
 else:
     filAlg.EventIdFile=""
 
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayBS_tf.py b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayBS_tf.py
index a2641b1989d..e2c3985cdd7 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayBS_tf.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayBS_tf.py
@@ -18,6 +18,8 @@ TileFrameLength=7
 from AthenaCommon.AppMgr import ServiceMgr
 from AthenaCommon.GlobalFlags  import globalflags
 from AthenaCommon.AthenaCommonFlags  import athenaCommonFlags
+from AthenaCommon.DetFlags import DetFlags
+from OverlayCommonAlgs.OverlayFlags import overlayFlags
 
 from MuonRecExample.MuonRecFlags import muonRecFlags
 muonRecFlags.doCSCs.set_Value_and_Lock(True)
@@ -62,12 +64,11 @@ if hasattr(runArgs,"outputRDOFile"):
     athenaCommonFlags.PoolRDOOutput.set_Value_and_Lock( runArgs.outputRDOFile )
     OverlayCollection = runArgs.outputRDOFile #remove this line
 
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
-
 if not hasattr(runArgs, 'outputRDO_SGNLFile') or runArgs.outputRDO_SGNLFile=="NONE":
-    OverlayFlags.set_SignalOff()
+    overlayFlags.doSignal=False
     SignalCollection = "NONE"
 else:
+    overlayFlags.doSignal=True
     SignalCollection = runArgs.outputRDO_SGNLFile
 
 if hasattr(runArgs,"geometryVersion"): globalflags.DetDescrVersion.set_Value_and_Lock( runArgs.geometryVersion )
@@ -78,9 +79,10 @@ if hasattr(runArgs,"digiSeedOffset1"): digitizationFlags.rndmSeedOffset1=int(run
 if hasattr(runArgs,"digiSeedOffset2"): digitizationFlags.rndmSeedOffset2=int(runArgs.digiSeedOffset2)
 if hasattr(runArgs,"samplingFractionDbTag"): digitizationFlags.physicsList=runArgs.samplingFractionDbTag
 if hasattr(runArgs,"digiRndmSvc"): digitizationFlags.rndmSvc=runArgs.digiRndmSvc
+#if hasattr(runArgs, "AddCaloDigi"): digitizationFlags.experimentalDigi+=["AddCaloDigi"]
 
 readBS = True
-OverlayFlags.set_BkgOff() #ACH
+overlayFlags.doBkg=False #ACH
 
 #GlobalFlags.InputFormat.set_bytestream()
 globalflags.InputFormat.set_Value_and_Lock('bytestream')
@@ -126,8 +128,6 @@ if hasattr(runArgs, 'conditionsTag') and runArgs.conditionsTag!='NONE' and runAr
    if len(globalflags.ConditionsTag())!=0:
       conddb.setGlobalTag(globalflags.ConditionsTag())
 
-OverlayFlags.Print()
-
 # LVL1 Trigger Menu
 if hasattr(runArgs, "triggerConfig") and runArgs.triggerConfig!="NONE":
     # LVL1 Trigger Menu
@@ -144,19 +144,21 @@ if hasattr(runArgs, "triggerConfig") and runArgs.triggerConfig!="NONE":
     from TriggerJobOpts.TriggerConfigGetter import TriggerConfigGetter
     cfg = TriggerConfigGetter("HIT2RDO")
 
-from AthenaCommon.DetFlags import DetFlags
 DetFlags.ID_setOn()
 DetFlags.Muon_setOn()
 DetFlags.LAr_setOn()
 DetFlags.Tile_setOn()
 if not hasattr(runArgs, "triggerConfig") or runArgs.triggerConfig=="NONE":
-  DetFlags.LVL1_setOff()
+    DetFlags.LVL1_setOff()
 else:
-  DetFlags.LVL1_setOn()
+    DetFlags.LVL1_setOn()
 
 DetFlags.BCM_setOn()
 DetFlags.Lucid_on()
 DetFlags.simulateLVL1.Lucid_setOff()
+#DetFlags.simulateLVL1.LAr_setOn()
+#DetFlags.simulateLVL1.Tile_setOn()
+#DetFlags.overlay.LAr_setOff()
 
 print "================ DetFlags ================ "
 DetFlags.Print()
@@ -170,30 +172,30 @@ if hasattr( runArgs, 'maxEvents'):
 
 include ( "EventOverlayJobTransforms/ConfiguredOverlay_jobOptions.py" )
 
-if OverlayFlags.doTruth():
+if DetFlags.overlay.Truth_on():
    include ( "EventOverlayJobTransforms/TruthOverlay_jobOptions.py" )
 
-if OverlayFlags.doBCM() or OverlayFlags.doLUCID():
+if DetFlags.overlay.BCM_on() or DetFlags.overlay.Lucid_on():
    include ( "EventOverlayJobTransforms/BeamOverlay_jobOptions.py" )
 
-if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
+if DetFlags.overlay.pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay.TRT_on():
 
    include ( "EventOverlayJobTransforms/InnerDetectorOverlay_jobOptions.py" )
 
-if OverlayFlags.doLAr() or OverlayFlags.doTile():
+if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on():
    include ( "EventOverlayJobTransforms/CaloOverlay_jobOptions.py" )
 
-if OverlayFlags.doCSC() or OverlayFlags.doMDT() or OverlayFlags.doRPC() or OverlayFlags.doTGC():
+if DetFlags.overlay.CSC_on() or DetFlags.overlay.MDT_on() or DetFlags.overlay.RPC_on() or DetFlags.overlay.TGC_on():
    include ( "EventOverlayJobTransforms/MuonOverlay_jobOptions.py" )
 
-if OverlayFlags.doLVL1():
+if DetFlags.overlay.LVL1_on():
    include ( "EventOverlayJobTransforms/Level1Overlay_jobOptions.py" )
 
 # save the overlay output first
 include ( "EventOverlayJobTransforms/OverlayOutputItemList_jobOptions.py" )
 
 # now save the signal information in the same job
-if OverlayFlags.doSignal():
+if overlayFlags.doSignal==True:
    include ( "EventOverlayJobTransforms/SignalOutputItemList_jobOptions.py" )
 
 # For random number initialization
@@ -217,7 +219,7 @@ if hasattr(runArgs, 'fSampltag'):
     conddb.addOverride( "/LAR/ElecCalib/fSampl/Symmetry", runArgs.fSampltag + digitizationFlags.physicsList.get_Value() )
 else:
     raise RuntimeError ("--fSampltag not specified on command-line - see --help message")
-#if OverlayFlags.doSignal():
+#if DetFlags.overlay.Signal_on():
 #   InputDBConnection = "COOLOFL_LAR/COMP200"
 #   conddb.addFolder("","/LAR/ElecCalibOfl/AutoCorrs/AutoCorr"+"<dbConnection>"+InputDBConnection+"</dbConnection>")
 #   conddb.addOverride("/LAR/ElecCalibOfl/AutoCorrs/AutoCorr","")
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayPool_tf.py b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayPool_tf.py
index 1a126bacd70..aca0d70a91b 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayPool_tf.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.OverlayPool_tf.py
@@ -48,15 +48,16 @@ if hasattr(runArgs,"digiSeedOffset2"): digitizationFlags.rndmSeedOffset2=int(run
 if hasattr(runArgs,"samplingFractionDbTag"): digitizationFlags.physicsList=runArgs.samplingFractionDbTag
 if hasattr(runArgs,"digiRndmSvc"): digitizationFlags.rndmSvc=runArgs.digiRndmSvc
 
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 if not hasattr(runArgs, 'outputRDO_SGNLFile') or runArgs.outputRDO_SGNLFile=="NONE":
-   OverlayFlags.set_SignalOff()
+   overlayFlags.doSignal=False
    SignalCollection = "NONE"
 else:
-   SignalCollection = runArgs.outputRDO_SGNLFile
+    overlayFlags.doSignal=True
+    SignalCollection = runArgs.outputRDO_SGNLFile
 
-OverlayFlags.set_BCMOff()
-OverlayFlags.set_LUCIDOff()
+DetFlags.overlay.BCM_setOff()
+DetFlags.overlay.Lucid_setOff()
 
 readBS = False
 if hasattr(runArgs, 'ReadByteStream'):
@@ -76,7 +77,7 @@ if hasattr(runArgs, 'conditionsTag') and runArgs.conditionsTag!='NONE' and runAr
       from IOVDbSvc.CondDB import conddb
       conddb.setGlobalTag(globalflags.ConditionsTag())
 
-OverlayFlags.Print()
+DetFlags.Print()
 
 # LVL1 Trigger Menu
 if hasattr(runArgs, "triggerConfig") and runArgs.triggerConfig!="NONE":
@@ -135,29 +136,29 @@ if hasattr(runArgs,"maxEvents"): theApp.EvtMax = runArgs.maxEvents
 
 include ( "EventOverlayJobTransforms/ConfiguredOverlay_jobOptions.py" )
 
-if OverlayFlags.doTruth():
+if DetFlags.overlay.Truth_on():
    include ( "EventOverlayJobTransforms/TruthOverlay_jobOptions.py" )
 
-if OverlayFlags.doBCM() or OverlayFlags.doLUCID():
+if DetFlags.overlay.BCM_on() or DetFlags.overlay.Lucid_on():
    include ( "EventOverlayJobTransforms/BeamOverlay_jobOptions.py" )
 
-if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
+if DetFlags.overlay.pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay.TRT_on():
    include ( "EventOverlayJobTransforms/InnerDetectorOverlay_jobOptions.py" )
 
-if OverlayFlags.doLAr() or OverlayFlags.doTile():
+if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on():
    include ( "EventOverlayJobTransforms/CaloOverlay_jobOptions.py" )
 
-if OverlayFlags.doCSC() or OverlayFlags.doMDT() or OverlayFlags.doRPC() or OverlayFlags.doTGC():
+if DetFlags.overlay.CSC_on() or DetFlags.overlay.MDT_on() or DetFlags.overlay.RPC_on() or DetFlags.overlay.TGC_on():
    include ( "EventOverlayJobTransforms/MuonOverlay_jobOptions.py" )
 
-if OverlayFlags.doLVL1():
+if DetFlags.overlay.LVL1_on():
    include ( "EventOverlayJobTransforms/Level1Overlay_jobOptions.py" )
 
 # save the overlay output first
 include ( "EventOverlayJobTransforms/OverlayOutputItemList_jobOptions.py" )
 
 # now save the signal information in the same job
-if OverlayFlags.doSignal():
+if overlayFlags.doSignal==True:
    include ( "EventOverlayJobTransforms/SignalOutputItemList_jobOptions.py" )
 
 # For random number initialization
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.commis.py b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.commis.py
index c30f3252d8d..82807d5a700 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.commis.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.commis.py
@@ -16,6 +16,7 @@ from AthenaCommon.AppMgr import ServiceMgr
 from AthenaCommon.GlobalFlags import GlobalFlags
 from AthenaCommon.GlobalFlags  import globalflags
 from AthenaCommon.AthenaCommonFlags  import athenaCommonFlags
+from OverlayCommonAlgs.OverlayFlags import overlayFlags
 
 from MuonRecExample.MuonRecFlags import muonRecFlags
 muonRecFlags.doCSCs.set_Value_and_Lock(True)
@@ -55,10 +56,12 @@ if hasattr(runArgs,"outputRDOFile"): athenaCommonFlags.PoolRDOOutput.set_Value_a
 
 OverlayCollection = runArgs.outputRDOFile
 
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 SignalCollection = runArgs.signalRDOFile
 if runArgs.signalRDOFile=="NONE":
-   OverlayFlags.set_SignalOff()
+   overlayFlags.doSignal=False
+else:
+    overlayFlags.doSignal=True
 
 if hasattr(runArgs,"geometryVersion"): globalflags.DetDescrVersion.set_Value_and_Lock( runArgs.geometryVersion )
 if hasattr(runArgs,"conditionsTag"): globalflags.ConditionsTag.set_Value_and_Lock( runArgs.conditionsTag )
@@ -72,7 +75,7 @@ jobproperties.Digitization.rndmSvc=runArgs.digiRndmSvc
 SignalInputCollections = runArgs.inputHitsFile
 
 readBS = True
-OverlayFlags.set_BkgOff() #ACH
+overlayFlags.doBkg=False #ACH
 
 #GlobalFlags.InputFormat.set_bytestream()
 globalflags.InputFormat.set_Value_and_Lock('bytestream')
@@ -120,7 +123,7 @@ if runArgs.conditionsTag!='NONE' and runArgs.conditionsTag!='':
    if len(globalflags.ConditionsTag())!=0:
       conddb.setGlobalTag(globalflags.ConditionsTag())
 
-OverlayFlags.Print()
+DetFlags.Print()
 
 # LVL1 Trigger Menu
 if hasattr(runArgs, "triggerConfig") and runArgs.triggerConfig!="NONE":
@@ -164,30 +167,30 @@ theApp.EvtMax = runArgs.maxEvents
 
 include ( "EventOverlayJobTransforms/ConfiguredOverlay_jobOptions.py" )
 
-if OverlayFlags.doTruth():
+if DetFlags.overlay.Truth_on():
    include ( "EventOverlayJobTransforms/TruthOverlay_jobOptions.py" )
 
-if OverlayFlags.doBCM() or OverlayFlags.doLUCID():
+if DetFlags.overlay.BCM_on() or DetFlags.overlay.Lucid_on():
    include ( "EventOverlayJobTransforms/BeamOverlay_jobOptions.py" )
 
-if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
+if DetFlags.overlay.pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay.TRT_on():
 
    include ( "EventOverlayJobTransforms/InnerDetectorOverlay_jobOptions.py" )
 
-if OverlayFlags.doLAr() or OverlayFlags.doTile():
+if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on():
    include ( "EventOverlayJobTransforms/CaloOverlay_jobOptions.py" )
 
-if OverlayFlags.doCSC() or OverlayFlags.doMDT() or OverlayFlags.doRPC() or OverlayFlags.doTGC():
+if DetFlags.overlay.CSC_on() or DetFlags.overlay.MDT_on() or DetFlags.overlay.RPC_on() or DetFlags.overlay.TGC_on():
    include ( "EventOverlayJobTransforms/MuonOverlay_jobOptions.py" )
 
-if OverlayFlags.doLVL1():
+if DetFlags.overlay.LVL1_on():
    include ( "EventOverlayJobTransforms/Level1Overlay_jobOptions.py" )
 
 # save the overlay output first
 include ( "EventOverlayJobTransforms/OverlayOutputItemList_jobOptions.py" )
 
 # now save the signal information in the same job
-if OverlayFlags.doSignal():
+if overlayFlags.doSignal==True:
    include ( "EventOverlayJobTransforms/SignalOutputItemList_jobOptions.py" )
 
 # For random number initialization
@@ -209,7 +212,7 @@ ServiceMgr.MessageSvc.Format = "% F%45W%S%7W%R%T %0W%M"
 conddb.addFolder("LAR","/LAR/ElecCalib/fSampl/Symmetry")
 conddb.addOverride("/LAR/ElecCalib/fSampl/Symmetry",runArgs.fSampltag+runArgs.samplingFractionDbTag )
 
-#if OverlayFlags.doSignal():
+#if DetFlags.overlay.Signal_on():
 #   InputDBConnection = "COOLOFL_LAR/COMP200"
 #   conddb.addFolder("","/LAR/ElecCalibOfl/AutoCorrs/AutoCorr"+"<dbConnection>"+InputDBConnection+"</dbConnection>")
 #   conddb.addOverride("/LAR/ElecCalibOfl/AutoCorrs/AutoCorr","")
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.overlay.py b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.overlay.py
index 75732b06201..92fb88a5640 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.overlay.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/skeleton.overlay.py
@@ -36,13 +36,15 @@ SignalInputCollections = runArgs.inputHitsFile
 jobproperties.AthenaCommonFlags.PoolRDOOutput = runArgs.outputRDOFile
 OverlayCollection = runArgs.outputRDOFile
 
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
+from AthenaCommon.DetFlags import DetFlags
 SignalCollection = runArgs.signalRDOFile
 if runArgs.signalRDOFile=="NONE":
-   OverlayFlags.set_SignalOff()
+    overlayFlags.doSignal=False
+else:
+    overlayFlags.doSignal=True
 
-OverlayFlags.set_BCMOff()
-OverlayFlags.set_LUCIDOff()
+DetFlags.overlay.BCM_setOff()
+DetFlags.overlay.Lucid_setOff()
 
 readBS = runArgs.ReadByteStream
 isRealData = False
@@ -60,7 +62,7 @@ if runArgs.conditionsTag!='NONE' and runArgs.conditionsTag!='':
       from IOVDbSvc.CondDB import conddb
       conddb.setGlobalTag(globalflags.ConditionsTag())
 
-OverlayFlags.Print()
+DetFlags.Print()
 
 # LVL1 Trigger Menu
 if runArgs.triggerConfig!="NONE":
@@ -119,29 +121,29 @@ theApp.EvtMax = runArgs.maxEvents
 
 include ( "EventOverlayJobTransforms/ConfiguredOverlay_jobOptions.py" )
 
-if OverlayFlags.doTruth():
+if DetFlags.overlay.Truth_on():
    include ( "EventOverlayJobTransforms/TruthOverlay_jobOptions.py" )
 
-if OverlayFlags.doBCM() or OverlayFlags.doLUCID():
+if DetFlags.overlay.BCM_on() or DetFlags.overlay.Lucid_on():
    include ( "EventOverlayJobTransforms/BeamOverlay_jobOptions.py" )
 
-if OverlayFlags.doPixel() or OverlayFlags.doSCT() or OverlayFlags.doTRT():
+if DetFlags.overlay.pixel_on() or DetFlags.overlay.SCT_on() or DetFlags.overlay.TRT_on():
    include ( "EventOverlayJobTransforms/InnerDetectorOverlay_jobOptions.py" )
 
-if OverlayFlags.doLAr() or OverlayFlags.doTile():
+if DetFlags.overlay.LAr_on() or DetFlags.overlay.Tile_on():
    include ( "EventOverlayJobTransforms/CaloOverlay_jobOptions.py" )
 
-if OverlayFlags.doCSC() or OverlayFlags.doMDT() or OverlayFlags.doRPC() or OverlayFlags.doTGC():
+if DetFlags.overlay.CSC_on() or DetFlags.overlay.MDT_on() or DetFlags.overlay.RPC_on() or DetFlags.overlay.TGC_on():
    include ( "EventOverlayJobTransforms/MuonOverlay_jobOptions.py" )
 
-if OverlayFlags.doLVL1():
+if DetFlags.overlay.LVL1_on():
    include ( "EventOverlayJobTransforms/Level1Overlay_jobOptions.py" )
 
 # save the overlay output first
 include ( "EventOverlayJobTransforms/OverlayOutputItemList_jobOptions.py" )
 
 # now save the signal information in the same job
-if OverlayFlags.doSignal():
+overlayFlags.doSignal==True:
    include ( "EventOverlayJobTransforms/SignalOutputItemList_jobOptions.py" )
 
 # For random number initialization
diff --git a/Event/EventOverlay/EventOverlayJobTransforms/share/synchFlags_jobOptions.py b/Event/EventOverlay/EventOverlayJobTransforms/share/synchFlags_jobOptions.py
index 10a2889fa17..519e6ba9297 100644
--- a/Event/EventOverlay/EventOverlayJobTransforms/share/synchFlags_jobOptions.py
+++ b/Event/EventOverlay/EventOverlayJobTransforms/share/synchFlags_jobOptions.py
@@ -3,115 +3,112 @@
 
 from AthenaCommon.DetFlags import DetFlags
 
-from OverlayCommonAlgs.OverlayFlags import OverlayFlags
-
-
 if DetFlags.ID_on():
-    OverlayFlags.set_InDetOn()
+    DetFlags.overlay.ID_setOn()
 else:
-    OverlayFlags.set_InDetOff()
+    DetFlags.overlay.ID_setOff()
         
 if DetFlags.pixel_on():
-    OverlayFlags.set_PixelOn()
+    DetFlags.overlay.pixel_setOn()
 else:
-    OverlayFlags.set_PixelOff()
+    DetFlags.overlay.pixel_setOff()
 
 if DetFlags.TRT_on():
-    OverlayFlags.set_TRTOn()
+    DetFlags.overlay.TRT_setOn()
 else:
-    OverlayFlags.set_TRTOff()
+    DetFlags.overlay.TRT_setOff()
 
 if DetFlags.SCT_on():
-    OverlayFlags.set_SCTOn()
+    DetFlags.overlay.SCT_setOn()
 else:
-    OverlayFlags.set_SCTOff()
+    DetFlags.overlay.SCT_setOff()
 
 
 #if DetFlags.Beam_on():
-#    OverlayFlags.set_BeamOn()
+#    DetFlags.overlay.set_BeamOn()
 #else:
-#    OverlayFlags.set_BeamOff()
+#    DetFlags.overlay.set_BeamOff()
                 
 if DetFlags.BCM_on():
-    OverlayFlags.set_BCMOn()
+    DetFlags.overlay.BCM_setOn()
 else:
-    OverlayFlags.set_BCMOff()
+    DetFlags.overlay.BCM_setOff()
                 
     
 if DetFlags.Calo_on():
-    OverlayFlags.set_CaloOn()
+    DetFlags.overlay.Calo_setOn()
 else:
-    OverlayFlags.set_CaloOff()
+    DetFlags.overlay.Calo_setOff()
     
 if DetFlags.LAr_on():
-    OverlayFlags.set_LArOn()
+    DetFlags.overlay.LAr_setOn()
 else:
-    OverlayFlags.set_LArOff()
+    DetFlags.overlay.LAr_setOff()
 
 if DetFlags.Tile_on():
-    OverlayFlags.set_TileOn()
+    DetFlags.overlay.Tile_setOn()
 else:
-    OverlayFlags.set_TileOff()
+    DetFlags.overlay.Tile_setOff()
 
                 
 if DetFlags.Muon_on():
-    OverlayFlags.set_MuonOn()
+    DetFlags.overlay.Muon_setOn()
 else:
-    OverlayFlags.set_MuonOff()
+    DetFlags.overlay.Muon_setOff()
 
 if DetFlags.MDT_on():
-    OverlayFlags.set_MDTOn()
+    DetFlags.overlay.MDT_setOn()
 else:
-    OverlayFlags.set_MDTOff()
+    DetFlags.overlay.MDT_setOff()
 
 if DetFlags.CSC_on():
-    OverlayFlags.set_CSCOn()
+    DetFlags.overlay.CSC_setOn()
 else:
-    OverlayFlags.set_CSCOff()
+    DetFlags.overlay.CSC_setOff()
 
 if DetFlags.TGC_on():
-    OverlayFlags.set_TGCOn()
+    DetFlags.overlay.TGC_setOn()
 else:
-    OverlayFlags.set_TGCOff()
+    DetFlags.overlay.TGC_setOff()
 
 if DetFlags.RPC_on():
-    OverlayFlags.set_RPCOn()
+    DetFlags.overlay.RPC_setOn()
 else:
-    OverlayFlags.set_RPCOff()
+    DetFlags.overlay.RPC_setOff()
 
 if DetFlags.Forward_on():
-    OverlayFlags.set_ForwardOn()
+    DetFlags.overlay.Forward_setOn()
 #else:
-#    OverlayFlags.set_ForwardOff()
+#    DetFlags.overlay.set_ForwardOff()
 
 if DetFlags.Lucid_on():
-    OverlayFlags.set_LucidOn()
+    DetFlags.overlay.Lucid_setOn()
 #else:
-#    OverlayFlags.set_LucidOff()
+#    DetFlags.overlay.set_LucidOff()
 
 if DetFlags.ALFA_on():
-    OverlayFlags.set_ALFAOn()
+    DetFlags.overlay.ALFA_setOn()
 #else:
-#    OverlayFlags.set_ALFAOff()
+#    DetFlags.overlay.set_ALFAOff()
                 
 if DetFlags.ZDC_on():
-    OverlayFlags.set_ZDCOn()
+    DetFlags.overlay.ZDC_setOn()
 #else:
-#    OverlayFlags.set_ZDCOff()
+#    DetFlags.overlay.set_ZDCOff()
 
                 
 #if DetFlags.Trigger_on():
-#    OverlayFlags.set_TriggerOn()
+#    DetFlags.overlay.set_TriggerOn()
 #else:
-#    OverlayFlags.set_TriggerOff()
+#    DetFlags.overlay.set_TriggerOff()
                 
 if DetFlags.LVL1_on():
-    OverlayFlags.set_LVL1On()
+    DetFlags.overlay.LVL1_setOn()
 else:
-    OverlayFlags.set_LVL1Off()
+    DetFlags.overlay.LVL1_setOff()
 
 #Synchronizing of truth flag does not work
 #if DetFlags.Truth_on():
-#    OverlayFlags.set_TruthOn()
+#    DetFlags.overlay.set_TruthOn()
 #else:
-#    OverlayFlags.set_TruthOff()
+#    DetFlags.overlay.set_TruthOff()
-- 
GitLab