ATLAS Offline Software
Functions
python.SiCombinatorialTrackFinderToolConfig Namespace Reference

Functions

def SiDetElementBoundaryLinksCondAlg_xk_Pixel_Cfg (flags, name="InDetSiDetElementBoundaryLinksPixelCondAlg", **kwargs)
 
def SiDetElementBoundaryLinksCondAlg_xk_SCT_Cfg (flags, name="InDetSiDetElementBoundaryLinksSCTCondAlg", **kwargs)
 
def SiDetElementBoundaryLinksCondAlg_xk_ITkPixel_Cfg (flags, name="ITkSiDetElementBoundaryLinksPixelCondAlg", **kwargs)
 
def SiDetElementBoundaryLinksCondAlg_xk_ITkStrip_Cfg (flags, name="ITkSiDetElementBoundaryLinksStripCondAlg", **kwargs)
 
def SiCombinatorialTrackFinder_xkCfg (flags, name="InDetSiComTrackFinder", **kwargs)
 
def SiCombinatorialTrackFinder_xk_Trig_Cfg (flags, name="InDetTrigSiComTrackFinder", **kwargs)
 
def ITkSiCombinatorialTrackFinder_xkCfg (flags, name="ITkSiComTrackFinder", **kwargs)
 

Function Documentation

◆ ITkSiCombinatorialTrackFinder_xkCfg()

def python.SiCombinatorialTrackFinderToolConfig.ITkSiCombinatorialTrackFinder_xkCfg (   flags,
  name = "ITkSiComTrackFinder",
**  kwargs 
)

Definition at line 205 of file SiCombinatorialTrackFinderToolConfig.py.

