ato-water-lib 0.0.90 → 0.0.92

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. package/{esm2022 → esm2020}/lib/ato-water-lib.component.mjs +5 -5
  2. package/{esm2022 → esm2020}/lib/ato-water-lib.module.mjs +15 -15
  3. package/{esm2022 → esm2020}/lib/ato-water-lib.service.mjs +5 -5
  4. package/esm2020/lib/components/asset-flow/asset-flow.component.mjs +165 -0
  5. package/{esm2022 → esm2020}/lib/components/asset-params-view/asset-params-view.component.mjs +9 -7
  6. package/esm2020/lib/components/flow-diagram-lib/flow-diagram-lib.component.mjs +54 -0
  7. package/esm2020/lib/constants/components-group-const.mjs +3687 -0
  8. package/esm2020/lib/directive/ato-loading.directive.mjs +55 -0
  9. package/esm2020/lib/directive/ng-var.directive.mjs +31 -0
  10. package/esm2020/lib/models/default-gojs-editor.model.mjs +3589 -0
  11. package/esm2020/lib/models/gojs-data.model.mjs +6 -0
  12. package/esm2020/lib/models/gojs-editor.model.mjs +1822 -0
  13. package/esm2020/lib/services/utils/utils.service.mjs +133 -0
  14. package/fesm2015/ato-water-lib.mjs +9810 -0
  15. package/fesm2015/ato-water-lib.mjs.map +1 -0
  16. package/{fesm2022 → fesm2020}/ato-water-lib.mjs +1980 -568
  17. package/fesm2020/ato-water-lib.mjs.map +1 -0
  18. package/lib/components/asset-flow/asset-flow.component.d.ts +1 -1
  19. package/lib/components/asset-params-view/asset-params-view.component.d.ts +1 -1
  20. package/lib/components/flow-diagram-lib/flow-diagram-lib.component.d.ts +1 -1
  21. package/lib/constants/components-group-const.d.ts +710 -115
  22. package/lib/directive/ato-loading.directive.d.ts +1 -1
  23. package/lib/directive/ng-var.directive.d.ts +1 -1
  24. package/lib/models/default-gojs-editor.model.d.ts +2 -2
  25. package/lib/models/gojs-editor.model.d.ts +12 -5
  26. package/package.json +13 -7
  27. package/esm2022/lib/components/asset-flow/asset-flow.component.mjs +0 -174
  28. package/esm2022/lib/components/flow-diagram-lib/flow-diagram-lib.component.mjs +0 -55
  29. package/esm2022/lib/constants/components-group-const.mjs +0 -2291
  30. package/esm2022/lib/directive/ato-loading.directive.mjs +0 -59
  31. package/esm2022/lib/directive/ng-var.directive.mjs +0 -33
  32. package/esm2022/lib/models/default-gojs-editor.model.mjs +0 -3582
  33. package/esm2022/lib/models/gojs-data.model.mjs +0 -10
  34. package/esm2022/lib/models/gojs-editor.model.mjs +0 -1799
  35. package/esm2022/lib/services/utils/utils.service.mjs +0 -133
  36. package/fesm2022/ato-water-lib.mjs.map +0 -1
  37. /package/{esm2022 → esm2020}/ato-water-lib.mjs +0 -0
  38. /package/{esm2022 → esm2020}/lib/constants/applicable-prefixes-const.mjs +0 -0
  39. /package/{esm2022 → esm2020}/lib/constants/base64.const.mjs +0 -0
  40. /package/{esm2022 → esm2020}/lib/constants/icon-base64.const.mjs +0 -0
  41. /package/{esm2022 → esm2020}/lib/constants/key.const.mjs +0 -0
  42. /package/{esm2022 → esm2020}/lib/constants/plant.constant.mjs +0 -0
  43. /package/{esm2022 → esm2020}/lib/constants/value.const.mjs +0 -0
  44. /package/{esm2022 → esm2020}/lib/models/ato-asset-flow.model.mjs +0 -0
  45. /package/{esm2022 → esm2020}/public-api.mjs +0 -0
