1 from copy
import copy, deepcopy
2 from collections
import OrderedDict
3 from .MatrixUtil
import merge, Kby
71 numWFConflict = [[20000,23200],[23600,28200],[28600,31400],[31800,32200],[32600,34600],[50000,51000]]
77 for year
in upgradeKeys:
78 for i
in range(0,len(upgradeKeys[year])):
79 numWFtmp = numWFStart[year]
if i==0
else (numWFAll[year][i-1] + numWFSkip)
80 for conflict
in numWFConflict:
81 if numWFtmp>=conflict[0]
and numWFtmp<conflict[1]:
82 numWFtmp = conflict[1]
84 numWFAll[year].
append(numWFtmp)
91 preventReuseKeyword =
'NOREUSE'
100 if not step
in self.
steps:
107 raise ValueError(
"Special workflow offset must be between 0.0 and 1.0")
109 stepName = step + self.
suffix + extra
112 stepNamePU = step +
'PU' + self.
suffix + extra
115 for step
in self.
steps:
121 def setup(self, stepDict, k, properties):
122 for step
in self.
steps:
129 def setup_(self, step, stepName, stepDict, k, properties):
131 def setupPU_(self, step, stepName, stepDict, k, properties):
133 def workflow(self, workflows, num, fragment, stepList, key, hasHarvest):
134 if self.condition(fragment, stepList, key, hasHarvest):
135 self.workflow_(workflows, num, fragment, stepList, key)
136 def workflow_(self, workflows, num, fragment, stepList, key):
137 fragmentTmp = [fragment, key]
139 workflows[num+self.
offset] = [ fragmentTmp, stepList ]
140 def condition(self, fragment, stepList, key, hasHarvest):
143 if "Sim" in stepName:
144 stepDict[stepName][k] =
None
145 upgradeWFs = OrderedDict()
148 def setup_(self, step, stepName, stepDict, k, properties):
149 cust=properties.get(
'Custom',
None)
150 era=properties.get(
'Era',
None)
151 modifier=properties.get(
'ProcessModifier',
None)
152 if cust
is not None: stepDict[stepName][k][
'--customise']=cust
153 if era
is not None: stepDict[stepName][k][
'--era']=era
154 if modifier
is not None: stepDict[stepName][k][
'--procModifier']=modifier
155 def condition(self, fragment, stepList, key, hasHarvest):
161 'GenSimHLBeamSpot14',
196 def condition(self, fragment, stepList, key, hasHarvest):
197 result = (fragment==
"TTbar_13" or fragment==
"TTbar_14TeV")
and not 'PU' in key
and hasHarvest
and self.
condition_(fragment, stepList, key, hasHarvest)
200 skipList = [s
for s
in stepList
if ((
"ALCA" in s)
or (
"Nano" in s))]
201 for skip
in skipList:
202 stepList.remove(skip)
208 def setup_(self, step, stepName, stepDict, k, properties):
209 if 'Reco' in step: stepDict[stepName][k] =
merge([self.
step3, stepDict[step][k]])
210 elif 'HARVEST' in step: stepDict[stepName][k] =
merge([{
'-s':
'HARVESTING:@trackingOnlyValidation+@trackingOnlyDQM'}, stepDict[step][k]])
219 suffix =
'_trackingOnly',
222 upgradeWFs[
'trackingOnly'].step3 = {
223 '-s':
'RAW2DIGI,RECO:reconstruction_trackingOnly,VALIDATION:@trackingOnlyValidation,DQM:@trackingOnlyDQM',
224 '--datatier':
'GEN-SIM-RECO,DQMIO',
225 '--eventcontent':
'RECOSIM,DQM',
228 step3_trackingOnly = upgradeWFs[
'trackingOnly'].step3
231 def setup_(self, step, stepName, stepDict, k, properties):
232 if 'Reco' in step
and stepDict[step][k][
'--era']==
'Run2_2017':
233 stepDict[stepName][k] =
merge([{
'--era':
'Run2_2017_trackingRun2'}, stepDict[step][k]])
241 suffix =
'_trackingRun2',
246 def setup_(self, step, stepName, stepDict, k, properties):
247 if 'Reco' in step
and stepDict[step][k][
'--era']==
'Run2_2017':
248 stepDict[stepName][k] =
merge([{
'--era':
'Run2_2017_trackingRun2'}, self.
step3, stepDict[step][k]])
249 elif 'HARVEST' in step: stepDict[stepName][k] =
merge([{
'-s':
'HARVESTING:@trackingOnlyValidation+@trackingOnlyDQM'}, stepDict[step][k]])
258 suffix =
'_trackingOnlyRun2',
261 upgradeWFs[
'trackingOnlyRun2'].step3 = upgradeWFs[
'trackingOnly'].step3
264 def setup_(self, step, stepName, stepDict, k, properties):
265 if 'Reco' in step
and stepDict[step][k][
'--era']==
'Run2_2017':
266 stepDict[stepName][k] =
merge([{
'--era':
'Run2_2017_trackingLowPU'}, stepDict[step][k]])
274 suffix =
'_trackingLowPU',
279 def setup_(self, step, stepName, stepDict, k, properties):
280 if 'Reco' in step: stepDict[stepName][k] =
merge([self.
step3, stepDict[step][k]])
281 elif 'HARVEST' in step: stepDict[stepName][k] =
merge([{
'-s':
'HARVESTING:@trackingOnlyValidation+@pixelTrackingOnlyDQM'}, stepDict[step][k]])
283 return '2017' in key
or '2018' in key
or '2021' in key
292 suffix =
'_pixelTrackingOnly',
295 upgradeWFs[
'pixelTrackingOnly'].step3 = {
296 '-s':
'RAW2DIGI:RawToDigi_pixelOnly,RECO:reconstruction_pixelTrackingOnly,VALIDATION:@pixelTrackingOnlyValidation,DQM:@pixelTrackingOnlyDQM',
297 '--datatier':
'GEN-SIM-RECO,DQMIO',
298 '--eventcontent':
'RECOSIM,DQM',
302 def setup_(self, step, stepName, stepDict, k, properties):
303 if 'Digi' in step: stepDict[stepName][k] =
merge([self.
step2, stepDict[step][k]])
304 if 'Reco' in step: stepDict[stepName][k] =
merge([self.
step3, stepDict[step][k]])
306 return '2017' in key
or '2021' in key
315 suffix =
'_trackingMkFit',
318 upgradeWFs[
'trackingMkFit'].step2 = {
319 '--customise':
'RecoTracker/MkFit/customizeHLTIter0ToMkFit.customizeHLTIter0ToMkFit'
321 upgradeWFs[
'trackingMkFit'].step3 = {
322 '--procModifiers':
'trackingMkFit'
327 def setup_(self, step, stepName, stepDict, k, properties):
328 if 'Reco' in step
or 'HARVEST' in step: stepDict[stepName][k] =
merge([{
'--procModifiers':
'seedingDeepCore'}, stepDict[step][k]])
329 def condition(self, fragment, stepList, key, hasHarvest):
330 result = (fragment==
"QCD_Pt_1800_2400_14" or fragment==
"TTbar_14TeV" )
and (
'2021' in key
or '2024' in key)
and hasHarvest
333 skipList = [s
for s
in stepList
if ((
"ALCA" in s)
or (
"Nano" in s))]
334 for skip
in skipList:
335 stepList.remove(skip)
345 suffix =
'_seedingDeepCore',
351 def setup_(self, step, stepName, stepDict, k, properties):
352 stepDict[stepName][k] =
merge([{
'--procModifiers':
'vectorHits'}, stepDict[step][k]])
353 def condition(self, fragment, stepList, key, hasHarvest):
354 return fragment==
"TTbar_14TeV" and '2026' in key
363 suffix =
'_vectorHits',
370 def setup_(self, step, stepName, stepDict, k, properties):
371 stepDict[stepName][k] =
merge([{
'--procModifiers':
'trackdnn'}, stepDict[step][k]])
373 def condition(self, fragment, stepList, key, hasHarvest):
374 return fragment==
"TTbar_14TeV" and '2021' in key
382 suffix =
'_trackdnn',
389 def setup_(self, step, stepName, stepDict, k, properties):
391 stepDict[stepName][k] =
merge([self.
step3, stepDict[step][k]])
392 def condition(self, fragment, stepList, key, hasHarvest):
393 return fragment==
"TTbar_14TeV" and '2021' in key
405 upgradeWFs[
'mlpf'].step3 = {
406 '--datatier':
'GEN-SIM-RECO,RECOSIM,MINIAODSIM,DQMIO',
407 '--eventcontent':
'FEVTDEBUGHLT,RECOSIM,MINIAODSIM,DQM',
408 '--procModifiers':
'mlpf'
417 def __init__(self, digi = {}, reco = {}, harvest = {}, **kwargs):
419 super(PatatrackWorkflow, self).
__init__(
435 '--datatier':
'GEN-SIM-RECO,DQMIO',
436 '--eventcontent':
'RECOSIM,DQM'
440 def condition(self, fragment, stepList, key, hasHarvest):
443 (
'2018' in key
and fragment ==
"TTbar_13"),
444 (
'2021' in key
and fragment ==
"TTbar_14TeV"),
445 (
'2018' in key
and fragment ==
"ZMM_13"),
446 (
'2021' in key
and fragment ==
"ZMM_14"),
448 result =
any(selected)
and hasHarvest
451 for skip
in copy(stepList):
452 if (
"ALCA" in skip)
or (
"Nano" in skip):
453 stepList.remove(skip)
456 def setup_(self, step, stepName, stepDict, k, properties):
458 stepDict[stepName][k] =
merge([self.
__digi, stepDict[step][k]])
460 stepDict[stepName][k] =
merge([self.
__reco, stepDict[step][k]])
461 elif 'HARVEST' in step:
462 stepDict[stepName][k] =
merge([self.
__harvest, stepDict[step][k]])
470 '-s':
'RAW2DIGI:RawToDigi_pixelOnly,RECO:reconstruction_pixelTrackingOnly,VALIDATION:@pixelTrackingOnlyValidation,DQM:@pixelTrackingOnlyDQM',
471 '--procModifiers':
'pixelNtupletFit'
474 '-s':
'HARVESTING:@trackingOnlyValidation+@pixelTrackingOnlyDQM'
476 suffix =
'Patatrack_PixelOnlyCPU',
482 '--procModifiers':
'gpu'
485 '-s':
'RAW2DIGI:RawToDigi_pixelOnly,RECO:reconstruction_pixelTrackingOnly,VALIDATION:@pixelTrackingOnlyValidation,DQM:@pixelTrackingOnlyDQM',
486 '--procModifiers':
'pixelNtupletFit,gpu'
489 '-s':
'HARVESTING:@trackingOnlyValidation+@pixelTrackingOnlyDQM'
491 suffix =
'Patatrack_PixelOnlyGPU',
500 '-s':
'RAW2DIGI:RawToDigi_pixelOnly,RECO:reconstruction_pixelTrackingOnly,VALIDATION:@pixelTrackingOnlyValidation,DQM:@pixelTrackingOnlyDQM',
501 '--procModifiers':
'pixelNtupletFit',
502 '--customise' :
'RecoPixelVertexing/Configuration/customizePixelTracksForTriplets.customizePixelTracksForTriplets'
505 '-s':
'HARVESTING:@trackingOnlyValidation+@pixelTrackingOnlyDQM'
507 suffix =
'Patatrack_PixelOnlyTripletsCPU',
513 '--procModifiers':
'gpu',
514 '--customise':
'HLTrigger/Configuration/customizeHLTforPatatrack.enablePatatrackPixelTriplets'
517 '-s':
'RAW2DIGI:RawToDigi_pixelOnly,RECO:reconstruction_pixelTrackingOnly,VALIDATION:@pixelTrackingOnlyValidation,DQM:@pixelTrackingOnlyDQM',
518 '--procModifiers':
'pixelNtupletFit,gpu',
519 '--customise':
'RecoPixelVertexing/Configuration/customizePixelTracksForTriplets.customizePixelTracksForTriplets'
522 '-s':
'HARVESTING:@trackingOnlyValidation+@pixelTrackingOnlyDQM'
524 suffix =
'Patatrack_PixelOnlyTripletsGPU',
530 '-s':
'RAW2DIGI:RawToDigi_ecalOnly,RECO:reconstruction_ecalOnly,VALIDATION:@ecalOnlyValidation,DQM:@ecalOnly',
533 '-s':
'HARVESTING:@ecalOnlyValidation+@ecal'
535 suffix =
'Patatrack_ECALOnlyCPU',
541 '--procModifiers':
'gpu'
544 '-s':
'RAW2DIGI:RawToDigi_ecalOnly,RECO:reconstruction_ecalOnly,VALIDATION:@ecalOnlyValidation,DQM:@ecalOnly',
545 '--procModifiers':
'gpu'
548 '-s':
'HARVESTING:@ecalOnlyValidation+@ecal'
550 suffix =
'Patatrack_ECALOnlyGPU',
556 '-s':
'RAW2DIGI:RawToDigi_hcalOnly,RECO:reconstruction_hcalOnly,VALIDATION:@hcalOnlyValidation,DQM:@hcalOnly+@hcal2Only',
559 '-s':
'HARVESTING:@hcalOnlyValidation+@hcalOnly+@hcal2Only'
561 suffix =
'Patatrack_HCALOnlyCPU',
567 '--procModifiers':
'gpu'
570 '-s':
'RAW2DIGI:RawToDigi_hcalOnly,RECO:reconstruction_hcalOnly,VALIDATION:@hcalOnlyValidation,DQM:@hcalOnly+@hcal2Only',
571 '--procModifiers':
'gpu'
574 '-s':
'HARVESTING:@hcalOnlyValidation+@hcalOnly+@hcal2Only'
576 suffix =
'Patatrack_HCALOnlyGPU',
583 def setup_(self, step, stepName, stepDict, k, properties):
584 if 'GenSimHLBeamSpot14' in step:
585 stepDict[stepName][k] =
merge([{
'--eventcontent':
'RAWSIM',
'--datatier':
'GEN-SIM'},stepDict[step][k]])
586 elif 'Digi' in step
and 'Trigger' not in step:
587 stepDict[stepName][k] =
merge([{
'-s':
'DIGI,L1,DIGI2RAW,HLT:@relval2021',
'--datatier':
'GEN-SIM-RAW',
'--eventcontent':
'RAWSIM'}, stepDict[step][k]])
588 elif 'DigiTrigger' in step:
589 stepDict[stepName][k] =
merge([{
'-s':
'DIGI,L1TrackTrigger,L1,DIGI2RAW,HLT:@fake2',
'--datatier':
'GEN-SIM-RAW',
'--eventcontent':
'RAWSIM'}, stepDict[step][k]])
591 stepDict[stepName][k] =
merge([{
'-s':
'RAW2DIGI,L1Reco,RECO,RECOSIM',
'--datatier':
'AODSIM',
'--eventcontent':
'AODSIM'}, stepDict[step][k]])
592 elif 'MiniAOD' in step:
594 stepDict[stepName][k] = deepcopy(stepDict[step][k])
595 if 'ALCA' in step
or 'HARVEST' in step:
597 stepDict[stepName][k] =
None
599 stepDict[stepName][k] =
merge([{
'--filein':
'file:step4.root'}, stepDict[step][k]])
600 def condition(self, fragment, stepList, key, hasHarvest):
601 return fragment==
"TTbar_14TeV" and (
'2026' in key
or '2021' in key)
604 'GenSimHLBeamSpot14',
616 'GenSimHLBeamSpot14',
627 suffix =
'_ProdLike',
632 def setup_(self, step, stepName, stepDict, k, properties):
634 custNew =
"SimG4Core/Application/NeutronBGforMuonsXS_cff.customise"
636 custNew =
"SLHCUpgradeSimulations/Configuration/customise_mixing.customise_Mix_LongLived_Neutrons"
637 stepDict[stepName][k] = deepcopy(stepDict[step][k])
638 if '--customise' in stepDict[stepName][k].
keys():
639 stepDict[stepName][k][
'--customise'] +=
","+custNew
641 stepDict[stepName][k][
'--customise'] = custNew
642 def condition(self, fragment, stepList, key, hasHarvest):
648 'GenSimHLBeamSpot14',
660 upgradeWFs[
'Neutron'].neutronKeys = [x
for x
in upgradeKeys[2026]
if 'PU' not in x]
661 upgradeWFs[
'Neutron'].neutronFrags = [
'ZMM_14',
'MinBias_14TeV']
664 def setup_(self, step, stepName, stepDict, k, properties):
665 stepDict[stepName][k] =
merge([{
'--procModifiers':
'run2_HECollapse_2018'}, stepDict[step][k]])
666 def condition(self, fragment, stepList, key, hasHarvest):
667 return fragment==
"TTbar_13" and '2018' in key
681 suffix =
'_heCollapse',
686 def setup_(self, step, stepName, stepDict, k, properties):
688 mods = {
'--era': stepDict[step][k][
'--era']+
',phase2_ecal_devel'}
690 mods[
'-s'] =
'DIGI:pdigi_valid'
691 stepDict[stepName][k] =
merge([mods, stepDict[step][k]])
692 def condition(self, fragment, stepList, key, hasHarvest):
693 return fragment==
"TTbar_14TeV" and '2026' in key
705 suffix =
'_ecalDevel',
710 def setup_(self, step, stepName, stepDict, k, properties):
711 myGT=stepDict[step][k][
'--conditions']
713 stepDict[stepName][k] =
merge([{
'-n':
'1',
'--magField':
'0T',
'--conditions':myGT}, stepDict[step][k]])
714 def condition(self, fragment, stepList, key, hasHarvest):
715 return (fragment==
"TTbar_13" or fragment==
"TTbar_14TeV")
and (
'2017' in key
or '2018' in key
or '2021' in key)
734 def setup_(self, step, stepName, stepDict, k, properties):
735 if 'Reco' in step
and 'Run2_2018' in stepDict[step][k][
'--era']:
736 stepDict[stepName][k] =
merge([{
'--era':
'Run2_2018,bParking'}, stepDict[step][k]])
737 def condition(self, fragment, stepList, key, hasHarvest):
738 return fragment==
"TTbar_13" and '2018' in key
744 suffix =
'_ParkingBPH',
749 def setup_(self, step, stepName, stepDict, k, properties):
751 stepDict[stepName][k] =
merge([{
'--customise':
'PhysicsTools/NanoAOD/custom_jme_cff.PrepJMECustomNanoAOD_MC'}, stepDict[step][k]])
752 def condition(self, fragment, stepList, key, hasHarvest):
753 return fragment==
"TTbar_13" and (
'2017' in key
or '2018' in key)
766 def setup_(self, step, stepName, stepDict, k, properties):
767 if 'Digi' in step
or 'Reco' in step:
768 stepDict[stepName][k] =
merge([{
'--customise':
'SLHCUpgradeSimulations/Configuration/aging.customise_aging_'+self.
lumi}, stepDict[step][k]])
769 def condition(self, fragment, stepList, key, hasHarvest):
770 return fragment==
"TTbar_14TeV" and '2026' in key
787 suffix =
'Aging1000',
790 upgradeWFs[
'Aging1000'].lumi =
'1000'
791 upgradeWFs[
'Aging3000'] = deepcopy(upgradeWFs[
'Aging1000'])
792 upgradeWFs[
'Aging3000'].suffix =
'Aging3000'
793 upgradeWFs[
'Aging3000'].offset = 0.103
794 upgradeWFs[
'Aging3000'].lumi =
'3000'
802 digiPremixLocalPileup = {
803 "--filein":
"file:step1.root",
804 "--pileup_input":
"file:step2.root"
809 def setup_(self, step, stepName, stepDict, k, properties):
811 stepDict[stepName][k] =
merge([stepDict[step][k]])
812 def setupPU_(self, step, stepName, stepDict, k, properties):
814 if "GenSim" in stepName:
815 stepNamePmx = stepName.replace(
'GenSim',
'Premix')
816 if not stepNamePmx
in stepDict: stepDict[stepNamePmx] = {}
817 stepDict[stepNamePmx][k] =
merge([
819 '-s':
'GEN,SIM,DIGI:pdigi_valid',
820 '--datatier':
'PREMIX',
821 '--eventcontent':
'PREMIX',
822 '--procModifiers':
'premix_stage1'
824 stepDict[stepName][k]
826 if "ProdLike" in self.
suffix:
827 stepDict[stepNamePmx][k] =
merge([{
'-s':
'GEN,SIM,DIGI'},stepDict[stepNamePmx][k]])
829 elif "Digi" in step
or "Reco" in step:
835 for s
in d[
"-s"].
split(
","):
836 if s ==
"DIGI" or "DIGI:" in s:
837 tmpsteps.extend([s,
"DATAMIX"])
841 "--datamix" :
"PreMix",
842 "--procModifiers":
"premix_stage2"},
845 if "_PMXS1S2" in self.
suffix:
846 d =
merge([digiPremixLocalPileup, d])
848 if "--procModifiers" in d:
849 d[
"--procModifiers"] +=
",premix_stage2"
851 d[
"--procModifiers"] =
"premix_stage2"
852 stepDict[stepName][k] = d
858 filein = d[
"--filein"]
859 m = re.search(
"step(?P<ind>\d+)_", filein)
861 d[
"--filein"] = filein.replace(m.group(),
"step%d_"%(
int(m.group(
"ind"))+1))
862 stepDict[stepName][k] = d
865 def condition(self, fragment, stepList, key, hasHarvest):
868 if not any(y
in key
for y
in [
'2021',
'2023',
'2024',
'2026']):
870 if self.
suffix.endswith(
"S1"):
871 return "NuGun" in fragment
873 def workflow_(self, workflows, num, fragment, stepList, key):
874 fragmentTmp = fragment
875 if self.
suffix.endswith(
"S1"):
876 fragmentTmp =
'PREMIXUP' + key[2:].
replace(
"PU",
"").
replace(
"Design",
"") +
'_PU25'
877 super(UpgradeWorkflowPremix,self).
workflow_(workflows, num, fragmentTmp, stepList, key)
885 'GenSimHLBeamSpot14',
910 'GenSimHLBeamSpot14',
923 def setupPU_(self, step, stepName, stepDict, k, properties):
925 if '--pileup' in stepDict[stepName][k]:
926 stepDict[stepName][k][
'--pileup'] =
'AVE_50_BX_25ns_m3p3'
927 super(UpgradeWorkflowAdjustPU,self).
setupPU_(step, stepName, stepDict, k, properties)
928 def condition(self, fragment, stepList, key, hasHarvest):
930 return super(UpgradeWorkflowAdjustPU,self).
condition(fragment, stepList, key, hasHarvest)
and '2026' in key
936 'GenSimHLBeamSpot14',
946 suffix =
'_PMXS1S2PR',
951 def setup_(self, step, stepName, stepDict, k, properties):
953 UpgradeWorkflowPremix.setup_(self, step, stepName, stepDict, k, properties)
954 UpgradeWorkflow_ProdLike.setup_(self, step, stepName, stepDict, k, properties)
959 for s
in d[
"-s"].
split(
","):
960 if "DIGI:pdigi_valid" in s:
961 tmpsteps.append(
"DIGI")
965 "--eventcontent":
"PREMIXRAW"},
967 stepDict[stepName][k] = d
968 def condition(self, fragment, stepList, key, hasHarvest):
970 return UpgradeWorkflowPremix.condition(self, fragment, stepList, key, hasHarvest)
and UpgradeWorkflow_ProdLike.condition(self, fragment, stepList, key, hasHarvest)
986 suffix =
'_PMXS2ProdLike',
995 'GenSimHLBeamSpot14',
1007 suffix =
'_PMXS1S2ProdLike',
1012 def setup_(self, step, stepName, stepDict, k, properties):
1013 if 'Run3' in stepDict[step][k][
'--era']:
1014 stepDict[stepName][k] =
merge([{
'--geometry':
'DD4hepExtended2021',
'--procModifiers':
'dd4hep'}, stepDict[step][k]])
1015 elif 'Phase2' in stepDict[step][k][
'--era']:
1017 dd4hepGeom+=stepDict[step][k][
'--geometry']
1018 stepDict[stepName][k] =
merge([{
'--geometry' : dd4hepGeom,
'--procModifiers':
'dd4hep'}, stepDict[step][k]])
1020 return '2021' in key
or '2026' in key
1025 'GenSimHLBeamSpot14',
1038 upgradeWFs[
'DD4hep'].allowReuse =
False
1041 def setup_(self, step, stepName, stepDict, k, properties):
1042 if 'Run3' in stepDict[step][k][
'--era']:
1043 stepDict[stepName][k] =
merge([{
'--conditions':
'120X_mcRun3_2021_realistic_dd4hep_v4',
'--geometry':
'DB:Extended',
'--procModifiers':
'dd4hep'}, stepDict[step][k]])
1045 return '2021' in key
1050 'GenSimHLBeamSpot14',
1060 suffix =
'_DD4hepDB',
1063 upgradeWFs[
'DD4hepDB'].allowReuse =
False
1066 def setup_(self, step, stepName, stepDict, k, properties):
1067 stepDict[stepName][k] =
merge([{
'--procModifiers':
'allSonicTriton'}, stepDict[step][k]])
1069 return (fragment==
'TTbar_13' and '2021' in key) \
1070 or (fragment==
'TTbar_14TeV' and '2026' in key)
1075 'GenSimHLBeamSpot14',
1087 'GenSimHLBeamSpot14',
1096 suffix =
'_SonicTriton',
1101 offsets = [specialWF.offset
for specialType,specialWF
in upgradeWFs.items()]
1103 dups = set(x
for x
in offsets
if x
in seen
or seen.add(x))
1105 raise ValueError(
"Duplicate special workflow offsets not allowed: "+
','.
join([
str(x)
for x
in dups]))
1107 upgradeProperties = {}
1109 upgradeProperties[2017] = {
1111 'Geom' :
'DB:Extended',
1112 'GT' :
'auto:phase1_2017_realistic',
1113 'HLTmenu':
'@relval2017',
1114 'Era' :
'Run2_2017',
1115 'ScenToRun' : [
'GenSim',
'Digi',
'RecoFakeHLT',
'HARVESTFakeHLT',
'ALCA',
'Nano'],
1118 'Geom' :
'DB:Extended',
1119 'GT' :
'auto:phase1_2017_design',
1120 'HLTmenu':
'@relval2017',
1121 'Era' :
'Run2_2017',
1122 'BeamSpot':
'GaussSigmaZ4cm',
1123 'ScenToRun' : [
'GenSim',
'Digi',
'RecoFakeHLT',
'HARVESTFakeHLT'],
1126 'Geom' :
'DB:Extended',
1127 'GT' :
'auto:phase1_2018_realistic',
1128 'HLTmenu':
'@relval2018',
1129 'Era' :
'Run2_2018',
1130 'BeamSpot':
'Realistic25ns13TeVEarly2018Collision',
1131 'ScenToRun' : [
'GenSim',
'Digi',
'RecoFakeHLT',
'HARVESTFakeHLT',
'ALCA',
'Nano'],
1134 'Geom' :
'DB:Extended',
1135 'GT' :
'auto:phase1_2018_design',
1136 'HLTmenu':
'@relval2018',
1137 'Era' :
'Run2_2018',
1138 'BeamSpot':
'GaussSigmaZ4cm',
1139 'ScenToRun' : [
'GenSim',
'Digi',
'RecoFakeHLT',
'HARVESTFakeHLT'],
1142 'Geom' :
'DB:Extended',
1143 'GT' :
'auto:phase1_2021_realistic',
1144 'HLTmenu':
'@relval2021',
1146 'BeamSpot':
'Run3RoundOptics25ns13TeVLowSigmaZ',
1147 'ScenToRun' : [
'GenSim',
'Digi',
'Reco',
'HARVEST',
'ALCA'],
1150 'Geom' :
'DB:Extended',
1151 'GT' :
'auto:phase1_2021_design',
1152 'HLTmenu':
'@relval2021',
1154 'BeamSpot':
'GaussSigmaZ4cm',
1155 'ScenToRun' : [
'GenSim',
'Digi',
'Reco',
'HARVEST'],
1158 'Geom' :
'DB:Extended',
1159 'GT' :
'auto:phase1_2023_realistic',
1160 'HLTmenu':
'@relval2021',
1162 'BeamSpot':
'Run3RoundOptics25ns13TeVLowSigmaZ',
1163 'ScenToRun' : [
'GenSim',
'Digi',
'Reco',
'HARVEST',
'ALCA'],
1166 'Geom' :
'DB:Extended',
1167 'GT' :
'auto:phase1_2024_realistic',
1168 'HLTmenu':
'@relval2021',
1170 'BeamSpot':
'Run3RoundOptics25ns13TeVLowSigmaZ',
1171 'ScenToRun' : [
'GenSim',
'Digi',
'Reco',
'HARVEST',
'ALCA'],
1176 for key
in list(upgradeProperties[2017].
keys()):
1177 upgradeProperties[2017][key+
'PU'] = deepcopy(upgradeProperties[2017][key])
1178 upgradeProperties[2017][key+
'PU'][
'ScenToRun'] = [
'GenSim',
'DigiPU'] + \
1179 ([
'RecoPU',
'HARVESTPU']
if '202' in key
else [
'RecoFakeHLTPU',
'HARVESTFakeHLTPU']) + \
1180 ([
'Nano']
if 'Design' not in key
else [])
1182 upgradeProperties[2026] = {
1184 'Geom' :
'Extended2026D49',
1185 'HLTmenu':
'@fake2',
1186 'GT' :
'auto:phase2_realistic_T15',
1188 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1191 'Geom' :
'Extended2026D60',
1192 'HLTmenu':
'@fake2',
1193 'GT' :
'auto:phase2_realistic_T15',
1194 'Era' :
'Phase2C10',
1195 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1198 'Geom' :
'Extended2026D68',
1199 'HLTmenu':
'@fake2',
1200 'GT' :
'auto:phase2_realistic_T21',
1201 'Era' :
'Phase2C11',
1202 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1205 'Geom' :
'Extended2026D70',
1206 'HLTmenu':
'@fake2',
1207 'GT' :
'auto:phase2_realistic_T21',
1208 'Era' :
'Phase2C11',
1209 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1212 'Geom' :
'Extended2026D76',
1213 'HLTmenu':
'@fake2',
1214 'GT' :
'auto:phase2_realistic_T21',
1215 'Era' :
'Phase2C11I13M9',
1216 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1219 'Geom' :
'Extended2026D77',
1220 'HLTmenu':
'@fake2',
1221 'GT' :
'auto:phase2_realistic_T21',
1222 'Era' :
'Phase2C11I13M9',
1223 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1226 'Geom' :
'Extended2026D78',
1227 'HLTmenu':
'@fake2',
1228 'GT' :
'auto:phase2_realistic_T22',
1229 'ProcessModifier':
'PixelCPEGeneric',
1230 'Era' :
'Phase2C11I13T22M9',
1231 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1234 'Geom' :
'Extended2026D79',
1235 'HLTmenu':
'@fake2',
1236 'GT' :
'auto:phase2_realistic_T23',
1237 'Era' :
'Phase2C11I13T23M9',
1238 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1241 'Geom' :
'Extended2026D80',
1242 'HLTmenu':
'@fake2',
1243 'GT' :
'auto:phase2_realistic_T25',
1244 'Era' :
'Phase2C11I13T25M9',
1245 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1248 'Geom' :
'Extended2026D81',
1249 'HLTmenu':
'@fake2',
1250 'GT' :
'auto:phase2_realistic_T26',
1251 'Era' :
'Phase2C11I13T26M9',
1252 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1255 'Geom' :
'Extended2026D82',
1256 'HLTmenu':
'@fake2',
1257 'GT' :
'auto:phase2_realistic_T21',
1258 'Era' :
'Phase2C11I13M9',
1259 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1262 'Geom' :
'Extended2026D83',
1263 'HLTmenu':
'@fake2',
1264 'GT' :
'auto:phase2_realistic_T21',
1265 'Era' :
'Phase2C11I13M9',
1266 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1269 'Geom' :
'Extended2026D84',
1270 'HLTmenu':
'@fake2',
1271 'GT' :
'auto:phase2_realistic_T21',
1272 'Era' :
'Phase2C11',
1273 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1276 'Geom' :
'Extended2026D85',
1277 'HLTmenu':
'@fake2',
1278 'GT' :
'auto:phase2_realistic_T21',
1279 'Era' :
'Phase2C11I13M9',
1280 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1283 'Geom' :
'Extended2026D86',
1284 'HLTmenu':
'@fake2',
1285 'GT' :
'auto:phase2_realistic_T21',
1286 'Era' :
'Phase2C11I13M9',
1287 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger',
'RecoGlobal',
'HARVESTGlobal'],
1290 'Geom' :
'Extended2026D87',
1291 'HLTmenu':
'@fake2',
1292 'GT' :
'auto:phase2_realistic_T27',
1293 'Era' :
'Phase2C11I13T25M9',
1294 'ScenToRun' : [
'GenSimHLBeamSpot',
'DigiTrigger'],
1299 for key
in list(upgradeProperties[2026].
keys()):
1300 upgradeProperties[2026][key+
'PU'] = deepcopy(upgradeProperties[2026][key])
1301 upgradeProperties[2026][key+
'PU'][
'ScenToRun'] = [
'GenSimHLBeamSpot',
'DigiTriggerPU',
'RecoGlobalPU',
'HARVESTGlobalPU']
1304 defaultDataSets = {}
1305 for year
in upgradeKeys:
1306 for key
in upgradeKeys[year]:
1307 if 'PU' in key:
continue
1308 defaultDataSets[key] =
''
1316 upgradeFragments = OrderedDict([
1318 (
'SingleElectronPt10_pythia8_cfi',
UpgradeFragment(
Kby(9,100),
'SingleElectronPt10')),
1319 (
'SingleElectronPt35_pythia8_cfi',
UpgradeFragment(
Kby(9,100),
'SingleElectronPt35')),
1320 (
'SingleElectronPt1000_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'SingleElectronPt1000')),
1327 (
'FourMuExtendedPt_1_200_pythia8_cfi',
UpgradeFragment(
Kby(10,100),
'FourMuExtendedPt1_200')),
1328 (
'TenMuExtendedE_0_200_pythia8_cfi',
UpgradeFragment(
Kby(10,100),
'TenMuExtendedE_0_200')),
1329 (
'DoubleElectronPt10Extended_pythia8_cfi',
UpgradeFragment(
Kby(9,100),
'SingleElPt10Extended')),
1330 (
'DoubleElectronPt35Extended_pythia8_cfi',
UpgradeFragment(
Kby(9,100),
'SingleElPt35Extended')),
1331 (
'DoubleElectronPt1000Extended_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'SingleElPt1000Extended')),
1332 (
'DoubleGammaPt10Extended_pythia8_cfi',
UpgradeFragment(
Kby(9,100),
'SingleGammaPt10Extended')),
1333 (
'DoubleGammaPt35Extended_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'SingleGammaPt35Extended')),
1334 (
'DoubleMuPt1Extended_pythia8_cfi',
UpgradeFragment(
Kby(25,100),
'SingleMuPt1Extended')),
1335 (
'DoubleMuPt10Extended_pythia8_cfi',
UpgradeFragment(
Kby(25,100),
'SingleMuPt10Extended')),
1336 (
'DoubleMuPt100Extended_pythia8_cfi',
UpgradeFragment(
Kby(9,100),
'SingleMuPt100Extended')),
1337 (
'DoubleMuPt1000Extended_pythia8_cfi',
UpgradeFragment(
Kby(9,100),
'SingleMuPt1000Extended')),
1340 (
'MinBias_13TeV_pythia8_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(90,100),
'MinBias_13')),
1343 (
'QCD_Pt_600_800_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'QCD_Pt_600_800_13')),
1344 (
'Wjet_Pt_80_120_14TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,100),
'Wjet_Pt_80_120_14TeV')),
1345 (
'Wjet_Pt_3000_3500_14TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'Wjet_Pt_3000_3500_14TeV')),
1347 (
'QCD_Pt_3000_3500_14TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'QCD_Pt_3000_3500_14TeV')),
1348 (
'QCD_Pt_80_120_14TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,100),
'QCD_Pt_80_120_14TeV')),
1349 (
'H200ChargedTaus_Tauola_14TeV_cfi',
UpgradeFragment(
Kby(9,100),
'Higgs200ChargedTaus_14TeV')),
1353 (
'ZTT_Tauola_All_hadronic_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(9,100),
'ZTT_14TeV')),
1354 (
'H130GGgluonfusion_14TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,100),
'H130GGgluonfusion_14TeV')),
1355 (
'PhotonJet_Pt_10_14TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,100),
'PhotonJets_Pt_10_14TeV')),
1356 (
'QQH1352T_Tauola_14TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,100),
'QQH1352T_Tauola_14TeV')),
1360 (
'QCDForPF_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(50,100),
'QCD_FlatPt_15_3000HS_14')),
1362 (
'DYToTauTau_M-50_14TeV_pythia8_tauola_cff',
UpgradeFragment(
Kby(9,100),
'DYtoTauTau_M_50_14TeV')),
1364 (
'QCD_Pt_80_120_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,100),
'QCD_Pt_80_120_13')),
1365 (
'H125GGgluonfusion_13TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(9,50),
'H125GGgluonfusion_13')),
1366 (
'QCD_Pt20toInf_MuEnrichedPt15_14TeV_TuneCP5_cff',
UpgradeFragment(
Kby(19565, 217391),
'QCD_Pt20toInfMuEnrichPt15_14')),
1368 (
'QCD_Pt15To7000_Flat_14TeV_TuneCP5_cff',
UpgradeFragment(
Kby(9,50),
'QCD_Pt15To7000_Flat_14')),
1369 (
'H125GGgluonfusion_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(9,50),
'H125GGgluonfusion_14')),
1370 (
'QCD_Pt_600_800_14TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'QCD_Pt_600_800_14')),
1373 (
'H200ChargedTaus_Tauola_13TeV_cfi',
UpgradeFragment(
Kby(9,50),
'Higgs200ChargedTaus_13')),
1374 (
'ADDMonoJet_13TeV_d3MD3_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'ADDMonoJet_d3MD3_13')),
1376 (
'QCD_Pt_3000_3500_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'QCD_Pt_3000_3500_13')),
1383 (
'PhotonJet_Pt_10_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'PhotonJets_Pt_10_13')),
1385 (
'Wjet_Pt_80_120_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'Wjet_Pt_80_120_13')),
1386 (
'Wjet_Pt_3000_3500_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'Wjet_Pt_3000_3500_13')),
1387 (
'SMS-T1tttt_mGl-1500_mLSP-100_13TeV-pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'SMS-T1tttt_mGl-1500_mLSP-100_13')),
1388 (
'QCDForPF_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(50,100),
'QCD_FlatPt_15_3000HS_13')),
1389 (
'PYTHIA8_PhiToMuMu_TuneCUETP8M1_13TeV_cff',
UpgradeFragment(
Kby(9,50),
'PhiToMuMu_13')),
1390 (
'RSKKGluon_m3000GeV_13TeV_TuneCUETP8M1_cff',
UpgradeFragment(
Kby(9,50),
'RSKKGluon_m3000GeV_13')),
1394 (
'Upsilon1SToMuMu_forSTEAM_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(9,50),
'Upsilon1SToMuMu_13')),
1395 (
'EtaBToJpsiJpsi_forSTEAM_TuneCUEP8M1_13TeV_cfi',
UpgradeFragment(
Kby(9,50),
'EtaBToJpsiJpsi_13')),
1396 (
'JpsiMuMu_Pt-8_forSTEAM_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(3100,100000),
'JpsiMuMu_Pt-8')),
1397 (
'BuMixing_BMuonFilter_forSTEAM_13TeV_TuneCUETP8M1_cfi',
UpgradeFragment(
Kby(900,10000),
'BuMixing_13')),
1398 (
'HSCPstop_M_200_TuneCUETP8M1_13TeV_pythia8_cff',
UpgradeFragment(
Kby(9,50),
'HSCPstop_M_200_13')),
1399 (
'RSGravitonToGammaGamma_kMpl01_M_3000_TuneCUETP8M1_13TeV_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'RSGravitonToGaGa_13')),
1400 (
'WprimeToENu_M-2000_TuneCUETP8M1_13TeV-pythia8_cff',
UpgradeFragment(
Kby(9,50),
'WpToENu_M-2000_13')),
1401 (
'DisplacedSUSY_stopToBottom_M_800_500mm_TuneCP5_13TeV_pythia8_cff',
UpgradeFragment(
Kby(9,50),
'DisplacedSUSY_stopToB_M_800_500mm_13')),
1403 (
'FlatRandomPtAndDxyGunProducer_cfi',
UpgradeFragment(
Kby(9,100),
'DisplacedMuonsDxy_0_500')),
1405 (
'SinglePiPt25Eta1p7_2p7_cfi',
UpgradeFragment(
Kby(9,100),
'SinglePiPt25Eta1p7_2p7')),
1406 (
'SingleMuPt15Eta1p7_2p7_cfi',
UpgradeFragment(
Kby(9,100),
'SingleMuPt15Eta1p7_2p7')),
1407 (
'SingleGammaPt25Eta1p7_2p7_cfi',
UpgradeFragment(
Kby(9,100),
'SingleGammaPt25Eta1p7_2p7')),
1408 (
'SingleElectronPt15Eta1p7_2p7_cfi',
UpgradeFragment(
Kby(9,100),
'SingleElectronPt15Eta1p7_2p7')),
1410 (
'CloseByParticle_Photon_ERZRanges_cfi',
UpgradeFragment(
Kby(9,100),
'CloseByParticleGun')),
1411 (
'CE_E_Front_300um_cfi',
UpgradeFragment(
Kby(9,100),
'CloseByPGun_CE_E_Front_300um')),
1412 (
'CE_E_Front_200um_cfi',
UpgradeFragment(
Kby(9,100),
'CloseByPGun_CE_E_Front_200um')),
1413 (
'CE_E_Front_120um_cfi',
UpgradeFragment(
Kby(9,100),
'CloseByPGun_CE_E_Front_120um')),
1417 (
'CE_H_Coarse_Scint_cfi',
UpgradeFragment(
Kby(9,100),
'CloseByPGun_CE_H_Coarse_Scint')),
1418 (
'CE_H_Coarse_300um_cfi',
UpgradeFragment(
Kby(9,100),
'CloseByPGun_CE_H_Coarse_300um')),
1419 (
'SingleElectronFlatPt2To100_cfi',
UpgradeFragment(
Kby(9,100),
'SingleEFlatPt2To100')),
1422 (
'SingleGammaFlatPt8To150_cfi',
UpgradeFragment(
Kby(9,100),
'SingleGammaFlatPt8To150')),
1425 (
'FlatRandomPtAndDxyGunProducer_MuPt2To10_cfi',
UpgradeFragment(
Kby(9,100),
'DisplacedMuPt2To10')),
1426 (
'FlatRandomPtAndDxyGunProducer_MuPt10To30_cfi',
UpgradeFragment(
Kby(9,100),
'DisplacedMuPt10To30')),
1427 (
'FlatRandomPtAndDxyGunProducer_MuPt30To100_cfi',
UpgradeFragment(
Kby(9,100),
'DisplacedMuPt30To100')),
1428 (
'B0ToKstarMuMu_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(304,3030),
'B0ToKstarMuMu_14TeV')),
1430 (
'BsToJpsiGamma_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(2500,25000),
'BsToJpsiGamma_14TeV')),
1431 (
'BsToJpsiPhi_mumuKK_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(910,9090),
'BsToJpsiPhi_mumuKK_14TeV')),
1433 (
'BsToPhiPhi_KKKK_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(556,5555),
'BsToPhiPhi_KKKK_14TeV')),
1434 (
'TauToMuMuMu_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(18939,189393),
'TauToMuMuMu_14TeV')),
1435 (
'BdToKstarEleEle_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(206,2061),
'BdToKstarEleEle_14TeV')),
1437 (
'BuMixing_BMuonFilter_forSTEAM_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(900,10000),
'BuMixing_14')),
1438 (
'Upsilon1SToMuMu_forSTEAM_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(9,50),
'Upsilon1SToMuMu_14')),
1439 (
'TenTau_E_15_500_Eta3p1_pythia8_cfi',
UpgradeFragment(
Kby(9,100),
'TenTau_15_500_Eta3p1')),
1440 (
'QCD_Pt_1800_2400_14TeV_TuneCP5_cfi',
UpgradeFragment(
Kby(9,50),
'QCD_Pt_1800_2400_14')),
1441 (
'DisplacedSUSY_stopToBottom_M_800_500mm_TuneCP5_14TeV_pythia8_cff',
UpgradeFragment(
Kby(9,50),
'DisplacedSUSY_14TeV')),
1442 (
'GluGluTo2Jets_M_300_2000_14TeV_Exhume_cff',
UpgradeFragment(
Kby(9,100),
'GluGluTo2Jets_14TeV')),
1443 (
'TTbarToDilepton_mt172p5_TuneCP5_14TeV_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'TTbarToDilepton_14TeV')),
1444 (
'QQToHToTauTau_mh125_TuneCP5_14TeV_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'QQToHToTauTau_14TeV')),
1445 (
'ZpToEE_m6000_TuneCP5_14TeV_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'ZpToEE_m6000_14TeV')),
1446 (
'ZpToMM_m6000_TuneCP5_14TeV_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'ZpToMM_m6000_14TeV')),
1447 (
'SMS-T1tttt_mGl-1500_mLSP-100_TuneCP5_14TeV_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'SMS-T1tttt_14TeV')),
1448 (
'VBFHZZ4Nu_TuneCP5_14TeV_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'VBFHZZ4Nu_14TeV')),
1449 (
'EtaBToJpsiJpsi_14TeV_TuneCP5_pythia8_cfi',
UpgradeFragment(
Kby(9,50),
'EtaBToJpsiJpsi_14TeV')),
1451 (
'WprimeToLNu_M2000_14TeV_TuneCP5_pythia8_cfi',
UpgradeFragment(
Kby(21,50),
'WprimeToLNu_M2000_14TeV')),
1453 (
'DoubleElectronFlatPt1p5To8_cfi',
UpgradeFragment(
Kby(9,100),
'SingleElectronFlatPt1p5To8')),
1454 (
'DoubleMuFlatPt1p5To8Dxy100GunProducer_cfi',
UpgradeFragment(
Kby(9,100),
'DisplacedMuPt1p5To8Dxy100')),
1455 (
'DoubleMuFlatPt2To100Dxy100GunProducer_cfi',
UpgradeFragment(
Kby(9,100),
'DisplacedMuPt2To100Dxy100')),