206  flags, name="ITkSiComTrackFinder", **kwargs):
207  acc = ComponentAccumulator()
208 
209  # For SiDetElementBoundaryLinks_xk ReadCondHandle
210  if flags.Tracking.ActiveConfig.useITkPixel:
212 
213  if flags.Tracking.ActiveConfig.useITkStrip:
215 
216  kwargs.setdefault("usePixel", flags.Tracking.ActiveConfig.useITkPixel)
217  kwargs.setdefault("useSCT", flags.Tracking.ActiveConfig.useITkStrip)
218  kwargs.setdefault("PixelClusterContainer", 'ITkPixelClusters')
219  kwargs.setdefault("SCT_ClusterContainer", 'ITkStripClusters')
220  kwargs.setdefault("PixelDetElementBoundaryLinks_xk",
221  "ITkPixelDetElementBoundaryLinks_xk")
222  kwargs.setdefault("SCT_DetElementBoundaryLinks_xk",
223  "ITkStripDetElementBoundaryLinks_xk")
224  kwargs.setdefault("ITkGeometry", True)
225  kwargs.setdefault("doFastTracking", flags.Tracking.doITkFastTracking)
226  kwargs.setdefault("writeHolesFromPattern", flags.Tracking.doITkFastTracking)
227 
228  #
229  # --- Local track finding using sdCaloSeededSSSpace point seed
230  #
231  from TrkConfig.TrkRIO_OnTrackCreatorConfig import ITkRotCreatorCfg
232  ITkRotCreator = acc.popToolsAndMerge(ITkRotCreatorCfg(
233  flags, name="ITkRotCreator"+flags.Tracking.ActiveConfig.extension))
234  acc.addPublicTool(ITkRotCreator)
235  kwargs.setdefault("RIOonTrackTool", ITkRotCreator)
236 
237  from TrkConfig.TrkExRungeKuttaPropagatorConfig import (
238  RungeKuttaPropagatorCfg)
239  ITkPatternPropagator = acc.popToolsAndMerge(
240  RungeKuttaPropagatorCfg(flags, name="ITkPatternPropagator"))
241  acc.addPublicTool(ITkPatternPropagator)
242  kwargs.setdefault("PropagatorTool", ITkPatternPropagator)
243 
244  from TrkConfig.TrkMeasurementUpdatorConfig import KalmanUpdator_xkCfg
245  ITkPatternUpdator = acc.popToolsAndMerge(
246  KalmanUpdator_xkCfg(flags, name="ITkPatternUpdator"))
247  acc.addPublicTool(ITkPatternUpdator)
248  kwargs.setdefault("UpdatorTool", ITkPatternUpdator)
249 
250  from InDetConfig.InDetBoundaryCheckToolConfig import ITkBoundaryCheckToolCfg
251  kwargs.setdefault("BoundaryCheckTool", acc.popToolsAndMerge(
252  ITkBoundaryCheckToolCfg(flags)))
253 
254  if flags.Detector.EnableITkPixel:
255  from PixelConditionsTools.ITkPixelConditionsSummaryConfig import (
256  ITkPixelConditionsSummaryCfg)
257  kwargs.setdefault("PixelSummaryTool", acc.popToolsAndMerge(
259  else:
260  kwargs.setdefault("PixelSummaryTool", None)
261 
262  if flags.Detector.EnableITkStrip:
263  from SCT_ConditionsTools.ITkStripConditionsToolsConfig import (
264  ITkStripConditionsSummaryToolCfg)
265  kwargs.setdefault("SctSummaryTool", acc.popToolsAndMerge(
267  else:
268  kwargs.setdefault("SctSummaryTool", None)
269 
270  # Protection against FPEs
271  kwargs.setdefault("MinFinalPtCut",
272  min(min(flags.Tracking.ActiveConfig.minPT), 100))
273 
274  acc.setPrivateTools(CompFactory.InDet.SiCombinatorialTrackFinder_xk(
275  name+flags.Tracking.ActiveConfig.extension, **kwargs))
276  return acc

◆ SiCombinatorialTrackFinder_xk_Trig_Cfg()

def python.SiCombinatorialTrackFinderToolConfig.SiCombinatorialTrackFinder_xk_Trig_Cfg (   flags,
  name = "InDetTrigSiComTrackFinder",
**  kwargs 
)
based  on: InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigRecLoadTools.py

Definition at line 145 of file SiCombinatorialTrackFinderToolConfig.py.

146  flags, name="InDetTrigSiComTrackFinder", **kwargs):
147  """
148  based on: InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigRecLoadTools.py
149  """
150  acc = ComponentAccumulator()
151 
152  # For SiDetElementBoundaryLinks_xk ReadCondHandle
153  if flags.Tracking.ActiveConfig.usePixel:
155 
156  if flags.Tracking.ActiveConfig.useSCT:
158 
159  kwargs.setdefault("usePixel", flags.Tracking.ActiveConfig.usePixel)
160  kwargs.setdefault("useSCT", flags.Tracking.ActiveConfig.useSCT)
161  kwargs.setdefault("PixelClusterContainer", 'PixelTrigClusters')
162  kwargs.setdefault("SCT_ClusterContainer", 'SCT_TrigClusters')
163  kwargs.setdefault("PixelDetElStatus", "")
164  kwargs.setdefault("SCTDetElStatus", "")
165 
166  from TrkConfig.TrkExRungeKuttaPropagatorConfig import (
167  RungeKuttaPropagatorCfg)
168  propagatorTool = acc.popToolsAndMerge(
169  RungeKuttaPropagatorCfg(flags, name="InDetTrigPatternPropagator"))
170  acc.addPublicTool(propagatorTool)
171  kwargs.setdefault("PropagatorTool", propagatorTool)
172 
173  from TrkConfig.TrkMeasurementUpdatorConfig import KalmanUpdator_xkCfg
174  patternUpdatorTool = acc.popToolsAndMerge(
175  KalmanUpdator_xkCfg(flags, name="InDetTrigPatternUpdator"))
176  acc.addPublicTool(patternUpdatorTool)
177  kwargs.setdefault("UpdatorTool", patternUpdatorTool)
178 
179  from TrkConfig.TrkRIO_OnTrackCreatorConfig import TrigRotCreatorCfg
180  rioOnTrackTool = acc.popToolsAndMerge(TrigRotCreatorCfg(flags))
181  acc.addPublicTool(rioOnTrackTool)
182  kwargs.setdefault("RIOonTrackTool", rioOnTrackTool)
183 
184  from PixelConditionsTools.PixelConditionsSummaryConfig import (
185  PixelConditionsSummaryCfg)
186  kwargs.setdefault("PixelSummaryTool", acc.popToolsAndMerge(
188 
189  from SCT_ConditionsTools.SCT_ConditionsToolsConfig import (
190  SCT_ConditionsSummaryToolCfg)
191  kwargs.setdefault("SctSummaryTool", acc.popToolsAndMerge(
193  flags, withFlaggedCondTool=False, withTdaqTool=False)))
194 
195  from InDetConfig.InDetBoundaryCheckToolConfig import (
196  InDetTrigBoundaryCheckToolCfg)
197  kwargs.setdefault("BoundaryCheckTool", acc.popToolsAndMerge(
199 
200  acc.setPrivateTools(
201  CompFactory.InDet.SiCombinatorialTrackFinder_xk(name, **kwargs))
202  return acc
203 
204 

◆ SiCombinatorialTrackFinder_xkCfg()

def python.SiCombinatorialTrackFinderToolConfig.SiCombinatorialTrackFinder_xkCfg (   flags,
  name = "InDetSiComTrackFinder",
**  kwargs 
)

Definition at line 66 of file SiCombinatorialTrackFinderToolConfig.py.

67  flags, name="InDetSiComTrackFinder", **kwargs):
68  acc = ComponentAccumulator()
69 
70  # For SiDetElementBoundaryLinks_xk ReadCondHandle
71  if flags.Tracking.ActiveConfig.usePixel:
73 
74  if flags.Tracking.ActiveConfig.useSCT:
76 
77  kwargs.setdefault("usePixel", flags.Tracking.ActiveConfig.usePixel)
78  kwargs.setdefault("useSCT", flags.Tracking.ActiveConfig.useSCT)
79  kwargs.setdefault("PixelClusterContainer", "PixelClusters")
80  kwargs.setdefault("SCT_ClusterContainer", "SCT_Clusters")
81 
82  #
83  # --- Local track finding using sdCaloSeededSSSpace point seed
84  #
85  from TrkConfig.TrkRIO_OnTrackCreatorConfig import InDetRotCreatorDigitalCfg
86  RotCreator = acc.popToolsAndMerge(InDetRotCreatorDigitalCfg(flags))
87  acc.addPublicTool(RotCreator)
88  kwargs.setdefault("RIOonTrackTool", RotCreator)
89 
90  from TrkConfig.TrkExRungeKuttaPropagatorConfig import (
91  RungeKuttaPropagatorCfg)
92  InDetPatternPropagator = acc.popToolsAndMerge(
93  RungeKuttaPropagatorCfg(flags, name="InDetPatternPropagator"))
94  acc.addPublicTool(InDetPatternPropagator)
95  kwargs.setdefault("PropagatorTool", InDetPatternPropagator)
96 
97  from TrkConfig.TrkMeasurementUpdatorConfig import KalmanUpdator_xkCfg
98  InDetPatternUpdator = acc.popToolsAndMerge(
99  KalmanUpdator_xkCfg(flags, name="InDetPatternUpdator"))
100  acc.addPublicTool(InDetPatternUpdator)
101  kwargs.setdefault("UpdatorTool", InDetPatternUpdator)
102 
103  from InDetConfig.InDetBoundaryCheckToolConfig import (
104  InDetBoundaryCheckToolCfg)
105  kwargs.setdefault("BoundaryCheckTool", acc.popToolsAndMerge(
107 
108  if flags.Tracking.ActiveConfig.usePixel:
109  if "PixelSummaryTool" not in kwargs:
110  from PixelConditionsTools.PixelConditionsSummaryConfig import (
111  PixelConditionsSummaryCfg)
112  kwargs.setdefault("PixelSummaryTool", acc.popToolsAndMerge(
114  if "PixelDetElStatus" not in kwargs:
115  from PixelConditionsAlgorithms.PixelConditionsConfig import (
116  PixelDetectorElementStatusAlgCfg)
117  acc.merge(PixelDetectorElementStatusAlgCfg(flags))
118  kwargs.setdefault("PixelDetElStatus", "PixelDetectorElementStatus")
119  else:
120  kwargs.setdefault("PixelSummaryTool", "")
121 
122  if flags.Tracking.ActiveConfig.useSCT:
123  if "SctSummaryTool" not in kwargs:
124  from SCT_ConditionsTools.SCT_ConditionsToolsConfig import (
125  SCT_ConditionsSummaryToolCfg)
126  kwargs.setdefault("SctSummaryTool", acc.popToolsAndMerge(
128  if "SCTDetElStatus" not in kwargs:
129  from SCT_ConditionsAlgorithms.SCT_ConditionsAlgorithmsConfig import (
130  SCT_DetectorElementStatusAlgCfg)
131  acc.merge(SCT_DetectorElementStatusAlgCfg(flags))
132  kwargs.setdefault("SCTDetElStatus", "SCTDetectorElementStatus")
133  else:
134  kwargs.setdefault("SctSummaryTool", "")
135 
136  # Protection against FPEs
137  kwargs.setdefault("MinFinalPtCut",
138  min(flags.Tracking.ActiveConfig.minPT, 100))
139 
140  acc.setPrivateTools(CompFactory.InDet.SiCombinatorialTrackFinder_xk(
141  name+flags.Tracking.ActiveConfig.extension, **kwargs))
142  return acc
143 
144 

◆ SiDetElementBoundaryLinksCondAlg_xk_ITkPixel_Cfg()

def python.SiCombinatorialTrackFinderToolConfig.SiDetElementBoundaryLinksCondAlg_xk_ITkPixel_Cfg (   flags,
  name = "ITkSiDetElementBoundaryLinksPixelCondAlg",
**  kwargs 
)

Definition at line 36 of file SiCombinatorialTrackFinderToolConfig.py.

37  flags, name="ITkSiDetElementBoundaryLinksPixelCondAlg", **kwargs):
38  # To produce ITkPixelDetectorElementCollection
39  from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
40  acc = ITkPixelReadoutGeometryCfg(flags)
41 
42  kwargs.setdefault("ReadKey", "ITkPixelDetectorElementCollection")
43  kwargs.setdefault("WriteKey", "ITkPixelDetElementBoundaryLinks_xk")
44  kwargs.setdefault("ITkGeometry", True)
45 
46  acc.addCondAlgo(
47  CompFactory.InDet.SiDetElementBoundaryLinksCondAlg_xk(name, **kwargs))
48  return acc
49 
50 

◆ SiDetElementBoundaryLinksCondAlg_xk_ITkStrip_Cfg()

def python.SiCombinatorialTrackFinderToolConfig.SiDetElementBoundaryLinksCondAlg_xk_ITkStrip_Cfg (   flags,
  name = "ITkSiDetElementBoundaryLinksStripCondAlg",
**  kwargs 
)

Definition at line 51 of file SiCombinatorialTrackFinderToolConfig.py.

52  flags, name="ITkSiDetElementBoundaryLinksStripCondAlg", **kwargs):
53  # To produce ITkStripDetectorElementCollection
54  from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripReadoutGeometryCfg
55  acc = ITkStripReadoutGeometryCfg(flags)
56 
57  kwargs.setdefault("ReadKey", "ITkStripDetectorElementCollection")
58  kwargs.setdefault("WriteKey", "ITkStripDetElementBoundaryLinks_xk")
59  kwargs.setdefault("ITkGeometry", True)
60 
61  acc.addCondAlgo(
62  CompFactory.InDet.SiDetElementBoundaryLinksCondAlg_xk(name, **kwargs))
63  return acc
64 
65 

◆ SiDetElementBoundaryLinksCondAlg_xk_Pixel_Cfg()

def python.SiCombinatorialTrackFinderToolConfig.SiDetElementBoundaryLinksCondAlg_xk_Pixel_Cfg (   flags,
  name = "InDetSiDetElementBoundaryLinksPixelCondAlg",
**  kwargs 
)

Definition at line 8 of file SiCombinatorialTrackFinderToolConfig.py.

9  flags, name="InDetSiDetElementBoundaryLinksPixelCondAlg", **kwargs):
10  # To produce PixelDetectorElementCollection
11  from PixelGeoModel.PixelGeoModelConfig import PixelReadoutGeometryCfg
12  acc = PixelReadoutGeometryCfg(flags)
13 
14  kwargs.setdefault("ReadKey", "PixelDetectorElementCollection")
15  kwargs.setdefault("WriteKey", "PixelDetElementBoundaryLinks_xk")
16 
17  acc.addCondAlgo(
18  CompFactory.InDet.SiDetElementBoundaryLinksCondAlg_xk(name, **kwargs))
19  return acc
20 
21 

◆ SiDetElementBoundaryLinksCondAlg_xk_SCT_Cfg()

def python.SiCombinatorialTrackFinderToolConfig.SiDetElementBoundaryLinksCondAlg_xk_SCT_Cfg (   flags,
  name = "InDetSiDetElementBoundaryLinksSCTCondAlg",
**  kwargs 
)

Definition at line 22 of file SiCombinatorialTrackFinderToolConfig.py.

23  flags, name="InDetSiDetElementBoundaryLinksSCTCondAlg", **kwargs):
24  # To produce SCT_DetectorElementCollection
25  from SCT_GeoModel.SCT_GeoModelConfig import SCT_ReadoutGeometryCfg
26  acc = SCT_ReadoutGeometryCfg(flags)
27 
28  kwargs.setdefault("ReadKey", "SCT_DetectorElementCollection")
29  kwargs.setdefault("WriteKey", "SCT_DetElementBoundaryLinks_xk")
30 
31  acc.addCondAlgo(
32  CompFactory.InDet.SiDetElementBoundaryLinksCondAlg_xk(name, **kwargs))
33  return acc
34 
35 
python.TrkRIO_OnTrackCreatorConfig.ITkRotCreatorCfg
def ITkRotCreatorCfg(flags, name='ITkRotCreator', **kwargs)
Definition: TrkRIO_OnTrackCreatorConfig.py:134
python.TrkRIO_OnTrackCreatorConfig.TrigRotCreatorCfg
def TrigRotCreatorCfg(flags, name='InDetTrigRotCreator', **kwargs)
Definition: TrkRIO_OnTrackCreatorConfig.py:113
python.SiCombinatorialTrackFinderToolConfig.SiCombinatorialTrackFinder_xkCfg
def SiCombinatorialTrackFinder_xkCfg(flags, name="InDetSiComTrackFinder", **kwargs)
Definition: SiCombinatorialTrackFinderToolConfig.py:66
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.TrkMeasurementUpdatorConfig.KalmanUpdator_xkCfg
def KalmanUpdator_xkCfg(flags, name='KalmanUpdator_xk', **kwargs)
Definition: TrkMeasurementUpdatorConfig.py:14
PixelConditionsSummaryConfig.PixelConditionsSummaryCfg
def PixelConditionsSummaryCfg(flags, name="PixelConditionsSummary", **kwargs)
Definition: PixelConditionsSummaryConfig.py:17
python.SiCombinatorialTrackFinderToolConfig.ITkSiCombinatorialTrackFinder_xkCfg
def ITkSiCombinatorialTrackFinder_xkCfg(flags, name="ITkSiComTrackFinder", **kwargs)
Definition: SiCombinatorialTrackFinderToolConfig.py:205
python.InDetBoundaryCheckToolConfig.ITkBoundaryCheckToolCfg
def ITkBoundaryCheckToolCfg(flags, name='ITkBoundaryCheckTool', **kwargs)
Definition: InDetBoundaryCheckToolConfig.py:102
python.SCT_ConditionsAlgorithmsConfig.SCT_DetectorElementStatusAlgCfg
def SCT_DetectorElementStatusAlgCfg(flags, name="SCTDetectorElementStatusAlg", **kwargs)
Definition: SCT_ConditionsAlgorithmsConfig.py:120
ITkPixelConditionsSummaryConfig.ITkPixelConditionsSummaryCfg
def ITkPixelConditionsSummaryCfg(flags, name="ITkPixelConditionsSummary", **kwargs)
Definition: ITkPixelConditionsSummaryConfig.py:12
python.SiCombinatorialTrackFinderToolConfig.SiDetElementBoundaryLinksCondAlg_xk_Pixel_Cfg
def SiDetElementBoundaryLinksCondAlg_xk_Pixel_Cfg(flags, name="InDetSiDetElementBoundaryLinksPixelCondAlg", **kwargs)
Definition: SiCombinatorialTrackFinderToolConfig.py:8
python.SiCombinatorialTrackFinderToolConfig.SiDetElementBoundaryLinksCondAlg_xk_SCT_Cfg
def SiDetElementBoundaryLinksCondAlg_xk_SCT_Cfg(flags, name="InDetSiDetElementBoundaryLinksSCTCondAlg", **kwargs)
Definition: SiCombinatorialTrackFinderToolConfig.py:22
python.SiCombinatorialTrackFinderToolConfig.SiDetElementBoundaryLinksCondAlg_xk_ITkStrip_Cfg
def SiDetElementBoundaryLinksCondAlg_xk_ITkStrip_Cfg(flags, name="ITkSiDetElementBoundaryLinksStripCondAlg", **kwargs)
Definition: SiCombinatorialTrackFinderToolConfig.py:51
python.InDetBoundaryCheckToolConfig.InDetTrigBoundaryCheckToolCfg
def InDetTrigBoundaryCheckToolCfg(flags, name="InDetTrigBoundaryCheckTool", **kwargs)
Definition: InDetBoundaryCheckToolConfig.py:62
python.TrkRIO_OnTrackCreatorConfig.InDetRotCreatorDigitalCfg
def InDetRotCreatorDigitalCfg(flags, name='InDetRotCreatorDigital', **kwargs)
Definition: TrkRIO_OnTrackCreatorConfig.py:99
python.TrkExRungeKuttaPropagatorConfig.RungeKuttaPropagatorCfg
def RungeKuttaPropagatorCfg(flags, name='AtlasRungeKuttaPropagator', **kwargs)
Definition: TrkExRungeKuttaPropagatorConfig.py:9
python.SiCombinatorialTrackFinderToolConfig.SiCombinatorialTrackFinder_xk_Trig_Cfg
def SiCombinatorialTrackFinder_xk_Trig_Cfg(flags, name="InDetTrigSiComTrackFinder", **kwargs)
Definition: SiCombinatorialTrackFinderToolConfig.py:145
python.SCT_ConditionsToolsConfig.SCT_ConditionsSummaryToolCfg
def SCT_ConditionsSummaryToolCfg(flags, name="InDetSCT_ConditionsSummaryTool", **kwargs)
Definition: SCT_ConditionsToolsConfig.py:80
SCT_GeoModelConfig.SCT_ReadoutGeometryCfg
def SCT_ReadoutGeometryCfg(flags)
Definition: SCT_GeoModelConfig.py:42
min
#define min(a, b)
Definition: cfImp.cxx:40
python.InDetBoundaryCheckToolConfig.InDetBoundaryCheckToolCfg
def InDetBoundaryCheckToolCfg(flags, name='InDetBoundarySearchTool', **kwargs)
Definition: InDetBoundaryCheckToolConfig.py:7
PixelGeoModelConfig.PixelReadoutGeometryCfg
def PixelReadoutGeometryCfg(flags)
Definition: PixelGeoModelConfig.py:42
ITkPixelGeoModelConfig.ITkPixelReadoutGeometryCfg
def ITkPixelReadoutGeometryCfg(flags, setGeometryAlignable=False, setAlignmentFolderName="/Indet/Align")
Definition: ITkPixelGeoModelConfig.py:39
PixelConditionsConfig.PixelDetectorElementStatusAlgCfg
def PixelDetectorElementStatusAlgCfg(flags, name="PixelDetectorElementStatusAlg", **kwargs)
Definition: PixelConditionsConfig.py:367
python.ITkStripConditionsToolsConfig.ITkStripConditionsSummaryToolCfg
def ITkStripConditionsSummaryToolCfg(flags, name="ITkStripConditionsSummaryTool", **kwargs)
Definition: ITkStripConditionsToolsConfig.py:16
ITkStripGeoModelConfig.ITkStripReadoutGeometryCfg
def ITkStripReadoutGeometryCfg(flags, setGeometryAlignable=False, setAlignmentFolderName="/Indet/Align")
Definition: ITkStripGeoModelConfig.py:39
python.SiCombinatorialTrackFinderToolConfig.SiDetElementBoundaryLinksCondAlg_xk_ITkPixel_Cfg
def SiDetElementBoundaryLinksCondAlg_xk_ITkPixel_Cfg(flags, name="ITkSiDetElementBoundaryLinksPixelCondAlg", **kwargs)
Definition: SiCombinatorialTrackFinderToolConfig.py:36