ATLAS Offline Software
ItemDef.py
Go to the documentation of this file.
1 #!/usr/bin/env python
2 # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 #
4 # Disable flake8 checking due to the use of 'exec':
5 # flake8: noqa
6 #
7 
8 from collections import defaultdict as ddict
9 import re, sys
10 import traceback
11 
12 from ..Base.L1MenuFlags import L1MenuFlags
13 from AthenaCommon.Logging import logging
14 log = logging.getLogger(__name__)
15 
16 # The trigger types
17 from ..Base.Limits import Limits
18 from ..Base.Logic import Logic, Not
19 from ..Base.Items import MenuItem, meta_d
20 from ..Base.Thresholds import TopoThreshold
21 from ..Base.CTPCondition import ThrCondition, InternalTrigger # noqa: F401
22 from .TriggerTypeDef import TT
23 from .ItemDef_run4 import ItemDef_run4
24 
25 
26 class ItemDef:
27  """
28  Defines any items that might be needed in Run2
29  """
30 
31  otherTopoNames = ddict(list)
32 
33  @staticmethod
35  class d(metaclass=meta_d): pass
36 
37  # ... and make them accessible by their name
38  for thr in tc.getDefinedThresholds():
39  setattr(d, thr.getVarName(), ThrCondition(thr))
40  if isinstance(thr, TopoThreshold):
41  ItemDef.otherTopoNames[thr.getVarName().split('_',1)[-1]].append( thr.getVarName() )
42 
43  # InternalTriggers
44  for i in range( Limits.NumBunchgroups ):
45  setattr (d, "BGRP%i"%i, InternalTrigger('BGRP%i'%i))
46 
47  for i in range( Limits.NumRndmTriggers ):
48  setattr (d, "RNDM%i"%i, InternalTrigger('RNDM%i'%i))
49 
50  return d
51 
52  @staticmethod
53  def registerItems(tc, menuName):
54  """Register L1 items for further use"""
55 
56  # dear Menu Experts, please note that it is only necessary to
57  # check the menu name if a certain item needs to be defined
58  # differently in different menus
59 
60  d = ItemDef.threshold_conditions(tc)
61 
62  # Setting up bunch group and BPTX conditions
63  physcond = d.BGRP0 & d.BGRP1
64  calibcond = d.BGRP0 & d.BGRP2
65  cosmiccond = d.BGRP0 & d.BGRP3
66  unpaired_isocond = d.BGRP0 & d.BGRP4 # unpaired isolated (satellite bunches)
67  unpaired_nonisocond = d.BGRP0 & d.BGRP5 # unpaired non-isolated (parasitic bunches)
68  firstempty = d.BGRP0 & d.BGRP6
69  bgrp7cond = d.BGRP0 & d.BGRP7 # No unpaired anymore
70  bgrp9cond = d.BGRP0 & d.BGRP9
71  bgrp11cond = d.BGRP0 & d.BGRP11
72  bgrp12cond = d.BGRP0 & d.BGRP12
73  bgrp13cond = d.BGRP0 & d.BGRP13 #UNPAIREDB1
74  bgrp14cond = d.BGRP0 & d.BGRP14 #UNPAIREDB2
75  bgrp10cond = d.BGRP0 & d.BGRP10
76  firstintrain = d.BGRP0 & d.BGRP8
77  physcond_or_unpaired_isocond = d.BGRP0 & (d.BGRP1 | d.BGRP4)
78 
79  # partition 1
80  #bgrpcond1 = d.BGRP0 & d.BGRP11
81  #calibcond1 = d.BGRP0 & d.BGRP12
82 
83  # partition 2
84  #bgrpcond2 = d.BGRP0 & d.BGRP14
85 
86 
87  MenuItem.currentPartition = 1
88 
89  # ZDC
90 
91  # old Run-3 configurations
92  #ZDC_A_C = d.ZDC_A & d.ZDC_C
93  #VZDC_A_C = Not(d.ZDC_A) & Not(d.ZDC_C)
94 
95  # new ZDC configuration for Run-3 (ATR-24734)
96  ZDC_comb0 = Not(d.ZDC_2) & Not(d.ZDC_1) & Not(d.ZDC_0) # this means no signal! to be used ONLY in add with other inputs
97  ZDC_comb1 = Not(d.ZDC_2) & Not(d.ZDC_1) & d.ZDC_0
98  ZDC_comb2 = Not(d.ZDC_2) & d.ZDC_1 & Not(d.ZDC_0)
99  ZDC_comb3 = Not(d.ZDC_2) & d.ZDC_1 & d.ZDC_0
100  ZDC_comb4 = d.ZDC_2 & Not(d.ZDC_1) & Not(d.ZDC_0)
101  ZDC_comb5 = d.ZDC_2 & Not(d.ZDC_1) & d.ZDC_0
102  ZDC_comb6 = d.ZDC_2 & d.ZDC_1 & Not(d.ZDC_0)
103  ZDC_comb7 = d.ZDC_2 & d.ZDC_1 & d.ZDC_0
104 
105  # combined signals for heavy ion runs
106  PHYS_VZDC_A_VZDC_C = ZDC_comb0
107  PHYS_1TO4ZDC_A_VZDC_C = ZDC_comb4
108  PHYS_VZDC_A_1TO4ZDC_C = ZDC_comb6
109  PHYS_1TO4ZDC_A_1TO4ZDC_C = ZDC_comb1
110  PHYS_5ZDC_A_VZDC_C = ZDC_comb5
111  PHYS_VZDC_A_5ZDC_C = ZDC_comb7
112  PHYS_ZDC_1TO4XOR5 = ZDC_comb2
113  PHYS_5ZDC_A_5ZDC_C = ZDC_comb3
114 
115  PHYS_ZDC_A_VZDC_C = d.ZDC_2 & Not(d.ZDC_1)
116  PHYS_VZDC_A_ZDC_C = d.ZDC_2 & d.ZDC_1
117  PHYS_ZDC_XOR4 = d.ZDC_2 & Not(d.ZDC_0)
118  PHYS_ZDC_5XOR = d.ZDC_2 & d.ZDC_0
119  PHYS_1ZDC_NZDC = Not(d.ZDC_2) & ( d.ZDC_1 | d.ZDC_0 ) & Not( d.ZDC_1 & d.ZDC_0)
120 
121  #ATR-26984 refine ZDC_A and ZDC_C logic
122  #ZDC_A, ZDC_C and ZDC_A_C redefined due to O+O configuration, ATR-30690
123  #ZDC_A = ( Not(d.ZDC_2) & ( d.ZDC_1 | d.ZDC_0 ) ) | ( d.ZDC_2 & Not(d.ZDC_1) )
124  #ZDC_C = d.ZDC_1 | (d.ZDC_0 & Not(d.ZDC_2) )
125 
126  #ZDC_A_C = Not(d.ZDC_2) & ( d.ZDC_1 | d.ZDC_0 )
127  #ZDC_AND = ZDC_A_C
128  VZDC_A_C = ZDC_comb0
129  ZDC_XOR = d.ZDC_2
130  #VZDC_AORC = Not(ZDC_A) | Not(ZDC_C)
131  ZDCOR = Not(ZDC_comb0)
132 
133  # ZDC configuration for LHCf+ZDC special run in Sep. 2022
134  # rename existing ZDC configuration to match request in ATR-26051
135  ZDC_VETO = ZDC_comb0
136  ZDC_XOR_E1_E3 = ZDC_comb1
137  ZDC_XOR_E2 = ZDC_comb2
138  ZDC_E1_AND_E1 = ZDC_comb3
139  ZDC_E1_AND_E2ORE3 = ZDC_comb4
140  ZDC_E2_AND_E2 = ZDC_comb5
141  ZDC_E2_AND_E3 = ZDC_comb6
142  ZDC_E3_AND_E3 = ZDC_comb7
143  # (additional) combined ZDC signals for LHCf+ZDC special run
144  ZDC_OR = Not(ZDC_VETO)
145  ZDC_A_AND_C = d.ZDC_2 | (d.ZDC_1 & d.ZDC_0)
146 
147  # new HG items for the upcoming O+O runs, ATR-30690
148  ZDC_XnXn = ZDC_comb2 | ZDC_comb4 | ZDC_comb5 | ZDC_comb7
149  ZDC_XnYn = ZDC_comb4 | ZDC_comb5 | ZDC_comb7
150  ZDC_XnZn = ZDC_comb7
151  ZDC_Xn_XOR = ZDC_comb1 | ZDC_comb3 | ZDC_comb6
152  ZDC_Yn_XOR = ZDC_comb3 | ZDC_comb6
153  ZDC_Zn_XOR = ZDC_comb6
154  ZDC_Yn = Not(ZDC_comb0 | ZDC_comb1)
155  ZDC_Zn = d.ZDC_2
156 
157  #new ZDC items defiition, ATR-29719
158  ZDC_alt_comb0 = Not(d.ZDC_ALT_2) & Not(d.ZDC_ALT_1) & Not(d.ZDC_ALT_0) # this means no signal!
159  ZDC_alt_comb1 = Not(d.ZDC_ALT_2) & Not(d.ZDC_ALT_1) & d.ZDC_ALT_0
160  ZDC_alt_comb2 = Not(d.ZDC_ALT_2) & d.ZDC_ALT_1 & Not(d.ZDC_ALT_0)
161  ZDC_alt_comb3 = Not(d.ZDC_ALT_2) & d.ZDC_ALT_1 & d.ZDC_ALT_0
162  ZDC_alt_comb4 = d.ZDC_ALT_2 & Not(d.ZDC_ALT_1) & Not(d.ZDC_ALT_0)
163  ZDC_alt_comb5 = d.ZDC_ALT_2 & Not(d.ZDC_ALT_1) & d.ZDC_ALT_0
164  ZDC_alt_comb6 = d.ZDC_ALT_2 & d.ZDC_ALT_1 & Not(d.ZDC_ALT_0)
165  ZDC_alt_comb7 = d.ZDC_ALT_2 & d.ZDC_ALT_1 & d.ZDC_ALT_0
166 
167  #new ZDC items in HI running
168  ZDC_HELT20 = ZDC_alt_comb1 # 0 TeV < hadronic energy sum < 20 TeV
169  ZDC_HELT35 = ZDC_alt_comb2 # 20 TeV < hadronic energy sum < 35 TeV
170  ZDC_HELT50 = ZDC_alt_comb3 # 35 TeV < hadronic energy sum < 50 TeV
171  ZDC_HELT70 = ZDC_alt_comb4 # 50 TeV < hadronic energy sum < 70 TeV
172  ZDC_UCC_PU_REJECT = ZDC_HELT20 | ZDC_HELT35 | ZDC_HELT50 | ZDC_HELT70 # 0 TeV < hadronic energy sum < 70 TeV → for PU rejection
173 
174  #new ZDC items in pp running
175  ZDC_PP_C = Not(d.ZDC_ALT_2) & d.ZDC_ALT_0
176  ZDC_PP_A = Not(d.ZDC_ALT_2) & d.ZDC_ALT_1
177  ZDC_PP_OR = ZDC_PP_A | ZDC_PP_C
178  ZDC_PP_A_C = d.ZDC_ALT_1 & d.ZDC_ALT_0
179  ZDC_PP_C2 = d.ZDC_ALT_2 & d.ZDC_ALT_0
180  ZDC_PP_A2 = d.ZDC_ALT_2 & d.ZDC_ALT_1
181  ZDC_PP_OR2 = ZDC_PP_C2 | ZDC_PP_A2
182 
183  # new LG items for the upcoming O+O runs, ATR-30690
184  ZDC_LOR = Not(ZDC_alt_comb0)
185  ZDC_A = d.ZDC_ALT_0
186  ZDC_C = d.ZDC_ALT_1
187  ZDC_A_C = d.ZDC_ALT_0 & d.ZDC_ALT_1
188  ZDC_YnYn = ZDC_alt_comb7
189  ZDC_AND = ZDC_A_C
190  VZDC_AORC = Not(ZDC_A) | Not(ZDC_C)
191 
192  # Item for TeATIME
193  TeATIME = Not(d.TOPO_TeATIME_jTENoSort_ParamSet0)
194 
195  # Item for gESPRESSO algorithm
196  gESPRESSO = Not(d.gESPRESSO200)
197 
198  MenuItem('L1_EM3' ).setLogic( d.EM3 & physcond).setTriggerType( TT.calo )
199  MenuItem('L1_EM12' ).setLogic( d.EM12 & physcond).setTriggerType( TT.calo )
200  MenuItem('L1_EM15' ).setLogic( d.EM15 & physcond).setTriggerType( TT.calo )
201  MenuItem('L1_EM10VH' ).setLogic( d.EM10VH & physcond).setTriggerType( TT.calo )
202  MenuItem('L1_EM20VH' ).setLogic( d.EM20VH & physcond).setTriggerType( TT.calo )
203  MenuItem('L1_EM18VHI' ).setLogic( d.EM18VHI & physcond).setTriggerType( TT.calo )
204  MenuItem('L1_EM15VHI' ).setLogic( d.EM15VHI & physcond).setTriggerType( TT.calo )
205  #heavy-ions ATR-27791
206  MenuItem('L1_EM10' ).setLogic( d.EM10 & physcond).setTriggerType( TT.calo )
207  MenuItem('L1_2EM15' ).setLogic( d.EM15.x(2) & physcond).setTriggerType( TT.calo )
208 
209  # Phase-I
210  MenuItem('L1_eEM1' ).setLogic( d.eEM1 & physcond).setTriggerType( TT.calo )
211  MenuItem('L1_eEM2' ).setLogic( d.eEM2 & physcond).setTriggerType( TT.calo )
212  MenuItem('L1_TEA_eEM2' ).setLogic( d.eEM2 & TeATIME & physcond).setTriggerType( TT.calo )
213  MenuItem('L1_ESP_eEM2' ).setLogic( d.eEM2 & gESPRESSO & physcond).setTriggerType( TT.calo )
214  MenuItem('L1_eEM5' ).setLogic( d.eEM5 & physcond).setTriggerType( TT.calo )
215  MenuItem('L1_eEM7' ).setLogic( d.eEM7 & physcond).setTriggerType( TT.calo )
216  MenuItem('L1_eEM9' ).setLogic( d.eEM9 & physcond).setTriggerType( TT.calo )
217  MenuItem('L1_eEM10L' ).setLogic( d.eEM10L & physcond).setTriggerType( TT.calo )
218  MenuItem('L1_eEM12' ).setLogic( d.eEM12 & physcond).setTriggerType( TT.calo )
219  MenuItem('L1_eEM12L' ).setLogic( d.eEM12L & physcond).setTriggerType( TT.calo )
220  MenuItem('L1_eEM15' ).setLogic( d.eEM15 & physcond).setTriggerType( TT.calo )
221  MenuItem('L1_eEM18' ).setLogic( d.eEM18 & physcond).setTriggerType( TT.calo )
222  MenuItem('L1_eEM18L' ).setLogic( d.eEM18L & physcond).setTriggerType( TT.calo )
223  MenuItem('L1_eEM18M' ).setLogic( d.eEM18M & physcond).setTriggerType( TT.calo )
224  MenuItem('L1_eEM22M' ).setLogic( d.eEM22M & physcond).setTriggerType( TT.calo )
225  MenuItem('L1_eEM24L' ).setLogic( d.eEM24L & physcond).setTriggerType( TT.calo )
226  MenuItem('L1_eEM24VM' ).setLogic( d.eEM24VM & physcond).setTriggerType( TT.calo )
227  MenuItem('L1_eEM26' ).setLogic( d.eEM26 & physcond).setTriggerType( TT.calo )
228  MenuItem('L1_eEM26L' ).setLogic( d.eEM26L & physcond).setTriggerType( TT.calo )
229  MenuItem('L1_eEM26M' ).setLogic( d.eEM26M & physcond).setTriggerType( TT.calo )
230  MenuItem('L1_eEM26T' ).setLogic( d.eEM26T & physcond).setTriggerType( TT.calo )
231  MenuItem('L1_eEM28M' ).setLogic( d.eEM28M & physcond).setTriggerType( TT.calo )
232  MenuItem('L1_eEM40L' ).setLogic( d.eEM40L & physcond).setTriggerType( TT.calo )
233  MenuItem('L1_eEM1_EMPTY' ).setLogic(d.eEM1 & cosmiccond ).setTriggerType( TT.calo )
234  MenuItem('L1_eEM5_EMPTY' ).setLogic(d.eEM5 & cosmiccond ).setTriggerType( TT.calo )
235  MenuItem('L1_eEM2_EMPTY' ).setLogic(d.eEM2 & cosmiccond ).setTriggerType( TT.calo )
236  MenuItem('L1_eEM9_EMPTY' ).setLogic(d.eEM9 & cosmiccond ).setTriggerType( TT.calo )
237  MenuItem('L1_2eEM9_EMPTY' ).setLogic(d.eEM9.x(2) & cosmiccond ).setTriggerType( TT.calo )
238  MenuItem('L1_eEM9_UNPAIRED_ISO' ).setLogic(d.eEM9 & unpaired_isocond).setTriggerType( TT.calo )
239  MenuItem('L1_eEM15_EMPTY' ).setLogic(d.eEM15 & cosmiccond ).setTriggerType( TT.calo )
240  # ATR-29025
241  MenuItem('L1_DPHI-2eEM1_VjTE200_EMPTY' ).setLogic(d.TOPO_23DPHI32_2eEM1s & Not(d.jTE200) & cosmiccond ).setTriggerType( TT.calo )
242  MenuItem('L1_DPHI-2eTAU1_VjTE200_EMPTY' ).setLogic(d.TOPO_23DPHI32_2eTAU1s & Not(d.jTE200) & cosmiccond ).setTriggerType( TT.calo )
243 
244  MenuItem('L1_eEM22A' ).setLogic( d.eEM22A & physcond).setTriggerType( TT.calo )
245  MenuItem('L1_eEM22C' ).setLogic( d.eEM22C & physcond).setTriggerType( TT.calo )
246 
247  # PhaseI 2xEM and 3xEM
248  MenuItem('L1_2eEM10L').setLogic(d.eEM10L.x(2) & physcond).setTriggerType(TT.calo) # prospective Run 4 L1 item, ATR-30180
249  MenuItem('L1_2eEM12').setLogic(d.eEM12.x(2) & physcond).setTriggerType(TT.calo) #heavy ions, ATR-26333
250  MenuItem('L1_2eEM12L').setLogic(d.eEM12L.x(2) & physcond).setTriggerType(TT.calo) #heavy ions, ATR-26333
251  MenuItem('L1_2eEM18').setLogic(d.eEM18.x(2) & physcond).setTriggerType(TT.calo)
252  MenuItem('L1_2eEM18L').setLogic(d.eEM18L.x(2) & physcond).setTriggerType(TT.calo)
253  MenuItem('L1_2eEM18M').setLogic(d.eEM18M.x(2) & physcond).setTriggerType(TT.calo)
254  MenuItem('L1_2eEM24L').setLogic(d.eEM24L.x(2) & physcond).setTriggerType(TT.calo)
255  MenuItem('L1_3eEM12L').setLogic(d.eEM12L.x(3) & physcond).setTriggerType(TT.calo)
256  MenuItem('L1_eEM24L_3eEM12L').setLogic(d.eEM24L & d.eEM12L.x(3) & physcond).setTriggerType(TT.calo)
257  MenuItem('L1_eEM40L_2eEM18L').setLogic(d.eEM40L & d.eEM18L.x(2) & physcond).setTriggerType(TT.calo)
258  MenuItem('L1_2eEM9').setLogic(d.eEM9.x(2) & physcond).setTriggerType(TT.calo)
259 
260  # EM and jet
261  MenuItem('L1_J15p23ETA49' ).setLogic( d.J1523ETA49 & physcond).setTriggerType(TT.calo)
262  MenuItem('L1_J15p24ETA49' ).setLogic( d.J1524ETA49 & physcond).setTriggerType(TT.calo)
263  MenuItem('L1_J15p31ETA49' ).setLogic( d.J1531ETA49 & physcond).setTriggerType(TT.calo)
264  MenuItem('L1_J20p28ETA31' ).setLogic( d.J2028ETA31 & physcond).setTriggerType(TT.calo)
265  MenuItem('L1_J20p31ETA49' ).setLogic( d.J2031ETA49 & physcond).setTriggerType(TT.calo)
266  MenuItem('L1_J30p31ETA49' ).setLogic( d.J3031ETA49 & physcond).setTriggerType(TT.calo)
267  MenuItem('L1_J40p0ETA25' ).setLogic( d.J400ETA25 & physcond).setTriggerType(TT.calo)
268  MenuItem('L1_J50p31ETA49' ).setLogic( d.J5031ETA49 & physcond).setTriggerType(TT.calo)
269  MenuItem('L1_J70p31ETA49' ).setLogic( d.J7031ETA49 & physcond).setTriggerType(TT.calo)
270 
271  MenuItem('L1_J15p0ETA25' ).setLogic( d.J150ETA25 & physcond).setTriggerType(TT.calo)
272  MenuItem('L1_J20p0ETA28' ).setLogic( d.J200ETA28 & physcond).setTriggerType(TT.calo)
273  MenuItem('L1_J25p0ETA23' ).setLogic( d.J250ETA23 & physcond).setTriggerType(TT.calo)
274  MenuItem('L1_J35p0ETA23' ).setLogic( d.J350ETA23 & physcond).setTriggerType(TT.calo)
275  MenuItem('L1_J20p0ETA49' ).setLogic( d.J200ETA49 & physcond).setTriggerType(TT.calo)
276  MenuItem('L1_J30p0ETA49' ).setLogic( d.J300ETA49 & physcond).setTriggerType(TT.calo)
277  MenuItem('L1_J25p0ETA23_2J15p31ETA49' ).setLogic( d.J250ETA23 & d.J1531ETA49.x(2) & physcond).setTriggerType(TT.calo)
278 
279  # HI
280  MenuItem('L1_EM3_EMPTY' ).setLogic(d.EM3 & cosmiccond).setTriggerType( TT.calo )
281  MenuItem('L1_EM7_EMPTY' ).setLogic(d.EM7 & cosmiccond).setTriggerType( TT.calo )
282  MenuItem('L1_EM7_FIRSTEMPTY' ).setLogic(d.EM7 & firstempty).setTriggerType( TT.calo )
283  MenuItem('L1_eEM9_FIRSTEMPTY' ).setLogic(d.eEM9 & firstempty).setTriggerType( TT.calo )
284 
285  MenuItem('L1_J10_VTE100' ).setLogic( d.J10 & Not(d.TE100) & physcond).setTriggerType( TT.calo )
286  MenuItem('L1_J10_VTE200' ).setLogic( d.J10 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
287  MenuItem('L1_J10_VTE300' ).setLogic( d.J10 & Not(d.TE300) & physcond).setTriggerType( TT.calo )
288 
289  MenuItem('L1_J12_VTE100' ).setLogic( d.J12 & Not(d.TE100) & physcond).setTriggerType( TT.calo )
290  MenuItem('L1_J12_VTE200' ).setLogic( d.J12 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
291  # L1 items for IDCalibPEB, IDCalib in heavy ion collisions, ATR-26405
292  MenuItem('L1_J100_VTE200' ).setLogic( d.J100 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
293  MenuItem('L1_J30_VTE200' ).setLogic( d.J30 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
294  MenuItem('L1_XE35_VTE200' ).setLogic( d.XE35 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
295  MenuItem('L1_XE50_VTE200' ).setLogic( d.XE50 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
296  MenuItem('L1_jJ30_VjTE200' ).setLogic( d.jJ30 & Not(d.jTE200) & physcond).setTriggerType( TT.calo )
297 
298  MenuItem('L1_VTE200' ).setLogic( Not(d.TE200) & physcond).setTriggerType( TT.calo )
299  MenuItem('L1_TE20_VTE200' ).setLogic( d.TE20 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
300  MenuItem('L1_TE50_VTE200' ).setLogic( d.TE50 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
301 
302  MenuItem('L1_TE5_VTE200' ).setLogic( d.TE5 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
303  MenuItem('L1_TE5_VTE100' ).setLogic( d.TE5 & Not(d.TE100) & physcond).setTriggerType( TT.calo )
304  MenuItem('L1_TE5_VTE50' ).setLogic( d.TE5 & Not(d.TE50) & physcond).setTriggerType( TT.calo )
305  MenuItem('L1_TE5_VTE20' ).setLogic( d.TE5 & Not(d.TE20) & physcond).setTriggerType( TT.calo )
306 
307  MenuItem('L1_TE4_VTE200' ).setLogic( d.TE4 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
308  MenuItem('L1_TE4_VTE100' ).setLogic( d.TE4 & Not(d.TE100) & physcond).setTriggerType( TT.calo )
309  MenuItem('L1_TE4_VTE50' ).setLogic( d.TE4 & Not(d.TE50) & physcond).setTriggerType( TT.calo )
310 
311  MenuItem('L1_TE3_VTE50' ).setLogic( d.TE3 & Not(d.TE50) & physcond).setTriggerType( TT.calo )
312  MenuItem('L1_TE3_VTE200' ).setLogic( d.TE3 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
313 
314  MenuItem('L1_TE4_VTE200_EMPTY' ).setLogic( d.TE4 & Not(d.TE200) & cosmiccond).setTriggerType( TT.calo )
315  MenuItem('L1_TE5_VTE200_EMPTY' ).setLogic( d.TE5 & Not(d.TE200) & cosmiccond).setTriggerType( TT.calo )
316 
317  #HI phase-1
318  # additional L1_GAP items defined using jTEFWDA or JTEFWDC
319 
320  GAPA = Not(d.jTEFWDA5)
321  GAPC = Not(d.jTEFWDC5)
322  GAPAC = Not(d.jTEFWDA5) & Not(d.jTEFWDC5)
323 
324  MenuItem('L1_GAP_A').setLogic( GAPA & physcond).setTriggerType(TT.calo)
325  MenuItem('L1_GAP_C').setLogic( GAPC & physcond).setTriggerType(TT.calo)
326  MenuItem('L1_GAP_AANDC').setLogic( GAPAC & physcond).setTriggerType(TT.calo)
327 
328  MenuItem('L1_eEM1_VjTE200').setLogic( d.eEM1 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
329  MenuItem('L1_eEM1_jTE3_VjTE200').setLogic( d.eEM1 & d.jTE3 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
330  MenuItem('L1_eTAU1_jTE3_VjTE200').setLogic( d.eTAU1 & d.jTE3 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
331  MenuItem('L1_eEM1_jTE3_VjTE200_EMPTY').setLogic( d.eEM1 & d.jTE3 & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
332  MenuItem('L1_eEM1_jTE4_VjTE200').setLogic( d.eEM1 & d.jTE4 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
333  MenuItem('L1_eTAU1_jTE4_VjTE200').setLogic( d.eTAU1 & d.jTE4 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
334  MenuItem('L1_eEM1_jTE4_VjTE200_GAP_AANDC').setLogic( d.eEM1 & d.jTE4 & Not(d.jTE200) & GAPAC & physcond).setTriggerType(TT.calo)
335  MenuItem('L1_eEM1_jTE4_VjTE200_EMPTY').setLogic( d.eEM1 & d.jTE4 & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
336  MenuItem('L1_eEM2_VjTE200').setLogic( d.eEM2 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
337  MenuItem('L1_eEM2_jTE3_VjTE200').setLogic( d.eEM2 & d.jTE3 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
338  MenuItem('L1_eEM2_jTE4_VjTE200').setLogic( d.eEM2 & d.jTE4 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
339  MenuItem('L1_eEM2_jTE4_VjTE200_GAP_AANDC').setLogic( d.eEM2 & d.jTE4 & Not(d.jTE200) & GAPAC & physcond).setTriggerType(TT.calo)
340  MenuItem('L1_eEM5_VjTE200').setLogic( d.eEM5 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
341  MenuItem('L1_eEM5_VjTE200_GAP_AANDC').setLogic( d.eEM5 & Not(d.jTE200) & GAPAC & physcond).setTriggerType(TT.calo)
342  MenuItem('L1_2eEM1_VjTE200').setLogic( d.eEM1.x(2) & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
343  MenuItem('L1_2eEM2_VjTE200').setLogic( d.eEM2.x(2) & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
344  MenuItem('L1_2eEM1_VjTE200_EMPTY').setLogic( d.eEM1.x(2) & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
345  MenuItem('L1_2eEM1_VjTE200_UNPAIRED_ISO').setLogic( d.eEM1.x(2) & Not(d.jTE200) & unpaired_isocond).setTriggerType(TT.calo)
346  MenuItem('L1_2eEM1_VjTE200_UNPAIRED_NONISO').setLogic( d.eEM1.x(2) & Not(d.jTE200) & unpaired_nonisocond).setTriggerType(TT.calo)
347  MenuItem('L1_2eTAU1_VjTE200').setLogic( d.eTAU1.x(2) & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
348  MenuItem('L1_2eTAU1_VjTE200_EMPTY').setLogic( d.eTAU1.x(2) & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
349  MenuItem('L1_2eTAU1_VjTE200_UNPAIRED_ISO').setLogic( d.eTAU1.x(2) & Not(d.jTE200) & unpaired_isocond).setTriggerType(TT.calo)
350  MenuItem('L1_2eTAU1_VjTE200_UNPAIRED_NONISO').setLogic( d.eTAU1.x(2) & Not(d.jTE200) & unpaired_nonisocond).setTriggerType(TT.calo)
351  MenuItem('L1_eTAU1_TRT_VjTE200_EMPTY').setLogic( d.eTAU1 & d.NIMTRT & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
352  MenuItem('L1_eTAU1_TRT_VjTE200_UNPAIRED_ISO').setLogic( d.eTAU1 & d.NIMTRT & Not(d.jTE200) & unpaired_isocond).setTriggerType(TT.calo)
353  MenuItem('L1_eTAU1_TRT_VjTE200_UNPAIRED_NONISO').setLogic( d.eTAU1 & d.NIMTRT & Not(d.jTE200) & unpaired_nonisocond).setTriggerType(TT.calo)
354  MenuItem('L1_2eEM1_VjTE200_GAP_AANDC').setLogic( d.eEM1.x(2) & Not(d.jTE200) & GAPAC & physcond).setTriggerType(TT.calo)
355  MenuItem('L1_2eTAU1_VjTE200_GAP_AANDC').setLogic( d.eTAU1.x(2) & Not(d.jTE200) & GAPAC & physcond).setTriggerType(TT.calo)
356  MenuItem('L1_eEM9_VjTE200').setLogic( d.eEM9 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
357  MenuItem('L1_eEM9_VjTE200_EMPTY').setLogic( d.eEM9 & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
358  MenuItem('L1_eEM1_TRT_VjTE50').setLogic( d.eEM1 & d.NIMTRT & Not(d.jTE50) & physcond)
359  MenuItem('L1_eTAU1_TRT_VjTE50').setLogic( d.eTAU1 & d.NIMTRT & Not(d.jTE50) & physcond)
360 
361  MenuItem('L1_eEM2_VjTE200_EMPTY' ).setLogic( d.eEM2 & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
362  MenuItem('L1_eEM5_VjTE200_EMPTY' ).setLogic( d.eEM5 & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
363 
364  MenuItem('L1_eTAU2_VjTE200' ).setLogic( d.eTAU2 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
365  MenuItem('L1_eTAU2_VjTE200_EMPTY' ).setLogic( d.eTAU2 & Not(d.jTE200) & cosmiccond).setTriggerType(TT.calo)
366  MenuItem('L1_2eTAU2_VjTE200' ).setLogic( d.eTAU2.x(2) & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
367 
368  #mixed items: eEM + legacy TE (ATR-22067), HI run 2023
369  MenuItem('L1_eEM1_TE4_VTE200').setLogic( d.eEM1 & d.TE4 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
370  MenuItem('L1_eEM2_TE4_VTE200').setLogic( d.eEM2 & d.TE4 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
371  MenuItem('L1_eEM1_TE4_VTE200_EMPTY').setLogic( d.eEM1 & d.TE4 & Not(d.TE200) & cosmiccond).setTriggerType(TT.calo)
372  MenuItem('L1_eEM1_VTE200').setLogic( d.eEM1 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
373  MenuItem('L1_2eEM1_VTE200').setLogic( d.eEM1.x(2) & Not(d.TE200) & physcond).setTriggerType(TT.calo)
374  MenuItem('L1_2eEM2_VTE200').setLogic( d.eEM2.x(2) & Not(d.TE200) & physcond).setTriggerType(TT.calo)
375  MenuItem('L1_eEM1_VZDC_A_VZDC_C_VTE100' ).setLogic( d.eEM1 & PHYS_VZDC_A_VZDC_C & Not(d.TE100) & physcond)
376  MenuItem('L1_eEM1_ZDC_XOR4_VTE100' ).setLogic( d.eEM1 & PHYS_ZDC_XOR4 & Not(d.TE100) & physcond)
377  MenuItem('L1_eEM2_VZDC_A_VZDC_C_VTE100' ).setLogic( d.eEM2 & PHYS_VZDC_A_VZDC_C & Not(d.TE100) & physcond)
378  MenuItem('L1_eEM2_ZDC_XOR4_VTE100' ).setLogic( d.eEM2 & PHYS_ZDC_XOR4 & Not(d.TE100) & physcond)
379  MenuItem('L1_eEM9_VTE200').setLogic( d.eEM9 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
380 
381  MenuItem('L1_VjTE200_GAP_A' ).setLogic( Not(d.jTE200) & GAPA & physcond).setTriggerType( TT.calo )
382  MenuItem('L1_VjTE200_GAP_C' ).setLogic( Not(d.jTE200) & GAPC & physcond).setTriggerType( TT.calo )
383  MenuItem('L1_jTE3_VjTE200_GAP_A' ).setLogic( d.jTE3 & Not(d.jTE200) & GAPA & physcond).setTriggerType( TT.calo )
384  MenuItem('L1_jTE3_VjTE200_GAP_C' ).setLogic( d.jTE3 & Not(d.jTE200) & GAPC & physcond).setTriggerType( TT.calo )
385  MenuItem('L1_jTE5_VjTE200' ).setLogic( d.jTE5 & Not(d.jTE200) & physcond).setTriggerType( TT.calo )
386  MenuItem('L1_jTE5_VjTE200_GAP_A' ).setLogic( d.jTE5 & Not(d.jTE200) & GAPA & physcond).setTriggerType( TT.calo )
387  MenuItem('L1_jTE5_VjTE200_GAP_C' ).setLogic( d.jTE5 & Not(d.jTE200) & GAPC & physcond).setTriggerType( TT.calo )
388  MenuItem('L1_gTE5_VjTE200' ).setLogic( d.gTE5 & Not(d.jTE200) & physcond).setTriggerType( TT.calo )
389 
390  # NSW Monitoring
391  MenuItem('L1_NSW_MONITOR').setLogic(d.NSWMon & physcond ).setTriggerType(TT.nsw)
392 
393  # MUON ctpid=[0x20;0x2f]
394  # RUn3 thresholds
395  MenuItem('L1_MU3V' ).setLogic( d.MU3V & physcond).setTriggerType(TT.muon) # ~ Run2 MU4 eff
396  MenuItem('L1_MU5VF' ).setLogic( d.MU5VF & physcond).setTriggerType(TT.muon) # ~ Run2 MU6
397  MenuItem('L1_MU8F' ).setLogic( d.MU8F & physcond).setTriggerType(TT.muon) # ~ Run2 MU10
398  MenuItem('L1_MU8VF' ).setLogic( d.MU8VF & physcond).setTriggerType(TT.muon) # ~ Run2 MU11
399  MenuItem('L1_MU14FCH' ).setLogic( d.MU14FCH & physcond).setTriggerType(TT.muon) # ~ Run2 MU20
400  MenuItem('L1_MU14FCHR' ).setLogic( d.MU14FCHR & physcond).setTriggerType(TT.muon) # ~ Run2 MU21
401 
402  MenuItem('L1_MU3VF' ).setLogic( d.MU3VF & physcond).setTriggerType(TT.muon) # ~ Run2 MU4 rate
403  MenuItem('L1_MU8FC' ).setLogic( d.MU8FC & physcond).setTriggerType(TT.muon) # Backup MU8F
404  MenuItem('L1_MU8VFC' ).setLogic( d.MU8VFC & physcond).setTriggerType(TT.muon) # Backup MU8VF
405  MenuItem('L1_MU15VFCH' ).setLogic( d.MU15VFCH & physcond).setTriggerType(TT.muon) #
406 
407  MenuItem('L1_MU10BOM' ).setLogic( d.MU10BOM & physcond).setTriggerType(TT.muon) # Barrel-only close-by muons
408  MenuItem('L1_MU20VFC' ).setLogic( d.MU20VFC & physcond).setTriggerType(TT.muon) # alignment with toroid off
409 
410  MenuItem('L1_MU10BO' ).setLogic( d.MU10BO & physcond).setTriggerType(TT.muon)
411  MenuItem('L1_MU4BOM' ).setLogic( d.MU4BOM & physcond).setTriggerType(TT.muon) # Barrel-only close-by muons
412  MenuItem('L1_MU12BOM' ).setLogic( d.MU12BOM & physcond).setTriggerType(TT.muon) # Barrel-only close-by muons
413 
414  # test items
415  MenuItem('L1_MU3VC' ).setLogic( d.MU3VC & physcond).setTriggerType(TT.muon)
416  MenuItem('L1_MU4BO' ).setLogic( d.MU4BO & physcond).setTriggerType(TT.muon)
417  MenuItem('L1_MU3EOF' ).setLogic( d.MU3EOF & physcond).setTriggerType(TT.muon)
418  MenuItem('L1_MU8FH' ).setLogic( d.MU8FH & physcond).setTriggerType(TT.muon)
419  MenuItem('L1_MU8EOF' ).setLogic( d.MU8EOF & physcond).setTriggerType(TT.muon)
420  MenuItem('L1_MU9VF' ).setLogic( d.MU9VF & physcond).setTriggerType(TT.muon)
421  MenuItem('L1_MU9VFC' ).setLogic( d.MU9VFC & physcond).setTriggerType(TT.muon)
422  MenuItem('L1_MU12FCH' ).setLogic( d.MU12FCH & physcond).setTriggerType(TT.muon)
423  MenuItem('L1_MU14EOF' ).setLogic( d.MU14EOF & physcond).setTriggerType(TT.muon)
424  MenuItem('L1_MU15VFCHR' ).setLogic( d.MU15VFCHR & physcond).setTriggerType(TT.muon)
425  MenuItem('L1_MU18VFCH' ).setLogic( d.MU18VFCH & physcond).setTriggerType(TT.muon)
426 
427  MenuItem('L1_2MU3V' ).setLogic( d.MU3V.x(2) & physcond).setTriggerType(TT.muon)
428  MenuItem('L1_2MU3VF' ).setLogic( d.MU3VF.x(2) & physcond).setTriggerType(TT.muon)
429  MenuItem('L1_2MU5VF' ).setLogic( d.MU5VF.x(2) & physcond).setTriggerType(TT.muon)
430  MenuItem('L1_2MU8F' ).setLogic( d.MU8F.x(2) & physcond).setTriggerType(TT.muon)
431  MenuItem('L1_2MU8VF' ).setLogic( d.MU8VF.x(2) & physcond).setTriggerType(TT.muon)
432  MenuItem('L1_2MU14FCH' ).setLogic( d.MU14FCH.x(2) & physcond).setTriggerType(TT.muon)
433  MenuItem('L1_MU5VF_2MU3V' ).setLogic( d.MU5VF & d.MU3V.x(2) & physcond).setTriggerType(TT.muon)
434  MenuItem('L1_MU5VF_2MU3VF' ).setLogic( d.MU5VF & d.MU3VF.x(2) & physcond).setTriggerType(TT.muon)
435  MenuItem('L1_MU8F_2MU3V' ).setLogic( d.MU8F & d.MU3V.x(2) & physcond).setTriggerType(TT.muon)
436  MenuItem('L1_MU8F_2MU5VF' ).setLogic( d.MU8F & d.MU5VF.x(2) & physcond).setTriggerType(TT.muon)
437  MenuItem('L1_MU8VF_2MU5VF' ).setLogic( d.MU8VF & d.MU5VF.x(2) & physcond).setTriggerType(TT.muon)
438  MenuItem('L1_MU5VF_3MU3V' ).setLogic( d.MU5VF & d.MU3V.x(3) & physcond).setTriggerType(TT.muon)
439  MenuItem('L1_MU5VF_3MU3VF' ).setLogic( d.MU5VF & d.MU3VF.x(3) & physcond).setTriggerType(TT.muon)
440  MenuItem('L1_3MU3V' ).setLogic( d.MU3V.x(3) & physcond).setTriggerType(TT.muon)
441  MenuItem('L1_3MU3VF' ).setLogic( d.MU3VF.x(3) & physcond).setTriggerType(TT.muon)
442  MenuItem('L1_3MU5VF' ).setLogic( d.MU5VF.x(3) & physcond).setTriggerType(TT.muon)
443  MenuItem('L1_4MU3V' ).setLogic( d.MU3V.x(4) & physcond).setTriggerType(TT.muon)
444  MenuItem('L1_2MU5VF_3MU3V' ).setLogic( d.MU5VF.x(2) & d.MU3V.x(3) & physcond).setTriggerType(TT.muon)
445 
446  MenuItem('L1_2MU14FCH_OVERLAY').setLogic( d.MU14FCH.x(2) & physcond).setTriggerType(TT.zerobs)
447 
448  MenuItem('L1_LLPDPHI-jXE40-jJ40').setLogic( d.TOPO_0DPHI10_jXE40delay_jJ40s & physcond)
449  MenuItem('L1_LLPNODPHI-jXE40-jJ40').setLogic( d.TOPO_0DPHI99_jXE40delay_jJ40s & physcond)
450 
451  # HI
452  MenuItem('L1_MU3V_VTE10' ).setLogic( d.MU3V & Not(d.TE10) & physcond).setTriggerType(TT.muon)
453  MenuItem('L1_2MU3V_VTE10').setLogic( d.MU3V.x(2) & Not(d.TE10) & physcond).setTriggerType(TT.muon)
454  MenuItem('L1_2MU3V_VTE50').setLogic( d.MU3V.x(2) & Not(d.TE50) & physcond).setTriggerType(TT.muon)
455  MenuItem('L1_MU3V_TE10' ).setLogic( d.MU3V & d.TE10 & physcond).setTriggerType(TT.muon)
456  MenuItem('L1_MU3V_TE20' ).setLogic( d.MU3V & d.TE20 & physcond).setTriggerType(TT.muon)
457  MenuItem('L1_MU3V_TE30' ).setLogic( d.MU3V & d.TE30 & physcond).setTriggerType(TT.muon)
458  MenuItem('L1_MU3V_TE40' ).setLogic( d.MU3V & d.TE40 & physcond).setTriggerType(TT.muon)
459  MenuItem('L1_MU3V_TE50' ).setLogic( d.MU3V & d.TE50 & physcond).setTriggerType(TT.muon)
460  MenuItem('L1_MU3V_TE70' ).setLogic( d.MU3V & d.TE70 & physcond).setTriggerType(TT.muon)
461  MenuItem('L1_MU3V_TE90' ).setLogic( d.MU3V & d.TE90 & physcond).setTriggerType(TT.muon)
462  MenuItem('L1_MU3V_TE120' ).setLogic( d.MU3V & d.TE120 & physcond).setTriggerType(TT.muon)
463  MenuItem('L1_MU3V_TE160' ).setLogic( d.MU3V & d.TE160 & physcond).setTriggerType(TT.muon)
464  MenuItem('L1_MU3V_TE10p24ETA49' ).setLogic( d.MU3V & d.TE1024ETA49 & physcond).setTriggerType(TT.muon)
465  MenuItem('L1_MU3V_TE15p24ETA49' ).setLogic( d.MU3V & d.TE1524ETA49 & physcond).setTriggerType(TT.muon)
466  MenuItem('L1_MU3V_TE20p24ETA49' ).setLogic( d.MU3V & d.TE2024ETA49 & physcond).setTriggerType(TT.muon)
467  MenuItem('L1_MU3V_TE25p24ETA49' ).setLogic( d.MU3V & d.TE2524ETA49 & physcond).setTriggerType(TT.muon)
468  MenuItem('L1_MU3V_TE30p24ETA49' ).setLogic( d.MU3V & d.TE3024ETA49 & physcond).setTriggerType(TT.muon)
469  MenuItem('L1_MU3V_TE35p24ETA49' ).setLogic( d.MU3V & d.TE3524ETA49 & physcond).setTriggerType(TT.muon)
470  MenuItem('L1_MU3V_TE40p24ETA49' ).setLogic( d.MU3V & d.TE4024ETA49 & physcond).setTriggerType(TT.muon)
471  MenuItem('L1_MU3V_VTE50' ).setLogic( d.MU3V & Not(d.TE50) & physcond).setTriggerType(TT.muon)
472  MenuItem('L1_MU3V_VTE200' ).setLogic( d.MU3V & Not(d.TE200) & physcond).setTriggerType(TT.muon)
473  MenuItem('L1_MU5VF_VTE50').setLogic( d.MU5VF & Not(d.TE50) & physcond).setTriggerType(TT.muon)
474 
475  MenuItem('L1_MU3V_UNPAIRED_ISO' ).setLogic(d.MU3V & unpaired_isocond ).setTriggerType( TT.muon )
476  MenuItem('L1_MU3V_UNPAIRED_NONISO').setLogic(d.MU3V & unpaired_nonisocond).setTriggerType( TT.muon )
477  MenuItem('L1_MU3V_EMPTY' ).setLogic(d.MU3V & cosmiccond).setTriggerType( TT.muon )
478  MenuItem('L1_MU5VF_EMPTY' ).setLogic(d.MU5VF & cosmiccond).setTriggerType( TT.muon )
479  MenuItem('L1_MU3V_FIRSTEMPTY' ).setLogic(d.MU3V & firstempty).setTriggerType( TT.muon )
480  MenuItem('L1_MU5VF_FIRSTEMPTY' ).setLogic(d.MU5VF & firstempty).setTriggerType( TT.muon )
481  MenuItem('L1_MU8F_EMPTY' ).setLogic(d.MU8F & cosmiccond).setTriggerType( TT.muon )
482  MenuItem('L1_MU8VF_EMPTY' ).setLogic(d.MU8VF & cosmiccond).setTriggerType( TT.muon )
483  MenuItem('L1_MU14FCH_FIRSTEMPTY' ).setLogic(d.MU14FCH & firstempty).setTriggerType(TT.muon)
484  MenuItem('L1_MU14FCH_EMPTY' ).setLogic(d.MU14FCH & cosmiccond).setTriggerType(TT.muon)
485  MenuItem('L1_MU14FCH_UNPAIRED_ISO').setLogic(d.MU14FCH & unpaired_isocond).setTriggerType(TT.muon)
486  MenuItem('L1_MU14FCHR_FIRSTEMPTY' ).setLogic(d.MU14FCHR & firstempty).setTriggerType(TT.muon)
487  MenuItem('L1_2MU3V_EMPTY' ).setLogic(d.MU3V.x(2) & cosmiccond).setTriggerType( TT.muon )
488  MenuItem('L1_2MU5VF_UNPAIRED_ISO' ).setLogic(d.MU5VF.x(2) & unpaired_isocond).setTriggerType( TT.muon )
489  MenuItem('L1_2MU5VF_UNPAIRED_NONISO').setLogic(d.MU5VF.x(2) & unpaired_nonisocond).setTriggerType( TT.muon )
490  MenuItem('L1_2MU5VF_EMPTY' ).setLogic(d.MU5VF.x(2) & cosmiccond).setTriggerType( TT.muon )
491  MenuItem('L1_2MU5VF_FIRSTEMPTY' ).setLogic(d.MU5VF.x(2) & firstempty).setTriggerType( TT.muon )
492 
493  # HI - phase-1
494  MenuItem('L1_MU3V_VjTE50' ).setLogic( d.MU3V & Not(d.jTE50) & physcond).setTriggerType(TT.muon)
495  MenuItem('L1_MU3V_VjTE200' ).setLogic( d.MU3V & Not(d.jTE200) & physcond).setTriggerType(TT.muon)
496  MenuItem('L1_MU5VF_VjTE50').setLogic( d.MU5VF & Not(d.jTE50) & physcond).setTriggerType(TT.muon)
497  MenuItem('L1_2MU3V_VjTE50').setLogic( d.MU3V.x(2) & Not(d.jTE50) & physcond).setTriggerType(TT.muon)
498  MenuItem('L1_MU3V_VjTE50_GAP_AANDC' ).setLogic( d.MU3V & Not(d.jTE50) & GAPAC & physcond).setTriggerType(TT.muon)
499 
500 
501  # EM and MU
502  MenuItem('L1_EM3_MU14FCH' ).setLogic( d.EM3 & d.MU14FCH & physcond).setTriggerType(TT.muon)
503  MenuItem('L1_2eEM10L_MU8F' ).setLogic( d.eEM10L.x(2) & d.MU8F & physcond).setTriggerType(TT.muon)
504  MenuItem('L1_eEM18L_MU8F' ).setLogic( d.eEM18L & d.MU8F & physcond).setTriggerType(TT.muon)
505 
506  # TAU ctpid=[0x40:0x4f]
507  MenuItem('L1_TAU2' ).setLogic( d.HA2 & physcond).setTriggerType( TT.calo )
508  MenuItem('L1_TAU3' ).setLogic( d.HA3 & physcond).setTriggerType( TT.calo )
509  # ATR-19359
510  MenuItem('L1_TAU5' ).setLogic( d.HA5 & physcond).setTriggerType( TT.calo )
511  MenuItem('L1_2TAU5' ).setLogic( d.HA5.x(2) & physcond).setTriggerType(TT.calo)
512  MenuItem('L1_TAU6' ).setLogic( d.HA6 & physcond).setTriggerType( TT.calo )
513  MenuItem('L1_TAU8' ).setLogic( d.HA8 & physcond).setTriggerType( TT.calo )
514  MenuItem('L1_2TAU8' ).setLogic( d.HA8.x(2) & physcond).setTriggerType(TT.calo)
515 
516  MenuItem('L1_TAU12' ).setLogic( d.HA12 & physcond).setTriggerType( TT.calo )
517  MenuItem('L1_TAU12IL').setLogic( d.HA12IL & physcond).setTriggerType( TT.calo )
518  MenuItem('L1_TAU12IM').setLogic( d.HA12IM & physcond).setTriggerType( TT.calo )
519  MenuItem('L1_TAU12IT').setLogic( d.HA12IT & physcond).setTriggerType( TT.calo )
520  MenuItem('L1_TAU12I' ).setLogic( d.HA12I & physcond).setTriggerType( TT.calo )
521  MenuItem('L1_TAU15' ).setLogic( d.HA15 & physcond).setTriggerType( TT.calo )
522 
523  MenuItem('L1_TAU20' ).setLogic( d.HA20 & physcond).setTriggerType( TT.calo )
524  MenuItem('L1_TAU20IL').setLogic( d.HA20IL & physcond).setTriggerType( TT.calo )
525  MenuItem('L1_TAU20IM').setLogic( d.HA20IM & physcond).setTriggerType( TT.calo )
526  MenuItem('L1_TAU20IT').setLogic( d.HA20IT & physcond).setTriggerType( TT.calo )
527 
528  MenuItem('L1_TAU20A' ).setLogic( d.HA20A & physcond).setTriggerType( TT.calo )
529  MenuItem('L1_TAU20C' ).setLogic( d.HA20C & physcond).setTriggerType( TT.calo )
530 
531  MenuItem('L1_TAU25' ).setLogic( d.HA25 & physcond).setTriggerType( TT.calo )
532  MenuItem('L1_TAU25IT').setLogic( d.HA25IT & physcond).setTriggerType( TT.calo )
533  MenuItem('L1_TAU25IM').setLogic( d.HA25IM & physcond).setTriggerType( TT.calo )
534  MenuItem('L1_TAU30' ).setLogic( d.HA30 & physcond).setTriggerType( TT.calo )
535  MenuItem('L1_TAU40' ).setLogic( d.HA40 & physcond).setTriggerType( TT.calo )
536  MenuItem('L1_TAU60' ).setLogic( d.HA60 & physcond).setTriggerType( TT.calo )
537  MenuItem('L1_TAU100' ).setLogic( d.HA100 & physcond).setTriggerType( TT.calo )
538  MenuItem('L1_TAU90' ).setLogic( d.HA90 & physcond).setTriggerType( TT.calo )
539 
540  MenuItem('L1_TAU8_UNPAIRED_ISO' ).setLogic( d.HA8 & unpaired_isocond ).setTriggerType( TT.calo )
541 
542  MenuItem('L1_TAU8_UNPAIRED_NONISO').setLogic( d.HA8 & unpaired_nonisocond ).setTriggerType( TT.calo )
543  MenuItem('L1_TAU8_EMPTY' ).setLogic( d.HA8 & cosmiccond ).setTriggerType( TT.calo )
544  MenuItem('L1_TAU8_FIRSTEMPTY' ).setLogic( d.HA8 & firstempty ).setTriggerType( TT.calo )
545 
546  MenuItem('L1_TAU12_UNPAIRED_ISO' ).setLogic( d.HA12 & unpaired_isocond ).setTriggerType( TT.calo )
547  MenuItem('L1_TAU12_UNPAIRED_NONISO').setLogic( d.HA12 & unpaired_nonisocond ).setTriggerType( TT.calo )
548  MenuItem('L1_TAU12_EMPTY' ).setLogic( d.HA12 & cosmiccond ).setTriggerType( TT.calo )
549  MenuItem('L1_TAU12_FIRSTEMPTY' ).setLogic( d.HA12 & firstempty ).setTriggerType( TT.calo )
550  MenuItem('L1_TAU30_EMPTY' ).setLogic( d.HA30 & cosmiccond ).setTriggerType( TT.calo )
551  MenuItem('L1_TAU30_UNPAIRED_ISO' ).setLogic( d.HA30 & unpaired_isocond ).setTriggerType( TT.calo )
552  MenuItem('L1_TAU40_EMPTY' ).setLogic( d.HA40 & cosmiccond ).setTriggerType( TT.calo )
553  MenuItem('L1_TAU40_UNPAIRED_ISO' ).setLogic( d.HA40 & unpaired_isocond ).setTriggerType( TT.calo )
554 
555  #Phase-I
556  MenuItem('L1_eTAU1' ).setLogic( d.eTAU1 & physcond).setTriggerType( TT.calo )
557  MenuItem('L1_eTAU2' ).setLogic( d.eTAU2 & physcond).setTriggerType( TT.calo )
558  MenuItem('L1_TEA_eTAU2').setLogic( d.eTAU2 & TeATIME & physcond).setTriggerType( TT.calo )
559  MenuItem('L1_ESP_eTAU2').setLogic( d.eTAU2 & gESPRESSO & physcond).setTriggerType( TT.calo )
560  MenuItem('L1_eTAU12' ).setLogic( d.eTAU12 & physcond).setTriggerType( TT.calo )
561  MenuItem('L1_eTAU20' ).setLogic( d.eTAU20 & physcond).setTriggerType( TT.calo )
562  MenuItem('L1_eTAU20L' ).setLogic( d.eTAU20L & physcond).setTriggerType( TT.calo )
563  MenuItem('L1_eTAU20M' ).setLogic( d.eTAU20M & physcond).setTriggerType( TT.calo )
564  MenuItem('L1_jTAU1' ).setLogic( d.jTAU1 & physcond).setTriggerType( TT.calo )
565  MenuItem('L1_jTAU20' ).setLogic( d.jTAU20 & physcond).setTriggerType( TT.calo )
566  MenuItem('L1_jTAU30' ).setLogic( d.jTAU30 & physcond).setTriggerType( TT.calo )
567  MenuItem('L1_jTAU30M' ).setLogic( d.jTAU30M & physcond).setTriggerType( TT.calo )
568  MenuItem('L1_cTAU12M' ).setLogic( d.cTAU12M & physcond).setTriggerType( TT.calo )
569  MenuItem('L1_cTAU20M' ).setLogic( d.cTAU20M & physcond).setTriggerType( TT.calo )
570  MenuItem('L1_eTAU30' ).setLogic( d.eTAU30 & physcond).setTriggerType( TT.calo )
571  MenuItem('L1_cTAU30M' ).setLogic( d.cTAU30M & physcond).setTriggerType( TT.calo )
572  MenuItem('L1_eTAU35' ).setLogic( d.eTAU35 & physcond).setTriggerType( TT.calo )
573  MenuItem('L1_cTAU35M' ).setLogic( d.cTAU35M & physcond).setTriggerType( TT.calo )
574  MenuItem('L1_cTAU50M' ).setLogic( d.cTAU50M & physcond).setTriggerType( TT.calo )
575  MenuItem('L1_eTAU40HM').setLogic( d.eTAU40HM & physcond).setTriggerType( TT.calo )
576  MenuItem('L1_eTAU40HT').setLogic( d.eTAU40HT & physcond).setTriggerType( TT.calo )
577  MenuItem('L1_eTAU60HM').setLogic( d.eTAU60HM & physcond).setTriggerType( TT.calo )
578  MenuItem('L1_eTAU80HL').setLogic( d.eTAU80HL & physcond).setTriggerType( TT.calo )
579  MenuItem('L1_eTAU60HL').setLogic( d.eTAU60HL & physcond).setTriggerType( TT.calo )
580  MenuItem('L1_eTAU60' ).setLogic( d.eTAU60 & physcond).setTriggerType( TT.calo )
581  MenuItem('L1_eTAU70' ).setLogic( d.eTAU70 & physcond).setTriggerType( TT.calo )
582  MenuItem('L1_eTAU80' ).setLogic( d.eTAU80 & physcond).setTriggerType( TT.calo )
583  MenuItem('L1_eTAU140' ).setLogic( d.eTAU140 & physcond).setTriggerType( TT.calo )
584 
585  MenuItem('L1_eTAU1_EMPTY').setLogic(d.eTAU1 & cosmiccond).setTriggerType(TT.calo)
586  MenuItem('L1_eTAU2_EMPTY').setLogic(d.eTAU2 & cosmiccond).setTriggerType(TT.calo)
587  MenuItem('L1_eTAU12_EMPTY').setLogic(d.eTAU12 & cosmiccond).setTriggerType(TT.calo)
588  MenuItem('L1_eTAU12_FIRSTEMPTY').setLogic(d.eTAU12 & firstempty).setTriggerType(TT.calo)
589  MenuItem('L1_eTAU12_UNPAIRED_ISO').setLogic(d.eTAU12 & unpaired_isocond).setTriggerType(TT.calo)
590  MenuItem('L1_eTAU60_EMPTY').setLogic(d.eTAU60 & cosmiccond).setTriggerType(TT.calo)
591  MenuItem('L1_eTAU60_UNPAIRED_ISO').setLogic(d.eTAU60 & unpaired_isocond).setTriggerType(TT.calo)
592 
593  # Phase-I 2xTAU
594  MenuItem('L1_cTAU30M_2cTAU20M').setLogic(d.cTAU30M & d.cTAU20M.x(2) & physcond).setTriggerType(TT.calo)
595  MenuItem('L1_cTAU35M_2cTAU30M').setLogic(d.cTAU35M & d.cTAU30M.x(2) & physcond).setTriggerType(TT.calo)
596  MenuItem('L1_eTAU80_2eTAU60').setLogic(d.eTAU80 & d.eTAU60.x(2) & physcond).setTriggerType(TT.calo)
597  MenuItem('L1_cTAU30M_2cTAU20M_4jJ30p0ETA25').setLogic(d.cTAU30M & d.cTAU20M.x(2) & d.jJ300ETA25.x(4) & physcond).setTriggerType(TT.calo)
598  MenuItem('L1_cTAU35M_2cTAU30M_2jJ55_3jJ50').setLogic(d.cTAU35M & d.cTAU30M.x(2) & d.jJ55.x(2) & d.jJ50.x(3) & physcond).setTriggerType(TT.calo)
599  # ATR-29439
600  MenuItem('L1_cTAU30M_2cTAU20M_3jJ30p0ETA25').setLogic(d.cTAU30M & d.cTAU20M.x(2) & d.jJ300ETA25.x(3) & physcond).setTriggerType(TT.calo)
601 
602  #UPC TAU
603  MenuItem('L1_2TAU1_VTE50' ).setLogic( d.HA1.x(2) & Not(d.TE50) & physcond).setTriggerType(TT.calo)
604  MenuItem('L1_2TAU2_VTE50' ).setLogic( d.HA2.x(2) & Not(d.TE50) & physcond).setTriggerType(TT.calo)
605  MenuItem('L1_2TAU3_VTE50' ).setLogic( d.HA3.x(2) & Not(d.TE50) & physcond).setTriggerType(TT.calo)
606  MenuItem('L1_2TAU2_VTE100').setLogic( d.HA2.x(2) & Not(d.TE100) & physcond).setTriggerType(TT.calo)
607  MenuItem('L1_2TAU3_VTE100').setLogic( d.HA3.x(2) & Not(d.TE100) & physcond).setTriggerType(TT.calo)
608  MenuItem('L1_2TAU1_VTE200').setLogic( d.HA1.x(2) & Not(d.TE200) & physcond).setTriggerType(TT.calo)
609  MenuItem('L1_2TAU2_VTE200').setLogic( d.HA2.x(2) & Not(d.TE200) & physcond).setTriggerType(TT.calo)
610  MenuItem('L1_2TAU3_VTE200').setLogic( d.HA3.x(2) & Not(d.TE200) & physcond).setTriggerType(TT.calo)
611 
612  MenuItem('L1_TAU1_VTE200' ).setLogic( d.HA1 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
613  MenuItem('L1_TAU1_TE3_VTE200').setLogic( d.HA1 & d.TE3 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
614  MenuItem('L1_TAU1_TE4_VTE200').setLogic( d.HA1 & d.TE4 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
615  MenuItem('L1_TAU2_TE3_VTE200').setLogic( d.HA2 & d.TE3 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
616  MenuItem('L1_TAU2_TE4_VTE200').setLogic( d.HA2 & d.TE4 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
617  MenuItem('L1_TAU1_TE5_VTE200').setLogic( d.HA1 & d.TE5 & Not(d.TE200) & physcond).setTriggerType(TT.calo)
618  MenuItem('L1_TAU1_VTE200_EMPTY' ).setLogic( d.HA1 & Not(d.TE200) & cosmiccond).setTriggerType( TT.calo )
619  MenuItem('L1_TAU1_TE3_VTE200_EMPTY' ).setLogic( d.HA1 & d.TE3 & Not(d.TE200) & cosmiccond).setTriggerType( TT.calo )
620  MenuItem('L1_TAU2_TE3_VTE200_EMPTY' ).setLogic( d.HA2 & d.TE3 & Not(d.TE200) & cosmiccond).setTriggerType( TT.calo )
621  MenuItem('L1_TAU1_TE4_VTE200_EMPTY' ).setLogic( d.HA1 & d.TE4 & Not(d.TE200) & cosmiccond).setTriggerType( TT.calo )
622  MenuItem('L1_TAU2_TE4_VTE200_EMPTY' ).setLogic( d.HA2 & d.TE4 & Not(d.TE200) & cosmiccond).setTriggerType( TT.calo )
623  MenuItem('L1_2TAU1_VTE200_EMPTY').setLogic( d.HA1.x(2) & Not(d.TE200) & cosmiccond).setTriggerType(TT.calo)
624  MenuItem('L1_2TAU1_VTE200_UNPAIRED_ISO').setLogic( d.HA1.x(2) & Not(d.TE200) & unpaired_isocond ).setTriggerType(TT.calo)
625  MenuItem('L1_2TAU1_VTE200_UNPAIRED_NONISO').setLogic( d.HA1.x(2) & Not(d.TE200) & unpaired_nonisocond ).setTriggerType(TT.calo)
626  MenuItem('L1_TAU8_VTE200' ).setLogic( d.HA8 & Not(d.TE200) & physcond).setTriggerType( TT.calo )
627  MenuItem('L1_TAU8_VTE200_EMPTY' ).setLogic( d.HA8 & Not(d.TE200) & cosmiccond).setTriggerType( TT.calo )
628 
629  # 3xTAU
630  MenuItem('L1_TAU20_2TAU12' ).setLogic( d.HA20 & d.HA12.x(2) & physcond).setTriggerType( TT.calo )
631  MenuItem('L1_TAU20_2TAU12I' ).setLogic( d.HA20 & d.HA12I.x(2) & physcond).setTriggerType( TT.calo )
632  MenuItem('L1_TAU40_2TAU20IM' ).setLogic( d.HA40 & d.HA20IM.x(2) & physcond).setTriggerType( TT.calo )
633  MenuItem('L1_TAU20IM_2TAU12IM' ).setLogic( d.HA20IM & d.HA12IM.x(2) & physcond).setTriggerType( TT.calo )
634 
635  # mixed tau
636  MenuItem('L1_EM15VHI_2TAU12' ).setLogic( d.EM15VHI & d.HA12.x(2) & physcond).setTriggerType( TT.calo )
637  MenuItem('L1_EM15VHI_2TAU12IL' ).setLogic( d.EM15VHI & d.HA12IL.x(2) & physcond).setTriggerType( TT.calo )
638  MenuItem('L1_EM15VHI_2TAU12IM' ).setLogic( d.EM15VHI & d.HA12IM.x(2) & physcond).setTriggerType( TT.calo )
639  MenuItem('L1_EM15VHI_TAU40_2TAU15' ).setLogic( d.EM15VHI & d.HA40 & d.HA15.x(2) & physcond).setTriggerType( TT.calo )
640  MenuItem('L1_EM15VHI_2TAU12I_J25_2J15_3J12').setLogic( d.EM15VHI & d.HA12I.x(2) & d.J25 & d.J15.x(2) & d.J12.x(3) & physcond).setTriggerType( TT.calo )
641  MenuItem('L1_EM15VHI_2TAU12IM_J25_3J12' ).setLogic( d.EM15VHI & d.HA12IM.x(2) & d.J25 & d.J12.x(3) & physcond).setTriggerType( TT.calo )
642  MenuItem('L1_EM15VHI_2TAU12IL_J25_3J12' ).setLogic( d.EM15VHI & d.HA12IL.x(2) & d.J25 & d.J12.x(3) & physcond).setTriggerType( TT.calo )
643  MenuItem('L1_EM15VHI_2TAU12_J25_3J12' ).setLogic( d.EM15VHI & d.HA12.x(2) & d.J25 & d.J12.x(3) & physcond).setTriggerType( TT.calo )
644  MenuItem('L1_EM15VHI_2TAU12IM_4J12' ).setLogic( d.EM15VHI & d.HA12IM.x(2) & d.J12.x(4) & physcond).setTriggerType( TT.calo )
645 
646  #Phase-I mixed tau
647  MenuItem('L1_eEM18M_2eTAU20M' ).setLogic( d.eEM18M & d.eTAU20M.x(2) & physcond).setTriggerType( TT.calo )
648  MenuItem('L1_MU8F_eTAU20M' ).setLogic( d.MU8F & d.eTAU20M & physcond).setTriggerType( TT.calo )
649  MenuItem('L1_MU8F_cTAU20M' ).setLogic( d.MU8F & d.cTAU20M & physcond).setTriggerType( TT.calo )
650  MenuItem('L1_MU8F_eTAU20M_jJ55_2jJ30' ).setLogic( d.MU8F & d.eTAU20M & d.jJ55 & d.jJ30.x(2) & physcond).setTriggerType( TT.calo )
651  MenuItem('L1_MU8F_cTAU20M_jJ55_2jJ30' ).setLogic( d.MU8F & d.cTAU20M & d.jJ55 & d.jJ30.x(2) & physcond).setTriggerType( TT.calo )
652  MenuItem('L1_MU8F_eTAU20M_3jJ30' ).setLogic( d.MU8F & d.eTAU20M & d.jJ30.x(3) & physcond).setTriggerType( TT.calo )
653  MenuItem('L1_MU8F_cTAU20M_3jJ30' ).setLogic( d.MU8F & d.eTAU20M & d.jJ30.x(3) & physcond).setTriggerType( TT.calo )
654  MenuItem('L1_eEM18M_2eTAU20M_jJ55_3jJ30' ).setLogic( d.eEM18M & d.eTAU20M.x(2) & d.jJ55 & d.jJ30.x(3) & physcond).setTriggerType( TT.calo )
655  MenuItem('L1_MU8F_eTAU30M' ).setLogic( d.MU8F & d.eTAU30M & physcond).setTriggerType( TT.calo )
656  MenuItem('L1_MU8F_cTAU30M' ).setLogic( d.MU8F & d.cTAU30M & physcond).setTriggerType( TT.calo )
657  MenuItem('L1_eTAU30M_2eTAU20M_jJ55_2jJ50_3jJ30').setLogic( d.eTAU30M & d.eTAU20M.x(2) & d.jJ55 & d.jJ50.x(2) & d.jJ30.x(3) & physcond).setTriggerType( TT.calo )
658  MenuItem('L1_cTAU30M_2cTAU20M_jJ55_2jJ50_3jJ30').setLogic( d.cTAU30M & d.cTAU20M.x(2) & d.jJ55.x(1) & d.jJ50.x(2) & d.jJ30.x(3) & physcond).setTriggerType( TT.calo )
659  MenuItem('L1_eTAU35M_2eTAU30M' ).setLogic( d.eTAU35M & d.eTAU30M.x(2) & physcond).setTriggerType( TT.calo )
660  MenuItem('L1_eTAU30M_2jJ50_jXE90' ).setLogic( d.eTAU30M & d.jJ50.x(2) & d.jXE90 & physcond).setTriggerType( TT.calo )
661  MenuItem('L1_eEM18M_2eTAU20M_jXE70' ).setLogic( d.eEM18M & d.eTAU20M.x(2) & d.jXE70 & physcond).setTriggerType( TT.calo )
662  MenuItem('L1_eEM18M_2cTAU20M_jXE70' ).setLogic( d.eEM18M & d.cTAU20M.x(2) & d.jXE70 & physcond).setTriggerType( TT.calo )
663  MenuItem('L1_eEM18M_2eTAU20M_4jJ30' ).setLogic( d.eEM18M & d.eTAU20M.x(2) & d.jJ30.x(4) & physcond).setTriggerType( TT.calo )
664  MenuItem('L1_eEM18M_2cTAU20M_4jJ30' ).setLogic( d.eEM18M & d.cTAU20M.x(2) & d.jJ30.x(4) & physcond).setTriggerType( TT.calo )
665  MenuItem('L1_MU8F_eTAU20M_jXE70' ).setLogic( d.MU8F & d.eTAU20M & d.jXE70 & physcond).setTriggerType( TT.calo )
666  MenuItem('L1_MU8F_cTAU20M_jXE70' ).setLogic( d.MU8F & d.cTAU20M & d.jXE70 & physcond).setTriggerType( TT.calo )
667  MenuItem('L1_eTAU30M_2eTAU20M_jXE70' ).setLogic( d.eTAU30M & d.eTAU20M.x(2) & d.jXE70 & physcond).setTriggerType( TT.calo )
668  MenuItem('L1_cTAU30M_2cTAU20M_jXE70' ).setLogic( d.cTAU30M & d.cTAU20M.x(2) & d.jXE70 & physcond).setTriggerType( TT.calo )
669  MenuItem('L1_eTAU60_2eTAU20M_jXE80' ).setLogic( d.eTAU60 & d.eTAU20M.x(2) & d.jXE80 & physcond).setTriggerType( TT.calo )
670  MenuItem('L1_eTAU60_2cTAU20M_jXE80' ).setLogic( d.eTAU60 & d.cTAU20M.x(2) & d.jXE80 & physcond).setTriggerType( TT.calo )
671 
672  MenuItem('L1_MU8F_TAU12' ).setLogic( d.MU8F & d.HA12 & physcond).setTriggerType( TT.calo )
673  MenuItem('L1_MU8F_TAU12IM' ).setLogic( d.MU8F & d.HA12IM & physcond).setTriggerType( TT.calo )
674  MenuItem('L1_MU8F_TAU20' ).setLogic( d.MU8F & d.HA20 & physcond).setTriggerType( TT.calo )
675  MenuItem('L1_MU8F_TAU20IM' ).setLogic( d.MU8F & d.HA20IM & physcond).setTriggerType( TT.calo )
676  MenuItem('L1_MU8VF_TAU20IM' ).setLogic( d.MU8VF & d.HA20IM & physcond).setTriggerType( TT.calo )
677  MenuItem('L1_MU14FCH_TAU12IM' ).setLogic( d.MU14FCH & d.HA12IM & physcond).setTriggerType( TT.calo)
678  MenuItem('L1_MU8F_TAU12_J25_2J12' ).setLogic( d.MU8F & d.HA12 & d.J25 & d.J12.x(2) & physcond).setTriggerType( TT.calo )
679  MenuItem('L1_MU8F_TAU12IM_J25_2J12').setLogic( d.MU8F & d.HA12IM & d.J25 & d.J12.x(2) & physcond).setTriggerType( TT.calo )
680  MenuItem('L1_MU8F_TAU12IM_3J12' ).setLogic( d.MU8F & d.HA12IM & d.J12.x(3) & physcond).setTriggerType( TT.calo )
681  MenuItem('L1_TAU25IM_2TAU20IM_2J25_3J20').setLogic( d.HA25IM & d.HA20IM.x(2) & d.J25.x(2) & d.J20.x(3) & physcond).setTriggerType( TT.calo )
682  MenuItem('L1_TAU20_2TAU12I_J25_2J15_3J12' ).setLogic( d.HA20 & d.HA12I.x(2) & d.J25 & d.J15.x(2) & d.J12.x(3) & physcond).setTriggerType( TT.calo )
683  MenuItem('L1_TAU20_2TAU12_J25_2J20_3J12' ).setLogic( d.HA20 & d.HA12.x(2) & d.J25 & d.J20.x(2) & d.J12.x(3) & physcond).setTriggerType( TT.calo )
684  MenuItem('L1_TAU20IM_2TAU12IM_J25_2J20_3J12').setLogic( d.HA20IM & d.HA12IM.x(2) & d.J25 & d.J20.x(2) & d.J12.x(3) & physcond).setTriggerType( TT.calo )
685  MenuItem('L1_TAU20IL_2TAU12IL_J25_2J20_3J12').setLogic( d.HA20IL & d.HA12IL.x(2) & d.J25 & d.J20.x(2) & d.J12.x(3) & physcond).setTriggerType( TT.calo )
686 
687  MenuItem('L1_TAU25IT_2TAU12IT_2J25_3J12').setLogic( d.HA25IT & d.HA12IT.x(2) & d.J25.x(2) & d.J12.x(3) & physcond).setTriggerType( TT.calo )
688  MenuItem('L1_TAU25IM_2TAU12IM_J25_3J12' ).setLogic( d.HA25IM & d.HA12IM.x(2) & d.J25 & d.J12.x(3) & physcond).setTriggerType( TT.calo )
689  MenuItem('L1_TAU25IM_2TAU20IM').setLogic( d.HA25IM & d.HA20IM.x(2) & physcond).setTriggerType( TT.calo )
690  MenuItem('L1_TAU20IM_2TAU12IM_4J12' ).setLogic( d.HA20IM & d.HA12IM.x(2) & d.J12.x(4) & physcond).setTriggerType( TT.calo )
691  MenuItem('L1_TAU20IM_2TAU12IM_4J12p0ETA25').setLogic( d.HA20IM & d.HA12IM.x(2) & d.J120ETA25.x(4) & physcond).setTriggerType( TT.calo )
692  MenuItem('L1_TAU20IM_2TAU12IM_4J12p0ETA28').setLogic( d.HA20IM & d.HA12IM.x(2) & d.J120ETA28.x(4) & physcond).setTriggerType( TT.calo )
693  MenuItem('L1_TAU60_2TAU40' ).setLogic( d.HA60 & d.HA40.x(2) & physcond).setTriggerType( TT.calo )
694  MenuItem('L1_2TAU12I_TAU20_J25_2J15_3J12' ).setLogic( d.HA12I.x(2) & d.HA20 & d.J25 & d.J15.x(2) & d.J12.x(3) & physcond).setTriggerType( TT.calo )
695  MenuItem('L1_2TAU20IM_3J20' ).setLogic( d.HA20IM.x(2) & d.J20.x(3) & physcond).setTriggerType( TT.calo )
696  MenuItem('L1_2TAU20IM_J25_3J20' ).setLogic( d.HA20IM.x(2) & d.J25 & d.J20.x(3) & physcond).setTriggerType( TT.calo )
697 
698  MenuItem('L1_TAU20_2J20_XE45' ).setLogic( d.HA20 & d.J20.x(2) & d.XE45 & physcond).setTriggerType( TT.calo )
699  MenuItem('L1_TAU20IM_2J20_XE45' ).setLogic( d.HA20IM & d.J20.x(2) & d.XE45 & physcond).setTriggerType( TT.calo )
700  MenuItem('L1_TAU25_2J20_XE45' ).setLogic( d.HA25 & d.J20.x(2) & d.XE45 & physcond).setTriggerType( TT.calo )
701  MenuItem('L1_TAU20_2TAU12_XE35' ).setLogic( d.HA20 & d.HA12.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
702  MenuItem('L1_TAU20IM_2TAU12IM_XE35' ).setLogic( d.HA20IM & d.HA12IM.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
703  MenuItem('L1_TAU20IL_2TAU12IL_XE35' ).setLogic( d.HA20IL & d.HA12IL.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
704  MenuItem('L1_TAU20IT_2TAU12IT_XE35' ).setLogic( d.HA20IT & d.HA12IT.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
705  MenuItem('L1_TAU20IM_2TAU12IM_XE40' ).setLogic( d.HA20IM & d.HA12IM.x(2) & d.XE40 & physcond).setTriggerType( TT.calo )
706  MenuItem('L1_TAU40_2TAU12IM_XE40' ).setLogic( d.HA40 & d.HA12IM.x(2) & d.XE40 & physcond).setTriggerType( TT.calo )
707 
708  MenuItem('L1_MU8F_TAU12I_XE35' ).setLogic( d.MU8F & d.HA12I & d.XE35 & physcond).setTriggerType( TT.calo )
709  MenuItem('L1_MU8F_TAU12_XE35' ).setLogic( d.MU8F & d.HA12 & d.XE35 & physcond).setTriggerType( TT.calo )
710  MenuItem('L1_MU8F_TAU12IL_XE35' ).setLogic( d.MU8F & d.HA12IL & d.XE35 & physcond).setTriggerType( TT.calo )
711  MenuItem('L1_MU8F_TAU12IM_XE35' ).setLogic( d.MU8F & d.HA12IM & d.XE35 & physcond).setTriggerType( TT.calo )
712  MenuItem('L1_MU8F_TAU12IT_XE35' ).setLogic( d.MU8F & d.HA12IT & d.XE35 & physcond).setTriggerType( TT.calo )
713  MenuItem('L1_MU8F_TAU12IM_XE40' ).setLogic( d.MU8F & d.HA12IM & d.XE40 & physcond).setTriggerType( TT.calo )
714  MenuItem('L1_TAU20I_2TAU12I_XE35' ).setLogic( d.HA20I & d.HA12I.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
715 
716  MenuItem('L1_EM15VHI_TAU20IM_2TAU15_J25_2J20_3J15').setLogic( d.EM15VHI & d.HA20IM & d.HA15.x(2) & d.J25 & d.J20.x(2) & d.J15.x(3) & physcond).setTriggerType( TT.calo )
717  MenuItem('L1_EM15VHI_2TAU12I_XE35' ).setLogic( d.EM15VHI & d.HA12I.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
718  MenuItem('L1_EM15VHI_2TAU12IM_XE35' ).setLogic( d.EM15VHI & d.HA12IM.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
719  MenuItem('L1_EM15VHI_2TAU12IL_XE35' ).setLogic( d.EM15VHI & d.HA12IL.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
720  MenuItem('L1_EM15VHI_2TAU12_XE35' ).setLogic( d.EM15VHI & d.HA12.x(2) & d.XE35 & physcond).setTriggerType( TT.calo )
721 
722  # JET ctpid=[0x60:0x7f]
723  MenuItem('L1_J5' ).setLogic( d.J5 & physcond).setTriggerType(TT.calo)
724  MenuItem('L1_J10' ).setLogic( d.J10 & physcond).setTriggerType(TT.calo)
725  MenuItem('L1_J12' ).setLogic( d.J12 & physcond).setTriggerType(TT.calo)
726  MenuItem('L1_J15' ).setLogic( d.J15 & physcond).setTriggerType(TT.calo)
727  MenuItem('L1_J20' ).setLogic( d.J20 & physcond).setTriggerType(TT.calo)
728  MenuItem('L1_J25' ).setLogic( d.J25 & physcond).setTriggerType(TT.calo)
729  MenuItem('L1_J30' ).setLogic( d.J30 & physcond).setTriggerType(TT.calo)
730  MenuItem('L1_J35' ).setLogic( d.J35 & physcond).setTriggerType(TT.calo)
731  MenuItem('L1_J40' ).setLogic( d.J40 & physcond).setTriggerType(TT.calo)
732  MenuItem('L1_J50' ).setLogic( d.J50 & physcond).setTriggerType(TT.calo)
733  MenuItem('L1_J60' ).setLogic( d.J60 & physcond).setTriggerType(TT.calo)
734  MenuItem('L1_J75' ).setLogic( d.J75 & physcond).setTriggerType(TT.calo)
735  MenuItem('L1_J75A' ).setLogic( d.J75A & physcond).setTriggerType(TT.calo)
736  MenuItem('L1_J75C' ).setLogic( d.J75C & physcond).setTriggerType(TT.calo)
737  MenuItem('L1_J85' ).setLogic( d.J85 & physcond).setTriggerType(TT.calo)
738  MenuItem('L1_J100' ).setLogic( d.J100 & physcond).setTriggerType(TT.calo)
739  MenuItem('L1_J120' ).setLogic( d.J120 & physcond).setTriggerType(TT.calo)
740  MenuItem('L1_J150' ).setLogic( d.J150 & physcond).setTriggerType(TT.calo)
741  MenuItem('L1_J175' ).setLogic( d.J175 & physcond).setTriggerType(TT.calo)
742  MenuItem('L1_J250' ).setLogic( d.J250 & physcond).setTriggerType(TT.calo)
743  MenuItem('L1_J400' ).setLogic( d.J400 & physcond).setTriggerType(TT.calo)
744  MenuItem('L1_J400_LAR' ).setLogic( d.J400 & physcond).setTriggerType(TT.lardigital) # ATR-22344
745 
746  MenuItem('L1_jJ5').setLogic(d.jJ5 & physcond).setTriggerType(TT.calo)
747  MenuItem('L1_jJ5_EMPTY').setLogic(d.jJ5 & cosmiccond).setTriggerType(TT.calo)
748  MenuItem('L1_TEA_jJ5').setLogic(d.jJ5 & TeATIME & physcond).setTriggerType(TT.calo)
749  MenuItem('L1_ESP_jJ5').setLogic(d.jJ5 & gESPRESSO & physcond).setTriggerType(TT.calo)
750  MenuItem('L1_jJ5p30ETA49').setLogic(d.jJ530ETA49 & physcond).setTriggerType(TT.calo)
751  MenuItem('L1_TEA_jJ5p30ETA49').setLogic(d.jJ530ETA49 & TeATIME & physcond).setTriggerType(TT.calo)
752  MenuItem('L1_ESP_jJ5p30ETA49').setLogic(d.jJ530ETA49 & gESPRESSO & physcond).setTriggerType(TT.calo)
753  MenuItem('L1_jJ10' ).setLogic( d.jJ10 & physcond).setTriggerType(TT.calo)
754  MenuItem('L1_jJ10_EMPTY' ).setLogic( d.jJ10 & cosmiccond).setTriggerType(TT.calo)
755  MenuItem('L1_jJ10p30ETA49' ).setLogic( d.jJ1030ETA49 & physcond).setTriggerType(TT.calo)
756  MenuItem('L1_jJ20' ).setLogic( d.jJ20 & physcond).setTriggerType(TT.calo)
757  MenuItem('L1_jJ30' ).setLogic( d.jJ30 & physcond).setTriggerType(TT.calo)
758  MenuItem('L1_jJ30_EMPTY' ).setLogic( d.jJ30 & cosmiccond).setTriggerType(TT.calo)
759  MenuItem('L1_jJ30_FIRSTEMPTY' ).setLogic( d.jJ30 & firstempty).setTriggerType(TT.calo)
760  MenuItem('L1_jJ30_UNPAIRED_ISO' ).setLogic( d.jJ30 & unpaired_isocond).setTriggerType(TT.calo)
761  MenuItem('L1_jJ30_UNPAIRED_NONISO' ).setLogic( d.jJ30 & unpaired_nonisocond).setTriggerType(TT.calo)
762  MenuItem('L1_jJ30_BGRP12' ).setLogic( d.jJ30 & bgrp12cond).setTriggerType(TT.calo)
763  MenuItem('L1_jJ30_UNPAIREDB1' ).setLogic( d.jJ30 & bgrp13cond).setTriggerType(TT.calo)
764  MenuItem('L1_jJ30_UNPAIREDB2' ).setLogic( d.jJ30 & bgrp14cond).setTriggerType(TT.calo)
765  MenuItem('L1_jJ30p0ETA25' ).setLogic( d.jJ300ETA25 & physcond).setTriggerType(TT.calo)
766  MenuItem('L1_jJ40' ).setLogic( d.jJ40 & physcond).setTriggerType(TT.calo)
767  MenuItem('L1_jJ40p0ETA25' ).setLogic( d.jJ400ETA25 & physcond).setTriggerType(TT.calo)
768  MenuItem('L1_jJ40p30ETA49' ).setLogic( d.jJ4030ETA49 & physcond).setTriggerType(TT.calo)
769  MenuItem('L1_jJ40p30ETA49_UNPAIRED_ISO').setLogic( d.jJ4030ETA49 & unpaired_isocond).setTriggerType(TT.calo)
770  MenuItem('L1_jJ50' ).setLogic( d.jJ50 & physcond).setTriggerType(TT.calo)
771  MenuItem('L1_jJ50p0ETA25' ).setLogic( d.jJ500ETA25 & physcond).setTriggerType(TT.calo)
772  MenuItem('L1_jJ50p30ETA49' ).setLogic( d.jJ5030ETA49 & physcond).setTriggerType(TT.calo)
773  MenuItem('L1_jJ55' ).setLogic( d.jJ55 & physcond).setTriggerType(TT.calo)
774  MenuItem('L1_jJ55p0ETA23' ).setLogic( d.jJ550ETA23 & physcond).setTriggerType(TT.calo)
775  MenuItem('L1_jJ60' ).setLogic( d.jJ60 & physcond).setTriggerType(TT.calo)
776  MenuItem('L1_jJ60p30ETA49' ).setLogic( d.jJ6030ETA49 & physcond).setTriggerType(TT.calo)
777  MenuItem('L1_jJ60p30ETA49_EMPTY' ).setLogic( d.jJ6030ETA49 & cosmiccond).setTriggerType(TT.calo)
778  MenuItem('L1_jJ60p30ETA49_UNPAIRED_ISO' ).setLogic( d.jJ6030ETA49 & unpaired_isocond).setTriggerType(TT.calo)
779  MenuItem('L1_jJ60p30ETA49_UNPAIRED_NONISO' ).setLogic( d.jJ6030ETA49 & unpaired_nonisocond).setTriggerType(TT.calo)
780  MenuItem('L1_jJ70p0ETA23' ).setLogic( d.jJ700ETA23 & physcond).setTriggerType(TT.calo)
781  MenuItem('L1_jJ80' ).setLogic( d.jJ80 & physcond).setTriggerType(TT.calo)
782  MenuItem('L1_jJ80p0ETA25' ).setLogic( d.jJ800ETA25 & physcond).setTriggerType(TT.calo)
783  MenuItem('L1_jJ85p0ETA21' ).setLogic( d.jJ850ETA21 & physcond).setTriggerType(TT.calo)
784  MenuItem('L1_jJ90' ).setLogic( d.jJ90 & physcond).setTriggerType(TT.calo)
785  MenuItem('L1_jJ90_UNPAIRED_ISO' ).setLogic( d.jJ90 & unpaired_isocond).setTriggerType(TT.calo)
786  MenuItem('L1_jJ90_UNPAIRED_NONISO' ).setLogic( d.jJ90 & unpaired_nonisocond).setTriggerType(TT.calo)
787  MenuItem('L1_jJ90_2jJ80p0ETA25_3jJ40p0ETA25').setLogic( d.jJ90 & d.jJ800ETA25.x(2) & d.jJ400ETA25.x(3) & physcond).setTriggerType(TT.calo)
788  MenuItem('L1_jJ90p30ETA49' ).setLogic( d.jJ9030ETA49 & physcond).setTriggerType(TT.calo)
789  MenuItem('L1_jJ125' ).setLogic( d.jJ125 & physcond).setTriggerType(TT.calo)
790  MenuItem('L1_jJ125p30ETA49' ).setLogic( d.jJ12530ETA49 & physcond).setTriggerType(TT.calo)
791  MenuItem('L1_jJ140' ).setLogic( d.jJ140 & physcond).setTriggerType(TT.calo)
792  MenuItem('L1_jJ160' ).setLogic( d.jJ160 & physcond).setTriggerType(TT.calo)
793  MenuItem('L1_jJ160_FIRSTEMPTY').setLogic( d.jJ160 & firstempty).setTriggerType(TT.calo)
794  MenuItem('L1_jJ180' ).setLogic( d.jJ180 & physcond).setTriggerType(TT.calo)
795  MenuItem('L1_jJ500' ).setLogic( d.jJ500 & physcond).setTriggerType(TT.calo)
796  MenuItem('L1_jJ500_LAR' ).setLogic( d.jJ500 & physcond).setTriggerType(TT.lardigital) # ATR-22344
797 
798  MenuItem('L1_4jJ40' ).setLogic( d.jJ40.x(4) & physcond).setTriggerType(TT.calo)
799  MenuItem('L1_3jJ55p0ETA23' ).setLogic( d.jJ550ETA23.x(3) & physcond).setTriggerType(TT.calo)
800  MenuItem('L1_4jJ40p0ETA25' ).setLogic( d.jJ400ETA25.x(4) & physcond).setTriggerType(TT.calo)
801  MenuItem('L1_6jJ40' ).setLogic( d.jJ40.x(6) & physcond).setTriggerType(TT.calo)
802  MenuItem('L1_5jJ40p0ETA25' ).setLogic( d.jJ400ETA25.x(5) & physcond).setTriggerType(TT.calo)
803  MenuItem('L1_4jJ50' ).setLogic( d.jJ50.x(4) & physcond).setTriggerType(TT.calo)
804  MenuItem('L1_3jJ90' ).setLogic( d.jJ90.x(3) & physcond).setTriggerType(TT.calo)
805  MenuItem('L1_3jJ70p0ETA23' ).setLogic( d.jJ700ETA23.x(3) & physcond).setTriggerType(TT.calo)
806  MenuItem('L1_jJ140_3jJ60' ).setLogic( d.jJ140 & d.jJ60.x(3) & physcond).setTriggerType(TT.calo)
807  MenuItem('L1_jJ80p0ETA25_2jJ55_jJ50p30ETA49' ).setLogic( d.jJ800ETA25 & d.jJ55.x(2) & d.jJ5030ETA49 & physcond).setTriggerType(TT.calo)
808  MenuItem('L1_jJ55p0ETA23_2jJ40p30ETA49' ).setLogic( d.jJ550ETA23 & d.jJ4030ETA49.x(2) & physcond).setTriggerType(TT.calo)
809  MenuItem('L1_jJ80p0ETA25_2jJ40p30ETA49' ).setLogic( d.jJ800ETA25 & d.jJ4030ETA49.x(2) & physcond).setTriggerType(TT.calo)
810  MenuItem('L1_jJ85p0ETA21_3jJ40p0ETA25' ).setLogic( d.jJ850ETA21 & d.jJ400ETA25.x(3) & physcond).setTriggerType(TT.calo)
811  MenuItem('L1_3jJ40p0ETA25' ).setLogic( d.jJ400ETA25.x(3) & physcond).setTriggerType(TT.calo)
812  MenuItem('L1_2jJ56p0ETA49' ).setLogic( d.jJ560ETA49.x(2) & physcond).setTriggerType(TT.calo) # prospective Run 4 L1 item, ATR-30180
813 
814  MenuItem('L1_jJ60_EMPTY' ).setLogic( d.jJ60 & cosmiccond ).setTriggerType(TT.calo)
815  MenuItem('L1_jJ60_FIRSTEMPTY').setLogic( d.jJ60 & firstempty ).setTriggerType(TT.calo)
816 
817  MenuItem('L1_MU3V_jJ20' ).setLogic( d.MU3V & d.jJ20 & physcond).setTriggerType(TT.calo) # added temporarily
818  MenuItem('L1_MU3V_jJ30' ).setLogic( d.MU3V & d.jJ30 & physcond).setTriggerType(TT.calo) # added temporarily
819  MenuItem('L1_MU3V_jJ40' ).setLogic( d.MU3V & d.jJ40 & physcond).setTriggerType(TT.calo)
820  MenuItem('L1_MU3V_jJ50' ).setLogic( d.MU3V & d.jJ50 & physcond).setTriggerType(TT.calo)
821  MenuItem('L1_MU3V_jJ60' ).setLogic( d.MU3V & d.jJ60 & physcond).setTriggerType(TT.calo)
822  MenuItem('L1_MU5VF_jJ80' ).setLogic( d.MU5VF & d.jJ80 & physcond).setTriggerType(TT.calo)
823 
824 
825  MenuItem('L1_gJ20p0ETA25' ).setLogic( d.gJ200ETA25 & physcond).setTriggerType(TT.calo)
826  MenuItem('L1_gJ20p25ETA49' ).setLogic( d.gJ2025ETA49 & physcond).setTriggerType(TT.calo)
827  MenuItem('L1_gJ20p0ETA25_EMPTY' ).setLogic( d.gJ200ETA25 & cosmiccond).setTriggerType(TT.calo)
828  MenuItem('L1_gJ50p0ETA25' ).setLogic( d.gJ500ETA25 & physcond).setTriggerType(TT.calo)
829  MenuItem('L1_gJ100p0ETA25' ).setLogic( d.gJ1000ETA25 & physcond).setTriggerType(TT.calo)
830  MenuItem('L1_gJ400p0ETA25' ).setLogic( d.gJ4000ETA25 & physcond).setTriggerType(TT.calo)
831 
832  MenuItem('L1_gLJ80p0ETA25' ).setLogic( d.gLJ800ETA25 & physcond).setTriggerType(TT.calo)
833  MenuItem('L1_gLJ90p0ETA25' ).setLogic( d.gLJ900ETA25 & physcond).setTriggerType(TT.calo) # prospective Run 4 L1 item, ATR-30180
834  MenuItem('L1_gLJ100p0ETA25' ).setLogic( d.gLJ1000ETA25 & physcond).setTriggerType(TT.calo)
835  MenuItem('L1_gLJ140p0ETA25' ).setLogic( d.gLJ1400ETA25 & physcond).setTriggerType(TT.calo)
836  MenuItem('L1_gLJ160p0ETA25' ).setLogic( d.gLJ1600ETA25 & physcond).setTriggerType(TT.calo)
837 
838  MenuItem('L1_jEM25' ).setLogic( d.jEM25 & physcond).setTriggerType(TT.calo)
839  MenuItem('L1_jEM20M' ).setLogic( d.jEM20M & physcond).setTriggerType(TT.calo)
840  MenuItem('L1_jEM35' ).setLogic( d.jEM35 & physcond).setTriggerType(TT.calo) # prospective Run 4 L1 item, ATR-30180
841 
842  MenuItem('L1_J10p31ETA49').setLogic( d.J1031ETA49 & physcond).setTriggerType(TT.calo)
843  MenuItem('L1_J75p31ETA49').setLogic( d.J7531ETA49 & physcond).setTriggerType(TT.calo)
844 
845 
846  MenuItem('L1_J10_UNPAIRED_ISO' ).setLogic( d.J10 & unpaired_isocond ).setTriggerType(TT.calo)
847  MenuItem('L1_J10_UNPAIRED_NONISO').setLogic( d.J10 & unpaired_nonisocond).setTriggerType(TT.calo)
848  MenuItem('L1_J10_EMPTY' ).setLogic( d.J10 & cosmiccond ).setTriggerType(TT.calo)
849  MenuItem('L1_J10_FIRSTEMPTY' ).setLogic( d.J10 & firstempty ).setTriggerType(TT.calo)
850 
851  MenuItem('L1_J12_UNPAIRED_ISO' ).setLogic( d.J12 & unpaired_isocond ).setTriggerType(TT.calo)
852  MenuItem('L1_J12_UNPAIRED_NONISO' ).setLogic( d.J12 & unpaired_nonisocond).setTriggerType(TT.calo)
853  MenuItem('L1_J12_EMPTY' ).setLogic( d.J12 & cosmiccond ).setTriggerType(TT.calo)
854  MenuItem('L1_J12_FIRSTEMPTY' ).setLogic( d.J12 & firstempty ).setTriggerType(TT.calo)
855  MenuItem('L1_J12_UNPAIREDB1' ).setLogic( d.J12 & bgrp13cond ).setTriggerType(TT.calo)
856  MenuItem('L1_J12_UNPAIREDB2' ).setLogic( d.J12 & bgrp14cond).setTriggerType(TT.calo)
857 
858  MenuItem('L1_J50_UNPAIRED_ISO' ).setLogic( d.J50 & unpaired_isocond ).setTriggerType(TT.calo)
859  MenuItem('L1_J50_UNPAIRED_NONISO' ).setLogic( d.J50 & unpaired_nonisocond).setTriggerType(TT.calo)
860 
861  MenuItem('L1_J12_BGRP12' ).setLogic( d.J12 & bgrp12cond ).setTriggerType(TT.calo)
862  MenuItem('L1_J30p31ETA49_BGRP12').setLogic( d.J3031ETA49 & bgrp12cond ).setTriggerType(TT.calo)
863 
864  MenuItem('L1_J30_EMPTY' ).setLogic( d.J30 & cosmiccond ).setTriggerType(TT.calo)
865  MenuItem('L1_J30_FIRSTEMPTY').setLogic( d.J30 & firstempty ).setTriggerType(TT.calo)
866 
867  MenuItem('L1_J10p31ETA49_EMPTY').setLogic( d.J1031ETA49 & cosmiccond ).setTriggerType(TT.calo)
868  MenuItem('L1_J15p31ETA49_UNPAIRED_ISO').setLogic( d.J1531ETA49 & unpaired_isocond).setTriggerType(TT.calo)
869 
870  MenuItem('L1_J30p31ETA49_EMPTY' ).setLogic( d.J3031ETA49 & cosmiccond ).setTriggerType(TT.calo)
871  MenuItem('L1_J30p31ETA49_FIRSTEMPTY' ).setLogic( d.J3031ETA49 & firstempty ).setTriggerType(TT.calo)
872  MenuItem('L1_J30p31ETA49_UNPAIRED_ISO' ).setLogic( d.J3031ETA49 & unpaired_isocond ).setTriggerType(TT.calo)
873  MenuItem('L1_J30p31ETA49_UNPAIRED_NONISO').setLogic( d.J3031ETA49 & unpaired_nonisocond ).setTriggerType(TT.calo)
874 
875 
876  MenuItem('L1_J100_FIRSTEMPTY').setLogic( d.J100 & firstempty ).setTriggerType(TT.calo)
877 
878  # multi jet
879  MenuItem('L1_2J25p31ETA49' ).setLogic( d.J2531ETA49 & physcond).setTriggerType(TT.calo)
880  MenuItem('L1_2J15' ).setLogic( d.J15.x(2) & physcond).setTriggerType(TT.calo)
881  MenuItem('L1_J15_J15p31ETA49' ).setLogic( d.J15 & d.J1531ETA49 & physcond).setTriggerType(TT.calo)
882  MenuItem('L1_J20_J20p31ETA49' ).setLogic( d.J20 & d.J2031ETA49 & physcond).setTriggerType(TT.calo)
883  MenuItem('L1_3J10' ).setLogic( d.J10.x(3) & physcond).setTriggerType(TT.calo)
884  MenuItem('L1_3J15' ).setLogic( d.J15.x(3) & physcond).setTriggerType(TT.calo)
885  MenuItem('L1_3J20' ).setLogic( d.J20.x(3) & physcond).setTriggerType(TT.calo)
886  MenuItem('L1_3J40' ).setLogic( d.J40.x(3) & physcond).setTriggerType(TT.calo)
887  MenuItem('L1_3J50' ).setLogic( d.J50.x(3) & physcond).setTriggerType(TT.calo)
888  MenuItem('L1_3J75' ).setLogic( d.J75.x(3) & physcond).setTriggerType(TT.calo)
889  MenuItem('L1_4J10' ).setLogic( d.J10.x(4) & physcond).setTriggerType(TT.calo)
890  MenuItem('L1_4J15' ).setLogic( d.J15.x(4) & physcond).setTriggerType(TT.calo)
891  MenuItem('L1_4J20' ).setLogic( d.J20.x(4) & physcond).setTriggerType(TT.calo)
892  MenuItem('L1_4J20p0ETA49').setLogic( d.J200ETA49.x(4) & physcond).setTriggerType(TT.calo)
893  MenuItem('L1_4J30' ).setLogic( d.J30.x(4) & physcond).setTriggerType(TT.calo)
894  MenuItem('L1_6J15' ).setLogic( d.J15.x(6) & physcond).setTriggerType(TT.calo)
895  MenuItem('L1_J75_3J20' ).setLogic( d.J75 & d.J20.x(3) & physcond).setTriggerType(TT.calo)
896  MenuItem('L1_J85_3J30' ).setLogic( d.J85 & d.J30.x(3) & physcond).setTriggerType(TT.calo)
897  MenuItem('L1_J30p0ETA49_2J20p0ETA49' ).setLogic( d.J300ETA49 & d.J200ETA49.x(2) & physcond).setTriggerType(TT.calo)
898  MenuItem('L1_J15p0ETA25_2J15p31ETA49' ).setLogic( d.J150ETA25 & d.J1531ETA49.x(2) & physcond).setTriggerType(TT.calo)
899  MenuItem('L1_J40p0ETA25_2J15p31ETA49' ).setLogic( d.J400ETA25 & d.J1531ETA49.x(2) & physcond).setTriggerType(TT.calo)
900  MenuItem('L1_J40p0ETA25_2J25_J20p31ETA49' ).setLogic( d.J400ETA25 & d.J25.x(2) & d.J2031ETA49 & physcond).setTriggerType(TT.calo)
901  MenuItem('L1_J40p0ETA25_2J30_J20p31ETA49' ).setLogic( d.J400ETA25 & d.J30.x(2) & d.J2031ETA49 & physcond).setTriggerType(TT.calo)
902  MenuItem('L1_J45p0ETA21_3J15p0ETA25' ).setLogic( d.J450ETA21 & d.J150ETA25.x(3) & physcond).setTriggerType(TT.calo)
903  MenuItem('L1_J50_2J40p0ETA25_3J15p0ETA25' ).setLogic( d.J50 & d.J400ETA25.x(2) & d.J150ETA25.x(3) & physcond).setTriggerType(TT.calo)
904 
905  MenuItem('L1_4J17p0ETA22' ).setLogic( d.J170ETA22.x(4) & physcond).setTriggerType(TT.calo)
906  MenuItem('L1_3J25p0ETA23' ).setLogic( d.J250ETA23.x(3) & physcond).setTriggerType(TT.calo)
907  MenuItem('L1_3J35p0ETA23' ).setLogic( d.J350ETA23.x(3) & physcond).setTriggerType(TT.calo)
908  MenuItem('L1_3J15p0ETA25' ).setLogic( d.J150ETA25.x(3) & physcond).setTriggerType(TT.calo)
909  MenuItem('L1_4J15p0ETA25' ).setLogic( d.J150ETA25.x(4) & physcond).setTriggerType(TT.calo)
910  MenuItem('L1_5J15p0ETA25' ).setLogic( d.J150ETA25.x(5) & physcond).setTriggerType(TT.calo)
911 
912  # Legacy ZeroBias
913  if ('Physics_HI_run3_v' in menuName or 'MC_HI_run3_v' in menuName):
914  MenuItem('L1_ZB', ctpid=240).setLogic(d.ZB_J75 & physcond).setTriggerType(TT.zerobs)
915  else:
916  MenuItem('L1_ZB', ctpid=240).setLogic(d.ZB_EM15 & physcond).setTriggerType(TT.zerobs)
917 
918  # Phase-I ZeroBias trigger for commissioning
919  # TODO: When established, replace legacy logic above with corresponding
920  # Phase-I seeds
921  # Unlike legacy ZeroBias, the delay logic is in the CTP firmware, so
922  # we provide the seed rather than a dedicated threshold
923 
924 
925  # LAr Saturation
926  MenuItem('L1_LArSaturation').setLogic( d.LArSaturation & physcond ).setTriggerType(TT.calo)
927 
928  if ('HI_run3_v' in menuName):
929  MenuItem('L1_ZeroBias').setLogic( d.ZeroBiasB & physcond ).setTriggerType(TT.zerobs)
930  else:
931  MenuItem('L1_ZeroBias').setLogic( d.ZeroBiasA & physcond ).setTriggerType(TT.zerobs)
932 
933  # combined jet - xe
934  MenuItem('L1_J40_XE50').setLogic( d.J40 & d.XE50 & physcond).setTriggerType(TT.calo)
935  MenuItem('L1_jJ80_jXE100').setLogic( d.jJ80 & d.jXE100 & physcond).setTriggerType(TT.calo)
936  MenuItem('L1_J40p0ETA25_XE50').setLogic( d.J400ETA25 & d.XE50 & physcond).setTriggerType(TT.calo)
937  MenuItem('L1_J75_XE40' ).setLogic( d.J75 & d.XE40 & physcond).setTriggerType(TT.calo)
938  MenuItem('L1_J75_XE50' ).setLogic( d.J75 & d.XE50 & physcond).setTriggerType(TT.calo)
939  MenuItem('L1_2J15_XE55').setLogic( d.J15.x(2) & d.XE55 & physcond).setTriggerType(TT.calo)
940  MenuItem('L1_2J40_XE45').setLogic( d.J40.x(2) & d.XE45 & physcond).setTriggerType(TT.calo)
941  MenuItem('L1_2J50_XE40').setLogic( d.J50.x(2) & d.XE40 & physcond).setTriggerType(TT.calo)
942  MenuItem('L1_J40_XE60' ).setLogic( d.J40 & d.XE60 & physcond).setTriggerType(TT.calo)
943  MenuItem('L1_J30p0ETA49_XE50').setLogic( d.J300ETA49 & d.XE50 & physcond).setTriggerType(TT.calo)
944  MenuItem('L1_3J15p0ETA25_XE40').setLogic( d.J150ETA25.x(3) & d.XE40 & physcond).setTriggerType(TT.calo)
945  # ATR-27250 Duplicate multijet-seeded triggers to jFEX
946  MenuItem('L1_3jJ40p0ETA25_jXE80').setLogic( d.jJ400ETA25.x(3) & d.jXE80 & physcond).setTriggerType(TT.calo)
947  MenuItem('L1_2jJ90_jXE80').setLogic( d.jJ90.x(2) & d.jXE80 & physcond).setTriggerType(TT.calo)
948  MenuItem('L1_2jJ40_jXE110').setLogic( d.jJ40.x(2) & d.jXE110 & physcond).setTriggerType(TT.calo)
949 
950  # combined em - jet
951  MenuItem('L1_EM18VHI_3J20' ).setLogic( d.EM18VHI & d.J20.x(3) & physcond).setTriggerType(TT.calo)
952  MenuItem('L1_EM20VH_3J20' ).setLogic( d.EM20VH & d.J20.x(3) & physcond).setTriggerType(TT.calo)
953  # combined em - jet Phase-1 ATR-28761
954  MenuItem('L1_eEM22M_3jJ50' ).setLogic( d.eEM22M & d.jJ50.x(3) & physcond).setTriggerType(TT.calo)
955  MenuItem('L1_eEM24L_3jJ50' ).setLogic( d.eEM24L & d.jJ50.x(3) & physcond).setTriggerType(TT.calo)
956 
957 
958  MenuItem('L1_eEM22M_3jJ40p0ETA25' ).setLogic( d.eEM22M & d.jJ400ETA25.x(3) & physcond).setTriggerType(TT.calo)
959  MenuItem('L1_eEM22M_4jJ30p0ETA25' ).setLogic( d.eEM22M & d.jJ300ETA25.x(4) & physcond).setTriggerType(TT.calo)
960 
961  # combined mu - jet
962  MenuItem('L1_MU3V_J12' ).setLogic( d.MU3V & d.J12 & physcond).setTriggerType(TT.calo)
963  MenuItem('L1_MU3V_J15' ).setLogic( d.MU3V & d.J15 & physcond).setTriggerType(TT.calo)
964  MenuItem('L1_MU5VF_J20' ).setLogic( d.MU5VF & d.J20 & physcond).setTriggerType(TT.calo)
965  MenuItem('L1_MU5VF_J30p0ETA49_2J20p0ETA49').setLogic( d.MU5VF & d.J300ETA49 & d.J200ETA49.x(2) & physcond).setTriggerType(TT.calo)
966  MenuItem('L1_MU5VF_J40' ).setLogic( d.MU5VF & d.J40 & physcond).setTriggerType(TT.calo)
967  MenuItem('L1_MU5VF_J75' ).setLogic( d.MU5VF & d.J75 & physcond).setTriggerType(TT.calo)
968  MenuItem('L1_MU3V_3J15' ).setLogic( d.MU3V & d.J15.x(3) & physcond).setTriggerType(TT.calo)
969  MenuItem('L1_MU3V_3J20' ).setLogic( d.MU3V & d.J20.x(3) & physcond).setTriggerType(TT.calo)
970  MenuItem('L1_MU3V_J20' ).setLogic( d.MU3V & d.J20 & physcond).setTriggerType(TT.calo)
971  MenuItem('L1_MU3V_J30' ).setLogic( d.MU3V & d.J30 & physcond).setTriggerType(TT.calo)
972  MenuItem('L1_MU3V_J50' ).setLogic( d.MU3V & d.J50 & physcond).setTriggerType(TT.calo)
973  MenuItem('L1_MU8F_3J20' ).setLogic( d.MU8F & d.J20.x(3) & physcond).setTriggerType(TT.calo)
974  MenuItem('L1_MU8F_2J20' ).setLogic( d.MU8F & d.J20.x(2) & physcond).setTriggerType(TT.calo)
975  MenuItem('L1_MU8F_2J15_J20').setLogic( d.MU8F & d.J15.x(2) & d.J20 & physcond).setTriggerType(TT.calo)
976 
977  MenuItem('L1_MU8F_3jJ50' ).setLogic( d.MU8F & d.jJ50.x(3) & physcond).setTriggerType(TT.calo)
978  MenuItem('L1_MU8F_2jJ50' ).setLogic( d.MU8F & d.jJ50.x(2) & physcond).setTriggerType(TT.calo)
979  MenuItem('L1_MU8F_2jJ40_jJ50').setLogic( d.MU8F & d.jJ40.x(2) & d.jJ50 & physcond).setTriggerType(TT.calo)
980 
981  MenuItem('L1_MU14FCH_J50' ).setLogic( d.MU14FCH & d.J50 & physcond).setTriggerType(TT.calo)
982  MenuItem('L1_MU3V_XE60' ).setLogic( d.MU3V & d.XE60 & physcond).setTriggerType(TT.calo)
983  MenuItem('L1_2MU3V_XE60' ).setLogic( d.MU3V.x(2) & d.XE60 & physcond).setTriggerType(TT.calo)
984  MenuItem('L1_2MU3V_J40_XE50' ).setLogic( d.MU3V.x(2) & d.J40 & d.XE50 & physcond).setTriggerType(TT.calo)
985  MenuItem('L1_MU3V_J50_XE40' ).setLogic( d.MU3V & d.J50 & d.XE40 & physcond).setTriggerType(TT.calo)
986  MenuItem('L1_2MU3V_J40_XE20' ).setLogic( d.MU3V.x(2) & d.J40 & d.XE20 & physcond).setTriggerType(TT.calo)
987  MenuItem('L1_MU14FCH_J40' ).setLogic( d.MU14FCH & d.J40 & physcond).setTriggerType(TT.calo)
988  MenuItem('L1_MU14FCH_XE30').setLogic( d.MU14FCH & d.XE30 & physcond).setTriggerType(TT.calo)
989  MenuItem('L1_MU14FCH_XE40').setLogic( d.MU14FCH & d.XE40 & physcond).setTriggerType(TT.calo)
990  MenuItem('L1_MU14FCH_jJ80' ).setLogic( d.MU14FCH & d.jJ80 & physcond).setTriggerType(TT.calo)
991  MenuItem('L1_MU14FCH_jXE70').setLogic( d.MU14FCH & d.jXE70 & physcond).setTriggerType(TT.calo)
992  MenuItem('L1_MU14FCH_jJ90' ).setLogic( d.MU14FCH & d.jJ90 & physcond).setTriggerType(TT.calo)
993  MenuItem('L1_MU14FCH_jXE80').setLogic( d.MU14FCH & d.jXE80 & physcond).setTriggerType(TT.calo)
994  # ATR-31037
995 
996  #ATR-30618
997  MenuItem('L1_ADVAET').setLogic( d.TOPO_ADVAE2A_6jJ0s_4eTAU0s_4MU0s_jXE0s_Tight & physcond )
998  MenuItem('L1_ADVAEL').setLogic( d.TOPO_ADVAE2A_6jJ0s_4eTAU0s_4MU0s_jXE0s_Loose & physcond )
999  #ATR-31154
1000  MenuItem('L1_ADBDTT').setLogic(d.TOPO_ADBDT_3MU0s_Tight & physcond).setTriggerType(TT.muon)
1001  MenuItem('L1_ADBDTL').setLogic(d.TOPO_ADBDT_3MU0s_Loose & physcond).setTriggerType(TT.muon)
1002 
1003  # HI
1004  MenuItem('L1_J15_NZ' ).setLogic( d.J15 & Not(ZDC_AND) & physcond).setTriggerType(TT.calo)
1005  MenuItem('L1_2J15_NZ').setLogic( d.J15.x(2) & Not(ZDC_AND) & physcond).setTriggerType(TT.calo)
1006 
1007  MenuItem('L1_J15_NL' ).setLogic( d.J15 & Not(d.LUCID_A) & Not(d.LUCID_C) & physcond).setTriggerType(TT.calo)
1008  MenuItem('L1_2J15_NL').setLogic( d.J15.x(2) & Not(d.LUCID_A) & Not(d.LUCID_C) & physcond).setTriggerType(TT.calo)
1009 
1010  # XE
1011  MenuItem('L1_XE35').setLogic( d.XE35 & physcond).setTriggerType(TT.calo)
1012  MenuItem('L1_XE40').setLogic( d.XE40 & physcond).setTriggerType(TT.calo)
1013  MenuItem('L1_XE45').setLogic( d.XE45 & physcond).setTriggerType(TT.calo)
1014  MenuItem('L1_XE50').setLogic( d.XE50 & physcond).setTriggerType(TT.calo)
1015  MenuItem('L1_XE55').setLogic( d.XE55 & physcond).setTriggerType(TT.calo)
1016  MenuItem('L1_XE60').setLogic( d.XE60 & physcond).setTriggerType(TT.calo)
1017  MenuItem('L1_XE70').setLogic( d.XE70 & physcond).setTriggerType(TT.calo)
1018  MenuItem('L1_XE80').setLogic( d.XE80 & physcond).setTriggerType(TT.calo)
1019  # phase1
1020  MenuItem('L1_gXENC70' ).setLogic( d.gXENC70 & physcond).setTriggerType(TT.calo)
1021  MenuItem('L1_gXENC100' ).setLogic( d.gXENC100 & physcond).setTriggerType(TT.calo)
1022  MenuItem('L1_gXEJWOJ60' ).setLogic( d.gXEJWOJ60 & physcond).setTriggerType(TT.calo)
1023  MenuItem('L1_gXEJWOJ70' ).setLogic( d.gXEJWOJ70 & physcond).setTriggerType(TT.calo)
1024  MenuItem('L1_gXEJWOJ80' ).setLogic( d.gXEJWOJ80 & physcond).setTriggerType(TT.calo)
1025  MenuItem('L1_gXEJWOJ100').setLogic( d.gXEJWOJ100 & physcond).setTriggerType(TT.calo)
1026  MenuItem('L1_gXEJWOJ110').setLogic( d.gXEJWOJ110 & physcond).setTriggerType(TT.calo)
1027  MenuItem('L1_gXEJWOJ120').setLogic( d.gXEJWOJ120 & physcond).setTriggerType(TT.calo)
1028  MenuItem('L1_gXEJWOJ500').setLogic( d.gXEJWOJ500 & physcond).setTriggerType(TT.calo)
1029  MenuItem('L1_gMHT500').setLogic( d.gMHT500 & physcond).setTriggerType(TT.calo)
1030  MenuItem('L1_jXE60' ).setLogic( d.jXE60 & physcond).setTriggerType(TT.calo)
1031  MenuItem('L1_jXE70' ).setLogic( d.jXE70 & physcond).setTriggerType(TT.calo)
1032  MenuItem('L1_jXE80' ).setLogic( d.jXE80 & physcond).setTriggerType(TT.calo)
1033  MenuItem('L1_jXE90' ).setLogic( d.jXE90 & physcond).setTriggerType(TT.calo)
1034  MenuItem('L1_jXE100').setLogic( d.jXE100 & physcond).setTriggerType(TT.calo)
1035  MenuItem('L1_jXE110').setLogic( d.jXE110 & physcond).setTriggerType(TT.calo)
1036  MenuItem('L1_jXE120').setLogic( d.jXE120 & physcond).setTriggerType(TT.calo)
1037  MenuItem('L1_jXE500').setLogic( d.jXE500 & physcond).setTriggerType(TT.calo)
1038 
1039  MenuItem('L1_jXEC100' ).setLogic( d.jXEC100 & physcond).setTriggerType(TT.calo)
1040  MenuItem('L1_jXEPerf100' ).setLogic( d.jXEPerf100 & physcond).setTriggerType(TT.calo)
1041 
1042  #ATR-28670- Combined jet - xe
1043  MenuItem('L1_jJ80_jXE120' ).setLogic( d.jJ80 & d.jXE120 & physcond).setTriggerType(TT.calo)
1044 
1045  # phase1 TE
1046  MenuItem('L1_gTE3' ).setLogic( d.gTE3 & physcond).setTriggerType(TT.calo)
1047  MenuItem('L1_gTE5' ).setLogic( d.gTE5 & physcond).setTriggerType(TT.calo)
1048  MenuItem('L1_gTE10' ).setLogic( d.gTE10 & physcond).setTriggerType(TT.calo)
1049  MenuItem('L1_gTE200' ).setLogic( d.gTE200 & physcond).setTriggerType(TT.calo)
1050 
1051  MenuItem('L1_jTE200' ).setLogic( d.jTE200 & physcond).setTriggerType(TT.calo)
1052  MenuItem('L1_jTEC200' ).setLogic( d.jTEC200 & physcond).setTriggerType(TT.calo)
1053  MenuItem('L1_jTEFWD100' ).setLogic( d.jTEFWD100 & physcond).setTriggerType(TT.calo)
1054  MenuItem('L1_jTEFWDA100' ).setLogic( d.jTEFWDA100 & physcond).setTriggerType(TT.calo)
1055  MenuItem('L1_jTEFWDC100' ).setLogic( d.jTEFWDC100 & physcond).setTriggerType(TT.calo)
1056  #ATR-31097
1057  MenuItem('L1_TeAsymmetry-jTENoSort' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet0 & physcond).setTriggerType(TT.calo)
1058  MenuItem('L1_TEA_TeAsymmetry-jTENoSort').setLogic(d.TOPO_TeAsymmetry_jTENoSort_ParamSet0 & TeATIME & physcond).setTriggerType(TT.calo)
1059  MenuItem('L1_ESP_TeAsymmetry-jTENoSort').setLogic(d.TOPO_TeAsymmetry_jTENoSort_ParamSet0 & gESPRESSO & physcond).setTriggerType(TT.calo)
1060  MenuItem('L1_TeATIME-jTENoSort' ).setLogic( TeATIME & physcond).setTriggerType(TT.calo)
1061 
1062  # additional jTE items for 2023 heavy ion runs
1063  MenuItem('L1_jTE3' ).setLogic( d.jTE3 & physcond).setTriggerType(TT.calo)
1064  MenuItem('L1_jTE4' ).setLogic( d.jTE4 & physcond).setTriggerType(TT.calo)
1065  MenuItem('L1_jTE5' ).setLogic( d.jTE5 & physcond).setTriggerType(TT.calo)
1066  MenuItem('L1_jTE10' ).setLogic( d.jTE10 & physcond).setTriggerType(TT.calo)
1067  MenuItem('L1_jTE20' ).setLogic( d.jTE20 & physcond).setTriggerType(TT.calo)
1068  MenuItem('L1_jTE50' ).setLogic( d.jTE50 & physcond).setTriggerType(TT.calo)
1069  MenuItem('L1_jTE100' ).setLogic( d.jTE100 & physcond).setTriggerType(TT.calo)
1070  MenuItem('L1_jTE600' ).setLogic( d.jTE600 & physcond).setTriggerType(TT.calo)
1071  MenuItem('L1_jTE1500' ).setLogic( d.jTE1500 & physcond).setTriggerType(TT.calo)
1072  MenuItem('L1_jTE6500' ).setLogic( d.jTE6500 & physcond).setTriggerType(TT.calo)
1073  # additional VjTE items for 2023 heavy ion runs
1074  MenuItem('L1_VjTE10' ).setLogic( Not(d.jTE10) & physcond).setTriggerType(TT.calo)
1075  MenuItem('L1_VjTE50' ).setLogic( Not(d.jTE50) & physcond).setTriggerType(TT.calo)
1076  MenuItem('L1_VjTE200' ).setLogic( Not(d.jTE200) & physcond).setTriggerType(TT.calo)
1077  MenuItem('L1_VjTE600' ).setLogic( Not(d.jTE600) & physcond).setTriggerType(TT.calo)
1078  MenuItem('L1_jTE50_VjTE600' ).setLogic( d.jTE50 & Not(d.jTE600) & physcond).setTriggerType(TT.calo)
1079  MenuItem('L1_jTE50_VjTE200').setLogic( d.jTE50 & Not(d.jTE200) & physcond).setTriggerType(TT.calo)
1080  # jTEFWD UCC seeds: ATR-30726
1081  MenuItem('L1_jTEFWD2600').setLogic(d.jTEFWD2600 & physcond).setTriggerType(TT.calo)
1082  MenuItem('L1_jTEFWD5600').setLogic(d.jTEFWD5600 & physcond).setTriggerType(TT.calo)
1083  MenuItem('L1_jTEFWD6300').setLogic(d.jTEFWD6300 & physcond).setTriggerType(TT.calo)
1084  MenuItem('L1_jTEFWD6600').setLogic(d.jTEFWD6600 & physcond).setTriggerType(TT.calo)
1085  MenuItem('L1_ZDC_PU_jTEFWD2600').setLogic(d.jTEFWD2600 & ZDC_UCC_PU_REJECT & physcond).setTriggerType(TT.calo)
1086  MenuItem('L1_ZDC_PU_jTEFWD5600').setLogic(d.jTEFWD5600 & ZDC_UCC_PU_REJECT & physcond).setTriggerType(TT.calo)
1087  MenuItem('L1_ZDC_PU_jTEFWD6300').setLogic(d.jTEFWD6300 & ZDC_UCC_PU_REJECT & physcond).setTriggerType(TT.calo)
1088  MenuItem('L1_ZDC_PU_jTEFWD6600').setLogic(d.jTEFWD6600 & ZDC_UCC_PU_REJECT & physcond).setTriggerType(TT.calo)
1089 
1090  MenuItem('L1_XE10').setLogic( d.XE10 & physcond).setTriggerType(TT.calo)
1091  MenuItem('L1_XE20').setLogic( d.XE20 & physcond).setTriggerType(TT.calo)
1092  MenuItem('L1_XE25').setLogic( d.XE25 & physcond).setTriggerType(TT.calo)
1093  MenuItem('L1_XE30').setLogic( d.XE30 & physcond).setTriggerType(TT.calo)
1094  MenuItem('L1_XE65').setLogic( d.XE65 & physcond).setTriggerType(TT.calo)
1095  MenuItem('L1_XE75').setLogic( d.XE75 & physcond).setTriggerType(TT.calo)
1096  MenuItem('L1_XE150').setLogic( d.XE150 & physcond).setTriggerType(TT.calo)
1097  MenuItem('L1_XE300').setLogic( d.XE300 & physcond).setTriggerType(TT.calo)
1098  MenuItem('L1_XE35_BGRP7').setLogic( d.XE35 & bgrp7cond).setTriggerType(TT.calo)
1099  MenuItem('L1_XE40_BGRP7').setLogic( d.XE40 & bgrp7cond).setTriggerType(TT.calo)
1100  MenuItem('L1_XE45_BGRP7').setLogic( d.XE45 & bgrp7cond).setTriggerType(TT.calo)
1101  MenuItem('L1_XE50_BGRP7').setLogic( d.XE50 & bgrp7cond).setTriggerType(TT.calo)
1102  MenuItem('L1_XE55_BGRP7').setLogic( d.XE55 & bgrp7cond).setTriggerType(TT.calo)
1103  MenuItem('L1_XE60_BGRP7').setLogic( d.XE60 & bgrp7cond).setTriggerType(TT.calo)
1104  MenuItem('L1_XE70_BGRP7').setLogic( d.XE70 & bgrp7cond).setTriggerType(TT.calo)
1105  MenuItem('L1_XE80_BGRP7').setLogic( d.XE80 & bgrp7cond).setTriggerType(TT.calo)
1106  # XS
1107  MenuItem('L1_XS20').setLogic( d.XS20.x(1) & physcond).setTriggerType(TT.calo)
1108  MenuItem('L1_XS30').setLogic( d.XS30.x(1) & physcond).setTriggerType(TT.calo)
1109  MenuItem('L1_XS40').setLogic( d.XS40.x(1) & physcond).setTriggerType(TT.calo)
1110  MenuItem('L1_XS45').setLogic( d.XS45.x(1) & physcond).setTriggerType(TT.calo)
1111  MenuItem('L1_XS50').setLogic( d.XS50.x(1) & physcond).setTriggerType(TT.calo)
1112  MenuItem('L1_XS55').setLogic( d.XS55.x(1) & physcond).setTriggerType(TT.calo)
1113  MenuItem('L1_XS60').setLogic( d.XS60.x(1) & physcond).setTriggerType(TT.calo)
1114  MenuItem('L1_XS65').setLogic( d.XS65.x(1) & physcond).setTriggerType(TT.calo)
1115 
1116  # TE
1117  MenuItem('L1_TE0' ).setLogic( d.TE0 & physcond).setTriggerType(TT.calo)
1118  MenuItem('L1_TE2' ).setLogic( d.TE2 & physcond).setTriggerType(TT.calo)
1119  MenuItem('L1_TE3' ).setLogic( d.TE3 & physcond).setTriggerType(TT.calo)
1120  MenuItem('L1_TE4' ).setLogic( d.TE4 & physcond).setTriggerType(TT.calo)
1121  MenuItem('L1_TE5' ).setLogic( d.TE5 & physcond).setTriggerType(TT.calo)
1122  MenuItem('L1_TE10').setLogic( d.TE10 & physcond).setTriggerType(TT.calo)
1123  MenuItem('L1_TE15').setLogic( d.TE15 & physcond).setTriggerType(TT.calo)
1124  MenuItem('L1_TE20').setLogic( d.TE20 & physcond).setTriggerType(TT.calo)
1125  MenuItem('L1_TE25').setLogic( d.TE25 & physcond).setTriggerType(TT.calo)
1126  MenuItem('L1_TE30').setLogic( d.TE30 & physcond).setTriggerType(TT.calo)
1127  MenuItem('L1_TE40').setLogic( d.TE40 & physcond).setTriggerType(TT.calo)
1128  MenuItem('L1_TE45').setLogic( d.TE45 & physcond).setTriggerType(TT.calo)
1129  MenuItem('L1_TE50').setLogic( d.TE50 & physcond).setTriggerType(TT.calo)
1130  MenuItem('L1_TE55').setLogic( d.TE55 & physcond).setTriggerType(TT.calo)
1131  MenuItem('L1_TE60').setLogic( d.TE60 & physcond).setTriggerType(TT.calo)
1132  MenuItem('L1_TE65').setLogic( d.TE65 & physcond).setTriggerType(TT.calo)
1133  MenuItem('L1_TE70').setLogic( d.TE70 & physcond).setTriggerType(TT.calo)
1134  MenuItem('L1_TE90').setLogic( d.TE90 & physcond).setTriggerType(TT.calo)
1135  MenuItem('L1_TE100').setLogic( d.TE100 & physcond).setTriggerType(TT.calo)
1136  MenuItem('L1_TE120').setLogic( d.TE120 & physcond).setTriggerType(TT.calo)
1137  MenuItem('L1_TE140').setLogic( d.TE140 & physcond).setTriggerType(TT.calo)
1138  MenuItem('L1_TE160').setLogic( d.TE160 & physcond).setTriggerType(TT.calo)
1139  MenuItem('L1_TE200').setLogic( d.TE200 & physcond).setTriggerType(TT.calo)
1140  MenuItem('L1_TE280').setLogic( d.TE280 & physcond).setTriggerType(TT.calo)
1141  MenuItem('L1_TE300').setLogic( d.TE300 & physcond).setTriggerType(TT.calo)
1142  MenuItem('L1_TE360').setLogic( d.TE360 & physcond).setTriggerType(TT.calo)
1143  MenuItem('L1_TE2000').setLogic( d.TE2000 & physcond).setTriggerType(TT.calo)
1144  MenuItem('L1_TE4000').setLogic( d.TE4000 & physcond).setTriggerType(TT.calo)
1145  MenuItem('L1_TE10000').setLogic( d.TE10000 & physcond).setTriggerType(TT.calo)
1146  MenuItem('L1_TE12000').setLogic( d.TE12000 & physcond).setTriggerType(TT.calo)
1147  MenuItem('L1_TE14000').setLogic( d.TE14000 & physcond).setTriggerType(TT.calo)
1148 
1149  MenuItem('L1_TE0p24ETA49' ).setLogic( d.TE024ETA49 & physcond).setTriggerType(TT.calo)
1150  MenuItem('L1_TE3p24ETA49' ).setLogic( d.TE324ETA49 & physcond).setTriggerType(TT.calo)
1151  MenuItem('L1_TE5p24ETA49' ).setLogic( d.TE524ETA49 & physcond).setTriggerType(TT.calo)
1152  MenuItem('L1_TE10p24ETA49' ).setLogic( d.TE1024ETA49 & physcond).setTriggerType(TT.calo)
1153  MenuItem('L1_TE15p24ETA49' ).setLogic( d.TE1524ETA49 & physcond).setTriggerType(TT.calo)
1154  MenuItem('L1_TE20p24ETA49' ).setLogic( d.TE2024ETA49 & physcond).setTriggerType(TT.calo)
1155  MenuItem('L1_TE25p24ETA49' ).setLogic( d.TE2524ETA49 & physcond).setTriggerType(TT.calo)
1156  MenuItem('L1_TE30p24ETA49' ).setLogic( d.TE3024ETA49 & physcond).setTriggerType(TT.calo)
1157  MenuItem('L1_TE35p24ETA49' ).setLogic( d.TE3524ETA49 & physcond).setTriggerType(TT.calo)
1158  MenuItem('L1_TE40p24ETA49' ).setLogic( d.TE4024ETA49 & physcond).setTriggerType(TT.calo)
1159  MenuItem('L1_TE45p24ETA49' ).setLogic( d.TE4524ETA49 & physcond).setTriggerType(TT.calo)
1160  MenuItem('L1_TE50p24ETA49' ).setLogic( d.TE5024ETA49 & physcond).setTriggerType(TT.calo)
1161  MenuItem('L1_TE55p24ETA49' ).setLogic( d.TE5524ETA49 & physcond).setTriggerType(TT.calo)
1162  MenuItem('L1_TE60p24ETA49' ).setLogic( d.TE6024ETA49 & physcond).setTriggerType(TT.calo)
1163  MenuItem('L1_TE65p24ETA49' ).setLogic( d.TE6524ETA49 & physcond).setTriggerType(TT.calo)
1164  MenuItem('L1_TE70p24ETA49' ).setLogic( d.TE7024ETA49 & physcond).setTriggerType(TT.calo)
1165  MenuItem('L1_TE80p24ETA49' ).setLogic( d.TE8024ETA49 & physcond).setTriggerType(TT.calo)
1166  MenuItem('L1_TE110p24ETA49' ).setLogic( d.TE11024ETA49 & physcond).setTriggerType(TT.calo)
1167  MenuItem('L1_TE150p24ETA49' ).setLogic( d.TE15024ETA49 & physcond).setTriggerType(TT.calo)
1168  MenuItem('L1_TE180p24ETA49' ).setLogic( d.TE18024ETA49 & physcond).setTriggerType(TT.calo)
1169  MenuItem('L1_TE2000p24ETA49').setLogic( d.TE200024ETA49 & physcond).setTriggerType(TT.calo)
1170  MenuItem('L1_TE5000p24ETA49').setLogic( d.TE200024ETA49 & physcond).setTriggerType(TT.calo)
1171  MenuItem('L1_TE6500p24ETA49').setLogic( d.TE200024ETA49 & physcond).setTriggerType(TT.calo)
1172  MenuItem('L1_TE8000p24ETA49').setLogic( d.TE200024ETA49 & physcond).setTriggerType(TT.calo)
1173  MenuItem('L1_TE9000p24ETA49').setLogic( d.TE200024ETA49 & physcond).setTriggerType(TT.calo)
1174 
1175  # HI items
1176  MenuItem('L1_TE3p0ETA49' ).setLogic( d.TE30ETA49 & physcond).setTriggerType(TT.calo)
1177  MenuItem('L1_TE7p0ETA49' ).setLogic( d.TE70ETA49 & physcond).setTriggerType(TT.calo)
1178  MenuItem('L1_TE500p0ETA49' ).setLogic( d.TE5000ETA49 & physcond).setTriggerType(TT.calo)
1179  MenuItem('L1_TE600p0ETA49' ).setLogic( d.TE6000ETA49 & physcond).setTriggerType(TT.calo)
1180  MenuItem('L1_TE1500p0ETA49').setLogic( d.TE15000ETA49 & physcond).setTriggerType(TT.calo)
1181  MenuItem('L1_TE3000p0ETA49').setLogic( d.TE30000ETA49 & physcond).setTriggerType(TT.calo)
1182  MenuItem('L1_TE3500p0ETA49').setLogic( d.TE35000ETA49 & physcond).setTriggerType(TT.calo)
1183  MenuItem('L1_TE5000p0ETA49').setLogic( d.TE50000ETA49 & physcond).setTriggerType(TT.calo)
1184  MenuItem('L1_TE6500p0ETA49').setLogic( d.TE65000ETA49 & physcond).setTriggerType(TT.calo)
1185  MenuItem('L1_TE8000p0ETA49').setLogic( d.TE80000ETA49 & physcond).setTriggerType(TT.calo)
1186  MenuItem('L1_TE9000p0ETA49').setLogic( d.TE90000ETA49 & physcond).setTriggerType(TT.calo)
1187 
1188  MenuItem('L1_TE500p0ETA49_OVERLAY' ).setLogic( d.TE5000ETA49 & physcond).setTriggerType(TT.zerobs)
1189  MenuItem('L1_TE600p0ETA49_OVERLAY' ).setLogic( d.TE6000ETA49 & physcond).setTriggerType(TT.zerobs)
1190  MenuItem('L1_TE1500p0ETA49_OVERLAY').setLogic( d.TE15000ETA49 & physcond).setTriggerType(TT.zerobs)
1191  MenuItem('L1_TE3000p0ETA49_OVERLAY').setLogic( d.TE30000ETA49 & physcond).setTriggerType(TT.zerobs)
1192  MenuItem('L1_TE3500p0ETA49_OVERLAY').setLogic( d.TE35000ETA49 & physcond).setTriggerType(TT.zerobs)
1193  MenuItem('L1_TE5000p0ETA49_OVERLAY').setLogic( d.TE50000ETA49 & physcond).setTriggerType(TT.zerobs)
1194  MenuItem('L1_TE6500p0ETA49_OVERLAY').setLogic( d.TE65000ETA49 & physcond).setTriggerType(TT.zerobs)
1195  MenuItem('L1_TE8000p0ETA49_OVERLAY').setLogic( d.TE80000ETA49 & physcond).setTriggerType(TT.zerobs)
1196  MenuItem('L1_TE9000p0ETA49_OVERLAY').setLogic( d.TE90000ETA49 & physcond).setTriggerType(TT.zerobs)
1197 
1198  MenuItem('L1_TE50_VTE600p0ETA49' ).setLogic( d.TE50 & Not(d.TE6000ETA49) & physcond).setTriggerType(TT.calo)
1199  MenuItem('L1_TE50_VTE600p0ETA49_PEB').setLogic( d.TE50 & Not(d.TE6000ETA49) & physcond).setTriggerType(TT.calo)
1200  MenuItem('L1_TE600p0ETA49_PEB' ).setLogic( d.TE6000ETA49 & physcond).setTriggerType(TT.calo)
1201 
1202  MenuItem('L1_jTE1500_OVERLAY').setLogic( d.jTE1500 & physcond).setTriggerType(TT.zerobs)
1203  MenuItem('L1_jTE4000_OVERLAY').setLogic( d.jTE4000 & physcond).setTriggerType(TT.zerobs)
1204 
1205  MenuItem('L1_VTE2' ).setLogic( Not(d.TE2) & physcond).setTriggerType(TT.calo)
1206  MenuItem('L1_VTE3' ).setLogic( Not(d.TE3) & physcond).setTriggerType(TT.calo)
1207  MenuItem('L1_VTE4' ).setLogic( Not(d.TE4) & physcond).setTriggerType(TT.calo)
1208  MenuItem('L1_VTE5' ).setLogic( Not(d.TE5) & physcond).setTriggerType(TT.calo)
1209  MenuItem('L1_VTE10').setLogic( Not(d.TE10) & physcond).setTriggerType(TT.calo)
1210  MenuItem('L1_VTE20').setLogic( Not(d.TE20) & physcond).setTriggerType(TT.calo)
1211  MenuItem('L1_VTE50').setLogic( Not(d.TE50) & physcond).setTriggerType(TT.calo)
1212 
1213  MenuItem('L1_TE5_NZ').setLogic( d.TE5 & Not(ZDC_AND) & physcond).setTriggerType(TT.calo)
1214 
1215  # MBTS
1216  MBTS_1 = d.MBTS_A | d.MBTS_C
1217  MBTS_2 = (d.MBTS_C.x(2) | d.MBTS_A) & (d.MBTS_A.x(2) | d.MBTS_C)
1218  MBTS_1_1 = d.MBTS_A & d.MBTS_C
1219  MBTS_2_2 = d.MBTS_A.x(2) & d.MBTS_C.x(2)
1220  MBTS_1_A = d.MBTS_A.x(1)
1221  MBTS_1_C = d.MBTS_C.x(1)
1222  MBTS_2_A = d.MBTS_A.x(2)
1223  MBTS_2_C = d.MBTS_C.x(2)
1224  MBTS_3_3 = d.MBTS_A.x(3) & d.MBTS_C.x(3)
1225  MBTS_4_4 = d.MBTS_A.x(4) & d.MBTS_C.x(4)
1226  MBTS_4_A = d.MBTS_A.x(4)
1227  MBTS_4_C = d.MBTS_C.x(4)
1228 
1229 
1230  MenuItem('L1_MBTS_A' ).setLogic( d.MBTS_A & physcond )
1231  MenuItem('L1_MBTS_C' ).setLogic( d.MBTS_C & physcond )
1232 
1233  MenuItem('L1_MBTS_1' ).setLogic( MBTS_1 & physcond )
1234  MenuItem('L1_MBTS_1_OVERLAY' ).setLogic( MBTS_1 & physcond ).setTriggerType(TT.zerobs)
1235  MenuItem('L1_MBTS_2' ).setLogic( MBTS_2 & physcond )
1236  MenuItem('L1_MBTS_1_1' ).setLogic( MBTS_1_1 & physcond )
1237  MenuItem('L1_MBTS_1_1_OVERLAY' ).setLogic( MBTS_1_1 & physcond ).setTriggerType(TT.zerobs)
1238  MenuItem('L1_MBTS_2_2' ).setLogic( MBTS_2_2 & physcond )
1239  MenuItem('L1_MBTS_2_A' ).setLogic( MBTS_2_A & physcond )
1240  MenuItem('L1_MBTS_2_C' ).setLogic( MBTS_2_C & physcond )
1241  MenuItem('L1_MBTS_3_3' ).setLogic( MBTS_3_3 & physcond )
1242  MenuItem('L1_MBTS_4_4' ).setLogic( MBTS_4_4 & physcond )
1243  MenuItem('L1_MBTS_4_A' ).setLogic( MBTS_4_A & physcond )
1244  MenuItem('L1_MBTS_4_C' ).setLogic( MBTS_4_C & physcond )
1245  MenuItem('L1_MBTS_1_A' ).setLogic( MBTS_1_A & physcond )
1246  MenuItem('L1_MBTS_1_C' ).setLogic( MBTS_1_C & physcond )
1247 
1248 
1249  MenuItem('L1_MBTS_1_UNPAIRED_ISO' ).setLogic( MBTS_1 & unpaired_isocond)
1250  MenuItem('L1_MBTS_2_UNPAIRED_ISO' ).setLogic( MBTS_2 & unpaired_isocond)
1251  MenuItem('L1_MBTS_1_1_UNPAIRED_ISO' ).setLogic( MBTS_1_1 & unpaired_isocond)
1252  MenuItem('L1_MBTS_2_2_UNPAIRED_ISO' ).setLogic( MBTS_2_2 & unpaired_isocond)
1253  MenuItem('L1_MBTS_3_3_UNPAIRED_ISO' ).setLogic( MBTS_3_3 & unpaired_isocond)
1254  MenuItem('L1_MBTS_4_4_UNPAIRED_ISO' ).setLogic( MBTS_3_3 & unpaired_isocond)
1255  MenuItem('L1_MBTS_1_UNPAIRED_NONISO').setLogic( MBTS_1 & unpaired_nonisocond)
1256  MenuItem('L1_MBTS_2_UNPAIRED_NONISO').setLogic( MBTS_2 & unpaired_nonisocond)
1257  MenuItem('L1_MBTS_4_A_UNPAIRED_ISO' ).setLogic( MBTS_4_A & unpaired_isocond )
1258  MenuItem('L1_MBTS_4_C_UNPAIRED_ISO' ).setLogic( MBTS_4_C & unpaired_isocond )
1259 
1260  MenuItem('L1_MBTS_1_A_EMPTY' ).setLogic( MBTS_1_A & cosmiccond )
1261  MenuItem('L1_MBTS_1_C_EMPTY' ).setLogic( MBTS_1_C & cosmiccond )
1262  MenuItem('L1_MBTS_1_EMPTY' ).setLogic( MBTS_1 & cosmiccond )
1263  MenuItem('L1_MBTS_2_EMPTY' ).setLogic( MBTS_2 & cosmiccond )
1264  MenuItem('L1_MBTS_1_1_EMPTY' ).setLogic( MBTS_1_1 & cosmiccond )
1265  MenuItem('L1_MBTS_2_2_EMPTY' ).setLogic( MBTS_2_2 & cosmiccond )
1266  MenuItem('L1_MBTS_3_3_EMPTY' ).setLogic( MBTS_3_3 & cosmiccond )
1267 
1268  MenuItem('L1_MBTS_1_1_VTE50' ).setLogic( MBTS_1_1 & Not(d.TE50) & physcond)
1269  MenuItem('L1_MBTS_2_2_VTE50' ).setLogic( MBTS_2_2 & Not(d.TE50) & physcond)
1270 
1271  MenuItem('L1_MBTS_1_VTE2' ).setLogic( MBTS_1 & Not(d.TE2) & physcond)
1272  MenuItem('L1_MBTS_1_VTE3' ).setLogic( MBTS_1 & Not(d.TE3) & physcond)
1273  MenuItem('L1_MBTS_1_VTE4' ).setLogic( MBTS_1 & Not(d.TE4) & physcond)
1274  MenuItem('L1_MBTS_1_VTE5' ).setLogic( MBTS_1 & Not(d.TE5) & physcond)
1275  MenuItem('L1_MBTS_1_VTE10' ).setLogic( MBTS_1 & Not(d.TE10) & physcond)
1276  MenuItem('L1_MBTS_1_VTE70' ).setLogic( MBTS_1 & Not(d.TE70) & physcond)
1277  MenuItem('L1_MBTS_1_VTE50' ).setLogic( MBTS_1 & Not(d.TE50) & physcond)
1278  MenuItem('L1_MBTS_1_VTE200' ).setLogic( MBTS_1 & Not(d.TE200) & physcond)
1279  # phase-1
1280  MenuItem('L1_MBTS_1_VjTE200' ).setLogic( MBTS_1 & Not(d.jTE200) & physcond)
1281  MenuItem('L1_MBTS_1_VjTE200_GAP_A' ).setLogic( MBTS_1 & Not(d.jTE200) & GAPA & physcond)
1282  MenuItem('L1_MBTS_1_VjTE200_GAP_C' ).setLogic( MBTS_1 & Not(d.jTE200) & GAPC & physcond)
1283  MenuItem('L1_MBTS_1_1_VjTE50' ).setLogic( MBTS_1_1 & Not(d.jTE50) & physcond)
1284 
1285  MenuItem('L1_MBTS_2_VTE2' ).setLogic( MBTS_2 & Not(d.TE2) & physcond)
1286  MenuItem('L1_MBTS_2_VTE3' ).setLogic( MBTS_2 & Not(d.TE3) & physcond)
1287  MenuItem('L1_MBTS_2_VTE4' ).setLogic( MBTS_2 & Not(d.TE4) & physcond)
1288  MenuItem('L1_MBTS_2_VTE5' ).setLogic( MBTS_2 & Not(d.TE5) & physcond)
1289  MenuItem('L1_MBTS_2_VTE10' ).setLogic( MBTS_2 & Not(d.TE10) & physcond)
1290 
1291  MenuItem('L1_MBTSA0' ).setLogic( d.MBTS_A0 & physcond)
1292  MenuItem('L1_MBTSA1' ).setLogic( d.MBTS_A1 & physcond)
1293  MenuItem('L1_MBTSA2' ).setLogic( d.MBTS_A2 & physcond)
1294  MenuItem('L1_MBTSA3' ).setLogic( d.MBTS_A3 & physcond)
1295  MenuItem('L1_MBTSA4' ).setLogic( d.MBTS_A4 & physcond)
1296  MenuItem('L1_MBTSA5' ).setLogic( d.MBTS_A5 & physcond)
1297  MenuItem('L1_MBTSA6' ).setLogic( d.MBTS_A6 & physcond)
1298  MenuItem('L1_MBTSA7' ).setLogic( d.MBTS_A7 & physcond)
1299  MenuItem('L1_MBTSA8' ).setLogic( d.MBTS_A8 & physcond)
1300  MenuItem('L1_MBTSA10').setLogic( d.MBTS_A10 & physcond)
1301  MenuItem('L1_MBTSA12').setLogic( d.MBTS_A12 & physcond)
1302  MenuItem('L1_MBTSA14').setLogic( d.MBTS_A14 & physcond)
1303 
1304  MenuItem('L1_MBTSA9' ).setLogic( d.MBTS_A9 & physcond)
1305  MenuItem('L1_MBTSA11').setLogic( d.MBTS_A11 & physcond)
1306  MenuItem('L1_MBTSA13').setLogic( d.MBTS_A13 & physcond)
1307  MenuItem('L1_MBTSA15').setLogic( d.MBTS_A15 & physcond)
1308 
1309  MenuItem('L1_MBTSC0' ).setLogic( d.MBTS_C0 & physcond)
1310  MenuItem('L1_MBTSC1' ).setLogic( d.MBTS_C1 & physcond)
1311  MenuItem('L1_MBTSC2' ).setLogic( d.MBTS_C2 & physcond)
1312  MenuItem('L1_MBTSC3' ).setLogic( d.MBTS_C3 & physcond)
1313  MenuItem('L1_MBTSC4' ).setLogic( d.MBTS_C4 & physcond)
1314  MenuItem('L1_MBTSC5' ).setLogic( d.MBTS_C5 & physcond)
1315  MenuItem('L1_MBTSC6' ).setLogic( d.MBTS_C6 & physcond)
1316  MenuItem('L1_MBTSC7' ).setLogic( d.MBTS_C7 & physcond)
1317  MenuItem('L1_MBTSC8' ).setLogic( d.MBTS_C8 & physcond)
1318  MenuItem('L1_MBTSC10').setLogic( d.MBTS_C10 & physcond)
1319  MenuItem('L1_MBTSC12').setLogic( d.MBTS_C12 & physcond)
1320  MenuItem('L1_MBTSC14').setLogic( d.MBTS_C14 & physcond)
1321 
1322  MenuItem('L1_MBTSC9' ).setLogic( d.MBTS_C9 & physcond)
1323  MenuItem('L1_MBTSC11').setLogic( d.MBTS_C11 & physcond)
1324  MenuItem('L1_MBTSC13').setLogic( d.MBTS_C13 & physcond)
1325  MenuItem('L1_MBTSC15').setLogic( d.MBTS_C15 & physcond)
1326 
1327  MenuItem('L1_MBTS_1_BGRP9' ).setLogic( MBTS_1 & bgrp9cond )
1328  MenuItem('L1_MBTS_1_1_BGRP9' ).setLogic( MBTS_1_1 & bgrp9cond )
1329  MenuItem('L1_MBTS_2_BGRP9' ).setLogic( MBTS_2 & bgrp9cond )
1330 
1331  MenuItem('L1_MBTS_1_BGRP11' ).setLogic( MBTS_1 & bgrp11cond )
1332  MenuItem('L1_MBTS_1_1_BGRP11').setLogic( MBTS_1_1 & bgrp11cond)
1333  MenuItem('L1_MBTS_2_BGRP11' ).setLogic( MBTS_2 & bgrp11cond )
1334 
1335 
1336  # ZDC
1337 
1338  MenuItem('L1_ZDC' ).setLogic( (ZDC_A | ZDC_C) & physcond)
1339  MenuItem('L1_ZDC_A' ).setLogic( ZDC_A & physcond)
1340  MenuItem('L1_ZDC_C' ).setLogic( ZDC_C & physcond)
1341  MenuItem('L1_ZDC_AND' ).setLogic( ZDC_AND & physcond)
1342  MenuItem('L1_ZDC_A_C' ).setLogic( ZDC_A_C & physcond)
1343 
1344  # ZDC O+O (ATR-30690)
1345  MenuItem('L1_ZDC_XNXN' ).setLogic( ZDC_XnXn & physcond)
1346  MenuItem('L1_ZDC_XNYN' ).setLogic( ZDC_XnYn & physcond)
1347  MenuItem('L1_ZDC_XNZN' ).setLogic( ZDC_XnZn & physcond)
1348  MenuItem('L1_ZDC_XN_XOR' ).setLogic( ZDC_Xn_XOR & physcond)
1349  MenuItem('L1_ZDC_YN_XOR' ).setLogic( ZDC_Yn_XOR & physcond)
1350  MenuItem('L1_ZDC_ZN_XOR' ).setLogic( ZDC_Zn_XOR & physcond)
1351  MenuItem('L1_ZDC_YN' ).setLogic( ZDC_Yn & physcond)
1352  MenuItem('L1_ZDC_ZN' ).setLogic( ZDC_Zn & physcond)
1353  MenuItem('L1_ZDC_LOR' ).setLogic( ZDC_LOR & physcond)
1354  MenuItem('L1_ZDC_YNYN' ).setLogic( ZDC_YnYn & physcond)
1355  MenuItem('L1_ZDC_LOR_EMPTY' ).setLogic( ZDC_LOR & cosmiccond)
1356  MenuItem('L1_ZDC_LOR_UNPAIRED_ISO' ).setLogic( ZDC_LOR & unpaired_isocond)
1357  MenuItem('L1_ZDC_LOR_UNPAIRED_NONISO').setLogic( ZDC_LOR & unpaired_nonisocond)
1358  # ZDC+TRT O+O (ATR-30690)
1359  MenuItem('L1_TRT_ZDC_OR' ).setLogic( d.NIMTRT & ZDC_OR & physcond)
1360  MenuItem('L1_TRT_ZDC_XNXN' ).setLogic( d.NIMTRT & ZDC_XnXn & physcond)
1361  MenuItem('L1_TRT_ZDC_XNYN' ).setLogic( d.NIMTRT & ZDC_XnYn & physcond)
1362  MenuItem('L1_TRT_ZDC_XNZN' ).setLogic( d.NIMTRT & ZDC_XnZn & physcond)
1363  MenuItem('L1_TRT_ZDC_XN_XOR' ).setLogic( d.NIMTRT & ZDC_Xn_XOR & physcond)
1364  MenuItem('L1_TRT_ZDC_YN_XOR' ).setLogic( d.NIMTRT & ZDC_Yn_XOR & physcond)
1365  MenuItem('L1_TRT_ZDC_ZN_XOR' ).setLogic( d.NIMTRT & ZDC_Zn_XOR & physcond)
1366  MenuItem('L1_TRT_ZDC_YN' ).setLogic( d.NIMTRT & ZDC_Yn & physcond)
1367  MenuItem('L1_TRT_ZDC_ZN' ).setLogic( d.NIMTRT & ZDC_Zn & physcond)
1368  MenuItem('L1_TRT_ZDC_LOR' ).setLogic( d.NIMTRT & ZDC_LOR & physcond)
1369  MenuItem('L1_TRT_ZDC_YNYN' ).setLogic( d.NIMTRT & ZDC_YnYn & physcond)
1370  MenuItem('L1_TRT_ZDC_A' ).setLogic( d.NIMTRT & ZDC_A & physcond)
1371  MenuItem('L1_TRT_ZDC_C' ).setLogic( d.NIMTRT & ZDC_C & physcond)
1372  MenuItem('L1_TRT_ZDC_A_C' ).setLogic( d.NIMTRT & ZDC_A_C & physcond)
1373 
1374  # ZDC pp (ATR-29027)
1375  MenuItem('L1_ZDC_PP_A' ).setLogic( ZDC_PP_A & physcond)
1376  MenuItem('L1_ZDC_PP_C' ).setLogic( ZDC_PP_C & physcond)
1377  MenuItem('L1_ZDC_PP_OR' ).setLogic( ZDC_PP_OR & physcond)
1378  MenuItem('L1_ZDC_PP_A_C' ).setLogic( ZDC_PP_A_C & physcond)
1379  MenuItem('L1_ZDC_PP_A2' ).setLogic( ZDC_PP_A2 & physcond)
1380  MenuItem('L1_ZDC_PP_C2' ).setLogic( ZDC_PP_C2 & physcond)
1381  MenuItem('L1_ZDC_PP_OR2' ).setLogic( ZDC_PP_OR2 & physcond)
1382  MenuItem('L1_ZDC_PP_A_EMPTY' ).setLogic( ZDC_PP_A & cosmiccond)
1383  MenuItem('L1_ZDC_PP_C_EMPTY' ).setLogic( ZDC_PP_C & cosmiccond)
1384  MenuItem('L1_ZDC_PP_A2_EMPTY' ).setLogic( ZDC_PP_A2 & cosmiccond)
1385  MenuItem('L1_ZDC_PP_C2_EMPTY' ).setLogic( ZDC_PP_C2 & cosmiccond)
1386  MenuItem('L1_ZDC_PP_A_UNPAIRED_NONISO' ).setLogic( ZDC_PP_A & unpaired_nonisocond)
1387  MenuItem('L1_ZDC_PP_C_UNPAIRED_NONISO' ).setLogic( ZDC_PP_C & unpaired_nonisocond)
1388  MenuItem('L1_ZDC_PP_A2_UNPAIRED_NONISO' ).setLogic( ZDC_PP_A2 & unpaired_nonisocond)
1389  MenuItem('L1_ZDC_PP_C2_UNPAIRED_NONISO' ).setLogic( ZDC_PP_C2 & unpaired_nonisocond)
1390 
1391  MenuItem('L1_ZDC_A_C_OVERLAY' ).setLogic( ZDC_A_C & physcond).setTriggerType(TT.zerobs)
1392  MenuItem('L1_ZDC_A_OVERLAY' ).setLogic( ZDC_A & physcond).setTriggerType(TT.zerobs)
1393  MenuItem('L1_ZDC_C_OVERLAY' ).setLogic( ZDC_C & physcond).setTriggerType(TT.zerobs)
1394  MenuItem('L1_ZDC_A_C_VTE50_OVERLAY').setLogic( ZDC_A_C & Not(d.TE50) & physcond).setTriggerType(TT.zerobs)
1395  MenuItem('L1_TE5_OVERLAY' ).setLogic( d.TE5 & physcond).setTriggerType(TT.zerobs)
1396  MenuItem('L1_TE10_OVERLAY' ).setLogic( d.TE10 & physcond).setTriggerType(TT.zerobs)
1397  MenuItem('L1_TE20_OVERLAY' ).setLogic( d.TE20 & physcond).setTriggerType(TT.zerobs)
1398  MenuItem('L1_TE50_OVERLAY' ).setLogic( d.TE50 & physcond).setTriggerType(TT.zerobs)
1399  MenuItem('L1_MBTS_1_VTE50_OVERLAY' ).setLogic( MBTS_1 & Not(d.TE50) & physcond).setTriggerType(TT.zerobs)
1400  MenuItem('L1_jTE50_OVERLAY' ).setLogic( d.jTE50 & physcond).setTriggerType(TT.zerobs)
1401  MenuItem('L1_ZDC_A_C_VjTE50_OVERLAY').setLogic( ZDC_A_C & Not(d.jTE50) & physcond).setTriggerType(TT.zerobs)
1402 
1403  MenuItem('L1_ZDC_VTE200' ).setLogic((ZDC_A | ZDC_C) & Not(d.TE200) & physcond)
1404  MenuItem('L1_ZDC_AND_VTE50' ).setLogic( ZDC_AND & Not(d.TE50) & physcond)
1405  MenuItem('L1_ZDC_A_C_VTE50' ).setLogic( ZDC_A_C & Not(d.TE50) & physcond)
1406  MenuItem('L1_ZDC_A_C_TE50' ).setLogic( ZDC_A_C & d.TE50 & physcond)
1407  MenuItem('L1_ZDC_A_C_VjTE50' ).setLogic( ZDC_A_C & Not(d.jTE50) & physcond)
1408  MenuItem('L1_ZDC_OR_VjTE50' ).setLogic(ZDC_OR & Not(d.jTE50) & physcond)
1409  MenuItem('L1_ZDC_XOR_VjTE50').setLogic(ZDC_XOR & Not(d.jTE50) & physcond)
1410 
1411  MenuItem('L1_TRT_VZDC_A_VZDC_C_VjTE200' ).setLogic(d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE200) & physcond)
1412  MenuItem('L1_TRT_ZDC_OR_VjTE200' ).setLogic(d.NIMTRT & ZDC_OR & Not(d.jTE200) & physcond)
1413  MenuItem('L1_TRT_ZDC_A_C_VjTE200' ).setLogic(d.NIMTRT & ZDC_A_C & Not(d.jTE200) & physcond)
1414 
1415  MenuItem('L1_ZDC_A_C_VTE50_PEB').setLogic( ZDC_A_C & Not(d.TE50) & physcond)
1416 
1417  MenuItem('L1_ZDC_A_VTE20' ).setLogic( ZDC_A & Not(d.TE20) & physcond)
1418  MenuItem('L1_ZDC_A_VTE200' ).setLogic( ZDC_A & Not(d.TE200) & physcond)
1419  MenuItem('L1_ZDC_C_VTE20' ).setLogic( ZDC_C & Not(d.TE20) & physcond)
1420  MenuItem('L1_ZDC_C_VTE200' ).setLogic( ZDC_C & Not(d.TE200) & physcond)
1421  MenuItem('L1_TRT_ZDC_A_VTE50' ).setLogic( d.NIMTRT & ZDC_A & Not(d.TE50) & physcond)
1422  MenuItem('L1_TRT_ZDC_C_VTE50' ).setLogic( d.NIMTRT & ZDC_C & Not(d.TE50) & physcond)
1423 
1424  MenuItem('L1_ZDC_A_C_VTE200' ).setLogic( ZDC_A_C & Not(d.TE200) & physcond)
1425  MenuItem('L1_ZDC_A_C_TE5_VTE200').setLogic( ZDC_A_C & d.TE5 & Not(d.TE200) & physcond)
1426 
1427  MenuItem('L1_VZDC_A_C_VTE50' ).setLogic( VZDC_A_C & Not(d.TE50) & physcond)
1428  MenuItem('L1_VZDC_A_C_TE5_VTE200' ).setLogic( VZDC_A_C & d.TE5 & Not(d.TE200) & physcond)
1429  MenuItem('L1_VZDC_A_C_TE20_VTE200').setLogic( VZDC_A_C & d.TE20 & Not(d.TE200) & physcond)
1430  MenuItem('L1_VZDC_AORC_TE5_VTE200').setLogic( VZDC_AORC & d.TE5 & Not(d.TE200) & physcond)
1431  MenuItem('L1_TE20_ZDC_A_VZDC_C_VTE200').setLogic( ZDC_A & Not(ZDC_C) & d.TE20 & Not(d.TE200) & physcond)
1432  MenuItem('L1_TE20_ZDC_C_VZDC_A_VTE200').setLogic( ZDC_C & Not(ZDC_A) & d.TE20 & Not(d.TE200) & physcond)
1433 
1434  MenuItem('L1_ZDC_MBTS_1' ).setLogic((ZDC_A | ZDC_C) & MBTS_1 & physcond)
1435  MenuItem('L1_ZDC_MBTS_2' ).setLogic((ZDC_A | ZDC_C) & MBTS_2 & physcond)
1436 
1437  MenuItem('L1_ZDC_MBTS_1_1' ).setLogic((ZDC_A | ZDC_C) & MBTS_1_1 & physcond)
1438  MenuItem('L1_ZDC_MBTS_2_2' ).setLogic((ZDC_A | ZDC_C) & MBTS_2_2 & physcond)
1439 
1440  MenuItem('L1_ZDC_EMPTY' ).setLogic( (ZDC_A | ZDC_C) & cosmiccond )
1441  MenuItem('L1_ZDC_A_EMPTY' ).setLogic( ZDC_A & cosmiccond )
1442  MenuItem('L1_ZDC_C_EMPTY' ).setLogic( ZDC_C & cosmiccond )
1443  MenuItem('L1_ZDC_UNPAIRED_ISO' ).setLogic( (ZDC_A | ZDC_C) & unpaired_isocond )
1444  MenuItem('L1_ZDC_UNPAIRED_NONISO' ).setLogic( (ZDC_A | ZDC_C) & unpaired_nonisocond )
1445 
1446  MenuItem('L1_ZDC_AND_EMPTY' ).setLogic( ZDC_AND & cosmiccond )
1447  MenuItem('L1_ZDC_AND_UNPAIRED_ISO' ).setLogic( ZDC_AND & unpaired_isocond )
1448  MenuItem('L1_ZDC_AND_UNPAIRED_NONISO' ).setLogic( ZDC_AND & unpaired_nonisocond )
1449  MenuItem('L1_ZDC_A_UNPAIRED_NONISO' ).setLogic( ZDC_A & unpaired_nonisocond )
1450  MenuItem('L1_ZDC_C_UNPAIRED_NONISO' ).setLogic( ZDC_C & unpaired_nonisocond )
1451 
1452  MenuItem('L1_ZDC_A_C_EMPTY' ).setLogic( ZDC_A_C & cosmiccond )
1453  MenuItem('L1_ZDC_A_C_UNPAIRED_ISO' ).setLogic( ZDC_A_C & unpaired_isocond )
1454  MenuItem('L1_ZDC_A_C_UNPAIRED_NONISO' ).setLogic( ZDC_A_C & unpaired_nonisocond )
1455  MenuItem('L1_ZDC_A_UNPAIRED_ISO' ).setLogic( ZDC_A & unpaired_isocond )
1456  MenuItem('L1_ZDC_C_UNPAIRED_ISO' ).setLogic( ZDC_C & unpaired_isocond )
1457 
1458  MenuItem('L1_ZDC_A_C_BGRP9' ).setLogic( ZDC_A_C & bgrp9cond & physcond)
1459  MenuItem('L1_ZDC_A_BGRP9' ).setLogic( ZDC_A & bgrp9cond & physcond)
1460  MenuItem('L1_ZDC_C_BGRP9' ).setLogic( ZDC_C & bgrp9cond & physcond)
1461  MenuItem('L1_ZDC_A_C_BGRP11' ).setLogic( ZDC_A_C & bgrp11cond & physcond)
1462 
1463 # ATR-12470
1464  MenuItem('L1_ZDC_A_VZDC_C' ).setLogic(PHYS_ZDC_A_VZDC_C & physcond)
1465  MenuItem('L1_ZDC_C_VZDC_A' ).setLogic(PHYS_VZDC_A_ZDC_C & physcond)
1466  MenuItem('L1_ZDC_C_VZDC_A_VTE200' ).setLogic(PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1467  MenuItem('L1_MBTS_1_ZDC_A_VZDC_C_VTE200' ).setLogic(MBTS_1 & PHYS_ZDC_A_VZDC_C & Not(d.TE200) & physcond)
1468  MenuItem('L1_MBTS_1_ZDC_C_VZDC_A_VTE200' ).setLogic(MBTS_1 & PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1469  MenuItem('L1_TE3p0ETA49_ZDC_A_VZDC_C_VTE200').setLogic(d.TE30ETA49 & PHYS_ZDC_A_VZDC_C & Not(d.TE200) & physcond)
1470  MenuItem('L1_TE3p0ETA49_ZDC_C_VZDC_A_VTE200').setLogic(d.TE30ETA49 & PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1471  MenuItem('L1_TE4_ZDC_A_VZDC_C_VTE200' ).setLogic(d.TE4 & PHYS_ZDC_A_VZDC_C & Not(d.TE200) & physcond)
1472  MenuItem('L1_TE4_ZDC_C_VZDC_A_VTE200' ).setLogic(d.TE4 & PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1473  MenuItem('L1_TE5_ZDC_A_VZDC_C_VTE200' ).setLogic(d.TE5 & PHYS_ZDC_A_VZDC_C & Not(d.TE200) & physcond)
1474  MenuItem('L1_TE5_ZDC_C_VZDC_A_VTE200' ).setLogic(d.TE5 & PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1475  MenuItem('L1_TE7p0ETA49_ZDC_A_VZDC_C_VTE200').setLogic(d.TE70ETA49 & PHYS_ZDC_A_VZDC_C & Not(d.TE200) & physcond)
1476  MenuItem('L1_TE7p0ETA49_ZDC_C_VZDC_A_VTE200').setLogic(d.TE70ETA49 & PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1477 
1478 
1479  MenuItem('L1_ZDC_XOR' ).setLogic(ZDC_XOR & physcond)
1480  MenuItem('L1_ZDC_XOR_TE3p0ETA49_VTE200').setLogic(ZDC_XOR & d.TE30ETA49 & Not(d.TE200) & physcond)
1481  MenuItem('L1_ZDC_XOR_TE4_VTE200' ).setLogic(ZDC_XOR & d.TE4 & Not(d.TE200) & physcond)
1482  MenuItem('L1_ZDC_XOR_TE5_VTE200' ).setLogic(ZDC_XOR & d.TE5 & Not(d.TE200) & physcond)
1483  MenuItem('L1_ZDC_XOR_TE20_VTE200' ).setLogic(ZDC_XOR & d.TE20 & Not(d.TE200) & physcond)
1484  MenuItem('L1_ZDC_XOR_TRT_VTE200' ).setLogic(ZDC_XOR & d.NIMTRT & Not(d.TE200) & physcond)
1485  MenuItem('L1_ZDC_XOR_VTE50' ).setLogic(ZDC_XOR & Not(d.TE50) & physcond)
1486  MenuItem('L1_ZDC_XOR_VTE200' ).setLogic(ZDC_XOR & Not(d.TE200) & physcond)
1487  MenuItem('L1_ZDC_XOR_VTE200_MBTS_1' ).setLogic(ZDC_XOR & Not(d.TE200) & MBTS_1 & physcond)
1488 
1489 
1490  # ATR-26051
1491  # ZDC for 2022 LHCf+ZDC special run, item names are set to be different from ZDC items for heavy ion runs
1492  MenuItem('L1_ZDC_OR' ).setLogic( ZDC_OR & physcond)
1493  MenuItem('L1_ZDC_XOR_E2' ).setLogic( ZDC_XOR_E2 & physcond)
1494  MenuItem('L1_ZDC_XOR_E1_E3' ).setLogic( ZDC_XOR_E1_E3 & physcond)
1495  MenuItem('L1_ZDC_E1_AND_E1' ).setLogic( ZDC_E1_AND_E1 & physcond)
1496  MenuItem('L1_ZDC_E1_AND_E2ORE3').setLogic( ZDC_E1_AND_E2ORE3 & physcond)
1497  MenuItem('L1_ZDC_E2_AND_E2' ).setLogic( ZDC_E2_AND_E2 & physcond)
1498  MenuItem('L1_ZDC_E2_AND_E3' ).setLogic( ZDC_E2_AND_E3 & physcond)
1499  MenuItem('L1_ZDC_E3_AND_E3' ).setLogic( ZDC_E3_AND_E3 & physcond)
1500  MenuItem('L1_ZDC_A_AND_C' ).setLogic( ZDC_A_AND_C & physcond)
1501  MenuItem('L1_ZDC_A_AND_C_EMPTY' ).setLogic( ZDC_A_AND_C & cosmiccond)
1502  MenuItem('L1_ZDC_A_AND_C_UNPAIRED_NONISO' ).setLogic( ZDC_A_AND_C & unpaired_nonisocond)
1503  MenuItem('L1_ZDC_OR_EMPTY' ).setLogic( ZDC_OR & cosmiccond)
1504  MenuItem('L1_ZDC_OR_UNPAIRED_ISO' ).setLogic( ZDC_OR & unpaired_isocond)
1505  MenuItem('L1_ZDC_OR_UNPAIRED_NONISO').setLogic( ZDC_OR & unpaired_nonisocond)
1506  # individual ZDC bits
1507  MenuItem('L1_ZDC_BIT2').setLogic( d.ZDC_2 & physcond)
1508  MenuItem('L1_ZDC_BIT1').setLogic( d.ZDC_1 & physcond)
1509  MenuItem('L1_ZDC_BIT0').setLogic( d.ZDC_0 & physcond)
1510  # individual ZDC comb
1511  MenuItem('L1_ZDC_COMB0').setLogic( ZDC_comb0 & physcond)
1512  MenuItem('L1_ZDC_COMB1').setLogic( ZDC_comb1 & physcond)
1513  MenuItem('L1_ZDC_COMB2').setLogic( ZDC_comb2 & physcond)
1514  MenuItem('L1_ZDC_COMB3').setLogic( ZDC_comb3 & physcond)
1515  MenuItem('L1_ZDC_COMB4').setLogic( ZDC_comb4 & physcond)
1516  MenuItem('L1_ZDC_COMB5').setLogic( ZDC_comb5 & physcond)
1517  MenuItem('L1_ZDC_COMB6').setLogic( ZDC_comb6 & physcond)
1518  MenuItem('L1_ZDC_COMB7').setLogic( ZDC_comb7 & physcond)
1519  # ZDC calibration for LHCf+ZDC runs
1520  MenuItem('L1_ZDC_OR_LHCF').setLogic( (Not(ZDC_comb0) | d.NIMLHCF) & physcond)
1521 
1522  # ZDC for 2023 heavy ion runs
1523  MenuItem('L1_VZDC_A_VZDC_C' ).setLogic( PHYS_VZDC_A_VZDC_C & physcond)
1524  MenuItem('L1_1ZDC_A_VZDC_C' ).setLogic( PHYS_1TO4ZDC_A_VZDC_C & physcond)
1525  MenuItem('L1_VZDC_A_1ZDC_C' ).setLogic( PHYS_VZDC_A_1TO4ZDC_C & physcond)
1526  MenuItem('L1_1ZDC_A_1ZDC_C').setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & physcond)
1527  MenuItem('L1_5ZDC_A_VZDC_C' ).setLogic( PHYS_5ZDC_A_VZDC_C & physcond)
1528  MenuItem('L1_VZDC_A_5ZDC_C' ).setLogic( PHYS_VZDC_A_5ZDC_C & physcond)
1529  MenuItem('L1_ZDC_1XOR5' ).setLogic( PHYS_ZDC_1TO4XOR5 & physcond)
1530  MenuItem('L1_5ZDC_A_5ZDC_C' ).setLogic( PHYS_5ZDC_A_5ZDC_C & physcond)
1531 
1532  MenuItem('L1_1ZDC_A_1ZDC_C_VTE200').setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.TE200) & physcond)
1533  MenuItem('L1_1ZDC_A_1ZDC_C_VjTE200').setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & physcond)
1534  MenuItem('L1_1ZDC_A_1ZDC_C_VjTE200_GAP_AANDC').setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & GAPAC & physcond)
1535  MenuItem('L1_ZDC_1XOR5_VTE200').setLogic( PHYS_ZDC_1TO4XOR5 & Not(d.TE200) & physcond)
1536  MenuItem('L1_ZDC_1XOR5_VjTE200').setLogic( PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & physcond)
1537  MenuItem('L1_ZDC_XOR_VjTE200' ).setLogic(ZDC_XOR & Not(d.jTE200) & physcond)
1538  MenuItem('L1_MBTS_1_VZDC_A_ZDC_C_VTE200' ).setLogic( MBTS_1 & PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1539  MenuItem('L1_MBTS_1_VZDC_A_ZDC_C_VjTE200' ).setLogic( MBTS_1 & PHYS_VZDC_A_ZDC_C & Not(d.jTE200) & physcond)
1540  MenuItem('L1_MBTS_1_VZDC_A_ZDC_C_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_VZDC_A_ZDC_C & Not(d.jTE200) & GAPA & physcond)
1541  MenuItem('L1_MBTS_1_VZDC_A_ZDC_C_jTE3_VjTE200' ).setLogic( MBTS_1 & PHYS_VZDC_A_ZDC_C & d.jTE3 &Not(d.jTE200) & physcond)
1542  MenuItem('L1_MBTS_1_VZDC_A_ZDC_C_jTE3_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_VZDC_A_ZDC_C & d.jTE3 & Not(d.jTE200) & GAPA & physcond)
1543  MenuItem('L1_MBTS_1_VZDC_A_ZDC_C_jTE5_VjTE200' ).setLogic( MBTS_1 & PHYS_VZDC_A_ZDC_C & d.jTE5 &Not(d.jTE200) & physcond)
1544  MenuItem('L1_MBTS_1_VZDC_A_ZDC_C_jTE5_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_VZDC_A_ZDC_C & d.jTE5 & Not(d.jTE200) & GAPA & physcond)
1545  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_VTE200' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.TE200) & physcond)
1546  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_VjTE200' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & physcond)
1547  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & GAPA & physcond)
1548  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_jTE3_VjTE200' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE3 & Not(d.jTE200) & physcond)
1549  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_jTE3_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE3 & Not(d.jTE200) & GAPA & physcond)
1550  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_jTE5_VjTE200' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE5 & Not(d.jTE200) & physcond)
1551  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_jTE5_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE5 & Not(d.jTE200) & GAPA & physcond)
1552  MenuItem('L1_MBTS_1_1ZDC_NZDC_VjTE200' ).setLogic( MBTS_1 & PHYS_1ZDC_NZDC & Not(d.jTE200) & physcond)
1553  MenuItem('L1_MBTS_1_1ZDC_NZDC_jTE3_VjTE200' ).setLogic( MBTS_1 & PHYS_1ZDC_NZDC & d.jTE3 & Not(d.jTE200) & physcond)
1554  MenuItem('L1_MBTS_1_1ZDC_NZDC_jTE3_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_1ZDC_NZDC & d.jTE3 & Not(d.jTE200) & GAPA & physcond)
1555  MenuItem('L1_MBTS_1_1ZDC_NZDC_jTE3_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_1ZDC_NZDC & d.jTE3 & Not(d.jTE200) & GAPC & physcond)
1556  MenuItem('L1_MBTS_1_1ZDC_NZDC_jTE5_VjTE200' ).setLogic( MBTS_1 & PHYS_1ZDC_NZDC & d.jTE5 & Not(d.jTE200) & physcond)
1557  MenuItem('L1_MBTS_1_1ZDC_NZDC_jTE5_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_1ZDC_NZDC & d.jTE5 & Not(d.jTE200) & GAPA & physcond)
1558  MenuItem('L1_MBTS_1_1ZDC_NZDC_jTE5_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_1ZDC_NZDC & d.jTE5 & Not(d.jTE200) & GAPC & physcond)
1559  MenuItem('L1_MBTS_1_ZDC_1XOR5_VTE200' ).setLogic( MBTS_1 & PHYS_ZDC_1TO4XOR5 & Not(d.TE200) & physcond)
1560  MenuItem('L1_MBTS_1_ZDC_1XOR5_VjTE200' ).setLogic( MBTS_1 & PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & physcond)
1561  MenuItem('L1_MBTS_1_ZDC_1XOR5_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & GAPA & physcond)
1562  MenuItem('L1_MBTS_1_ZDC_1XOR5_jTE3_VjTE200' ).setLogic( MBTS_1 & PHYS_ZDC_1TO4XOR5 & d.jTE3 & Not(d.jTE200) & physcond)
1563  MenuItem('L1_MBTS_1_ZDC_1XOR5_jTE5_VjTE200' ).setLogic( MBTS_1 & PHYS_ZDC_1TO4XOR5 & d.jTE5 & Not(d.jTE200) & physcond)
1564  MenuItem('L1_MBTS_1_ZDC_1XOR5_jTE5_VjTE200_GAP_A' ).setLogic( MBTS_1 & PHYS_ZDC_1TO4XOR5 & d.jTE5 & Not(d.jTE200) & GAPA & physcond)
1565  MenuItem('L1_MBTS_1_ZDC_A_VZDC_C_VjTE200' ).setLogic( MBTS_1 & PHYS_ZDC_A_VZDC_C & Not(d.jTE200) & physcond)
1566  MenuItem('L1_MBTS_1_ZDC_A_VZDC_C_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_ZDC_A_VZDC_C & Not(d.jTE200) & GAPC & physcond)
1567  MenuItem('L1_MBTS_1_ZDC_A_VZDC_C_jTE3_VjTE200' ).setLogic( MBTS_1 & PHYS_ZDC_A_VZDC_C & d.jTE3 & Not(d.jTE200) & physcond)
1568  MenuItem('L1_MBTS_1_ZDC_A_VZDC_C_jTE3_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_ZDC_A_VZDC_C & d.jTE3 & Not(d.jTE200) & GAPC & physcond)
1569  MenuItem('L1_MBTS_1_ZDC_A_VZDC_C_jTE5_VjTE200' ).setLogic( MBTS_1 & PHYS_ZDC_A_VZDC_C & d.jTE5 & Not(d.jTE200) & physcond)
1570  MenuItem('L1_MBTS_1_ZDC_A_VZDC_C_jTE5_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_ZDC_A_VZDC_C & d.jTE5 & Not(d.jTE200) & GAPC & physcond)
1571  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & GAPC & physcond)
1572  MenuItem('L1_MBTS_1_1ZDC_A_1ZDC_C_jTE5_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE5 & Not(d.jTE200) & GAPC & physcond)
1573  MenuItem('L1_MBTS_1_ZDC_1XOR5_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & GAPC & physcond)
1574  MenuItem('L1_MBTS_1_ZDC_1XOR5_jTE5_VjTE200_GAP_C' ).setLogic( MBTS_1 & PHYS_ZDC_1TO4XOR5 & d.jTE5 & Not(d.jTE200) & GAPC & physcond)
1575 
1576  MenuItem('L1_VZDC_A_ZDC_C_TE3_VTE200' ).setLogic( PHYS_VZDC_A_ZDC_C & d.TE3 & Not(d.TE200) & physcond)
1577  MenuItem('L1_VZDC_A_ZDC_C_jTE3_VjTE200' ).setLogic( PHYS_VZDC_A_ZDC_C &d.jTE3 & Not(d.jTE200) & physcond)
1578  MenuItem('L1_VZDC_A_ZDC_C_jTE3_VjTE200_GAP_A' ).setLogic( PHYS_VZDC_A_ZDC_C &d.jTE3 & Not(d.jTE200) & GAPA & physcond)
1579  MenuItem('L1_VZDC_A_ZDC_C_gTE3_VjTE200' ).setLogic( PHYS_VZDC_A_ZDC_C &d.gTE3 & Not(d.jTE200) & physcond)
1580  MenuItem('L1_1ZDC_A_1ZDC_C_TE3_VTE200' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & d.TE3 & Not(d.TE200) & physcond)
1581  MenuItem('L1_1ZDC_A_1ZDC_C_jTE3_VjTE200' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE3 & Not(d.jTE200) & physcond)
1582  MenuItem('L1_1ZDC_A_1ZDC_C_jTE3_VjTE200_GAP_A' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE3 & Not(d.jTE200) & GAPA & physcond)
1583  MenuItem('L1_1ZDC_NZDC_jTE3_VjTE200' ).setLogic( PHYS_1ZDC_NZDC & d.jTE3 & Not(d.jTE200) & physcond)
1584  MenuItem('L1_1ZDC_NZDC_jTE3_VjTE200_GAP_A' ).setLogic( PHYS_1ZDC_NZDC & d.jTE3 & Not(d.jTE200) & GAPA & physcond)
1585  MenuItem('L1_1ZDC_NZDC_jTE3_VjTE200_GAP_C' ).setLogic( PHYS_1ZDC_NZDC & d.jTE3 & Not(d.jTE200) & GAPC & physcond)
1586  MenuItem('L1_ZDC_1XOR5_TE3_VTE200' ).setLogic( PHYS_ZDC_1TO4XOR5 & d.TE3 & Not(d.TE200) & physcond)
1587  MenuItem('L1_ZDC_1XOR5_jTE3_VjTE200' ).setLogic( PHYS_ZDC_1TO4XOR5 & d.jTE3 & Not(d.jTE200) & physcond)
1588  MenuItem('L1_ZDC_1XOR5_jTE3_VjTE200_GAP_A' ).setLogic( PHYS_ZDC_1TO4XOR5 & d.jTE3 & Not(d.jTE200) & GAPA & physcond)
1589  MenuItem('L1_ZDC_A_VZDC_C_TE3_VTE200' ).setLogic( PHYS_ZDC_A_VZDC_C & d.TE3 & Not(d.TE200) & physcond)
1590  MenuItem('L1_ZDC_A_VZDC_C_jTE3_VjTE200' ).setLogic( PHYS_ZDC_A_VZDC_C & d.jTE3 & Not(d.jTE200) & physcond)
1591  MenuItem('L1_ZDC_A_VZDC_C_jTE3_VjTE200_GAP_C' ).setLogic( PHYS_ZDC_A_VZDC_C & d.jTE3 & Not(d.jTE200) & GAPC & physcond)
1592  MenuItem('L1_ZDC_A_VZDC_C_gTE3_VjTE200' ).setLogic( PHYS_ZDC_A_VZDC_C & d.gTE3 & Not(d.jTE200) & physcond)
1593  MenuItem('L1_1ZDC_A_1ZDC_C_jTE3_VjTE200_GAP_C' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE3 & Not(d.jTE200) & GAPC & physcond)
1594  MenuItem('L1_ZDC_1XOR5_jTE3_VjTE200_GAP_C' ).setLogic( PHYS_ZDC_1TO4XOR5 & d.jTE3 & Not(d.jTE200) & GAPC & physcond)
1595 
1596  MenuItem('L1_VZDC_A_ZDC_C_TE5_VTE200' ).setLogic( PHYS_VZDC_A_ZDC_C & d.TE5 & Not(d.TE200) & physcond)
1597  MenuItem('L1_VZDC_A_ZDC_C_jTE5_VjTE200' ).setLogic( PHYS_VZDC_A_ZDC_C &d.jTE5 & Not(d.jTE200) & physcond)
1598  MenuItem('L1_VZDC_A_ZDC_C_jTE5_VjTE200_GAP_A' ).setLogic( PHYS_VZDC_A_ZDC_C &d.jTE5 & Not(d.jTE200) & GAPA & physcond)
1599  MenuItem('L1_VZDC_A_ZDC_C_gTE5_VjTE200' ).setLogic( PHYS_VZDC_A_ZDC_C &d.gTE5 & Not(d.jTE200) & physcond)
1600  MenuItem('L1_1ZDC_A_1ZDC_C_TE5_VTE200' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & d.TE5 & Not(d.TE200) & physcond)
1601  MenuItem('L1_1ZDC_A_1ZDC_C_jTE5_VjTE200' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE5 & Not(d.jTE200) & physcond)
1602  MenuItem('L1_1ZDC_A_1ZDC_C_jTE5_VjTE200_GAP_A' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE5 & Not(d.jTE200) & GAPA & physcond)
1603  MenuItem('L1_1ZDC_NZDC_jTE5_VjTE200_GAP_A' ).setLogic( PHYS_1ZDC_NZDC & d.jTE5 & Not(d.jTE200) & GAPA & physcond)
1604  MenuItem('L1_1ZDC_NZDC_jTE5_VjTE200_GAP_C' ).setLogic( PHYS_1ZDC_NZDC & d.jTE5 & Not(d.jTE200) & GAPC & physcond)
1605  MenuItem('L1_ZDC_1XOR5_TE5_VTE200' ).setLogic( PHYS_ZDC_1TO4XOR5 & d.TE5 & Not(d.TE200) & physcond)
1606  MenuItem('L1_ZDC_1XOR5_jTE5_VjTE200' ).setLogic( PHYS_ZDC_1TO4XOR5 & d.jTE5 & Not(d.jTE200) & physcond)
1607  MenuItem('L1_ZDC_1XOR5_jTE5_VjTE200_GAP_A' ).setLogic( PHYS_ZDC_1TO4XOR5 & d.jTE5 & Not(d.jTE200) & GAPA & physcond)
1608  MenuItem('L1_ZDC_A_VZDC_C_TE5_VTE200' ).setLogic( PHYS_ZDC_A_VZDC_C & d.TE5 & Not(d.TE200) & physcond)
1609  MenuItem('L1_ZDC_A_VZDC_C_jTE5_VjTE200' ).setLogic( PHYS_ZDC_A_VZDC_C & d.jTE5 & Not(d.jTE200) & physcond)
1610  MenuItem('L1_ZDC_A_VZDC_C_jTE5_VjTE200_GAP_C' ).setLogic( PHYS_ZDC_A_VZDC_C & d.jTE5 & Not(d.jTE200) & GAPC & physcond)
1611  MenuItem('L1_ZDC_A_VZDC_C_gTE5_VjTE200' ).setLogic( PHYS_ZDC_A_VZDC_C & d.gTE5 & Not(d.jTE200) & physcond)
1612  MenuItem('L1_1ZDC_A_1ZDC_C_jTE5_VjTE200_GAP_C' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & d.jTE5 & Not(d.jTE200) & GAPC & physcond)
1613  MenuItem('L1_ZDC_1XOR5_jTE5_VjTE200_GAP_C' ).setLogic( PHYS_ZDC_1TO4XOR5 & d.jTE5 & Not(d.jTE200) & GAPC & physcond)
1614 
1615  MenuItem('L1_MBTS_1_ZDC_XOR_VTE200' ).setLogic( MBTS_1 & ZDC_XOR & Not(d.TE200) & physcond)
1616  MenuItem('L1_MBTS_1_ZDC_XOR_VjTE200' ).setLogic( MBTS_1 & ZDC_XOR & Not(d.jTE200) & physcond)
1617  MenuItem('L1_ZDC_XOR_TE3_VTE200' ).setLogic( ZDC_XOR & d.TE3 & Not(d.TE200) & physcond)
1618  MenuItem('L1_ZDC_XOR_jTE3_VjTE200' ).setLogic( ZDC_XOR & d.jTE3 & Not(d.jTE200) & physcond)
1619 
1620  MenuItem('L1_VZDC_A_ZDC_C_VTE200' ).setLogic( PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1621  MenuItem('L1_VZDC_A_ZDC_C_VjTE200' ).setLogic( PHYS_VZDC_A_ZDC_C & Not(d.jTE200) & physcond)
1622  MenuItem('L1_VZDC_A_ZDC_C_VjTE200_GAP_A' ).setLogic( PHYS_VZDC_A_ZDC_C & Not(d.jTE200) & GAPA & physcond)
1623  MenuItem('L1_1ZDC_A_1ZDC_C_VjTE200_GAP_A' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & GAPA & physcond)
1624  MenuItem('L1_1ZDC_A_1ZDC_C_VjTE200_GAP_C' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & GAPC & physcond)
1625  MenuItem('L1_ZDC_1XOR5_VjTE200_GAP_A' ).setLogic( PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & GAPA & physcond)
1626  MenuItem('L1_ZDC_1XOR5_VjTE200_GAP_C' ).setLogic( PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & GAPC & physcond)
1627  MenuItem('L1_ZDC_A_VZDC_C_VTE200' ).setLogic( PHYS_ZDC_A_VZDC_C & Not(d.TE200) & physcond)
1628  MenuItem('L1_ZDC_A_VZDC_C_VjTE200' ).setLogic( PHYS_ZDC_A_VZDC_C & Not(d.jTE200) & physcond)
1629  MenuItem('L1_ZDC_A_VZDC_C_VjTE200_GAP_C' ).setLogic( PHYS_ZDC_A_VZDC_C & Not(d.jTE200) & GAPC & physcond)
1630 
1631  MenuItem('L1_MBTS_2_VZDC_A_ZDC_C_VTE200' ).setLogic( MBTS_2 & PHYS_VZDC_A_ZDC_C & Not(d.TE200) & physcond)
1632  MenuItem('L1_MBTS_2_VZDC_A_ZDC_C_VjTE200' ).setLogic( MBTS_2 & PHYS_VZDC_A_ZDC_C & Not(d.jTE200) & physcond)
1633  MenuItem('L1_MBTS_2_VZDC_A_ZDC_C_VjTE200_GAP_A' ).setLogic( MBTS_2 & PHYS_VZDC_A_ZDC_C & Not(d.jTE200) & GAPA & physcond)
1634  MenuItem('L1_MBTS_2_1ZDC_A_1ZDC_C_VTE200' ).setLogic( MBTS_2 & PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.TE200) & physcond)
1635  MenuItem('L1_MBTS_2_1ZDC_A_1ZDC_C_VjTE200' ).setLogic( MBTS_2 & PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & physcond)
1636  MenuItem('L1_MBTS_2_1ZDC_A_1ZDC_C_VjTE200_GAP_A' ).setLogic( MBTS_2 & PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & GAPA & physcond)
1637  MenuItem('L1_MBTS_2_1ZDC_NZDC_VjTE200' ).setLogic( MBTS_2 & PHYS_1ZDC_NZDC & Not(d.jTE200) & physcond)
1638  MenuItem('L1_MBTS_2_1ZDC_NZDC_VjTE200_GAP_A' ).setLogic( MBTS_2 & PHYS_1ZDC_NZDC & Not(d.jTE200) & GAPA & physcond)
1639  MenuItem('L1_MBTS_2_1ZDC_NZDC_VjTE200_GAP_C' ).setLogic( MBTS_2 & PHYS_1ZDC_NZDC & Not(d.jTE200) & GAPC & physcond)
1640  MenuItem('L1_MBTS_2_ZDC_1XOR5_VTE200' ).setLogic( MBTS_2 & PHYS_ZDC_1TO4XOR5 & Not(d.TE200) & physcond)
1641  MenuItem('L1_MBTS_2_ZDC_1XOR5_VjTE200' ).setLogic( MBTS_2 & PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & physcond)
1642  MenuItem('L1_MBTS_2_ZDC_1XOR5_VjTE200_GAP_A' ).setLogic( MBTS_2 & PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & GAPA & physcond)
1643  MenuItem('L1_MBTS_2_ZDC_A_VZDC_C_VTE200' ).setLogic( MBTS_2 & PHYS_ZDC_A_VZDC_C & Not(d.TE200) & physcond)
1644  MenuItem('L1_MBTS_2_ZDC_A_VZDC_C_VjTE200' ).setLogic( MBTS_2 & PHYS_ZDC_A_VZDC_C & Not(d.jTE200) & physcond)
1645  MenuItem('L1_MBTS_2_ZDC_A_VZDC_C_VjTE200_GAP_C' ).setLogic( MBTS_2 & PHYS_ZDC_A_VZDC_C & Not(d.jTE200) & GAPC & physcond)
1646  MenuItem('L1_MBTS_2_1ZDC_A_1ZDC_C_VjTE200_GAP_C' ).setLogic( MBTS_2 & PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE200) & GAPC & physcond)
1647  MenuItem('L1_MBTS_2_ZDC_1XOR5_VjTE200_GAP_C' ).setLogic( MBTS_2 & PHYS_ZDC_1TO4XOR5 & Not(d.jTE200) & GAPC & physcond)
1648 
1649  MenuItem('L1_VZDC_A_VZDC_C_TE5_VTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & d.TE5 & Not(d.TE200) & physcond)
1650  MenuItem('L1_VZDC_A_VZDC_C_jTE5_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & d.jTE5 & Not(d.jTE200) & physcond)
1651  MenuItem('L1_VZDC_A_VZDC_C_gTE5_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & d.gTE5 & Not(d.jTE200) & physcond)
1652  MenuItem('L1_VZDC_A_VZDC_C_TE10_VTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & d.TE10 & Not(d.TE200) & physcond)
1653  MenuItem('L1_VZDC_A_VZDC_C_jTE10_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & d.jTE10 & Not(d.jTE200) & physcond)
1654  MenuItem('L1_1ZDC_NZDC_jTE10_VjTE200' ).setLogic( PHYS_1ZDC_NZDC & d.jTE10 & Not(d.jTE200) & physcond)
1655  MenuItem('L1_ZDC_XOR_jTE10_VjTE200' ).setLogic( ZDC_XOR & d.jTE10 & Not(d.jTE200) & physcond)
1656  MenuItem('L1_ZDC_5XOR_TE5_VTE200' ).setLogic( PHYS_ZDC_5XOR & d.TE5 & Not(d.TE200) & physcond)
1657  MenuItem('L1_ZDC_5XOR_jTE5_VjTE200' ).setLogic( PHYS_ZDC_5XOR & d.jTE5 & Not(d.jTE200) & physcond)
1658  MenuItem('L1_ZDC_XOR4_TE5_VTE200' ).setLogic( PHYS_ZDC_XOR4 & d.TE5 & Not(d.TE200) & physcond)
1659  MenuItem('L1_ZDC_XOR4_jTE5_VjTE200' ).setLogic( PHYS_ZDC_XOR4 & d.jTE5 & Not(d.jTE200) & physcond)
1660  MenuItem('L1_ZDC_XOR_jTE5_VjTE200' ).setLogic(ZDC_XOR & d.jTE5 & Not(d.jTE200) & physcond)
1661  MenuItem('L1_ZDC_XOR_gTE5_VjTE200' ).setLogic(ZDC_XOR & d.gTE5 & Not(d.jTE200) & physcond)
1662  MenuItem('L1_VZDC_A_VZDC_C_VTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & Not(d.TE200) & physcond)
1663  MenuItem('L1_VZDC_A_VZDC_C_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & Not(d.jTE200) & physcond)
1664  # ATR-30533
1665  MenuItem('L1_VZDC_A_VZDC_C_jJ5_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & d.jJ5 & Not(d.jTE200) & physcond)
1666  MenuItem('L1_1ZDC_NZDC_jJ5_VjTE200' ).setLogic( PHYS_1ZDC_NZDC & d.jJ5 & Not(d.jTE200) & physcond)
1667  MenuItem('L1_ZDC_XOR_jJ5_VjTE200' ).setLogic( ZDC_XOR & d.jJ5 & Not(d.jTE200) & physcond)
1668  MenuItem('L1_VZDC_A_VZDC_C_jJ10_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & d.jJ10 & Not(d.jTE200) & physcond)
1669  MenuItem('L1_1ZDC_NZDC_jJ10_VjTE200' ).setLogic( PHYS_1ZDC_NZDC & d.jJ10 & Not(d.jTE200) & physcond)
1670  MenuItem('L1_ZDC_XOR_jJ10_VjTE200' ).setLogic( ZDC_XOR & d.jJ10 & Not(d.jTE200) & physcond)
1671 
1672  # jJ + ZDC + TeATIME for 2025
1673  MenuItem('L1_TEA_1ZDC_NZDC_jJ10_VjTE200' ).setLogic( PHYS_1ZDC_NZDC & TeATIME & d.jJ10 & Not(d.jTE200) & physcond)
1674  MenuItem('L1_TEA_1ZDC_NZDC_jJ5_VjTE200' ).setLogic( PHYS_1ZDC_NZDC & TeATIME & d.jJ5 & Not(d.jTE200) & physcond)
1675  MenuItem('L1_TEA_5ZDC_A_5ZDC_C_jJ10_VjTE200' ).setLogic( PHYS_5ZDC_A_5ZDC_C & TeATIME & d.jJ10 & Not(d.jTE200) & physcond)
1676  MenuItem('L1_TEA_5ZDC_A_5ZDC_C_jJ5_VjTE200' ).setLogic( PHYS_5ZDC_A_5ZDC_C & TeATIME & d.jJ5 & Not(d.jTE200) & physcond)
1677  MenuItem('L1_TEA_VZDC_A_VZDC_C_jJ10_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & TeATIME & d.jJ10 & Not(d.jTE200) & physcond)
1678  MenuItem('L1_TEA_VZDC_A_VZDC_C_jJ10p30ETA49_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & TeATIME & d.jJ1030ETA49 & Not(d.jTE200) & physcond)
1679  MenuItem('L1_TEA_VZDC_A_VZDC_C_jJ5_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & TeATIME & d.jJ5 & Not(d.jTE200) & physcond)
1680  MenuItem('L1_TEA_VZDC_A_VZDC_C_jJ5p30ETA49_VjTE200' ).setLogic( PHYS_VZDC_A_VZDC_C & TeATIME & d.jJ530ETA49 & Not(d.jTE200) & physcond)
1681  MenuItem('L1_TEA_ZDC_5XOR_jJ10_VjTE200' ).setLogic( PHYS_ZDC_5XOR & TeATIME & d.jJ10 & Not(d.jTE200) & physcond)
1682  MenuItem('L1_TEA_ZDC_5XOR_jJ5_VjTE200' ).setLogic( PHYS_ZDC_5XOR & TeATIME & d.jJ5 & Not(d.jTE200) & physcond)
1683  MenuItem('L1_TEA_ZDC_XOR_jJ10_VjTE200' ).setLogic( ZDC_XOR & TeATIME & d.jJ10 & Not(d.jTE200) & physcond)
1684  MenuItem('L1_TEA_ZDC_XOR_jJ10p30ETA49_VjTE200' ).setLogic( ZDC_XOR & TeATIME & d.jJ1030ETA49 & Not(d.jTE200) & physcond)
1685  MenuItem('L1_TEA_ZDC_XOR_jJ5_VjTE200' ).setLogic( ZDC_XOR & TeATIME & d.jJ5 & Not(d.jTE200) & physcond)
1686  MenuItem('L1_TEA_ZDC_XOR_jJ5p30ETA49_VjTE200' ).setLogic( ZDC_XOR & TeATIME & d.jJ530ETA49 & Not(d.jTE200) & physcond)
1687 
1688  # UPC HMT with TeAsymmetry for 2025
1689  MenuItem('L1_TEA_ASYM0_TRT_ZDC_XOR_VjTE200' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet0 & d.NIMTRT & ZDC_XOR & TeATIME & Not(d.jTE200) & physcond)
1690  MenuItem('L1_TEA_ASYM1_TRT_ZDC_XOR_VjTE200' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet1 & d.NIMTRT & ZDC_XOR & TeATIME & Not(d.jTE200) & physcond)
1691  MenuItem('L1_TEA_ASYM2_TRT_ZDC_XOR_VjTE200' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet2 & d.NIMTRT & ZDC_XOR & TeATIME & Not(d.jTE200) & physcond)
1692  MenuItem('L1_TEA_ASYM3_TRT_ZDC_XOR_VjTE200' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet3 & d.NIMTRT & ZDC_XOR & TeATIME & Not(d.jTE200) & physcond)
1693 
1694  MenuItem('L1_TEA_ASYM0_ZDC_XOR_VjTE200' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet0 & ZDC_XOR & TeATIME & Not(d.jTE200) & physcond)
1695  MenuItem('L1_TEA_ASYM1_ZDC_XOR_VjTE200' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet1 & ZDC_XOR & TeATIME & Not(d.jTE200) & physcond)
1696  MenuItem('L1_TEA_ASYM2_ZDC_XOR_VjTE200' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet2 & ZDC_XOR & TeATIME & Not(d.jTE200) & physcond)
1697  MenuItem('L1_TEA_ASYM3_ZDC_XOR_VjTE200' ).setLogic( d.TOPO_TeAsymmetry_jTENoSort_ParamSet3 & ZDC_XOR & TeATIME & Not(d.jTE200) & physcond)
1698 
1699  # Ditaus for 2025
1700  MenuItem('L1_eEM2_TRT_VZDC_A_VZDC_C_VjTE200' ).setLogic( d.eEM2 & d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE200) & physcond)
1701  MenuItem('L1_eEM2_TRT_ZDC_OR_VjTE200' ).setLogic( d.eEM2 & d.NIMTRT & ZDC_OR & Not(d.jTE200) & physcond)
1702  MenuItem('L1_eTAU2_TRT_VZDC_A_VZDC_C_VjTE200' ).setLogic( d.eTAU2 & d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE200) & physcond)
1703  MenuItem('L1_eTAU2_TRT_ZDC_OR_VjTE200' ).setLogic( d.eTAU2 & d.NIMTRT & ZDC_OR & Not(d.jTE200) & physcond)
1704 
1705  MenuItem('L1_TEA_eEM2_VjTE200' ).setLogic( d.eEM2 & TeATIME & Not(d.jTE200) & physcond)
1706  MenuItem('L1_TEA_eTAU2_VjTE200' ).setLogic( d.eTAU2 & TeATIME & Not(d.jTE200) & physcond)
1707 
1708  # ATR-30727
1709  MenuItem('L1_eTAU1_jJ5_VjTE200' ).setLogic( d.eTAU1 & d.jJ5 & Not(d.jTE200) & physcond)
1710  MenuItem('L1_jJ5_TRT_VjTE200' ).setLogic( d.jJ5 & d.NIMTRT & Not(d.jTE200) & physcond)
1711  MenuItem('L1_eTAU1_jJ5_TRT_VjTE200' ).setLogic( d.eTAU1 & d.jJ5 & d.NIMTRT & Not(d.jTE200) & physcond)
1712  MenuItem('L1_2jJ5_VjTE200' ).setLogic( d.jJ5.x(2) & Not(d.jTE200) & physcond)
1713  MenuItem('L1_2jJ5_TRT_VjTE200' ).setLogic( d.jJ5.x(2) & d.NIMTRT & Not(d.jTE200) & physcond)
1714  MenuItem('L1_jJ5p30ETA49_VjTE200' ).setLogic( d.jJ530ETA49 & Not(d.jTE200) & physcond)
1715  MenuItem('L1_jJ10p30ETA49_VjTE200' ).setLogic( d.jJ1030ETA49 & Not(d.jTE200) & physcond)
1716  MenuItem('L1_2jJ5p30ETA49_VjTE200' ).setLogic( d.jJ530ETA49.x(2) & Not(d.jTE200) & physcond)
1717  MenuItem('L1_2jJ10p30ETA49_VjTE200' ).setLogic( d.jJ1030ETA49.x(2) & Not(d.jTE200) & physcond)
1718 
1719  MenuItem('L1_VZDC_A_VZDC_C_TE5_VTE200_UNPAIRED_ISO' ).setLogic( PHYS_VZDC_A_VZDC_C & d.TE5 & Not(d.TE200) & unpaired_isocond)
1720  MenuItem('L1_VZDC_A_VZDC_C_jTE5_VjTE200_UNPAIRED_ISO' ).setLogic( PHYS_VZDC_A_VZDC_C & d.jTE5 & Not(d.jTE200) & unpaired_isocond)
1721  MenuItem('L1_VZDC_A_VZDC_C_gTE5_VjTE200_UNPAIRED_ISO' ).setLogic( PHYS_VZDC_A_VZDC_C & d.gTE5 & Not(d.jTE200) & unpaired_isocond)
1722  MenuItem('L1_ZDC_XOR_TE5_VTE200_UNPAIRED_ISO' ).setLogic(ZDC_XOR & d.TE5 & Not(d.TE200) & unpaired_isocond)
1723  MenuItem('L1_ZDC_XOR_jTE5_VjTE200_UNPAIRED_ISO' ).setLogic(ZDC_XOR & d.jTE5 & Not(d.jTE200) & unpaired_isocond)
1724  MenuItem('L1_ZDC_XOR_gTE5_VjTE200_UNPAIRED_ISO' ).setLogic(ZDC_XOR & d.gTE5 & Not(d.jTE200) & unpaired_isocond)
1725  MenuItem('L1_5ZDC_A_5ZDC_C_TE5_VTE200' ).setLogic( PHYS_5ZDC_A_5ZDC_C & d.TE5 & Not(d.TE200) & physcond)
1726  MenuItem('L1_5ZDC_A_5ZDC_C_jTE5_VjTE200' ).setLogic( PHYS_5ZDC_A_5ZDC_C & d.jTE5 & Not(d.jTE200) & physcond)
1727  MenuItem('L1_5ZDC_A_5ZDC_C_gTE5_VjTE200' ).setLogic( PHYS_5ZDC_A_5ZDC_C & d.gTE5 & Not(d.jTE200) & physcond)
1728  MenuItem('L1_ZDC_XOR_TE5' ).setLogic(ZDC_XOR & d.TE5 & physcond)
1729  MenuItem('L1_ZDC_XOR_jTE5' ).setLogic(ZDC_XOR & d.jTE5 & physcond)
1730  MenuItem('L1_VZDC_A_VZDC_C_TE5' ).setLogic( PHYS_VZDC_A_VZDC_C & d.TE5 & physcond)
1731  MenuItem('L1_VZDC_A_VZDC_C_jTE5' ).setLogic( PHYS_VZDC_A_VZDC_C & d.jTE5 & physcond)
1732  MenuItem('L1_1ZDC_NZDC_TE5_VTE200' ).setLogic( PHYS_1ZDC_NZDC & d.TE5 & Not(d.TE200) & physcond)
1733  MenuItem('L1_1ZDC_NZDC_jTE5_VjTE200' ).setLogic( PHYS_1ZDC_NZDC & d.jTE5 & Not(d.jTE200) & physcond)
1734  MenuItem('L1_1ZDC_NZDC_gTE5_VjTE200' ).setLogic( PHYS_1ZDC_NZDC & d.gTE5 & Not(d.jTE200) & physcond)
1735 
1736  MenuItem('L1_ZDC_A_C_VTE10' ).setLogic( ZDC_A_C & Not(d.TE10) & physcond)
1737  MenuItem('L1_ZDC_A_C_VjTE10' ).setLogic( ZDC_A_C & Not(d.jTE10) & physcond)
1738  MenuItem('L1_ZDC_A_C_VTE10_UNPAIRED_ISO' ).setLogic( ZDC_A_C & Not(d.TE10) & unpaired_isocond)
1739  MenuItem('L1_ZDC_A_C_VjTE10_UNPAIRED_ISO' ).setLogic( ZDC_A_C & Not(d.jTE10) & unpaired_isocond)
1740  MenuItem('L1_ZDC_A_C_VTE10_UNPAIRED_NONISO' ).setLogic( ZDC_A_C & Not(d.TE10) & unpaired_nonisocond)
1741  MenuItem('L1_ZDC_A_C_VjTE10_UNPAIRED_NONISO' ).setLogic( ZDC_A_C & Not(d.jTE10) & unpaired_nonisocond)
1742  MenuItem('L1_ZDC_A_C_VTE10_EMPTY' ).setLogic( ZDC_A_C & Not(d.TE10) & cosmiccond)
1743  MenuItem('L1_ZDC_A_C_VjTE10_EMPTY' ).setLogic( ZDC_A_C & Not(d.jTE10) & cosmiccond)
1744  MenuItem('L1_ZDC_XOR_VTE10' ).setLogic(ZDC_XOR & Not(d.TE10) & physcond)
1745  MenuItem('L1_ZDC_XOR_VjTE10' ).setLogic(ZDC_XOR & Not(d.jTE10) & physcond)
1746  MenuItem('L1_ZDC_XOR_VjTE10_UNPAIRED_NONISO' ).setLogic(ZDC_XOR & Not(d.jTE10) & unpaired_nonisocond)
1747  MenuItem('L1_ZDC_OR_VTE200_UNPAIRED_ISO' ).setLogic( ZDCOR & Not(d.TE200) & unpaired_isocond)
1748  MenuItem('L1_MBTS_1_ZDC_OR_VTE200_UNPAIRED_ISO' ).setLogic( MBTS_1 & ZDCOR & Not(d.TE200) & unpaired_isocond)
1749  MenuItem('L1_ZDC_OR_VjTE200_UNPAIRED_ISO' ).setLogic( ZDCOR & Not(d.jTE200) & unpaired_isocond)
1750  MenuItem('L1_MBTS_1_ZDC_OR_VjTE200_UNPAIRED_ISO' ).setLogic( MBTS_1 & ZDCOR & Not(d.jTE200) & unpaired_isocond)
1751  MenuItem('L1_TRT_ZDC_A_C_VjTE10' ).setLogic(d.NIMTRT & ZDC_A_C & Not(d.jTE10) & physcond)
1752  MenuItem('L1_TRT_ZDC_XOR_VjTE10' ).setLogic(d.NIMTRT & ZDC_XOR & Not(d.jTE10) & physcond)
1753  MenuItem('L1_TRT_ZDC_XOR_VjTE10_UNPAIRED_NONISO' ).setLogic(d.NIMTRT & ZDC_XOR & Not(d.jTE10) & unpaired_nonisocond)
1754  MenuItem('L1_VZDC_A_VZDC_C_VjTE50').setLogic(PHYS_VZDC_A_VZDC_C & Not(d.jTE50) & physcond)
1755  MenuItem('L1_ZDC_A_VjTE200').setLogic(ZDC_A & Not(d.jTE200) & physcond)
1756  MenuItem('L1_ZDC_C_VjTE200').setLogic(ZDC_C & Not(d.jTE200) & physcond)
1757  MenuItem('L1_TRT_ZDC_A_VjTE50').setLogic(d.NIMTRT & ZDC_A & Not(d.jTE50) & physcond)
1758  MenuItem('L1_TRT_ZDC_C_VjTE50').setLogic(d.NIMTRT & ZDC_C & Not(d.jTE50) & physcond)
1759 
1760  MenuItem('L1_TAU1_VZDC_A_VZDC_C_VTE100' ).setLogic( d.HA1 & PHYS_VZDC_A_VZDC_C & Not(d.TE100) & physcond)
1761  MenuItem('L1_TAU1_ZDC_XOR4_VTE100' ).setLogic( d.HA1 & PHYS_ZDC_XOR4 & Not(d.TE100) & physcond)
1762  MenuItem('L1_eEM1_VZDC_A_VZDC_C_VjTE100' ).setLogic( d.eEM1 & PHYS_VZDC_A_VZDC_C & Not(d.jTE100) & physcond)
1763  MenuItem('L1_eEM1_ZDC_XOR4_VjTE100' ).setLogic( d.eEM1 & PHYS_ZDC_XOR4 & Not(d.jTE100) & physcond)
1764  MenuItem('L1_eEM1_VZDC_A_VZDC_C_VjTE100_GAP_AANDC' ).setLogic( d.eEM1 & PHYS_VZDC_A_VZDC_C & Not(d.jTE100) & GAPAC & physcond)
1765  MenuItem('L1_eEM1_ZDC_XOR4_VjTE100_GAP_AANDC' ).setLogic( d.eEM1 & PHYS_ZDC_XOR4 & Not(d.jTE100) & GAPAC & physcond)
1766  MenuItem('L1_TAU2_VZDC_A_VZDC_C_VTE100' ).setLogic( d.HA2 & PHYS_VZDC_A_VZDC_C & Not(d.TE100) & physcond)
1767  MenuItem('L1_TAU2_ZDC_XOR4_VTE100' ).setLogic( d.HA2 & PHYS_ZDC_XOR4 & Not(d.TE100) & physcond)
1768  MenuItem('L1_eEM2_VZDC_A_VZDC_C_VjTE100' ).setLogic( d.eEM2 & PHYS_VZDC_A_VZDC_C & Not(d.jTE100) & physcond)
1769  MenuItem('L1_eEM2_ZDC_XOR4_VjTE100' ).setLogic( d.eEM2 & PHYS_ZDC_XOR4 & Not(d.jTE100) & physcond)
1770  MenuItem('L1_eEM2_VZDC_A_VZDC_C_VjTE100_GAP_AANDC' ).setLogic( d.eEM2 & PHYS_VZDC_A_VZDC_C & Not(d.jTE100) & GAPAC & physcond)
1771  MenuItem('L1_eEM2_ZDC_XOR4_VjTE100_GAP_AANDC' ).setLogic( d.eEM2 & PHYS_ZDC_XOR4 & Not(d.jTE100) & GAPAC & physcond)
1772  MenuItem('L1_TAU1_TRT_VZDC_A_VZDC_C_VTE100' ).setLogic( d.HA1 & d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.TE100) & physcond)
1773  MenuItem('L1_TAU1_TRT_ZDC_XOR4_VTE100' ).setLogic( d.HA1 & d.NIMTRT & PHYS_ZDC_XOR4 & Not(d.TE100) & physcond)
1774  MenuItem('L1_eTAU1_TRT_VZDC_A_VZDC_C_VjTE100' ).setLogic( d.eTAU1 & d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE100) & physcond)
1775  MenuItem('L1_eTAU1_TRT_ZDC_XOR4_VjTE100' ).setLogic( d.eTAU1 & d.NIMTRT & PHYS_ZDC_XOR4 & Not(d.jTE100) & physcond)
1776  MenuItem('L1_eEM1_TRT_VZDC_A_VZDC_C_VjTE100' ).setLogic( d.eEM1 & d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE100) & physcond)
1777  MenuItem('L1_eEM1_TRT_ZDC_XOR4_VjTE100' ).setLogic( d.eEM1 & d.NIMTRT & PHYS_ZDC_XOR4 & Not(d.jTE100) & physcond)
1778  MenuItem('L1_TAU1_TRT_VTE50' ).setLogic( d.HA1 & d.NIMTRT & Not(d.TE50) & physcond)
1779  MenuItem('L1_TRT_VZDC_A_VZDC_C_VTE50' ).setLogic( d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.TE50) & physcond)
1780  MenuItem('L1_TRT_VZDC_A_VZDC_C_VTE20' ).setLogic( d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.TE20) & physcond)
1781  MenuItem('L1_TRT_VZDC_A_VZDC_C_VTE200' ).setLogic( d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.TE200) & physcond)
1782  MenuItem('L1_TRT_VZDC_A_VZDC_C_VjTE50' ).setLogic( d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE50) & physcond)
1783  MenuItem('L1_TRT_VZDC_A_VZDC_C_VjTE20' ).setLogic( d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE20) & physcond)
1784  MenuItem('L1_TRT_VZDC_A_VZDC_C_VjTE50_GAP_AANDC' ).setLogic( d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE50) & GAPAC & physcond)
1785  MenuItem('L1_TRT_VZDC_A_VZDC_C_VjTE20_GAP_AANDC' ).setLogic( d.NIMTRT & PHYS_VZDC_A_VZDC_C & Not(d.jTE20) & GAPAC & physcond)
1786  MenuItem('L1_TRT_VZDC_A_VZDC_C_jTE5_VjTE200' ).setLogic( d.NIMTRT & PHYS_VZDC_A_VZDC_C & d.jTE5 & Not(d.jTE200) & physcond)
1787  MenuItem('L1_eEM1_TRT_VjTE100' ).setLogic( d.eEM1 & d.NIMTRT & Not(d.jTE100) & physcond)
1788  MenuItem('L1_eEM1_TRT_VjTE200' ).setLogic( d.eEM1 & d.NIMTRT & Not(d.jTE200) & physcond)
1789  MenuItem('L1_eTAU1_TRT_VjTE100' ).setLogic( d.eTAU1 & d.NIMTRT & Not(d.jTE100) & physcond)
1790  MenuItem('L1_eTAU1_TRT_VjTE200' ).setLogic( d.eTAU1 & d.NIMTRT & Not(d.jTE200) & physcond)
1791  MenuItem('L1_jTAU1_TRT_VjTE100' ).setLogic( d.jTAU1 & d.NIMTRT & Not(d.jTE100) & physcond)
1792  MenuItem('L1_eEM1_TRT_VjTE100_GAP_AANDC' ).setLogic( d.eEM1 & d.NIMTRT & Not(d.jTE100) & GAPAC & physcond)
1793  MenuItem('L1_eTAU1_TRT_VjTE100_GAP_AANDC' ).setLogic( d.eTAU1 & d.NIMTRT & Not(d.jTE100) & GAPAC & physcond)
1794  MenuItem('L1_jTAU1_TRT_VjTE100_GAP_AANDC' ).setLogic( d.jTAU1 & d.NIMTRT & Not(d.jTE100) & GAPAC & physcond)
1795  MenuItem('L1_eEM1_TRT_VjTE200_GAP_AANDC' ).setLogic( d.eEM1 & d.NIMTRT & Not(d.jTE200) & GAPAC & physcond)
1796  MenuItem('L1_eTAU1_TRT_VjTE200_GAP_AANDC' ).setLogic( d.eTAU1 & d.NIMTRT & Not(d.jTE200) & GAPAC & physcond)
1797 
1798  MenuItem('L1_1ZDC_A_1ZDC_C_VTE50' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.TE50) & physcond)
1799  MenuItem('L1_1ZDC_A_1ZDC_C_VjTE50_GAP_AANDC' ).setLogic( PHYS_1TO4ZDC_A_1TO4ZDC_C & Not(d.jTE50) & GAPAC & physcond)
1800  MenuItem('L1_VZDC_A_VZDC_C_VTE50' ).setLogic( PHYS_VZDC_A_VZDC_C & Not(d.TE50) & physcond)
1801  MenuItem('L1_VZDC_A_VZDC_C_VjTE50_GAP_AANDC' ).setLogic( PHYS_VZDC_A_VZDC_C & Not(d.jTE50) & GAPAC & physcond)
1802  MenuItem('L1_ZDC_XOR4_VTE50' ).setLogic( PHYS_ZDC_XOR4 & Not(d.TE50) & physcond)
1803  MenuItem('L1_ZDC_XOR4_VjTE50_GAP_AANDC' ).setLogic( PHYS_ZDC_XOR4 & Not(d.jTE50) & GAPAC & physcond)
1804  MenuItem('L1_ZDC_XOR4_VTE200' ).setLogic( PHYS_ZDC_XOR4 & Not(d.TE200) & physcond)
1805  MenuItem('L1_ZDC_XOR4_VjTE200_GAP_AANDC' ).setLogic( PHYS_ZDC_XOR4 & Not(d.jTE200) & GAPAC & physcond)
1806  MenuItem('L1_VZDC_A_VZDC_C_VjTE200_GAP_AANDC' ).setLogic( PHYS_VZDC_A_VZDC_C & Not(d.jTE200) & GAPAC & physcond)
1807 
1808  #ATR-30208
1809  MenuItem('L1_TRT_ZDC_XOR_VjTE200' ).setLogic( d.NIMTRT & ZDC_XOR & Not(d.jTE200) & physcond)
1810  MenuItem('L1_eEM1_TRT_ZDC_XOR_VjTE200' ).setLogic( d.eEM1 & d.NIMTRT & ZDC_XOR & Not(d.jTE200) & physcond)
1811  MenuItem('L1_eTAU1_TRT_ZDC_XOR_VjTE200' ).setLogic( d.eTAU1 & d.NIMTRT & ZDC_XOR & Not(d.jTE200) & physcond)
1812  MenuItem('L1_jTAU1_TRT_ZDC_XOR_VjTE200' ).setLogic( d.jTAU1 & d.NIMTRT & ZDC_XOR & Not(d.jTE200) & physcond)
1813  MenuItem('L1_TRT_1ZDC_NZDC_VjTE200' ).setLogic( d.NIMTRT & PHYS_1ZDC_NZDC & Not(d.jTE200) & physcond)
1814  # ATR-30471
1815  MenuItem('L1_TRT_ZDC_XOR_jTE5_VjTE200' ).setLogic( d.NIMTRT & ZDC_XOR & d.jTE5 & Not(d.jTE200) & physcond)
1816 
1817  #ATR-30020
1818  MenuItem('L1_ZDC_HELT20_jTEFWD2600').setLogic( ZDC_HELT20 & d.jTEFWD2600 & physcond )
1819  MenuItem('L1_ZDC_HELT35_jTEFWD2600').setLogic( ZDC_HELT35 & d.jTEFWD2600 & physcond )
1820  MenuItem('L1_ZDC_HELT50_jTEFWD2600').setLogic( ZDC_HELT50 & d.jTEFWD2600 & physcond )
1821 
1822  # ATR-14967
1823  MenuItem('L1_TE5_VZDC_A' ).setLogic( d.TE5 & Not(ZDC_A) & physcond)
1824  MenuItem('L1_TE5_VZDC_C' ).setLogic( d.TE5 & Not(ZDC_C) & physcond)
1825  MenuItem('L1_TE10_VZDC_A' ).setLogic( d.TE10 & Not(ZDC_A) & physcond)
1826  MenuItem('L1_TE10_VZDC_C' ).setLogic( d.TE10 & Not(ZDC_C) & physcond)
1827  MenuItem('L1_TE20_VZDC_A' ).setLogic( d.TE20 & Not(ZDC_A) & physcond)
1828  MenuItem('L1_TE20_VZDC_C' ).setLogic( d.TE20 & Not(ZDC_C) & physcond)
1829  MenuItem('L1_VTE10_VZDC_A' ).setLogic( Not(d.TE10) & Not(ZDC_A) & physcond)
1830  MenuItem('L1_VTE10_VZDC_C' ).setLogic( Not(d.TE10) & Not(ZDC_C) & physcond)
1831  MenuItem('L1_J5_VZDC_A' ).setLogic( d.J5 & Not(ZDC_A) & physcond)
1832  MenuItem('L1_J5_VZDC_C' ).setLogic( d.J5 & Not(ZDC_C) & physcond)
1833  MenuItem('L1_J10_VZDC_A' ).setLogic( d.J10 & Not(ZDC_A) & physcond)
1834  MenuItem('L1_J10_VZDC_C' ).setLogic( d.J10 & Not(ZDC_C) & physcond)
1835  MenuItem('L1_J15_VZDC_A' ).setLogic( d.J15 & Not(ZDC_A) & physcond)
1836  MenuItem('L1_J15_VZDC_C' ).setLogic( d.J15 & Not(ZDC_C) & physcond)
1837  MenuItem('L1_J20_VZDC_A' ).setLogic( d.J20 & Not(ZDC_A) & physcond)
1838  MenuItem('L1_J20_VZDC_C' ).setLogic( d.J20 & Not(ZDC_C) & physcond)
1839  MenuItem('L1_MU3V_VZDC_A' ).setLogic( d.MU3V & Not(ZDC_A) & physcond).setTriggerType(TT.muon)
1840  MenuItem('L1_MU3V_VZDC_C' ).setLogic( d.MU3V & Not(ZDC_C) & physcond).setTriggerType(TT.muon)
1841  MenuItem('L1_2MU3V_VZDC_A' ).setLogic( d.MU3V.x(2) & Not(ZDC_A) & physcond).setTriggerType(TT.muon)
1842  MenuItem('L1_2MU3V_VZDC_C' ).setLogic( d.MU3V.x(2) & Not(ZDC_C) & physcond).setTriggerType(TT.muon)
1843 
1844  MenuItem('L1_MU3V_VTE10_VZDC_A' ).setLogic( d.MU3V & Not(d.TE10) & Not(ZDC_A) & physcond).setTriggerType(TT.muon)
1845  MenuItem('L1_MU3V_VTE10_VZDC_C' ).setLogic( d.MU3V & Not(d.TE10) & Not(ZDC_C) & physcond).setTriggerType(TT.muon)
1846  MenuItem('L1_2MU3V_VTE10_VZDC_A').setLogic( d.MU3V.x(2) & Not(d.TE10) & Not(ZDC_A) & physcond).setTriggerType(TT.muon)
1847  MenuItem('L1_2MU3V_VTE10_VZDC_C').setLogic( d.MU3V.x(2) & Not(d.TE10) & Not(ZDC_C) & physcond).setTriggerType(TT.muon)
1848 
1849  MenuItem('L1_MU3V_VZDC_A_C' ).setLogic( d.MU3V & VZDC_A_C & physcond).setTriggerType(TT.muon)
1850  MenuItem('L1_MU3V_VZDC_AORC_VTE200' ).setLogic( d.MU3V & VZDC_AORC & Not(d.TE200) & physcond).setTriggerType(TT.muon)
1851  MenuItem('L1_MU5VF_VZDC_A' ).setLogic( d.MU5VF & Not(ZDC_A) & physcond).setTriggerType(TT.muon)
1852  MenuItem('L1_MU5VF_VZDC_C' ).setLogic( d.MU5VF & Not(ZDC_C) & physcond).setTriggerType(TT.muon)
1853  MenuItem('L1_MU5VF_VTE10_VZDC_A' ).setLogic( d.MU5VF & Not(d.TE10) & Not(ZDC_A) & physcond).setTriggerType(TT.muon)
1854  MenuItem('L1_MU5VF_VTE10_VZDC_C' ).setLogic( d.MU5VF & Not(d.TE10) & Not(ZDC_C) & physcond).setTriggerType(TT.muon)
1855  MenuItem('L1_MU5VF_VZDC_A_C' ).setLogic( d.MU5VF & VZDC_A_C & physcond).setTriggerType(TT.muon)
1856  MenuItem('L1_RD0_FILLED_VZDC_A' ).setLogic( d.RNDM0 & Not(ZDC_A) & physcond)
1857  MenuItem('L1_RD0_FILLED_VZDC_C' ).setLogic( d.RNDM0 & Not(ZDC_C) & physcond)
1858  MenuItem('L1_MBTS_4_C_VZDC_A' ).setLogic( MBTS_4_C & Not(ZDC_A) & physcond)
1859  MenuItem('L1_MBTS_4_A_VZDC_C' ).setLogic( MBTS_4_A & Not(ZDC_C) & physcond)
1860  MenuItem('L1_MBTS_2_C_VZDC_A' ).setLogic( MBTS_2_C & Not(ZDC_A) & physcond)
1861  MenuItem('L1_MBTS_2_A_VZDC_C' ).setLogic( MBTS_2_A & Not(ZDC_C) & physcond)
1862 
1863 
1864 
1865 
1866  # VDM
1867  MenuItem('L1_ZDC_A_C_BGRP7' ).setLogic( ZDC_A_C & bgrp7cond)
1868  MenuItem('L1_LUCID_BGRP7' ).setLogic( (d.LUCID_A | d.LUCID_C) & bgrp7cond)
1869  MenuItem('L1_TRT_BGRP11' ).setLogic( d.NIMTRT & bgrp11cond )
1870 
1871  # LUCID
1872  MenuItem('L1_LUCID_A' ).setLogic( d.LUCID_A & physcond)
1873  MenuItem('L1_LUCID_C' ).setLogic( d.LUCID_C & physcond)
1874  MenuItem('L1_LUCID_A_C', ).setLogic( d.LUCID_A & d.LUCID_C & physcond)
1875  MenuItem('L1_LUCID' ).setLogic((d.LUCID_A | d.LUCID_C) & physcond)
1876  MenuItem('L1_LUCID_COMM' ).setLogic( d.LUCID_COMM & physcond)
1877  MenuItem('L1_LUCID_COMM_EMPTY' ).setLogic( d.LUCID_COMM & cosmiccond)
1878  MenuItem('L1_LUCID_EMPTY' ).setLogic((d.LUCID_A | d.LUCID_C) & cosmiccond)
1879  MenuItem('L1_LUCID_A_C_EMPTY' ).setLogic( d.LUCID_A & d.LUCID_C & cosmiccond)
1880  MenuItem('L1_LUCID_UNPAIRED_ISO').setLogic((d.LUCID_A | d.LUCID_C) & unpaired_isocond)
1881  MenuItem('L1_LUCID_COMM_UNPAIRED_ISO' ).setLogic( d.LUCID_COMM & unpaired_isocond )
1882  MenuItem('L1_LUCID_A_C_UNPAIRED_ISO' ).setLogic( d.LUCID_A & d.LUCID_C & unpaired_isocond)
1883  MenuItem('L1_LUCID_A_C_UNPAIRED_NONISO').setLogic(d.LUCID_A & d.LUCID_C & unpaired_nonisocond)
1884 
1885  MenuItem('L1_LUCID_BGRP9').setLogic( (d.LUCID_A | d.LUCID_C) & bgrp9cond)
1886  MenuItem('L1_LUCID_BGRP11').setLogic( (d.LUCID_A | d.LUCID_C) & bgrp11cond)
1887 
1888  MenuItem('L1_LUCID_A_BGRP11').setLogic( d.LUCID_A & bgrp11cond)
1889  MenuItem('L1_LUCID_C_BGRP11').setLogic( d.LUCID_C & bgrp11cond)
1890 
1891  # BCM
1892  MenuItem('L1_BCM_Wide' ).setLogic( d.BCM_Wide & physcond )
1893  MenuItem('L1_BCM_Wide_BGRP12' ).setLogic( d.BCM_Wide & bgrp12cond )
1894  MenuItem('L1_BCM_Wide_EMPTY' ).setLogic( d.BCM_Wide & cosmiccond )
1895  MenuItem('L1_BCM_Wide_UNPAIRED_ISO' ).setLogic( d.BCM_Wide & unpaired_isocond ) # no needed anymore
1896  MenuItem('L1_BCM_Wide_UNPAIRED_NONISO' ).setLogic( d.BCM_Wide & unpaired_nonisocond ) # no needed anymore
1897  MenuItem('L1_BCM_Wide_UNPAIREDB1' ).setLogic( d.BCM_Wide & bgrp13cond )
1898  MenuItem('L1_BCM_Wide_UNPAIREDB2' ).setLogic( d.BCM_Wide & bgrp14cond )
1899 
1900  MenuItem('L1_BCM_HT_BGRP12' ).setLogic( d.BCM_Comb.x(7) & bgrp12cond)
1901  MenuItem('L1_BCM_AC_CA_BGRP12' ).setLogic((d.BCM_AtoC | d.BCM_CtoA) & bgrp12cond )
1902  MenuItem('L1_BCM_AC_CA_UNPAIRED_ISO' ).setLogic((d.BCM_AtoC | d.BCM_CtoA) & unpaired_isocond)
1903 
1904  MenuItem('L1_BCM_AC_UNPAIRED_ISO' ).setLogic( d.BCM_AtoC & unpaired_isocond) # no needed anymore
1905  MenuItem('L1_BCM_CA_UNPAIRED_ISO' ).setLogic( d.BCM_CtoA & unpaired_isocond) # no needed anymore
1906 
1907  MenuItem('L1_BCM_AC_UNPAIRED_NONISO' ).setLogic( d.BCM_AtoC & unpaired_nonisocond) # no needed anymore
1908  MenuItem('L1_BCM_CA_UNPAIRED_NONISO' ).setLogic( d.BCM_CtoA & unpaired_nonisocond) # no needed anymore
1909 
1910  MenuItem('L1_BCM_AC_CALIB' ).setLogic( d.BCM_AtoC & calibcond)
1911  MenuItem('L1_BCM_CA_CALIB' ).setLogic( d.BCM_CtoA & calibcond)
1912  MenuItem('L1_BCM_Wide_CALIB' ).setLogic( d.BCM_Wide & calibcond) # no needed anymore
1913 
1914  MenuItem('L1_BCM_AC_UNPAIREDB1' ).setLogic( d.BCM_AtoC & bgrp13cond) # no needed anymore
1915  MenuItem('L1_BCM_CA_UNPAIREDB2' ).setLogic( d.BCM_CtoA & bgrp14cond) # no needed anymore
1916 
1917  MenuItem('L1_BCM_2A_EMPTY' ).setLogic( d.BCM6 & cosmiccond)
1918  MenuItem('L1_BCM_2C_EMPTY' ).setLogic( d.BCM7 & cosmiccond)
1919 
1920  MenuItem('L1_BCM_2A_UNPAIREDB1' ).setLogic( d.BCM6 & bgrp13cond)
1921  MenuItem('L1_BCM_2C_UNPAIREDB1' ).setLogic( d.BCM7 & bgrp13cond)
1922  MenuItem('L1_BCM_2A_UNPAIREDB2' ).setLogic( d.BCM6 & bgrp14cond)
1923  MenuItem('L1_BCM_2C_UNPAIREDB2' ).setLogic( d.BCM7 & bgrp14cond)
1924 
1925  MenuItem('L1_BCM_2A_UNPAIRED_ISO' ).setLogic( d.BCM6 & unpaired_isocond)
1926  MenuItem('L1_BCM_2C_UNPAIRED_ISO' ).setLogic( d.BCM7 & unpaired_isocond)
1927  MenuItem('L1_BCM_2A_UNPAIRED_NONISO' ).setLogic( d.BCM6 & unpaired_nonisocond)
1928  MenuItem('L1_BCM_2C_UNPAIRED_NONISO' ).setLogic( d.BCM7 & unpaired_nonisocond)
1929 
1930  MenuItem('L1_BCM_2A_CALIB' ).setLogic( d.BCM6 & calibcond)
1931  MenuItem('L1_BCM_2C_CALIB' ).setLogic( d.BCM7 & calibcond)
1932 
1933  MenuItem('L1_BCM_2A_FIRSTINTRAIN' ).setLogic( d.BCM6 & firstintrain)
1934  MenuItem('L1_BCM_2C_FIRSTINTRAIN' ).setLogic( d.BCM7 & firstintrain)
1935 
1936  MenuItem('L1_BCM_2A_2C_BGRP12' ).setLogic((d.BCM6 | d.BCM7) & bgrp12cond )
1937  MenuItem('L1_BCM_2A_2C_UNPAIRED_ISO' ).setLogic((d.BCM6 | d.BCM7) & unpaired_isocond)
1938 
1939  # RANDOM
1940  MenuItem('L1_RD0_FILLED' ).setLogic( d.RNDM0 & physcond ).setTriggerType(TT.rand)
1941  MenuItem('L1_RD0_EMPTY' ).setLogic( d.RNDM0 & cosmiccond ).setTriggerType(TT.rand)
1942  MenuItem('L1_RD0_UNPAIRED_ISO' ).setLogic( d.RNDM0 & unpaired_isocond ).setTriggerType(TT.rand)
1943  MenuItem('L1_RD0_UNPAIRED_NONISO').setLogic( d.RNDM0 & unpaired_nonisocond).setTriggerType(TT.rand)
1944  MenuItem('L1_RD0_FIRSTEMPTY' ).setLogic( d.RNDM0 & firstempty ).setTriggerType(TT.rand)
1945  MenuItem('L1_RD0_BGRP0' ).setLogic( d.RNDM0 & d.BGRP0 ).setTriggerType(TT.rand)
1946  MenuItem('L1_RD0_BGRP7' ).setLogic( d.RNDM0 & bgrp7cond ).setTriggerType(TT.rand)
1947  MenuItem('L1_RD0_BGRP9' ).setLogic( d.RNDM0 & bgrp9cond ).setTriggerType(TT.rand)
1948  MenuItem('L1_RD0_BGRP10' ).setLogic( d.RNDM0 & bgrp10cond ).setTriggerType(TT.rand)
1949  MenuItem('L1_RD0_BGRP11' ).setLogic( d.RNDM0 & bgrp11cond ).setTriggerType(TT.rand)
1950  MenuItem('L1_RD0_BGRP15' ).setLogic( d.RNDM0 & d.BGRP0 & d.BGRP15 ).setTriggerType(TT.rand)
1951  MenuItem('L1_RD0_FIRSTINTRAIN' ).setLogic( d.RNDM0 & firstintrain ).setTriggerType(TT.rand)
1952 
1953  MenuItem('L1_RD1_FILLED' ).setLogic( d.RNDM1 & physcond ).setTriggerType(TT.zerobs) # used to be TT.rand
1954  MenuItem('L1_RD1_EMPTY' ).setLogic( d.RNDM1 & cosmiccond ).setTriggerType(TT.zerobs)
1955  MenuItem('L1_RD1_BGRP10' ).setLogic( d.RNDM1 & bgrp10cond ).setTriggerType(TT.zerobs)
1956 
1957  MenuItem('L1_RD2_FILLED' ).setLogic( d.RNDM2 & physcond ).setTriggerType(TT.rand)
1958  MenuItem('L1_RD2_EMPTY' ).setLogic( d.RNDM2 & cosmiccond ).setTriggerType(TT.rand)
1959  MenuItem('L1_RD2_BGRP11' ).setLogic( d.RNDM2 & bgrp11cond ).setTriggerType(TT.rand)
1960  MenuItem('L1_RD2_BGRP12' ).setLogic( d.RNDM2 & bgrp12cond ).setTriggerType(TT.rand)
1961 
1962  MenuItem('L1_RD3_FILLED' ).setLogic( d.RNDM3 & physcond ).setTriggerType(TT.rand)
1963  MenuItem('L1_RD3_EMPTY' ).setLogic( d.RNDM3 & cosmiccond ).setTriggerType(TT.rand)
1964 
1965  MenuItem('L1_BPTX0_BGRP12', ctpid=0xf1).setLogic(d.BPTX0 & bgrp12cond ).setTriggerType(TT.rand)
1966  MenuItem('L1_BPTX1_BGRP12', ctpid=0xf2).setLogic(d.BPTX1 & bgrp12cond ).setTriggerType(TT.rand)
1967 
1968  MenuItem('L1_RD0_LAR_FILLED' ).setLogic( d.RNDM0 & physcond ).setTriggerType(TT.lardigital)
1969  MenuItem('L1_RD0_LAR_EMPTY' ).setLogic( d.RNDM0 & cosmiccond ).setTriggerType(TT.lardigital)
1970  MenuItem('L1_RD0_LAR_FIRSTEMPTY' ).setLogic( d.RNDM0 & firstempty ).setTriggerType(TT.lardigital)
1971  MenuItem('L1_RD0_LAR_BGRP7' ).setLogic( d.RNDM0 & bgrp7cond ).setTriggerType(TT.lardigital)
1972 
1973  # lumi measurements
1974  MenuItem('L1_MLZ_A').setLogic( (d.MBTS_A|ZDC_A|d.LUCID_A) & physcond)
1975  MenuItem('L1_MLZ_C').setLogic( (d.MBTS_C|ZDC_C|d.LUCID_C) & physcond)
1976  MenuItem('L1_MBLZ' ).setLogic( ( (d.MBTS_A|ZDC_A|d.LUCID_A) & (d.MBTS_C|ZDC_C|d.LUCID_C) | d.BCM_Wide) & physcond )
1977 
1978  MenuItem('L1_CALREQ0', ctpid=0x1fd).setLogic( d.CAL0 & calibcond).setTriggerType(TT.calreq0)
1979  MenuItem('L1_CALREQ1', ctpid=0x1fe).setLogic( d.CAL1 & calibcond).setTriggerType(TT.calreq1)
1980  MenuItem('L1_CALREQ2', ctpid=0x1ff).setLogic( d.CAL2 & calibcond).setTriggerType(TT.calreq2)
1981 
1982  # TRT
1983  MenuItem('L1_TRT' , ctpid=0x4e).setLogic(d.NIMTRT & d.BGRP0).setTriggerType(TT.nim)
1984  MenuItem('L1_TRT_FILLED').setLogic(d.NIMTRT & physcond).setTriggerType(TT.nim)
1985  MenuItem('L1_TRT_EMPTY' ).setLogic(d.NIMTRT & cosmiccond).setTriggerType(TT.nim)
1986  MenuItem('L1_TRT_VTE200').setLogic(d.NIMTRT & Not(d.TE200) & physcond)
1987  MenuItem('L1_TRT_VTE50' ).setLogic(d.NIMTRT & Not(d.TE50) & physcond)
1988  MenuItem('L1_TRT_VTE20' ).setLogic(d.NIMTRT & Not(d.TE20) & physcond)
1989 
1990  #TRT + Phase-1 Calo
1991  MenuItem('L1_TRT_VjTE20' ).setLogic(d.NIMTRT & Not(d.jTE20) & physcond)
1992  MenuItem('L1_TRT_VjTE50' ).setLogic(d.NIMTRT & Not(d.jTE50) & physcond)
1993  MenuItem('L1_TRT_VjTE200' ).setLogic(d.NIMTRT & Not(d.jTE200) & physcond)
1994  MenuItem('L1_TRT_VjTE50_GAP_AANDC' ).setLogic(d.NIMTRT & Not(d.jTE50) & GAPAC & physcond)
1995  MenuItem('L1_TRT_VjTE200_GAP_AANDC' ).setLogic(d.NIMTRT & Not(d.jTE200) & GAPAC & physcond)
1996 
1997  # TGC
1998  MenuItem('L1_TGC_BURST').setLogic(d.NIMTGC & bgrp12cond ).setTriggerType(TT.nim)
1999 
2000  # LHCF
2001  MenuItem('L1_LHCF').setLogic( d.NIMLHCF & physcond).setTriggerType(TT.nim)
2002  MenuItem('L1_LHCF_UNPAIRED_ISO').setLogic( d.NIMLHCF & unpaired_isocond).setTriggerType(TT.nim)
2003  MenuItem('L1_LHCF_EMPTY').setLogic( d.NIMLHCF & cosmiccond).setTriggerType(TT.nim)
2004 
2005  MBTS_INNER = (d.MBTS_A0 | d.MBTS_A1 | d.MBTS_A2 | d.MBTS_A3 | d.MBTS_A4 | d.MBTS_A5 | d.MBTS_A6 | d.MBTS_A7 | d.MBTS_C0 | d.MBTS_C1 | d.MBTS_C2 | d.MBTS_C3 | d.MBTS_C4 | d.MBTS_C5 | d.MBTS_C6 | d.MBTS_C7)
2006 
2007  #AFP (ATR-23476)
2008  AFP_A = (d.AFP_NSA & d.AFP_FSA)
2009  AFP_C = (d.AFP_NSC & d.AFP_FSC)
2010  AFP_TOF_A = (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1 | d.AFP_FSA_TOF_T2 | d.AFP_FSA_TOF_T3)
2011  AFP_TOF_C = (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1 | d.AFP_FSC_TOF_T2 | d.AFP_FSC_TOF_T3)
2012  MenuItem('L1_AFP_NSA_BGRP12').setLogic( d.AFP_NSA & bgrp12cond)
2013  MenuItem('L1_AFP_NSC_BGRP12').setLogic( d.AFP_NSC & bgrp12cond)
2014  MenuItem('L1_AFP_FSA_BGRP12').setLogic( d.AFP_FSA & bgrp12cond)
2015  MenuItem('L1_AFP_FSC_BGRP12').setLogic( d.AFP_FSC & bgrp12cond)
2016  MenuItem('L1_AFP_FSA_TOF_T0_BGRP12').setLogic( d.AFP_FSA_TOF_T0 & bgrp12cond)
2017  MenuItem('L1_AFP_FSC_TOF_T0_BGRP12').setLogic( d.AFP_FSC_TOF_T0 & bgrp12cond)
2018  MenuItem('L1_AFP_FSA_TOF_T1_BGRP12').setLogic( d.AFP_FSA_TOF_T1 & bgrp12cond)
2019  MenuItem('L1_AFP_FSC_TOF_T1_BGRP12').setLogic( d.AFP_FSC_TOF_T1 & bgrp12cond)
2020  MenuItem('L1_AFP_FSA_TOF_T2_BGRP12').setLogic( d.AFP_FSA_TOF_T2 & bgrp12cond)
2021  MenuItem('L1_AFP_FSC_TOF_T2_BGRP12').setLogic( d.AFP_FSC_TOF_T2 & bgrp12cond)
2022  MenuItem('L1_AFP_FSA_TOF_T3_BGRP12').setLogic( d.AFP_FSA_TOF_T3 & bgrp12cond)
2023  MenuItem('L1_AFP_FSC_TOF_T3_BGRP12').setLogic( d.AFP_FSC_TOF_T3 & bgrp12cond)
2024 
2025  MenuItem('L1_AFP_A').setLogic( AFP_A & physcond)
2026  MenuItem('L1_AFP_C').setLogic( AFP_C & physcond)
2027  MenuItem('L1_AFP_A_OR_C').setLogic( (AFP_A | AFP_C) & physcond)
2028  MenuItem('L1_AFP_A_AND_C').setLogic( AFP_A & AFP_C & physcond)
2029  MenuItem('L1_AFP_A_AND_C_TOF').setLogic( AFP_TOF_A & AFP_TOF_C & physcond)
2030  MenuItem('L1_AFP_A_AND_C_TOF_T0T1').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & physcond)
2031 
2032  MenuItem('L1_AFP_A_OR_C_UNPAIRED_ISO').setLogic( (AFP_A | AFP_C) & unpaired_isocond )
2033  MenuItem('L1_AFP_A_OR_C_UNPAIRED_NONISO').setLogic( (AFP_A | AFP_C) & unpaired_nonisocond )
2034  MenuItem('L1_AFP_A_OR_C_EMPTY').setLogic( (AFP_A | AFP_C) & cosmiccond)
2035  MenuItem('L1_AFP_A_OR_C_FIRSTEMPTY').setLogic( (AFP_A | AFP_C) & firstempty)
2036  MenuItem('L1_AFP_A_OR_C_TOF_UNPAIRED_ISO').setLogic( (AFP_TOF_A | AFP_TOF_C) & unpaired_isocond )
2037  MenuItem('L1_AFP_A_OR_C_TOF_UNPAIRED_NONISO').setLogic( (AFP_TOF_A | AFP_TOF_C) & unpaired_nonisocond )
2038  MenuItem('L1_AFP_A_OR_C_TOF_EMPTY').setLogic( (AFP_TOF_A | AFP_TOF_C) & cosmiccond)
2039  MenuItem('L1_AFP_A_OR_C_TOF_FIRSTEMPTY').setLogic( (AFP_TOF_A | AFP_TOF_C) & firstempty)
2040 
2041  MenuItem('L1_AFP_A_AND_C_J5').setLogic( AFP_A & AFP_C & d.J5 & physcond )
2042  MenuItem('L1_AFP_A_OR_C_J5').setLogic( (AFP_A | AFP_C) & d.J5 & physcond )
2043  MenuItem('L1_AFP_A_AND_C_J12').setLogic( AFP_A & AFP_C & d.J12 & physcond )
2044  MenuItem('L1_AFP_A_OR_C_J12').setLogic( (AFP_A | AFP_C) & d.J12 & physcond )
2045  MenuItem('L1_AFP_A_AND_C_jJ20').setLogic( AFP_A & AFP_C & d.jJ20 & physcond )
2046  MenuItem('L1_AFP_A_OR_C_jJ20').setLogic( (AFP_A | AFP_C) & d.jJ20 & physcond )
2047  MenuItem('L1_AFP_A_AND_C_jJ30').setLogic( AFP_A & AFP_C & d.jJ30 & physcond )
2048  MenuItem('L1_AFP_A_OR_C_jJ30').setLogic( (AFP_A | AFP_C) & d.jJ30 & physcond )
2049  MenuItem('L1_MU5VF_AFP_A_OR_C').setLogic( (AFP_A | AFP_C) & d.MU5VF & physcond )
2050  MenuItem('L1_MU5VF_AFP_A_AND_C').setLogic( AFP_A & AFP_C & d.MU5VF & physcond )
2051  # MenuItem('L1_EM7_AFP_A_OR_C').setLogic( (AFP_A | AFP_C) & d.EM7 & physcond )
2052  # MenuItem('L1_EM7_AFP_A_AND_C').setLogic( AFP_A & AFP_C & d.EM7 & physcond )
2053  MenuItem('L1_eEM9_AFP_A_OR_C').setLogic( (AFP_A | AFP_C) & d.eEM9 & physcond )
2054  MenuItem('L1_eEM9_AFP_A_AND_C').setLogic( AFP_A & AFP_C & d.eEM9 & physcond )
2055 
2056  MenuItem('L1_AFP_A_AND_C_MBTS_2').setLogic( AFP_A & AFP_C & MBTS_2 & physcond )
2057  MenuItem('L1_AFP_A_OR_C_MBTS_2').setLogic( (AFP_A | AFP_C) & MBTS_2 & physcond )
2058 
2059  MenuItem('L1_AFP_A_AND_C_TOF_J20').setLogic( AFP_TOF_A & AFP_TOF_C & d.J20 & physcond )
2060  MenuItem('L1_AFP_A_AND_C_TOF_T0T1_J20').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & d.J20 & physcond )
2061  MenuItem('L1_AFP_A_AND_C_TOF_J30').setLogic( AFP_TOF_A & AFP_TOF_C & d.J30 & physcond )
2062  MenuItem('L1_AFP_A_AND_C_TOF_T0T1_J30').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & d.J30 & physcond )
2063  MenuItem('L1_AFP_A_AND_C_TOF_J50').setLogic( AFP_TOF_A & AFP_TOF_C & d.J50 & physcond )
2064  MenuItem('L1_AFP_A_AND_C_TOF_T0T1_J50').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & d.J50 & physcond )
2065  MenuItem('L1_AFP_A_AND_C_TOF_J75').setLogic( AFP_TOF_A & AFP_TOF_C & d.J75 & physcond )
2066  MenuItem('L1_AFP_A_AND_C_TOF_T0T1_J75').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & d.J75 & physcond )
2067 
2068  MenuItem('L1_AFP_A_AND_C_TOF_jJ50').setLogic( AFP_TOF_A & AFP_TOF_C & d.jJ50 & physcond )
2069  MenuItem('L1_AFP_A_AND_C_TOF_T0T1_jJ50').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & d.jJ50 & physcond )
2070  MenuItem('L1_AFP_A_AND_C_TOF_jJ60').setLogic( AFP_TOF_A & AFP_TOF_C & d.jJ60 & physcond )
2071  MenuItem('L1_AFP_A_AND_C_TOF_T0T1_jJ60').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & d.jJ60 & physcond )
2072  MenuItem('L1_AFP_A_AND_C_TOF_jJ90').setLogic( AFP_TOF_A & AFP_TOF_C & d.jJ90 & physcond )
2073  MenuItem('L1_AFP_A_AND_C_TOF_T0T1_jJ90').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & d.jJ90 & physcond )
2074  MenuItem('L1_AFP_A_AND_C_TOF_jJ125').setLogic( AFP_TOF_A & AFP_TOF_C & d.jJ125 & physcond )
2075  MenuItem('L1_AFP_A_AND_C_TOF_T0T1_jJ125').setLogic( (d.AFP_FSA_TOF_T0 | d.AFP_FSA_TOF_T1) & (d.AFP_FSC_TOF_T0 | d.AFP_FSC_TOF_T1) & d.jJ125 & physcond )
2076 
2077  try:
2078 
2079  # Legacy primary (items passed via the merger board):
2080  MenuItem('L1_HT190-J15s5pETA21').setLogic( d.R2TOPO_HT190_J15s5pETA21 & physcond)
2081  MenuItem('L1_BPH-0M9-EM7-EM5').setLogic( d.R2TOPO_0INVM9_EM7ab_EMab & physcond)
2082  MenuItem('L1_BPH-0DR3-EM7J15').setLogic( d.R2TOPO_0DR03_EM7ab_CJ15ab & physcond)
2083  MenuItem('L1_BPH-0M9-EM7-EM5_MU5VF').setLogic( d.MU5VF & d.R2TOPO_0INVM9_EM7ab_EMab & physcond)
2084  MenuItem('L1_BPH-0DR3-EM7J15_MU5VF').setLogic( d.MU5VF & d.R2TOPO_0DR03_EM7ab_CJ15ab & physcond)
2085  MenuItem('L1_BPH-0M9-EM7-EM5_2MU3V').setLogic( d.MU3V.x(2) & d.R2TOPO_0INVM9_EM7ab_EMab & physcond)
2086  MenuItem('L1_BPH-0DR3-EM7J15_2MU3V').setLogic( d.MU3V.x(2) & d.R2TOPO_0DR03_EM7ab_CJ15ab & physcond)
2087  MenuItem("L1_JPSI-1M5-EM7" ).setLogic( d.R2TOPO_1INVM5_EM7s1_EMs6 & physcond)
2088  MenuItem("L1_JPSI-1M5-EM12").setLogic( d.R2TOPO_1INVM5_EM12s1_EMs6 & physcond)
2089  MenuItem('L1_MJJ-500-NFF').setLogic( d.R2TOPO_500INVM9999_J30s6_AJ20s6 & physcond)
2090  MenuItem('L1_MJJ-700').setLogic( d.R2TOPO_700INVM9999_AJ30s6_AJ20s6 & physcond)
2091  MenuItem('L1_EM18VHI_MJJ-300').setLogic( d.EM18VHI & d.R2TOPO_300INVM9999_AJ30s6_AJ20s6 & physcond)
2092  MenuItem('L1_HT150-J20s5pETA31_MJJ-400-CF').setLogic( d.R2TOPO_HT150_J20s5pETA31 & d.R2TOPO_400INVM9999_AJ30s6pETA31_AJ20s6p31ETA49 & physcond)
2093  MenuItem('L1_30M-EM20ITAU12').setLogic( d.R2TOPO_DISAMB_30INVM_EM20his2_TAU12ab & physcond)
2094  MenuItem('L1_LLP-RO').setLogic( d.R2TOPO_100RATIO_0MATCH_TAU30si2_EMall & physcond)
2095  MenuItem('L1_LLP-NOMATCH').setLogic( d.R2TOPO_NOT_0MATCH_TAU30si1_EMall & physcond)
2096  MenuItem('L1_DPHI-2EM3').setLogic( d.R2TOPO_27DPHI32_EMs1_EMs6 & physcond)
2097  MenuItem('L1_SC111-CJ15').setLogic( d.R2TOPO_SC111_CJ15abpETA26 & physcond)
2098  MenuItem('L1_J50_DETA20-J50J').setLogic( d.J50 & d.R2TOPO_0DETA20_J50s1_Js2 & physcond)
2099  MenuItem('L1_DR-TAU20ITAU12I-J25').setLogic( d.R2TOPO_1DISAMB_J25ab_0DR28_TAU20abi_TAU12abi & physcond)
2100  MenuItem('L1_TAU60_DR-TAU20ITAU12I' ).setLogic( d.HA60 & d.R2TOPO_0DR28_TAU20abi_TAU12abi & physcond)
2101  MenuItem('L1_DR-TAU20ITAU12I' ).setLogic( d.R2TOPO_0DR28_TAU20abi_TAU12abi & physcond)
2102  MenuItem('L1_LAR-ZEE').setLogic( d.R2TOPO_ZEE_EM20shi2 & physcond).setTriggerType( TT.lardigital ) # LAr demo (ATR-11897, ATR-23403)
2103 
2104  # Phase-1:
2105  MenuItem('L1_LAR-ZEE-eEM').setLogic( d.TOPO_ZEE_eEM24sm2 & physcond).setTriggerType( TT.lardigital ) # LAr demo (ATR-23403),
2106  MenuItem('L1_LATE-MU8F_jXE70').setLogic( d.TOPO_LATE_MU10s1 & d.jXE70 & physcond)
2107  MenuItem('L1_LATE-MU8F_jJ90' ).setLogic( d.TOPO_LATE_MU10s1 & d.jJ90 & physcond)
2108  MenuItem('L1_LFV-MU8VF').setLogic( d.TOPO_0DR15_2MU5VFab & d.MU8VF & d.MU5VF.x(2) & physcond)
2109  MenuItem('L1_LFV-MU5VF' ).setLogic( d.TOPO_0DR15_2MU5VFab & d.MU5VF.x(2) & physcond)
2110  MenuItem('L1_LFV-eEM10L-MU8VF' ).setLogic( d.TOPO_0INVM10_0DR15_eEM10abl_MU8Fab & d.MU8VF & physcond)
2111  MenuItem('L1_LFV-eEM15L-MU5VF' ).setLogic( d.TOPO_0INVM10_0DR15_eEM15abl_MU5VFab & physcond)
2112 
2113  #BLS
2114  #ATR-19720
2115  MenuItem('L1_BPH-2M9-0DR15-2MU3V' ).setLogic( d.TOPO_2INVM9_0DR15_2MU3Vab & physcond)
2116  MenuItem('L1_BPH-2M9-0DR15-2MU3VF' ).setLogic( d.TOPO_2INVM9_0DR15_2MU3VFab & physcond)
2117  MenuItem('L1_BPH-2M9-0DR15-MU5VFMU3V' ).setLogic( d.TOPO_2INVM9_0DR15_MU5VFab_MU3Vab & physcond)
2118  MenuItem('L1_BPH-2M9-2DR15-2MU5VF' ).setLogic( d.TOPO_2INVM9_2DR15_2MU5VFab & physcond)
2119  MenuItem('L1_BPH-8M15-0DR22-MU5VFMU3V-BO' ).setLogic( d.TOPO_8INVM15_0DR22_CMU5VFab_CMU3Vab & physcond)
2120  MenuItem('L1_BPH-8M15-0DR22-2MU5VF' ).setLogic( d.TOPO_8INVM15_0DR22_2MU5VFab & physcond)
2121  #ATR-19355
2122  MenuItem('L1_BPH-0M10-3MU3V' ).setLogic( d.TOPO_0INVM10_3MU3Vab & physcond)
2123  MenuItem('L1_BPH-0M10-3MU3VF' ).setLogic( d.TOPO_0INVM10_3MU3VFab & physcond)
2124  #ATR-19638
2125  MenuItem('L1_BPH-0M10C-3MU3V' ).setLogic( d.TOPO_0INVM10C_3MU3Vab & physcond)
2126  #ATR-19639
2127  MenuItem('L1_BPH-2M9-0DR15-C-MU5VFMU3V' ).setLogic( d.TOPO_2INVM9_0DR15_C_MU5VFab_MU3Vab & physcond)
2128 
2129  # ATR-21566
2130  MenuItem('L1_BPH-7M22-2MU3VF' ).setLogic( d.TOPO_7INVM22_2MU3VFab & physcond)
2131  MenuItem('L1_BPH-7M22-MU5VFMU3VF' ).setLogic( d.TOPO_7INVM22_MU5VFab_MU3VFab & physcond)
2132  MenuItem('L1_BPH-7M22-0DR20-2MU3V' ).setLogic( d.TOPO_7INVM22_0DR20_2MU3Vab & physcond)
2133  MenuItem('L1_BPH-7M22-0DR20-2MU3VF' ).setLogic( d.TOPO_7INVM22_0DR20_2MU3VFab & physcond)
2134  MenuItem('L1_BPH-7M22-0DR12-2MU3V' ).setLogic( d.TOPO_7INVM22_0DR12_2MU3Vab & physcond)
2135 
2136  #ATR-22782
2137  MenuItem('L1_BPH-7M11-25DR99-2MU3VF' ).setLogic( d.TOPO_7INVM11_25DR99_2MU3VFab & physcond)
2138  MenuItem('L1_BPH-7M14-MU5VFMU3VF' ).setLogic( d.TOPO_7INVM14_MU5VFab_MU3VFab & physcond)
2139  MenuItem('L1_BPH-7M14-2MU3VF' ).setLogic( d.TOPO_7INVM14_2MU3VFab & physcond)
2140  MenuItem('L1_BPH-7M14-2MU3V' ).setLogic( d.TOPO_7INVM14_2MU3Vab & physcond)
2141 
2142  #ATR-24932
2143  MenuItem('L1_BPH-7M14-0DR25-MU5VFMU3VF' ).setLogic( d.TOPO_7INVM14_0DR25_MU5VFab_MU3VFab & physcond)
2144 
2145  # ATR-19510, SM Low-mass DY
2146  MenuItem('L1_DY-BOX-2MU3VF').setLogic( d.TOPO_5DETA99_5DPHI99_2MU3VFab & physcond)
2147  MenuItem('L1_DY-BOX-MU5VFMU3V').setLogic( d.TOPO_5DETA99_5DPHI99_MU5VFab_MU3Vab & physcond)
2148  MenuItem('L1_DY-BOX-2MU5VF').setLogic( d.TOPO_5DETA99_5DPHI99_2MU5VFab & physcond)
2149 
2150  #ATR-18824
2151  MenuItem('L1_ZAFB-04DPHI-eEM18M' ).setLogic( d.TOPO_60INVM_04DPHI32_eEM18abm_jEM25s625ETA49 & physcond)
2152  MenuItem('L1_ZAFB-25DPHI-eEM18M' ).setLogic( d.TOPO_60INVM_25DPHI32_eEM18abm_jEM25s625ETA49 & physcond)
2153  MenuItem('L1_ZAFB-04DPHIM-eEM18M' ).setLogic( d.TOPO_60INVM_04DPHI32_eEM18abm_jEM20sm625ETA49 & physcond)
2154  MenuItem('L1_ZAFB-25DPHIM-eEM18M' ).setLogic( d.TOPO_60INVM_25DPHI32_eEM18abm_jEM20sm625ETA49 & physcond)
2155  #ATR-30822
2156  MenuItem('L1_eEM18M_jEM25' ).setLogic( d.eEM18M & d.jEM25 & physcond).setTriggerType( TT.calo )
2157  #ATR-19302:
2158  MenuItem('L1_DPHI-M70-2eEM12M' ).setLogic( d.TOPO_0INVM70_27DPHI32_eEM12sm1_eEM12sm6 & physcond)
2159  MenuItem('L1_DPHI-M70-2eEM15M' ).setLogic( d.TOPO_0INVM70_27DPHI32_eEM15sm1_eEM15sm6 & physcond)
2160  #ATR-21637
2161  MenuItem('L1_DPHI-M70-2eEM9' ).setLogic( d.TOPO_0INVM70_27DPHI32_eEM9s1_eEM9s6 & physcond)
2162  MenuItem('L1_DPHI-M70-2eEM9L' ).setLogic( d.TOPO_0INVM70_27DPHI32_eEM9sl1_eEM9sl6 & physcond)
2163  #ATR-27782 Boosted diPhoton
2164  MenuItem('L1_DPHI12-M70-2eEM9L').setLogic(d.TOPO_0INVM70_0DPHI12_eEM9sl1_eEM9sl6 & physcond)
2165  MenuItem('L1_DPHI12-M70-2eEM12L').setLogic(d.TOPO_0INVM70_0DPHI12_eEM12sl1_eEM12sl6 & physcond)
2166  # dr-m ranges
2167  MenuItem('L1_13DR25-25M70-2eEM12L').setLogic(d.TOPO_25INVM70_13DR25_eEM12sl1_eEM12sl6 & physcond)
2168  MenuItem('L1_2DR15-0M30-2eEM12L').setLogic(d.TOPO_0INVM30_2DR15_eEM12sl1_eEM12sl6 & physcond)
2169 
2170  #ATR-19376
2171  MenuItem('L1_10DR-MU14FCH-MU5VF' ).setLogic( d.TOPO_10DR99_2MU5VFab & d.MU14FCH & physcond)
2172  MenuItem('L1_10DR-MU14FCH-MU5VF_EMPTY' ).setLogic( d.TOPO_10DR99_2MU5VFab & d.MU14FCH & cosmiccond)
2173  MenuItem('L1_10DR-MU14FCH-MU5VF_UNPAIRED_ISO').setLogic( d.TOPO_10DR99_2MU5VFab & d.MU14FCH & unpaired_isocond)
2174 
2175  #Missing: KF
2176  # subset of legacy chains migrated phase1 boards
2177  MenuItem('L1_BPH-0M9-eEM9-eEM7').setLogic( d.TOPO_0INVM9_eEM9ab_eEMab & physcond)
2178  MenuItem('L1_BPH-0M9-eEM9-eEM7_MU5VF').setLogic( d.MU5VF & d.TOPO_0INVM9_eEM9ab_eEMab & physcond)
2179  MenuItem('L1_BPH-0M9-eEM9-eEM7_2MU3V').setLogic( d.MU3V.x(2) & d.TOPO_0INVM9_eEM9ab_eEMab & physcond)
2180  MenuItem('L1_BPH-0DR3-eEM9jJ40').setLogic( d.TOPO_0DR03_eEM9ab_CjJ40ab & physcond)
2181  MenuItem('L1_BPH-0DR3-eEM9jJ40_MU5VF').setLogic( d.MU5VF & d.TOPO_0DR03_eEM9ab_CjJ40ab & physcond)
2182  MenuItem('L1_BPH-0DR3-eEM9jJ40_2MU3V').setLogic( d.MU3V.x(2) & d.TOPO_0DR03_eEM9ab_CjJ40ab & physcond)
2183 
2184  MenuItem("L1_JPSI-1M5-eEM9" ).setLogic( d.TOPO_1INVM5_eEM9s1_eEMs6 & physcond)
2185  MenuItem("L1_JPSI-1M5-eEM15").setLogic( d.TOPO_1INVM5_eEM15s1_eEMs6 & physcond)
2186 
2187  MenuItem('L1_LLP-RO-eEM').setLogic( d.TOPO_100RATIO_0MATCH_eTAU40si2_eEMall & physcond)
2188  MenuItem('L1_LLP-NOMATCH-eEM').setLogic( d.TOPO_NOT_0MATCH_eTAU40si1_eEMall & physcond)
2189 
2190  MenuItem('L1_DR-eTAU30LeTAU20L-jJ55').setLogic( d.TOPO_2DISAMB_jJ55ab_0DR28_eTAU30abl_eTAU20abl & physcond)
2191  MenuItem('L1_cTAU30M_2cTAU20M_DR-eTAU30LeTAU20L').setLogic( d.cTAU30M & d.cTAU20M.x(2) & d.TOPO_0DR28_eTAU30abl_eTAU20abl & physcond)
2192  MenuItem('L1_cTAU30M_2cTAU20M_DR-eTAU30MeTAU20M').setLogic( d.cTAU30M & d.cTAU20M.x(2) & d.TOPO_0DR28_eTAU30abm_eTAU20abm & physcond)
2193  MenuItem('L1_cTAU30M_2cTAU20M_DR-eTAU30LeTAU20L-jJ55').setLogic( d.cTAU30M & d.cTAU20M.x(2) & d.TOPO_2DISAMB_jJ55ab_0DR28_eTAU30abl_eTAU20abl & physcond)
2194  MenuItem('L1_cTAU30M_2cTAU20M_DR-eTAU30eTAU20').setLogic( d.cTAU30M & d.cTAU20M.x(2) & d.TOPO_0DR28_eTAU30ab_eTAU20ab & physcond)
2195  MenuItem('L1_cTAU30M_2cTAU20M_DR-eTAU30eTAU20-jJ55').setLogic( d.cTAU30M & d.cTAU20M.x(2) & d.TOPO_2DISAMB_jJ55ab_0DR28_eTAU30ab_eTAU20ab & physcond)
2196  MenuItem('L1_cTAU20M_DR-eTAU20eTAU12-jJ40').setLogic( d.cTAU20M & d.TOPO_2DISAMB_jJ40ab_0DR10_eTAU20ab_eTAU12ab & physcond)
2197  MenuItem('L1_eTAU80_2cTAU30M_DR-eTAU30eTAU20').setLogic( d.eTAU80 & d.cTAU30M.x(2) & d.TOPO_0DR28_eTAU30ab_eTAU20ab & physcond)
2198 
2199 
2200  MenuItem('L1_4jJ30p0ETA24_0DETA24-eTAU30eTAU12').setLogic ( d.jJ300ETA25.x(4) & d.TOPO_0DETA24_eTAU30s2_eTAU12s2 & physcond)
2201  MenuItem('L1_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU20').setLogic ( d.jJ300ETA25.x(4) & d.TOPO_0DETA24_4DPHI99_eTAU30ab_eTAU20ab & physcond)
2202  MenuItem('L1_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU12').setLogic ( d.jJ300ETA25.x(4) & d.TOPO_0DETA24_4DPHI99_eTAU30ab_eTAU12ab & physcond)
2203  MenuItem('L1_4jJ30p0ETA24_0DETA24_10DPHI99-eTAU30eTAU12').setLogic( d.jJ300ETA25.x(4) & d.TOPO_0DETA24_10DPHI99_eTAU30ab_eTAU12ab & physcond)
2204  MenuItem('L1_jJ85p0ETA21_3jJ40p0ETA25_cTAU20M_2cTAU12M').setLogic ( d.jJ850ETA21 & d.jJ400ETA25.x(3) & d.cTAU20M & d.cTAU12M.x(2) & physcond)
2205  #ATR-27132
2206  MenuItem('L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24-eTAU30eTAU12').setLogic ( d.cTAU20M & d.cTAU12M & d.jJ300ETA25.x(4) & d.TOPO_0DETA24_eTAU30s2_eTAU12s2 & physcond)
2207  MenuItem('L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU20').setLogic ( d.cTAU20M & d.cTAU12M & d.jJ300ETA25.x(4) & d.TOPO_0DETA24_4DPHI99_eTAU30ab_eTAU20ab & physcond)
2208  MenuItem('L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_4DPHI99-eTAU30eTAU12').setLogic ( d.cTAU20M & d.cTAU12M & d.jJ300ETA25.x(4) & d.TOPO_0DETA24_4DPHI99_eTAU30ab_eTAU12ab & physcond)
2209  MenuItem('L1_cTAU20M_cTAU12M_4jJ30p0ETA24_0DETA24_10DPHI99-eTAU30eTAU12').setLogic( d.cTAU20M & d.cTAU12M & d.jJ300ETA25.x(4) & d.TOPO_0DETA24_10DPHI99_eTAU30ab_eTAU12ab & physcond)
2210 
2211  MenuItem('L1_jMJJ-300-NFF').setLogic( d.TOPO_300INVM_jJ60s6_AjJ50s6 & physcond)
2212  MenuItem('L1_jMJJ-400-NFF').setLogic( d.TOPO_400INVM_jJ60s6_AjJ50s6 & physcond)
2213  MenuItem('L1_jMJJ-500-NFF').setLogic( d.TOPO_500INVM_jJ60s6_AjJ50s6 & physcond)
2214  MenuItem('L1_jMJJ-700').setLogic( d.TOPO_700INVM_AjJ60s6_AjJ50s6 & physcond)
2215  MenuItem('L1_jMJJ-700-NFF').setLogic( d.TOPO_700INVM_jJ60s6_AjJ50s6 & physcond)
2216  MenuItem('L1_MU5VF_jMJJ-300-NFF').setLogic( d.MU5VF & d.TOPO_300INVM_jJ60s6_AjJ50s6 & physcond)
2217  MenuItem('L1_eEM22M_jMJJ-300').setLogic( d.eEM22M & d.TOPO_300INVM_AjJ60s6_AjJ50s6 & physcond)
2218  MenuItem('L1_eEM22M_jMJJ-300-NFF').setLogic( d.eEM22M & d.TOPO_300INVM_jJ60s6_AjJ50s6 & physcond)
2219  MenuItem('L1_HT150-jJ50s5pETA32_jMJJ-400-CF').setLogic( d.TOPO_HT150_jJ50s5pETA32 & d.TOPO_400INVM_AjJ60s6pETA32_AjJ50s6p30ETA49 & physcond)
2220  MenuItem('L1_jMJJ-400-CF').setLogic( d.TOPO_400INVM_AjJ60s6pETA32_AjJ50s6p30ETA49 & physcond)
2221  MenuItem('L1_jJ90_DETA20-jJ90J').setLogic( d.jJ50 & d.TOPO_0DETA20_jJ90s1_jJs2 & physcond)
2222  MenuItem('L1_HT190-jJ40s5pETA21').setLogic( d.TOPO_HT190_jJ40s5pETA21 & physcond)
2223  MenuItem('L1_SC175-SCjJ10').setLogic( d.TOPO_SC175_SCjJ10abpETA26 & physcond)
2224 
2225  #ATR-30179
2226  MenuItem('L1_cTAU30M_3DR35-MU8F-eTAU30').setLogic( d.cTAU30M & d.TOPO_3DR35_MU8Fab_eTAU30ab & physcond)
2227 
2228  # Needed?
2229  MenuItem('L1_DPHI-2eEM5').setLogic( d.TOPO_27DPHI32_eEMs1_eEMs6 & physcond)
2230  # Need to redefine these wrt Phase-I TE
2231  MenuItem('L1_DPHI-2eEM5_VTE5p24ETA49').setLogic( d.TOPO_27DPHI32_eEMs1_eEMs6 & Not(d.TE524ETA49) & physcond).setTriggerType(TT.calo)
2232  MenuItem('L1_DPHI-2eEM5_VTE10').setLogic( d.TOPO_27DPHI32_eEMs1_eEMs6 & Not(d.TE10) & physcond).setTriggerType(TT.calo)
2233  MenuItem('L1_DPHI-2eEM9_VTE50').setLogic( d.eEM9.x(2) & d.TOPO_27DPHI32_eEMs1_eEMs6 & Not(d.TE50) & physcond).setTriggerType(TT.calo)
2234  MenuItem('L1_BTAG-MU3VjJ40').setLogic( d.TOPO_0DR04_MU3Vab_CjJ40ab & physcond)
2235  MenuItem('L1_BTAG-MU5VFjJ80').setLogic( d.TOPO_0DR04_MU5VFab_CjJ80ab & physcond)
2236  MenuItem('L1_BTAG-MU5VFjJ40_2jJ40p0ETA25').setLogic( d.TOPO_0DR04_MU5VFab_CjJ40ab & d.jJ400ETA25.x(2) & physcond)
2237  MenuItem('L1_BTAG-MU5VFjJ20_2jJ40p0ETA25_jJ50p0ETA25').setLogic( d.TOPO_0DR04_MU5VFab_CjJ20ab & d.jJ400ETA25.x(2) & d.jJ500ETA25 & physcond)
2238  MenuItem('L1_BTAG-MU5VFjJ20_2jJ40p0ETA25').setLogic( d.TOPO_0DR04_MU5VFab_CjJ20ab & d.jJ400ETA25.x(2) & physcond)
2239  MenuItem('L1_BTAG-MU3VFjJ20_2jJ40p0ETA25').setLogic( d.TOPO_0DR04_MU3VFab_CjJ20ab & d.jJ400ETA25.x(2) & physcond)
2240  MenuItem('L1_BPH-8M15-2MU3V-BO' ).setLogic( d.TOPO_8INVM15_2CMU3Vab & physcond) # 96% for Upsi
2241  #ATR-29784
2242  MenuItem('L1_DPHI-2eEM1').setLogic( d.TOPO_23DPHI32_2eEM1s & physcond)
2243  MenuItem('L1_DPHI-2eTAU1').setLogic( d.TOPO_23DPHI32_2eTAU1s & physcond)
2244  MenuItem('L1_DPHI-2eEM1_VjTE200').setLogic( d.TOPO_23DPHI32_2eEM1s & Not(d.jTE200) & physcond)
2245  MenuItem('L1_DPHI-2eTAU1_VjTE200').setLogic( d.TOPO_23DPHI32_2eTAU1s & Not(d.jTE200) & physcond)
2246  MenuItem('L1_DPHI-2eEM1_VjTE200_GAP_AANDC').setLogic( d.TOPO_23DPHI32_2eEM1s & Not(d.jTE200) & GAPAC & physcond)
2247  MenuItem('L1_DPHI-2eTAU1_VjTE200_GAP_AANDC').setLogic( d.TOPO_23DPHI32_2eTAU1s & Not(d.jTE200) & GAPAC & physcond)
2248  MenuItem('L1_DPHI-2jTAU1').setLogic( d.TOPO_23DPHI32_2jTAU1s & physcond)
2249 
2250  # ATR-30728
2251  MenuItem('L1_23INVM-24DPHI-2eTAU1_VjTE200').setLogic(d.TOPO_23INVM400000_24DPHI32_2eTAU07s & Not(d.jTE200) & physcond)
2252  MenuItem('L1_28INVM-24DPHI-2eTAU1_VjTE200').setLogic(d.TOPO_28INVM400000_24DPHI32_2eTAU06s & Not(d.jTE200) & physcond)
2253  MenuItem('L1_23INVM-25DPHI-2eTAU1_VjTE200').setLogic(d.TOPO_23INVM400000_25DPHI32_2eTAU06s & Not(d.jTE200) & physcond)
2254  MenuItem('L1_33INVM-25DPHI-2eTAU1_VjTE200').setLogic(d.TOPO_33INVM400000_25DPHI32_2eTAU05s & Not(d.jTE200) & physcond)
2255  MenuItem('L1_23INVM-27DPHI-2eTAU1_VjTE200').setLogic(d.TOPO_23INVM400000_27DPHI32_2eTAU05s & Not(d.jTE200) & physcond)
2256 
2257  MenuItem('L1_23INVM-27DPHI-2eTAU1_VjTE200_EMPTY' ).setLogic( d.TOPO_23INVM400000_27DPHI32_2eTAU05s & Not(d.jTE200) & cosmiccond)
2258  MenuItem('L1_23INVM-27DPHI-2eTAU1_VjTE200_UNPAIRED_ISO' ).setLogic( d.TOPO_23INVM400000_27DPHI32_2eTAU05s & Not(d.jTE200) & unpaired_isocond)
2259  MenuItem('L1_23INVM-27DPHI-2eTAU1_VjTE200_UNPAIRED_NONISO' ).setLogic( d.TOPO_23INVM400000_27DPHI32_2eTAU05s & Not(d.jTE200) & unpaired_nonisocond)
2260 
2261  # g-2 tau (ATR-30638)
2262  MenuItem('L1_2cTAU50M_DPHI-2eTAU50').setLogic(d.cTAU50M.x(2) & d.TOPO_30DPHI32_2eTAU50s & physcond)
2263  MenuItem('L1_eTAU70_2cTAU50M_DPHI-2eTAU50').setLogic(d.eTAU70 & d.cTAU50M.x(2) & d.TOPO_30DPHI32_2eTAU50s & physcond)
2264 
2265  # ATR-30824
2266  MenuItem('L1_BTAG-MU3VFjJ40').setLogic( d.TOPO_0DR04_MU3VFab_CjJ40ab & physcond)
2267  MenuItem('L1_BTAG-MU3VFjJ40_2jJ30p0ETA25').setLogic( d.TOPO_0DR04_MU3VFab_CjJ40ab & d.jJ300ETA25.x(2) & physcond)
2268  MenuItem('L1_BTAG-MU3VFjJ40_2jJ30p0ETA25_jJ50p0ETA25').setLogic( d.TOPO_0DR04_MU3VFab_CjJ40ab & d.jJ300ETA25.x(2) & d.jJ500ETA25 & physcond)
2269  MenuItem('L1_BTAG-MU3VFjJ40_2jJ40p0ETA25').setLogic( d.TOPO_0DR04_MU3VFab_CjJ40ab & d.jJ400ETA25.x(2) & physcond)
2270  MenuItem('L1_BTAG-MU3VFjJ40_2jJ40p0ETA25_jJ50p0ETA25').setLogic( d.TOPO_0DR04_MU3VFab_CjJ40ab & d.jJ400ETA25.x(2) & d.jJ500ETA25 & physcond)
2271 
2272  MenuItem('L1_BTAG-MU5VFjJ40').setLogic( d.TOPO_0DR04_MU5VFab_CjJ40ab & physcond)
2273  MenuItem('L1_BTAG-MU5VFjJ40_2jJ30p0ETA25').setLogic( d.TOPO_0DR04_MU5VFab_CjJ40ab & d.jJ300ETA25.x(2) & physcond)
2274  MenuItem('L1_BTAG-MU5VFjJ40_2jJ30p0ETA25_jJ50p0ETA25').setLogic( d.TOPO_0DR04_MU5VFab_CjJ40ab & d.jJ300ETA25.x(2) & d.jJ500ETA25 & physcond)
2275  MenuItem('L1_BTAG-MU5VFjJ40_2jJ40p0ETA25_jJ50p0ETA25').setLogic( d.TOPO_0DR04_MU5VFab_CjJ40ab & d.jJ400ETA25.x(2) & d.jJ500ETA25 & physcond)
2276 
2277  except NameError as ex:
2278  exc_type, exc_value, exc_traceback = sys.exc_info()
2279  fn,ln,_,_ = traceback.extract_tb(exc_traceback)[0]
2280  fn = fn.rsplit("/",1)[-1]
2281 
2282  msg = ex.args[0]
2283  log.error("Creation of L1Topo item failed, since variable %s" % msg)
2284  m = re.match("name '(?P<varname>.*)' is not defined", msg)
2285  if m:
2286  newmsg = "In line %i in file %s, %s" % (ln, fn, msg)
2287  missingVar = m.groupdict()["varname"]
2288  key = missingVar.split('_',1)[-1]
2289  if key in ItemDef.otherTopoNames:
2290  alternative = ', '.join(ItemDef.otherTopoNames[key])
2291  log.info("However, there is an alternative defined: %s" % alternative)
2292  newmsg += ", however there is an alternative: %s" % alternative
2293  ex.args=(newmsg,)
2294  raise
2295 
2296 
2297  except Exception as ex:
2298  log.error( "Creation of L1Topo item failed, will abort!: %s" , ex)
2299  raise
2300 
2301  # Phase-II
2302  ItemDef_run4.registerItems(d, menuName)
2303 
2304  # =======================================================
2305  #
2306  # Here we define the items for the secondary partitions
2307  #
2308  # =======================================================
2309 
2310  # Partition 2
2311  MenuItem.currentPartition = 2
2312 
2313  # Partition 3
2314  MenuItem.currentPartition = 3
2315 
2316  MenuItem('L1_RD3_BGRP15' ).setLogic( d.RNDM3 & d.BGRP0 & d.BGRP15 ).setTriggerType(TT.rand)
2317 
2318 
2319  # reset to partition 1
2320  MenuItem.currentPartition = 1
2321 
2322  MenuItem.l1configForRegistration = None
2323 
2324  @staticmethod
2326  """
2327  CTP maps the L1 items to its inputs via two switch matrices.
2328  The first one is used to identify all CTP inputs, and is constructed
2329  using a dummy menu which accesses every input item.
2330  We construct this menu dynamically by reading all of the thresholds
2331  on every connector.
2332  The real L1 menu is used to generate the second switch matrix only.
2333  """
2334 
2335  MenuItem.l1configForRegistration = tc
2336 
2337  d = ItemDef.threshold_conditions(tc)
2338 
2339  # Use this as a default
2340  physcond = d.BGRP0 & d.BGRP1
2341 
2342  for board in list(L1MenuFlags.boards().values()) + list(L1MenuFlags.legacyBoards().values()):
2343  log.info(f"Currently reading config for board {board['name']}")
2344 
2345  # Only neededed for the direct CTPIN cables
2346  if board['name'] not in ['Ctpin7','Ctpin8','Ctpin9']:
2347  continue
2348 
2349  # Ignore the sub-boards, just use the merger board
2350  if board['name'] in ['LegacyTopo0','LegacyTopo1']:
2351  continue
2352 
2353  for conn in board['connectors']:
2354  itemname = f"L1_{conn['name']}_Thresholds"
2355 
2356  # Handling for Phase-I topo algorithms
2357  if conn['name'] in ['Topo2El','Topo3El','MuCTPiEl']:
2358  # Accumulate list of thresholds for the connector
2359  thresholds = []
2360 
2361  prefix = 'MUTOPO' if conn['name'] == 'MuCTPiEl' else 'TOPO'
2362 
2363  for g in conn['algorithmGroups']:
2364  for a in g['algorithms']:
2365  for l in a.outputlines:
2366  thresholds.append(f"{prefix}_{l}")
2367  log.info(f"Combining {len(thresholds)} thresholds into item {itemname} for connector {conn['name']}")
2368 
2369  # Need to do AND here because the AND logic occurs in the fully connected CAM,
2370  # while OR is later in the LUTs which support fewer inputs
2371  item_str = '&'.join(f"d.{t.replace('-','_')}" for t in thresholds)
2372  log.info(item_str)
2373  MenuItem(itemname).setLogic(eval(item_str) & physcond)
2374 
2375 
2376  elif conn['name'] == 'LegacyTopoMerged':
2377  # Accumulate list of thresholds for the connector
2378  thresholds = []
2379  for g in conn['signalGroups']:
2380  for s in g['signals']:
2381  if s.__class__==str:
2382  thresholds.append(s)
2383  elif s.__class__==tuple and s[0]:
2384  thresholds.append(s[0])
2385  log.info(f"Combining {len(thresholds)} thresholds into item {itemname} for connector {conn['name']}")
2386 
2387  # Need to do AND here because the AND logic occurs in the fully connected CAM,
2388  # while OR is later in the LUTs which support fewer inputs
2389  item_str = '&'.join(f"d.{t.replace('-','_')}" for t in thresholds)
2390  log.info(item_str)
2391  MenuItem(itemname).setLogic(eval(item_str) & physcond)
2392 
2393 
2394  # Handling for multiplicity thresholds
2395  else:
2396 
2397  # Accumulate list of thresholds for the connector
2398  thresholds = []
2399  for t in conn['thresholds']:
2400  if t.__class__==str and 'SPARE' not in t:
2401  thresholds.append(t)
2402  elif t.__class__==tuple and t[0] and 'SPARE' not in t[0]:
2403  thresholds.append(t[0])
2404  log.info(f"Combining {len(thresholds)} thresholds into item {itemname} for connector {conn['name']}")
2405 
2406  # Need to do AND here because the AND logic occurs in the fully connected CAM,
2407  # while OR is later in the LUTs which support fewer inputs
2408  # For some reason we drop the 'p' (Run 2 '.') here
2409  item_str = '&'.join(f"d.{t.replace('p','')}" for t in thresholds)
2410  log.info(item_str)
2411  MenuItem(itemname).setLogic(eval(item_str) & physcond)
2412 
2413  MenuItem.l1configForRegistration = None
python.L1.Config.ItemDef.ItemDef.registerItems
def registerItems(tc, menuName)
Definition: ItemDef.py:53
python.L1.Base.Logic.Not
def Not(x)
Definition: Logic.py:180
hist_file_dump.d
d
Definition: hist_file_dump.py:142
python.L1.Base.Items.MenuItem
Definition: Items.py:73
dumpHVPathFromNtuple.append
bool append
Definition: dumpHVPathFromNtuple.py:91
python.Bindings.values
values
Definition: Control/AthenaPython/python/Bindings.py:808
python.L1.Config.ItemDef.ItemDef.threshold_conditions
def threshold_conditions(tc)
Definition: ItemDef.py:34
python.L1.Config.ItemDef.ItemDef
Definition: ItemDef.py:26
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:194
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
python.L1.Config.ItemDef.ItemDef.registerItems_AllCTPIn
def registerItems_AllCTPIn(tc)
Definition: ItemDef.py:2325
python.L1.Base.CTPCondition.InternalTrigger
Definition: CTPCondition.py:33
python.L1.Base.CTPCondition.ThrCondition
Definition: CTPCondition.py:8
Trk::split
@ split
Definition: LayerMaterialProperties.h:38