3 from AthenaConfiguration.AccumulatorCache 
import AccumulatorCache
 
    4 from AthenaConfiguration.ComponentFactory 
import CompFactory
 
    5 from AthenaConfiguration.ComponentAccumulator 
import ComponentAccumulator
 
    6 from AthenaConfiguration.Enums 
import ProductionStep
 
   11     from ExtraParticles.PDGHelpers 
import getPDGTABLE
 
   13         quirk_firststring=1e-6 
 
   16         quirk_debugenabled=
False 
   19         simdict = flags.Input.SpecialConfiguration
 
   20         quirk_mass = 
float(simdict[
"MASS"])
 
   21         quirk_charge = 
float(simdict[
"CHARGE"])
 
   22         quirk_pdgid = 
int(simdict[
"PDGID"])
 
   23         quirk_stringforce = 
float(simdict[
"STRINGFORCE"])
 
   25         f = 
open(
'PDGTABLE.MeV', 
'a')
 
   26         f.write(
"M%8d                          %.8E +0.0E+00 -0.0E+00 Quirk               +\n" % (quirk_pdgid, quirk_mass))
 
   27         f.write(
"W%8d                          0.E+00         +0.0E+00 -0.0E+00 Quirk               +\n" % quirk_pdgid)
 
   30         if flags.Common.ProductionStep == ProductionStep.Simulation:
 
   31             f = 
open(
'quirks_setup.txt', 
'w')
 
   32             for x 
in [quirk_mass, quirk_charge, quirk_pdgid, quirk_stringforce, quirk_firststring, quirk_maxboost, quirk_maxmerge, quirk_maxmerge]:
 
   33                 f.write(
repr(x) + 
"\n")
 
   34             if quirk_debugenabled:
 
   36                 f.write(
repr(quirk_debugdist) + 
"\n")
 
   37                 f.write(
repr(quirk_debugsteps) + 
"\n")
 
   41         del quirk_firststring, quirk_maxboost, quirk_maxmerge, quirk_debugenabled, quirk_debugdist, quirk_debugsteps, doG4SimConfig, simdict, f, quirk_mass, quirk_charge, quirk_pdgid, quirk_stringforce
 
   46     result.setPrivateTools( CompFactory.QuirkPhysicsToolTool(name, **kwargs) )
 
   57     result.setPrivateTools( CompFactory.G4UA.DebugSteppingActionTool(name, **kwargs) )
 
   63     if flags.Common.ProductionStep == ProductionStep.Simulation:
 
   64         from G4AtlasServices.G4AtlasServicesConfig 
import PhysicsListSvcCfg
 
   67     if flags.Common.ProductionStep == ProductionStep.Simulation:
 
   68         result.getService(
"PhysicsListSvc").PhysOption += [ result.popToolsAndMerge(
QuirkPhysicsToolCfg(flags)) ]