@@ -1,1799 +0,0 @@
1
- import { ATO_ECOMPONENT_PLANT_TYPE } from '../constants/value.const';
2
- export class AtoGojsEditorModel {
3
- initialOptions;
4
- data; // FlowGoJsComponentModel
5
- constructor(data) {
6
- this.data = data;
7
- }
8
- }
9
- (function (AtoGojsEditorModel) {
10
- AtoGojsEditorModel.GRID_SIZE = 20;
11
- AtoGojsEditorModel.BASIC_GRID_INTERVAL_X = 24;
12
- AtoGojsEditorModel.BASIC_GRID_INTERVAL_Y = 10;
13
- AtoGojsEditorModel.BASIC_GRID_SIZE_WIDTH = AtoGojsEditorModel.GRID_SIZE * AtoGojsEditorModel.BASIC_GRID_INTERVAL_X;
14
- AtoGojsEditorModel.BASIC_GRID_SIZE_HEIGHT = AtoGojsEditorModel.GRID_SIZE * AtoGojsEditorModel.BASIC_GRID_INTERVAL_Y;
15
- AtoGojsEditorModel.DISTANCE_LAST_TO_ADD = 50;
16
- AtoGojsEditorModel.PLANT_CELL_HEIGHT = 160;
17
- let ENUM_LAYOUT_EDITOR;
18
- (function (ENUM_LAYOUT_EDITOR) {
19
- ENUM_LAYOUT_EDITOR["AUTO"] = "AUTO ALIGN";
20
- ENUM_LAYOUT_EDITOR["GRID"] = "GRID SUPPORTED";
21
- ENUM_LAYOUT_EDITOR["FREEFORM"] = "FREE FORM";
22
- })(ENUM_LAYOUT_EDITOR = AtoGojsEditorModel.ENUM_LAYOUT_EDITOR || (AtoGojsEditorModel.ENUM_LAYOUT_EDITOR = {}));
23
- AtoGojsEditorModel.LAYOUT_LIST = [
24
- {
25
- name: 'Auto-align',
26
- key: ENUM_LAYOUT_EDITOR.AUTO,
27
- },
28
- {
29
- name: 'Grid Supported',
30
- key: ENUM_LAYOUT_EDITOR.GRID,
31
- },
32
- {
33
- name: 'Freeform',
34
- key: ENUM_LAYOUT_EDITOR.FREEFORM,
35
- },
36
- ];
37
- let ENUM_COLORS;
38
- (function (ENUM_COLORS) {
39
- ENUM_COLORS["RED"] = "#EC7C4E";
40
- ENUM_COLORS["ORANGE"] = "#EBB868";
41
- ENUM_COLORS["BLUE"] = "#81B8FF";
42
- ENUM_COLORS["LIGHT_BLUE"] = "#F4F6FB";
43
- ENUM_COLORS["LIGHT_SKY_BLUE"] = "#cfe7fd";
44
- ENUM_COLORS["WHITE"] = "#FFFFFF";
45
- ENUM_COLORS["GRAY"] = "#919CA5";
46
- ENUM_COLORS["CERULEAN"] = "#0062A9";
47
- ENUM_COLORS["VIVID_VIOLET"] = "#804180";
48
- ENUM_COLORS["RESOLUTION_BLUE"] = "#2D3B77";
49
- ENUM_COLORS["CASHMERE"] = "#D6AB95";
50
- ENUM_COLORS["GALLIANO"] = "#E09F25";
51
- ENUM_COLORS["FOUNTAIN_BLUE"] = "#54BBBA";
52
- ENUM_COLORS["ELF_GREEN"] = "#199C69";
53
- ENUM_COLORS["MEDIUM_RED_VIOLET"] = "#A8438D";
54
- ENUM_COLORS["GRANDIS"] = "#FBC96C";
55
- ENUM_COLORS["SALMON"] = "#F47769";
56
- ENUM_COLORS["NIGHT_RIDER"] = "#2C2C2C";
57
- ENUM_COLORS["ALIZARIN"] = "#EC1B24";
58
- ENUM_COLORS["LINK_WATER"] = "#CAD3DB";
59
- ENUM_COLORS["ZIRCON"] = "#E5EBEB";
60
- ENUM_COLORS["CERULEAN_ALICE_BLUE"] = "#E6F0F7";
61
- ENUM_COLORS["DANUBE"] = "#7197CA";
62
- ENUM_COLORS["DANUBE_ALICE_BLUE"] = "#F1F5FA";
63
- ENUM_COLORS["AZURE"] = "#EEF8F8";
64
- ENUM_COLORS["OLD_LACE"] = "#FCF6EA";
65
- ENUM_COLORS["CARROT_ORANGE"] = "#F69122";
66
- ENUM_COLORS["FLAMINGO"] = "#E95F47";
67
- ENUM_COLORS["SNOW"] = "#FEF7F6";
68
- ENUM_COLORS["LIGHT_SKY_BLUE_2"] = "#92B9F9";
69
- ENUM_COLORS["REGENT_ST_BLUE"] = "#87cee7";
70
- // 98CDE0
71
- })(ENUM_COLORS = AtoGojsEditorModel.ENUM_COLORS || (AtoGojsEditorModel.ENUM_COLORS = {}));
72
- let ENUM_LINK_TYPES;
73
- (function (ENUM_LINK_TYPES) {
74
- ENUM_LINK_TYPES["SIMPLE"] = "simple";
75
- ENUM_LINK_TYPES["PIPE_ANIMATION"] = "pipe animation";
76
- ENUM_LINK_TYPES["PIPE"] = "pipe";
77
- ENUM_LINK_TYPES["PIPE_HIDDEN"] = "pipe hidden";
78
- })(ENUM_LINK_TYPES = AtoGojsEditorModel.ENUM_LINK_TYPES || (AtoGojsEditorModel.ENUM_LINK_TYPES = {}));
79
- // Components types
80
- let ENUM_TEMPLATES;
81
- (function (ENUM_TEMPLATES) {
82
- ENUM_TEMPLATES["STORAGE"] = "Storage";
83
- ENUM_TEMPLATES["COOLING_TOWER"] = "Cooling Tower";
84
- ENUM_TEMPLATES["WATER_TREATMENT"] = "Water Treatment";
85
- ENUM_TEMPLATES["DEMIN_WATER_TREATMENT"] = "Demin Water Treatment";
86
- ENUM_TEMPLATES["RO_WATER_TREATMENT"] = "RO Water Treatment";
87
- ENUM_TEMPLATES["DOMESTIC_USE"] = "Domestic Use";
88
- ENUM_TEMPLATES["PROCESS"] = "Process";
89
- ENUM_TEMPLATES["BOILER"] = "Boiler";
90
- ENUM_TEMPLATES["WASTEWATER_TREATMENT"] = "Wastewater Treatment";
91
- ENUM_TEMPLATES["DAF_WASTEWATER_TREATMENT"] = "DAF Wastewater Treatment";
92
- ENUM_TEMPLATES["ETP_WASTEWATER_TREATMENT"] = "ETP Wastewater Treatment";
93
- ENUM_TEMPLATES["MBR_WASTEWATER_TREATMENT"] = "MBR Wastewater Treatment";
94
- ENUM_TEMPLATES["ZLD_WASTEWATER_TREATMENT"] = "ZLD Wastewater Treatment";
95
- ENUM_TEMPLATES["OTHER"] = "Other";
96
- ENUM_TEMPLATES["LANDSCAPING_IRRIGATION"] = "Landscaping/Irrigation";
97
- ENUM_TEMPLATES["TEXT_NODE"] = "TextNode";
98
- ENUM_TEMPLATES["VALUE_NODE"] = "ValueNode";
99
- ENUM_TEMPLATES["DATA_BOX"] = "DataBox";
100
- ENUM_TEMPLATES["VALUE_LABEL"] = "ValueLabel";
101
- ENUM_TEMPLATES["EMPTY"] = "Empty";
102
- ENUM_TEMPLATES["SPECIAL_PROCESS"] = "SPECIAL_PROCESS";
103
- ENUM_TEMPLATES["SPECIAL_STORE"] = "SPECIAL_STORE";
104
- ENUM_TEMPLATES["SPECIAL_STORAGE"] = "STORAGE";
105
- ENUM_TEMPLATES["SPECIAL_DISCHARGE"] = "SPECIAL_DISCHARGE";
106
- ENUM_TEMPLATES["SPECIAL_OTHER"] = "SPECIAL_OTHER";
107
- // TANKER = 'Tanker',
108
- // RAIN_WATER = 'Rainwater',
109
- ENUM_TEMPLATES["FRESH_SURFACE_WATER"] = "Fresh surface water";
110
- ENUM_TEMPLATES["THIRD_PARTY_SOURCES"] = "Third party sources";
111
- ENUM_TEMPLATES["THIRD_PARTY_DESTINATIONS"] = "Third party destinations";
112
- ENUM_TEMPLATES["GROUND_WATER_NON_RENEWABLE"] = "Groundwater - non-renewable";
113
- ENUM_TEMPLATES["PRODUCED_ENTRAINED"] = "Produced / entrained water";
114
- ENUM_TEMPLATES["BRACKISH_SURFACE_WATER"] = "Brackish surface water/ seawater";
115
- ENUM_TEMPLATES["UTILITY"] = "UTILITY";
116
- ENUM_TEMPLATES["GROUND_WATER_RENEWABLE"] = "Groundwater - Renewable";
117
- // Energy
118
- ENUM_TEMPLATES["ZONE"] = "EnergyZones";
119
- ENUM_TEMPLATES["ZONE_ENERGY_ITEM"] = "SubSystem";
120
- //Electric
121
- ENUM_TEMPLATES["GRID"] = "Grid";
122
- ENUM_TEMPLATES["DIESEL_GENERATORS"] = "Diesel Generators";
123
- ENUM_TEMPLATES["ELECTRIC_METERS"] = "Electric Meters";
124
- ENUM_TEMPLATES["BATTERY_ENERGY_STORAGE"] = "Battery energy storage";
125
- ENUM_TEMPLATES["TRANSFORMERS"] = "Transformers";
126
- ENUM_TEMPLATES["LIGHTING_SYSTEMS"] = "Lighting systems";
127
- ENUM_TEMPLATES["LIGHTINGS"] = "Lightings";
128
- ENUM_TEMPLATES["ELECTRIC_FLYWHEEL_ENERGY_STORAGE"] = "Flywheel energy storage";
129
- ENUM_TEMPLATES["PUMPED_HYDRO_STORAGE"] = "Pumped hydro storage";
130
- ENUM_TEMPLATES["THERMAL_ENERGY_STORAGE"] = "Thermal energy storage";
131
- ENUM_TEMPLATES["SUPER_CAPACITOR_ENERGY_STORAGE"] = "Supercapacitor energy storage";
132
- ENUM_TEMPLATES["SWITCH_GEARS"] = "Switchgears";
133
- ENUM_TEMPLATES["MOTOR_CONTROLS"] = "MotorControls";
134
- ENUM_TEMPLATES["VARIABLE_FREQUENCY_DRIVERS"] = "VariableFrequencyDrives";
135
- ENUM_TEMPLATES["ELECTRIC_HVAC"] = "Heating, ventilation, and air conditioning (HVAC) systems";
136
- ENUM_TEMPLATES["COMPRESSED_AIR_SYSTEMS"] = "Compressed air";
137
- ENUM_TEMPLATES["REFRIGERATION_COOLING_SYSTEMS"] = "Refrigeration and cooling";
138
- ENUM_TEMPLATES["PROCESS_CONTROL_AUTOMATION_SYSTEMS"] = "Process control and automation";
139
- ENUM_TEMPLATES["OFFICE_EQUIPMENT"] = "Office equipment";
140
- ENUM_TEMPLATES["PROCESS_EQUIPMENT_MACHINES"] = "Process equipment and machines";
141
- ENUM_TEMPLATES["MATERIAL_HANDLING_EQUIPMENT"] = "Material handling equipment";
142
- ENUM_TEMPLATES["POWER_DISTRIBUTION_CONTROL_SYSTEMS"] = "Power distribution and control";
143
- ENUM_TEMPLATES["PUMP"] = "Pump";
144
- ENUM_TEMPLATES["POWER_DISTRIBUTION_SYSTEMS"] = "Power distribution systems";
145
- ENUM_TEMPLATES["WIND_POWER"] = "Wind Power";
146
- ENUM_TEMPLATES["NATURAL_GAS_GENERATORS"] = "Natural gas generators";
147
- ENUM_TEMPLATES["ELECTRIC_INDUSTRIAL_MOTORS"] = "Industrial motors";
148
- ENUM_TEMPLATES["GROUNDING"] = "Grounding";
149
- // Fuel
150
- ENUM_TEMPLATES["FUELS"] = "Fuels";
151
- ENUM_TEMPLATES["DIESEL_FUELS"] = "DieselFuels";
152
- ENUM_TEMPLATES["GASON_LINES"] = "Gasonlines";
153
- ENUM_TEMPLATES["BIODIESELS"] = "Biodiesels";
154
- ENUM_TEMPLATES["KEROSENSE"] = "Kerosenes";
155
- ENUM_TEMPLATES["PROPANES"] = "Propanes";
156
- ENUM_TEMPLATES["TANKER_TRUCKS"] = "Tanker Trucks";
157
- ENUM_TEMPLATES["PIPELINE"] = "Pipeline";
158
- ENUM_TEMPLATES["INDUSTRIAL_BOILERS"] = "Industrial boilers";
159
- ENUM_TEMPLATES["GENERATORS"] = "Generators";
160
- ENUM_TEMPLATES["INDUSTRIAL_FURNACES"] = "Industrial furnaces";
161
- ENUM_TEMPLATES["INDUSTRIAL_OVENS"] = "Industrial ovens";
162
- ENUM_TEMPLATES["INDUSTRIAL_VEHICLES_AND_EQUIPMENT"] = "Industrial vehicles and equipment";
163
- ENUM_TEMPLATES["FUEL_METERS"] = "FuelMeters";
164
- ENUM_TEMPLATES["FUEL_DISPENSERS"] = "FuelDispensers";
165
- ENUM_TEMPLATES["FUEL_STRORAGE_TANKS"] = "FuelStorageTanks";
166
- ENUM_TEMPLATES["FUEL_FILTRATIONS"] = "FuelFiltrations";
167
- ENUM_TEMPLATES["FUEL_MANAGEMENTS"] = "FuelManagements";
168
- // Gas
169
- ENUM_TEMPLATES["NATURAL_GAS_PIPELINES"] = "Natural gas pipelines";
170
- ENUM_TEMPLATES["LIQUEFIED_NATURAL_GAS"] = "Liquefied natural gas";
171
- ENUM_TEMPLATES["COMPRESSED_NATURAL_GAS_PIPELINE"] = "Compressed natural gas pipeline";
172
- ENUM_TEMPLATES["ON_SITE_PRODUCTION"] = "On-site production";
173
- ENUM_TEMPLATES["COMPRESSED_NATURAL_GAS_PRODUCTION"] = "Compressed natural gas production";
174
- ENUM_TEMPLATES["BOILERS_AND_HEATERS"] = "Boilers and heaters";
175
- ENUM_TEMPLATES["FURNACES"] = "Furnaces";
176
- ENUM_TEMPLATES["POWER_GENERATION"] = "Power generation";
177
- ENUM_TEMPLATES["COGENERATION"] = "Cogeneration";
178
- ENUM_TEMPLATES["COMBINED_CYCLE_POWER_PLANTS"] = "Combined cycle power plants";
179
- ENUM_TEMPLATES["FUEL_FOR_VEHICLES_AND_EQUIPMENT"] = "Fuel for vehicles and equipment";
180
- ENUM_TEMPLATES["GAS_METERS"] = "Gas meters";
181
- ENUM_TEMPLATES["BURNERS"] = "Burners";
182
- ENUM_TEMPLATES["FLUE_GAS_ANALYZERS"] = "Flue gas analyzers";
183
- ENUM_TEMPLATES["COMBUSTION_CONTROL_SYSTEMS"] = "Combustion control systems";
184
- ENUM_TEMPLATES["GAS_STORAGE_TANKS"] = "Gas storage tanks";
185
- ENUM_TEMPLATES["GAS_PRESSURE_REGULATORS"] = "Gas pressure regulators";
186
- ENUM_TEMPLATES["NATURAL_GAS"] = "Natural Gas";
187
- // Solar
188
- ENUM_TEMPLATES["SOLAR_POWER"] = "Solar Power";
189
- ENUM_TEMPLATES["POWER_CONDITIONING_UNIT"] = "Power conditioning unit (PCU)";
190
- ENUM_TEMPLATES["INVERTERS"] = "Inverters";
191
- ENUM_TEMPLATES["BATTERIES"] = "Batteries";
192
- // Uncategorized of Proxy Plant
193
- ENUM_TEMPLATES["UNCATEGORIZED"] = "Uncategorized";
194
- // Plant Cell
195
- ENUM_TEMPLATES["PLANT_CELL"] = "Plant Cell";
196
- ENUM_TEMPLATES["INPUT_PLANT_CELL"] = "Input Plant Cell";
197
- ENUM_TEMPLATES["OUTPUT_PLANT_CELL"] = "Output Plant Cell";
198
- ENUM_TEMPLATES["PLANT_CELL_INPUT_GROUP"] = "PC Input Group";
199
- ENUM_TEMPLATES["PLANT_CELL_OUTPUT_GROUP"] = "PC Output Group";
200
- // Image
201
- ENUM_TEMPLATES["IMAGE_TEMPLATE"] = "Image Template";
202
- ENUM_TEMPLATES["PARAM_TABLE"] = "Param Table";
203
- ENUM_TEMPLATES["MASS_BALANCE"] = "Mass Balance";
204
- // Steam Type
205
- ENUM_TEMPLATES["STEAM_PIPELINE"] = "Steam pipeline";
206
- ENUM_TEMPLATES["VALUES"] = "Valves";
207
- ENUM_TEMPLATES["STEAM_TRAPS"] = "Steam Traps";
208
- ENUM_TEMPLATES["PRESSURE_REGULATORS"] = "Pressure Regulator";
209
- ENUM_TEMPLATES["SAFETY_VALUES_AND_EQUIPMENT"] = "Safety Valves and Equipment";
210
- ENUM_TEMPLATES["CONDENSATE_RETURN_SYSTEM"] = "Condensate Return System";
211
- ENUM_TEMPLATES["DEAERATORS"] = "Deaerators";
212
- ENUM_TEMPLATES["FEEDWATER_PUMPS"] = "Feedwater Pumps";
213
- ENUM_TEMPLATES["BLOWDOWN_TANKS"] = "Blowdown Tanks";
214
- ENUM_TEMPLATES["EXPANSION_TANKS"] = "Expansion Tanks";
215
- ENUM_TEMPLATES["HEAT_EXCHANGERS"] = "Heat Exchangers";
216
- ENUM_TEMPLATES["TURBINES"] = "Turbines";
217
- // Plant Basic
218
- ENUM_TEMPLATES["GROUP_BASIC_COMPONENT"] = "Group Basic Component";
219
- ENUM_TEMPLATES["TEXT_LABEL"] = "label";
220
- // Type Group duplicate Energy with Water
221
- ENUM_TEMPLATES["BOILER_ENERGY"] = "Boiler Energy";
222
- ENUM_TEMPLATES["COOLING_TOWER_ENERGY"] = "Cooling Tower Energy";
223
- })(ENUM_TEMPLATES = AtoGojsEditorModel.ENUM_TEMPLATES || (AtoGojsEditorModel.ENUM_TEMPLATES = {}));
224
- // System Types
225
- let ENUM_TYPES;
226
- (function (ENUM_TYPES) {
227
- ENUM_TYPES["STORAGE"] = "WaterStorageTanks";
228
- ENUM_TYPES["WATER_TREATMENT"] = "WaterTreatmentProcesses";
229
- ENUM_TYPES["DEMIN_WATER_TREATMENT"] = "DeminWaterTreatments";
230
- ENUM_TYPES["RO_WATER_TREATMENT"] = "ROWaterTreatments";
231
- ENUM_TYPES["PROCESS"] = "GenericProcesses";
232
- ENUM_TYPES["SPECIAL_STORAGE"] = "STORAGE";
233
- ENUM_TYPES["WASTEWATER_TREATMENT"] = "WasteWaterTreatmentProcesses";
234
- ENUM_TYPES["DAF_WASTEWATER_TREATMENT"] = "DAFWasteWaterTreatments";
235
- ENUM_TYPES["ETP_WASTEWATER_TREATMENT"] = "ETPWasteWaterTreatments";
236
- ENUM_TYPES["MBR_WASTEWATER_TREATMENT"] = "MBRWasteWaterTreatments";
237
- ENUM_TYPES["ZLD_WASTEWATER_TREATMENT"] = "ZLDWasteWaterTreatments";
238
- ENUM_TYPES["DOMESTIC_USE"] = "DomesticUse";
239
- ENUM_TYPES["COOLING_TOWER"] = "CoolingTowers";
240
- ENUM_TYPES["BOILER"] = "Boilers";
241
- ENUM_TYPES["OTHER"] = "OtherWaterUse";
242
- ENUM_TYPES["LANDSCAPING_IRRIGATION"] = "IrrigationUse";
243
- ENUM_TYPES["FRESH_SURFACE_WATER"] = "Fresh surface water";
244
- ENUM_TYPES["THIRD_PARTY_SOURCES"] = "Third party sources";
245
- ENUM_TYPES["THIRD_PARTY_DESTINATIONS"] = "Third party destinations";
246
- ENUM_TYPES["GROUND_WATER_NON_RENEWABLE"] = "Groundwater - non-renewable";
247
- ENUM_TYPES["PRODUCED_ENTRAINED"] = "Produced / entrained water";
248
- // FRESH_SURFACE_WAER = 'Fresh surface water',
249
- ENUM_TYPES["BRACKISH_SURFACE_WATER"] = "Brackish surface water/ seawater";
250
- ENUM_TYPES["GROUND_WATER_RENEWABLE"] = "Groundwater - Renewable";
251
- ENUM_TYPES["TANKER_WATER"] = "Tanker Water";
252
- // ENERGY
253
- ENUM_TYPES["ZONE"] = "EnergyZones";
254
- // Electric
255
- ENUM_TYPES["ELECTRIC_SOURCES"] = "ElectricSources";
256
- ENUM_TYPES["GRID"] = "Grid Power";
257
- ENUM_TYPES["DIESEL_GENERATORS"] = "Diesel Generators";
258
- ENUM_TYPES["ELECTRIC_METERS"] = "ElectricMeters";
259
- ENUM_TYPES["TRANSFORMERS"] = "Transformers";
260
- // Electric New
261
- ENUM_TYPES["BATTERY_ENERGY_STORAGE"] = "Battery energy storage";
262
- ENUM_TYPES["ELECTRIC_PRODUCTIONS"] = "ElectricProductions";
263
- ENUM_TYPES["ELECTRIC_COMSUMINGS"] = "ElectricConsumings";
264
- ENUM_TYPES["ELECTRIC_STORAGES"] = "ElectricityStorages";
265
- ENUM_TYPES["ELECTRIC_FLYWHEEL_ENERGY_STORAGE"] = "Flywheel energy storage";
266
- ENUM_TYPES["PUMPED_HYDRO_STORAGE"] = "Pumped hydro storage";
267
- ENUM_TYPES["THERMAL_ENERGY_STORAGE"] = "Thermal energy storage";
268
- ENUM_TYPES["SUPER_CAPACITOR_ENERGY_STORAGE"] = "Supercapacitor energy storage";
269
- ENUM_TYPES["SWITCH_GEARS"] = "Switchgears";
270
- ENUM_TYPES["MOTOR_CONTROLS"] = "MotorControls";
271
- ENUM_TYPES["VARIABLE_FREQUENCY_DRIVERS"] = "VariableFrequencyDrives";
272
- ENUM_TYPES["LIGHTING_SYSTEMS"] = "Lighting systems";
273
- ENUM_TYPES["LIGHTINGS"] = "Lightings";
274
- ENUM_TYPES["ELECTRIC_HVAC"] = "Heating, ventilation, and air conditioning (HVAC) systems";
275
- ENUM_TYPES["COMPRESSED_AIR_SYSTEMS"] = "Compressed air";
276
- ENUM_TYPES["REFRIGERATION_COOLING_SYSTEMS"] = "Refrigeration and cooling";
277
- ENUM_TYPES["PROCESS_CONTROL_AUTOMATION_SYSTEMS"] = "Process control and automation";
278
- ENUM_TYPES["PROCESS_EQUIPMENT_MACHINES"] = "Process equipment and machines";
279
- ENUM_TYPES["OFFICE_EQUIPMENT"] = "Office equipment";
280
- ENUM_TYPES["MATERIAL_HANDLING_EQUIPMENT"] = "Material handling equipment";
281
- ENUM_TYPES["POWER_DISTRIBUTION_CONTROL_SYSTEMS"] = "Power distribution and control";
282
- ENUM_TYPES["PUMP"] = "Pump";
283
- ENUM_TYPES["POWER_DISTRIBUTION_SYSTEMS"] = "PowerDistributions";
284
- ENUM_TYPES["WIND_POWER"] = "Wind Power";
285
- ENUM_TYPES["NATURAL_GAS_GENERATORS"] = "Natural gas generators";
286
- ENUM_TYPES["ELECTRIC_INDUSTRIAL_MOTORS"] = "Industrial motors";
287
- ENUM_TYPES["GROUNDING"] = "Groundings";
288
- ENUM_TYPES["Electricals"] = "Electricals";
289
- // Gas
290
- ENUM_TYPES["NATURAL_GAS_PIPELINES"] = "Natural gas pipelines";
291
- ENUM_TYPES["LIQUEFIED_NATURAL_GAS"] = "Liquefied natural gas (LNG) shipments";
292
- ENUM_TYPES["COMPRESSED_NATURAL_GAS_PIPELINE"] = "Compressed natural gas pipeline (CNG)";
293
- ENUM_TYPES["ON_SITE_PRODUCTION"] = "On-site production";
294
- ENUM_TYPES["COMPRESSED_NATURAL_GAS_PRODUCTION"] = "Compressed natural gas production (CNG)";
295
- ENUM_TYPES["BOILERS_AND_HEATERS"] = "Boilers and heaters";
296
- ENUM_TYPES["FURNACES"] = "Furnaces";
297
- ENUM_TYPES["POWER_GENERATION"] = "Power generation";
298
- ENUM_TYPES["COGENERATION"] = "Cogeneration";
299
- ENUM_TYPES["COMBINED_CYCLE_POWER_PLANTS"] = "Combined cycle power plants";
300
- ENUM_TYPES["FUEL_FOR_VEHICLES_AND_EQUIPMENT"] = "Fuel for vehicles and equipment";
301
- ENUM_TYPES["GAS_METERS"] = "GasMeters";
302
- ENUM_TYPES["BURNERS"] = "Burners";
303
- ENUM_TYPES["FLUE_GAS_ANALYZERS"] = "FlueGasAnalyzers";
304
- ENUM_TYPES["COMBUSTION_CONTROL_SYSTEMS"] = "ConbustionControls";
305
- ENUM_TYPES["GAS_STORAGE_TANKS"] = "GasStorageTanks";
306
- ENUM_TYPES["GAS_PRESSURE_REGULATORS"] = "GasPressureRegulators";
307
- ENUM_TYPES["NATURAL_GAS"] = "Natural Gas";
308
- // TYPE_COMPONENT Gas
309
- ENUM_TYPES["GAS_SOURCE"] = "GasSources";
310
- ENUM_TYPES["GAS_PRODUCTION"] = "GasProductions";
311
- ENUM_TYPES["GAS_CONSUMINGS"] = "GasConsumings";
312
- ENUM_TYPES["NATURAL_GAS_SPECIAL"] = "NaturalGases";
313
- // Fuel
314
- ENUM_TYPES["FUELS"] = "Fuels";
315
- ENUM_TYPES["DIESEL_FUELS"] = "DieselFuels";
316
- ENUM_TYPES["GASON_LINES"] = "Gasonlines";
317
- ENUM_TYPES["BIODIESELS"] = "Biodiesels";
318
- ENUM_TYPES["KEROSENSE"] = "Kerosenes";
319
- ENUM_TYPES["PROPANES"] = "Propanes";
320
- ENUM_TYPES["FUEL_SOURCES"] = "FuelSources";
321
- ENUM_TYPES["TANKER_TRUCKS"] = "Tanker Trucks";
322
- ENUM_TYPES["PIPELINE"] = "Pipeline";
323
- ENUM_TYPES["FUEL_CONSUMINGS"] = "FuelConsumings";
324
- ENUM_TYPES["INDUSTRIAL_BOILERS"] = "Industrial boilers";
325
- ENUM_TYPES["GENERATORS"] = "Generators";
326
- ENUM_TYPES["INDUSTRIAL_FURNACES"] = "Industrial furnaces";
327
- ENUM_TYPES["INDUSTRIAL_OVENS"] = "Industrial ovens";
328
- ENUM_TYPES["INDUSTRIAL_VEHICLES_AND_EQUIPMENT"] = "Industrial vehicles and equipment";
329
- ENUM_TYPES["FUEL_METERS"] = "FuelMeters";
330
- ENUM_TYPES["FUEL_DISPENSERS"] = "FuelDispensers";
331
- ENUM_TYPES["FUEL_STRORAGE_TANKS"] = "FuelStorageTanks";
332
- ENUM_TYPES["FUEL_FILTRATIONS"] = "FuelFiltrations";
333
- ENUM_TYPES["FUEL_MANAGEMENTS"] = "FuelManagements";
334
- // Solar
335
- ENUM_TYPES["SOLAR_POWER"] = "Solar Power";
336
- ENUM_TYPES["POWER_CONDITIONING_UNIT"] = "Power conditioning unit (PCU)";
337
- ENUM_TYPES["INVERTERS"] = "Inverters";
338
- ENUM_TYPES["BATTERIES"] = "Batteries";
339
- // Plant Cell
340
- ENUM_TYPES["PLANT_CELL"] = "PlantCells";
341
- ENUM_TYPES["PLANT_CELL_INPUT_GROUP"] = "PC Input Group";
342
- ENUM_TYPES["PLANT_CELL_OUTPUT_GROUP"] = "PC Output Group";
343
- // Steam
344
- ENUM_TYPES["STEAM_SOURCES"] = "SteamSources";
345
- ENUM_TYPES["STEAM_PIPELINE"] = "Steam pipeline";
346
- ENUM_TYPES["VALUES"] = "Valves";
347
- ENUM_TYPES["STEAM_TRAPS"] = "Steam Traps";
348
- ENUM_TYPES["PRESSURE_REGULATORS"] = "Pressure Regulator";
349
- ENUM_TYPES["SAFETY_VALUES_AND_EQUIPMENT"] = "Safety Valves and Equipment";
350
- ENUM_TYPES["CONDENSATE_RETURN_SYSTEM"] = "Condensate Return System";
351
- ENUM_TYPES["DEAERATORS"] = "Deaerators";
352
- ENUM_TYPES["FEEDWATER_PUMPS"] = "Feedwater Pumps";
353
- ENUM_TYPES["BLOWDOWN_TANKS"] = "Blowdown Tanks";
354
- ENUM_TYPES["EXPANSION_TANKS"] = "Expansion Tanks";
355
- ENUM_TYPES["HEAT_EXCHANGERS"] = "SteamConsumings";
356
- ENUM_TYPES["TURBINES"] = "EnergyConverters";
357
- ENUM_TYPES["STEAM_COMPONENT"] = "SteamComponents";
358
- ENUM_TYPES["STEAM_CONSUMING_SYSTEM"] = "SteamConsumings";
359
- ENUM_TYPES["ENERGY_CONVERTER"] = "EnergyConverters";
360
- // System Type Group duplicate Energy with Water
361
- ENUM_TYPES["BOILER_ENERGY"] = "Boiler Energy";
362
- ENUM_TYPES["COOLING_TOWER_ENERGY"] = "CoolingTowers Energy";
363
- })(ENUM_TYPES = AtoGojsEditorModel.ENUM_TYPES || (AtoGojsEditorModel.ENUM_TYPES = {}));
364
- let ENUM_CATEGORY;
365
- (function (ENUM_CATEGORY) {
366
- })(ENUM_CATEGORY = AtoGojsEditorModel.ENUM_CATEGORY || (AtoGojsEditorModel.ENUM_CATEGORY = {}));
367
- let DATA_COLLECTION_METHOD;
368
- (function (DATA_COLLECTION_METHOD) {
369
- DATA_COLLECTION_METHOD["MEASURED"] = "Measured";
370
- DATA_COLLECTION_METHOD["MANUAL"] = "Manual";
371
- DATA_COLLECTION_METHOD["COMPUTED"] = "Computed";
372
- DATA_COLLECTION_METHOD["ESTIMATED"] = "Estimated";
373
- DATA_COLLECTION_METHOD["WATER_CAPACITY"] = "Water Capacity";
374
- DATA_COLLECTION_METHOD["KEY_MODEL_COMPUTED"] = "M";
375
- })(DATA_COLLECTION_METHOD = AtoGojsEditorModel.DATA_COLLECTION_METHOD || (AtoGojsEditorModel.DATA_COLLECTION_METHOD = {}));
376
- AtoGojsEditorModel.COLOR_COLLECTION_METHOD = {
377
- [DATA_COLLECTION_METHOD.MEASURED]: {
378
- name: DATA_COLLECTION_METHOD.MEASURED,
379
- color: ENUM_COLORS.RED,
380
- classNameColor: 'color-burnt-sienna',
381
- },
382
- [DATA_COLLECTION_METHOD.MANUAL]: {
383
- name: DATA_COLLECTION_METHOD.MANUAL,
384
- color: ENUM_COLORS.ELF_GREEN,
385
- classNameColor: 'color-elf-green',
386
- },
387
- [DATA_COLLECTION_METHOD.COMPUTED]: {
388
- name: DATA_COLLECTION_METHOD.COMPUTED,
389
- color: ENUM_COLORS.CERULEAN,
390
- classNameColor: 'color-cerulean',
391
- },
392
- [DATA_COLLECTION_METHOD.ESTIMATED]: {
393
- name: DATA_COLLECTION_METHOD.ESTIMATED,
394
- color: ENUM_COLORS.MEDIUM_RED_VIOLET,
395
- classNameColor: 'color-medium-red-violet',
396
- },
397
- [DATA_COLLECTION_METHOD.WATER_CAPACITY]: {
398
- name: DATA_COLLECTION_METHOD.WATER_CAPACITY,
399
- color: ENUM_COLORS.VIVID_VIOLET,
400
- classNameColor: 'color-vivid-violet',
401
- },
402
- [DATA_COLLECTION_METHOD.KEY_MODEL_COMPUTED]: {
403
- name: DATA_COLLECTION_METHOD.KEY_MODEL_COMPUTED,
404
- color: ENUM_COLORS.GRAY,
405
- classNameColor: 'color-bali-hai',
406
- },
407
- };
408
- // export enum WITH_DRAW_TYPES {
409
- // TANKER = 'Tanker',
410
- // RAIN_WATER = 'Rainwater',
411
- // }
412
- let WITH_DRAW_SYSTEM_TYPES;
413
- (function (WITH_DRAW_SYSTEM_TYPES) {
414
- WITH_DRAW_SYSTEM_TYPES["WATER_SOURCE"] = "WaterSource";
415
- })(WITH_DRAW_SYSTEM_TYPES = AtoGojsEditorModel.WITH_DRAW_SYSTEM_TYPES || (AtoGojsEditorModel.WITH_DRAW_SYSTEM_TYPES = {}));
416
- // export enum DISCHARGE_TYPES {
417
- // GROUND_WATER_RENEWABLE = 'Ground Water Renewable',
418
- // }
419
- let DISCHARGE_TYPES_SYSTEM_TYPES;
420
- (function (DISCHARGE_TYPES_SYSTEM_TYPES) {
421
- DISCHARGE_TYPES_SYSTEM_TYPES["GROUND_WATER_RANEWABLE"] = "GroundWaterRenewable";
422
- })(DISCHARGE_TYPES_SYSTEM_TYPES = AtoGojsEditorModel.DISCHARGE_TYPES_SYSTEM_TYPES || (AtoGojsEditorModel.DISCHARGE_TYPES_SYSTEM_TYPES = {}));
423
- AtoGojsEditorModel.WaterWithdrawSources = 'WaterWithdrawSources';
424
- AtoGojsEditorModel.WaterWithdrawSourcesPath = 'GetFlowTopology.Plant.WaterWithdrawSources.ComponentWaterFlow.InFlows.InflowWaterRecord.QuantityParams';
425
- AtoGojsEditorModel.WaterDischargeDestinations = 'WaterDischargeDestinations';
426
- AtoGojsEditorModel.WaterDischargeDestinationsPath = 'GetFlowTopology.Plant.WaterDischargeDestinations.ComponentWaterFlow.InFlows.InflowWaterRecord.QuantityParams';
427
- AtoGojsEditorModel.SOURCES_COMPONENTS = [
428
- AtoGojsEditorModel.WaterWithdrawSources,
429
- AtoGojsEditorModel.WaterDischargeDestinations,
430
- ENUM_TYPES.ELECTRIC_SOURCES,
431
- ENUM_TYPES.ELECTRIC_PRODUCTIONS,
432
- ENUM_TYPES.GAS_SOURCE,
433
- ENUM_TYPES.GAS_PRODUCTION,
434
- ENUM_TYPES.FUEL_SOURCES,
435
- // ENUM_TYPES.FUEL_STORAGE_TANKS,
436
- ];
437
- AtoGojsEditorModel.SOURCES_WITHDRAW = [
438
- AtoGojsEditorModel.WaterWithdrawSources,
439
- ENUM_TYPES.ELECTRIC_SOURCES,
440
- ENUM_TYPES.ELECTRIC_PRODUCTIONS,
441
- ENUM_TYPES.GAS_SOURCE,
442
- ENUM_TYPES.GAS_PRODUCTION,
443
- ENUM_TYPES.FUEL_SOURCES,
444
- // ENUM_TYPES.FUEL_STORAGE_TANKS,
445
- ];
446
- AtoGojsEditorModel.SOURCES_DISCHARGE = [
447
- AtoGojsEditorModel.WaterDischargeDestinations,
448
- // ENUM_TYPES.ELECTRIC_SOURCES,
449
- // ENUM_TYPES.ELECTRIC_PRODUCTIONS,
450
- // ENUM_TYPES.GAS_SOURCE,
451
- // ENUM_TYPES.GAS_PRODUCTION,
452
- // ENUM_TYPES.FUEL_SOURCES,
453
- ];
454
- AtoGojsEditorModel.COMPONENTS_HAVE_SPECIAL_CATEGORY = [
455
- // Water
456
- AtoGojsEditorModel.WaterWithdrawSources,
457
- AtoGojsEditorModel.WaterDischargeDestinations,
458
- // ENUM_TYPES.FRESH_SURFACE_WAER,
459
- // ENUM_TYPES.THIRD_PARTY_SOURCES,
460
- // ENUM_TYPES.GROUND_WATER_NON_RENEWABLE,
461
- // ENUM_TYPES.PRODUCED_ENTRAINED,
462
- // ENUM_TYPES.BRACKISH_SURFACE_WATER,
463
- // ENUM_TYPES.GROUND_WATER_RENEWABLE,
464
- // Energy
465
- ENUM_TYPES.ZONE,
466
- // Electric===================
467
- ENUM_TYPES.GRID,
468
- ENUM_TYPES.ELECTRIC_PRODUCTIONS,
469
- ENUM_TYPES.DIESEL_GENERATORS,
470
- ENUM_TYPES.NATURAL_GAS_GENERATORS,
471
- ENUM_TYPES.SOLAR_POWER,
472
- ENUM_TYPES.ELECTRIC_SOURCES,
473
- ENUM_TYPES.Electricals,
474
- // ENUM_TYPES.ELECTRIC_COMSUMINGS,
475
- // ENUM_TYPES.ELECTRIC_STORAGES,
476
- // ENUM_TYPES.PROCESS_CONTROL_AUTOMATION_SYSTEMS,
477
- // ENUM_TYPES.POWER_DISTRIBUTION_CONTROL_SYSTEMS,
478
- // Gas========================
479
- // ENUM_TYPES.NATURAL_GAS_PIPELINES,
480
- ENUM_TYPES.GAS_SOURCE,
481
- ENUM_TYPES.GAS_PRODUCTION,
482
- ENUM_TYPES.LIQUEFIED_NATURAL_GAS,
483
- ENUM_TYPES.ON_SITE_PRODUCTION,
484
- ENUM_TYPES.NATURAL_GAS_PIPELINES,
485
- ENUM_TYPES.LIQUEFIED_NATURAL_GAS,
486
- ENUM_TYPES.COMPRESSED_NATURAL_GAS_PRODUCTION,
487
- // ENUM_TYPES.COMPRESSED_NATURAL_GAS_PIPELINE,
488
- // ENUM_TYPES.COMPRESSED_NATURAL_GAS_PRODUCTION,
489
- // ENUM_TYPES.FURNACES,
490
- // ENUM_TYPES.POWER_GENERATION,
491
- // ENUM_TYPES.COGENERATION,
492
- // ENUM_TYPES.COMBINED_CYCLE_POWER_PLANTS,
493
- // ENUM_TYPES.FUEL_FOR_VEHICLES_AND_EQUIPMENT,
494
- ENUM_TYPES.NATURAL_GAS_SPECIAL,
495
- //Fuel========================
496
- ENUM_TYPES.FUEL_SOURCES,
497
- ENUM_TYPES.TANKER_TRUCKS,
498
- ENUM_TYPES.PIPELINE,
499
- ENUM_TYPES.FUELS,
500
- ];
501
- AtoGojsEditorModel.WITH_DRAW_TYPE_LIST = [
502
- ENUM_TYPES.THIRD_PARTY_SOURCES,
503
- ENUM_TYPES.FRESH_SURFACE_WATER,
504
- ENUM_TYPES.BRACKISH_SURFACE_WATER,
505
- ENUM_TYPES.GROUND_WATER_RENEWABLE,
506
- ENUM_TYPES.GROUND_WATER_NON_RENEWABLE,
507
- ENUM_TYPES.PRODUCED_ENTRAINED,
508
- ];
509
- AtoGojsEditorModel.DISCHARGE_TYPE_LIST = [
510
- ENUM_TYPES.FRESH_SURFACE_WATER,
511
- ENUM_TYPES.BRACKISH_SURFACE_WATER,
512
- ENUM_TYPES.GROUND_WATER_RENEWABLE,
513
- ENUM_TYPES.THIRD_PARTY_DESTINATIONS,
514
- ];
515
- AtoGojsEditorModel.WITH_DRAW_SYSTEM_TYPE_LIST = [
516
- WITH_DRAW_SYSTEM_TYPES.WATER_SOURCE,
517
- ];
518
- AtoGojsEditorModel.DISCHARGE_SYSTEM_TYPE_LIST = [
519
- DISCHARGE_TYPES_SYSTEM_TYPES.GROUND_WATER_RANEWABLE,
520
- ];
521
- // system type
522
- AtoGojsEditorModel.TYPE_COMPONENT = [
523
- ENUM_TYPES.STORAGE,
524
- ENUM_TYPES.WATER_TREATMENT,
525
- ENUM_TYPES.DEMIN_WATER_TREATMENT,
526
- ENUM_TYPES.RO_WATER_TREATMENT,
527
- ENUM_TYPES.PROCESS,
528
- ENUM_TYPES.WASTEWATER_TREATMENT,
529
- ENUM_TYPES.DAF_WASTEWATER_TREATMENT,
530
- ENUM_TYPES.ETP_WASTEWATER_TREATMENT,
531
- ENUM_TYPES.MBR_WASTEWATER_TREATMENT,
532
- ENUM_TYPES.ZLD_WASTEWATER_TREATMENT,
533
- ENUM_TYPES.DOMESTIC_USE,
534
- ENUM_TYPES.COOLING_TOWER,
535
- ENUM_TYPES.BOILER,
536
- ENUM_TYPES.OTHER,
537
- ENUM_TYPES.LANDSCAPING_IRRIGATION,
538
- AtoGojsEditorModel.WaterWithdrawSources,
539
- AtoGojsEditorModel.WaterDischargeDestinations,
540
- // Energy
541
- ENUM_TYPES.ZONE,
542
- // Electricity==========================
543
- ENUM_TYPES.GRID,
544
- ENUM_TYPES.DIESEL_GENERATORS,
545
- ENUM_TYPES.BATTERY_ENERGY_STORAGE,
546
- ENUM_TYPES.LIGHTING_SYSTEMS,
547
- ENUM_TYPES.LIGHTINGS,
548
- ENUM_TYPES.ELECTRIC_METERS,
549
- ENUM_TYPES.TRANSFORMERS,
550
- ENUM_TYPES.ELECTRIC_FLYWHEEL_ENERGY_STORAGE,
551
- ENUM_TYPES.PUMPED_HYDRO_STORAGE,
552
- ENUM_TYPES.THERMAL_ENERGY_STORAGE,
553
- ENUM_TYPES.SUPER_CAPACITOR_ENERGY_STORAGE,
554
- ENUM_TYPES.SWITCH_GEARS,
555
- ENUM_TYPES.PROCESS_CONTROL_AUTOMATION_SYSTEMS,
556
- ENUM_TYPES.PROCESS_EQUIPMENT_MACHINES,
557
- ENUM_TYPES.OFFICE_EQUIPMENT,
558
- ENUM_TYPES.POWER_DISTRIBUTION_CONTROL_SYSTEMS,
559
- ENUM_TYPES.PUMP,
560
- ENUM_TYPES.POWER_DISTRIBUTION_SYSTEMS,
561
- ENUM_TYPES.NATURAL_GAS_GENERATORS,
562
- ENUM_TYPES.MOTOR_CONTROLS,
563
- ENUM_TYPES.VARIABLE_FREQUENCY_DRIVERS,
564
- ENUM_TYPES.ELECTRIC_HVAC,
565
- ENUM_TYPES.COMPRESSED_AIR_SYSTEMS,
566
- ENUM_TYPES.REFRIGERATION_COOLING_SYSTEMS,
567
- ENUM_TYPES.MATERIAL_HANDLING_EQUIPMENT,
568
- ENUM_TYPES.WIND_POWER,
569
- ENUM_TYPES.ELECTRIC_INDUSTRIAL_MOTORS,
570
- ENUM_TYPES.GROUNDING,
571
- ENUM_TYPES.ELECTRIC_STORAGES,
572
- ENUM_TYPES.ELECTRIC_COMSUMINGS,
573
- // TEST
574
- ENUM_TYPES.ELECTRIC_SOURCES,
575
- // Gas==========================
576
- ENUM_TYPES.NATURAL_GAS_PIPELINES,
577
- ENUM_TYPES.LIQUEFIED_NATURAL_GAS,
578
- ENUM_TYPES.COMPRESSED_NATURAL_GAS_PIPELINE,
579
- ENUM_TYPES.ON_SITE_PRODUCTION,
580
- ENUM_TYPES.COMPRESSED_NATURAL_GAS_PRODUCTION,
581
- ENUM_TYPES.BOILERS_AND_HEATERS,
582
- ENUM_TYPES.FURNACES,
583
- ENUM_TYPES.POWER_GENERATION,
584
- ENUM_TYPES.COGENERATION,
585
- ENUM_TYPES.COMBINED_CYCLE_POWER_PLANTS,
586
- ENUM_TYPES.FUEL_FOR_VEHICLES_AND_EQUIPMENT,
587
- ENUM_TYPES.GAS_METERS,
588
- ENUM_TYPES.BURNERS,
589
- ENUM_TYPES.FLUE_GAS_ANALYZERS,
590
- ENUM_TYPES.COMBUSTION_CONTROL_SYSTEMS,
591
- ENUM_TYPES.GAS_STORAGE_TANKS,
592
- ENUM_TYPES.GAS_PRESSURE_REGULATORS,
593
- ENUM_TYPES.NATURAL_GAS,
594
- ENUM_TYPES.GAS_SOURCE,
595
- // ENUM_TYPES.GAS_PRODUCTION,
596
- ENUM_TYPES.GAS_CONSUMINGS,
597
- // Fuel==========================
598
- ENUM_TYPES.DIESEL_FUELS,
599
- ENUM_TYPES.GASON_LINES,
600
- ENUM_TYPES.BIODIESELS,
601
- ENUM_TYPES.KEROSENSE,
602
- ENUM_TYPES.PROPANES,
603
- ENUM_TYPES.FUEL_CONSUMINGS,
604
- ENUM_TYPES.INDUSTRIAL_BOILERS,
605
- ENUM_TYPES.GENERATORS,
606
- ENUM_TYPES.INDUSTRIAL_FURNACES,
607
- ENUM_TYPES.INDUSTRIAL_OVENS,
608
- ENUM_TYPES.INDUSTRIAL_VEHICLES_AND_EQUIPMENT,
609
- ENUM_TYPES.FUEL_METERS,
610
- ENUM_TYPES.FUEL_DISPENSERS,
611
- ENUM_TYPES.FUEL_STRORAGE_TANKS,
612
- ENUM_TYPES.FUEL_FILTRATIONS,
613
- ENUM_TYPES.FUEL_MANAGEMENTS,
614
- ENUM_TYPES.FUELS,
615
- // Solar =============================
616
- ENUM_TYPES.SOLAR_POWER,
617
- ENUM_TYPES.BATTERIES,
618
- ENUM_TYPES.INVERTERS,
619
- ENUM_TYPES.POWER_CONDITIONING_UNIT,
620
- // Plant Cell
621
- ENUM_TYPES.PLANT_CELL,
622
- // Copy form ENUM_TYPES
623
- ENUM_TYPES.STORAGE,
624
- ENUM_TYPES.WATER_TREATMENT,
625
- ENUM_TYPES.DEMIN_WATER_TREATMENT,
626
- ENUM_TYPES.RO_WATER_TREATMENT,
627
- ENUM_TYPES.PROCESS,
628
- ENUM_TYPES.SPECIAL_STORAGE,
629
- ENUM_TYPES.WASTEWATER_TREATMENT,
630
- ENUM_TYPES.DAF_WASTEWATER_TREATMENT,
631
- ENUM_TYPES.ETP_WASTEWATER_TREATMENT,
632
- ENUM_TYPES.MBR_WASTEWATER_TREATMENT,
633
- ENUM_TYPES.ZLD_WASTEWATER_TREATMENT,
634
- ENUM_TYPES.DOMESTIC_USE,
635
- ENUM_TYPES.COOLING_TOWER,
636
- ENUM_TYPES.BOILER,
637
- ENUM_TYPES.OTHER,
638
- ENUM_TYPES.LANDSCAPING_IRRIGATION,
639
- ENUM_TYPES.FRESH_SURFACE_WATER,
640
- ENUM_TYPES.THIRD_PARTY_SOURCES,
641
- ENUM_TYPES.THIRD_PARTY_DESTINATIONS,
642
- ENUM_TYPES.GROUND_WATER_NON_RENEWABLE,
643
- ENUM_TYPES.PRODUCED_ENTRAINED,
644
- // FRESH_SURFACE_WAER = 'Fresh surface water',
645
- ENUM_TYPES.BRACKISH_SURFACE_WATER,
646
- ENUM_TYPES.GROUND_WATER_RENEWABLE,
647
- ENUM_TYPES.TANKER_WATER,
648
- // ENERGY
649
- ENUM_TYPES.ZONE,
650
- // Electric
651
- ENUM_TYPES.ELECTRIC_SOURCES,
652
- ENUM_TYPES.GRID,
653
- ENUM_TYPES.DIESEL_GENERATORS,
654
- ENUM_TYPES.ELECTRIC_METERS,
655
- ENUM_TYPES.TRANSFORMERS,
656
- // Electric New
657
- ENUM_TYPES.BATTERY_ENERGY_STORAGE,
658
- ENUM_TYPES.ELECTRIC_PRODUCTIONS,
659
- ENUM_TYPES.ELECTRIC_COMSUMINGS,
660
- ENUM_TYPES.ELECTRIC_STORAGES,
661
- ENUM_TYPES.ELECTRIC_FLYWHEEL_ENERGY_STORAGE,
662
- ENUM_TYPES.PUMPED_HYDRO_STORAGE,
663
- ENUM_TYPES.THERMAL_ENERGY_STORAGE,
664
- ENUM_TYPES.SUPER_CAPACITOR_ENERGY_STORAGE,
665
- ENUM_TYPES.SWITCH_GEARS,
666
- ENUM_TYPES.MOTOR_CONTROLS,
667
- ENUM_TYPES.VARIABLE_FREQUENCY_DRIVERS,
668
- ENUM_TYPES.LIGHTING_SYSTEMS,
669
- ENUM_TYPES.LIGHTINGS,
670
- ENUM_TYPES.ELECTRIC_HVAC,
671
- ENUM_TYPES.COMPRESSED_AIR_SYSTEMS,
672
- ENUM_TYPES.REFRIGERATION_COOLING_SYSTEMS,
673
- ENUM_TYPES.PROCESS_EQUIPMENT_MACHINES,
674
- ENUM_TYPES.PROCESS_CONTROL_AUTOMATION_SYSTEMS,
675
- ENUM_TYPES.OFFICE_EQUIPMENT,
676
- ENUM_TYPES.MATERIAL_HANDLING_EQUIPMENT,
677
- ENUM_TYPES.POWER_DISTRIBUTION_CONTROL_SYSTEMS,
678
- ENUM_TYPES.PUMP,
679
- ENUM_TYPES.POWER_DISTRIBUTION_SYSTEMS,
680
- ENUM_TYPES.WIND_POWER,
681
- ENUM_TYPES.NATURAL_GAS_GENERATORS,
682
- ENUM_TYPES.ELECTRIC_INDUSTRIAL_MOTORS,
683
- ENUM_TYPES.GROUNDING,
684
- ENUM_TYPES.Electricals,
685
- // Gas
686
- ENUM_TYPES.NATURAL_GAS_PIPELINES,
687
- ENUM_TYPES.LIQUEFIED_NATURAL_GAS,
688
- ENUM_TYPES.COMPRESSED_NATURAL_GAS_PIPELINE,
689
- ENUM_TYPES.ON_SITE_PRODUCTION,
690
- ENUM_TYPES.COMPRESSED_NATURAL_GAS_PRODUCTION,
691
- ENUM_TYPES.BOILERS_AND_HEATERS,
692
- ENUM_TYPES.FURNACES,
693
- ENUM_TYPES.POWER_GENERATION,
694
- ENUM_TYPES.COGENERATION,
695
- ENUM_TYPES.COMBINED_CYCLE_POWER_PLANTS,
696
- ENUM_TYPES.FUEL_FOR_VEHICLES_AND_EQUIPMENT,
697
- ENUM_TYPES.GAS_METERS,
698
- ENUM_TYPES.BURNERS,
699
- ENUM_TYPES.FLUE_GAS_ANALYZERS,
700
- ENUM_TYPES.COMBUSTION_CONTROL_SYSTEMS,
701
- ENUM_TYPES.GAS_STORAGE_TANKS,
702
- ENUM_TYPES.GAS_PRESSURE_REGULATORS,
703
- ENUM_TYPES.NATURAL_GAS,
704
- // TYPE_COMPONENT Gas
705
- ENUM_TYPES.GAS_SOURCE,
706
- ENUM_TYPES.GAS_PRODUCTION,
707
- ENUM_TYPES.GAS_CONSUMINGS,
708
- ENUM_TYPES.NATURAL_GAS_SPECIAL,
709
- // Fuel
710
- ENUM_TYPES.FUELS,
711
- ENUM_TYPES.DIESEL_FUELS,
712
- ENUM_TYPES.GASON_LINES,
713
- ENUM_TYPES.BIODIESELS,
714
- ENUM_TYPES.KEROSENSE,
715
- ENUM_TYPES.PROPANES,
716
- ENUM_TYPES.FUEL_SOURCES,
717
- ENUM_TYPES.TANKER_TRUCKS,
718
- ENUM_TYPES.PIPELINE,
719
- ENUM_TYPES.FUEL_CONSUMINGS,
720
- ENUM_TYPES.INDUSTRIAL_BOILERS,
721
- ENUM_TYPES.GENERATORS,
722
- ENUM_TYPES.INDUSTRIAL_FURNACES,
723
- ENUM_TYPES.INDUSTRIAL_OVENS,
724
- ENUM_TYPES.INDUSTRIAL_VEHICLES_AND_EQUIPMENT,
725
- ENUM_TYPES.FUEL_METERS,
726
- ENUM_TYPES.FUEL_DISPENSERS,
727
- ENUM_TYPES.FUEL_STRORAGE_TANKS,
728
- ENUM_TYPES.FUEL_FILTRATIONS,
729
- ENUM_TYPES.FUEL_MANAGEMENTS,
730
- // Solar
731
- ENUM_TYPES.SOLAR_POWER,
732
- ENUM_TYPES.POWER_CONDITIONING_UNIT,
733
- ENUM_TYPES.INVERTERS,
734
- ENUM_TYPES.BATTERIES,
735
- // Plant Cell
736
- ENUM_TYPES.PLANT_CELL,
737
- ENUM_TYPES.PLANT_CELL_INPUT_GROUP,
738
- ENUM_TYPES.PLANT_CELL_OUTPUT_GROUP,
739
- // Steam
740
- ENUM_TYPES.VALUES,
741
- ENUM_TYPES.STEAM_TRAPS,
742
- ENUM_TYPES.PRESSURE_REGULATORS,
743
- ENUM_TYPES.SAFETY_VALUES_AND_EQUIPMENT,
744
- ENUM_TYPES.CONDENSATE_RETURN_SYSTEM,
745
- ENUM_TYPES.DEAERATORS,
746
- ENUM_TYPES.FEEDWATER_PUMPS,
747
- ENUM_TYPES.BLOWDOWN_TANKS,
748
- ENUM_TYPES.EXPANSION_TANKS,
749
- ENUM_TYPES.HEAT_EXCHANGERS,
750
- ENUM_TYPES.TURBINES,
751
- ENUM_TYPES.STEAM_COMPONENT,
752
- ENUM_TYPES.STEAM_CONSUMING_SYSTEM,
753
- ENUM_TYPES.ENERGY_CONVERTER,
754
- ];
755
- AtoGojsEditorModel.ICON_ASSET_PATH = 'assets/images/editor/icons';
756
- AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON = '/assets/images/icons/hoskote_plant';
757
- AtoGojsEditorModel.IMAGE_RO_WATER_TREATMENT_PATH = '/assets/images/ro-water-treatment/RO_WATER_TREATMENT_BG.png';
758
- AtoGojsEditorModel.IMAGE_BOILER_PATH = 'assets/images/boiler/cms_boiler.png';
759
- AtoGojsEditorModel.IMAGE_COOLING_TOWER_PATH = 'assets/images/process-water/cooling-tower-4.png';
760
- AtoGojsEditorModel.SPECIAL_ICON_ASSET_PATH = 'assets/images/editor/special';
761
- AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH = 'assets/images/editor/energy';
762
- AtoGojsEditorModel.GAS_ICON_ASSET_PATH = 'assets/images/editor/gas';
763
- AtoGojsEditorModel.FUEL_ICON_ASSET_PATH = 'assets/images/editor/fuel';
764
- AtoGojsEditorModel.STEAM_ICON_ASSET_PATH = 'assets/images/editor/steam';
765
- AtoGojsEditorModel.PLANT_CELL_PATH = 'assets/images/editor/plant-cell';
766
- AtoGojsEditorModel.DATA_BOX = 'assets/images/editor/data-box';
767
- AtoGojsEditorModel.LINK_TEMPLATES = {
768
- [ENUM_LINK_TYPES.SIMPLE]: {
769
- toShortLength: 8,
770
- strokeWidth: 8,
771
- arrow: {
772
- toArrow: 'Triangle',
773
- visible: true,
774
- stroke: AtoGojsEditorModel.ENUM_COLORS.GRAY,
775
- fill: AtoGojsEditorModel.ENUM_COLORS.GRAY,
776
- scale: 1.7,
777
- },
778
- },
779
- [ENUM_LINK_TYPES.PIPE]: {
780
- strokeWidth: 8,
781
- },
782
- [ENUM_LINK_TYPES.PIPE_ANIMATION]: {
783
- strokeWidth: 8,
784
- animation: {
785
- isPanelMain: true,
786
- stroke: 'white',
787
- strokeWidth: 2,
788
- name: 'PIPE',
789
- strokeDashArray: [10, 20],
790
- visible: false,
791
- },
792
- },
793
- [ENUM_LINK_TYPES.PIPE_HIDDEN]: {
794
- strokeWidth: 0,
795
- selectable: false,
796
- arrow: {
797
- visible: false,
798
- },
799
- },
800
- };
801
- AtoGojsEditorModel.ATTRNAME_COMPONENT = [
802
- 'waterWithdrawName',
803
- 'waterDischargeName',
804
- 'wasteWaterProcessName',
805
- 'waterTreatmentName',
806
- 'waterStorageTankName',
807
- 'genericProcessName',
808
- 'boilerName',
809
- 'coolingTowerName',
810
- 'facilityFunctionName',
811
- 'miscWaterUseName',
812
- 'plantTopologyName',
813
- ];
814
- // export enum GROUP_COMPONENT_TYPE {
815
- // WITHDRAW_SOURCES = 'Withdraw Sources',
816
- // PROCESSE = 'Processe',
817
- // WASTEWATER_TREATEMENTS = 'WasteWater Treatements',
818
- // WATER_TREATMENT = 'Water Treatments',
819
- // DISCHARGE_DESTINATIONS = 'Discharge Destinations',
820
- // WATER_STORAGE = 'Water Storage',
821
- // FACILITY_FUNCTIONS = 'Facility functions',
822
- // OTHER = 'Other',
823
- // }
824
- AtoGojsEditorModel.NODE_TEMPLATES = {
825
- [ENUM_TEMPLATES.STORAGE]: {
826
- name: ENUM_TEMPLATES.STORAGE,
827
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Raw Water Tank.svg`,
828
- systemType: ENUM_TYPES.STORAGE,
829
- },
830
- [ENUM_TEMPLATES.COOLING_TOWER]: {
831
- name: ENUM_TEMPLATES.COOLING_TOWER,
832
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/cooling_tower.svg`,
833
- systemType: ENUM_TYPES.COOLING_TOWER,
834
- },
835
- // WATER_TREATMENT
836
- [ENUM_TEMPLATES.WATER_TREATMENT]: {
837
- name: ENUM_TEMPLATES.WATER_TREATMENT,
838
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/water_treatment.svg`,
839
- systemType: ENUM_TYPES.WATER_TREATMENT,
840
- },
841
- [ENUM_TEMPLATES.DEMIN_WATER_TREATMENT]: {
842
- name: ENUM_TEMPLATES.DEMIN_WATER_TREATMENT,
843
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Demin.svg`,
844
- systemType: ENUM_TYPES.DEMIN_WATER_TREATMENT,
845
- },
846
- [ENUM_TEMPLATES.RO_WATER_TREATMENT]: {
847
- name: ENUM_TEMPLATES.RO_WATER_TREATMENT,
848
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/RO.svg`,
849
- systemType: ENUM_TYPES.RO_WATER_TREATMENT,
850
- },
851
- [ENUM_TEMPLATES.DOMESTIC_USE]: {
852
- name: ENUM_TEMPLATES.DOMESTIC_USE,
853
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Domestic_new.svg`,
854
- systemType: ENUM_TYPES.DOMESTIC_USE,
855
- },
856
- [ENUM_TEMPLATES.PROCESS]: {
857
- name: ENUM_TEMPLATES.PROCESS,
858
- // icon: `${ICON_ASSET_PATH}/process.svg`,
859
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Generic Process.svg`,
860
- systemType: ENUM_TYPES.PROCESS,
861
- },
862
- [ENUM_TEMPLATES.SPECIAL_STORAGE]: {
863
- name: ENUM_TEMPLATES.SPECIAL_STORAGE,
864
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/process.svg`,
865
- systemType: ENUM_TYPES.SPECIAL_STORAGE,
866
- },
867
- [ENUM_TEMPLATES.BOILER]: {
868
- name: ENUM_TEMPLATES.BOILER,
869
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Boiler.svg`,
870
- systemType: ENUM_TYPES.BOILER,
871
- },
872
- // WASTEWATER_TREATMENT
873
- [ENUM_TEMPLATES.WASTEWATER_TREATMENT]: {
874
- name: ENUM_TEMPLATES.WASTEWATER_TREATMENT,
875
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/wastewater_treatment.svg`,
876
- // size: {
877
- // w: GRID_SIZE * 8,
878
- // h: GRID_SIZE * 6,
879
- // },
880
- systemType: ENUM_TYPES.WASTEWATER_TREATMENT,
881
- },
882
- [ENUM_TEMPLATES.DAF_WASTEWATER_TREATMENT]: {
883
- name: ENUM_TEMPLATES.DAF_WASTEWATER_TREATMENT,
884
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/DAF.svg`,
885
- // size: {
886
- // w: GRID_SIZE * 8,
887
- // h: GRID_SIZE * 6,
888
- // },
889
- systemType: ENUM_TYPES.DAF_WASTEWATER_TREATMENT,
890
- },
891
- [ENUM_TEMPLATES.ETP_WASTEWATER_TREATMENT]: {
892
- name: ENUM_TEMPLATES.ETP_WASTEWATER_TREATMENT,
893
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/water_treatment.svg`,
894
- systemType: ENUM_TYPES.ETP_WASTEWATER_TREATMENT,
895
- },
896
- [ENUM_TEMPLATES.MBR_WASTEWATER_TREATMENT]: {
897
- name: ENUM_TEMPLATES.MBR_WASTEWATER_TREATMENT,
898
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/MBR.svg`,
899
- // size: {
900
- // w: GRID_SIZE * 8,
901
- // h: GRID_SIZE * 6,
902
- // },
903
- systemType: ENUM_TYPES.MBR_WASTEWATER_TREATMENT,
904
- },
905
- [ENUM_TEMPLATES.ZLD_WASTEWATER_TREATMENT]: {
906
- name: ENUM_TEMPLATES.ZLD_WASTEWATER_TREATMENT,
907
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/ZLD.svg`,
908
- // size: {
909
- // w: GRID_SIZE * 8,
910
- // h: GRID_SIZE * 6,
911
- // },
912
- systemType: ENUM_TYPES.ZLD_WASTEWATER_TREATMENT,
913
- },
914
- [ENUM_TEMPLATES.LANDSCAPING_IRRIGATION]: {
915
- name: ENUM_TEMPLATES.LANDSCAPING_IRRIGATION,
916
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Irrigation.svg`,
917
- // size: {
918
- // w: GRID_SIZE * 8,
919
- // h: GRID_SIZE * 6,
920
- // },
921
- systemType: ENUM_TYPES.LANDSCAPING_IRRIGATION,
922
- },
923
- [ENUM_TEMPLATES.OTHER]: {
924
- name: ENUM_TEMPLATES.OTHER,
925
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/other.svg`,
926
- systemType: ENUM_TYPES.OTHER,
927
- },
928
- [ENUM_TEMPLATES.TEXT_NODE]: {
929
- name: ENUM_TEMPLATES.TEXT_NODE,
930
- },
931
- [ENUM_TEMPLATES.EMPTY]: {
932
- name: ENUM_TEMPLATES.EMPTY,
933
- },
934
- [ENUM_TEMPLATES.VALUE_NODE]: {
935
- name: ENUM_TEMPLATES.VALUE_NODE,
936
- },
937
- [ENUM_TEMPLATES.VALUE_LABEL]: {
938
- name: ENUM_TEMPLATES.VALUE_LABEL,
939
- },
940
- [ENUM_TEMPLATES.TEXT_LABEL]: {
941
- name: ENUM_TEMPLATES.TEXT_LABEL,
942
- },
943
- [ENUM_TEMPLATES.DATA_BOX]: {
944
- name: ENUM_TEMPLATES.DATA_BOX,
945
- },
946
- [ENUM_TEMPLATES.SPECIAL_PROCESS]: {
947
- name: ENUM_TEMPLATES.SPECIAL_PROCESS,
948
- icon: `${AtoGojsEditorModel.SPECIAL_ICON_ASSET_PATH}/process.svg`,
949
- },
950
- [ENUM_TEMPLATES.SPECIAL_STORE]: {
951
- name: ENUM_TEMPLATES.SPECIAL_STORE,
952
- icon: `${AtoGojsEditorModel.SPECIAL_ICON_ASSET_PATH}/Discharge.svg`,
953
- },
954
- [ENUM_TEMPLATES.SPECIAL_DISCHARGE]: {
955
- name: ENUM_TEMPLATES.SPECIAL_DISCHARGE,
956
- icon: `${AtoGojsEditorModel.SPECIAL_ICON_ASSET_PATH}/Discharge.svg`,
957
- },
958
- [ENUM_TEMPLATES.THIRD_PARTY_SOURCES]: {
959
- name: ENUM_TEMPLATES.THIRD_PARTY_SOURCES,
960
- // icon: `${ICON_ASSET_PATH}/Intake.svg`,
961
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Third Party Sources.svg`,
962
- systemType: ENUM_TYPES.THIRD_PARTY_SOURCES,
963
- },
964
- [ENUM_TEMPLATES.THIRD_PARTY_DESTINATIONS]: {
965
- name: ENUM_TEMPLATES.THIRD_PARTY_DESTINATIONS,
966
- // icon: `${ICON_ASSET_PATH}/Intake.svg`,
967
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Third party destinations.svg`,
968
- systemType: ENUM_TYPES.THIRD_PARTY_DESTINATIONS,
969
- },
970
- [ENUM_TEMPLATES.GROUND_WATER_NON_RENEWABLE]: {
971
- name: ENUM_TEMPLATES.GROUND_WATER_NON_RENEWABLE,
972
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Groundwater - Non-Renewable.svg`,
973
- systemType: ENUM_TYPES.GROUND_WATER_NON_RENEWABLE,
974
- },
975
- [ENUM_TEMPLATES.PRODUCED_ENTRAINED]: {
976
- name: ENUM_TEMPLATES.PRODUCED_ENTRAINED,
977
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Produced Entrained Water.svg`,
978
- systemType: ENUM_TYPES.PRODUCED_ENTRAINED,
979
- },
980
- [ENUM_TEMPLATES.BRACKISH_SURFACE_WATER]: {
981
- name: ENUM_TEMPLATES.BRACKISH_SURFACE_WATER,
982
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Brackisk Surface Water Seawater.svg`,
983
- systemType: ENUM_TYPES.BRACKISH_SURFACE_WATER,
984
- },
985
- [ENUM_TEMPLATES.FRESH_SURFACE_WATER]: {
986
- name: ENUM_TEMPLATES.FRESH_SURFACE_WATER,
987
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Fresh Surface Water.svg`,
988
- systemType: ENUM_TYPES.FRESH_SURFACE_WATER,
989
- },
990
- [ENUM_TEMPLATES.UTILITY]: {
991
- name: ENUM_TEMPLATES.UTILITY,
992
- icon: '',
993
- // `${ICON_ASSET_PATH}/rain.svg`,
994
- },
995
- [ENUM_TEMPLATES.GROUND_WATER_RENEWABLE]: {
996
- name: ENUM_TEMPLATES.GROUND_WATER_RENEWABLE,
997
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Groundwater - Renewable.svg`,
998
- systemType: ENUM_TYPES.GROUND_WATER_RENEWABLE,
999
- },
1000
- [ENUM_TEMPLATES.SPECIAL_OTHER]: {
1001
- name: ENUM_TEMPLATES.SPECIAL_OTHER,
1002
- icon: `${AtoGojsEditorModel.SPECIAL_ICON_ASSET_PATH}/Discharge.svg`,
1003
- },
1004
- // Energy
1005
- // Electric Node Template ====================================================================
1006
- [ENUM_TEMPLATES.GRID]: {
1007
- name: ENUM_TEMPLATES.GRID,
1008
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Grid.svg`,
1009
- systemType: ENUM_TYPES.GRID,
1010
- // size: {
1011
- // h: GRID_SIZE * 8,
1012
- // w: GRID_SIZE * 6,
1013
- // },
1014
- },
1015
- [ENUM_TEMPLATES.DIESEL_GENERATORS]: {
1016
- name: ENUM_TEMPLATES.DIESEL_GENERATORS,
1017
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Diesel Generators.svg`,
1018
- systemType: ENUM_TYPES.DIESEL_GENERATORS,
1019
- // size: {
1020
- // h: GRID_SIZE * 8,
1021
- // w: GRID_SIZE * 6,
1022
- // },
1023
- },
1024
- [ENUM_TEMPLATES.BATTERY_ENERGY_STORAGE]: {
1025
- name: ENUM_TEMPLATES.BATTERY_ENERGY_STORAGE,
1026
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Battery.svg`,
1027
- systemType: ENUM_TYPES.BATTERY_ENERGY_STORAGE,
1028
- },
1029
- [ENUM_TEMPLATES.LIGHTING_SYSTEMS]: {
1030
- name: ENUM_TEMPLATES.LIGHTING_SYSTEMS,
1031
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Lighting systems.svg`,
1032
- systemType: ENUM_TYPES.LIGHTING_SYSTEMS,
1033
- },
1034
- [ENUM_TEMPLATES.LIGHTINGS]: {
1035
- name: ENUM_TEMPLATES.LIGHTINGS,
1036
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Lights.svg`,
1037
- systemType: ENUM_TYPES.LIGHTINGS,
1038
- },
1039
- [ENUM_TEMPLATES.ELECTRIC_METERS]: {
1040
- name: ENUM_TEMPLATES.ELECTRIC_METERS,
1041
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Meter.svg`,
1042
- systemType: ENUM_TYPES.ELECTRIC_METERS,
1043
- },
1044
- [ENUM_TEMPLATES.TRANSFORMERS]: {
1045
- name: ENUM_TEMPLATES.TRANSFORMERS,
1046
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Transformer.svg`,
1047
- systemType: ENUM_TYPES.TRANSFORMERS,
1048
- },
1049
- [ENUM_TEMPLATES.ELECTRIC_FLYWHEEL_ENERGY_STORAGE]: {
1050
- name: ENUM_TEMPLATES.ELECTRIC_FLYWHEEL_ENERGY_STORAGE,
1051
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Pumped hydro storage systems.svg`,
1052
- systemType: ENUM_TYPES.ELECTRIC_FLYWHEEL_ENERGY_STORAGE,
1053
- },
1054
- [ENUM_TEMPLATES.PUMPED_HYDRO_STORAGE]: {
1055
- name: ENUM_TEMPLATES.PUMPED_HYDRO_STORAGE,
1056
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Pumped hydro storage systems.svg`,
1057
- systemType: ENUM_TYPES.PUMPED_HYDRO_STORAGE,
1058
- },
1059
- [ENUM_TEMPLATES.THERMAL_ENERGY_STORAGE]: {
1060
- name: ENUM_TEMPLATES.THERMAL_ENERGY_STORAGE,
1061
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Thermal energy storage systems.svg`,
1062
- systemType: ENUM_TYPES.THERMAL_ENERGY_STORAGE,
1063
- },
1064
- [ENUM_TEMPLATES.SUPER_CAPACITOR_ENERGY_STORAGE]: {
1065
- name: ENUM_TEMPLATES.SUPER_CAPACITOR_ENERGY_STORAGE,
1066
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Supercapacitor energy storage systems.svg`,
1067
- systemType: ENUM_TYPES.SUPER_CAPACITOR_ENERGY_STORAGE,
1068
- },
1069
- [ENUM_TEMPLATES.SWITCH_GEARS]: {
1070
- name: ENUM_TEMPLATES.SWITCH_GEARS,
1071
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Switchgear.svg`,
1072
- systemType: ENUM_TYPES.SWITCH_GEARS,
1073
- },
1074
- [ENUM_TEMPLATES.PROCESS_CONTROL_AUTOMATION_SYSTEMS]: {
1075
- name: ENUM_TEMPLATES.PROCESS_CONTROL_AUTOMATION_SYSTEMS,
1076
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Process control and automation systems.svg`,
1077
- systemType: ENUM_TYPES.PROCESS_CONTROL_AUTOMATION_SYSTEMS,
1078
- },
1079
- [ENUM_TEMPLATES.PROCESS_EQUIPMENT_MACHINES]: {
1080
- name: ENUM_TEMPLATES.PROCESS_EQUIPMENT_MACHINES,
1081
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Process equipment and machines.svg`,
1082
- systemType: ENUM_TYPES.PROCESS_EQUIPMENT_MACHINES,
1083
- },
1084
- [ENUM_TEMPLATES.OFFICE_EQUIPMENT]: {
1085
- name: ENUM_TEMPLATES.OFFICE_EQUIPMENT,
1086
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Office equipment.svg`,
1087
- systemType: ENUM_TYPES.OFFICE_EQUIPMENT,
1088
- },
1089
- [ENUM_TEMPLATES.POWER_DISTRIBUTION_CONTROL_SYSTEMS]: {
1090
- name: ENUM_TEMPLATES.POWER_DISTRIBUTION_CONTROL_SYSTEMS,
1091
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Power distribution and control systems.svg`,
1092
- systemType: ENUM_TYPES.POWER_DISTRIBUTION_CONTROL_SYSTEMS,
1093
- },
1094
- [ENUM_TEMPLATES.PUMP]: {
1095
- name: ENUM_TEMPLATES.PUMP,
1096
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Pump.svg`,
1097
- systemType: ENUM_TYPES.PUMP,
1098
- },
1099
- [ENUM_TEMPLATES.POWER_DISTRIBUTION_SYSTEMS]: {
1100
- name: ENUM_TEMPLATES.POWER_DISTRIBUTION_SYSTEMS,
1101
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Power distribution systems.svg`,
1102
- systemType: ENUM_TYPES.POWER_DISTRIBUTION_SYSTEMS,
1103
- },
1104
- [ENUM_TEMPLATES.NATURAL_GAS_GENERATORS]: {
1105
- name: ENUM_TEMPLATES.NATURAL_GAS_GENERATORS,
1106
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Natural gas generators.svg`,
1107
- systemType: ENUM_TYPES.NATURAL_GAS_GENERATORS,
1108
- },
1109
- [ENUM_TEMPLATES.MOTOR_CONTROLS]: {
1110
- name: ENUM_TEMPLATES.MOTOR_CONTROLS,
1111
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Motor control centers (MCCs).svg`,
1112
- systemType: ENUM_TYPES.MOTOR_CONTROLS,
1113
- },
1114
- [ENUM_TEMPLATES.VARIABLE_FREQUENCY_DRIVERS]: {
1115
- name: ENUM_TEMPLATES.VARIABLE_FREQUENCY_DRIVERS,
1116
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Variable frequency drives (VFDs).svg`,
1117
- systemType: ENUM_TYPES.VARIABLE_FREQUENCY_DRIVERS,
1118
- },
1119
- [ENUM_TEMPLATES.ELECTRIC_HVAC]: {
1120
- name: ENUM_TEMPLATES.ELECTRIC_HVAC,
1121
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Gas HVAC.svg`,
1122
- systemType: ENUM_TYPES.ELECTRIC_HVAC,
1123
- },
1124
- [ENUM_TEMPLATES.COMPRESSED_AIR_SYSTEMS]: {
1125
- name: ENUM_TEMPLATES.COMPRESSED_AIR_SYSTEMS,
1126
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Compressed air.svg`,
1127
- systemType: ENUM_TYPES.COMPRESSED_AIR_SYSTEMS,
1128
- },
1129
- [ENUM_TEMPLATES.REFRIGERATION_COOLING_SYSTEMS]: {
1130
- name: ENUM_TEMPLATES.REFRIGERATION_COOLING_SYSTEMS,
1131
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Refrigeration and cooling systems.svg`,
1132
- systemType: ENUM_TYPES.REFRIGERATION_COOLING_SYSTEMS,
1133
- },
1134
- [ENUM_TEMPLATES.MATERIAL_HANDLING_EQUIPMENT]: {
1135
- name: ENUM_TEMPLATES.MATERIAL_HANDLING_EQUIPMENT,
1136
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Material handling equipment.svg`,
1137
- systemType: ENUM_TYPES.MATERIAL_HANDLING_EQUIPMENT,
1138
- },
1139
- [ENUM_TEMPLATES.WIND_POWER]: {
1140
- name: ENUM_TEMPLATES.WIND_POWER,
1141
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Wind Power.svg`,
1142
- systemType: ENUM_TYPES.WIND_POWER,
1143
- },
1144
- [ENUM_TEMPLATES.ELECTRIC_INDUSTRIAL_MOTORS]: {
1145
- name: ENUM_TEMPLATES.ELECTRIC_INDUSTRIAL_MOTORS,
1146
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Industrial motors.svg`,
1147
- systemType: ENUM_TYPES.ELECTRIC_INDUSTRIAL_MOTORS,
1148
- },
1149
- [ENUM_TEMPLATES.GROUNDING]: {
1150
- name: ENUM_TEMPLATES.GROUNDING,
1151
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Grounding systems.svg`,
1152
- systemType: ENUM_TYPES.GROUNDING,
1153
- },
1154
- // Gas ================================================================================
1155
- [ENUM_TEMPLATES.NATURAL_GAS_PIPELINES]: {
1156
- name: ENUM_TEMPLATES.NATURAL_GAS_PIPELINES,
1157
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Natural gas pipelines.svg`,
1158
- systemType: ENUM_TYPES.NATURAL_GAS_PIPELINES,
1159
- },
1160
- // [ENUM_TEMPLATES.LIQUEFIED_NATURAL_GAS]: {
1161
- // name: ENUM_TEMPLATES.LIQUEFIED_NATURAL_GAS,
1162
- // icon: `${GAS_ICON_ASSET_PATH}/Liquefied natural gas (LNG) shipments.svg`,
1163
- // systemType: ENUM_TYPES.LIQUEFIED_NATURAL_GAS,
1164
- // },
1165
- [ENUM_TEMPLATES.COMPRESSED_NATURAL_GAS_PIPELINE]: {
1166
- name: ENUM_TEMPLATES.COMPRESSED_NATURAL_GAS_PIPELINE,
1167
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Compressed natural gas pipeline (CNG).svg`,
1168
- systemType: ENUM_TYPES.COMPRESSED_NATURAL_GAS_PIPELINE,
1169
- },
1170
- // [ENUM_TEMPLATES.ON_SITE_PRODUCTION]: {
1171
- // name: ENUM_TEMPLATES.ON_SITE_PRODUCTION,
1172
- // icon: `${GAS_ICON_ASSET_PATH}/On-site production.svg`,
1173
- // systemType: ENUM_TYPES.ON_SITE_PRODUCTION,
1174
- // },
1175
- [ENUM_TEMPLATES.COMPRESSED_NATURAL_GAS_PRODUCTION]: {
1176
- name: ENUM_TEMPLATES.COMPRESSED_NATURAL_GAS_PRODUCTION,
1177
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Compressed natural gas pipeline (CNG).svg`,
1178
- systemType: ENUM_TYPES.COMPRESSED_NATURAL_GAS_PRODUCTION,
1179
- },
1180
- [ENUM_TEMPLATES.BOILERS_AND_HEATERS]: {
1181
- name: ENUM_TEMPLATES.BOILERS_AND_HEATERS,
1182
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Boilers and heaters.svg`,
1183
- systemType: ENUM_TYPES.BOILERS_AND_HEATERS,
1184
- },
1185
- [ENUM_TEMPLATES.FURNACES]: {
1186
- name: ENUM_TEMPLATES.FURNACES,
1187
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Furnaces.svg`,
1188
- systemType: ENUM_TYPES.FURNACES,
1189
- },
1190
- [ENUM_TEMPLATES.POWER_GENERATION]: {
1191
- name: ENUM_TEMPLATES.POWER_GENERATION,
1192
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Power generation.svg`,
1193
- systemType: ENUM_TYPES.POWER_GENERATION,
1194
- },
1195
- [ENUM_TEMPLATES.COGENERATION]: {
1196
- name: ENUM_TEMPLATES.COGENERATION,
1197
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Cogeneration.svg`,
1198
- systemType: ENUM_TYPES.COGENERATION,
1199
- },
1200
- [ENUM_TEMPLATES.COMBINED_CYCLE_POWER_PLANTS]: {
1201
- name: ENUM_TEMPLATES.COMBINED_CYCLE_POWER_PLANTS,
1202
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Combined cycle power plants.svg`,
1203
- systemType: ENUM_TYPES.COMBINED_CYCLE_POWER_PLANTS,
1204
- },
1205
- [ENUM_TEMPLATES.FUEL_FOR_VEHICLES_AND_EQUIPMENT]: {
1206
- name: ENUM_TEMPLATES.FUEL_FOR_VEHICLES_AND_EQUIPMENT,
1207
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Fuel for vehicles and equipment.svg`,
1208
- systemType: ENUM_TYPES.FUEL_FOR_VEHICLES_AND_EQUIPMENT,
1209
- },
1210
- [ENUM_TEMPLATES.GAS_METERS]: {
1211
- name: ENUM_TEMPLATES.GAS_METERS,
1212
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Gas meters.svg`,
1213
- systemType: ENUM_TYPES.GAS_METERS,
1214
- },
1215
- // [ENUM_TEMPLATES.BURNERS]: {
1216
- // name: ENUM_TEMPLATES.BURNERS,
1217
- // icon: `${GAS_ICON_ASSET_PATH}/Burners.svg`,
1218
- // systemType: ENUM_TYPES.BURNERS,
1219
- // },
1220
- // [ENUM_TEMPLATES.FLUE_GAS_ANALYZERS]: {
1221
- // name: ENUM_TEMPLATES.FLUE_GAS_ANALYZERS,
1222
- // icon: `${GAS_ICON_ASSET_PATH}/Flue gas analyzers.svg`,
1223
- // systemType: ENUM_TYPES.FLUE_GAS_ANALYZERS,
1224
- // },
1225
- [ENUM_TEMPLATES.COMBUSTION_CONTROL_SYSTEMS]: {
1226
- name: ENUM_TEMPLATES.COMBUSTION_CONTROL_SYSTEMS,
1227
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Combustion control systems.svg`,
1228
- systemType: ENUM_TYPES.COMBUSTION_CONTROL_SYSTEMS,
1229
- },
1230
- [ENUM_TEMPLATES.GAS_STORAGE_TANKS]: {
1231
- name: ENUM_TEMPLATES.GAS_STORAGE_TANKS,
1232
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Gas storage tanks.svg`,
1233
- systemType: ENUM_TYPES.GAS_STORAGE_TANKS,
1234
- },
1235
- [ENUM_TEMPLATES.GAS_PRESSURE_REGULATORS]: {
1236
- name: ENUM_TEMPLATES.GAS_PRESSURE_REGULATORS,
1237
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Gas pressure regulators.svg`,
1238
- systemType: ENUM_TYPES.GAS_PRESSURE_REGULATORS,
1239
- },
1240
- [ENUM_TEMPLATES.NATURAL_GAS]: {
1241
- name: ENUM_TEMPLATES.NATURAL_GAS,
1242
- icon: `${AtoGojsEditorModel.GAS_ICON_ASSET_PATH}/Natural Gas.svg`,
1243
- systemType: ENUM_TYPES.NATURAL_GAS,
1244
- },
1245
- // Fuel==========================================================
1246
- [ENUM_TEMPLATES.DIESEL_FUELS]: {
1247
- name: ENUM_TEMPLATES.DIESEL_FUELS,
1248
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Diesel fuel.svg`,
1249
- systemType: ENUM_TYPES.DIESEL_FUELS,
1250
- },
1251
- [ENUM_TEMPLATES.GASON_LINES]: {
1252
- name: ENUM_TEMPLATES.GASON_LINES,
1253
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Gasoline.svg`,
1254
- systemType: ENUM_TYPES.GASON_LINES,
1255
- },
1256
- [ENUM_TEMPLATES.BIODIESELS]: {
1257
- name: ENUM_TEMPLATES.BIODIESELS,
1258
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Biodiesel.svg`,
1259
- systemType: ENUM_TYPES.BIODIESELS,
1260
- },
1261
- [ENUM_TEMPLATES.KEROSENSE]: {
1262
- name: ENUM_TEMPLATES.KEROSENSE,
1263
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Kerosene.svg`,
1264
- systemType: ENUM_TYPES.KEROSENSE,
1265
- },
1266
- [ENUM_TEMPLATES.PROPANES]: {
1267
- name: ENUM_TEMPLATES.PROPANES,
1268
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Propane.svg`,
1269
- systemType: ENUM_TYPES.PROPANES,
1270
- },
1271
- [ENUM_TEMPLATES.TANKER_TRUCKS]: {
1272
- name: ENUM_TEMPLATES.TANKER_TRUCKS,
1273
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Tanker Trucks.svg`,
1274
- systemType: ENUM_TYPES.TANKER_TRUCKS,
1275
- },
1276
- [ENUM_TEMPLATES.PIPELINE]: {
1277
- name: ENUM_TEMPLATES.PIPELINE,
1278
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Pipeline.svg`,
1279
- systemType: ENUM_TYPES.PIPELINE,
1280
- },
1281
- [ENUM_TEMPLATES.INDUSTRIAL_BOILERS]: {
1282
- name: ENUM_TEMPLATES.INDUSTRIAL_BOILERS,
1283
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Industrial boilers.svg`,
1284
- systemType: ENUM_TYPES.INDUSTRIAL_BOILERS,
1285
- },
1286
- [ENUM_TEMPLATES.GENERATORS]: {
1287
- name: ENUM_TEMPLATES.GENERATORS,
1288
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Generators.svg`,
1289
- systemType: ENUM_TYPES.GENERATORS,
1290
- },
1291
- [ENUM_TEMPLATES.INDUSTRIAL_FURNACES]: {
1292
- name: ENUM_TEMPLATES.INDUSTRIAL_FURNACES,
1293
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Industrial furnaces.svg`,
1294
- systemType: ENUM_TYPES.INDUSTRIAL_FURNACES,
1295
- },
1296
- [ENUM_TEMPLATES.INDUSTRIAL_OVENS]: {
1297
- name: ENUM_TEMPLATES.INDUSTRIAL_OVENS,
1298
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Industrial ovens.svg`,
1299
- systemType: ENUM_TYPES.INDUSTRIAL_OVENS,
1300
- },
1301
- [ENUM_TEMPLATES.INDUSTRIAL_VEHICLES_AND_EQUIPMENT]: {
1302
- name: ENUM_TEMPLATES.INDUSTRIAL_VEHICLES_AND_EQUIPMENT,
1303
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Industrial vehicles and equipment.svg`,
1304
- systemType: ENUM_TYPES.INDUSTRIAL_VEHICLES_AND_EQUIPMENT,
1305
- },
1306
- [ENUM_TEMPLATES.FUEL_METERS]: {
1307
- name: ENUM_TEMPLATES.FUEL_METERS,
1308
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Fuel meters.svg`,
1309
- systemType: ENUM_TYPES.FUEL_METERS,
1310
- },
1311
- [ENUM_TEMPLATES.FUEL_DISPENSERS]: {
1312
- name: ENUM_TEMPLATES.FUEL_DISPENSERS,
1313
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Fuel dispensers.svg`,
1314
- systemType: ENUM_TYPES.FUEL_DISPENSERS,
1315
- },
1316
- [ENUM_TEMPLATES.FUEL_STRORAGE_TANKS]: {
1317
- name: ENUM_TEMPLATES.FUEL_STRORAGE_TANKS,
1318
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Fuel storage tanks.svg`,
1319
- systemType: ENUM_TYPES.FUEL_STRORAGE_TANKS,
1320
- },
1321
- [ENUM_TEMPLATES.FUEL_FILTRATIONS]: {
1322
- name: ENUM_TEMPLATES.FUEL_FILTRATIONS,
1323
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Fuel filtration systems.svg`,
1324
- systemType: ENUM_TYPES.FUEL_FILTRATIONS,
1325
- },
1326
- [ENUM_TEMPLATES.FUEL_MANAGEMENTS]: {
1327
- name: ENUM_TEMPLATES.FUEL_MANAGEMENTS,
1328
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Fuel management systems.svg`,
1329
- systemType: ENUM_TYPES.FUEL_MANAGEMENTS,
1330
- },
1331
- [ENUM_TEMPLATES.FUELS]: {
1332
- name: ENUM_TEMPLATES.FUELS,
1333
- icon: `${AtoGojsEditorModel.FUEL_ICON_ASSET_PATH}/Diesel fuel.svg`,
1334
- systemType: ENUM_TYPES.FUELS,
1335
- },
1336
- // Gas new
1337
- [ENUM_TEMPLATES.LIQUEFIED_NATURAL_GAS]: {
1338
- name: ENUM_TEMPLATES.LIQUEFIED_NATURAL_GAS,
1339
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Natural gas generators.svg`,
1340
- systemType: ENUM_TYPES.LIQUEFIED_NATURAL_GAS,
1341
- },
1342
- [ENUM_TEMPLATES.ON_SITE_PRODUCTION]: {
1343
- name: ENUM_TEMPLATES.ON_SITE_PRODUCTION,
1344
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Natural gas generators.svg`,
1345
- systemType: ENUM_TYPES.ON_SITE_PRODUCTION,
1346
- },
1347
- [ENUM_TEMPLATES.BURNERS]: {
1348
- name: ENUM_TEMPLATES.BURNERS,
1349
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Power conditioning unit (PCU).svg`,
1350
- systemType: ENUM_TYPES.BURNERS,
1351
- },
1352
- [ENUM_TEMPLATES.FLUE_GAS_ANALYZERS]: {
1353
- name: ENUM_TEMPLATES.FLUE_GAS_ANALYZERS,
1354
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Power conditioning unit (PCU).svg`,
1355
- systemType: ENUM_TYPES.FLUE_GAS_ANALYZERS,
1356
- },
1357
- // Solar ==========================================================
1358
- [ENUM_TEMPLATES.SOLAR_POWER]: {
1359
- name: ENUM_TEMPLATES.SOLAR_POWER,
1360
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Solar.svg`,
1361
- systemType: ENUM_TYPES.SOLAR_POWER,
1362
- },
1363
- [ENUM_TEMPLATES.POWER_CONDITIONING_UNIT]: {
1364
- name: ENUM_TEMPLATES.POWER_CONDITIONING_UNIT,
1365
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Power conditioning unit (PCU).svg`,
1366
- systemType: ENUM_TYPES.POWER_CONDITIONING_UNIT,
1367
- },
1368
- [ENUM_TEMPLATES.INVERTERS]: {
1369
- name: ENUM_TEMPLATES.INVERTERS,
1370
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Inverter.svg`,
1371
- systemType: ENUM_TYPES.INVERTERS,
1372
- },
1373
- [ENUM_TEMPLATES.BATTERIES]: {
1374
- name: ENUM_TEMPLATES.BATTERIES,
1375
- icon: `${AtoGojsEditorModel.ENERGY_ICON_ASSET_PATH}/Battery.svg`,
1376
- systemType: ENUM_TYPES.BATTERIES,
1377
- },
1378
- [ENUM_TEMPLATES.ZONE]: {
1379
- name: ENUM_TEMPLATES.ZONE,
1380
- // icon: `${ENERGY_ICON_ASSET_PATH}/Battery.svg`,
1381
- },
1382
- [ENUM_TEMPLATES.ZONE_ENERGY_ITEM]: {
1383
- name: ENUM_TEMPLATES.ZONE_ENERGY_ITEM,
1384
- },
1385
- // UNCATEGORIZED
1386
- [ENUM_TEMPLATES.UNCATEGORIZED]: {
1387
- name: ENUM_TEMPLATES.UNCATEGORIZED,
1388
- icon: '',
1389
- // `${ICON_ASSET_PATH}/rain.svg`,
1390
- },
1391
- // Plant Cell
1392
- [ENUM_TEMPLATES.PLANT_CELL]: {
1393
- name: ENUM_TEMPLATES.PLANT_CELL,
1394
- icon: `${AtoGojsEditorModel.PLANT_CELL_PATH}/Cell.svg`,
1395
- systemType: ENUM_TYPES.PLANT_CELL,
1396
- },
1397
- [ENUM_TEMPLATES.INPUT_PLANT_CELL]: {
1398
- name: ENUM_TEMPLATES.INPUT_PLANT_CELL,
1399
- icon: '',
1400
- },
1401
- [ENUM_TEMPLATES.OUTPUT_PLANT_CELL]: {
1402
- name: ENUM_TEMPLATES.OUTPUT_PLANT_CELL,
1403
- icon: '',
1404
- },
1405
- [ENUM_TEMPLATES.PLANT_CELL_INPUT_GROUP]: {
1406
- name: ENUM_TEMPLATES.PLANT_CELL_INPUT_GROUP,
1407
- icon: ``,
1408
- },
1409
- [ENUM_TEMPLATES.PLANT_CELL_OUTPUT_GROUP]: {
1410
- name: ENUM_TEMPLATES.PLANT_CELL_OUTPUT_GROUP,
1411
- icon: ``,
1412
- },
1413
- [ENUM_TEMPLATES.IMAGE_TEMPLATE]: {
1414
- name: ENUM_TEMPLATES.IMAGE_TEMPLATE,
1415
- icon: ``,
1416
- },
1417
- [ENUM_TEMPLATES.PARAM_TABLE]: {
1418
- name: ENUM_TEMPLATES.PARAM_TABLE,
1419
- icon: ``,
1420
- },
1421
- [ENUM_TEMPLATES.MASS_BALANCE]: {
1422
- name: ENUM_TEMPLATES.MASS_BALANCE,
1423
- icon: ``,
1424
- },
1425
- // STEAM
1426
- [ENUM_TEMPLATES.STEAM_PIPELINE]: {
1427
- name: ENUM_TEMPLATES.STEAM_PIPELINE,
1428
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Pipeline.svg`,
1429
- },
1430
- [ENUM_TEMPLATES.VALUES]: {
1431
- name: ENUM_TEMPLATES.VALUES,
1432
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Steam_Valve.png`,
1433
- },
1434
- [ENUM_TEMPLATES.STEAM_TRAPS]: {
1435
- name: ENUM_TEMPLATES.STEAM_TRAPS,
1436
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Trap.png`,
1437
- },
1438
- [ENUM_TEMPLATES.PRESSURE_REGULATORS]: {
1439
- name: ENUM_TEMPLATES.PRESSURE_REGULATORS,
1440
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Pressure_Regulator.png`,
1441
- },
1442
- [ENUM_TEMPLATES.SAFETY_VALUES_AND_EQUIPMENT]: {
1443
- name: ENUM_TEMPLATES.SAFETY_VALUES_AND_EQUIPMENT,
1444
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/safety valve.png`,
1445
- },
1446
- [ENUM_TEMPLATES.CONDENSATE_RETURN_SYSTEM]: {
1447
- name: ENUM_TEMPLATES.CONDENSATE_RETURN_SYSTEM,
1448
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Condensate Return System.png`,
1449
- },
1450
- [ENUM_TEMPLATES.DEAERATORS]: {
1451
- name: ENUM_TEMPLATES.DEAERATORS,
1452
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Deaerators.png`,
1453
- },
1454
- [ENUM_TEMPLATES.FEEDWATER_PUMPS]: {
1455
- name: ENUM_TEMPLATES.FEEDWATER_PUMPS,
1456
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Feed Water Pump.png`,
1457
- },
1458
- [ENUM_TEMPLATES.BLOWDOWN_TANKS]: {
1459
- name: ENUM_TEMPLATES.BLOWDOWN_TANKS,
1460
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Blowdown tank.png`,
1461
- },
1462
- [ENUM_TEMPLATES.EXPANSION_TANKS]: {
1463
- name: ENUM_TEMPLATES.EXPANSION_TANKS,
1464
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/Expansion Tanks.png`,
1465
- },
1466
- [ENUM_TEMPLATES.HEAT_EXCHANGERS]: {
1467
- name: ENUM_TEMPLATES.HEAT_EXCHANGERS,
1468
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/heat exchangers.png`,
1469
- },
1470
- [ENUM_TEMPLATES.TURBINES]: {
1471
- name: ENUM_TEMPLATES.TURBINES,
1472
- icon: `${AtoGojsEditorModel.STEAM_ICON_ASSET_PATH}/steam turbine.png`,
1473
- },
1474
- // Plant Basic
1475
- [ENUM_TEMPLATES.GROUP_BASIC_COMPONENT]: {
1476
- name: ENUM_TEMPLATES.GROUP_BASIC_COMPONENT,
1477
- icon: ``,
1478
- },
1479
- // System Type Group duplicate Energy with Water
1480
- [ENUM_TEMPLATES.BOILER_ENERGY]: {
1481
- name: ENUM_TEMPLATES.BOILER_ENERGY,
1482
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/Boiler.svg`,
1483
- systemType: ENUM_TYPES.BOILER,
1484
- },
1485
- [ENUM_TEMPLATES.COOLING_TOWER_ENERGY]: {
1486
- name: ENUM_TEMPLATES.COOLING_TOWER_ENERGY,
1487
- icon: `${AtoGojsEditorModel.ICON_ASSET_PATH}/cooling_tower.svg`,
1488
- systemType: ENUM_TYPES.COOLING_TOWER,
1489
- },
1490
- };
1491
- AtoGojsEditorModel.WITHDRAW_DISCHARGE_ICON = {
1492
- [ENUM_TYPES.FRESH_SURFACE_WATER]: {
1493
- name: ENUM_TEMPLATES.FRESH_SURFACE_WATER,
1494
- iconActive: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Fresh surface water - Duo.svg`,
1495
- iconDisabled: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Fresh surface water.svg`,
1496
- },
1497
- [ENUM_TYPES.THIRD_PARTY_SOURCES]: {
1498
- name: ENUM_TEMPLATES.THIRD_PARTY_SOURCES,
1499
- iconActive: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Third party sources - Duo.svg`,
1500
- iconDisabled: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Third party sources.svg`,
1501
- isHasWaterCapcity: true,
1502
- },
1503
- [ENUM_TYPES.THIRD_PARTY_DESTINATIONS]: {
1504
- name: ENUM_TEMPLATES.THIRD_PARTY_DESTINATIONS,
1505
- iconActive: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Third party sources - Duo.svg`,
1506
- iconDisabled: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Third party sources.svg`,
1507
- isHasWaterCapcity: true,
1508
- },
1509
- [ENUM_TYPES.GROUND_WATER_NON_RENEWABLE]: {
1510
- name: ENUM_TEMPLATES.GROUND_WATER_NON_RENEWABLE,
1511
- iconActive: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Groundwater - non-renewable - Duo.svg`,
1512
- iconDisabled: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Groundwater - non-renewable.svg`,
1513
- },
1514
- [ENUM_TYPES.PRODUCED_ENTRAINED]: {
1515
- name: ENUM_TEMPLATES.PRODUCED_ENTRAINED,
1516
- iconActive: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Groundwater - renewable - Duo.svg`,
1517
- iconDisabled: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Groundwater - renewable.svg`,
1518
- },
1519
- [ENUM_TYPES.BRACKISH_SURFACE_WATER]: {
1520
- name: ENUM_TEMPLATES.BRACKISH_SURFACE_WATER,
1521
- iconiconActive: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Brackish surface - Duo.svg`,
1522
- iconDisabled: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Brackish surface.svg`,
1523
- },
1524
- [ENUM_TYPES.GROUND_WATER_RENEWABLE]: {
1525
- name: ENUM_TEMPLATES.GROUND_WATER_RENEWABLE,
1526
- iconActive: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Groundwater - renewable - Duo.svg`,
1527
- iconDisabled: `${AtoGojsEditorModel.ICON_ASSET_WITHDRAW_DISCHARGE_ICON}/Groundwater - renewable.svg`,
1528
- },
1529
- };
1530
- AtoGojsEditorModel.WITHDRAW_DISCHARGE_DIAGRAM_HOME = {
1531
- withdrawSourcesChildren: [
1532
- ENUM_TYPES.WATER_TREATMENT,
1533
- ENUM_TYPES.DEMIN_WATER_TREATMENT,
1534
- ENUM_TYPES.RO_WATER_TREATMENT,
1535
- ],
1536
- dischargeDestinationsChildren: [
1537
- ENUM_TYPES.WASTEWATER_TREATMENT,
1538
- ENUM_TYPES.DAF_WASTEWATER_TREATMENT,
1539
- ENUM_TYPES.ETP_WASTEWATER_TREATMENT,
1540
- ENUM_TYPES.MBR_WASTEWATER_TREATMENT,
1541
- ENUM_TYPES.ZLD_WASTEWATER_TREATMENT,
1542
- ],
1543
- };
1544
- let ACTION_RIGHT_MENU_GROUP;
1545
- (function (ACTION_RIGHT_MENU_GROUP) {
1546
- ACTION_RIGHT_MENU_GROUP["PLANT_TEMPLATES"] = "Plant Templates";
1547
- ACTION_RIGHT_MENU_GROUP["PLANT_CELLS"] = "Plant Cell";
1548
- ACTION_RIGHT_MENU_GROUP["DATA_BOX"] = "Measurement";
1549
- ACTION_RIGHT_MENU_GROUP["SYSTEM_TEMPLATES"] = "System Templates";
1550
- ACTION_RIGHT_MENU_GROUP["WATER_COMPONENT"] = "Water Components";
1551
- })(ACTION_RIGHT_MENU_GROUP = AtoGojsEditorModel.ACTION_RIGHT_MENU_GROUP || (AtoGojsEditorModel.ACTION_RIGHT_MENU_GROUP = {}));
1552
- let DATA_BOX_NAME_OF_COMPONENT;
1553
- (function (DATA_BOX_NAME_OF_COMPONENT) {
1554
- DATA_BOX_NAME_OF_COMPONENT["INFLOW"] = "Inflow Of";
1555
- DATA_BOX_NAME_OF_COMPONENT["OUTFLOW"] = "Outflow From";
1556
- })(DATA_BOX_NAME_OF_COMPONENT = AtoGojsEditorModel.DATA_BOX_NAME_OF_COMPONENT || (AtoGojsEditorModel.DATA_BOX_NAME_OF_COMPONENT = {}));
1557
- let ACTION_RIGHT_MENU;
1558
- (function (ACTION_RIGHT_MENU) {
1559
- ACTION_RIGHT_MENU["APPLY_TEMPLATE"] = "ApplyTemplate";
1560
- ACTION_RIGHT_MENU["NEW_PLANT_CELL"] = "NewPlantCell";
1561
- ACTION_RIGHT_MENU["NAME_PLANT_CELL"] = "NamePlantCell";
1562
- ACTION_RIGHT_MENU["ADD_COMPONENT"] = "AddComponent";
1563
- })(ACTION_RIGHT_MENU = AtoGojsEditorModel.ACTION_RIGHT_MENU || (AtoGojsEditorModel.ACTION_RIGHT_MENU = {}));
1564
- AtoGojsEditorModel.DATA_MENU = [
1565
- {
1566
- name: 'Plant Templates',
1567
- componentType: ATO_ECOMPONENT_PLANT_TYPE.WATER,
1568
- isFilterType: true,
1569
- groupType: ACTION_RIGHT_MENU_GROUP.PLANT_TEMPLATES,
1570
- children: [
1571
- {
1572
- name: 'Food and Beverages',
1573
- children: [],
1574
- actionType: ACTION_RIGHT_MENU.APPLY_TEMPLATE,
1575
- isDrag: true,
1576
- },
1577
- {
1578
- name: 'Power plant',
1579
- children: [],
1580
- actionType: ACTION_RIGHT_MENU.APPLY_TEMPLATE,
1581
- isDrag: true,
1582
- },
1583
- ],
1584
- },
1585
- // {
1586
- // name: 'Plant Cells',
1587
- // groupType: ACTION_RIGHT_MENU_GROUP.PLANT_CELLS,
1588
- // componentType: E_COMPONENT_PLANT_TYPE.WATER,
1589
- // isFilterType: true,
1590
- // children: [
1591
- // {
1592
- // name: 'Beer Production cell',
1593
- // children: [],
1594
- // actionType: ACTION_RIGHT_MENU.NAME_PLANT_CELL,
1595
- // isDrag: true,
1596
- // isViewMode: true,
1597
- // systemType: ENUM_TYPES.PLANT_CELL,
1598
- // type: ENUM_TYPES.PLANT_CELL,
1599
- // inputType: TYPE_INPUT.TEXT,
1600
- // fc: new FormControl('Beer Production cell', Validators.required),
1601
- // fcBackup: new FormControl('Beer Production cell', Validators.required),
1602
- // },
1603
- // {
1604
- // name: 'New Plant Cell',
1605
- // children: [],
1606
- // actionType: ACTION_RIGHT_MENU.NEW_PLANT_CELL,
1607
- // isDrag: false,
1608
- // },
1609
- // ],
1610
- // },
1611
- ];
1612
- AtoGojsEditorModel.WATER_USING_SYSTEM = [
1613
- ENUM_TYPES.COOLING_TOWER,
1614
- ENUM_TYPES.BOILER,
1615
- ENUM_TYPES.OTHER,
1616
- ENUM_TYPES.PROCESS,
1617
- ENUM_TYPES.DOMESTIC_USE,
1618
- ENUM_TYPES.LANDSCAPING_IRRIGATION,
1619
- ];
1620
- AtoGojsEditorModel.PARAM_TABLE_STYLE = {
1621
- [ENUM_COLORS.CERULEAN]: {
1622
- borderTable: ENUM_COLORS.CERULEAN,
1623
- bgColor: ENUM_COLORS.CERULEAN_ALICE_BLUE,
1624
- },
1625
- [ENUM_COLORS.DANUBE]: {
1626
- borderTable: ENUM_COLORS.DANUBE,
1627
- bgColor: ENUM_COLORS.DANUBE_ALICE_BLUE,
1628
- },
1629
- [ENUM_COLORS.FOUNTAIN_BLUE]: {
1630
- borderTable: ENUM_COLORS.FOUNTAIN_BLUE,
1631
- bgColor: ENUM_COLORS.AZURE,
1632
- },
1633
- [ENUM_COLORS.GALLIANO]: {
1634
- borderTable: ENUM_COLORS.GALLIANO,
1635
- bgColor: ENUM_COLORS.OLD_LACE,
1636
- },
1637
- [ENUM_COLORS.WHITE]: {
1638
- borderTable: ENUM_COLORS.WHITE,
1639
- bgColor: ENUM_COLORS.WHITE,
1640
- },
1641
- };
1642
- // System type include Water
1643
- AtoGojsEditorModel.TYPE_COMPONENT_WATER = [
1644
- ENUM_TYPES.STORAGE,
1645
- ENUM_TYPES.WATER_TREATMENT,
1646
- ENUM_TYPES.DEMIN_WATER_TREATMENT,
1647
- ENUM_TYPES.RO_WATER_TREATMENT,
1648
- ENUM_TYPES.PROCESS,
1649
- ENUM_TYPES.WASTEWATER_TREATMENT,
1650
- ENUM_TYPES.DAF_WASTEWATER_TREATMENT,
1651
- ENUM_TYPES.ETP_WASTEWATER_TREATMENT,
1652
- ENUM_TYPES.MBR_WASTEWATER_TREATMENT,
1653
- ENUM_TYPES.ZLD_WASTEWATER_TREATMENT,
1654
- ENUM_TYPES.DOMESTIC_USE,
1655
- ENUM_TYPES.COOLING_TOWER,
1656
- ENUM_TYPES.BOILER,
1657
- ENUM_TYPES.OTHER,
1658
- ENUM_TYPES.LANDSCAPING_IRRIGATION,
1659
- AtoGojsEditorModel.WaterWithdrawSources,
1660
- AtoGojsEditorModel.WaterDischargeDestinations,
1661
- ];
1662
- // Template type includes Water
1663
- AtoGojsEditorModel.TYPE_TEMPLATE_WATER_NORMAL = [
1664
- AtoGojsEditorModel.ENUM_TEMPLATES.PROCESS,
1665
- AtoGojsEditorModel.ENUM_TEMPLATES.BOILER,
1666
- AtoGojsEditorModel.ENUM_TEMPLATES.COOLING_TOWER,
1667
- AtoGojsEditorModel.ENUM_TEMPLATES.ETP_WASTEWATER_TREATMENT,
1668
- AtoGojsEditorModel.ENUM_TEMPLATES.ZLD_WASTEWATER_TREATMENT,
1669
- AtoGojsEditorModel.ENUM_TEMPLATES.MBR_WASTEWATER_TREATMENT,
1670
- AtoGojsEditorModel.ENUM_TEMPLATES.DAF_WASTEWATER_TREATMENT,
1671
- AtoGojsEditorModel.ENUM_TEMPLATES.RO_WATER_TREATMENT,
1672
- AtoGojsEditorModel.ENUM_TEMPLATES.DEMIN_WATER_TREATMENT,
1673
- AtoGojsEditorModel.ENUM_TEMPLATES.STORAGE,
1674
- AtoGojsEditorModel.ENUM_TEMPLATES.DOMESTIC_USE,
1675
- AtoGojsEditorModel.ENUM_TEMPLATES.LANDSCAPING_IRRIGATION,
1676
- AtoGojsEditorModel.ENUM_TEMPLATES.OTHER,
1677
- ];
1678
- // ['Process', 'Boiler', 'Cooling Tower', 'ETP Wastewater Treatment', 'ZLD Wastewater Treatment', 'MBR Wastewater Treatment', 'DAF Wastewater Treatment',
1679
- // 'RO Water Treatment', 'Demin Water Treatment', 'Storage', 'Domestic Use', 'Landscaping/Irrigation', 'Other'];
1680
- AtoGojsEditorModel.TYPE_TEMPLATE_WATER_WITHDRAW_OR_DISCHARGE = [
1681
- AtoGojsEditorModel.ENUM_TEMPLATES.FRESH_SURFACE_WATER,
1682
- AtoGojsEditorModel.ENUM_TEMPLATES.BRACKISH_SURFACE_WATER,
1683
- AtoGojsEditorModel.ENUM_TEMPLATES.GROUND_WATER_RENEWABLE,
1684
- AtoGojsEditorModel.ENUM_TEMPLATES.GROUND_WATER_NON_RENEWABLE,
1685
- AtoGojsEditorModel.ENUM_TEMPLATES.PRODUCED_ENTRAINED,
1686
- AtoGojsEditorModel.ENUM_TEMPLATES.THIRD_PARTY_SOURCES,
1687
- AtoGojsEditorModel.ENUM_TEMPLATES.THIRD_PARTY_DESTINATIONS,
1688
- ];
1689
- // ['Fresh surface water', 'Brackish surface water/ seawater', 'Groundwater - Renewable', 'Groundwater - non-renewable', 'Produced / entrained water', 'Third party sources', 'Third party destinations'];
1690
- AtoGojsEditorModel.TYPE_TEMPLATE_ELECTRICITY = [
1691
- AtoGojsEditorModel.ENUM_TEMPLATES.GRID,
1692
- AtoGojsEditorModel.ENUM_TEMPLATES.DIESEL_GENERATORS,
1693
- AtoGojsEditorModel.ENUM_TEMPLATES.NATURAL_GAS_GENERATORS,
1694
- AtoGojsEditorModel.ENUM_TEMPLATES.SOLAR_POWER,
1695
- AtoGojsEditorModel.ENUM_TEMPLATES.TRANSFORMERS,
1696
- AtoGojsEditorModel.ENUM_TEMPLATES.SWITCH_GEARS,
1697
- AtoGojsEditorModel.ENUM_TEMPLATES.MOTOR_CONTROLS,
1698
- AtoGojsEditorModel.ENUM_TEMPLATES.VARIABLE_FREQUENCY_DRIVERS,
1699
- AtoGojsEditorModel.ENUM_TEMPLATES.POWER_DISTRIBUTION_SYSTEMS,
1700
- AtoGojsEditorModel.ENUM_TEMPLATES.LIGHTINGS,
1701
- AtoGojsEditorModel.ENUM_TEMPLATES.GROUNDING,
1702
- AtoGojsEditorModel.ENUM_TEMPLATES.ELECTRIC_METERS,
1703
- AtoGojsEditorModel.ENUM_TEMPLATES.ELECTRIC_INDUSTRIAL_MOTORS,
1704
- AtoGojsEditorModel.ENUM_TEMPLATES.LIGHTING_SYSTEMS,
1705
- AtoGojsEditorModel.ENUM_TEMPLATES.ELECTRIC_HVAC,
1706
- AtoGojsEditorModel.ENUM_TEMPLATES.REFRIGERATION_COOLING_SYSTEMS,
1707
- AtoGojsEditorModel.ENUM_TEMPLATES.PROCESS_CONTROL_AUTOMATION_SYSTEMS,
1708
- AtoGojsEditorModel.ENUM_TEMPLATES.OFFICE_EQUIPMENT,
1709
- AtoGojsEditorModel.ENUM_TEMPLATES.COMPRESSED_AIR_SYSTEMS,
1710
- AtoGojsEditorModel.ENUM_TEMPLATES.PROCESS_EQUIPMENT_MACHINES,
1711
- AtoGojsEditorModel.ENUM_TEMPLATES.MATERIAL_HANDLING_EQUIPMENT,
1712
- AtoGojsEditorModel.ENUM_TEMPLATES.POWER_DISTRIBUTION_CONTROL_SYSTEMS,
1713
- AtoGojsEditorModel.ENUM_TEMPLATES.PUMP,
1714
- AtoGojsEditorModel.ENUM_TEMPLATES.BATTERY_ENERGY_STORAGE,
1715
- AtoGojsEditorModel.ENUM_TEMPLATES.ELECTRIC_FLYWHEEL_ENERGY_STORAGE,
1716
- AtoGojsEditorModel.ENUM_TEMPLATES.PUMPED_HYDRO_STORAGE,
1717
- AtoGojsEditorModel.ENUM_TEMPLATES.THERMAL_ENERGY_STORAGE,
1718
- AtoGojsEditorModel.ENUM_TEMPLATES.SUPER_CAPACITOR_ENERGY_STORAGE,
1719
- ];
1720
- // ['Grid', 'Diesel Generators', 'Natural gas generators', 'Solar Power', 'Transformers', 'Switchgears', 'MotorControls', 'VariableFrequencyDrives',
1721
- // 'Power distribution systems', 'Lightings', 'Grounding', 'Electric Meters', 'Industrial motors',
1722
- // 'Lighting systems', 'Heating, ventilation, and air conditioning (HVAC) systems', 'Refrigeration and cooling', 'Process control and automation', 'Office equipment', 'Compressed air',
1723
- // 'Process equipment and machines', 'Material handling equipment', 'Power distribution and control', 'Battery energy storage', 'Flywheel energy storage',
1724
- // 'Pumped hydro storage', 'Thermal energy storage', 'Supercapacitor energy storage'];
1725
- AtoGojsEditorModel.TYPE_TEMPLATE_NATURAL_GAS = [
1726
- AtoGojsEditorModel.ENUM_TEMPLATES.NATURAL_GAS_PIPELINES,
1727
- AtoGojsEditorModel.ENUM_TEMPLATES.LIQUEFIED_NATURAL_GAS,
1728
- AtoGojsEditorModel.ENUM_TEMPLATES.COMPRESSED_NATURAL_GAS_PIPELINE,
1729
- AtoGojsEditorModel.ENUM_TEMPLATES.ON_SITE_PRODUCTION,
1730
- AtoGojsEditorModel.ENUM_TEMPLATES.COMPRESSED_NATURAL_GAS_PRODUCTION,
1731
- AtoGojsEditorModel.ENUM_TEMPLATES.BOILERS_AND_HEATERS,
1732
- AtoGojsEditorModel.ENUM_TEMPLATES.FURNACES,
1733
- AtoGojsEditorModel.ENUM_TEMPLATES.POWER_GENERATION,
1734
- AtoGojsEditorModel.ENUM_TEMPLATES.COGENERATION,
1735
- AtoGojsEditorModel.ENUM_TEMPLATES.COMBINED_CYCLE_POWER_PLANTS,
1736
- AtoGojsEditorModel.ENUM_TEMPLATES.FUEL_FOR_VEHICLES_AND_EQUIPMENT,
1737
- AtoGojsEditorModel.ENUM_TEMPLATES.GAS_METERS,
1738
- AtoGojsEditorModel.ENUM_TEMPLATES.BURNERS,
1739
- AtoGojsEditorModel.ENUM_TEMPLATES.FLUE_GAS_ANALYZERS,
1740
- AtoGojsEditorModel.ENUM_TEMPLATES.COMBUSTION_CONTROL_SYSTEMS,
1741
- AtoGojsEditorModel.ENUM_TEMPLATES.GAS_STORAGE_TANKS,
1742
- AtoGojsEditorModel.ENUM_TEMPLATES.GAS_PRESSURE_REGULATORS,
1743
- ];
1744
- // ['Natural gas pipelines', 'Liquefied natural gas', 'Compressed natural gas pipeline', 'On-site production',
1745
- // 'Compressed natural gas production', 'Boilers and heaters', 'Furnaces', 'Power generation', 'Cogeneration', 'Combined cycle power plants',
1746
- // 'Fuel for vehicles and equipment', 'Gas meters', 'Burners', 'Flue gas analyzers', 'Combustion control systems', 'Gas storage tanks',
1747
- // 'Gas pressure regulators'];
1748
- AtoGojsEditorModel.TYPE_TEMPLATE_FUEL = [
1749
- AtoGojsEditorModel.ENUM_TEMPLATES.DIESEL_FUELS,
1750
- AtoGojsEditorModel.ENUM_TEMPLATES.GASON_LINES,
1751
- AtoGojsEditorModel.ENUM_TEMPLATES.BIODIESELS,
1752
- AtoGojsEditorModel.ENUM_TEMPLATES.KEROSENSE,
1753
- AtoGojsEditorModel.ENUM_TEMPLATES.PROPANES,
1754
- AtoGojsEditorModel.ENUM_TEMPLATES.TANKER_TRUCKS,
1755
- AtoGojsEditorModel.ENUM_TEMPLATES.PIPELINE,
1756
- AtoGojsEditorModel.ENUM_TEMPLATES.INDUSTRIAL_BOILERS,
1757
- AtoGojsEditorModel.ENUM_TEMPLATES.GENERATORS,
1758
- AtoGojsEditorModel.ENUM_TEMPLATES.INDUSTRIAL_FURNACES,
1759
- AtoGojsEditorModel.ENUM_TEMPLATES.INDUSTRIAL_OVENS,
1760
- AtoGojsEditorModel.ENUM_TEMPLATES.INDUSTRIAL_VEHICLES_AND_EQUIPMENT,
1761
- AtoGojsEditorModel.ENUM_TEMPLATES.FUEL_METERS,
1762
- AtoGojsEditorModel.ENUM_TEMPLATES.FUEL_DISPENSERS,
1763
- AtoGojsEditorModel.ENUM_TEMPLATES.FUEL_STRORAGE_TANKS,
1764
- AtoGojsEditorModel.ENUM_TEMPLATES.FUEL_FILTRATIONS,
1765
- AtoGojsEditorModel.ENUM_TEMPLATES.FUEL_MANAGEMENTS,
1766
- ];
1767
- // ['DieselFuels', 'Gasonlines', 'Biodiesels', 'Kerosenes', 'Propanes', 'Tanker Trucks',
1768
- // 'Pipeline', 'Industrial boilers', 'Generators', 'Industrial furnaces', 'Industrial ovens', 'Industrial vehicles and equipment',
1769
- // 'FuelMeters', 'FuelDispensers', 'FuelStorageTanks', 'FuelFiltrations', 'FuelManagements'];
1770
- AtoGojsEditorModel.TYPE_TEMPLATE_STEAM = [
1771
- AtoGojsEditorModel.ENUM_TEMPLATES.STEAM_PIPELINE,
1772
- AtoGojsEditorModel.ENUM_TEMPLATES.VALUES,
1773
- AtoGojsEditorModel.ENUM_TEMPLATES.STEAM_TRAPS,
1774
- AtoGojsEditorModel.ENUM_TEMPLATES.PRESSURE_REGULATORS,
1775
- AtoGojsEditorModel.ENUM_TEMPLATES.SAFETY_VALUES_AND_EQUIPMENT,
1776
- AtoGojsEditorModel.ENUM_TEMPLATES.CONDENSATE_RETURN_SYSTEM,
1777
- AtoGojsEditorModel.ENUM_TEMPLATES.DEAERATORS,
1778
- AtoGojsEditorModel.ENUM_TEMPLATES.FEEDWATER_PUMPS,
1779
- AtoGojsEditorModel.ENUM_TEMPLATES.BLOWDOWN_TANKS,
1780
- AtoGojsEditorModel.ENUM_TEMPLATES.EXPANSION_TANKS,
1781
- AtoGojsEditorModel.ENUM_TEMPLATES.HEAT_EXCHANGERS,
1782
- AtoGojsEditorModel.ENUM_TEMPLATES.TURBINES,
1783
- ];
1784
- // ['Valves', 'Steam Traps', 'Pressure Regulator', 'Safety Valves and Equipment', 'Condensate Return System', 'Deaerators',
1785
- // 'Feedwater Pumps', 'Blowdown Tanks', 'Expansion Tanks', 'Heat Exchangers', 'Turbines'];
1786
- AtoGojsEditorModel.TYPE_TEMPLATE_SPECIAL = [
1787
- AtoGojsEditorModel.ENUM_TEMPLATES.SPECIAL_PROCESS,
1788
- AtoGojsEditorModel.ENUM_TEMPLATES.SPECIAL_STORAGE,
1789
- AtoGojsEditorModel.ENUM_TEMPLATES.SPECIAL_STORE,
1790
- AtoGojsEditorModel.ENUM_TEMPLATES.SPECIAL_DISCHARGE,
1791
- AtoGojsEditorModel.ENUM_TEMPLATES.SPECIAL_OTHER,
1792
- ];
1793
- AtoGojsEditorModel.TEMPLATE_DUPLICATE = {
1794
- [AtoGojsEditorModel.ENUM_TEMPLATES.STEAM_PIPELINE]: AtoGojsEditorModel.ENUM_TEMPLATES.PIPELINE,
1795
- [AtoGojsEditorModel.ENUM_TEMPLATES.BOILER_ENERGY]: AtoGojsEditorModel.ENUM_TEMPLATES.BOILER,
1796
- [AtoGojsEditorModel.ENUM_TEMPLATES.COOLING_TOWER_ENERGY]: AtoGojsEditorModel.ENUM_TEMPLATES.COOLING_TOWER,
1797
- };
1798
- })(AtoGojsEditorModel || (AtoGojsEditorModel = {}));
1799
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29qcy1lZGl0b3IubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvbW9kZWxzL2dvanMtZWRpdG9yLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXJFLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsY0FBYyxDQUFNO0lBQ3BCLElBQUksQ0FBTSxDQUFDLHlCQUF5QjtJQUVwQyxZQUFZLElBQVM7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBRUQsV0FBaUIsa0JBQWtCO0lBQ3BCLDRCQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ2Ysd0NBQXFCLEdBQUcsRUFBRSxDQUFDO0lBQzNCLHdDQUFxQixHQUFHLEVBQUUsQ0FBQztJQUMzQix3Q0FBcUIsR0FBRyxtQkFBQSxTQUFTLEdBQUcsbUJBQUEscUJBQXFCLENBQUM7SUFDMUQseUNBQXNCLEdBQUcsbUJBQUEsU0FBUyxHQUFHLG1CQUFBLHFCQUFxQixDQUFDO0lBQzNELHVDQUFvQixHQUFHLEVBQUUsQ0FBQztJQUMxQixvQ0FBaUIsR0FBRyxHQUFHLENBQUM7SUFDckMsSUFBWSxrQkFJWDtJQUpELFdBQVksa0JBQWtCO1FBQzVCLHlDQUFtQixDQUFBO1FBQ25CLDZDQUF1QixDQUFBO1FBQ3ZCLDRDQUFzQixDQUFBO0lBQ3hCLENBQUMsRUFKVyxrQkFBa0IsR0FBbEIscUNBQWtCLEtBQWxCLHFDQUFrQixRQUk3QjtJQUVZLDhCQUFXLEdBQUc7UUFDekI7WUFDRSxJQUFJLEVBQUUsWUFBWTtZQUNsQixHQUFHLEVBQUUsa0JBQWtCLENBQUMsSUFBSTtTQUM3QjtRQUNEO1lBQ0UsSUFBSSxFQUFFLGdCQUFnQjtZQUN0QixHQUFHLEVBQUUsa0JBQWtCLENBQUMsSUFBSTtTQUM3QjtR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LGNBQWMsQ0FBQyxlQUFlO1FBQ2pELGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxRQUFRO0tBQzNDLENBQUM7SUFDRiwySEFBMkg7SUFDM0gsMEZBQTBGO0lBQzdFLHdDQUFxQixHQUFhO1FBQzdDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxlQUFlO1FBQ2pELGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxlQUFlO1FBQ2pELGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxhQUFhO1FBQy9DLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxpQkFBaUI7UUFDbkQsa0JBQWtCLENBQUMsY0FBYyxDQUFDLGFBQWE7S0FDaEQsQ0FBQztJQUVXLHFDQUFrQixHQUFRO1FBQ3JDLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxRQUFRO1FBQzlGLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxNQUFNO1FBQzNGLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLEVBQUUsa0JBQWtCLENBQUMsY0FBYyxDQUFDLGFBQWE7S0FDNUcsQ0FBQztBQUNGLENBQUMsRUFuNURnQixrQkFBa0IsS0FBbEIsa0JBQWtCLFFBbTVEbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBVE9fRUNPTVBPTkVOVF9QTEFOVF9UWVBFIH0gZnJvbSAnLi4vY29uc3RhbnRzL3ZhbHVlLmNvbnN0JztcblxuZXhwb3J0IGNsYXNzIEF0b0dvanNFZGl0b3JNb2RlbCB7XG4gIGluaXRpYWxPcHRpb25zOiBhbnk7XG4gIGRhdGE6IGFueTsgLy8gRmxvd0dvSnNDb21wb25lbnRNb2RlbFxuXG4gIGNvbnN0cnVjdG9yKGRhdGE6IGFueSkge1xuICAgIHRoaXMuZGF0YSA9IGRhdGE7XG4gIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBBdG9Hb2pzRWRpdG9yTW9kZWwge1xuICBleHBvcnQgY29uc3QgR1JJRF9TSVpFID0gMjA7XG4gIGV4cG9ydCBjb25zdCBCQVNJQ19HUklEX0lOVEVSVkFMX1ggPSAyNDtcbiAgZXhwb3J0IGNvbnN0IEJBU0lDX0dSSURfSU5URVJWQUxfWSA9IDEwO1xuICBleHBvcnQgY29uc3QgQkFTSUNfR1JJRF9TSVpFX1dJRFRIID0gR1JJRF9TSVpFICogQkFTSUNfR1JJRF9JTlRFUlZBTF9YO1xuICBleHBvcnQgY29uc3QgQkFTSUNfR1JJRF9TSVpFX0hFSUdIVCA9IEdSSURfU0laRSAqIEJBU0lDX0dSSURfSU5URVJWQUxfWTtcbiAgZXhwb3J0IGNvbnN0IERJU1RBTkNFX0xBU1RfVE9fQUREID0gNTA7XG4gIGV4cG9ydCBjb25zdCBQTEFOVF9DRUxMX0hFSUdIVCA9IDE2MDtcbiAgZXhwb3J0IGVudW0gRU5VTV9MQVlPVVRfRURJVE9SIHtcbiAgICBBVVRPID0gJ0FVVE8gQUxJR04nLFxuICAgIEdSSUQgPSAnR1JJRCBTVVBQT1JURUQnLFxuICAgIEZSRUVGT1JNID0gJ0ZSRUUgRk9STScsXG4gIH1cblxuICBleHBvcnQgY29uc3QgTEFZT1VUX0xJU1QgPSBbXG4gICAge1xuICAgICAgbmFtZTogJ0F1dG8tYWxpZ24nLFxuICAgICAga2V5OiBFTlVNX0xBWU9VVF9FRElUT1IuQVVUTyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdHcmlkIFN1cHBvcnRlZCcsXG4gICAgICBrZXk6IEVOVU1fTEFZT1VUX0VESVRPUi5HUklELFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ0ZyZWVmb3JtJyxcbiAgICAgIGtleTogRU5VTV9MQVlPVVRfRURJVE9SLkZSRUVGT1JNLFxuICAgIH0sXG4gIF07XG5cbiAgZXhwb3J0IGVudW0gRU5VTV9DT0xPUlMge1xuICAgIFJFRCA9ICcjRUM3QzRFJyxcbiAgICBPUkFOR0UgPSAnI0VCQjg2OCcsXG4gICAgQkxVRSA9ICcjODFCOEZGJyxcbiAgICBMSUdIVF9CTFVFID0gJyNGNEY2RkInLFxuICAgIExJR0hUX1NLWV9CTFVFID0gJyNjZmU3ZmQnLFxuICAgIFdISVRFID0gJyNGRkZGRkYnLFxuICAgIEdSQVkgPSAnIzkxOUNBNScsXG4gICAgQ0VSVUxFQU4gPSAnIzAwNjJBOScsXG4gICAgVklWSURfVklPTEVUID0gJyM4MDQxODAnLFxuICAgIFJFU09MVVRJT05fQkxVRSA9ICcjMkQzQjc3JyxcbiAgICBDQVNITUVSRSA9ICcjRDZBQjk1JyxcbiAgICBHQUxMSUFOTyA9ICcjRTA5RjI1JyxcbiAgICBGT1VOVEFJTl9CTFVFID0gJyM1NEJCQkEnLFxuICAgIEVMRl9HUkVFTiA9ICcjMTk5QzY5JyxcbiAgICBNRURJVU1fUkVEX1ZJT0xFVCA9ICcjQTg0MzhEJyxcbiAgICBHUkFORElTID0gJyNGQkM5NkMnLFxuICAgIFNBTE1PTiA9ICcjRjQ3NzY5JyxcbiAgICBOSUdIVF9SSURFUiA9ICcjMkMyQzJDJyxcbiAgICBBTElaQVJJTiA9ICcjRUMxQjI0JyxcbiAgICBMSU5LX1dBVEVSID0gJyNDQUQzREInLFxuICAgIFpJUkNPTiA9ICcjRTVFQkVCJyxcbiAgICBDRVJVTEVBTl9BTElDRV9CTFVFID0gJyNFNkYwRjcnLFxuICAgIERBTlVCRSA9ICcjNzE5N0NBJyxcbiAgICBEQU5VQkVfQUxJQ0VfQkxVRSA9ICcjRjFGNUZBJyxcbiAgICBBWlVSRSA9ICcjRUVGOEY4JyxcbiAgICBPTERfTEFDRSA9ICcjRkNGNkVBJyxcbiAgICBDQVJST1RfT1JBTkdFID0gJyNGNjkxMjInLFxuICAgIEZMQU1JTkdPID0gJyNFOTVGNDcnLFxuICAgIFNOT1cgPSAnI0ZFRjdGNicsXG4gICAgTElHSFRfU0tZX0JMVUVfMiA9ICcjOTJCOUY5JyxcbiAgICBSRUdFTlRfU1RfQkxVRSA9ICcjODdjZWU3JyxcbiAgICAvLyAgOThDREUwXG4gIH1cblxuICBleHBvcnQgZW51bSBFTlVNX0xJTktfVFlQRVMge1xuICAgIFNJTVBMRSA9ICdzaW1wbGUnLFxuICAgIFBJUEVfQU5JTUFUSU9OID0gJ3BpcGUgYW5pbWF0aW9uJyxcbiAgICBQSVBFID0gJ3BpcGUnLFxuICAgIFBJUEVfSElEREVOID0gJ3BpcGUgaGlkZGVuJyxcbiAgfVxuXG4gIC8vIENvbXBvbmVudHMgdHlwZXNcbiAgZXhwb3J0IGVudW0gRU5VTV9URU1QTEFURVMge1xuICAgIFNUT1JBR0UgPSAnU3RvcmFnZScsXG4gICAgQ09PTElOR19UT1dFUiA9ICdDb29saW5nIFRvd2VyJyxcblxuICAgIFdBVEVSX1RSRUFUTUVOVCA9ICdXYXRlciBUcmVhdG1lbnQnLFxuICAgIERFTUlOX1dBVEVSX1RSRUFUTUVOVCA9ICdEZW1pbiBXYXRlciBUcmVhdG1lbnQnLFxuICAgIFJPX1dBVEVSX1RSRUFUTUVOVCA9ICdSTyBXYXRlciBUcmVhdG1lbnQnLFxuXG4gICAgRE9NRVNUSUNfVVNFID0gJ0RvbWVzdGljIFVzZScsXG4gICAgUFJPQ0VTUyA9ICdQcm9jZXNzJyxcbiAgICBCT0lMRVIgPSAnQm9pbGVyJyxcblxuICAgIFdBU1RFV0FURVJfVFJFQVRNRU5UID0gJ1dhc3Rld2F0ZXIgVHJlYXRtZW50JyxcbiAgICBEQUZfV0FTVEVXQVRFUl9UUkVBVE1FTlQgPSAnREFGIFdhc3Rld2F0ZXIgVHJlYXRtZW50JyxcbiAgICBFVFBfV0FTVEVXQVRFUl9UUkVBVE1FTlQgPSAnRVRQIFdhc3Rld2F0ZXIgVHJlYXRtZW50JyxcbiAgICBNQlJfV0FTVEVXQVRFUl9UUkVBVE1FTlQgPSAnTUJSIFdhc3Rld2F0ZXIgVHJlYXRtZW50JyxcbiAgICBaTERfV0FTVEVXQVRFUl9UUkVBVE1FTlQgPSAnWkxEIFdhc3Rld2F0ZXIgVHJlYXRtZW50JyxcblxuICAgIE9USEVSID0gJ090aGVyJyxcbiAgICBMQU5EU0NBUElOR19JUlJJR0FUSU9OID0gJ0xhbmRzY2FwaW5nL0lycmlnYXRpb24nLFxuICAgIFRFWFRfTk9ERSA9ICdUZXh0Tm9kZScsXG4gICAgVkFMVUVfTk9ERSA9ICdWYWx1ZU5vZGUnLFxuICAgIERBVEFfQk9YID0gJ0RhdGFCb3gnLFxuICAgIFZBTFVFX0xBQkVMID0gJ1ZhbHVlTGFiZWwnLFxuICAgIEVNUFRZID0gJ0VtcHR5JyxcblxuICAgIFNQRUNJQUxfUFJPQ0VTUyA9ICdTUEVDSUFMX1BST0NFU1MnLFxuICAgIFNQRUNJQUxfU1RPUkUgPSAnU1BFQ0lBTF9TVE9SRScsXG4gICAgU1BFQ0lBTF9TVE9SQUdFID0gJ1NUT1JBR0UnLFxuICAgIFNQRUNJQUxfRElTQ0hBUkdFID0gJ1NQRUNJQUxfRElTQ0hBUkdFJyxcbiAgICBTUEVDSUFMX09USEVSID0gJ1NQRUNJQUxfT1RIRVInLFxuXG4gICAgLy8gVEFOS0VSID0gJ1RhbmtlcicsXG4gICAgLy8gUkFJTl9XQVRFUiA9ICdSYWlud2F0ZXInLFxuICAgIEZSRVNIX1NVUkZBQ0VfV0FURVIgPSAnRnJlc2ggc3VyZmFjZSB3YXRlcicsIC8vICdSQUlOX1dBVEVSJyxcbiAgICBUSElSRF9QQVJUWV9TT1VSQ0VTID0gJ1RoaXJkIHBhcnR5IHNvdXJjZXMnLCAvLyBUQU5LRVJcbiAgICBUSElSRF9QQVJUWV9ERVNUSU5BVElPTlMgPSAnVGhpcmQgcGFydHkgZGVzdGluYXRpb25zJyxcbiAgICBHUk9VTkRfV0FURVJfTk9OX1JFTkVXQUJMRSA9ICdHcm91bmR3YXRlciAtIG5vbi1yZW5ld2FibGUnLFxuICAgIFBST0RVQ0VEX0VOVFJBSU5FRCA9ICdQcm9kdWNlZCAvIGVudHJhaW5lZCB3YXRlcicsXG4gICAgQlJBQ0tJU0hfU1VSRkFDRV9XQVRFUiA9ICdCcmFja2lzaCBzdXJmYWNlIHdhdGVyLyBzZWF3YXRlcicsXG5cbiAgICBVVElMSVRZID0gJ1VUSUxJVFknLFxuICAgIEdST1VORF9XQVRFUl9SRU5FV0FCTEUgPSAnR3JvdW5kd2F0ZXIgLSBSZW5ld2FibGUnLFxuICAgIC8vIEVuZXJneVxuICAgIFpPTkUgPSAnRW5lcmd5Wm9uZXMnLFxuICAgIFpPTkVfRU5FUkdZX0lURU0gPSAnU3ViU3lzdGVtJyxcbiAgICAvL0VsZWN0cmljXG4gICAgR1JJRCA9ICdHcmlkJyxcbiAgICBESUVTRUxfR0VORVJBVE9SUyA9ICdEaWVzZWwgR2VuZXJhdG9ycycsXG4gICAgRUxFQ1RSSUNfTUVURVJTID0gJ0VsZWN0cmljIE1ldGVycycsXG5cbiAgICBCQVRURVJZX0VORVJHWV9TVE9SQUdFID0gJ0JhdHRlcnkgZW5lcmd5IHN0b3JhZ2UnLFxuICAgIFRSQU5TRk9STUVSUyA9ICdUcmFuc2Zvcm1lcnMnLFxuICAgIExJR0hUSU5HX1NZU1RFTVMgPSAnTGlnaHRpbmcgc3lzdGVtcycsXG4gICAgTElHSFRJTkdTID0gJ0xpZ2h0aW5ncycsXG5cbiAgICBFTEVDVFJJQ19GTFlXSEVFTF9FTkVSR1lfU1RPUkFHRSA9ICdGbHl3aGVlbCBlbmVyZ3kgc3RvcmFnZScsXG4gICAgUFVNUEVEX0hZRFJPX1NUT1JBR0UgPSAnUHVtcGVkIGh5ZHJvIHN0b3JhZ2UnLFxuICAgIFRIRVJNQUxfRU5FUkdZX1NUT1JBR0UgPSAnVGhlcm1hbCBlbmVyZ3kgc3RvcmFnZScsXG4gICAgU1VQRVJfQ0FQQUNJVE9SX0VORVJHWV9TVE9SQUdFID0gJ1N1cGVyY2FwYWNpdG9yIGVuZXJneSBzdG9yYWdlJyxcbiAgICBTV0lUQ0hfR0VBUlMgPSAnU3dpdGNoZ2VhcnMnLFxuICAgIE1PVE9SX0NPTlRST0xTID0gJ01vdG9yQ29udHJvbHMnLFxuICAgIFZBUklBQkxFX0ZSRVFVRU5DWV9EUklWRVJTID0gJ1ZhcmlhYmxlRnJlcXVlbmN5RHJpdmVzJyxcbiAgICBFTEVDVFJJQ19IVkFDID0gJ0hlYXRpbmcsIHZlbnRpbGF0aW9uLCBhbmQgYWlyIGNvbmRpdGlvbmluZyAoSFZBQykgc3lzdGVtcycsXG4gICAgQ09NUFJFU1NFRF9BSVJfU1lTVEVNUyA9ICdDb21wcmVzc2VkIGFpcicsXG4gICAgUkVGUklHRVJBVElPTl9DT09MSU5HX1NZU1RFTVMgPSAnUmVmcmlnZXJhdGlvbiBhbmQgY29vbGluZycsXG4gICAgUFJPQ0VTU19DT05UUk9MX0FVVE9NQVRJT05fU1lTVEVNUyA9ICdQcm9jZXNzIGNvbnRyb2wgYW5kIGF1dG9tYXRpb24nLFxuICAgIE9GRklDRV9FUVVJUE1FTlQgPSAnT2ZmaWNlIGVxdWlwbWVudCcsXG4gICAgUFJPQ0VTU19FUVVJUE1FTlRfTUFDSElORVMgPSAnUHJvY2VzcyBlcXVpcG1lbnQgYW5kIG1hY2hpbmVzJyxcbiAgICBNQVRFUklBTF9IQU5ETElOR19FUVVJUE1FTlQgPSAnTWF0ZXJpYWwgaGFuZGxpbmcgZXF1aXBtZW50JyxcbiAgICBQT1dFUl9ESVNUUklCVVRJT05fQ09OVFJPTF9TWVNURU1TID0gJ1Bvd2VyIGRpc3RyaWJ1dGlvbiBhbmQgY29udHJvbCcsXG4gICAgUFVNUCA9ICdQdW1wJyxcbiAgICBQT1dFUl9ESVNUUklCVVRJT05fU1lTVEVNUyA9ICdQb3dlciBkaXN0cmlidXRpb24gc3lzdGVtcycsXG4gICAgV0lORF9QT1dFUiA9ICdXaW5kIFBvd2VyJyxcbiAgICBOQVRVUkFMX0dBU19HRU5FUkFUT1JTID0gJ05hdHVyYWwgZ2FzIGdlbmVyYXRvcnMnLFxuICAgIEVMRUNUUklDX0lORFVTVFJJQUxfTU9UT1JTID0gJ0luZHVzdHJpYWwgbW90b3JzJyxcbiAgICBHUk9VTkRJTkcgPSAnR3JvdW5kaW5nJyxcblxuICAgIFxuXG4gICAgLy8gRnVlbFxuICAgIEZVRUxTID0gJ0Z1ZWxzJyxcbiAgICBESUVTRUxfRlVFTFMgPSAnRGllc2VsRnVlbHMnLFxuICAgIEdBU09OX0xJTkVTID0gJ0dhc29ubGluZXMnLFxuICAgIEJJT0RJRVNFTFMgPSAnQmlvZGllc2VscycsXG4gICAgS0VST1NFTlNFID0gJ0tlcm9zZW5lcycsXG4gICAgUFJPUEFORVMgPSAnUHJvcGFuZXMnLFxuXG4gICAgVEFOS0VSX1RSVUNLUyA9ICdUYW5rZXIgVHJ1Y2tzJyxcbiAgICBQSVBFTElORSA9ICdQaXBlbGluZScsXG5cbiAgICBJTkRVU1RSSUFMX0JPSUxFUlMgPSAnSW5kdXN0cmlhbCBib2lsZXJzJyxcbiAgICBHRU5FUkFUT1JTID0gJ0dlbmVyYXRvcnMnLFxuICAgIElORFVTVFJJQUxfRlVSTkFDRVMgPSAnSW5kdXN0cmlhbCBmdXJuYWNlcycsXG4gICAgSU5EVVNUUklBTF9PVkVOUyA9ICdJbmR1c3RyaWFsIG92ZW5zJyxcbiAgICBJTkRVU1RSSUFMX1ZFSElDTEVTX0FORF9FUVVJUE1FTlQgPSAnSW5kdXN0cmlhbCB2ZWhpY2xlcyBhbmQgZXF1aXBtZW50JyxcblxuICAgIEZVRUxfTUVURVJTID0gJ0Z1ZWxNZXRlcnMnLFxuICAgIEZVRUxfRElTUEVOU0VSUyA9ICdGdWVsRGlzcGVuc2VycycsXG4gICAgRlVFTF9TVFJPUkFHRV9UQU5LUyA9ICdGdWVsU3RvcmFnZVRhbmtzJyxcbiAgICBGVUVMX0ZJTFRSQVRJT05TID0gJ0Z1ZWxGaWx0cmF0aW9ucycsXG4gICAgRlVFTF9NQU5BR0VNRU5UUyA9ICdGdWVsTWFuYWdlbWVudHMnLFxuXG4gICAgLy8gR2FzXG4gICAgTkFUVVJBTF9HQVNfUElQRUxJTkVTID0gJ05hdHVyYWwgZ2FzIHBpcGVsaW5lcycsXG4gICAgTElRVUVGSUVEX05BVFVSQUxfR0FTID0gJ0xpcXVlZmllZCBuYXR1cmFsIGdhcycsXG4gICAgQ09NUFJFU1NFRF9OQVRVUkFMX0dBU19QSVBFTElORSA9ICdDb21wcmVzc2VkIG5hdHVyYWwgZ2FzIHBpcGVsaW5lJyxcbiAgICBPTl9TSVRFX1BST0RVQ1RJT04gPSAnT24tc2l0ZSBwcm9kdWN0aW9uJyxcbiAgICBDT01QUkVTU0VEX05BVFVSQUxfR0FTX1BST0RVQ1RJT04gPSAnQ29tcHJlc3NlZCBuYXR1cmFsIGdhcyBwcm9kdWN0aW9uJyxcbiAgICBCT0lMRVJTX0FORF9IRUFURVJTID0gJ0JvaWxlcnMgYW5kIGhlYXRlcnMnLFxuICAgIEZVUk5BQ0VTID0gJ0Z1cm5hY2VzJyxcbiAgICBQT1dFUl9HRU5FUkFUSU9OID0gJ1Bvd2VyIGdlbmVyYXRpb24nLFxuICAgIENPR0VORVJBVElPTiA9ICdDb2dlbmVyYXRpb24nLFxuICAgIENPTUJJTkVEX0NZQ0xFX1BPV0VSX1BMQU5UUyA9ICdDb21iaW5lZCBjeWNsZSBwb3dlciBwbGFudHMnLFxuICAgIEZVRUxfRk9SX1ZFSElDTEVTX0FORF9FUVVJUE1FTlQgPSAnRnVlbCBmb3IgdmVoaWNsZXMgYW5kIGVxdWlwbWVudCcsXG4gICAgR0FTX01FVEVSUyA9ICdHYXMgbWV0ZXJzJyxcbiAgICBCVVJORVJTID0gJ0J1cm5lcnMnLFxuICAgIEZMVUVfR0FTX0FOQUxZWkVSUyA9ICdGbHVlIGdhcyBhbmFseXplcnMnLFxuICAgIENPTUJVU1RJT05fQ09OVFJPTF9TWVNURU1TID0gJ0NvbWJ1c3Rpb24gY29udHJvbCBzeXN0ZW1zJyxcbiAgICBHQVNfU1RPUkFHRV9UQU5LUyA9ICdHYXMgc3RvcmFnZSB0YW5rcycsXG4gICAgR0FTX1BSRVNTVVJFX1JFR1VMQVRPUlMgPSAnR2FzIHByZXNzdXJlIHJlZ3VsYXRvcnMnLFxuICAgIE5BVFVSQUxfR0FTID0gJ05hdHVyYWwgR2FzJyxcbiAgICAvLyBTb2xhclxuICAgIFNPTEFSX1BPV0VSID0gJ1NvbGFyIFBvd2VyJyxcbiAgICBQT1dFUl9DT05ESVRJT05JTkdfVU5JVCA9ICdQb3dlciBjb25kaXRpb25pbmcgdW5pdCAoUENVKScsXG4gICAgSU5WRVJURVJTID0gJ0ludmVydGVycycsXG4gICAgQkFUVEVSSUVTID0gJ0JhdHRlcmllcycsXG5cbiAgICAvLyBVbmNhdGVnb3JpemVkIG9mIFByb3h5IFBsYW50XG4gICAgVU5DQVRFR09SSVpFRCA9ICdVbmNhdGVnb3JpemVkJyxcblxuICAgIC8vIFBsYW50IENlbGxcbiAgICBQTEFOVF9DRUxMID0gJ1BsYW50IENlbGwnLFxuICAgIElOUFVUX1BMQU5UX0NFTEwgPSAnSW5wdXQgUGxhbnQgQ2VsbCcsXG4gICAgT1VUUFVUX1BMQU5UX0NFTEwgPSAnT3V0cHV0IFBsYW50IENlbGwnLFxuXG4gICAgUExBTlRfQ0VMTF9JTlBVVF9HUk9VUCA9ICdQQyBJbnB1dCBHcm91cCcsXG4gICAgUExBTlRfQ0VMTF9PVVRQVVRfR1JPVVAgPSAnUEMgT3V0cHV0IEdyb3VwJyxcblxuICAgIC8vIEltYWdlXG4gICAgSU1BR0VfVEVNUExBVEUgPSAnSW1hZ2UgVGVtcGxhdGUnLFxuICAgIFBBUkFNX1RBQkxFID0gJ1BhcmFtIFRhYmxlJyxcbiAgICBNQVNTX0JBTEFOQ0UgPSAnTWFzcyBCYWxhbmNlJyxcblxuICAgIC8vIFN0ZWFtIFR5cGVcbiAgICBTVEVBTV9QSVBFTElORSA9ICdTdGVhbSBwaXBlbGluZScsXG4gICAgVkFMVUVTID0gJ1ZhbHZlcycsXG4gICAgU1RFQU1fVFJBUFMgPSAnU3RlYW0gVHJhcHMnLFxuICAgIFBSRVNTVVJFX1JFR1VMQVRPUlMgPSAnUHJlc3N1cmUgUmVndWxhdG9yJyxcbiAgICBTQUZFVFlfVkFMVUVTX0FORF9FUVVJUE1FTlQgPSAnU2FmZXR5IFZhbHZlcyBhbmQgRXF1aXBtZW50JyxcbiAgICBDT05ERU5TQVRFX1JFVFVSTl9TWVNURU0gPSAnQ29uZGVuc2F0ZSBSZXR1cm4gU3lzdGVtJyxcbiAgICBERUFFUkFUT1JTID0gJ0RlYWVyYXRvcnMnLFxuICAgIEZFRURXQVRFUl9QVU1QUyA9ICdGZWVkd2F0ZXIgUHVtcHMnLFxuICAgIEJMT1dET1dOX1RBTktTID0gJ0Jsb3dkb3duIFRhbmtzJyxcbiAgICBFWFBBTlNJT05fVEFOS1MgPSAnRXhwYW5zaW9uIFRhbmtzJyxcbiAgICBIRUFUX0VYQ0hBTkdFUlMgPSAnSGVhdCBFeGNoYW5nZXJzJyxcbiAgICBUVVJCSU5FUyA9ICdUdXJiaW5lcycsXG5cbiAgICAvLyBQbGFudCBCYXNpY1xuICAgIEdST1VQX0JBU0lDX0NPTVBPTkVOVCA9ICdHcm91cCBCYXNpYyBDb21wb25lbnQnLFxuICAgIFRFWFRfTEFCRUwgPSAnbGFiZWwnLFxuXG4gICAgLy8gVHlwZSBHcm91cCBkdXBsaWNhdGUgRW5lcmd5IHdpdGggV2F0ZXJcbiAgICBCT0lMRVJfRU5FUkdZID0gJ0JvaWxlciBFbmVyZ3knLFxuICAgIENPT0xJTkdfVE9XRVJfRU5FUkdZID0gJ0Nvb2xpbmcgVG93ZXIgRW5lcmd5JyxcbiAgfVxuXG4gIC8vIFN5c3RlbSBUeXBlc1xuICBleHBvcnQgZW51bSBFTlVNX1RZUEVTIHtcbiAgICBTVE9SQUdFID0gJ1dhdGVyU3RvcmFnZVRhbmtzJyxcblxuICAgIFdBVEVSX1RSRUFUTUVOVCA9ICdXYXRlclRyZWF0bWVudFByb2Nlc3NlcycsXG4gICAgREVNSU5fV0FURVJfVFJFQVRNRU5UID0gJ0RlbWluV2F0ZXJUcmVhdG1lbnRzJyxcbiAgICBST19XQVRFUl9UUkVBVE1FTlQgPSAnUk9XYXRlclRyZWF0bWVudHMnLFxuXG4gICAgUFJPQ0VTUyA9ICdHZW5lcmljUHJvY2Vzc2VzJyxcbiAgICBTUEVDSUFMX1NUT1JBR0UgPSAnU1RPUkFHRScsXG5cbiAgICBXQVNURVdBVEVSX1RSRUFUTUVOVCA9ICdXYXN0ZVdhdGVyVHJlYXRtZW50UHJvY2Vzc2VzJyxcbiAgICBEQUZfV0FTVEVXQVRFUl9UUkVBVE1FTlQgPSAnREFGV2FzdGVXYXRlclRyZWF0bWVudHMnLFxuICAgIEVUUF9XQVNURVdBVEVSX1RSRUFUTUVOVCA9ICdFVFBXYXN0ZVdhdGVyVHJlYXRtZW50cycsXG4gICAgTUJSX1dBU1RFV0FURVJfVFJFQVRNRU5UID0gJ01CUldhc3RlV2F0ZXJUcmVhdG1lbnRzJyxcbiAgICBaTERfV0FTVEVXQVRFUl9UUkVBVE1FTlQgPSAnWkxEV2FzdGVXYXRlclRyZWF0bWVudHMnLFxuXG4gICAgRE9NRVNUSUNfVVNFID0gJ0RvbWVzdGljVXNlJyxcbiAgICBDT09MSU5HX1RPV0VSID0gJ0Nvb2xpbmdUb3dlcnMnLFxuICAgIEJPSUxFUiA9ICdCb2lsZXJzJyxcbiAgICBPVEhFUiA9ICdPdGhlcldhdGVyVXNlJyxcbiAgICBMQU5EU0NBUElOR19JUlJJR0FUSU9OID0gJ0lycmlnYXRpb25Vc2UnLFxuXG4gICAgRlJFU0hfU1VSRkFDRV9XQVRFUiA9ICdGcmVzaCBzdXJmYWNlIHdhdGVyJywgLy8gJ1JBSU5fV0FURVInLFxuICAgIFRISVJEX1BBUlRZX1NPVVJDRVMgPSAnVGhpcmQgcGFydHkgc291cmNlcycsIC8vIFRBTktFUlxuICAgIFRISVJEX1BBUlRZX0RFU1RJTkFUSU9OUyA9ICdUaGlyZCBwYXJ0eSBkZXN0aW5hdGlvbnMnLFxuICAgIEdST1VORF9XQVRFUl9OT05fUkVORVdBQkxFID0gJ0dyb3VuZHdhdGVyIC0gbm9uLXJlbmV3YWJsZScsXG4gICAgUFJPRFVDRURfRU5UUkFJTkVEID0gJ1Byb2R1Y2VkIC8gZW50cmFpbmVkIHdhdGVyJyxcblxuICAgIC8vIEZSRVNIX1NVUkZBQ0VfV0FFUiA9ICdGcmVzaCBzdXJmYWNlIHdhdGVyJyxcbiAgICBCUkFDS0lTSF9TVVJGQUNFX1dBVEVSID0gJ0JyYWNraXNoIHN1cmZhY2Ugd2F0ZXIvIHNlYXdhdGVyJyxcbiAgICBHUk9VTkRfV0FURVJfUkVORVdBQkxFID0gJ0dyb3VuZHdhdGVyIC0gUmVuZXdhYmxlJyxcblxuICAgIFRBTktFUl9XQVRFUiA9ICdUYW5rZXIgV2F0ZXInLFxuICAgIC8vIEVORVJHWVxuICAgIFpPTkUgPSAnRW5lcmd5Wm9uZXMnLFxuICAgIC8vIEVsZWN0cmljXG4gICAgRUxFQ1RSSUNfU09VUkNFUyA9ICdFbGVjdHJpY1NvdXJjZXMnLFxuICAgIEdSSUQgPSAnR3JpZCBQb3dlcicsXG4gICAgRElFU0VMX0dFTkVSQVRPUlMgPSAnRGllc2VsIEdlbmVyYXRvcnMnLFxuICAgIEVMRUNUUklDX01FVEVSUyA9ICdFbGVjdHJpY01ldGVycycsXG4gICAgVFJBTlNGT1JNRVJTID0gJ1RyYW5zZm9ybWVycycsXG4gICAgLy8gRWxlY3RyaWMgTmV3XG4gICAgQkFUVEVSWV9FTkVSR1lfU1RPUkFHRSA9ICdCYXR0ZXJ5IGVuZXJneSBzdG9yYWdlJyxcbiAgICBFTEVDVFJJQ19QUk9EVUNUSU9OUyA9ICdFbGVjdHJpY1Byb2R1Y3Rpb25zJyxcbiAgICBFTEVDVFJJQ19DT01TVU1JTkdTID0gJ0VsZWN0cmljQ29uc3VtaW5ncycsXG4gICAgRUxFQ1RSSUNfU1RPUkFHRVMgPSAnRWxlY3RyaWNpdHlTdG9yYWdlcycsXG4gICAgRUxFQ1RSSUNfRkxZV0hFRUxfRU5FUkdZX1NUT1JBR0UgPSAnRmx5d2hlZWwgZW5lcmd5IHN0b3JhZ2UnLFxuICAgIFBVTVBFRF9IWURST19TVE9SQUdFID0gJ1B1bXBlZCBoeWRybyBzdG9yYWdlJyxcbiAgICBUSEVSTUFMX0VORVJHWV9TVE9SQUdFID0gJ1RoZXJtYWwgZW5lcmd5IHN0b3JhZ2UnLFxuICAgIFNVUEVSX0NBUEFDSVRPUl9FTkVSR1lfU1RPUkFHRSA9ICdTdXBlcmNhcGFjaXRvciBlbmVyZ3kgc3RvcmFnZScsXG4gICAgU1dJVENIX0dFQVJTID0gJ1N3aXRjaGdlYXJzJyxcbiAgICBNT1RPUl9DT05UUk9MUyA9ICdNb3RvckNvbnRyb2xzJyxcbiAgICBWQVJJQUJMRV9GUkVRVUVOQ1lfRFJJVkVSUyA9ICdWYXJpYWJsZUZyZXF1ZW5jeURyaXZlcycsXG4gICAgTElHSFRJTkdfU1lTVEVNUyA9ICdMaWdodGluZyBzeXN0ZW1zJyxcbiAgICBMSUdIVElOR1MgPSAnTGlnaHRpbmdzJyxcbiAgICBFTEVDVFJJQ19IVkFDID0gJ0hlYXRpbmcsIHZlbnRpbGF0aW9uLCBhbmQgYWlyIGNvbmRpdGlvbmluZyAoSFZBQykgc3lzdGVtcycsXG4gICAgQ09NUFJFU1NFRF9BSVJfU1lTVEVNUyA9ICdDb21wcmVzc2VkIGFpcicsXG4gICAgUkVGUklHRVJBVElPTl9DT09MSU5HX1NZU1RFTVMgPSAnUmVmcmlnZXJhdGlvbiBhbmQgY29vbGluZycsXG4gICAgUFJPQ0VTU19DT05UUk9MX0FVVE9NQVRJT05fU1lTVEVNUyA9ICdQcm9jZXNzIGNvbnRyb2wgYW5kIGF1dG9tYXRpb24nLFxuICAgIFBST0NFU1NfRVFVSVBNRU5UX01BQ0hJTkVTID0gJ1Byb2Nlc3MgZXF1aXBtZW50IGFuZCBtYWNoaW5lcycsXG4gICAgT0ZGSUNFX0VRVUlQTUVOVCA9ICdPZmZpY2UgZXF1aXBtZW50JyxcbiAgICBNQVRFUklBTF9IQU5ETElOR19FUVVJUE1FTlQgPSAnTWF0ZXJpYWwgaGFuZGxpbmcgZXF1aXBtZW50JyxcbiAgICBQT1dFUl9ESVNUUklCVVRJT05fQ09OVFJPTF9TWVNURU1TID0gJ1Bvd2VyIGRpc3RyaWJ1dGlvbiBhbmQgY29udHJvbCcsXG4gICAgUFVNUCA9ICdQdW1wJyxcbiAgICBQT1dFUl9ESVNUUklCVVRJT05fU1lTVEVNUyA9ICdQb3dlckRpc3RyaWJ1dGlvbnMnLFxuICAgIFdJTkRfUE9XRVIgPSAnV2luZCBQb3dlcicsXG4gICAgTkFUVVJBTF9HQVNfR0VORVJBVE9SUyA9ICdOYXR1cmFsIGdhcyBnZW5lcmF0b3JzJyxcbiAgICBFTEVDVFJJQ19JTkRVU1RSSUFMX01PVE9SUyA9ICdJbmR1c3RyaWFsIG1vdG9ycycsXG4gICAgR1JPVU5ESU5HID0gJ0dyb3VuZGluZ3MnLFxuICAgIEVsZWN0cmljYWxzID0gJ0VsZWN0cmljYWxzJyxcblxuICAgIC8vIEdhc1xuICAgIE5BVFVSQUxfR0FTX1BJUEVMSU5FUyA9ICdOYXR1cmFsIGdhcyBwaXBlbGluZXMnLFxuICAgIExJUVVFRklFRF9OQVRVUkFMX0dBUyA9ICdMaXF1ZWZpZWQgbmF0dXJhbCBnYXMgKExORykgc2hpcG1lbnRzJyxcbiAgICBDT01QUkVTU0VEX05BVFVSQUxfR0FTX1BJUEVMSU5FID0gJ0NvbXByZXNzZWQgbmF0dXJhbCBnYXMgcGlwZWxpbmUgKENORyknLFxuICAgIE9OX1NJVEVfUFJPRFVDVElPTiA9ICdPbi1zaXRlIHByb2R1Y3Rpb24nLFxuICAgIENPTVBSRVNTRURfTkFUVVJBTF9HQVNfUFJPRFVDVElPTiA9ICdDb21wcmVzc2VkIG5hdHVyYWwgZ2FzIHByb2R1Y3Rpb24gKENORyknLFxuICAgIEJPSUxFUlNfQU5EX0hFQVRFUlMgPSAnQm9pbGVycyBhbmQgaGVhdGVycycsXG4gICAgRlVSTkFDRVMgPSAnRnVybmFjZXMnLFxuICAgIFBPV0VSX0dFTkVSQVRJT04gPSAnUG93ZXIgZ2VuZXJhdGlvbicsXG4gICAgQ09HRU5FUkFUSU9OID0gJ0NvZ2VuZXJhdGlvbicsXG4gICAgQ09NQklORURfQ1lDTEVfUE9XRVJfUExBTlRTID0gJ0NvbWJpbmVkIGN5Y2xlIHBvd2VyIHBsYW50cycsXG4gICAgRlVFTF9GT1JfVkVISUNMRVNfQU5EX0VRVUlQTUVOVCA9ICdGdWVsIGZvciB2ZWhpY2xlcyBhbmQgZXF1aXBtZW50JyxcbiAgICBHQVNfTUVURVJTID0gJ0dhc01ldGVycycsXG4gICAgQlVSTkVSUyA9ICdCdXJuZXJzJyxcbiAgICBGTFVFX0dBU19BTkFMWVpFUlMgPSAnRmx1ZUdhc0FuYWx5emVycycsXG4gICAgQ09NQlVTVElPTl9DT05UUk9MX1NZU1RFTVMgPSAnQ29uYnVzdGlvbkNvbnRyb2xzJyxcbiAgICBHQVNfU1RPUkFHRV9UQU5LUyA9ICdHYXNTdG9yYWdlVGFua3MnLFxuICAgIEdBU19QUkVTU1VSRV9SRUdVTEFUT1JTID0gJ0dhc1ByZXNzdXJlUmVndWxhdG9ycycsXG4gICAgTkFUVVJBTF9HQVMgPSAnTmF0dXJhbCBHYXMnLFxuICAgIC8vIFRZUEVfQ09NUE9ORU5UIEdhc1xuICAgIEdBU19TT1VSQ0UgPSAnR2FzU291cmNlcycsXG4gICAgR0FTX1BST0RVQ1RJT04gPSAnR2FzUHJvZHVjdGlvbnMnLFxuICAgIEdBU19DT05TVU1JTkdTID0gJ0dhc0NvbnN1bWluZ3MnLFxuICAgIE5BVFVSQUxfR0FTX1NQRUNJQUwgPSAnTmF0dXJhbEdhc2VzJyxcblxuICAgIC8vIEZ1ZWxcbiAgICBGVUVMUyA9ICdGdWVscycsXG4gICAgRElFU0VMX0ZVRUxTID0gJ0RpZXNlbEZ1ZWxzJyxcbiAgICBHQVNPTl9MSU5FUyA9ICdHYXNvbmxpbmVzJyxcbiAgICBCSU9ESUVTRUxTID0gJ0Jpb2RpZXNlbHMnLFxuICAgIEtFUk9TRU5TRSA9ICdLZXJvc2VuZXMnLFxuICAgIFBST1BBTkVTID0gJ1Byb3BhbmVzJyxcblxuICAgIEZVRUxfU09VUkNFUyA9ICdGdWVsU291cmNlcycsXG5cbiAgICBUQU5LRVJfVFJVQ0tTID0gJ1RhbmtlciBUcnVja3MnLFxuICAgIFBJUEVMSU5FID0gJ1BpcGVsaW5lJyxcblxuICAgIEZVRUxfQ09OU1VNSU5HUyA9ICdGdWVsQ29uc3VtaW5ncycsXG5cbiAgICBJTkRVU1RSSUFMX0JPSUxFUlMgPSAnSW5kdXN0cmlhbCBib2lsZXJzJyxcbiAgICBHRU5FUkFUT1JTID0gJ0dlbmVyYXRvcnMnLFxuICAgIElORFVTVFJJQUxfRlVSTkFDRVMgPSAnSW5kdXN0cmlhbCBmdXJuYWNlcycsXG4gICAgSU5EVVNUUklBTF9PVkVOUyA9ICdJbmR1c3RyaWFsIG92ZW5zJyxcbiAgICBJTkRVU1RSSUFMX1ZFSElDTEVTX0FORF9FUVVJUE1FTlQgPSAnSW5kdXN0cmlhbCB2ZWhpY2xlcyBhbmQgZXF1aXBtZW50JyxcblxuICAgIEZVRUxfTUVURVJTID0gJ0Z1ZWxNZXRlcnMnLFxuICAgIEZVRUxfRElTUEVOU0VSUyA9ICdGdWVsRGlzcGVuc2VycycsXG4gICAgRlVFTF9TVFJPUkFHRV9UQU5LUyA9ICdGdWVsU3RvcmFnZVRhbmtzJyxcbiAgICBGVUVMX0ZJTFRSQVRJT05TID0gJ0Z1ZWxGaWx0cmF0aW9ucycsXG4gICAgRlVFTF9NQU5BR0VNRU5UUyA9ICdGdWVsTWFuYWdlbWVudHMnLFxuXG4gICAgLy8gU29sYXJcbiAgICBTT0xBUl9QT1dFUiA9ICdTb2xhciBQb3dlcicsXG4gICAgUE9XRVJfQ09ORElUSU9OSU5HX1VOSVQgPSAnUG93ZXIgY29uZGl0aW9uaW5nIHVuaXQgKFBDVSknLFxuICAgIElOVkVSVEVSUyA9ICdJbnZlcnRlcnMnLFxuICAgIEJBVFRFUklFUyA9ICdCYXR0ZXJpZXMnLFxuXG4gICAgLy8gUGxhbnQgQ2VsbFxuICAgIFBMQU5UX0NFTEwgPSAnUGxhbnRDZWxscycsXG4gICAgUExBTlRfQ0VMTF9JTlBVVF9HUk9VUCA9ICdQQyBJbnB1dCBHcm91cCcsXG4gICAgUExBTlRfQ0VMTF9PVVRQVVRfR1JPVVAgPSAnUEMgT3V0cHV0IEdyb3VwJyxcblxuICAgIC8vIFN0ZWFtXG4gICAgU1RFQU1fU09VUkNFUyA9ICdTdGVhbVNvdXJjZXMnLFxuICAgIFNURUFNX1BJUEVMSU5FID0gJ1N0ZWFtIHBpcGVsaW5lJyxcbiAgICBWQUxVRVMgPSAnVmFsdmVzJyxcbiAgICBTVEVBTV9UUkFQUyA9ICdTdGVhbSBUcmFwcycsXG4gICAgUFJFU1NVUkVfUkVHVUxBVE9SUyA9ICdQcmVzc3VyZSBSZWd1bGF0b3InLFxuICAgIFNBRkVUWV9WQUxVRVNfQU5EX0VRVUlQTUVOVCA9ICdTYWZldHkgVmFsdmVzIGFuZCBFcXVpcG1lbnQnLFxuICAgIENPTkRFTlNBVEVfUkVUVVJOX1NZU1RFTSA9ICdDb25kZW5zYXRlIFJldHVybiBTeXN0ZW0nLFxuICAgIERFQUVSQVRPUlMgPSAnRGVhZXJhdG9ycycsXG4gICAgRkVFRFdBVEVSX1BVTVBTID0gJ0ZlZWR3YXRlciBQdW1wcycsXG4gICAgQkxPV0RPV05fVEFOS1MgPSAnQmxvd2Rvd24gVGFua3MnLFxuICAgIEVYUEFOU0lPTl9UQU5LUyA9ICdFeHBhbnNpb24gVGFua3MnLFxuICAgIEhFQVRfRVhDSEFOR0VSUyA9ICdTdGVhbUNvbnN1bWluZ3MnLFxuICAgIFRVUkJJTkVTID0gJ0VuZXJneUNvbnZlcnRlcnMnLFxuXG4gICAgU1RFQU1fQ09NUE9ORU5UID0gJ1N0ZWFtQ29tcG9uZW50cycsXG4gICAgU1RFQU1fQ09OU1VNSU5HX1NZU1RFTSA9ICdTdGVhbUNvbnN1bWluZ3MnLFxuICAgIEVORVJHWV9DT05WRVJURVIgPSAnRW5lcmd5Q29udmVydGVycycsXG5cbiAgICAvLyBTeXN0ZW0gVHlwZSBHcm91cCBkdXBsaWNhdGUgRW5lcmd5IHdpdGggV2F0ZXJcbiAgICBCT0lMRVJfRU5FUkdZID0gJ0JvaWxlciBFbmVyZ3knLFxuICAgIENPT0xJTkdfVE9XRVJfRU5FUkdZID0gJ0Nvb2xpbmdUb3dlcnMgRW5lcmd5JyxcbiAgfVxuXG4gIGV4cG9ydCBlbnVtIEVOVU1fQ0FURUdPUlkge31cblxuICBleHBvcnQgZW51bSBEQVRBX0NPTExFQ1RJT05fTUVUSE9EIHtcbiAgICBNRUFTVVJFRCA9ICdNZWFzdXJlZCcsXG4gICAgTUFOVUFMID0gJ01hbnVhbCcsXG4gICAgQ09NUFVURUQgPSAnQ29tcHV0ZWQnLFxuICAgIEVTVElNQVRFRCA9ICdFc3RpbWF0ZWQnLFxuICAgIFdBVEVSX0NBUEFDSVRZID0gJ1dhdGVyIENhcGFjaXR5JyxcbiAgICBLRVlfTU9ERUxfQ09NUFVURUQgPSAnTScsXG4gIH1cblxuICBleHBvcnQgY29uc3QgQ09MT1JfQ09MTEVDVElPTl9NRVRIT0Q6IHtcbiAgICBba2V5IGluIEF0b0dvanNFZGl0b3JNb2RlbC5EQVRBX0NPTExFQ1RJT05fTUVUSE9EXTogYW55O1xuICB9ID0ge1xuICAgIFtEQVRBX0NPTExFQ1RJT05fTUVUSE9ELk1FQVNVUkVEXToge1xuICAgICAgbmFtZTogREFUQV9DT0xMRUNUSU9OX01FVEhPRC5NRUFTVVJFRCxcbiAgICAgIGNvbG9yOiBFTlVNX0NPTE9SUy5SRUQsXG4gICAgICBjbGFzc05hbWVDb2xvcjogJ2NvbG9yLWJ1cm50LXNpZW5uYScsXG4gICAgfSxcbiAgICBbREFUQV9DT0xMRUNUSU9OX01FVEhPRC5NQU5VQUxdOiB7XG4gICAgICBuYW1lOiBEQVRBX0NPTExFQ1RJT05fTUVUSE9ELk1BTlVBTCxcbiAgICAgIGNvbG9yOiBFTlVNX0NPTE9SUy5FTEZfR1JFRU4sXG4gICAgICBjbGFzc05hbWVDb2xvcjogJ2NvbG9yLWVsZi1ncmVlbicsXG4gICAgfSxcbiAgICBbREFUQV9DT0xMRUNUSU9OX01FVEhPRC5DT01QVVRFRF06IHtcbiAgICAgIG5hbWU6IERBVEFfQ09MTEVDVElPTl9NRVRIT0QuQ09NUFVURUQsXG4gICAgICBjb2xvcjogRU5VTV9DT0xPUlMuQ0VSVUxFQU4sXG4gICAgICBjbGFzc05hbWVDb2xvcjogJ2NvbG9yLWNlcnVsZWFuJyxcbiAgICB9LFxuICAgIFtEQVRBX0NPTExFQ1RJT05fTUVUSE9ELkVTVElNQVRFRF06IHtcbiAgICAgIG5hbWU6IERBVEFfQ09MTEVDVElPTl9NRVRIT0QuRVNUSU1BVEVELFxuICAgICAgY29sb3I6IEVOVU1fQ09MT1JTLk1FRElVTV9SRURfVklPTEVULFxuICAgICAgY2xhc3NOYW1lQ29sb3I6ICdjb2xvci1tZWRpdW0tcmVkLXZpb2xldCcsXG4gICAgfSxcbiAgICBbREFUQV9DT0xMRUNUSU9OX01FVEhPRC5XQVRFUl9DQVBBQ0lUWV06IHtcbiAgICAgIG5hbWU6IERBVEFfQ09MTEVDVElPTl9NRVRIT0QuV0FURVJfQ0FQQUNJVFksXG4gICAgICBjb2xvcjogRU5VTV9DT0xPUlMuVklWSURfVklPTEVULFxuICAgICAgY2xhc3NOYW1lQ29sb3I6ICdjb2xvci12aXZpZC12aW9sZXQnLFxuICAgIH0sXG4gICAgW0RBVEFfQ09MTEVDVElPTl9NRVRIT0QuS0VZX01PREVMX0NPTVBVVEVEXToge1xuICAgICAgbmFtZTogREFUQV9DT0xMRUNUSU9OX01FVEhPRC5LRVlfTU9ERUxfQ09NUFVURUQsXG4gICAgICBjb2xvcjogRU5VTV9DT0xPUlMuR1JBWSxcbiAgICAgIGNsYXNzTmFtZUNvbG9yOiAnY29sb3ItYmFsaS1oYWknLFxuICAgIH0sXG4gIH07XG5cbiAgLy8gZXhwb3J0IGVudW0gV0lUSF9EUkFXX1RZUEVTIHtcbiAgLy8gICAgIFRBTktFUiA9ICdUYW5rZXInLFxuICAvLyAgICAgUkFJTl9XQVRFUiA9ICdSYWlud2F0ZXInLFxuICAvLyB9XG5cbiAgZXhwb3J0IGVudW0gV0lUSF9EUkFXX1NZU1RFTV9UWVBFUyB7XG4gICAgV0FURVJfU09VUkNFID0gJ1dhdGVyU291cmNlJyxcbiAgfVxuXG4gIC8vIGV4cG9ydCBlbnVtIERJU0NIQVJHRV9UWVBFUyB7XG4gIC8vICAgICBHUk9VTkRfV0FURVJfUkVORVdBQkxFID0gJ0dyb3VuZCBXYXRlciBSZW5ld2FibGUnLFxuICAvLyB9XG5cbiAgZXhwb3J0IGVudW0gRElTQ0hBUkdFX1RZUEVTX1NZU1RFTV9UWVBFUyB7XG4gICAgR1JPVU5EX1dBVEVSX1JBTkVXQUJMRSA9ICdHcm91bmRXYXRlclJlbmV3YWJsZScsXG4gIH1cblxuICBleHBvcnQgY29uc3QgV2F0ZXJXaXRoZHJhd1NvdXJjZXMgPSAnV2F0ZXJXaXRoZHJhd1NvdXJjZXMnO1xuICBleHBvcnQgY29uc3QgV2F0ZXJXaXRoZHJhd1NvdXJjZXNQYXRoID1cbiAgICAnR2V0Rmxvd1RvcG9sb2d5LlBsYW50LldhdGVyV2l0aGRyYXdTb3VyY2VzLkNvbXBvbmVudFdhdGVyRmxvdy5JbkZsb3dzLkluZmxvd1dhdGVyUmVjb3JkLlF1YW50aXR5UGFyYW1zJztcblxuICBleHBvcnQgY29uc3QgV2F0ZXJEaXNjaGFyZ2VEZXN0aW5hdGlvbnMgPSAnV2F0ZXJEaXNjaGFyZ2VEZXN0aW5hdGlvbnMnO1xuICBleHBvcnQgY29uc3QgV2F0ZXJEaXNjaGFyZ2VEZXN0aW5hdGlvbnNQYXRoID1cbiAgICAnR2V0Rmxvd1RvcG9sb2d5LlBsYW50LldhdGVyRGlzY2hhcmdlRGVzdGluYXRpb25zLkNvbXBvbmVudFdhdGVyRmxvdy5JbkZsb3dzLkluZmxvd1dhdGVyUmVjb3JkLlF1YW50aXR5UGFyYW1zJztcblxuICBleHBvcnQgY29uc3QgU09VUkNFU19DT01QT05FTlRTID0gW1xuICAgIFdhdGVyV2l0aGRyYXdTb3VyY2VzLFxuICAgIFdhdGVyRGlzY2hhcmdlRGVzdGluYXRpb25zLFxuICAgIEVOVU1fVFlQRVMuRUxFQ1RSSUNfU09VUkNFUyxcbiAgICBFTlVNX1RZUEVTLkVMRUNUUklDX1BST0RVQ1RJT05TLFxuICAgIEVOVU1fVFlQRVMuR0FTX1NPVVJDRSxcbiAgICBFTlVNX1RZUEVTLkdBU19QUk9EVUNUSU9OLFxuICAgIEVOVU1fVFlQRVMuRlVFTF9TT1VSQ0VTLFxuICAgIC8vIEVOVU1fVFlQRVMuRlVFTF9TVE9SQUdFX1RBTktTLFxuICBdO1xuXG4gIGV4cG9ydCBjb25zdCBTT1VSQ0VTX1dJVEhEUkFXID0gW1xuICAgIFdhdGVyV2l0aGRyYXdTb3VyY2VzLFxuICAgIEVOVU1fVFlQRVMuRUxFQ1RSSUNfU09VUkNFUyxcbiAgICBFTlVNX1RZUEVTLkVMRUNUUklDX1BST0RVQ1RJT05TLFxuICAgIEVOVU1fVFlQRVMuR0FTX1NPVVJDRSxcbiAgICBFTlVNX1RZUEVTLkdBU19QUk9EVUNUSU9OLFxuICAgIEVOVU1fVFlQRVMuRlVFTF9TT1VSQ0VTLFxuICAgIC8vIEVOVU1fVFlQRVMuRlVFTF9TVE9SQUdFX1RBTktTLFxuICBdO1xuXG4gIGV4cG9ydCBjb25zdCBTT1VSQ0VTX0RJU0NIQVJHRSA9IFtcbiAgICBXYXRlckRpc2NoYXJnZURlc3RpbmF0aW9ucyxcbiAgICAvLyBFTlVNX1RZUEVTLkVMRUNUUklDX1NPVVJDRVMsXG4gICAgLy8gRU5VTV9UWVBFUy5FTEVDVFJJQ19QUk9EVUNUSU9OUyxcbiAgICAvLyBFTlVNX1RZUEVTLkdBU19TT1VSQ0UsXG4gICAgLy8gRU5VTV9UWVBFUy5HQVNfUFJPRFVDVElPTixcbiAgICAvLyBFTlVNX1RZUEVTLkZVRUxfU09VUkNFUyxcbiAgXTtcblxuICBleHBvcnQgY29uc3QgQ09NUE9ORU5UU19IQVZFX1NQRUNJQUxfQ0FURUdPUlkgPSBbXG4gICAgLy8gV2F0ZXJcbiAgICBXYXRlcldpdGhkcmF3U291cmNlcyxcbiAgICBXYXRlckRpc2NoYXJnZURlc3RpbmF0aW9ucyxcblxuICAgIC8vIEVOVU1fVFlQRVMuRlJFU0hfU1VSRkFDRV9XQUVSLFxuICAgIC8vIEVOVU1fVFlQRVMuVEhJUkRfUEFSVFlfU09VUkNFUyxcbiAgICAvLyBFTlVNX1RZUEVTLkdST1VORF9XQVRFUl9OT05fUkVORVdBQkxFLFxuICAgIC8vIEVOVU1fVFlQRVMuUFJPRFVDRURfRU5UUkFJTkVELFxuICAgIC8vIEVOVU1fVFlQRVMuQlJBQ0tJU0hfU1VSRkFDRV9XQVRFUixcbiAgICAvLyBFTlVNX1RZUEVTLkdST1VORF9XQVRFUl9SRU5FV0FCTEUsXG5cbiAgICAvLyBFbmVyZ3lcbiAgICBFTlVNX1RZUEVTLlpPTkUsXG4gICAgLy8gRWxlY3RyaWM9PT09PT09PT09PT09PT09PT09XG4gICAgRU5VTV9UWVBFUy5HUklELFxuICAgIEVOVU1fVFlQRVMuRUxFQ1RSSUNfUFJPRFVDVElPTlMsXG4gICAgRU5VTV9UWVBFUy5ESUVTRUxfR0VORVJBVE9SUyxcbiAgICBFTlVNX1RZUEVTLk5BVFVSQUxfR0FTX0dFTkVSQVRPUlMsXG4gICAgRU5VTV9UWVBFUy5TT0xBUl9QT1dFUixcbiAgICBFTlVNX1RZUEVTLkVMRUNUUklDX1NPVVJDRVMsXG4gICAgRU5VTV9UWVBFUy5FbGVjdHJpY2FscyxcbiAgICAvLyBFTlVNX1RZUEVTLkVMRUNUUklDX0NPTVNVTUlOR1MsXG4gICAgLy8gRU5VTV9UWVBFUy5FTEVDVFJJQ19TVE9SQUdFUyxcbiAgICAvLyBFTlVNX1RZUEVTLlBST0NFU1NfQ09OVFJPTF9BVVRPTUFUSU9OX1NZU1RFTVMsXG4gICAgLy8gRU5VTV9UWVBFUy5QT1dFUl9ESVNUUklCVVRJT05fQ09OVFJPTF9TWVNURU1TLFxuXG4gICAgLy8gR2FzPT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLy8gRU5VTV9UWVBFUy5OQVRVUkFMX0dBU19QSVBFTElORVMsXG4gICAgRU5VTV9UWVBFUy5HQVNfU09VUkNFLFxuICAgIEVOVU1fVFlQRVMuR0FTX1BST0RVQ1RJT04sXG4gICAgRU5VTV9UWVBFUy5MSVFVRUZJRURfTkFUVVJBTF9HQVMsXG4gICAgRU5VTV9UWVBFUy5PTl9TSVRFX1BST0RVQ1RJT04sXG4gICAgRU5VTV9UWVBFUy5OQVRVUkFMX0dBU19QSVBFTElORVMsXG4gICAgRU5VTV9UWVBFUy5MSVFVRUZJRURfTkFUVVJBTF9HQVMsXG4gICAgRU5VTV9UWVBFUy5DT01QUkVTU0VEX05BVFVSQUxfR0FTX1BST0RVQ1RJT04sXG4gICAgLy8gRU5VTV9UWVBFUy5DT01QUkVTU0VEX05BVFVSQUxfR0FTX1BJUEVMSU5FLFxuICAgIC8vIEVOVU1fVFlQRVMuQ09NUFJFU1NFRF9OQVRVUkFMX0dBU19QUk9EVUNUSU9OLFxuICAgIC8vIEVOVU1fVFlQRVMuRlVSTkFDRVMsXG4gICAgLy8gRU5VTV9UWVBFUy5QT1dFUl9HRU5FUkFUSU9OLFxuICAgIC8vIEVOVU1fVFlQRVMuQ09HRU5FUkFUSU9OLFxuICAgIC8vIEVOVU1fVFlQRVMuQ09NQklORURfQ1lDTEVfUE9XRVJfUExBTlRTLFxuICAgIC8vIEVOVU1fVFlQRVMuRlVFTF9GT1JfVkVISUNMRVNfQU5EX0VRVUlQTUVOVCxcbiAgICBFTlVNX1RZUEVTLk5BVFVSQUxfR0FTX1NQRUNJQUwsXG4gICAgLy9GdWVsPT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRU5VTV9UWVBFUy5GVUVMX1NPVVJDRVMsXG4gICAgRU5VTV9UWVBFUy5UQU5LRVJfVFJVQ0tTLFxuICAgIEVOVU1fVFlQRVMuUElQRUxJTkUsXG4gICAgRU5VTV9UWVBFUy5GVUVMUyxcbiAgXTtcblxuICBleHBvcnQgY29uc3QgV0lUSF9EUkFXX1RZUEVfTElTVCA9IFtcbiAgICBFTlVNX1RZUEVTLlRISVJEX1BBUlRZX1NPVVJDRVMsXG4gICAgRU5VTV9UWVBFUy5GUkVTSF9TVVJGQUNFX1dBVEVSLFxuICAgIEVOVU1fVFlQRVMuQlJBQ0tJU0hfU1VSRkFDRV9XQVRFUixcbiAgICBFTlVNX1RZUEVTLkdST1VORF9XQVRFUl9SRU5FV0FCTEUsXG4gICAgRU5VTV9UWVBFUy5HUk9VTkRfV0FURVJfTk9OX1JFTkVXQUJMRSxcbiAgICBFTlVNX1RZUEVTLlBST0RVQ0VEX0VOVFJBSU5FRCxcbiAgXSBhcyBzdHJpbmdbXTtcbiAgZXhwb3J0IGNvbnN0IERJU0NIQVJHRV9UWVBFX0xJU1QgPSBbXG4gICAgRU5VTV9UWVBFUy5GUkVTSF9TVVJGQUNFX1dBVEVSLFxuICAgIEVOVU1fVFlQRVMuQlJBQ0tJU0hfU1VSRkFDRV9XQVRFUixcbiAgICBFTlVNX1RZUEVTLkdST1VORF9XQVRFUl9SRU5FV0FCTEUsXG4gICAgRU5VTV9UWVBFUy5USElSRF9QQVJUWV9ERVNUSU5BVElPTlMsXG4gIF0gYXMgc3RyaW5nW107XG5cbiAgZXhwb3J0IGNvbnN0IFdJVEhfRFJBV19TWVNURU1fVFlQRV9MSVNUID0gW1xuICAgIFdJVEhfRFJBV19TWVNURU1fVFlQRVMuV0FURVJfU09VUkNFLFxuICBdO1xuICBleHBvcnQgY29uc3QgRElTQ0hBUkdFX1NZU1RFTV9UWVBFX0xJU1QgPSBbXG4gICAgRElTQ0hBUkdFX1RZUEVTX1NZU1RFTV9UWVBFUy5HUk9VTkRfV0FURVJfUkFORVdBQkxFLFxuICBdO1xuXG4gIC8vIHN5c3RlbSB0eXBlXG4gIGV4cG9ydCBjb25zdCBUWVBFX0NPTVBPTkVOVCA9IFtcbiAgICBFTlVNX1RZUEVTLlNUT1JBR0UsXG5cbiAgICBFTlVNX1RZUEVTLldBVEVSX1RSRUFUTUVOVCxcbiAgICBFTlVNX1RZUEVTLkRFTUlOX1dBVEVSX1RSRUFUTUVOVCxcbiAgICBFTlVNX1RZUEVTLlJPX1dBVEVSX1RSRUFUTUVOVCxcblxuICAgIEVOVU1fVFlQRVMuUFJPQ0VTUyxcblxuICAgIEVOVU1fVFlQRVMuV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgRU5VTV9UWVBFUy5EQUZfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgRU5VTV9UWVBFUy5FVFBfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgRU5VTV9UWVBFUy5NQlJfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgRU5VTV9UWVBFUy5aTERfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG5cbiAgICBFTlVNX1RZUEVTLkRPTUVTVElDX1VTRSxcbiAgICBFTlVNX1RZUEVTLkNPT0xJTkdfVE9XRVIsXG4gICAgRU5VTV9UWVBFUy5CT0lMRVIsXG4gICAgRU5VTV9UWVBFUy5PVEhFUixcbiAgICBFTlVNX1RZUEVTLkxBTkRTQ0FQSU5HX0lSUklHQVRJT04sXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLldhdGVyV2l0aGRyYXdTb3VyY2VzLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5XYXRlckRpc2NoYXJnZURlc3RpbmF0aW9ucyxcbiAgICAvLyBFbmVyZ3lcbiAgICBFTlVNX1RZUEVTLlpPTkUsXG4gICAgLy8gRWxlY3RyaWNpdHk9PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEVOVU1fVFlQRVMuR1JJRCxcbiAgICBFTlVNX1RZUEVTLkRJRVNFTF9HRU5FUkFUT1JTLFxuICAgIEVOVU1fVFlQRVMuQkFUVEVSWV9FTkVSR1lfU1RPUkFHRSxcbiAgICBFTlVNX1RZUEVTLkxJR0hUSU5HX1NZU1RFTVMsXG4gICAgRU5VTV9UWVBFUy5MSUdIVElOR1MsXG4gICAgRU5VTV9UWVBFUy5FTEVDVFJJQ19NRVRFUlMsXG4gICAgRU5VTV9UWVBFUy5UUkFOU0ZPUk1FUlMsXG4gICAgRU5VTV9UWVBFUy5FTEVDVFJJQ19GTFlXSEVFTF9FTkVSR1lfU1RPUkFHRSxcbiAgICBFTlVNX1RZUEVTLlBVTVBFRF9IWURST19TVE9SQUdFLFxuICAgIEVOVU1fVFlQRVMuVEhFUk1BTF9FTkVSR1lfU1RPUkFHRSxcbiAgICBFTlVNX1RZUEVTLlNVUEVSX0NBUEFDSVRPUl9FTkVSR1lfU1RPUkFHRSxcbiAgICBFTlVNX1RZUEVTLlNXSVRDSF9HRUFSUyxcbiAgICBFTlVNX1RZUEVTLlBST0NFU1NfQ09OVFJPTF9BVVRPTUFUSU9OX1NZU1RFTVMsXG4gICAgRU5VTV9UWVBFUy5QUk9DRVNTX0VRVUlQTUVOVF9NQUNISU5FUyxcbiAgICBFTlVNX1RZUEVTLk9GRklDRV9FUVVJUE1FTlQsXG4gICAgRU5VTV9UWVBFUy5QT1dFUl9ESVNUUklCVVRJT05fQ09OVFJPTF9TWVNURU1TLFxuICAgIEVOVU1fVFlQRVMuUFVNUCxcbiAgICBFTlVNX1RZUEVTLlBPV0VSX0RJU1RSSUJVVElPTl9TWVNURU1TLFxuICAgIEVOVU1fVFlQRVMuTkFUVVJBTF9HQVNfR0VORVJBVE9SUyxcbiAgICBFTlVNX1RZUEVTLk1PVE9SX0NPTlRST0xTLFxuICAgIEVOVU1fVFlQRVMuVkFSSUFCTEVfRlJFUVVFTkNZX0RSSVZFUlMsXG4gICAgRU5VTV9UWVBFUy5FTEVDVFJJQ19IVkFDLFxuICAgIEVOVU1fVFlQRVMuQ09NUFJFU1NFRF9BSVJfU1lTVEVNUyxcbiAgICBFTlVNX1RZUEVTLlJFRlJJR0VSQVRJT05fQ09PTElOR19TWVNURU1TLFxuICAgIEVOVU1fVFlQRVMuTUFURVJJQUxfSEFORExJTkdfRVFVSVBNRU5ULFxuICAgIEVOVU1fVFlQRVMuV0lORF9QT1dFUixcbiAgICBFTlVNX1RZUEVTLkVMRUNUUklDX0lORFVTVFJJQUxfTU9UT1JTLFxuICAgIEVOVU1fVFlQRVMuR1JPVU5ESU5HLFxuICAgIEVOVU1fVFlQRVMuRUxFQ1RSSUNfU1RPUkFHRVMsXG4gICAgRU5VTV9UWVBFUy5FTEVDVFJJQ19DT01TVU1JTkdTLFxuXG4gICAgLy8gVEVTVFxuICAgIEVOVU1fVFlQRVMuRUxFQ1RSSUNfU09VUkNFUyxcbiAgICAvLyBHYXM9PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEVOVU1fVFlQRVMuTkFUVVJBTF9HQVNfUElQRUxJTkVTLFxuICAgIEVOVU1fVFlQRVMuTElRVUVGSUVEX05BVFVSQUxfR0FTLFxuICAgIEVOVU1fVFlQRVMuQ09NUFJFU1NFRF9OQVRVUkFMX0dBU19QSVBFTElORSxcbiAgICBFTlVNX1RZUEVTLk9OX1NJVEVfUFJPRFVDVElPTixcbiAgICBFTlVNX1RZUEVTLkNPTVBSRVNTRURfTkFUVVJBTF9HQVNfUFJPRFVDVElPTixcbiAgICBFTlVNX1RZUEVTLkJPSUxFUlNfQU5EX0hFQVRFUlMsXG4gICAgRU5VTV9UWVBFUy5GVVJOQUNFUyxcbiAgICBFTlVNX1RZUEVTLlBPV0VSX0dFTkVSQVRJT04sXG4gICAgRU5VTV9UWVBFUy5DT0dFTkVSQVRJT04sXG4gICAgRU5VTV9UWVBFUy5DT01CSU5FRF9DWUNMRV9QT1dFUl9QTEFOVFMsXG4gICAgRU5VTV9UWVBFUy5GVUVMX0ZPUl9WRUhJQ0xFU19BTkRfRVFVSVBNRU5ULFxuICAgIEVOVU1fVFlQRVMuR0FTX01FVEVSUyxcbiAgICBFTlVNX1RZUEVTLkJVUk5FUlMsXG4gICAgRU5VTV9UWVBFUy5GTFVFX0dBU19BTkFMWVpFUlMsXG4gICAgRU5VTV9UWVBFUy5DT01CVVNUSU9OX0NPTlRST0xfU1lTVEVNUyxcbiAgICBFTlVNX1RZUEVTLkdBU19TVE9SQUdFX1RBTktTLFxuICAgIEVOVU1fVFlQRVMuR0FTX1BSRVNTVVJFX1JFR1VMQVRPUlMsXG4gICAgRU5VTV9UWVBFUy5OQVRVUkFMX0dBUyxcblxuICAgIEVOVU1fVFlQRVMuR0FTX1NPVVJDRSxcbiAgICAvLyBFTlVNX1RZUEVTLkdBU19QUk9EVUNUSU9OLFxuICAgIEVOVU1fVFlQRVMuR0FTX0NPTlNVTUlOR1MsXG5cbiAgICAvLyBGdWVsPT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBFTlVNX1RZUEVTLkRJRVNFTF9GVUVMUyxcbiAgICBFTlVNX1RZUEVTLkdBU09OX0xJTkVTLFxuICAgIEVOVU1fVFlQRVMuQklPRElFU0VMUyxcbiAgICBFTlVNX1RZUEVTLktFUk9TRU5TRSxcbiAgICBFTlVNX1RZUEVTLlBST1BBTkVTLFxuICAgIEVOVU1fVFlQRVMuRlVFTF9DT05TVU1JTkdTLFxuICAgIEVOVU1fVFlQRVMuSU5EVVNUUklBTF9CT0lMRVJTLFxuICAgIEVOVU1fVFlQRVMuR0VORVJBVE9SUyxcbiAgICBFTlVNX1RZUEVTLklORFVTVFJJQUxfRlVSTkFDRVMsXG4gICAgRU5VTV9UWVBFUy5JTkRVU1RSSUFMX09WRU5TLFxuICAgIEVOVU1fVFlQRVMuSU5EVVNUUklBTF9WRUhJQ0xFU19BTkRfRVFVSVBNRU5ULFxuICAgIEVOVU1fVFlQRVMuRlVFTF9NRVRFUlMsXG4gICAgRU5VTV9UWVBFUy5GVUVMX0RJU1BFTlNFUlMsXG4gICAgRU5VTV9UWVBFUy5GVUVMX1NUUk9SQUdFX1RBTktTLFxuICAgIEVOVU1fVFlQRVMuRlVFTF9GSUxUUkFUSU9OUyxcbiAgICBFTlVNX1RZUEVTLkZVRUxfTUFOQUdFTUVOVFMsXG4gICAgRU5VTV9UWVBFUy5GVUVMUyxcblxuICAgIC8vIFNvbGFyID09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRU5VTV9UWVBFUy5TT0xBUl9QT1dFUixcbiAgICBFTlVNX1RZUEVTLkJBVFRFUklFUyxcbiAgICBFTlVNX1RZUEVTLklOVkVSVEVSUyxcbiAgICBFTlVNX1RZUEVTLlBPV0VSX0NPTkRJVElPTklOR19VTklULFxuXG4gICAgLy8gUGxhbnQgQ2VsbFxuICAgIEVOVU1fVFlQRVMuUExBTlRfQ0VMTCxcblxuICAgIC8vIENvcHkgZm9ybSBFTlVNX1RZUEVTXG4gICAgRU5VTV9UWVBFUy5TVE9SQUdFLFxuXG4gICAgRU5VTV9UWVBFUy5XQVRFUl9UUkVBVE1FTlQsXG4gICAgRU5VTV9UWVBFUy5ERU1JTl9XQVRFUl9UUkVBVE1FTlQsXG4gICAgRU5VTV9UWVBFUy5ST19XQVRFUl9UUkVBVE1FTlQsXG5cbiAgICBFTlVNX1RZUEVTLlBST0NFU1MsXG4gICAgRU5VTV9UWVBFUy5TUEVDSUFMX1NUT1JBR0UsXG5cbiAgICBFTlVNX1RZUEVTLldBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgIEVOVU1fVFlQRVMuREFGX1dBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgIEVOVU1fVFlQRVMuRVRQX1dBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgIEVOVU1fVFlQRVMuTUJSX1dBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgIEVOVU1fVFlQRVMuWkxEX1dBU1RFV0FURVJfVFJFQVRNRU5ULFxuXG4gICAgRU5VTV9UWVBFUy5ET01FU1RJQ19VU0UsXG4gICAgRU5VTV9UWVBFUy5DT09MSU5HX1RPV0VSLFxuICAgIEVOVU1fVFlQRVMuQk9JTEVSLFxuICAgIEVOVU1fVFlQRVMuT1RIRVIsXG4gICAgRU5VTV9UWVBFUy5MQU5EU0NBUElOR19JUlJJR0FUSU9OLFxuXG4gICAgRU5VTV9UWVBFUy5GUkVTSF9TVVJGQUNFX1dBVEVSLFxuICAgIEVOVU1fVFlQRVMuVEhJUkRfUEFSVFlfU09VUkNFUyxcbiAgICBFTlVNX1RZUEVTLlRISVJEX1BBUlRZX0RFU1RJTkFUSU9OUyxcbiAgICBFTlVNX1RZUEVTLkdST1VORF9XQVRFUl9OT05fUkVORVdBQkxFLFxuICAgIEVOVU1fVFlQRVMuUFJPRFVDRURfRU5UUkFJTkVELFxuXG4gICAgLy8gRlJFU0hfU1VSRkFDRV9XQUVSID0gJ0ZyZXNoIHN1cmZhY2Ugd2F0ZXInLFxuICAgIEVOVU1fVFlQRVMuQlJBQ0tJU0hfU1VSRkFDRV9XQVRFUixcbiAgICBFTlVNX1RZUEVTLkdST1VORF9XQVRFUl9SRU5FV0FCTEUsXG5cbiAgICBFTlVNX1RZUEVTLlRBTktFUl9XQVRFUixcbiAgICAvLyBFTkVSR1lcbiAgICBFTlVNX1RZUEVTLlpPTkUsXG4gICAgLy8gRWxlY3RyaWNcbiAgICBFTlVNX1RZUEVTLkVMRUNUUklDX1NPVVJDRVMsXG4gICAgRU5VTV9UWVBFUy5HUklELFxuICAgIEVOVU1fVFlQRVMuRElFU0VMX0dFTkVSQVRPUlMsXG4gICAgRU5VTV9UWVBFUy5FTEVDVFJJQ19NRVRFUlMsXG4gICAgRU5VTV9UWVBFUy5UUkFOU0ZPUk1FUlMsXG4gICAgLy8gRWxlY3RyaWMgTmV3XG4gICAgRU5VTV9UWVBFUy5CQVRURVJZX0VORVJHWV9TVE9SQUdFLFxuICAgIEVOVU1fVFlQRVMuRUxFQ1RSSUNfUFJPRFVDVElPTlMsXG4gICAgRU5VTV9UWVBFUy5FTEVDVFJJQ19DT01TVU1JTkdTLFxuICAgIEVOVU1fVFlQRVMuRUxFQ1RSSUNfU1RPUkFHRVMsXG4gICAgRU5VTV9UWVBFUy5FTEVDVFJJQ19GTFlXSEVFTF9FTkVSR1lfU1RPUkFHRSxcbiAgICBFTlVNX1RZUEVTLlBVTVBFRF9IWURST19TVE9SQUdFLFxuICAgIEVOVU1fVFlQRVMuVEhFUk1BTF9FTkVSR1lfU1RPUkFHRSxcbiAgICBFTlVNX1RZUEVTLlNVUEVSX0NBUEFDSVRPUl9FTkVSR1lfU1RPUkFHRSxcbiAgICBFTlVNX1RZUEVTLlNXSVRDSF9HRUFSUyxcbiAgICBFTlVNX1RZUEVTLk1PVE9SX0NPTlRST0xTLFxuICAgIEVOVU1fVFlQRVMuVkFSSUFCTEVfRlJFUVVFTkNZX0RSSVZFUlMsXG4gICAgRU5VTV9UWVBFUy5MSUdIVElOR19TWVNURU1TLFxuICAgIEVOVU1fVFlQRVMuTElHSFRJTkdTLFxuICAgIEVOVU1fVFlQRVMuRUxFQ1RSSUNfSFZBQyxcbiAgICBFTlVNX1RZUEVTLkNPTVBSRVNTRURfQUlSX1NZU1RFTVMsXG4gICAgRU5VTV9UWVBFUy5SRUZSSUdFUkFUSU9OX0NPT0xJTkdfU1lTVEVNUyxcbiAgICBFTlVNX1RZUEVTLlBST0NFU1NfRVFVSVBNRU5UX01BQ0hJTkVTLFxuICAgIEVOVU1fVFlQRVMuUFJPQ0VTU19DT05UUk9MX0FVVE9NQVRJT05fU1lTVEVNUyxcbiAgICBFTlVNX1RZUEVTLk9GRklDRV9FUVVJUE1FTlQsXG4gICAgRU5VTV9UWVBFUy5NQVRFUklBTF9IQU5ETElOR19FUVVJUE1FTlQsXG4gICAgRU5VTV9UWVBFUy5QT1dFUl9ESVNUUklCVVRJT05fQ09OVFJPTF9TWVNURU1TLFxuICAgIEVOVU1fVFlQRVMuUFVNUCxcbiAgICBFTlVNX1RZUEVTLlBPV0VSX0RJU1RSSUJVVElPTl9TWVNURU1TLFxuICAgIEVOVU1fVFlQRVMuV0lORF9QT1dFUixcbiAgICBFTlVNX1RZUEVTLk5BVFVSQUxfR0FTX0dFTkVSQVRPUlMsXG4gICAgRU5VTV9UWVBFUy5FTEVDVFJJQ19JTkRVU1RSSUFMX01PVE9SUyxcbiAgICBFTlVNX1RZUEVTLkdST1VORElORyxcbiAgICBFTlVNX1RZUEVTLkVsZWN0cmljYWxzLFxuXG4gICAgLy8gR2FzXG4gICAgRU5VTV9UWVBFUy5OQVRVUkFMX0dBU19QSVBFTElORVMsXG4gICAgRU5VTV9UWVBFUy5MSVFVRUZJRURfTkFUVVJBTF9HQVMsXG4gICAgRU5VTV9UWVBFUy5DT01QUkVTU0VEX05BVFVSQUxfR0FTX1BJUEVMSU5FLFxuICAgIEVOVU1fVFlQRVMuT05fU0lURV9QUk9EVUNUSU9OLFxuICAgIEVOVU1fVFlQRVMuQ09NUFJFU1NFRF9OQVRVUkFMX0dBU19QUk9EVUNUSU9OLFxuICAgIEVOVU1fVFlQRVMuQk9JTEVSU19BTkRfSEVBVEVSUyxcbiAgICBFTlVNX1RZUEVTLkZVUk5BQ0VTLFxuICAgIEVOVU1fVFlQRVMuUE9XRVJfR0VORVJBVElPTixcbiAgICBFTlVNX1RZUEVTLkNPR0VORVJBVElPTixcbiAgICBFTlVNX1RZUEVTLkNPTUJJTkVEX0NZQ0xFX1BPV0VSX1BMQU5UUyxcbiAgICBFTlVNX1RZUEVTLkZVRUxfRk9SX1ZFSElDTEVTX0FORF9FUVVJUE1FTlQsXG4gICAgRU5VTV9UWVBFUy5HQVNfTUVURVJTLFxuICAgIEVOVU1fVFlQRVMuQlVSTkVSUyxcbiAgICBFTlVNX1RZUEVTLkZMVUVfR0FTX0FOQUxZWkVSUyxcbiAgICBFTlVNX1RZUEVTLkNPTUJVU1RJT05fQ09OVFJPTF9TWVNURU1TLFxuICAgIEVOVU1fVFlQRVMuR0FTX1NUT1JBR0VfVEFOS1MsXG4gICAgRU5VTV9UWVBFUy5HQVNfUFJFU1NVUkVfUkVHVUxBVE9SUyxcbiAgICBFTlVNX1RZUEVTLk5BVFVSQUxfR0FTLFxuICAgIC8vIFRZUEVfQ09NUE9ORU5UIEdhc1xuICAgIEVOVU1fVFlQRVMuR0FTX1NPVVJDRSxcbiAgICBFTlVNX1RZUEVTLkdBU19QUk9EVUNUSU9OLFxuICAgIEVOVU1fVFlQRVMuR0FTX0NPTlNVTUlOR1MsXG4gICAgRU5VTV9UWVBFUy5OQVRVUkFMX0dBU19TUEVDSUFMLFxuXG4gICAgLy8gRnVlbFxuICAgIEVOVU1fVFlQRVMuRlVFTFMsXG4gICAgRU5VTV9UWVBFUy5ESUVTRUxfRlVFTFMsXG4gICAgRU5VTV9UWVBFUy5HQVNPTl9MSU5FUyxcbiAgICBFTlVNX1RZUEVTLkJJT0RJRVNFTFMsXG4gICAgRU5VTV9UWVBFUy5LRVJPU0VOU0UsXG4gICAgRU5VTV9UWVBFUy5QUk9QQU5FUyxcblxuICAgIEVOVU1fVFlQRVMuRlVFTF9TT1VSQ0VTLFxuXG4gICAgRU5VTV9UWVBFUy5UQU5LRVJfVFJVQ0tTLFxuICAgIEVOVU1fVFlQRVMuUElQRUxJTkUsXG5cbiAgICBFTlVNX1RZUEVTLkZVRUxfQ09OU1VNSU5HUyxcblxuICAgIEVOVU1fVFlQRVMuSU5EVVNUUklBTF9CT0lMRVJTLFxuICAgIEVOVU1fVFlQRVMuR0VORVJBVE9SUyxcbiAgICBFTlVNX1RZUEVTLklORFVTVFJJQUxfRlVSTkFDRVMsXG4gICAgRU5VTV9UWVBFUy5JTkRVU1RSSUFMX09WRU5TLFxuICAgIEVOVU1fVFlQRVMuSU5EVVNUUklBTF9WRUhJQ0xFU19BTkRfRVFVSVBNRU5ULFxuXG4gICAgRU5VTV9UWVBFUy5GVUVMX01FVEVSUyxcbiAgICBFTlVNX1RZUEVTLkZVRUxfRElTUEVOU0VSUyxcbiAgICBFTlVNX1RZUEVTLkZVRUxfU1RST1JBR0VfVEFOS1MsXG4gICAgRU5VTV9UWVBFUy5GVUVMX0ZJTFRSQVRJT05TLFxuICAgIEVOVU1fVFlQRVMuRlVFTF9NQU5BR0VNRU5UUyxcblxuICAgIC8vIFNvbGFyXG4gICAgRU5VTV9UWVBFUy5TT0xBUl9QT1dFUixcbiAgICBFTlVNX1RZUEVTLlBPV0VSX0NPTkRJVElPTklOR19VTklULFxuICAgIEVOVU1fVFlQRVMuSU5WRVJURVJTLFxuICAgIEVOVU1fVFlQRVMuQkFUVEVSSUVTLFxuXG4gICAgLy8gUGxhbnQgQ2VsbFxuICAgIEVOVU1fVFlQRVMuUExBTlRfQ0VMTCxcbiAgICBFTlVNX1RZUEVTLlBMQU5UX0NFTExfSU5QVVRfR1JPVVAsXG4gICAgRU5VTV9UWVBFUy5QTEFOVF9DRUxMX09VVFBVVF9HUk9VUCxcblxuICAgIC8vIFN0ZWFtXG4gICAgRU5VTV9UWVBFUy5WQUxVRVMsXG4gICAgRU5VTV9UWVBFUy5TVEVBTV9UUkFQUyxcbiAgICBFTlVNX1RZUEVTLlBSRVNTVVJFX1JFR1VMQVRPUlMsXG4gICAgRU5VTV9UWVBFUy5TQUZFVFlfVkFMVUVTX0FORF9FUVVJUE1FTlQsXG4gICAgRU5VTV9UWVBFUy5DT05ERU5TQVRFX1JFVFVSTl9TWVNURU0sXG4gICAgRU5VTV9UWVBFUy5ERUFFUkFUT1JTLFxuICAgIEVOVU1fVFlQRVMuRkVFRFdBVEVSX1BVTVBTLFxuICAgIEVOVU1fVFlQRVMuQkxPV0RPV05fVEFOS1MsXG4gICAgRU5VTV9UWVBFUy5FWFBBTlNJT05fVEFOS1MsXG4gICAgRU5VTV9UWVBFUy5IRUFUX0VYQ0hBTkdFUlMsXG4gICAgRU5VTV9UWVBFUy5UVVJCSU5FUyxcbiAgICBFTlVNX1RZUEVTLlNURUFNX0NPTVBPTkVOVCxcbiAgICBFTlVNX1RZUEVTLlNURUFNX0NPTlNVTUlOR19TWVNURU0sXG4gICAgRU5VTV9UWVBFUy5FTkVSR1lfQ09OVkVSVEVSLFxuICBdIGFzIHN0cmluZ1tdO1xuXG4gIGV4cG9ydCBjb25zdCBJQ09OX0FTU0VUX1BBVEg6IHN0cmluZyA9ICdhc3NldHMvaW1hZ2VzL2VkaXRvci9pY29ucyc7XG4gIGV4cG9ydCBjb25zdCBJQ09OX0FTU0VUX1dJVEhEUkFXX0RJU0NIQVJHRV9JQ09OOiBzdHJpbmcgPVxuICAgICcvYXNzZXRzL2ltYWdlcy9pY29ucy9ob3Nrb3RlX3BsYW50JztcbiAgZXhwb3J0IGNvbnN0IElNQUdFX1JPX1dBVEVSX1RSRUFUTUVOVF9QQVRIID1cbiAgICAnL2Fzc2V0cy9pbWFnZXMvcm8td2F0ZXItdHJlYXRtZW50L1JPX1dBVEVSX1RSRUFUTUVOVF9CRy5wbmcnO1xuICBleHBvcnQgY29uc3QgSU1BR0VfQk9JTEVSX1BBVEggPSAnYXNzZXRzL2ltYWdlcy9ib2lsZXIvY21zX2JvaWxlci5wbmcnO1xuICBleHBvcnQgY29uc3QgSU1BR0VfQ09PTElOR19UT1dFUl9QQVRIID1cbiAgICAnYXNzZXRzL2ltYWdlcy9wcm9jZXNzLXdhdGVyL2Nvb2xpbmctdG93ZXItNC5wbmcnO1xuICBleHBvcnQgY29uc3QgU1BFQ0lBTF9JQ09OX0FTU0VUX1BBVEg6IHN0cmluZyA9ICdhc3NldHMvaW1hZ2VzL2VkaXRvci9zcGVjaWFsJztcbiAgZXhwb3J0IGNvbnN0IEVORVJHWV9JQ09OX0FTU0VUX1BBVEggPSAnYXNzZXRzL2ltYWdlcy9lZGl0b3IvZW5lcmd5JztcbiAgZXhwb3J0IGNvbnN0IEdBU19JQ09OX0FTU0VUX1BBVEggPSAnYXNzZXRzL2ltYWdlcy9lZGl0b3IvZ2FzJztcbiAgZXhwb3J0IGNvbnN0IEZVRUxfSUNPTl9BU1NFVF9QQVRIID0gJ2Fzc2V0cy9pbWFnZXMvZWRpdG9yL2Z1ZWwnO1xuICBleHBvcnQgY29uc3QgU1RFQU1fSUNPTl9BU1NFVF9QQVRIID0gJ2Fzc2V0cy9pbWFnZXMvZWRpdG9yL3N0ZWFtJztcbiAgZXhwb3J0IGNvbnN0IFBMQU5UX0NFTExfUEFUSCA9ICdhc3NldHMvaW1hZ2VzL2VkaXRvci9wbGFudC1jZWxsJztcbiAgZXhwb3J0IGNvbnN0IERBVEFfQk9YID0gJ2Fzc2V0cy9pbWFnZXMvZWRpdG9yL2RhdGEtYm94JztcblxuICBleHBvcnQgY29uc3QgTElOS19URU1QTEFURVM6IHtcbiAgICBba2V5IGluIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX0xJTktfVFlQRVNdOiBhbnk7XG4gIH0gPSB7XG4gICAgW0VOVU1fTElOS19UWVBFUy5TSU1QTEVdOiB7XG4gICAgICB0b1Nob3J0TGVuZ3RoOiA4LFxuICAgICAgc3Ryb2tlV2lkdGg6IDgsXG4gICAgICBhcnJvdzoge1xuICAgICAgICB0b0Fycm93OiAnVHJpYW5nbGUnLFxuICAgICAgICB2aXNpYmxlOiB0cnVlLFxuICAgICAgICBzdHJva2U6IEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX0NPTE9SUy5HUkFZLFxuICAgICAgICBmaWxsOiBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9DT0xPUlMuR1JBWSxcbiAgICAgICAgc2NhbGU6IDEuNyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBbRU5VTV9MSU5LX1RZUEVTLlBJUEVdOiB7XG4gICAgICBzdHJva2VXaWR0aDogOCxcbiAgICB9LFxuICAgIFtFTlVNX0xJTktfVFlQRVMuUElQRV9BTklNQVRJT05dOiB7XG4gICAgICBzdHJva2VXaWR0aDogOCxcbiAgICAgIGFuaW1hdGlvbjoge1xuICAgICAgICBpc1BhbmVsTWFpbjogdHJ1ZSxcbiAgICAgICAgc3Ryb2tlOiAnd2hpdGUnLFxuICAgICAgICBzdHJva2VXaWR0aDogMixcbiAgICAgICAgbmFtZTogJ1BJUEUnLFxuICAgICAgICBzdHJva2VEYXNoQXJyYXk6IFsxMCwgMjBdLFxuICAgICAgICB2aXNpYmxlOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBbRU5VTV9MSU5LX1RZUEVTLlBJUEVfSElEREVOXToge1xuICAgICAgc3Ryb2tlV2lkdGg6IDAsXG4gICAgICBzZWxlY3RhYmxlOiBmYWxzZSxcbiAgICAgIGFycm93OiB7XG4gICAgICAgIHZpc2libGU6IGZhbHNlLFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSV9URU1QTEFURV9JVEVNIHtcbiAgICBuYW1lOiBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVM7XG4gICAgaWNvbj86IHN0cmluZztcbiAgICBzaXplPzogeyB3OiBudW1iZXI7IGg6IG51bWJlciB9O1xuICAgIHN5c3RlbVR5cGU/OiBzdHJpbmc7XG4gIH1cblxuICBleHBvcnQgY29uc3QgQVRUUk5BTUVfQ09NUE9ORU5UOiBhbnlbXSA9IFtcbiAgICAnd2F0ZXJXaXRoZHJhd05hbWUnLFxuICAgICd3YXRlckRpc2NoYXJnZU5hbWUnLFxuICAgICd3YXN0ZVdhdGVyUHJvY2Vzc05hbWUnLFxuICAgICd3YXRlclRyZWF0bWVudE5hbWUnLFxuICAgICd3YXRlclN0b3JhZ2VUYW5rTmFtZScsXG4gICAgJ2dlbmVyaWNQcm9jZXNzTmFtZScsXG4gICAgJ2JvaWxlck5hbWUnLFxuICAgICdjb29saW5nVG93ZXJOYW1lJyxcbiAgICAnZmFjaWxpdHlGdW5jdGlvbk5hbWUnLFxuICAgICdtaXNjV2F0ZXJVc2VOYW1lJyxcbiAgICAncGxhbnRUb3BvbG9neU5hbWUnLFxuICBdO1xuXG4gIC8vIGV4cG9ydCBlbnVtIEdST1VQX0NPTVBPTkVOVF9UWVBFIHtcbiAgLy8gICAgIFdJVEhEUkFXX1NPVVJDRVMgPSAnV2l0aGRyYXcgU291cmNlcycsXG4gIC8vICAgICBQUk9DRVNTRSA9ICdQcm9jZXNzZScsXG4gIC8vICAgICBXQVNURVdBVEVSX1RSRUFURU1FTlRTID0gJ1dhc3RlV2F0ZXIgVHJlYXRlbWVudHMnLFxuICAvLyAgICAgV0FURVJfVFJFQVRNRU5UID0gJ1dhdGVyIFRyZWF0bWVudHMnLFxuICAvLyAgICAgRElTQ0hBUkdFX0RFU1RJTkFUSU9OUyA9ICdEaXNjaGFyZ2UgRGVzdGluYXRpb25zJyxcbiAgLy8gICAgIFdBVEVSX1NUT1JBR0UgPSAnV2F0ZXIgU3RvcmFnZScsXG4gIC8vICAgICBGQUNJTElUWV9GVU5DVElPTlMgPSAnRmFjaWxpdHkgZnVuY3Rpb25zJyxcbiAgLy8gICAgIE9USEVSID0gJ090aGVyJyxcbiAgLy8gfVxuXG4gIGV4cG9ydCBjb25zdCBOT0RFX1RFTVBMQVRFUzoge1xuICAgIFtrZXkgaW4gQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTXTogSV9URU1QTEFURV9JVEVNO1xuICB9ID0ge1xuICAgIFtFTlVNX1RFTVBMQVRFUy5TVE9SQUdFXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuU1RPUkFHRSxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vUmF3IFdhdGVyIFRhbmsuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuU1RPUkFHRSxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5DT09MSU5HX1RPV0VSXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQ09PTElOR19UT1dFUixcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vY29vbGluZ190b3dlci5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5DT09MSU5HX1RPV0VSLFxuICAgIH0sXG5cbiAgICAvLyBXQVRFUl9UUkVBVE1FTlRcbiAgICBbRU5VTV9URU1QTEFURVMuV0FURVJfVFJFQVRNRU5UXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuV0FURVJfVFJFQVRNRU5ULFxuICAgICAgaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS93YXRlcl90cmVhdG1lbnQuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuV0FURVJfVFJFQVRNRU5ULFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkRFTUlOX1dBVEVSX1RSRUFUTUVOVF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkRFTUlOX1dBVEVSX1RSRUFUTUVOVCxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vRGVtaW4uc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuREVNSU5fV0FURVJfVFJFQVRNRU5ULFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlJPX1dBVEVSX1RSRUFUTUVOVF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlJPX1dBVEVSX1RSRUFUTUVOVCxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vUk8uc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuUk9fV0FURVJfVFJFQVRNRU5ULFxuICAgIH0sXG5cbiAgICBbRU5VTV9URU1QTEFURVMuRE9NRVNUSUNfVVNFXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuRE9NRVNUSUNfVVNFLFxuICAgICAgaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS9Eb21lc3RpY19uZXcuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuRE9NRVNUSUNfVVNFLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlBST0NFU1NdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5QUk9DRVNTLFxuICAgICAgLy8gaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS9wcm9jZXNzLnN2Z2AsXG4gICAgICBpY29uOiBgJHtJQ09OX0FTU0VUX1BBVEh9L0dlbmVyaWMgUHJvY2Vzcy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5QUk9DRVNTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlNQRUNJQUxfU1RPUkFHRV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlNQRUNJQUxfU1RPUkFHRSxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vcHJvY2Vzcy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5TUEVDSUFMX1NUT1JBR0UsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQk9JTEVSXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQk9JTEVSLFxuICAgICAgaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS9Cb2lsZXIuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuQk9JTEVSLFxuICAgIH0sXG5cbiAgICAvLyBXQVNURVdBVEVSX1RSRUFUTUVOVFxuICAgIFtFTlVNX1RFTVBMQVRFUy5XQVNURVdBVEVSX1RSRUFUTUVOVF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLldBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgICAgaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS93YXN0ZXdhdGVyX3RyZWF0bWVudC5zdmdgLFxuICAgICAgLy8gc2l6ZToge1xuICAgICAgLy8gICAgIHc6IEdSSURfU0laRSAqIDgsXG4gICAgICAvLyAgICAgaDogR1JJRF9TSVpFICogNixcbiAgICAgIC8vIH0sXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLldBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkRBRl9XQVNURVdBVEVSX1RSRUFUTUVOVF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkRBRl9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vREFGLnN2Z2AsXG4gICAgICAvLyBzaXplOiB7XG4gICAgICAvLyAgICAgdzogR1JJRF9TSVpFICogOCxcbiAgICAgIC8vICAgICBoOiBHUklEX1NJWkUgKiA2LFxuICAgICAgLy8gfSxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuREFGX1dBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkVUUF9XQVNURVdBVEVSX1RSRUFUTUVOVF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkVUUF9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vd2F0ZXJfdHJlYXRtZW50LnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkVUUF9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5NQlJfV0FTVEVXQVRFUl9UUkVBVE1FTlRdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5NQlJfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgICBpY29uOiBgJHtJQ09OX0FTU0VUX1BBVEh9L01CUi5zdmdgLFxuICAgICAgLy8gc2l6ZToge1xuICAgICAgLy8gICAgIHc6IEdSSURfU0laRSAqIDgsXG4gICAgICAvLyAgICAgaDogR1JJRF9TSVpFICogNixcbiAgICAgIC8vIH0sXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLk1CUl9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5aTERfV0FTVEVXQVRFUl9UUkVBVE1FTlRdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5aTERfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgICBpY29uOiBgJHtJQ09OX0FTU0VUX1BBVEh9L1pMRC5zdmdgLFxuICAgICAgLy8gc2l6ZToge1xuICAgICAgLy8gICAgIHc6IEdSSURfU0laRSAqIDgsXG4gICAgICAvLyAgICAgaDogR1JJRF9TSVpFICogNixcbiAgICAgIC8vIH0sXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlpMRF9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLkxBTkRTQ0FQSU5HX0lSUklHQVRJT05dOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5MQU5EU0NBUElOR19JUlJJR0FUSU9OLFxuICAgICAgaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS9JcnJpZ2F0aW9uLnN2Z2AsXG4gICAgICAvLyBzaXplOiB7XG4gICAgICAvLyAgICAgdzogR1JJRF9TSVpFICogOCxcbiAgICAgIC8vICAgICBoOiBHUklEX1NJWkUgKiA2LFxuICAgICAgLy8gfSxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuTEFORFNDQVBJTkdfSVJSSUdBVElPTixcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5PVEhFUl06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLk9USEVSLFxuICAgICAgaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS9vdGhlci5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5PVEhFUixcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5URVhUX05PREVdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5URVhUX05PREUsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuRU1QVFldOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5FTVBUWSxcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLlZBTFVFX05PREVdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5WQUxVRV9OT0RFLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlZBTFVFX0xBQkVMXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuVkFMVUVfTEFCRUwsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuVEVYVF9MQUJFTF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlRFWFRfTEFCRUwsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuREFUQV9CT1hdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5EQVRBX0JPWCxcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLlNQRUNJQUxfUFJPQ0VTU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlNQRUNJQUxfUFJPQ0VTUyxcbiAgICAgIGljb246IGAke1NQRUNJQUxfSUNPTl9BU1NFVF9QQVRIfS9wcm9jZXNzLnN2Z2AsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuU1BFQ0lBTF9TVE9SRV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlNQRUNJQUxfU1RPUkUsXG4gICAgICBpY29uOiBgJHtTUEVDSUFMX0lDT05fQVNTRVRfUEFUSH0vRGlzY2hhcmdlLnN2Z2AsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuU1BFQ0lBTF9ESVNDSEFSR0VdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5TUEVDSUFMX0RJU0NIQVJHRSxcbiAgICAgIGljb246IGAke1NQRUNJQUxfSUNPTl9BU1NFVF9QQVRIfS9EaXNjaGFyZ2Uuc3ZnYCxcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLlRISVJEX1BBUlRZX1NPVVJDRVNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5USElSRF9QQVJUWV9TT1VSQ0VTLFxuICAgICAgLy8gaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS9JbnRha2Uuc3ZnYCxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vVGhpcmQgUGFydHkgU291cmNlcy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5USElSRF9QQVJUWV9TT1VSQ0VTLFxuICAgIH0sXG5cbiAgICBbRU5VTV9URU1QTEFURVMuVEhJUkRfUEFSVFlfREVTVElOQVRJT05TXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuVEhJUkRfUEFSVFlfREVTVElOQVRJT05TLFxuICAgICAgLy8gaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS9JbnRha2Uuc3ZnYCxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vVGhpcmQgcGFydHkgZGVzdGluYXRpb25zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlRISVJEX1BBUlRZX0RFU1RJTkFUSU9OUyxcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLkdST1VORF9XQVRFUl9OT05fUkVORVdBQkxFXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuR1JPVU5EX1dBVEVSX05PTl9SRU5FV0FCTEUsXG4gICAgICBpY29uOiBgJHtJQ09OX0FTU0VUX1BBVEh9L0dyb3VuZHdhdGVyIC0gTm9uLVJlbmV3YWJsZS5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5HUk9VTkRfV0FURVJfTk9OX1JFTkVXQUJMRSxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5QUk9EVUNFRF9FTlRSQUlORURdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5QUk9EVUNFRF9FTlRSQUlORUQsXG4gICAgICBpY29uOiBgJHtJQ09OX0FTU0VUX1BBVEh9L1Byb2R1Y2VkIEVudHJhaW5lZCBXYXRlci5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5QUk9EVUNFRF9FTlRSQUlORUQsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQlJBQ0tJU0hfU1VSRkFDRV9XQVRFUl06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkJSQUNLSVNIX1NVUkZBQ0VfV0FURVIsXG4gICAgICBpY29uOiBgJHtJQ09OX0FTU0VUX1BBVEh9L0JyYWNraXNrIFN1cmZhY2UgV2F0ZXIgU2Vhd2F0ZXIuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuQlJBQ0tJU0hfU1VSRkFDRV9XQVRFUixcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLkZSRVNIX1NVUkZBQ0VfV0FURVJdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5GUkVTSF9TVVJGQUNFX1dBVEVSLFxuICAgICAgaWNvbjogYCR7SUNPTl9BU1NFVF9QQVRIfS9GcmVzaCBTdXJmYWNlIFdhdGVyLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkZSRVNIX1NVUkZBQ0VfV0FURVIsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuVVRJTElUWV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlVUSUxJVFksXG4gICAgICBpY29uOiAnJyxcbiAgICAgIC8vIGAke0lDT05fQVNTRVRfUEFUSH0vcmFpbi5zdmdgLFxuICAgIH0sXG5cbiAgICBbRU5VTV9URU1QTEFURVMuR1JPVU5EX1dBVEVSX1JFTkVXQUJMRV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkdST1VORF9XQVRFUl9SRU5FV0FCTEUsXG4gICAgICBpY29uOiBgJHtJQ09OX0FTU0VUX1BBVEh9L0dyb3VuZHdhdGVyIC0gUmVuZXdhYmxlLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkdST1VORF9XQVRFUl9SRU5FV0FCTEUsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuU1BFQ0lBTF9PVEhFUl06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlNQRUNJQUxfT1RIRVIsXG4gICAgICBpY29uOiBgJHtTUEVDSUFMX0lDT05fQVNTRVRfUEFUSH0vRGlzY2hhcmdlLnN2Z2AsXG4gICAgfSxcbiAgICAvLyBFbmVyZ3lcbiAgICAvLyBFbGVjdHJpYyBOb2RlIFRlbXBsYXRlID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgW0VOVU1fVEVNUExBVEVTLkdSSURdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5HUklELFxuICAgICAgaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vR3JpZC5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5HUklELFxuICAgICAgLy8gc2l6ZToge1xuICAgICAgLy8gICAgIGg6IEdSSURfU0laRSAqIDgsXG4gICAgICAvLyAgICAgdzogR1JJRF9TSVpFICogNixcbiAgICAgIC8vIH0sXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuRElFU0VMX0dFTkVSQVRPUlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5ESUVTRUxfR0VORVJBVE9SUyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L0RpZXNlbCBHZW5lcmF0b3JzLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkRJRVNFTF9HRU5FUkFUT1JTLFxuICAgICAgLy8gc2l6ZToge1xuICAgICAgLy8gICAgIGg6IEdSSURfU0laRSAqIDgsXG4gICAgICAvLyAgICAgdzogR1JJRF9TSVpFICogNixcbiAgICAgIC8vIH0sXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQkFUVEVSWV9FTkVSR1lfU1RPUkFHRV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkJBVFRFUllfRU5FUkdZX1NUT1JBR0UsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9CYXR0ZXJ5LnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkJBVFRFUllfRU5FUkdZX1NUT1JBR0UsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuTElHSFRJTkdfU1lTVEVNU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkxJR0hUSU5HX1NZU1RFTVMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9MaWdodGluZyBzeXN0ZW1zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkxJR0hUSU5HX1NZU1RFTVMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuTElHSFRJTkdTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuTElHSFRJTkdTLFxuICAgICAgaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vTGlnaHRzLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkxJR0hUSU5HUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5FTEVDVFJJQ19NRVRFUlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5FTEVDVFJJQ19NRVRFUlMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9NZXRlci5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5FTEVDVFJJQ19NRVRFUlMsXG4gICAgfSxcblxuICAgIFtFTlVNX1RFTVBMQVRFUy5UUkFOU0ZPUk1FUlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5UUkFOU0ZPUk1FUlMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9UcmFuc2Zvcm1lci5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5UUkFOU0ZPUk1FUlMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuRUxFQ1RSSUNfRkxZV0hFRUxfRU5FUkdZX1NUT1JBR0VdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5FTEVDVFJJQ19GTFlXSEVFTF9FTkVSR1lfU1RPUkFHRSxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L1B1bXBlZCBoeWRybyBzdG9yYWdlIHN5c3RlbXMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuRUxFQ1RSSUNfRkxZV0hFRUxfRU5FUkdZX1NUT1JBR0UsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUFVNUEVEX0hZRFJPX1NUT1JBR0VdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5QVU1QRURfSFlEUk9fU1RPUkFHRSxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L1B1bXBlZCBoeWRybyBzdG9yYWdlIHN5c3RlbXMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuUFVNUEVEX0hZRFJPX1NUT1JBR0UsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuVEhFUk1BTF9FTkVSR1lfU1RPUkFHRV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlRIRVJNQUxfRU5FUkdZX1NUT1JBR0UsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9UaGVybWFsIGVuZXJneSBzdG9yYWdlIHN5c3RlbXMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuVEhFUk1BTF9FTkVSR1lfU1RPUkFHRSxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5TVVBFUl9DQVBBQ0lUT1JfRU5FUkdZX1NUT1JBR0VdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5TVVBFUl9DQVBBQ0lUT1JfRU5FUkdZX1NUT1JBR0UsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9TdXBlcmNhcGFjaXRvciBlbmVyZ3kgc3RvcmFnZSBzeXN0ZW1zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlNVUEVSX0NBUEFDSVRPUl9FTkVSR1lfU1RPUkFHRSxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5TV0lUQ0hfR0VBUlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5TV0lUQ0hfR0VBUlMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9Td2l0Y2hnZWFyLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlNXSVRDSF9HRUFSUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5QUk9DRVNTX0NPTlRST0xfQVVUT01BVElPTl9TWVNURU1TXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuUFJPQ0VTU19DT05UUk9MX0FVVE9NQVRJT05fU1lTVEVNUyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L1Byb2Nlc3MgY29udHJvbCBhbmQgYXV0b21hdGlvbiBzeXN0ZW1zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlBST0NFU1NfQ09OVFJPTF9BVVRPTUFUSU9OX1NZU1RFTVMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUFJPQ0VTU19FUVVJUE1FTlRfTUFDSElORVNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5QUk9DRVNTX0VRVUlQTUVOVF9NQUNISU5FUyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L1Byb2Nlc3MgZXF1aXBtZW50IGFuZCBtYWNoaW5lcy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5QUk9DRVNTX0VRVUlQTUVOVF9NQUNISU5FUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5PRkZJQ0VfRVFVSVBNRU5UXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuT0ZGSUNFX0VRVUlQTUVOVCxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L09mZmljZSBlcXVpcG1lbnQuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuT0ZGSUNFX0VRVUlQTUVOVCxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5QT1dFUl9ESVNUUklCVVRJT05fQ09OVFJPTF9TWVNURU1TXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuUE9XRVJfRElTVFJJQlVUSU9OX0NPTlRST0xfU1lTVEVNUyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L1Bvd2VyIGRpc3RyaWJ1dGlvbiBhbmQgY29udHJvbCBzeXN0ZW1zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlBPV0VSX0RJU1RSSUJVVElPTl9DT05UUk9MX1NZU1RFTVMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUFVNUF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlBVTVAsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9QdW1wLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlBVTVAsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUE9XRVJfRElTVFJJQlVUSU9OX1NZU1RFTVNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5QT1dFUl9ESVNUUklCVVRJT05fU1lTVEVNUyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L1Bvd2VyIGRpc3RyaWJ1dGlvbiBzeXN0ZW1zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlBPV0VSX0RJU1RSSUJVVElPTl9TWVNURU1TLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLk5BVFVSQUxfR0FTX0dFTkVSQVRPUlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5OQVRVUkFMX0dBU19HRU5FUkFUT1JTLFxuICAgICAgaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vTmF0dXJhbCBnYXMgZ2VuZXJhdG9ycy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5OQVRVUkFMX0dBU19HRU5FUkFUT1JTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLk1PVE9SX0NPTlRST0xTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuTU9UT1JfQ09OVFJPTFMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9Nb3RvciBjb250cm9sIGNlbnRlcnMgKE1DQ3MpLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLk1PVE9SX0NPTlRST0xTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlZBUklBQkxFX0ZSRVFVRU5DWV9EUklWRVJTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuVkFSSUFCTEVfRlJFUVVFTkNZX0RSSVZFUlMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9WYXJpYWJsZSBmcmVxdWVuY3kgZHJpdmVzIChWRkRzKS5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5WQVJJQUJMRV9GUkVRVUVOQ1lfRFJJVkVSUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5FTEVDVFJJQ19IVkFDXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuRUxFQ1RSSUNfSFZBQyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L0dhcyBIVkFDLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkVMRUNUUklDX0hWQUMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQ09NUFJFU1NFRF9BSVJfU1lTVEVNU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkNPTVBSRVNTRURfQUlSX1NZU1RFTVMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9Db21wcmVzc2VkIGFpci5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5DT01QUkVTU0VEX0FJUl9TWVNURU1TLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlJFRlJJR0VSQVRJT05fQ09PTElOR19TWVNURU1TXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuUkVGUklHRVJBVElPTl9DT09MSU5HX1NZU1RFTVMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9SZWZyaWdlcmF0aW9uIGFuZCBjb29saW5nIHN5c3RlbXMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuUkVGUklHRVJBVElPTl9DT09MSU5HX1NZU1RFTVMsXG4gICAgfSxcblxuICAgIFtFTlVNX1RFTVBMQVRFUy5NQVRFUklBTF9IQU5ETElOR19FUVVJUE1FTlRdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5NQVRFUklBTF9IQU5ETElOR19FUVVJUE1FTlQsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9NYXRlcmlhbCBoYW5kbGluZyBlcXVpcG1lbnQuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuTUFURVJJQUxfSEFORExJTkdfRVFVSVBNRU5ULFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLldJTkRfUE9XRVJdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5XSU5EX1BPV0VSLFxuICAgICAgaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vV2luZCBQb3dlci5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5XSU5EX1BPV0VSLFxuICAgIH0sXG5cbiAgICBbRU5VTV9URU1QTEFURVMuRUxFQ1RSSUNfSU5EVVNUUklBTF9NT1RPUlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5FTEVDVFJJQ19JTkRVU1RSSUFMX01PVE9SUyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L0luZHVzdHJpYWwgbW90b3JzLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkVMRUNUUklDX0lORFVTVFJJQUxfTU9UT1JTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkdST1VORElOR106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkdST1VORElORyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L0dyb3VuZGluZyBzeXN0ZW1zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkdST1VORElORyxcbiAgICB9LFxuICAgIC8vIEdhcyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICAgW0VOVU1fVEVNUExBVEVTLk5BVFVSQUxfR0FTX1BJUEVMSU5FU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLk5BVFVSQUxfR0FTX1BJUEVMSU5FUyxcbiAgICAgIGljb246IGAke0dBU19JQ09OX0FTU0VUX1BBVEh9L05hdHVyYWwgZ2FzIHBpcGVsaW5lcy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5OQVRVUkFMX0dBU19QSVBFTElORVMsXG4gICAgfSxcbiAgICAvLyBbRU5VTV9URU1QTEFURVMuTElRVUVGSUVEX05BVFVSQUxfR0FTXToge1xuICAgIC8vICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5MSVFVRUZJRURfTkFUVVJBTF9HQVMsXG4gICAgLy8gICAgIGljb246IGAke0dBU19JQ09OX0FTU0VUX1BBVEh9L0xpcXVlZmllZCBuYXR1cmFsIGdhcyAoTE5HKSBzaGlwbWVudHMuc3ZnYCxcbiAgICAvLyAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5MSVFVRUZJRURfTkFUVVJBTF9HQVMsXG4gICAgLy8gfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQ09NUFJFU1NFRF9OQVRVUkFMX0dBU19QSVBFTElORV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkNPTVBSRVNTRURfTkFUVVJBTF9HQVNfUElQRUxJTkUsXG4gICAgICBpY29uOiBgJHtHQVNfSUNPTl9BU1NFVF9QQVRIfS9Db21wcmVzc2VkIG5hdHVyYWwgZ2FzIHBpcGVsaW5lIChDTkcpLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkNPTVBSRVNTRURfTkFUVVJBTF9HQVNfUElQRUxJTkUsXG4gICAgfSxcbiAgICAvLyBbRU5VTV9URU1QTEFURVMuT05fU0lURV9QUk9EVUNUSU9OXToge1xuICAgIC8vICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5PTl9TSVRFX1BST0RVQ1RJT04sXG4gICAgLy8gICAgIGljb246IGAke0dBU19JQ09OX0FTU0VUX1BBVEh9L09uLXNpdGUgcHJvZHVjdGlvbi5zdmdgLFxuICAgIC8vICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLk9OX1NJVEVfUFJPRFVDVElPTixcbiAgICAvLyB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5DT01QUkVTU0VEX05BVFVSQUxfR0FTX1BST0RVQ1RJT05dOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5DT01QUkVTU0VEX05BVFVSQUxfR0FTX1BST0RVQ1RJT04sXG4gICAgICBpY29uOiBgJHtHQVNfSUNPTl9BU1NFVF9QQVRIfS9Db21wcmVzc2VkIG5hdHVyYWwgZ2FzIHBpcGVsaW5lIChDTkcpLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkNPTVBSRVNTRURfTkFUVVJBTF9HQVNfUFJPRFVDVElPTixcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5CT0lMRVJTX0FORF9IRUFURVJTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQk9JTEVSU19BTkRfSEVBVEVSUyxcbiAgICAgIGljb246IGAke0dBU19JQ09OX0FTU0VUX1BBVEh9L0JvaWxlcnMgYW5kIGhlYXRlcnMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuQk9JTEVSU19BTkRfSEVBVEVSUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5GVVJOQUNFU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkZVUk5BQ0VTLFxuICAgICAgaWNvbjogYCR7R0FTX0lDT05fQVNTRVRfUEFUSH0vRnVybmFjZXMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuRlVSTkFDRVMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUE9XRVJfR0VORVJBVElPTl06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlBPV0VSX0dFTkVSQVRJT04sXG4gICAgICBpY29uOiBgJHtHQVNfSUNPTl9BU1NFVF9QQVRIfS9Qb3dlciBnZW5lcmF0aW9uLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlBPV0VSX0dFTkVSQVRJT04sXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQ09HRU5FUkFUSU9OXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQ09HRU5FUkFUSU9OLFxuICAgICAgaWNvbjogYCR7R0FTX0lDT05fQVNTRVRfUEFUSH0vQ29nZW5lcmF0aW9uLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkNPR0VORVJBVElPTixcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5DT01CSU5FRF9DWUNMRV9QT1dFUl9QTEFOVFNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5DT01CSU5FRF9DWUNMRV9QT1dFUl9QTEFOVFMsXG4gICAgICBpY29uOiBgJHtHQVNfSUNPTl9BU1NFVF9QQVRIfS9Db21iaW5lZCBjeWNsZSBwb3dlciBwbGFudHMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuQ09NQklORURfQ1lDTEVfUE9XRVJfUExBTlRTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkZVRUxfRk9SX1ZFSElDTEVTX0FORF9FUVVJUE1FTlRdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5GVUVMX0ZPUl9WRUhJQ0xFU19BTkRfRVFVSVBNRU5ULFxuICAgICAgaWNvbjogYCR7R0FTX0lDT05fQVNTRVRfUEFUSH0vRnVlbCBmb3IgdmVoaWNsZXMgYW5kIGVxdWlwbWVudC5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5GVUVMX0ZPUl9WRUhJQ0xFU19BTkRfRVFVSVBNRU5ULFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkdBU19NRVRFUlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5HQVNfTUVURVJTLFxuICAgICAgaWNvbjogYCR7R0FTX0lDT05fQVNTRVRfUEFUSH0vR2FzIG1ldGVycy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5HQVNfTUVURVJTLFxuICAgIH0sXG4gICAgLy8gW0VOVU1fVEVNUExBVEVTLkJVUk5FUlNdOiB7XG4gICAgLy8gICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkJVUk5FUlMsXG4gICAgLy8gICAgIGljb246IGAke0dBU19JQ09OX0FTU0VUX1BBVEh9L0J1cm5lcnMuc3ZnYCxcbiAgICAvLyAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5CVVJORVJTLFxuICAgIC8vIH0sXG4gICAgLy8gW0VOVU1fVEVNUExBVEVTLkZMVUVfR0FTX0FOQUxZWkVSU106IHtcbiAgICAvLyAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuRkxVRV9HQVNfQU5BTFlaRVJTLFxuICAgIC8vICAgICBpY29uOiBgJHtHQVNfSUNPTl9BU1NFVF9QQVRIfS9GbHVlIGdhcyBhbmFseXplcnMuc3ZnYCxcbiAgICAvLyAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5GTFVFX0dBU19BTkFMWVpFUlMsXG4gICAgLy8gfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQ09NQlVTVElPTl9DT05UUk9MX1NZU1RFTVNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5DT01CVVNUSU9OX0NPTlRST0xfU1lTVEVNUyxcbiAgICAgIGljb246IGAke0dBU19JQ09OX0FTU0VUX1BBVEh9L0NvbWJ1c3Rpb24gY29udHJvbCBzeXN0ZW1zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkNPTUJVU1RJT05fQ09OVFJPTF9TWVNURU1TLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkdBU19TVE9SQUdFX1RBTktTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuR0FTX1NUT1JBR0VfVEFOS1MsXG4gICAgICBpY29uOiBgJHtHQVNfSUNPTl9BU1NFVF9QQVRIfS9HYXMgc3RvcmFnZSB0YW5rcy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5HQVNfU1RPUkFHRV9UQU5LUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5HQVNfUFJFU1NVUkVfUkVHVUxBVE9SU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkdBU19QUkVTU1VSRV9SRUdVTEFUT1JTLFxuICAgICAgaWNvbjogYCR7R0FTX0lDT05fQVNTRVRfUEFUSH0vR2FzIHByZXNzdXJlIHJlZ3VsYXRvcnMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuR0FTX1BSRVNTVVJFX1JFR1VMQVRPUlMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuTkFUVVJBTF9HQVNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5OQVRVUkFMX0dBUyxcbiAgICAgIGljb246IGAke0dBU19JQ09OX0FTU0VUX1BBVEh9L05hdHVyYWwgR2FzLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLk5BVFVSQUxfR0FTLFxuICAgIH0sXG4gICAgLy8gRnVlbD09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBbRU5VTV9URU1QTEFURVMuRElFU0VMX0ZVRUxTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuRElFU0VMX0ZVRUxTLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0RpZXNlbCBmdWVsLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkRJRVNFTF9GVUVMUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5HQVNPTl9MSU5FU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkdBU09OX0xJTkVTLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0dhc29saW5lLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkdBU09OX0xJTkVTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkJJT0RJRVNFTFNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5CSU9ESUVTRUxTLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0Jpb2RpZXNlbC5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5CSU9ESUVTRUxTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLktFUk9TRU5TRV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLktFUk9TRU5TRSxcbiAgICAgIGljb246IGAke0ZVRUxfSUNPTl9BU1NFVF9QQVRIfS9LZXJvc2VuZS5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5LRVJPU0VOU0UsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUFJPUEFORVNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5QUk9QQU5FUyxcbiAgICAgIGljb246IGAke0ZVRUxfSUNPTl9BU1NFVF9QQVRIfS9Qcm9wYW5lLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlBST1BBTkVTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlRBTktFUl9UUlVDS1NdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5UQU5LRVJfVFJVQ0tTLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L1RhbmtlciBUcnVja3Muc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuVEFOS0VSX1RSVUNLUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5QSVBFTElORV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlBJUEVMSU5FLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L1BpcGVsaW5lLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlBJUEVMSU5FLFxuICAgIH0sXG5cbiAgICBbRU5VTV9URU1QTEFURVMuSU5EVVNUUklBTF9CT0lMRVJTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuSU5EVVNUUklBTF9CT0lMRVJTLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0luZHVzdHJpYWwgYm9pbGVycy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5JTkRVU1RSSUFMX0JPSUxFUlMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuR0VORVJBVE9SU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkdFTkVSQVRPUlMsXG4gICAgICBpY29uOiBgJHtGVUVMX0lDT05fQVNTRVRfUEFUSH0vR2VuZXJhdG9ycy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5HRU5FUkFUT1JTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLklORFVTVFJJQUxfRlVSTkFDRVNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5JTkRVU1RSSUFMX0ZVUk5BQ0VTLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0luZHVzdHJpYWwgZnVybmFjZXMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuSU5EVVNUUklBTF9GVVJOQUNFUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5JTkRVU1RSSUFMX09WRU5TXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuSU5EVVNUUklBTF9PVkVOUyxcbiAgICAgIGljb246IGAke0ZVRUxfSUNPTl9BU1NFVF9QQVRIfS9JbmR1c3RyaWFsIG92ZW5zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLklORFVTVFJJQUxfT1ZFTlMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuSU5EVVNUUklBTF9WRUhJQ0xFU19BTkRfRVFVSVBNRU5UXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuSU5EVVNUUklBTF9WRUhJQ0xFU19BTkRfRVFVSVBNRU5ULFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0luZHVzdHJpYWwgdmVoaWNsZXMgYW5kIGVxdWlwbWVudC5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5JTkRVU1RSSUFMX1ZFSElDTEVTX0FORF9FUVVJUE1FTlQsXG4gICAgfSxcblxuICAgIFtFTlVNX1RFTVBMQVRFUy5GVUVMX01FVEVSU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkZVRUxfTUVURVJTLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0Z1ZWwgbWV0ZXJzLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkZVRUxfTUVURVJTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkZVRUxfRElTUEVOU0VSU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkZVRUxfRElTUEVOU0VSUyxcbiAgICAgIGljb246IGAke0ZVRUxfSUNPTl9BU1NFVF9QQVRIfS9GdWVsIGRpc3BlbnNlcnMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuRlVFTF9ESVNQRU5TRVJTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkZVRUxfU1RST1JBR0VfVEFOS1NdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5GVUVMX1NUUk9SQUdFX1RBTktTLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0Z1ZWwgc3RvcmFnZSB0YW5rcy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5GVUVMX1NUUk9SQUdFX1RBTktTLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkZVRUxfRklMVFJBVElPTlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5GVUVMX0ZJTFRSQVRJT05TLFxuICAgICAgaWNvbjogYCR7RlVFTF9JQ09OX0FTU0VUX1BBVEh9L0Z1ZWwgZmlsdHJhdGlvbiBzeXN0ZW1zLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkZVRUxfRklMVFJBVElPTlMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuRlVFTF9NQU5BR0VNRU5UU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkZVRUxfTUFOQUdFTUVOVFMsXG4gICAgICBpY29uOiBgJHtGVUVMX0lDT05fQVNTRVRfUEFUSH0vRnVlbCBtYW5hZ2VtZW50IHN5c3RlbXMuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuRlVFTF9NQU5BR0VNRU5UUyxcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLkZVRUxTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuRlVFTFMsXG4gICAgICBpY29uOiBgJHtGVUVMX0lDT05fQVNTRVRfUEFUSH0vRGllc2VsIGZ1ZWwuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuRlVFTFMsXG4gICAgfSxcblxuICAgIC8vIEdhcyBuZXdcbiAgICBbRU5VTV9URU1QTEFURVMuTElRVUVGSUVEX05BVFVSQUxfR0FTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuTElRVUVGSUVEX05BVFVSQUxfR0FTLFxuICAgICAgaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vTmF0dXJhbCBnYXMgZ2VuZXJhdG9ycy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5MSVFVRUZJRURfTkFUVVJBTF9HQVMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuT05fU0lURV9QUk9EVUNUSU9OXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuT05fU0lURV9QUk9EVUNUSU9OLFxuICAgICAgaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vTmF0dXJhbCBnYXMgZ2VuZXJhdG9ycy5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5PTl9TSVRFX1BST0RVQ1RJT04sXG4gICAgfSxcblxuICAgIFtFTlVNX1RFTVBMQVRFUy5CVVJORVJTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQlVSTkVSUyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L1Bvd2VyIGNvbmRpdGlvbmluZyB1bml0IChQQ1UpLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkJVUk5FUlMsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuRkxVRV9HQVNfQU5BTFlaRVJTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuRkxVRV9HQVNfQU5BTFlaRVJTLFxuICAgICAgaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vUG93ZXIgY29uZGl0aW9uaW5nIHVuaXQgKFBDVSkuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuRkxVRV9HQVNfQU5BTFlaRVJTLFxuICAgIH0sXG4gICAgLy8gU29sYXIgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFtFTlVNX1RFTVBMQVRFUy5TT0xBUl9QT1dFUl06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlNPTEFSX1BPV0VSLFxuICAgICAgaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vU29sYXIuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuU09MQVJfUE9XRVIsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUE9XRVJfQ09ORElUSU9OSU5HX1VOSVRdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5QT1dFUl9DT05ESVRJT05JTkdfVU5JVCxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L1Bvd2VyIGNvbmRpdGlvbmluZyB1bml0IChQQ1UpLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLlBPV0VSX0NPTkRJVElPTklOR19VTklULFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLklOVkVSVEVSU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLklOVkVSVEVSUyxcbiAgICAgIGljb246IGAke0VORVJHWV9JQ09OX0FTU0VUX1BBVEh9L0ludmVydGVyLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLklOVkVSVEVSUyxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5CQVRURVJJRVNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5CQVRURVJJRVMsXG4gICAgICBpY29uOiBgJHtFTkVSR1lfSUNPTl9BU1NFVF9QQVRIfS9CYXR0ZXJ5LnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkJBVFRFUklFUyxcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLlpPTkVdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5aT05FLFxuICAgICAgLy8gaWNvbjogYCR7RU5FUkdZX0lDT05fQVNTRVRfUEFUSH0vQmF0dGVyeS5zdmdgLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlpPTkVfRU5FUkdZX0lURU1dOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5aT05FX0VORVJHWV9JVEVNLFxuICAgIH0sXG5cbiAgICAvLyBVTkNBVEVHT1JJWkVEXG4gICAgW0VOVU1fVEVNUExBVEVTLlVOQ0FURUdPUklaRURdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5VTkNBVEVHT1JJWkVELFxuICAgICAgaWNvbjogJycsXG4gICAgICAvLyBgJHtJQ09OX0FTU0VUX1BBVEh9L3JhaW4uc3ZnYCxcbiAgICB9LFxuXG4gICAgLy8gUGxhbnQgQ2VsbFxuICAgIFtFTlVNX1RFTVBMQVRFUy5QTEFOVF9DRUxMXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuUExBTlRfQ0VMTCxcbiAgICAgIGljb246IGAke1BMQU5UX0NFTExfUEFUSH0vQ2VsbC5zdmdgLFxuICAgICAgc3lzdGVtVHlwZTogRU5VTV9UWVBFUy5QTEFOVF9DRUxMLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLklOUFVUX1BMQU5UX0NFTExdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5JTlBVVF9QTEFOVF9DRUxMLFxuICAgICAgaWNvbjogJycsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuT1VUUFVUX1BMQU5UX0NFTExdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5PVVRQVVRfUExBTlRfQ0VMTCxcbiAgICAgIGljb246ICcnLFxuICAgIH0sXG5cbiAgICBbRU5VTV9URU1QTEFURVMuUExBTlRfQ0VMTF9JTlBVVF9HUk9VUF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlBMQU5UX0NFTExfSU5QVVRfR1JPVVAsXG4gICAgICBpY29uOiBgYCxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5QTEFOVF9DRUxMX09VVFBVVF9HUk9VUF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlBMQU5UX0NFTExfT1VUUFVUX0dST1VQLFxuICAgICAgaWNvbjogYGAsXG4gICAgfSxcblxuICAgIFtFTlVNX1RFTVBMQVRFUy5JTUFHRV9URU1QTEFURV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLklNQUdFX1RFTVBMQVRFLFxuICAgICAgaWNvbjogYGAsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUEFSQU1fVEFCTEVdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5QQVJBTV9UQUJMRSxcbiAgICAgIGljb246IGBgLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLk1BU1NfQkFMQU5DRV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLk1BU1NfQkFMQU5DRSxcbiAgICAgIGljb246IGBgLFxuICAgIH0sXG5cbiAgICAvLyBTVEVBTVxuICAgIFtFTlVNX1RFTVBMQVRFUy5TVEVBTV9QSVBFTElORV06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlNURUFNX1BJUEVMSU5FLFxuICAgICAgaWNvbjogYCR7U1RFQU1fSUNPTl9BU1NFVF9QQVRIfS9QaXBlbGluZS5zdmdgLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlZBTFVFU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlZBTFVFUyxcbiAgICAgIGljb246IGAke1NURUFNX0lDT05fQVNTRVRfUEFUSH0vU3RlYW1fVmFsdmUucG5nYCxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5TVEVBTV9UUkFQU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlNURUFNX1RSQVBTLFxuICAgICAgaWNvbjogYCR7U1RFQU1fSUNPTl9BU1NFVF9QQVRIfS9UcmFwLnBuZ2AsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuUFJFU1NVUkVfUkVHVUxBVE9SU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlBSRVNTVVJFX1JFR1VMQVRPUlMsXG4gICAgICBpY29uOiBgJHtTVEVBTV9JQ09OX0FTU0VUX1BBVEh9L1ByZXNzdXJlX1JlZ3VsYXRvci5wbmdgLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLlNBRkVUWV9WQUxVRVNfQU5EX0VRVUlQTUVOVF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlNBRkVUWV9WQUxVRVNfQU5EX0VRVUlQTUVOVCxcbiAgICAgIGljb246IGAke1NURUFNX0lDT05fQVNTRVRfUEFUSH0vc2FmZXR5IHZhbHZlLnBuZ2AsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQ09OREVOU0FURV9SRVRVUk5fU1lTVEVNXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQ09OREVOU0FURV9SRVRVUk5fU1lTVEVNLFxuICAgICAgaWNvbjogYCR7U1RFQU1fSUNPTl9BU1NFVF9QQVRIfS9Db25kZW5zYXRlIFJldHVybiBTeXN0ZW0ucG5nYCxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5ERUFFUkFUT1JTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuREVBRVJBVE9SUyxcbiAgICAgIGljb246IGAke1NURUFNX0lDT05fQVNTRVRfUEFUSH0vRGVhZXJhdG9ycy5wbmdgLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkZFRURXQVRFUl9QVU1QU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkZFRURXQVRFUl9QVU1QUyxcbiAgICAgIGljb246IGAke1NURUFNX0lDT05fQVNTRVRfUEFUSH0vRmVlZCBXYXRlciBQdW1wLnBuZ2AsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuQkxPV0RPV05fVEFOS1NdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5CTE9XRE9XTl9UQU5LUyxcbiAgICAgIGljb246IGAke1NURUFNX0lDT05fQVNTRVRfUEFUSH0vQmxvd2Rvd24gdGFuay5wbmdgLFxuICAgIH0sXG4gICAgW0VOVU1fVEVNUExBVEVTLkVYUEFOU0lPTl9UQU5LU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkVYUEFOU0lPTl9UQU5LUyxcbiAgICAgIGljb246IGAke1NURUFNX0lDT05fQVNTRVRfUEFUSH0vRXhwYW5zaW9uIFRhbmtzLnBuZ2AsXG4gICAgfSxcbiAgICBbRU5VTV9URU1QTEFURVMuSEVBVF9FWENIQU5HRVJTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuSEVBVF9FWENIQU5HRVJTLFxuICAgICAgaWNvbjogYCR7U1RFQU1fSUNPTl9BU1NFVF9QQVRIfS9oZWF0IGV4Y2hhbmdlcnMucG5nYCxcbiAgICB9LFxuICAgIFtFTlVNX1RFTVBMQVRFUy5UVVJCSU5FU106IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlRVUkJJTkVTLFxuICAgICAgaWNvbjogYCR7U1RFQU1fSUNPTl9BU1NFVF9QQVRIfS9zdGVhbSB0dXJiaW5lLnBuZ2AsXG4gICAgfSxcblxuICAgIC8vIFBsYW50IEJhc2ljXG4gICAgW0VOVU1fVEVNUExBVEVTLkdST1VQX0JBU0lDX0NPTVBPTkVOVF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLkdST1VQX0JBU0lDX0NPTVBPTkVOVCxcbiAgICAgIGljb246IGBgLFxuICAgIH0sXG5cbiAgICAgLy8gU3lzdGVtIFR5cGUgR3JvdXAgZHVwbGljYXRlIEVuZXJneSB3aXRoIFdhdGVyXG4gICAgIFtFTlVNX1RFTVBMQVRFUy5CT0lMRVJfRU5FUkdZXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQk9JTEVSX0VORVJHWSxcbiAgICAgIGljb246IGAke0lDT05fQVNTRVRfUEFUSH0vQm9pbGVyLnN2Z2AsXG4gICAgICBzeXN0ZW1UeXBlOiBFTlVNX1RZUEVTLkJPSUxFUixcbiAgICB9LFxuXG4gICAgW0VOVU1fVEVNUExBVEVTLkNPT0xJTkdfVE9XRVJfRU5FUkdZXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQ09PTElOR19UT1dFUl9FTkVSR1ksXG4gICAgICBpY29uOiBgJHtJQ09OX0FTU0VUX1BBVEh9L2Nvb2xpbmdfdG93ZXIuc3ZnYCxcbiAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuQ09PTElOR19UT1dFUixcbiAgICB9LFxuICB9O1xuXG4gIGV4cG9ydCBjb25zdCBXSVRIRFJBV19ESVNDSEFSR0VfSUNPTjoge1xuICAgIFtrZXkgaW4gc3RyaW5nXTogYW55O1xuICB9ID0ge1xuICAgIFtFTlVNX1RZUEVTLkZSRVNIX1NVUkZBQ0VfV0FURVJdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5GUkVTSF9TVVJGQUNFX1dBVEVSLFxuICAgICAgaWNvbkFjdGl2ZTogYCR7SUNPTl9BU1NFVF9XSVRIRFJBV19ESVNDSEFSR0VfSUNPTn0vRnJlc2ggc3VyZmFjZSB3YXRlciAtIER1by5zdmdgLFxuICAgICAgaWNvbkRpc2FibGVkOiBgJHtJQ09OX0FTU0VUX1dJVEhEUkFXX0RJU0NIQVJHRV9JQ09OfS9GcmVzaCBzdXJmYWNlIHdhdGVyLnN2Z2AsXG4gICAgfSxcbiAgICBbRU5VTV9UWVBFUy5USElSRF9QQVJUWV9TT1VSQ0VTXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuVEhJUkRfUEFSVFlfU09VUkNFUyxcbiAgICAgIGljb25BY3RpdmU6IGAke0lDT05fQVNTRVRfV0lUSERSQVdfRElTQ0hBUkdFX0lDT059L1RoaXJkIHBhcnR5IHNvdXJjZXMgLSBEdW8uc3ZnYCxcbiAgICAgIGljb25EaXNhYmxlZDogYCR7SUNPTl9BU1NFVF9XSVRIRFJBV19ESVNDSEFSR0VfSUNPTn0vVGhpcmQgcGFydHkgc291cmNlcy5zdmdgLFxuICAgICAgaXNIYXNXYXRlckNhcGNpdHk6IHRydWUsXG4gICAgfSxcbiAgICBbRU5VTV9UWVBFUy5USElSRF9QQVJUWV9ERVNUSU5BVElPTlNdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5USElSRF9QQVJUWV9ERVNUSU5BVElPTlMsXG4gICAgICBpY29uQWN0aXZlOiBgJHtJQ09OX0FTU0VUX1dJVEhEUkFXX0RJU0NIQVJHRV9JQ09OfS9UaGlyZCBwYXJ0eSBzb3VyY2VzIC0gRHVvLnN2Z2AsXG4gICAgICBpY29uRGlzYWJsZWQ6IGAke0lDT05fQVNTRVRfV0lUSERSQVdfRElTQ0hBUkdFX0lDT059L1RoaXJkIHBhcnR5IHNvdXJjZXMuc3ZnYCxcbiAgICAgIGlzSGFzV2F0ZXJDYXBjaXR5OiB0cnVlLFxuICAgIH0sXG4gICAgW0VOVU1fVFlQRVMuR1JPVU5EX1dBVEVSX05PTl9SRU5FV0FCTEVdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5HUk9VTkRfV0FURVJfTk9OX1JFTkVXQUJMRSxcbiAgICAgIGljb25BY3RpdmU6IGAke0lDT05fQVNTRVRfV0lUSERSQVdfRElTQ0hBUkdFX0lDT059L0dyb3VuZHdhdGVyIC0gbm9uLXJlbmV3YWJsZSAtIER1by5zdmdgLFxuICAgICAgaWNvbkRpc2FibGVkOiBgJHtJQ09OX0FTU0VUX1dJVEhEUkFXX0RJU0NIQVJHRV9JQ09OfS9Hcm91bmR3YXRlciAtIG5vbi1yZW5ld2FibGUuc3ZnYCxcbiAgICB9LFxuICAgIFtFTlVNX1RZUEVTLlBST0RVQ0VEX0VOVFJBSU5FRF06IHtcbiAgICAgIG5hbWU6IEVOVU1fVEVNUExBVEVTLlBST0RVQ0VEX0VOVFJBSU5FRCxcbiAgICAgIGljb25BY3RpdmU6IGAke0lDT05fQVNTRVRfV0lUSERSQVdfRElTQ0hBUkdFX0lDT059L0dyb3VuZHdhdGVyIC0gcmVuZXdhYmxlIC0gRHVvLnN2Z2AsXG4gICAgICBpY29uRGlzYWJsZWQ6IGAke0lDT05fQVNTRVRfV0lUSERSQVdfRElTQ0hBUkdFX0lDT059L0dyb3VuZHdhdGVyIC0gcmVuZXdhYmxlLnN2Z2AsXG4gICAgfSxcbiAgICBbRU5VTV9UWVBFUy5CUkFDS0lTSF9TVVJGQUNFX1dBVEVSXToge1xuICAgICAgbmFtZTogRU5VTV9URU1QTEFURVMuQlJBQ0tJU0hfU1VSRkFDRV9XQVRFUixcbiAgICAgIGljb25pY29uQWN0aXZlOiBgJHtJQ09OX0FTU0VUX1dJVEhEUkFXX0RJU0NIQVJHRV9JQ09OfS9CcmFja2lzaCBzdXJmYWNlIC0gRHVvLnN2Z2AsXG4gICAgICBpY29uRGlzYWJsZWQ6IGAke0lDT05fQVNTRVRfV0lUSERSQVdfRElTQ0hBUkdFX0lDT059L0JyYWNraXNoIHN1cmZhY2Uuc3ZnYCxcbiAgICB9LFxuICAgIFtFTlVNX1RZUEVTLkdST1VORF9XQVRFUl9SRU5FV0FCTEVdOiB7XG4gICAgICBuYW1lOiBFTlVNX1RFTVBMQVRFUy5HUk9VTkRfV0FURVJfUkVORVdBQkxFLFxuICAgICAgaWNvbkFjdGl2ZTogYCR7SUNPTl9BU1NFVF9XSVRIRFJBV19ESVNDSEFSR0VfSUNPTn0vR3JvdW5kd2F0ZXIgLSByZW5ld2FibGUgLSBEdW8uc3ZnYCxcbiAgICAgIGljb25EaXNhYmxlZDogYCR7SUNPTl9BU1NFVF9XSVRIRFJBV19ESVNDSEFSR0VfSUNPTn0vR3JvdW5kd2F0ZXIgLSByZW5ld2FibGUuc3ZnYCxcbiAgICB9LFxuICB9O1xuXG4gIGV4cG9ydCBjb25zdCBXSVRIRFJBV19ESVNDSEFSR0VfRElBR1JBTV9IT01FID0ge1xuICAgIHdpdGhkcmF3U291cmNlc0NoaWxkcmVuOiBbXG4gICAgICBFTlVNX1RZUEVTLldBVEVSX1RSRUFUTUVOVCxcbiAgICAgIEVOVU1fVFlQRVMuREVNSU5fV0FURVJfVFJFQVRNRU5ULFxuICAgICAgRU5VTV9UWVBFUy5ST19XQVRFUl9UUkVBVE1FTlQsXG4gICAgXSxcbiAgICBkaXNjaGFyZ2VEZXN0aW5hdGlvbnNDaGlsZHJlbjogW1xuICAgICAgRU5VTV9UWVBFUy5XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICAgIEVOVU1fVFlQRVMuREFGX1dBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgICAgRU5VTV9UWVBFUy5FVFBfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgICBFTlVNX1RZUEVTLk1CUl9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICAgIEVOVU1fVFlQRVMuWkxEX1dBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgIF0sXG4gIH07XG5cbiAgZXhwb3J0IGVudW0gQUNUSU9OX1JJR0hUX01FTlVfR1JPVVAge1xuICAgIFBMQU5UX1RFTVBMQVRFUyA9ICdQbGFudCBUZW1wbGF0ZXMnLFxuICAgIFBMQU5UX0NFTExTID0gJ1BsYW50IENlbGwnLFxuICAgIERBVEFfQk9YID0gJ01lYXN1cmVtZW50JyxcbiAgICBTWVNURU1fVEVNUExBVEVTID0gJ1N5c3RlbSBUZW1wbGF0ZXMnLFxuICAgIFdBVEVSX0NPTVBPTkVOVCA9ICdXYXRlciBDb21wb25lbnRzJyxcbiAgfVxuXG4gIGV4cG9ydCBlbnVtIERBVEFfQk9YX05BTUVfT0ZfQ09NUE9ORU5UIHtcbiAgICBJTkZMT1cgPSAnSW5mbG93IE9mJyxcbiAgICBPVVRGTE9XID0gJ091dGZsb3cgRnJvbScsXG4gIH1cblxuICBleHBvcnQgZW51bSBBQ1RJT05fUklHSFRfTUVOVSB7XG4gICAgQVBQTFlfVEVNUExBVEUgPSAnQXBwbHlUZW1wbGF0ZScsXG4gICAgTkVXX1BMQU5UX0NFTEwgPSAnTmV3UGxhbnRDZWxsJyxcbiAgICBOQU1FX1BMQU5UX0NFTEwgPSAnTmFtZVBsYW50Q2VsbCcsXG4gICAgQUREX0NPTVBPTkVOVCA9ICdBZGRDb21wb25lbnQnLFxuICB9XG5cbiAgZXhwb3J0IGNvbnN0IERBVEFfTUVOVSA9IFtcbiAgICB7XG4gICAgICBuYW1lOiAnUGxhbnQgVGVtcGxhdGVzJyxcbiAgICAgIGNvbXBvbmVudFR5cGU6IEFUT19FQ09NUE9ORU5UX1BMQU5UX1RZUEUuV0FURVIsXG4gICAgICBpc0ZpbHRlclR5cGU6IHRydWUsXG4gICAgICBncm91cFR5cGU6IEFDVElPTl9SSUdIVF9NRU5VX0dST1VQLlBMQU5UX1RFTVBMQVRFUyxcbiAgICAgIGNoaWxkcmVuOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnRm9vZCBhbmQgQmV2ZXJhZ2VzJyxcbiAgICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgICAgICAgYWN0aW9uVHlwZTogQUNUSU9OX1JJR0hUX01FTlUuQVBQTFlfVEVNUExBVEUsXG4gICAgICAgICAgaXNEcmFnOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ1Bvd2VyIHBsYW50JyxcbiAgICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgICAgICAgYWN0aW9uVHlwZTogQUNUSU9OX1JJR0hUX01FTlUuQVBQTFlfVEVNUExBVEUsXG4gICAgICAgICAgaXNEcmFnOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuXG4gICAgLy8ge1xuICAgIC8vICAgICBuYW1lOiAnUGxhbnQgQ2VsbHMnLFxuICAgIC8vICAgICBncm91cFR5cGU6IEFDVElPTl9SSUdIVF9NRU5VX0dST1VQLlBMQU5UX0NFTExTLFxuICAgIC8vICAgICBjb21wb25lbnRUeXBlOiBFX0NPTVBPTkVOVF9QTEFOVF9UWVBFLldBVEVSLFxuICAgIC8vICAgICBpc0ZpbHRlclR5cGU6IHRydWUsXG4gICAgLy8gICAgIGNoaWxkcmVuOiBbXG4gICAgLy8gICAgICAgICB7XG4gICAgLy8gICAgICAgICAgICAgbmFtZTogJ0JlZXIgUHJvZHVjdGlvbiBjZWxsJyxcbiAgICAvLyAgICAgICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgLy8gICAgICAgICAgICAgYWN0aW9uVHlwZTogQUNUSU9OX1JJR0hUX01FTlUuTkFNRV9QTEFOVF9DRUxMLFxuICAgIC8vICAgICAgICAgICAgIGlzRHJhZzogdHJ1ZSxcbiAgICAvLyAgICAgICAgICAgICBpc1ZpZXdNb2RlOiB0cnVlLFxuICAgIC8vICAgICAgICAgICAgIHN5c3RlbVR5cGU6IEVOVU1fVFlQRVMuUExBTlRfQ0VMTCxcbiAgICAvLyAgICAgICAgICAgICB0eXBlOiBFTlVNX1RZUEVTLlBMQU5UX0NFTEwsXG4gICAgLy8gICAgICAgICAgICAgaW5wdXRUeXBlOiBUWVBFX0lOUFVULlRFWFQsXG4gICAgLy8gICAgICAgICAgICAgZmM6IG5ldyBGb3JtQ29udHJvbCgnQmVlciBQcm9kdWN0aW9uIGNlbGwnLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAvLyAgICAgICAgICAgICBmY0JhY2t1cDogbmV3IEZvcm1Db250cm9sKCdCZWVyIFByb2R1Y3Rpb24gY2VsbCcsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgIC8vICAgICAgICAgfSxcbiAgICAvLyAgICAgICAgIHtcbiAgICAvLyAgICAgICAgICAgICBuYW1lOiAnTmV3IFBsYW50IENlbGwnLFxuICAgIC8vICAgICAgICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAvLyAgICAgICAgICAgICBhY3Rpb25UeXBlOiBBQ1RJT05fUklHSFRfTUVOVS5ORVdfUExBTlRfQ0VMTCxcbiAgICAvLyAgICAgICAgICAgICBpc0RyYWc6IGZhbHNlLFxuICAgIC8vICAgICAgICAgfSxcbiAgICAvLyAgICAgXSxcbiAgICAvLyB9LFxuICBdO1xuXG4gIGV4cG9ydCBjb25zdCBXQVRFUl9VU0lOR19TWVNURU0gPSBbXG4gICAgRU5VTV9UWVBFUy5DT09MSU5HX1RPV0VSLFxuICAgIEVOVU1fVFlQRVMuQk9JTEVSLFxuICAgIEVOVU1fVFlQRVMuT1RIRVIsXG4gICAgRU5VTV9UWVBFUy5QUk9DRVNTLFxuICAgIEVOVU1fVFlQRVMuRE9NRVNUSUNfVVNFLFxuICAgIEVOVU1fVFlQRVMuTEFORFNDQVBJTkdfSVJSSUdBVElPTixcbiAgXTtcblxuICBleHBvcnQgY29uc3QgUEFSQU1fVEFCTEVfU1RZTEUgPSB7XG4gICAgW0VOVU1fQ09MT1JTLkNFUlVMRUFOXToge1xuICAgICAgYm9yZGVyVGFibGU6IEVOVU1fQ09MT1JTLkNFUlVMRUFOLFxuICAgICAgYmdDb2xvcjogRU5VTV9DT0xPUlMuQ0VSVUxFQU5fQUxJQ0VfQkxVRSxcbiAgICB9LFxuICAgIFtFTlVNX0NPTE9SUy5EQU5VQkVdOiB7XG4gICAgICBib3JkZXJUYWJsZTogRU5VTV9DT0xPUlMuREFOVUJFLFxuICAgICAgYmdDb2xvcjogRU5VTV9DT0xPUlMuREFOVUJFX0FMSUNFX0JMVUUsXG4gICAgfSxcbiAgICBbRU5VTV9DT0xPUlMuRk9VTlRBSU5fQkxVRV06IHtcbiAgICAgIGJvcmRlclRhYmxlOiBFTlVNX0NPTE9SUy5GT1VOVEFJTl9CTFVFLFxuICAgICAgYmdDb2xvcjogRU5VTV9DT0xPUlMuQVpVUkUsXG4gICAgfSxcbiAgICBbRU5VTV9DT0xPUlMuR0FMTElBTk9dOiB7XG4gICAgICBib3JkZXJUYWJsZTogRU5VTV9DT0xPUlMuR0FMTElBTk8sXG4gICAgICBiZ0NvbG9yOiBFTlVNX0NPTE9SUy5PTERfTEFDRSxcbiAgICB9LFxuICAgIFtFTlVNX0NPTE9SUy5XSElURV06IHtcbiAgICAgIGJvcmRlclRhYmxlOiBFTlVNX0NPTE9SUy5XSElURSxcbiAgICAgIGJnQ29sb3I6IEVOVU1fQ09MT1JTLldISVRFLFxuICAgIH0sXG4gIH07XG5cbiAgLy8gU3lzdGVtIHR5cGUgaW5jbHVkZSBXYXRlclxuICBleHBvcnQgY29uc3QgVFlQRV9DT01QT05FTlRfV0FURVI6IHN0cmluZ1tdID0gW1xuICAgIEVOVU1fVFlQRVMuU1RPUkFHRSxcblxuICAgIEVOVU1fVFlQRVMuV0FURVJfVFJFQVRNRU5ULFxuICAgIEVOVU1fVFlQRVMuREVNSU5fV0FURVJfVFJFQVRNRU5ULFxuICAgIEVOVU1fVFlQRVMuUk9fV0FURVJfVFJFQVRNRU5ULFxuXG4gICAgRU5VTV9UWVBFUy5QUk9DRVNTLFxuXG4gICAgRU5VTV9UWVBFUy5XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICBFTlVNX1RZUEVTLkRBRl9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICBFTlVNX1RZUEVTLkVUUF9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICBFTlVNX1RZUEVTLk1CUl9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICBFTlVNX1RZUEVTLlpMRF9XQVNURVdBVEVSX1RSRUFUTUVOVCxcblxuICAgIEVOVU1fVFlQRVMuRE9NRVNUSUNfVVNFLFxuICAgIEVOVU1fVFlQRVMuQ09PTElOR19UT1dFUixcbiAgICBFTlVNX1RZUEVTLkJPSUxFUixcbiAgICBFTlVNX1RZUEVTLk9USEVSLFxuICAgIEVOVU1fVFlQRVMuTEFORFNDQVBJTkdfSVJSSUdBVElPTixcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuV2F0ZXJXaXRoZHJhd1NvdXJjZXMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLldhdGVyRGlzY2hhcmdlRGVzdGluYXRpb25zLFxuICBdO1xuXG4gIC8vIFRlbXBsYXRlIHR5cGUgaW5jbHVkZXMgV2F0ZXJcbiAgZXhwb3J0IGNvbnN0IFRZUEVfVEVNUExBVEVfV0FURVJfTk9STUFMOiBzdHJpbmdbXSA9IFtcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuUFJPQ0VTUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuQk9JTEVSLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5DT09MSU5HX1RPV0VSLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5FVFBfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlpMRF9XQVNURVdBVEVSX1RSRUFUTUVOVCxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuTUJSX1dBU1RFV0FURVJfVFJFQVRNRU5ULFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5EQUZfV0FTVEVXQVRFUl9UUkVBVE1FTlQsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlJPX1dBVEVSX1RSRUFUTUVOVCxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuREVNSU5fV0FURVJfVFJFQVRNRU5ULFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5TVE9SQUdFLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5ET01FU1RJQ19VU0UsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkxBTkRTQ0FQSU5HX0lSUklHQVRJT04sXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLk9USEVSLFxuICBdO1xuICAvLyBbJ1Byb2Nlc3MnLCAnQm9pbGVyJywgJ0Nvb2xpbmcgVG93ZXInLCAnRVRQIFdhc3Rld2F0ZXIgVHJlYXRtZW50JywgJ1pMRCBXYXN0ZXdhdGVyIFRyZWF0bWVudCcsICdNQlIgV2FzdGV3YXRlciBUcmVhdG1lbnQnLCAnREFGIFdhc3Rld2F0ZXIgVHJlYXRtZW50JyxcbiAgLy8gJ1JPIFdhdGVyIFRyZWF0bWVudCcsICdEZW1pbiBXYXRlciBUcmVhdG1lbnQnLCAnU3RvcmFnZScsICdEb21lc3RpYyBVc2UnLCAnTGFuZHNjYXBpbmcvSXJyaWdhdGlvbicsICdPdGhlciddO1xuICBleHBvcnQgY29uc3QgVFlQRV9URU1QTEFURV9XQVRFUl9XSVRIRFJBV19PUl9ESVNDSEFSR0U6IHN0cmluZ1tdID0gW1xuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5GUkVTSF9TVVJGQUNFX1dBVEVSLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5CUkFDS0lTSF9TVVJGQUNFX1dBVEVSLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5HUk9VTkRfV0FURVJfUkVORVdBQkxFLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5HUk9VTkRfV0FURVJfTk9OX1JFTkVXQUJMRSxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuUFJPRFVDRURfRU5UUkFJTkVELFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5USElSRF9QQVJUWV9TT1VSQ0VTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5USElSRF9QQVJUWV9ERVNUSU5BVElPTlMsXG4gIF07XG4gIC8vICBbJ0ZyZXNoIHN1cmZhY2Ugd2F0ZXInLCAnQnJhY2tpc2ggc3VyZmFjZSB3YXRlci8gc2Vhd2F0ZXInLCAnR3JvdW5kd2F0ZXIgLSBSZW5ld2FibGUnLCAnR3JvdW5kd2F0ZXIgLSBub24tcmVuZXdhYmxlJywgJ1Byb2R1Y2VkIC8gZW50cmFpbmVkIHdhdGVyJywgJ1RoaXJkIHBhcnR5IHNvdXJjZXMnLCAnVGhpcmQgcGFydHkgZGVzdGluYXRpb25zJ107XG4gIGV4cG9ydCBjb25zdCBUWVBFX1RFTVBMQVRFX0VMRUNUUklDSVRZOiBzdHJpbmdbXSA9IFtcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuR1JJRCxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuRElFU0VMX0dFTkVSQVRPUlMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLk5BVFVSQUxfR0FTX0dFTkVSQVRPUlMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlNPTEFSX1BPV0VSLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5UUkFOU0ZPUk1FUlMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlNXSVRDSF9HRUFSUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuTU9UT1JfQ09OVFJPTFMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlZBUklBQkxFX0ZSRVFVRU5DWV9EUklWRVJTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QT1dFUl9ESVNUUklCVVRJT05fU1lTVEVNUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuTElHSFRJTkdTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5HUk9VTkRJTkcsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkVMRUNUUklDX01FVEVSUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuRUxFQ1RSSUNfSU5EVVNUUklBTF9NT1RPUlMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkxJR0hUSU5HX1NZU1RFTVMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkVMRUNUUklDX0hWQUMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlJFRlJJR0VSQVRJT05fQ09PTElOR19TWVNURU1TLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QUk9DRVNTX0NPTlRST0xfQVVUT01BVElPTl9TWVNURU1TLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5PRkZJQ0VfRVFVSVBNRU5ULFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5DT01QUkVTU0VEX0FJUl9TWVNURU1TLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QUk9DRVNTX0VRVUlQTUVOVF9NQUNISU5FUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuTUFURVJJQUxfSEFORExJTkdfRVFVSVBNRU5ULFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QT1dFUl9ESVNUUklCVVRJT05fQ09OVFJPTF9TWVNURU1TLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QVU1QLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5CQVRURVJZX0VORVJHWV9TVE9SQUdFLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5FTEVDVFJJQ19GTFlXSEVFTF9FTkVSR1lfU1RPUkFHRSxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuUFVNUEVEX0hZRFJPX1NUT1JBR0UsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlRIRVJNQUxfRU5FUkdZX1NUT1JBR0UsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlNVUEVSX0NBUEFDSVRPUl9FTkVSR1lfU1RPUkFHRSxcbiAgXTtcbiAgLy8gWydHcmlkJywgJ0RpZXNlbCBHZW5lcmF0b3JzJywgJ05hdHVyYWwgZ2FzIGdlbmVyYXRvcnMnLCAnU29sYXIgUG93ZXInLCAnVHJhbnNmb3JtZXJzJywgJ1N3aXRjaGdlYXJzJywgJ01vdG9yQ29udHJvbHMnLCAnVmFyaWFibGVGcmVxdWVuY3lEcml2ZXMnLFxuICAvLyAnUG93ZXIgZGlzdHJpYnV0aW9uIHN5c3RlbXMnLCAnTGlnaHRpbmdzJywgJ0dyb3VuZGluZycsICdFbGVjdHJpYyBNZXRlcnMnLCAnSW5kdXN0cmlhbCBtb3RvcnMnLFxuICAvLyAnTGlnaHRpbmcgc3lzdGVtcycsICdIZWF0aW5nLCB2ZW50aWxhdGlvbiwgYW5kIGFpciBjb25kaXRpb25pbmcgKEhWQUMpIHN5c3RlbXMnLCAnUmVmcmlnZXJhdGlvbiBhbmQgY29vbGluZycsICdQcm9jZXNzIGNvbnRyb2wgYW5kIGF1dG9tYXRpb24nLCAnT2ZmaWNlIGVxdWlwbWVudCcsICdDb21wcmVzc2VkIGFpcicsXG4gIC8vICdQcm9jZXNzIGVxdWlwbWVudCBhbmQgbWFjaGluZXMnLCAnTWF0ZXJpYWwgaGFuZGxpbmcgZXF1aXBtZW50JywgJ1Bvd2VyIGRpc3RyaWJ1dGlvbiBhbmQgY29udHJvbCcsICdCYXR0ZXJ5IGVuZXJneSBzdG9yYWdlJywgJ0ZseXdoZWVsIGVuZXJneSBzdG9yYWdlJyxcbiAgLy8gJ1B1bXBlZCBoeWRybyBzdG9yYWdlJywgJ1RoZXJtYWwgZW5lcmd5IHN0b3JhZ2UnLCAnU3VwZXJjYXBhY2l0b3IgZW5lcmd5IHN0b3JhZ2UnXTtcbiAgZXhwb3J0IGNvbnN0IFRZUEVfVEVNUExBVEVfTkFUVVJBTF9HQVM6IHN0cmluZ1tdID0gW1xuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5OQVRVUkFMX0dBU19QSVBFTElORVMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkxJUVVFRklFRF9OQVRVUkFMX0dBUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuQ09NUFJFU1NFRF9OQVRVUkFMX0dBU19QSVBFTElORSxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuT05fU0lURV9QUk9EVUNUSU9OLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5DT01QUkVTU0VEX05BVFVSQUxfR0FTX1BST0RVQ1RJT04sXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkJPSUxFUlNfQU5EX0hFQVRFUlMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkZVUk5BQ0VTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QT1dFUl9HRU5FUkFUSU9OLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5DT0dFTkVSQVRJT04sXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkNPTUJJTkVEX0NZQ0xFX1BPV0VSX1BMQU5UUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuRlVFTF9GT1JfVkVISUNMRVNfQU5EX0VRVUlQTUVOVCxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuR0FTX01FVEVSUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuQlVSTkVSUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuRkxVRV9HQVNfQU5BTFlaRVJTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5DT01CVVNUSU9OX0NPTlRST0xfU1lTVEVNUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuR0FTX1NUT1JBR0VfVEFOS1MsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkdBU19QUkVTU1VSRV9SRUdVTEFUT1JTLFxuICBdO1xuICAvLyBbJ05hdHVyYWwgZ2FzIHBpcGVsaW5lcycsICdMaXF1ZWZpZWQgbmF0dXJhbCBnYXMnLCAnQ29tcHJlc3NlZCBuYXR1cmFsIGdhcyBwaXBlbGluZScsICdPbi1zaXRlIHByb2R1Y3Rpb24nLFxuICAvLyAnQ29tcHJlc3NlZCBuYXR1cmFsIGdhcyBwcm9kdWN0aW9uJywgJ0JvaWxlcnMgYW5kIGhlYXRlcnMnLCAnRnVybmFjZXMnLCAnUG93ZXIgZ2VuZXJhdGlvbicsICdDb2dlbmVyYXRpb24nLCAnQ29tYmluZWQgY3ljbGUgcG93ZXIgcGxhbnRzJyxcbiAgLy8gJ0Z1ZWwgZm9yIHZlaGljbGVzIGFuZCBlcXVpcG1lbnQnLCAnR2FzIG1ldGVycycsICdCdXJuZXJzJywgJ0ZsdWUgZ2FzIGFuYWx5emVycycsICdDb21idXN0aW9uIGNvbnRyb2wgc3lzdGVtcycsICdHYXMgc3RvcmFnZSB0YW5rcycsXG4gIC8vICdHYXMgcHJlc3N1cmUgcmVndWxhdG9ycyddO1xuICBleHBvcnQgY29uc3QgVFlQRV9URU1QTEFURV9GVUVMOiBzdHJpbmdbXSA9IFtcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuRElFU0VMX0ZVRUxTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5HQVNPTl9MSU5FUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuQklPRElFU0VMUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuS0VST1NFTlNFLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QUk9QQU5FUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuVEFOS0VSX1RSVUNLUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuUElQRUxJTkUsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLklORFVTVFJJQUxfQk9JTEVSUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuR0VORVJBVE9SUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuSU5EVVNUUklBTF9GVVJOQUNFUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuSU5EVVNUUklBTF9PVkVOUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuSU5EVVNUUklBTF9WRUhJQ0xFU19BTkRfRVFVSVBNRU5ULFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5GVUVMX01FVEVSUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuRlVFTF9ESVNQRU5TRVJTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5GVUVMX1NUUk9SQUdFX1RBTktTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5GVUVMX0ZJTFRSQVRJT05TLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5GVUVMX01BTkFHRU1FTlRTLFxuICBdO1xuICAvLyBbJ0RpZXNlbEZ1ZWxzJywgJ0dhc29ubGluZXMnLCAnQmlvZGllc2VscycsICdLZXJvc2VuZXMnLCAnUHJvcGFuZXMnLCAnVGFua2VyIFRydWNrcycsXG4gIC8vICdQaXBlbGluZScsICdJbmR1c3RyaWFsIGJvaWxlcnMnLCAnR2VuZXJhdG9ycycsICdJbmR1c3RyaWFsIGZ1cm5hY2VzJywgJ0luZHVzdHJpYWwgb3ZlbnMnLCAnSW5kdXN0cmlhbCB2ZWhpY2xlcyBhbmQgZXF1aXBtZW50JyxcbiAgLy8gJ0Z1ZWxNZXRlcnMnLCAnRnVlbERpc3BlbnNlcnMnLCAnRnVlbFN0b3JhZ2VUYW5rcycsICdGdWVsRmlsdHJhdGlvbnMnLCAnRnVlbE1hbmFnZW1lbnRzJ107XG4gIGV4cG9ydCBjb25zdCBUWVBFX1RFTVBMQVRFX1NURUFNOiBzdHJpbmdbXSA9IFtcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuU1RFQU1fUElQRUxJTkUsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlZBTFVFUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuU1RFQU1fVFJBUFMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlBSRVNTVVJFX1JFR1VMQVRPUlMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlNBRkVUWV9WQUxVRVNfQU5EX0VRVUlQTUVOVCxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuQ09OREVOU0FURV9SRVRVUk5fU1lTVEVNLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5ERUFFUkFUT1JTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5GRUVEV0FURVJfUFVNUFMsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkJMT1dET1dOX1RBTktTLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5FWFBBTlNJT05fVEFOS1MsXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkhFQVRfRVhDSEFOR0VSUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuVFVSQklORVMsXG4gIF07XG4gIC8vIFsnVmFsdmVzJywgJ1N0ZWFtIFRyYXBzJywgJ1ByZXNzdXJlIFJlZ3VsYXRvcicsICdTYWZldHkgVmFsdmVzIGFuZCBFcXVpcG1lbnQnLCAnQ29uZGVuc2F0ZSBSZXR1cm4gU3lzdGVtJywgJ0RlYWVyYXRvcnMnLFxuICAvLyAnRmVlZHdhdGVyIFB1bXBzJywgJ0Jsb3dkb3duIFRhbmtzJywgJ0V4cGFuc2lvbiBUYW5rcycsICdIZWF0IEV4Y2hhbmdlcnMnLCAnVHVyYmluZXMnXTtcbiAgZXhwb3J0IGNvbnN0IFRZUEVfVEVNUExBVEVfU1BFQ0lBTDogc3RyaW5nW10gPSBbXG4gICAgQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlNQRUNJQUxfUFJPQ0VTUyxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuU1BFQ0lBTF9TVE9SQUdFLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5TUEVDSUFMX1NUT1JFLFxuICAgIEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5TUEVDSUFMX0RJU0NIQVJHRSxcbiAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuU1BFQ0lBTF9PVEhFUixcbiAgXTtcblxuICBleHBvcnQgY29uc3QgVEVNUExBVEVfRFVQTElDQVRFOiBhbnkgPSB7XG4gICAgW0F0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5TVEVBTV9QSVBFTElORV06IEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QSVBFTElORSxcbiAgICBbQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLkJPSUxFUl9FTkVSR1ldOiBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuQk9JTEVSLFxuICAgIFtBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuQ09PTElOR19UT1dFUl9FTkVSR1ldOiBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuQ09PTElOR19UT1dFUixcbn07XG59XG4iXX0=