3 from AthenaConfiguration.ComponentAccumulator 
import ComponentAccumulator
 
    7     local_logger = logging.getLogger(
'AthenaMonitoringAODRecoCfg')
 
    8     info = local_logger.info
 
   11     if flags.DQ.Environment == 
'AOD':
 
   12         info(
'Running on AOD: Scheduling rebuild of standard jet collections if necessary')
 
   13         from JetRecConfig.StandardSmallRJets 
import AntiKt4EMTopo, AntiKt4EMPFlow, AntiKt4LCTopo
 
   14         from JetRecConfig.StandardLargeRJets 
import AntiKt10LCTopo_noVR, AntiKt10LCTopoTrimmed_trigger, AntiKt10UFOCSSKSoftDrop_trigger
 
   15         from AthenaConfiguration.Enums 
import BeamType
 
   18         jets_to_schedule = [_ 
for _ 
in ((AntiKt4EMTopo, AntiKt4EMPFlow, AntiKt4LCTopo) 
if flags.Beam.Type 
is not BeamType.Cosmics 
else (AntiKt4EMTopo, AntiKt4LCTopo))
 
   19                             if _.fullname() 
not in flags.Input.Collections]
 
   22             jets_to_schedule += [_ 
for _ 
in ((AntiKt10LCTopo_noVR, AntiKt10LCTopoTrimmed_trigger, AntiKt10UFOCSSKSoftDrop_trigger) 
if flags.Beam.Type 
is not BeamType.Cosmics 
else (AntiKt10LCTopo_noVR, AntiKt10LCTopoTrimmed_trigger))
 
   23                                  if _.fullname() 
not in flags.Input.Collections]
 
   26             info(f
'Ensuring presence of jet collections for monitoring: {jets_to_schedule}')
 
   27             from JetRecConfig.JetRecConfig 
import JetRecCfg
 
   30             for container 
in jets_to_schedule:
 
   33         jet_collections = 
set([_.fullname().
replace(
'Jets',
'') 
for _ 
in jets_to_schedule])
 
   34         btag_jet_collections = 
set([
'AntiKt4EMTopo', 
'AntiKt4EMPFlow'])
 
   35         met_jet_collections = 
set([
'AntiKt4EMTopo', 
'AntiKt4EMPFlow', 
'AntiKt4LCTopo'])
 
   37         if jet_collections & btag_jet_collections:
 
   38             info(
'Scheduling b-tagging of rebuilt jets')
 
   39             from BeamSpotConditions.BeamSpotConditionsConfig 
import BeamSpotCondAlgCfg
 
   41             from BTagging.BTagConfig 
import BTagRecoSplitCfg
 
   43             for container 
in jet_collections & btag_jet_collections:
 
   47         from .DQConfigFlags 
import DQDataType
 
   48         if jet_collections & met_jet_collections 
and flags.DQ.DataType 
not in (DQDataType.HeavyIon, DQDataType.Cosmics):
 
   49             info(
'Scheduling rebuild of standard MET')
 
   50             from METReconstruction.METAssociatorCfg 
import METAssociatorCfg
 
   51             from METUtilities.METMakerConfig 
import getMETMakerAlg
 
   52             for container 
in jet_collections & met_jet_collections:
 
   53                 if container == 
'AntiKt4EMPFlow':
 
   55                     info(
'Scheduling FlowElement linking')
 
   56                     from eflowRec.PFCfg 
import PFGlobalFlowElementLinkingCfg
 
   60             from CaloTools.CaloNoiseCondAlgConfig 
import CaloNoiseCondAlgCfg
 
   62             from METReconstruction.METCalo_Cfg 
import METCalo_Cfg