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