@tricoteuses/assemblee 1.0.7 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api.js +3 -9
- package/lib/api.mjs +4 -5
- package/lib/bugs/acteur-00010/plugin.test.js +3 -50
- package/lib/bugs/acteur-00010/plugin.test.mjs +1 -1
- package/lib/bugs/acteur-00010.js +2 -57
- package/lib/bugs/acteur-00010.mjs +1 -6
- package/lib/bugs/agenda-00002/plugin.test.js +3 -53
- package/lib/bugs/agenda-00002/plugin.test.mjs +1 -3
- package/lib/bugs/agenda-00002.js +3 -148
- package/lib/bugs/agenda-00002.mjs +1 -28
- package/lib/bugs/agenda-00008/plugin.test.js +3 -52
- package/lib/bugs/agenda-00008/plugin.test.mjs +1 -1
- package/lib/bugs/agenda-00008.js +2 -61
- package/lib/bugs/agenda-00008.mjs +1 -5
- package/lib/bugs/agenda-00011/plugin.test.js +5 -99
- package/lib/bugs/agenda-00011/plugin.test.mjs +3 -3
- package/lib/bugs/agenda-00011.js +4 -105
- package/lib/bugs/agenda-00011.mjs +3 -29
- package/lib/bugs.js +3 -164
- package/lib/bugs.mjs +1 -26
- package/lib/cleaners/actes_legislatifs.js +11 -115
- package/lib/cleaners/actes_legislatifs.mjs +7 -82
- package/lib/cleaners/acteurs.js +12 -92
- package/lib/cleaners/acteurs.mjs +7 -38
- package/lib/cleaners/amendements.js +10 -103
- package/lib/cleaners/amendements.mjs +4 -58
- package/lib/cleaners/documents.js +5 -67
- package/lib/cleaners/documents.mjs +1 -37
- package/lib/cleaners/dossiers_legislatifs.js +5 -61
- package/lib/cleaners/dossiers_legislatifs.mjs +1 -29
- package/lib/cleaners/index.js +1 -9
- package/lib/cleaners/index.mjs +1 -1
- package/lib/cleaners/organes.js +1 -33
- package/lib/cleaners/organes.mjs +1 -17
- package/lib/cleaners/reunions.js +4 -119
- package/lib/cleaners/reunions.mjs +1 -64
- package/lib/cleaners/scrutins.js +10 -102
- package/lib/cleaners/scrutins.mjs +1 -48
- package/lib/cleaners/xml.js +8 -42
- package/lib/cleaners/xml.mjs +6 -8
- package/lib/datasets.js +14 -113
- package/lib/datasets.mjs +6 -46
- package/lib/dates.js +7 -37
- package/lib/dates.mjs +9 -14
- package/lib/dossiers_legislatifs.js +6 -68
- package/lib/dossiers_legislatifs.mjs +5 -36
- package/lib/file_systems.js +56 -139
- package/lib/file_systems.mjs +1 -9
- package/lib/git.js +4 -53
- package/lib/git.mjs +1 -12
- package/lib/index.js +1 -15
- package/lib/index.mjs +1 -1
- package/lib/inserters.js +23 -146
- package/lib/inserters.mjs +6 -87
- package/lib/loaders.js +44 -316
- package/lib/loaders.mjs +12 -135
- package/lib/organes.js +1 -7
- package/lib/organes.mjs +1 -4
- package/lib/parsers/documents.js +22 -151
- package/lib/parsers/documents.mjs +19 -81
- package/lib/parsers/index.js +1 -4
- package/lib/parsers/index.mjs +1 -1
- package/lib/parsers/recherche_amendements.js +302 -527
- package/lib/parsers/recherche_amendements.mjs +8 -31
- package/lib/raw_types/acteurs_et_organes.d.ts +1 -30
- package/lib/raw_types/acteurs_et_organes.js +5 -124
- package/lib/raw_types/acteurs_et_organes.mjs +5 -105
- package/lib/raw_types/agendas.js +6 -89
- package/lib/raw_types/agendas.mjs +9 -65
- package/lib/raw_types/amendements.d.ts +2 -0
- package/lib/raw_types/amendements.js +10 -90
- package/lib/raw_types/amendements.mjs +11 -69
- package/lib/raw_types/dossiers_legislatifs.js +6 -96
- package/lib/raw_types/dossiers_legislatifs.mjs +6 -73
- package/lib/raw_types/scrutins.js +6 -81
- package/lib/raw_types/scrutins.mjs +9 -57
- package/lib/scripts/bugs_helper.js +2 -181
- package/lib/scripts/bugs_helper.mjs +2 -39
- package/lib/scripts/clean_data.js +27 -143
- package/lib/scripts/clean_data.mjs +15 -34
- package/lib/scripts/clean_reorganized_data.js +76 -240
- package/lib/scripts/clean_reorganized_data.mjs +36 -99
- package/lib/scripts/diff_amendements.js +19 -79
- package/lib/scripts/diff_amendements.mjs +17 -35
- package/lib/scripts/document_dossiers_legislatifs.js +17 -142
- package/lib/scripts/document_dossiers_legislatifs.mjs +6 -90
- package/lib/scripts/get_today_reunions.js +4 -22
- package/lib/scripts/get_today_reunions.mjs +1 -7
- package/lib/scripts/merge_scrutins.js +3 -47
- package/lib/scripts/merge_scrutins.mjs +1 -9
- package/lib/scripts/parse_textes_lois.js +15 -44
- package/lib/scripts/parse_textes_lois.mjs +18 -19
- package/lib/scripts/raw_types_from_amendements.js +3 -95
- package/lib/scripts/raw_types_from_amendements.mjs +1 -16
- package/lib/scripts/reorganize_data.js +74 -294
- package/lib/scripts/reorganize_data.mjs +22 -133
- package/lib/scripts/retrieve_deputes_photos.js +6 -119
- package/lib/scripts/retrieve_deputes_photos.mjs +7 -33
- package/lib/scripts/retrieve_documents.js +4 -192
- package/lib/scripts/retrieve_documents.mjs +2 -50
- package/lib/scripts/retrieve_open_data.js +44 -116
- package/lib/scripts/retrieve_open_data.mjs +14 -19
- package/lib/scripts/retrieve_pending_amendments.js +4 -98
- package/lib/scripts/retrieve_pending_amendments.mjs +1 -14
- package/lib/scripts/retrieve_senateurs_photos.js +18 -114
- package/lib/scripts/retrieve_senateurs_photos.mjs +20 -48
- package/lib/scripts/retrieve_textes_lois.js +3 -122
- package/lib/scripts/retrieve_textes_lois.mjs +3 -21
- package/lib/scripts/test_load.js +2 -10
- package/lib/scripts/test_load.mjs +2 -1
- package/lib/scripts/test_load_big_files.js +2 -10
- package/lib/scripts/test_load_big_files.mjs +2 -1
- package/lib/scripts/validate_json.js +4 -119
- package/lib/scripts/validate_json.mjs +2 -36
- package/lib/shared_types/codes_actes.js +1 -24
- package/lib/shared_types/codes_actes.mjs +3 -10
- package/lib/strings.js +1 -5
- package/lib/strings.mjs +1 -1
- package/lib/types/acteurs_et_organes.js +9 -84
- package/lib/types/acteurs_et_organes.mjs +10 -63
- package/lib/types/agendas.js +8 -90
- package/lib/types/agendas.mjs +11 -66
- package/lib/types/amendements.d.ts +2 -0
- package/lib/types/amendements.js +12 -92
- package/lib/types/amendements.mjs +15 -70
- package/lib/types/dossiers_legislatifs.js +8 -96
- package/lib/types/dossiers_legislatifs.mjs +10 -72
- package/lib/types/legislatures.js +1 -3
- package/lib/types/legislatures.mjs +1 -2
- package/lib/types/scrutins.js +8 -82
- package/lib/types/scrutins.mjs +11 -58
- package/lib/urls.js +3 -27
- package/lib/urls.mjs +3 -21
- package/package.json +1 -1
|
@@ -1,50 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("core-js/modules/es.symbol.js");
|
|
4
|
-
|
|
5
4
|
require("core-js/modules/es.symbol.description.js");
|
|
6
|
-
|
|
7
5
|
require("core-js/modules/es.symbol.iterator.js");
|
|
8
|
-
|
|
9
6
|
require("core-js/modules/es.array.iterator.js");
|
|
10
|
-
|
|
11
7
|
require("core-js/modules/es.string.iterator.js");
|
|
12
|
-
|
|
13
8
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
14
|
-
|
|
15
9
|
Object.defineProperty(exports, "__esModule", {
|
|
16
10
|
value: true
|
|
17
11
|
});
|
|
18
12
|
exports.TypePosition = exports.TypeMIMEType = exports.TypeAuteur = exports.SortEnum = exports.Nom = exports.Libelle = exports.DivisionType = exports.Convert = exports.CodeEtat = exports.Code = exports.AvantAApres = exports.Action = exports.AccordGouvernementDepotHorsDelai = void 0;
|
|
19
|
-
|
|
20
13
|
require("core-js/modules/es.array.concat.js");
|
|
21
|
-
|
|
22
14
|
require("core-js/modules/es.array.for-each.js");
|
|
23
|
-
|
|
24
15
|
require("core-js/modules/es.object.to-string.js");
|
|
25
|
-
|
|
26
16
|
require("core-js/modules/web.dom-collections.for-each.js");
|
|
27
|
-
|
|
28
17
|
require("core-js/modules/es.array.index-of.js");
|
|
29
|
-
|
|
30
18
|
require("core-js/modules/es.array.is-array.js");
|
|
31
|
-
|
|
32
19
|
require("core-js/modules/es.array.map.js");
|
|
33
|
-
|
|
34
20
|
require("core-js/modules/es.date.to-string.js");
|
|
35
|
-
|
|
36
21
|
require("core-js/modules/es.object.get-own-property-names.js");
|
|
37
|
-
|
|
38
22
|
require("core-js/modules/es.object.define-property.js");
|
|
39
|
-
|
|
40
23
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
41
|
-
|
|
42
24
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
43
|
-
|
|
44
25
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
45
|
-
|
|
46
26
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
47
|
-
|
|
48
27
|
// To parse this data:
|
|
49
28
|
//
|
|
50
29
|
// import { Amendements, AmendementWrapper, Convert, TexteLegislatif } from "./file";
|
|
@@ -57,24 +36,19 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
57
36
|
// match the expected interface, even if the JSON is valid.
|
|
58
37
|
var AccordGouvernementDepotHorsDelai;
|
|
59
38
|
exports.AccordGouvernementDepotHorsDelai = AccordGouvernementDepotHorsDelai;
|
|
60
|
-
|
|
61
39
|
(function (AccordGouvernementDepotHorsDelai) {
|
|
62
40
|
AccordGouvernementDepotHorsDelai["Accord"] = "Accord";
|
|
63
41
|
AccordGouvernementDepotHorsDelai["SansObjet"] = "Sans objet";
|
|
64
42
|
})(AccordGouvernementDepotHorsDelai || (exports.AccordGouvernementDepotHorsDelai = AccordGouvernementDepotHorsDelai = {}));
|
|
65
|
-
|
|
66
43
|
var Action;
|
|
67
44
|
exports.Action = Action;
|
|
68
|
-
|
|
69
45
|
(function (Action) {
|
|
70
46
|
Action["Cr\xE9ation"] = "cr\xE9ation";
|
|
71
47
|
Action["Modification"] = "modification";
|
|
72
48
|
Action["Suppression"] = "suppression";
|
|
73
49
|
})(Action || (exports.Action = Action = {}));
|
|
74
|
-
|
|
75
50
|
var Code;
|
|
76
51
|
exports.Code = Code;
|
|
77
|
-
|
|
78
52
|
(function (Code) {
|
|
79
53
|
Code["AC"] = "AC";
|
|
80
54
|
Code["At"] = "AT";
|
|
@@ -93,6 +67,7 @@ exports.Code = Code;
|
|
|
93
67
|
Code["Irr48"] = "IRR48";
|
|
94
68
|
Code["Irr53"] = "IRR53";
|
|
95
69
|
Code["Irrai"] = "IRRAI";
|
|
70
|
+
Code["Irraif"] = "IRRAIF";
|
|
96
71
|
Code["Irrd"] = "IRRD";
|
|
97
72
|
Code["Irrhd"] = "IRRHD";
|
|
98
73
|
Code["Irrsa"] = "IRRSA";
|
|
@@ -100,10 +75,8 @@ exports.Code = Code;
|
|
|
100
75
|
Code["Rt"] = "RT";
|
|
101
76
|
Code["T"] = "T";
|
|
102
77
|
})(Code || (exports.Code = Code = {}));
|
|
103
|
-
|
|
104
78
|
var Libelle;
|
|
105
79
|
exports.Libelle = Libelle;
|
|
106
|
-
|
|
107
80
|
(function (Libelle) {
|
|
108
81
|
Libelle["ADiscuter"] = "A discuter";
|
|
109
82
|
Libelle["AD\xE9poser"] = "A d\xE9poser";
|
|
@@ -115,13 +88,12 @@ exports.Libelle = Libelle;
|
|
|
115
88
|
Libelle["Irrecevable40"] = "Irrecevable 40";
|
|
116
89
|
Libelle["Retir\xE9"] = "Retir\xE9";
|
|
117
90
|
})(Libelle || (exports.Libelle = Libelle = {}));
|
|
118
|
-
|
|
119
91
|
var SortEnum;
|
|
120
92
|
exports.SortEnum = SortEnum;
|
|
121
|
-
|
|
122
93
|
(function (SortEnum) {
|
|
123
94
|
SortEnum["Adopt\xE9"] = "Adopt\xE9";
|
|
124
95
|
SortEnum["AutreIrrecevabilit\xE9"] = "Autre irrecevabilit\xE9";
|
|
96
|
+
SortEnum["AutreIrrecevabilit\xE940"] = "Autre irrecevabilit\xE9 40";
|
|
125
97
|
SortEnum["AutresIrrLOLF"] = "Autres irr LOLF";
|
|
126
98
|
SortEnum["AutresIrrLOLFSS"] = "Autres irr LOLFSS";
|
|
127
99
|
SortEnum["Cavalier45"] = "Cavalier (45)";
|
|
@@ -155,74 +127,58 @@ exports.SortEnum = SortEnum;
|
|
|
155
127
|
SortEnum["SousAmendement98"] = "Sous-amendement (98)";
|
|
156
128
|
SortEnum["Tomb\xE9"] = "Tomb\xE9";
|
|
157
129
|
})(SortEnum || (exports.SortEnum = SortEnum = {}));
|
|
158
|
-
|
|
159
130
|
var TypePosition;
|
|
160
131
|
exports.TypePosition = TypePosition;
|
|
161
|
-
|
|
162
132
|
(function (TypePosition) {
|
|
163
133
|
TypePosition["Dernier"] = "Dernier";
|
|
164
134
|
TypePosition["Milieu"] = "Milieu";
|
|
165
135
|
TypePosition["Premier"] = "Premier";
|
|
166
136
|
})(TypePosition || (exports.TypePosition = TypePosition = {}));
|
|
167
|
-
|
|
168
137
|
var AvantAApres;
|
|
169
138
|
exports.AvantAApres = AvantAApres;
|
|
170
|
-
|
|
171
139
|
(function (AvantAApres) {
|
|
172
140
|
AvantAApres["A"] = "A";
|
|
173
141
|
AvantAApres["Apr\xE8s"] = "Apr\xE8s";
|
|
174
142
|
AvantAApres["Avant"] = "Avant";
|
|
175
143
|
})(AvantAApres || (exports.AvantAApres = AvantAApres = {}));
|
|
176
|
-
|
|
177
144
|
var DivisionType;
|
|
178
145
|
exports.DivisionType = DivisionType;
|
|
179
|
-
|
|
180
146
|
(function (DivisionType) {
|
|
181
147
|
DivisionType["Annexe"] = "ANNEXE";
|
|
182
148
|
DivisionType["Article"] = "ARTICLE";
|
|
183
149
|
DivisionType["Chapitre"] = "CHAPITRE";
|
|
184
150
|
DivisionType["Titre"] = "TITRE";
|
|
185
151
|
})(DivisionType || (exports.DivisionType = DivisionType = {}));
|
|
186
|
-
|
|
187
152
|
var CodeEtat;
|
|
188
153
|
exports.CodeEtat = CodeEtat;
|
|
189
|
-
|
|
190
154
|
(function (CodeEtat) {
|
|
191
155
|
CodeEtat["B"] = "B";
|
|
192
156
|
CodeEtat["C"] = "C";
|
|
193
157
|
CodeEtat["D"] = "D";
|
|
194
158
|
})(CodeEtat || (exports.CodeEtat = CodeEtat = {}));
|
|
195
|
-
|
|
196
159
|
var Nom;
|
|
197
160
|
exports.Nom = Nom;
|
|
198
|
-
|
|
199
161
|
(function (Nom) {
|
|
200
162
|
Nom["PDF"] = "PDF";
|
|
201
163
|
})(Nom || (exports.Nom = Nom = {}));
|
|
202
|
-
|
|
203
164
|
var TypeMIMEType;
|
|
204
165
|
exports.TypeMIMEType = TypeMIMEType;
|
|
205
|
-
|
|
206
166
|
(function (TypeMIMEType) {
|
|
207
167
|
TypeMIMEType["Application"] = "application";
|
|
208
168
|
})(TypeMIMEType || (exports.TypeMIMEType = TypeMIMEType = {}));
|
|
209
|
-
|
|
210
169
|
var TypeAuteur;
|
|
211
170
|
exports.TypeAuteur = TypeAuteur;
|
|
212
|
-
|
|
213
171
|
(function (TypeAuteur) {
|
|
214
172
|
TypeAuteur["D\xE9put\xE9"] = "D\xE9put\xE9";
|
|
215
173
|
TypeAuteur["Gouvernement"] = "Gouvernement";
|
|
216
174
|
TypeAuteur["Rapporteur"] = "Rapporteur";
|
|
217
175
|
})(TypeAuteur || (exports.TypeAuteur = TypeAuteur = {}));
|
|
218
|
-
|
|
219
176
|
// Converts JSON strings to/from your types
|
|
220
177
|
// and asserts the results of JSON.parse at runtime
|
|
221
178
|
var Convert = /*#__PURE__*/function () {
|
|
222
179
|
function Convert() {
|
|
223
180
|
_classCallCheck(this, Convert);
|
|
224
181
|
}
|
|
225
|
-
|
|
226
182
|
_createClass(Convert, null, [{
|
|
227
183
|
key: "toAmendements",
|
|
228
184
|
value: function toAmendements(json) {
|
|
@@ -254,22 +210,16 @@ var Convert = /*#__PURE__*/function () {
|
|
|
254
210
|
return JSON.stringify(uncast(value, r("AmendementWrapper")), null, 2);
|
|
255
211
|
}
|
|
256
212
|
}]);
|
|
257
|
-
|
|
258
213
|
return Convert;
|
|
259
214
|
}();
|
|
260
|
-
|
|
261
215
|
exports.Convert = Convert;
|
|
262
|
-
|
|
263
216
|
function invalidValue(typ, val) {
|
|
264
217
|
var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
|
265
|
-
|
|
266
218
|
if (key) {
|
|
267
219
|
throw Error("Invalid value for key \"".concat(key, "\". Expected type ").concat(JSON.stringify(typ), " but got ").concat(JSON.stringify(val)));
|
|
268
220
|
}
|
|
269
|
-
|
|
270
221
|
throw Error("Invalid value ".concat(JSON.stringify(val), " for type ").concat(JSON.stringify(typ)));
|
|
271
222
|
}
|
|
272
|
-
|
|
273
223
|
function jsonToJSProps(typ) {
|
|
274
224
|
if (typ.jsonToJS === undefined) {
|
|
275
225
|
var map = {};
|
|
@@ -281,10 +231,8 @@ function jsonToJSProps(typ) {
|
|
|
281
231
|
});
|
|
282
232
|
typ.jsonToJS = map;
|
|
283
233
|
}
|
|
284
|
-
|
|
285
234
|
return typ.jsonToJS;
|
|
286
235
|
}
|
|
287
|
-
|
|
288
236
|
function jsToJSONProps(typ) {
|
|
289
237
|
if (typ.jsToJSON === undefined) {
|
|
290
238
|
var map = {};
|
|
@@ -296,38 +244,29 @@ function jsToJSONProps(typ) {
|
|
|
296
244
|
});
|
|
297
245
|
typ.jsToJSON = map;
|
|
298
246
|
}
|
|
299
|
-
|
|
300
247
|
return typ.jsToJSON;
|
|
301
248
|
}
|
|
302
|
-
|
|
303
249
|
function transform(val, typ, getProps) {
|
|
304
250
|
var key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
|
|
305
|
-
|
|
306
251
|
function transformPrimitive(typ, val) {
|
|
307
252
|
if (_typeof(typ) === _typeof(val)) return val;
|
|
308
253
|
return invalidValue(typ, val, key);
|
|
309
254
|
}
|
|
310
|
-
|
|
311
255
|
function transformUnion(typs, val) {
|
|
312
256
|
// val must validate against one typ in typs
|
|
313
257
|
var l = typs.length;
|
|
314
|
-
|
|
315
258
|
for (var i = 0; i < l; i++) {
|
|
316
259
|
var _typ = typs[i];
|
|
317
|
-
|
|
318
260
|
try {
|
|
319
261
|
return transform(val, _typ, getProps);
|
|
320
262
|
} catch (_) {}
|
|
321
263
|
}
|
|
322
|
-
|
|
323
264
|
return invalidValue(typs, val);
|
|
324
265
|
}
|
|
325
|
-
|
|
326
266
|
function transformEnum(cases, val) {
|
|
327
267
|
if (cases.indexOf(val) !== -1) return val;
|
|
328
268
|
return invalidValue(cases, val);
|
|
329
269
|
}
|
|
330
|
-
|
|
331
270
|
function transformArray(typ, val) {
|
|
332
271
|
// val must be an array with no invalid elements
|
|
333
272
|
if (!Array.isArray(val)) return invalidValue("array", val);
|
|
@@ -335,26 +274,20 @@ function transform(val, typ, getProps) {
|
|
|
335
274
|
return transform(el, typ, getProps);
|
|
336
275
|
});
|
|
337
276
|
}
|
|
338
|
-
|
|
339
277
|
function transformDate(val) {
|
|
340
278
|
if (val === null) {
|
|
341
279
|
return null;
|
|
342
280
|
}
|
|
343
|
-
|
|
344
281
|
var d = new Date(val);
|
|
345
|
-
|
|
346
282
|
if (isNaN(d.valueOf())) {
|
|
347
283
|
return invalidValue("Date", val);
|
|
348
284
|
}
|
|
349
|
-
|
|
350
285
|
return d;
|
|
351
286
|
}
|
|
352
|
-
|
|
353
287
|
function transformObject(props, additional, val) {
|
|
354
288
|
if (val === null || _typeof(val) !== "object" || Array.isArray(val)) {
|
|
355
289
|
return invalidValue("object", val);
|
|
356
290
|
}
|
|
357
|
-
|
|
358
291
|
var result = {};
|
|
359
292
|
Object.getOwnPropertyNames(props).forEach(function (key) {
|
|
360
293
|
var prop = props[key];
|
|
@@ -368,71 +301,58 @@ function transform(val, typ, getProps) {
|
|
|
368
301
|
});
|
|
369
302
|
return result;
|
|
370
303
|
}
|
|
371
|
-
|
|
372
304
|
if (typ === "any") return val;
|
|
373
|
-
|
|
374
305
|
if (typ === null) {
|
|
375
306
|
if (val === null) return val;
|
|
376
307
|
return invalidValue(typ, val);
|
|
377
308
|
}
|
|
378
|
-
|
|
379
309
|
if (typ === false) return invalidValue(typ, val);
|
|
380
|
-
|
|
381
310
|
while (_typeof(typ) === "object" && typ.ref !== undefined) {
|
|
382
311
|
typ = typeMap[typ.ref];
|
|
383
312
|
}
|
|
384
|
-
|
|
385
313
|
if (Array.isArray(typ)) return transformEnum(typ, val);
|
|
386
|
-
|
|
387
314
|
if (_typeof(typ) === "object") {
|
|
388
315
|
return typ.hasOwnProperty("unionMembers") ? transformUnion(typ.unionMembers, val) : typ.hasOwnProperty("arrayItems") ? transformArray(typ.arrayItems, val) : typ.hasOwnProperty("props") ? transformObject(getProps(typ), typ.additional, val) : invalidValue(typ, val);
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
|
|
316
|
+
}
|
|
317
|
+
// Numbers can be parsed by Date but shouldn't be.
|
|
392
318
|
if (typ === Date && typeof val !== "number") return transformDate(val);
|
|
393
319
|
return transformPrimitive(typ, val);
|
|
394
320
|
}
|
|
395
|
-
|
|
396
321
|
function cast(val, typ) {
|
|
397
322
|
return transform(val, typ, jsonToJSProps);
|
|
398
323
|
}
|
|
399
|
-
|
|
400
324
|
function uncast(val, typ) {
|
|
401
325
|
return transform(val, typ, jsToJSONProps);
|
|
402
326
|
}
|
|
403
|
-
|
|
404
327
|
function a(typ) {
|
|
405
328
|
return {
|
|
406
329
|
arrayItems: typ
|
|
407
330
|
};
|
|
408
331
|
}
|
|
409
|
-
|
|
410
332
|
function u() {
|
|
411
333
|
for (var _len = arguments.length, typs = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
412
334
|
typs[_key] = arguments[_key];
|
|
413
335
|
}
|
|
414
|
-
|
|
415
336
|
return {
|
|
416
337
|
unionMembers: typs
|
|
417
338
|
};
|
|
418
339
|
}
|
|
419
|
-
|
|
420
340
|
function o(props, additional) {
|
|
421
341
|
return {
|
|
422
342
|
props: props,
|
|
423
343
|
additional: additional
|
|
424
344
|
};
|
|
425
|
-
}
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
// function m(additional: any) {
|
|
426
348
|
// return { props: [], additional };
|
|
427
349
|
// }
|
|
428
350
|
|
|
429
|
-
|
|
430
351
|
function r(name) {
|
|
431
352
|
return {
|
|
432
353
|
ref: name
|
|
433
354
|
};
|
|
434
355
|
}
|
|
435
|
-
|
|
436
356
|
var typeMap = {
|
|
437
357
|
"Amendements": o([{
|
|
438
358
|
json: "textesLegislatifs",
|
|
@@ -1115,9 +1035,9 @@ var typeMap = {
|
|
|
1115
1035
|
}], false),
|
|
1116
1036
|
"AccordGouvernementDepotHorsDelai": ["Accord", "Sans objet"],
|
|
1117
1037
|
"Action": ["création", "modification", "suppression"],
|
|
1118
|
-
"Code": ["AC", "AT", "DI", "effacé", "ER", "ET", "IR", "IRR127", "IRR20", "IRR37", "IRR38", "IRR41", "IRR42", "IRR45", "IRR48", "IRR53", "IRRAI", "IRRD", "IRRHD", "IRRSA", "R", "RT", "T"],
|
|
1038
|
+
"Code": ["AC", "AT", "DI", "effacé", "ER", "ET", "IR", "IRR127", "IRR20", "IRR37", "IRR38", "IRR41", "IRR42", "IRR45", "IRR48", "IRR53", "IRRAI", "IRRAIF", "IRRD", "IRRHD", "IRRSA", "R", "RT", "T"],
|
|
1119
1039
|
"Libelle": ["A discuter", "A déposer", "Discuté", "effacé", "En recevabilité", "En traitement", "Irrecevable", "Irrecevable 40", "Retiré"],
|
|
1120
|
-
"SortEnum": ["Adopté", "Autre irrecevabilité", "Autres irr LOLF", "Autres irr LOLFSS", "Cavalier (45)", "Cavalier budgétaire", "Cavalier social", "Champ de l'habilitation (38)", "Charge", "CMP (45)", "Crédits", "Disposition réglementaire (37)", "Domaine de la loi (41)", "Domaine loi organique (127)", "Doublon", "Entonnoir (45)", "Gage", "Hors-délais", "Injonction (20)", "Irr en première partie", "Irr en seconde partie", "LOLF", "LOLFSS", "Non soutenu", "Ordre du jour (48)", "R", "Ratification traité (53)", "Rejeté", "Retiré", "Retiré après publication", "Retiré avant publication", "Satisfait ou inopérant (42)", "Sous-amendement (98)", "Tombé"],
|
|
1040
|
+
"SortEnum": ["Adopté", "Autre irrecevabilité", "Autre irrecevabilité 40", "Autres irr LOLF", "Autres irr LOLFSS", "Cavalier (45)", "Cavalier budgétaire", "Cavalier social", "Champ de l'habilitation (38)", "Charge", "CMP (45)", "Crédits", "Disposition réglementaire (37)", "Domaine de la loi (41)", "Domaine loi organique (127)", "Doublon", "Entonnoir (45)", "Gage", "Hors-délais", "Injonction (20)", "Irr en première partie", "Irr en seconde partie", "LOLF", "LOLFSS", "Non soutenu", "Ordre du jour (48)", "R", "Ratification traité (53)", "Rejeté", "Retiré", "Retiré après publication", "Retiré avant publication", "Satisfait ou inopérant (42)", "Sous-amendement (98)", "Tombé"],
|
|
1121
1041
|
"TypePosition": ["Dernier", "Milieu", "Premier"],
|
|
1122
1042
|
"AvantAApres": ["A", "Après", "Avant"],
|
|
1123
1043
|
"DivisionType": ["ANNEXE", "ARTICLE", "CHAPITRE", "TITRE"],
|
|
@@ -1126,4 +1046,4 @@ var typeMap = {
|
|
|
1126
1046
|
"TypeMIMEType": ["application"],
|
|
1127
1047
|
"TypeAuteur": ["Député", "Gouvernement", "Rapporteur"]
|
|
1128
1048
|
};
|
|
1129
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsIkFjdGlvbiIsIkNvZGUiLCJMaWJlbGxlIiwiU29ydEVudW0iLCJUeXBlUG9zaXRpb24iLCJBdmFudEFBcHJlcyIsIkRpdmlzaW9uVHlwZSIsIkNvZGVFdGF0IiwiTm9tIiwiVHlwZU1JTUVUeXBlIiwiVHlwZUF1dGV1ciIsIkNvbnZlcnQiLCJqc29uIiwiY2FzdCIsIkpTT04iLCJwYXJzZSIsInIiLCJ2YWx1ZSIsInN0cmluZ2lmeSIsInVuY2FzdCIsImludmFsaWRWYWx1ZSIsInR5cCIsInZhbCIsImtleSIsIkVycm9yIiwianNvblRvSlNQcm9wcyIsImpzb25Ub0pTIiwidW5kZWZpbmVkIiwibWFwIiwicHJvcHMiLCJmb3JFYWNoIiwicCIsImpzIiwianNUb0pTT05Qcm9wcyIsImpzVG9KU09OIiwidHJhbnNmb3JtIiwiZ2V0UHJvcHMiLCJ0cmFuc2Zvcm1QcmltaXRpdmUiLCJ0cmFuc2Zvcm1VbmlvbiIsInR5cHMiLCJsIiwibGVuZ3RoIiwiaSIsIl8iLCJ0cmFuc2Zvcm1FbnVtIiwiY2FzZXMiLCJpbmRleE9mIiwidHJhbnNmb3JtQXJyYXkiLCJBcnJheSIsImlzQXJyYXkiLCJlbCIsInRyYW5zZm9ybURhdGUiLCJkIiwiRGF0ZSIsImlzTmFOIiwidmFsdWVPZiIsInRyYW5zZm9ybU9iamVjdCIsImFkZGl0aW9uYWwiLCJyZXN1bHQiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwicHJvcCIsInYiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJyZWYiLCJ0eXBlTWFwIiwidW5pb25NZW1iZXJzIiwiYXJyYXlJdGVtcyIsImEiLCJ1IiwibyIsIm5hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcmF3X3R5cGVzL2FtZW5kZW1lbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IEFtZW5kZW1lbnRzLCBBbWVuZGVtZW50V3JhcHBlciwgQ29udmVydCwgVGV4dGVMZWdpc2xhdGlmIH0gZnJvbSBcIi4vZmlsZVwiO1xuLy9cbi8vICAgY29uc3QgYW1lbmRlbWVudHMgPSBDb252ZXJ0LnRvQW1lbmRlbWVudHMoanNvbik7XG4vLyAgIGNvbnN0IGFtZW5kZW1lbnRXcmFwcGVyID0gQ29udmVydC50b0FtZW5kZW1lbnRXcmFwcGVyKGpzb24pO1xuLy8gICBjb25zdCB0ZXh0ZUxlZ2lzbGF0aWYgPSBDb252ZXJ0LnRvVGV4dGVMZWdpc2xhdGlmKGpzb24pO1xuLy9cbi8vIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBKU09OIGRvZXNuJ3Rcbi8vIG1hdGNoIHRoZSBleHBlY3RlZCBpbnRlcmZhY2UsIGV2ZW4gaWYgdGhlIEpTT04gaXMgdmFsaWQuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudHMge1xuICB0ZXh0ZXNMZWdpc2xhdGlmczogVGV4dGVMZWdpc2xhdGlmW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgIFwiQHhtbG5zOnhzaVwiOiAgICAgICBzdHJpbmc7XG4gICAgcmVmVGV4dGVMZWdpc2xhdGlmOiBzdHJpbmc7XG4gICAgYW1lbmRlbWVudHM6ICAgICAgICBBbWVuZGVtZW50c0NsYXNzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzQ2xhc3Mge1xuICAgIGFtZW5kZW1lbnQ6IEFtZW5kZW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50V3JhcHBlciB7XG4gIGFtZW5kZW1lbnQ6IEFtZW5kZW1lbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50IHtcbiAgICBcIkB4bWxuc1wiOiAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdWlkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBjaHJvbm90YWc6ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxlZ2lzbGF0dXJlOiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgaWRlbnRpZmljYXRpb246ICAgICAgICAgICAgICAgICAgIElkZW50aWZpY2F0aW9uO1xuICAgIGV4YW1lblJlZjogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdGV4dGVMZWdpc2xhdGlmUmVmOiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0cmlBbWVuZGVtZW50OiAgICAgICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGNhcmRpbmFsaXRlQW1kdE11bHRpcGxlczogICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYW1lbmRlbWVudFBhcmVudFJlZjogICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBzaWduYXRhaXJlczogICAgICAgICAgICAgICAgICAgICAgU2lnbmF0YWlyZXM7XG4gICAgcG9pbnRldXJGcmFnbWVudFRleHRlOiAgICAgICAgICAgIFBvaW50ZXVyRnJhZ21lbnRUZXh0ZTtcbiAgICBjb3JwczogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29ycHM7XG4gICAgY3ljbGVEZVZpZTogICAgICAgICAgICAgICAgICAgICAgIEN5Y2xlRGVWaWU7XG4gICAgcmVwcmVzZW50YXRpb25zOiAgICAgICAgICAgICAgICAgIFJlcHJlc2VudGF0aW9ucyB8IG51bGw7XG4gICAgc2VhbmNlRGlzY3Vzc2lvblJlZjogICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhcnRpY2xlOTk6ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxvaVJlZmVyZW5jZTogICAgICAgICAgICAgICAgICAgICBMb2lSZWZlcmVuY2U7XG4gICAgZGlzY3Vzc2lvbkNvbW11bmU6ICAgICAgICAgICAgICAgIERpc2N1c3Npb247XG4gICAgZGlzY3Vzc2lvbklkZW50aXF1ZTogICAgICAgICAgICAgIERpc2N1c3Npb247XG4gICAgYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWk6IEFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpO1xufVxuXG5leHBvcnQgZW51bSBBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSB7XG4gICAgQWNjb3JkID0gXCJBY2NvcmRcIixcbiAgICBTYW5zT2JqZXQgPSBcIlNhbnMgb2JqZXRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3Mge1xuICAgIFwiQHhtbG5zOnhzaVwiOiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiOiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3JwcyB7XG4gICAgY2FydG91Y2hlSW5mb3JtYXRpZj86IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBjb250ZW51QXV0ZXVyPzogICAgICAgQ29udGVudUF1dGV1cjtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgICAgICBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnVBdXRldXIge1xuICAgIGRpc3Bvc2l0aWY/OiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdmFudEFwcGVsPzogICAgICAgICAgICAgICBBdmFudEFwcGVsO1xuICAgIGV4cG9zZVNvbW1haXJlPzogICAgICAgICAgIHN0cmluZztcbiAgICBhbm5leGVFeHBvc2VTb21tYWlyZT86ICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiAgICAgICAgICAgICBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY/OiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY7XG4gICAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF2YW50QXBwZWwge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGRpc3Bvc2l0aWY/OiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRiB7XG4gICAgbGlzdGVQcm9ncmFtbWVzPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZMaXN0ZVByb2dyYW1tZXM7XG4gICAgc29sZGVBRT86ICAgICAgICAgc3RyaW5nO1xuICAgIHNvbGRlQ1A/OiAgICAgICAgIHN0cmluZztcbiAgICBjcEVnYWxBZTogICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZMaXN0ZVByb2dyYW1tZXMge1xuICAgIHByb2dyYW1tZTogUHVycGxlUHJvZ3JhbW1lW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVycGxlUHJvZ3JhbW1lIHtcbiAgICBsaWJlbGxlOiAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgcHJvZ3JhbW1lUmVmOiAgICAgICAgICAgc3RyaW5nO1xuICAgIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnQ6IHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudDogICAgICAgICBzdHJpbmc7XG4gICAgYWN0aW9uOiAgICAgICAgICAgICAgICAgQWN0aW9uO1xuICAgIGxpZ25lc0NyZWRpdHM6ICAgICAgICAgIFB1cnBsZUxpZ25lc0NyZWRpdHM7XG59XG5cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gICAgQ3LDqWF0aW9uID0gXCJjcsOpYXRpb25cIixcbiAgICBNb2RpZmljYXRpb24gPSBcIm1vZGlmaWNhdGlvblwiLFxuICAgIFN1cHByZXNzaW9uID0gXCJzdXBwcmVzc2lvblwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFB1cnBsZUxpZ25lc0NyZWRpdHMge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGxpZ25lQ3JlZGl0PzogIExpZ25lQ3JlZGl0Q2xhc3NbXSB8IExpZ25lQ3JlZGl0Q2xhc3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRDbGFzcyB7XG4gICAgaWQ6ICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxpYmVsbGU6ICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50OiBzdHJpbmc7XG4gICAgY3JlZGl0UGFpZW1lbnQ6ICAgICAgICAgc3RyaW5nO1xuICAgIGFjdGlvbjogICAgICAgICAgICAgICAgIEFjdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlIge1xuICAgIGxpc3RlUHJvZ3JhbW1lcz86IERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUkxpc3RlUHJvZ3JhbW1lcztcbiAgICB0b3RhbEFFPzogICAgICAgICBUb3RhbDtcbiAgICB0b3RhbENQPzogICAgICAgICBUb3RhbDtcbiAgICBjcEVnYWxBZTogICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSTGlzdGVQcm9ncmFtbWVzIHtcbiAgICBwcm9ncmFtbWU6IExpZ25lQ3JlZGl0RWxlbWVudFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0cyB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG4gICAgbGlnbmVDcmVkaXQ/OiAgTGlnbmVDcmVkaXRFbGVtZW50W10gfCBMaWduZUNyZWRpdEVsZW1lbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRFbGVtZW50IHtcbiAgICBsaWJlbGxlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBwcm9ncmFtbWVSZWY/OiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmU6IHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlOiAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlOiAgICAgICAgIHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudEFubnVsZTogICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhY3Rpb246ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFjdGlvbjtcbiAgICBsaWduZXNDcmVkaXRzPzogICAgICAgICAgICAgICAgICAgICAgIExpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0cztcbiAgICBpZD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUb3RhbCB7XG4gICAgc3VwcGxlbWVudGFpcmU6IHN0cmluZztcbiAgICBhbm51bGU6ICAgICAgICAgc3RyaW5nO1xuICAgIHNvbGRlOiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3ljbGVEZVZpZSB7XG4gICAgZGF0ZURlcG90OiAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBEYXRlO1xuICAgIGRhdGVQdWJsaWNhdGlvbjogICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgRGF0ZTtcbiAgICBzb3VtaXNBcnRpY2xlNDA6ICAgIHN0cmluZztcbiAgICBldGF0RGVzVHJhaXRlbWVudHM6IEV0YXRERVNUcmFpdGVtZW50cztcbiAgICBkYXRlU29ydDogICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IERhdGU7XG4gICAgc29ydDogICAgICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBTb3J0RW51bTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdGF0REVTVHJhaXRlbWVudHMge1xuICAgIGV0YXQ6ICAgICBFdGF0O1xuICAgIHNvdXNFdGF0OiBTb3VzRXRhdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdGF0IHtcbiAgICBjb2RlOiAgICBDb2RlO1xuICAgIGxpYmVsbGU6IExpYmVsbGU7XG59XG5cbmV4cG9ydCBlbnVtIENvZGUge1xuICAgIEFDID0gXCJBQ1wiLFxuICAgIEF0ID0gXCJBVFwiLFxuICAgIERpID0gXCJESVwiLFxuICAgIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgICBFciA9IFwiRVJcIixcbiAgICBFdCA9IFwiRVRcIixcbiAgICBJUiA9IFwiSVJcIixcbiAgICBJcnIxMjcgPSBcIklSUjEyN1wiLFxuICAgIElycjIwID0gXCJJUlIyMFwiLFxuICAgIElycjM3ID0gXCJJUlIzN1wiLFxuICAgIElycjM4ID0gXCJJUlIzOFwiLFxuICAgIElycjQxID0gXCJJUlI0MVwiLFxuICAgIElycjQyID0gXCJJUlI0MlwiLFxuICAgIElycjQ1ID0gXCJJUlI0NVwiLFxuICAgIElycjQ4ID0gXCJJUlI0OFwiLFxuICAgIElycjUzID0gXCJJUlI1M1wiLFxuICAgIElycmFpID0gXCJJUlJBSVwiLFxuICAgIElycmQgPSBcIklSUkRcIixcbiAgICBJcnJoZCA9IFwiSVJSSERcIixcbiAgICBJcnJzYSA9IFwiSVJSU0FcIixcbiAgICBSID0gXCJSXCIsXG4gICAgUnQgPSBcIlJUXCIsXG4gICAgVCA9IFwiVFwiLFxufVxuXG5leHBvcnQgZW51bSBMaWJlbGxlIHtcbiAgICBBRGlzY3V0ZXIgPSBcIkEgZGlzY3V0ZXJcIixcbiAgICBBRMOpcG9zZXIgPSBcIkEgZMOpcG9zZXJcIixcbiAgICBEaXNjdXTDqSA9IFwiRGlzY3V0w6lcIixcbiAgICBFZmZhY8OpID0gXCJlZmZhY8OpXCIsXG4gICAgRW5SZWNldmFiaWxpdMOpID0gXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gICAgRW5UcmFpdGVtZW50ID0gXCJFbiB0cmFpdGVtZW50XCIsXG4gICAgSXJyZWNldmFibGUgPSBcIklycmVjZXZhYmxlXCIsXG4gICAgSXJyZWNldmFibGU0MCA9IFwiSXJyZWNldmFibGUgNDBcIixcbiAgICBSZXRpcsOpID0gXCJSZXRpcsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU291c0V0YXQge1xuICAgIGNvZGU/OiAgICAgICAgIENvZGU7XG4gICAgbGliZWxsZT86ICAgICAgU29ydEVudW07XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFNvcnRFbnVtIHtcbiAgICBBZG9wdMOpID0gXCJBZG9wdMOpXCIsXG4gICAgQXV0cmVJcnJlY2V2YWJpbGl0w6kgPSBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqVwiLFxuICAgIEF1dHJlc0lyckxPTEYgPSBcIkF1dHJlcyBpcnIgTE9MRlwiLFxuICAgIEF1dHJlc0lyckxPTEZTUyA9IFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgICBDYXZhbGllcjQ1ID0gXCJDYXZhbGllciAoNDUpXCIsXG4gICAgQ2F2YWxpZXJCdWRnw6l0YWlyZSA9IFwiQ2F2YWxpZXIgYnVkZ8OpdGFpcmVcIixcbiAgICBDYXZhbGllclNvY2lhbCA9IFwiQ2F2YWxpZXIgc29jaWFsXCIsXG4gICAgQ2hhbXBEZUxIYWJpbGl0YXRpb24zOCA9IFwiQ2hhbXAgZGUgbCdoYWJpbGl0YXRpb24gKDM4KVwiLFxuICAgIENoYXJnZSA9IFwiQ2hhcmdlXCIsXG4gICAgQ21wNDUgPSBcIkNNUCAoNDUpXCIsXG4gICAgQ3LDqWRpdHMgPSBcIkNyw6lkaXRzXCIsXG4gICAgRGlzcG9zaXRpb25Sw6lnbGVtZW50YWlyZTM3ID0gXCJEaXNwb3NpdGlvbiByw6lnbGVtZW50YWlyZSAoMzcpXCIsXG4gICAgRG9tYWluZURlTGFMb2k0MSA9IFwiRG9tYWluZSBkZSBsYSBsb2kgKDQxKVwiLFxuICAgIERvbWFpbmVMb2lPcmdhbmlxdWUxMjcgPSBcIkRvbWFpbmUgbG9pIG9yZ2FuaXF1ZSAoMTI3KVwiLFxuICAgIERvdWJsb24gPSBcIkRvdWJsb25cIixcbiAgICBFbnRvbm5vaXI0NSA9IFwiRW50b25ub2lyICg0NSlcIixcbiAgICBHYWdlID0gXCJHYWdlXCIsXG4gICAgSG9yc0TDqWxhaXMgPSBcIkhvcnMtZMOpbGFpc1wiLFxuICAgIEluam9uY3Rpb24yMCA9IFwiSW5qb25jdGlvbiAoMjApXCIsXG4gICAgSXJyRW5QcmVtacOocmVQYXJ0aWUgPSBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gICAgSXJyRW5TZWNvbmRlUGFydGllID0gXCJJcnIgZW4gc2Vjb25kZSBwYXJ0aWVcIixcbiAgICBMb2xmID0gXCJMT0xGXCIsXG4gICAgTG9sZnNzID0gXCJMT0xGU1NcIixcbiAgICBOb25Tb3V0ZW51ID0gXCJOb24gc291dGVudVwiLFxuICAgIE9yZHJlRHVKb3VyNDggPSBcIk9yZHJlIGR1IGpvdXIgKDQ4KVwiLFxuICAgIFIgPSBcIlJcIixcbiAgICBSYXRpZmljYXRpb25UcmFpdMOpNTMgPSBcIlJhdGlmaWNhdGlvbiB0cmFpdMOpICg1MylcIixcbiAgICBSZWpldMOpID0gXCJSZWpldMOpXCIsXG4gICAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxuICAgIFJldGlyw6lBcHLDqHNQdWJsaWNhdGlvbiA9IFwiUmV0aXLDqSBhcHLDqHMgcHVibGljYXRpb25cIixcbiAgICBSZXRpcsOpQXZhbnRQdWJsaWNhdGlvbiA9IFwiUmV0aXLDqSBhdmFudCBwdWJsaWNhdGlvblwiLFxuICAgIFNhdGlzZmFpdE91SW5vcMOpcmFudDQyID0gXCJTYXRpc2ZhaXQgb3UgaW5vcMOpcmFudCAoNDIpXCIsXG4gICAgU291c0FtZW5kZW1lbnQ5OCA9IFwiU291cy1hbWVuZGVtZW50ICg5OClcIixcbiAgICBUb21iw6kgPSBcIlRvbWLDqVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc2N1c3Npb24ge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGlkRGlzY3Vzc2lvbj86IHN0cmluZztcbiAgICB0eXBlUG9zaXRpb24/OiBUeXBlUG9zaXRpb247XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVQb3NpdGlvbiB7XG4gICAgRGVybmllciA9IFwiRGVybmllclwiLFxuICAgIE1pbGlldSA9IFwiTWlsaWV1XCIsXG4gICAgUHJlbWllciA9IFwiUHJlbWllclwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aWZpY2F0aW9uIHtcbiAgICBudW1lcm9Mb25nOiAgICAgICAgICBzdHJpbmc7XG4gICAgbnVtZXJvT3JkcmVEZXBvdDogICAgc3RyaW5nO1xuICAgIHByZWZpeGVPcmdhbmVFeGFtZW46IHN0cmluZztcbiAgICBudW1lcm9SZWN0OiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9pUmVmZXJlbmNlIHtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgIHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgICAgIHN0cmluZztcbiAgICBjb2RlTG9pPzogICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBudWxsIHwgc3RyaW5nO1xuICAgIGRpdmlzaW9uQ29kZUxvaT86IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IG51bGwgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnRldXJGcmFnbWVudFRleHRlIHtcbiAgICBwYXJ0aWVBbWVuZGFibGVSZWY6ICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgZGl2aXNpb24/OiAgICAgICAgICAgRGl2aXNpb247XG4gICAgYW1lbmRlbWVudFN0YW5kYXJkPzogQW1lbmRlbWVudFN0YW5kYXJkO1xuICAgIG1pc3Npb25WaXNlZT86ICAgICAgIE1pc3Npb25WaXNlZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50U3RhbmRhcmQge1xuICAgIGFsaW5lYTogQWxpbmVhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsaW5lYSB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiAgICAgIHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgICAgICAgc3RyaW5nO1xuICAgIGF2YW50X0FfQXByZXM/OiAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgbnVsbCB8IHN0cmluZztcbiAgICBudW1lcm8/OiAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhbGluZWFEZXNpZ25hdGlvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXZpc2lvbiB7XG4gICAgdGl0cmU6ICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlOiBudWxsIHwgc3RyaW5nO1xuICAgIGFydGljbGVEZXNpZ25hdGlvbjogICAgICAgbnVsbCB8IHN0cmluZztcbiAgICB0eXBlOiAgICAgICAgICAgICAgICAgICAgIERpdmlzaW9uVHlwZTtcbiAgICBhdmFudF9BX0FwcmVzOiAgICAgICAgICAgIEF2YW50QUFwcmVzO1xuICAgIGRpdmlzaW9uUmF0dGFjaGVlOiAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGFydGljbGVBZGRpdGlvbm5lbDogICAgICAgc3RyaW5nO1xuICAgIGNoYXBpdHJlQWRkaXRpb25uZWw6ICAgICAgc3RyaW5nO1xuICAgIHVybERpdmlzaW9uVGV4dGVWaXNlOiAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBBdmFudEFBcHJlcyB7XG4gICAgQSA9IFwiQVwiLFxuICAgIEFwcsOocyA9IFwiQXByw6hzXCIsXG4gICAgQXZhbnQgPSBcIkF2YW50XCIsXG59XG5cbmV4cG9ydCBlbnVtIERpdmlzaW9uVHlwZSB7XG4gICAgQW5uZXhlID0gXCJBTk5FWEVcIixcbiAgICBBcnRpY2xlID0gXCJBUlRJQ0xFXCIsXG4gICAgQ2hhcGl0cmUgPSBcIkNIQVBJVFJFXCIsXG4gICAgVGl0cmUgPSBcIlRJVFJFXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWlzc2lvblZpc2VlIHtcbiAgICBjb2RlRXRhdDogICAgICAgICAgQ29kZUV0YXQ7XG4gICAgY29kZU1pc3Npb25NaW5lZmk6IHN0cmluZztcbiAgICBsaWJlbGxlTWlzc2lvbjogICAgc3RyaW5nO1xuICAgIG1pc3Npb25SZWY6ICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIENvZGVFdGF0IHtcbiAgICBCID0gXCJCXCIsXG4gICAgQyA9IFwiQ1wiLFxuICAgIEQgPSBcIkRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXByZXNlbnRhdGlvbnMge1xuICAgIHJlcHJlc2VudGF0aW9uOiBSZXByZXNlbnRhdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXByZXNlbnRhdGlvbiB7XG4gICAgbm9tOiAgICAgICAgICAgICAgICAgICAgIE5vbTtcbiAgICB0eXBlTWltZTogICAgICAgICAgICAgICAgVHlwZU1JTUU7XG4gICAgc3RhdHV0UmVwcmVzZW50YXRpb246ICAgIFN0YXR1dFJlcHJlc2VudGF0aW9uO1xuICAgIHJlcFNvdXJjZTogICAgICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgb2Zmc2V0OiAgICAgICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcztcbiAgICBjb250ZW51OiAgICAgICAgICAgICAgICAgQ29udGVudTtcbiAgICBkYXRlRGlzcG9SZXByZXNlbnRhdGlvbjogQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnUge1xuICAgIGRvY3VtZW50VVJJOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIE5vbSB7XG4gICAgUERGID0gXCJQREZcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXRSZXByZXNlbnRhdGlvbiB7XG4gICAgdmVyYmF0aW06ICAgICAgIHN0cmluZztcbiAgICBjYW5vbmlxdWU6ICAgICAgc3RyaW5nO1xuICAgIG9mZmljaWVsbGU6ICAgICBzdHJpbmc7XG4gICAgdHJhbnNjcmlwdGlvbjogIHN0cmluZztcbiAgICBlbnJlZ2lzdHJlbWVudDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVNSU1FIHtcbiAgICB0eXBlOiAgICBUeXBlTUlNRVR5cGU7XG4gICAgc3ViVHlwZTogTm9tO1xufVxuXG5leHBvcnQgZW51bSBUeXBlTUlNRVR5cGUge1xuICAgIEFwcGxpY2F0aW9uID0gXCJhcHBsaWNhdGlvblwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25hdGFpcmVzIHtcbiAgICBhdXRldXI6ICAgICAgICBBdXRldXI7XG4gICAgY29zaWduYXRhaXJlczogQ29zaWduYXRhaXJlcztcbiAgICBzdWZmaXhlOiAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgbGliZWxsZTogICAgICAgbnVsbCB8IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRldXIge1xuICAgIHR5cGVBdXRldXI6ICAgICAgICAgICAgICAgIFR5cGVBdXRldXI7XG4gICAgZ291dmVybmVtZW50UmVmOiAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGFjdGV1clJlZjogICAgICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBncm91cGVQb2xpdGlxdWVSZWY6ICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZVJlZjogQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBUeXBlQXV0ZXVyIHtcbiAgICBEw6lwdXTDqSA9IFwiRMOpcHV0w6lcIixcbiAgICBHb3V2ZXJuZW1lbnQgPSBcIkdvdXZlcm5lbWVudFwiLFxuICAgIFJhcHBvcnRldXIgPSBcIlJhcHBvcnRldXJcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3NpZ25hdGFpcmVzIHtcbiAgICBcIkB4bWxuczp4c2lcIj86IHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgIHN0cmluZztcbiAgICBhY3RldXJSZWY/OiAgICBzdHJpbmdbXSB8IHN0cmluZztcbn1cblxuLy8gQ29udmVydHMgSlNPTiBzdHJpbmdzIHRvL2Zyb20geW91ciB0eXBlc1xuLy8gYW5kIGFzc2VydHMgdGhlIHJlc3VsdHMgb2YgSlNPTi5wYXJzZSBhdCBydW50aW1lXG5leHBvcnQgY2xhc3MgQ29udmVydCB7XG4gICAgcHVibGljIHN0YXRpYyB0b0FtZW5kZW1lbnRzKGpzb246IHN0cmluZyk6IEFtZW5kZW1lbnRzIHtcbiAgICAgICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkFtZW5kZW1lbnRzXCIpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFtZW5kZW1lbnRzVG9Kc29uKHZhbHVlOiBBbWVuZGVtZW50cyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJBbWVuZGVtZW50c1wiKSksIG51bGwsIDIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgdG9UZXh0ZUxlZ2lzbGF0aWYoanNvbjogc3RyaW5nKTogVGV4dGVMZWdpc2xhdGlmIHtcbiAgICAgICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIlRleHRlTGVnaXNsYXRpZlwiKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyB0ZXh0ZUxlZ2lzbGF0aWZUb0pzb24odmFsdWU6IFRleHRlTGVnaXNsYXRpZik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpLCBudWxsLCAyKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRvQW1lbmRlbWVudFdyYXBwZXIoanNvbjogc3RyaW5nKTogQW1lbmRlbWVudFdyYXBwZXIge1xuICAgICAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiQW1lbmRlbWVudFdyYXBwZXJcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYW1lbmRlbWVudFdyYXBwZXJUb0pzb24odmFsdWU6IEFtZW5kZW1lbnRXcmFwcGVyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIkFtZW5kZW1lbnRXcmFwcGVyXCIpKSwgbnVsbCwgMik7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSA9ICcnKTogbmV2ZXIge1xuICAgIGlmIChrZXkpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYEludmFsaWQgdmFsdWUgZm9yIGtleSBcIiR7a2V5fVwiLiBFeHBlY3RlZCB0eXBlICR7SlNPTi5zdHJpbmdpZnkodHlwKX0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KHZhbCl9YCk7XG4gICAgfVxuICAgIHRocm93IEVycm9yKGBJbnZhbGlkIHZhbHVlICR7SlNPTi5zdHJpbmdpZnkodmFsKX0gZm9yIHR5cGUgJHtKU09OLnN0cmluZ2lmeSh0eXApfWAsICk7XG59XG5cbmZ1bmN0aW9uIGpzb25Ub0pTUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXAuanNvblRvSlMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBtYXA6IGFueSA9IHt9O1xuICAgICAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiBtYXBbcC5qc29uXSA9IHsga2V5OiBwLmpzLCB0eXA6IHAudHlwIH0pO1xuICAgICAgICB0eXAuanNvblRvSlMgPSBtYXA7XG4gICAgfVxuICAgIHJldHVybiB0eXAuanNvblRvSlM7XG59XG5cbmZ1bmN0aW9uIGpzVG9KU09OUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXAuanNUb0pTT04gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBtYXA6IGFueSA9IHt9O1xuICAgICAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiBtYXBbcC5qc10gPSB7IGtleTogcC5qc29uLCB0eXA6IHAudHlwIH0pO1xuICAgICAgICB0eXAuanNUb0pTT04gPSBtYXA7XG4gICAgfVxuICAgIHJldHVybiB0eXAuanNUb0pTT047XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybSh2YWw6IGFueSwgdHlwOiBhbnksIGdldFByb3BzOiBhbnksIGtleTogYW55ID0gJycpOiBhbnkge1xuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXA6IHN0cmluZywgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodHlwZW9mIHR5cCA9PT0gdHlwZW9mIHZhbCkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgICAgICBjb25zdCBsID0gdHlwcy5sZW5ndGg7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB0eXAgPSB0eXBzW2ldO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcyk7XG4gICAgICAgICAgICB9IGNhdGNoIChfKSB7fVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1FbnVtKGNhc2VzOiBzdHJpbmdbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAoY2FzZXMuaW5kZXhPZih2YWwpICE9PSAtMSkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShjYXNlcywgdmFsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1BcnJheSh0eXA6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICAvLyB2YWwgbXVzdCBiZSBhbiBhcnJheSB3aXRoIG5vIGludmFsaWQgZWxlbWVudHNcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiBpbnZhbGlkVmFsdWUoXCJhcnJheVwiLCB2YWwpO1xuICAgICAgICByZXR1cm4gdmFsLm1hcChlbCA9PiB0cmFuc2Zvcm0oZWwsIHR5cCwgZ2V0UHJvcHMpKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZCA9IG5ldyBEYXRlKHZhbCk7XG4gICAgICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJEYXRlXCIsIHZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGQ7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtT2JqZWN0KHByb3BzOiB7IFtrOiBzdHJpbmddOiBhbnkgfSwgYWRkaXRpb25hbDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJvYmplY3RcIiwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9O1xuICAgICAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwcm9wcykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV07XG4gICAgICAgICAgICBjb25zdCB2ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbCwga2V5KSA/IHZhbFtrZXldIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgcmVzdWx0W3Byb3Aua2V5XSA9IHRyYW5zZm9ybSh2LCBwcm9wLnR5cCwgZ2V0UHJvcHMsIHByb3Aua2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocHJvcHMsIGtleSkpIHtcbiAgICAgICAgICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGlmICh0eXAgPT09IFwiYW55XCIpIHJldHVybiB2YWw7XG4gICAgaWYgKHR5cCA9PT0gbnVsbCkge1xuICAgICAgICBpZiAodmFsID09PSBudWxsKSByZXR1cm4gdmFsO1xuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB9XG4gICAgaWYgKHR5cCA9PT0gZmFsc2UpIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpO1xuICAgIHdoaWxlICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiICYmIHR5cC5yZWYgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdO1xuICAgIH1cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0eXApKSByZXR1cm4gdHJhbnNmb3JtRW51bSh0eXAsIHZhbCk7XG4gICAgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKSA/IHRyYW5zZm9ybVVuaW9uKHR5cC51bmlvbk1lbWJlcnMsIHZhbClcbiAgICAgICAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwiYXJyYXlJdGVtc1wiKSAgICA/IHRyYW5zZm9ybUFycmF5KHR5cC5hcnJheUl0ZW1zLCB2YWwpXG4gICAgICAgICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcInByb3BzXCIpICAgICAgICAgPyB0cmFuc2Zvcm1PYmplY3QoZ2V0UHJvcHModHlwKSwgdHlwLmFkZGl0aW9uYWwsIHZhbClcbiAgICAgICAgICAgIDogaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB9XG4gICAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbCk7XG4gICAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbCk7XG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gICAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcyk7XG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKTtcbn1cblxuZnVuY3Rpb24gYSh0eXA6IGFueSkge1xuICAgIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9O1xufVxuXG5mdW5jdGlvbiB1KC4uLnR5cHM6IGFueVtdKSB7XG4gICAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH07XG59XG5cbmZ1bmN0aW9uIG8ocHJvcHM6IGFueVtdLCBhZGRpdGlvbmFsOiBhbnkpIHtcbiAgICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9O1xufVxuXG4vLyBmdW5jdGlvbiBtKGFkZGl0aW9uYWw6IGFueSkge1xuLy8gICAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9O1xuLy8gfVxuXG5mdW5jdGlvbiByKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiB7IHJlZjogbmFtZSB9O1xufVxuXG5jb25zdCB0eXBlTWFwOiBhbnkgPSB7XG4gICAgXCJBbWVuZGVtZW50c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsIGpzOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsIHR5cDogYShyKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlRleHRlTGVnaXNsYXRpZlwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInJlZlRleHRlTGVnaXNsYXRpZlwiLCBqczogXCJyZWZUZXh0ZUxlZ2lzbGF0aWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhbWVuZGVtZW50c1wiLCBqczogXCJhbWVuZGVtZW50c1wiLCB0eXA6IHIoXCJBbWVuZGVtZW50c0NsYXNzXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudHNDbGFzc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRcIiwganM6IFwiYW1lbmRlbWVudFwiLCB0eXA6IGEocihcIkFtZW5kZW1lbnRcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudFdyYXBwZXJcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJhbWVuZGVtZW50XCIsIGpzOiBcImFtZW5kZW1lbnRcIiwgdHlwOiByKFwiQW1lbmRlbWVudFwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFtZW5kZW1lbnRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnNcIiwganM6IFwiQHhtbG5zXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNocm9ub3RhZ1wiLCBqczogXCJjaHJvbm90YWdcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJsZWdpc2xhdHVyZVwiLCBqczogXCJsZWdpc2xhdHVyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImlkZW50aWZpY2F0aW9uXCIsIGpzOiBcImlkZW50aWZpY2F0aW9uXCIsIHR5cDogcihcIklkZW50aWZpY2F0aW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJleGFtZW5SZWZcIiwganM6IFwiZXhhbWVuUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidGV4dGVMZWdpc2xhdGlmUmVmXCIsIGpzOiBcInRleHRlTGVnaXNsYXRpZlJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRyaUFtZW5kZW1lbnRcIiwganM6IFwidHJpQW1lbmRlbWVudFwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNhcmRpbmFsaXRlQW1kdE11bHRpcGxlc1wiLCBqczogXCJjYXJkaW5hbGl0ZUFtZHRNdWx0aXBsZXNcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhbWVuZGVtZW50UGFyZW50UmVmXCIsIGpzOiBcImFtZW5kZW1lbnRQYXJlbnRSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzaWduYXRhaXJlc1wiLCBqczogXCJzaWduYXRhaXJlc1wiLCB0eXA6IHIoXCJTaWduYXRhaXJlc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwicG9pbnRldXJGcmFnbWVudFRleHRlXCIsIGpzOiBcInBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiLCB0eXA6IHIoXCJQb2ludGV1ckZyYWdtZW50VGV4dGVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvcnBzXCIsIGpzOiBcImNvcnBzXCIsIHR5cDogcihcIkNvcnBzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjeWNsZURlVmllXCIsIGpzOiBcImN5Y2xlRGVWaWVcIiwgdHlwOiByKFwiQ3ljbGVEZVZpZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwicmVwcmVzZW50YXRpb25zXCIsIGpzOiBcInJlcHJlc2VudGF0aW9uc1wiLCB0eXA6IHUocihcIlJlcHJlc2VudGF0aW9uc1wiKSwgbnVsbCkgfSxcbiAgICAgICAgeyBqc29uOiBcInNlYW5jZURpc2N1c3Npb25SZWZcIiwganM6IFwic2VhbmNlRGlzY3Vzc2lvblJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFydGljbGU5OVwiLCBqczogXCJhcnRpY2xlOTlcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJsb2lSZWZlcmVuY2VcIiwganM6IFwibG9pUmVmZXJlbmNlXCIsIHR5cDogcihcIkxvaVJlZmVyZW5jZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzY3Vzc2lvbkNvbW11bmVcIiwganM6IFwiZGlzY3Vzc2lvbkNvbW11bmVcIiwgdHlwOiByKFwiRGlzY3Vzc2lvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzY3Vzc2lvbklkZW50aXF1ZVwiLCBqczogXCJkaXNjdXNzaW9uSWRlbnRpcXVlXCIsIHR5cDogcihcIkRpc2N1c3Npb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpXCIsIGpzOiBcImFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpXCIsIHR5cDogcihcIkFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ29ycHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjYXJ0b3VjaGVJbmZvcm1hdGlmXCIsIGpzOiBcImNhcnRvdWNoZUluZm9ybWF0aWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImNvbnRlbnVBdXRldXJcIiwganM6IFwiY29udGVudUF1dGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQ29udGVudUF1dGV1clwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb250ZW51QXV0ZXVyXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZlwiLCBqczogXCJkaXNwb3NpdGlmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdmFudEFwcGVsXCIsIGpzOiBcImF2YW50QXBwZWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkF2YW50QXBwZWxcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJleHBvc2VTb21tYWlyZVwiLCBqczogXCJleHBvc2VTb21tYWlyZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYW5uZXhlRXhwb3NlU29tbWFpcmVcIiwganM6IFwiYW5uZXhlRXhwb3NlU29tbWFpcmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIsIGpzOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiLCBqczogXCJkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBdmFudEFwcGVsXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZlwiLCBqczogXCJkaXNwb3NpdGlmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJsaXN0ZVByb2dyYW1tZXNcIiwganM6IFwibGlzdGVQcm9ncmFtbWVzXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRkxpc3RlUHJvZ3JhbW1lc1wiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcInNvbGRlQUVcIiwganM6IFwic29sZGVBRVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwic29sZGVDUFwiLCBqczogXCJzb2xkZUNQXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjcEVnYWxBZVwiLCBqczogXCJjcEVnYWxBZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRkxpc3RlUHJvZ3JhbW1lc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInByb2dyYW1tZVwiLCBqczogXCJwcm9ncmFtbWVcIiwgdHlwOiBhKHIoXCJQdXJwbGVQcm9ncmFtbWVcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUHVycGxlUHJvZ3JhbW1lXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwicHJvZ3JhbW1lUmVmXCIsIGpzOiBcInByb2dyYW1tZVJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYWN0aW9uXCIsIGpzOiBcImFjdGlvblwiLCB0eXA6IHIoXCJBY3Rpb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpZ25lc0NyZWRpdHNcIiwganM6IFwibGlnbmVzQ3JlZGl0c1wiLCB0eXA6IHIoXCJQdXJwbGVMaWduZXNDcmVkaXRzXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUHVycGxlTGlnbmVzQ3JlZGl0c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpZ25lQ3JlZGl0XCIsIGpzOiBcImxpZ25lQ3JlZGl0XCIsIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiTGlnbmVDcmVkaXRDbGFzc1wiKSksIHIoXCJMaWduZUNyZWRpdENsYXNzXCIpKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJMaWduZUNyZWRpdENsYXNzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiaWRcIiwganM6IFwiaWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJjcmVkaXRQYWllbWVudFwiLCBqczogXCJjcmVkaXRQYWllbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibGlzdGVQcm9ncmFtbWVzXCIsIGpzOiBcImxpc3RlUHJvZ3JhbW1lc1wiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSTGlzdGVQcm9ncmFtbWVzXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwidG90YWxBRVwiLCBqczogXCJ0b3RhbEFFXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUb3RhbFwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcInRvdGFsQ1BcIiwganM6IFwidG90YWxDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiVG90YWxcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJjcEVnYWxBZVwiLCBqczogXCJjcEVnYWxBZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJMaXN0ZVByb2dyYW1tZXNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJwcm9ncmFtbWVcIiwganM6IFwicHJvZ3JhbW1lXCIsIHR5cDogYShyKFwiTGlnbmVDcmVkaXRFbGVtZW50XCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkxpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpZ25lQ3JlZGl0XCIsIGpzOiBcImxpZ25lQ3JlZGl0XCIsIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiTGlnbmVDcmVkaXRFbGVtZW50XCIpKSwgcihcIkxpZ25lQ3JlZGl0RWxlbWVudFwiKSkpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTGlnbmVDcmVkaXRFbGVtZW50XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwicHJvZ3JhbW1lUmVmXCIsIGpzOiBcInByb2dyYW1tZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFN1cHBsZW1lbnRhaXJlXCIsIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmVcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRTdXBwbGVtZW50YWlyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGVcIiwganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudEFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50QW5udWxlXCIsIGpzOiBcImNyZWRpdFBhaWVtZW50QW5udWxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYWN0aW9uXCIsIGpzOiBcImFjdGlvblwiLCB0eXA6IHIoXCJBY3Rpb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpZ25lc0NyZWRpdHNcIiwganM6IFwibGlnbmVzQ3JlZGl0c1wiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiTGlnbmVDcmVkaXRMaWduZXNDcmVkaXRzXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiaWRcIiwganM6IFwiaWRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJUb3RhbFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInN1cHBsZW1lbnRhaXJlXCIsIGpzOiBcInN1cHBsZW1lbnRhaXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYW5udWxlXCIsIGpzOiBcImFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInNvbGRlXCIsIGpzOiBcInNvbGRlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkN5Y2xlRGVWaWVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJkYXRlRGVwb3RcIiwganM6IFwiZGF0ZURlcG90XCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBEYXRlKSB9LFxuICAgICAgICB7IGpzb246IFwiZGF0ZVB1YmxpY2F0aW9uXCIsIGpzOiBcImRhdGVQdWJsaWNhdGlvblwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgRGF0ZSkgfSxcbiAgICAgICAgeyBqc29uOiBcInNvdW1pc0FydGljbGU0MFwiLCBqczogXCJzb3VtaXNBcnRpY2xlNDBcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJldGF0RGVzVHJhaXRlbWVudHNcIiwganM6IFwiZXRhdERlc1RyYWl0ZW1lbnRzXCIsIHR5cDogcihcIkV0YXRERVNUcmFpdGVtZW50c1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGF0ZVNvcnRcIiwganM6IFwiZGF0ZVNvcnRcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIERhdGUpIH0sXG4gICAgICAgIHsganNvbjogXCJzb3J0XCIsIGpzOiBcInNvcnRcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIHIoXCJTb3J0RW51bVwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJFdGF0REVTVHJhaXRlbWVudHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJldGF0XCIsIGpzOiBcImV0YXRcIiwgdHlwOiByKFwiRXRhdFwiKSB9LFxuICAgICAgICB7IGpzb246IFwic291c0V0YXRcIiwganM6IFwic291c0V0YXRcIiwgdHlwOiByKFwiU291c0V0YXRcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJFdGF0XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiY29kZVwiLCBqczogXCJjb2RlXCIsIHR5cDogcihcIkNvZGVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHIoXCJMaWJlbGxlXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiU291c0V0YXRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvZGVcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlNvcnRFbnVtXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpc2N1c3Npb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJpZERpc2N1c3Npb25cIiwganM6IFwiaWREaXNjdXNzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJ0eXBlUG9zaXRpb25cIiwganM6IFwidHlwZVBvc2l0aW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlUG9zaXRpb25cIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiSWRlbnRpZmljYXRpb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJudW1lcm9Mb25nXCIsIGpzOiBcIm51bWVyb0xvbmdcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJudW1lcm9PcmRyZURlcG90XCIsIGpzOiBcIm51bWVyb09yZHJlRGVwb3RcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJwcmVmaXhlT3JnYW5lRXhhbWVuXCIsIGpzOiBcInByZWZpeGVPcmdhbmVFeGFtZW5cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJudW1lcm9SZWN0XCIsIGpzOiBcIm51bWVyb1JlY3RcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTG9pUmVmZXJlbmNlXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29kZUxvaVwiLCBqczogXCJjb2RlTG9pXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgbnVsbCwgXCJcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXZpc2lvbkNvZGVMb2lcIiwganM6IFwiZGl2aXNpb25Db2RlTG9pXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgbnVsbCwgXCJcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUG9pbnRldXJGcmFnbWVudFRleHRlXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGFydGllQW1lbmRhYmxlUmVmXCIsIGpzOiBcInBhcnRpZUFtZW5kYWJsZVJlZlwiLCB0eXA6IHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpdmlzaW9uXCIsIGpzOiBcImRpdmlzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXZpc2lvblwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRTdGFuZGFyZFwiLCBqczogXCJhbWVuZGVtZW50U3RhbmRhcmRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkFtZW5kZW1lbnRTdGFuZGFyZFwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIm1pc3Npb25WaXNlZVwiLCBqczogXCJtaXNzaW9uVmlzZWVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIk1pc3Npb25WaXNlZVwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50U3RhbmRhcmRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJhbGluZWFcIiwganM6IFwiYWxpbmVhXCIsIHR5cDogcihcIkFsaW5lYVwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFsaW5lYVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF2YW50X0FfQXByZXNcIiwganM6IFwiYXZhbnRfQV9BcHJlc1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIG51bGwsIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwibnVtZXJvXCIsIGpzOiBcIm51bWVyb1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiYWxpbmVhRGVzaWduYXRpb25cIiwganM6IFwiYWxpbmVhRGVzaWduYXRpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXZpc2lvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInRpdHJlXCIsIGpzOiBcInRpdHJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlXCIsIGpzOiBcImFydGljbGVEZXNpZ25hdGlvbkNvdXJ0ZVwiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFydGljbGVEZXNpZ25hdGlvblwiLCBqczogXCJhcnRpY2xlRGVzaWduYXRpb25cIiwgdHlwOiB1KG51bGwsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiRGl2aXNpb25UeXBlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdmFudF9BX0FwcmVzXCIsIGpzOiBcImF2YW50X0FfQXByZXNcIiwgdHlwOiByKFwiQXZhbnRBQXByZXNcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsIGpzOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXJ0aWNsZUFkZGl0aW9ubmVsXCIsIGpzOiBcImFydGljbGVBZGRpdGlvbm5lbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNoYXBpdHJlQWRkaXRpb25uZWxcIiwganM6IFwiY2hhcGl0cmVBZGRpdGlvbm5lbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInVybERpdmlzaW9uVGV4dGVWaXNlXCIsIGpzOiBcInVybERpdmlzaW9uVGV4dGVWaXNlXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIk1pc3Npb25WaXNlZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNvZGVFdGF0XCIsIGpzOiBcImNvZGVFdGF0XCIsIHR5cDogcihcIkNvZGVFdGF0XCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb2RlTWlzc2lvbk1pbmVmaVwiLCBqczogXCJjb2RlTWlzc2lvbk1pbmVmaVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVNaXNzaW9uXCIsIGpzOiBcImxpYmVsbGVNaXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibWlzc2lvblJlZlwiLCBqczogXCJtaXNzaW9uUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlJlcHJlc2VudGF0aW9uc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInJlcHJlc2VudGF0aW9uXCIsIGpzOiBcInJlcHJlc2VudGF0aW9uXCIsIHR5cDogcihcIlJlcHJlc2VudGF0aW9uXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUmVwcmVzZW50YXRpb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJub21cIiwganM6IFwibm9tXCIsIHR5cDogcihcIk5vbVwiKSB9LFxuICAgICAgICB7IGpzb246IFwidHlwZU1pbWVcIiwganM6IFwidHlwZU1pbWVcIiwgdHlwOiByKFwiVHlwZU1JTUVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsIGpzOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsIHR5cDogcihcIlN0YXR1dFJlcHJlc2VudGF0aW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJyZXBTb3VyY2VcIiwganM6IFwicmVwU291cmNlXCIsIHR5cDogcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwib2Zmc2V0XCIsIGpzOiBcIm9mZnNldFwiLCB0eXA6IHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvbnRlbnVcIiwganM6IFwiY29udGVudVwiLCB0eXA6IHIoXCJDb250ZW51XCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlRGlzcG9SZXByZXNlbnRhdGlvblwiLCBqczogXCJkYXRlRGlzcG9SZXByZXNlbnRhdGlvblwiLCB0eXA6IHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb250ZW51XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZG9jdW1lbnRVUklcIiwganM6IFwiZG9jdW1lbnRVUklcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiU3RhdHV0UmVwcmVzZW50YXRpb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJ2ZXJiYXRpbVwiLCBqczogXCJ2ZXJiYXRpbVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNhbm9uaXF1ZVwiLCBqczogXCJjYW5vbmlxdWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJvZmZpY2llbGxlXCIsIGpzOiBcIm9mZmljaWVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJ0cmFuc2NyaXB0aW9uXCIsIGpzOiBcInRyYW5zY3JpcHRpb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJlbnJlZ2lzdHJlbWVudFwiLCBqczogXCJlbnJlZ2lzdHJlbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJUeXBlTUlNRVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInR5cGVcIiwganM6IFwidHlwZVwiLCB0eXA6IHIoXCJUeXBlTUlNRVR5cGVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInN1YlR5cGVcIiwganM6IFwic3ViVHlwZVwiLCB0eXA6IHIoXCJOb21cIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJTaWduYXRhaXJlc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImF1dGV1clwiLCBqczogXCJhdXRldXJcIiwgdHlwOiByKFwiQXV0ZXVyXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb3NpZ25hdGFpcmVzXCIsIGpzOiBcImNvc2lnbmF0YWlyZXNcIiwgdHlwOiByKFwiQ29zaWduYXRhaXJlc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwic3VmZml4ZVwiLCBqczogXCJzdWZmaXhlXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkF1dGV1clwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInR5cGVBdXRldXJcIiwganM6IFwidHlwZUF1dGV1clwiLCB0eXA6IHIoXCJUeXBlQXV0ZXVyXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJnb3V2ZXJuZW1lbnRSZWZcIiwganM6IFwiZ291dmVybmVtZW50UmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYWN0ZXVyUmVmXCIsIGpzOiBcImFjdGV1clJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImdyb3VwZVBvbGl0aXF1ZVJlZlwiLCBqczogXCJncm91cGVQb2xpdGlxdWVSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdXRldXJSYXBwb3J0ZXVyT3JnYW5lUmVmXCIsIGpzOiBcImF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ29zaWduYXRhaXJlc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFjdGV1clJlZlwiLCBqczogXCJhY3RldXJSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShhKFwiXCIpLCBcIlwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVwiOiBbXG4gICAgICAgIFwiQWNjb3JkXCIsXG4gICAgICAgIFwiU2FucyBvYmpldFwiLFxuICAgIF0sXG4gICAgXCJBY3Rpb25cIjogW1xuICAgICAgICBcImNyw6lhdGlvblwiLFxuICAgICAgICBcIm1vZGlmaWNhdGlvblwiLFxuICAgICAgICBcInN1cHByZXNzaW9uXCIsXG4gICAgXSxcbiAgICBcIkNvZGVcIjogW1xuICAgICAgICBcIkFDXCIsXG4gICAgICAgIFwiQVRcIixcbiAgICAgICAgXCJESVwiLFxuICAgICAgICBcImVmZmFjw6lcIixcbiAgICAgICAgXCJFUlwiLFxuICAgICAgICBcIkVUXCIsXG4gICAgICAgIFwiSVJcIixcbiAgICAgICAgXCJJUlIxMjdcIixcbiAgICAgICAgXCJJUlIyMFwiLFxuICAgICAgICBcIklSUjM3XCIsXG4gICAgICAgIFwiSVJSMzhcIixcbiAgICAgICAgXCJJUlI0MVwiLFxuICAgICAgICBcIklSUjQyXCIsXG4gICAgICAgIFwiSVJSNDVcIixcbiAgICAgICAgXCJJUlI0OFwiLFxuICAgICAgICBcIklSUjUzXCIsXG4gICAgICAgIFwiSVJSQUlcIixcbiAgICAgICAgXCJJUlJEXCIsXG4gICAgICAgIFwiSVJSSERcIixcbiAgICAgICAgXCJJUlJTQVwiLFxuICAgICAgICBcIlJcIixcbiAgICAgICAgXCJSVFwiLFxuICAgICAgICBcIlRcIixcbiAgICBdLFxuICAgIFwiTGliZWxsZVwiOiBbXG4gICAgICAgIFwiQSBkaXNjdXRlclwiLFxuICAgICAgICBcIkEgZMOpcG9zZXJcIixcbiAgICAgICAgXCJEaXNjdXTDqVwiLFxuICAgICAgICBcImVmZmFjw6lcIixcbiAgICAgICAgXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gICAgICAgIFwiRW4gdHJhaXRlbWVudFwiLFxuICAgICAgICBcIklycmVjZXZhYmxlXCIsXG4gICAgICAgIFwiSXJyZWNldmFibGUgNDBcIixcbiAgICAgICAgXCJSZXRpcsOpXCIsXG4gICAgXSxcbiAgICBcIlNvcnRFbnVtXCI6IFtcbiAgICAgICAgXCJBZG9wdMOpXCIsXG4gICAgICAgIFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgICAgIFwiQXV0cmVzIGlyciBMT0xGXCIsXG4gICAgICAgIFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgICAgICAgXCJDYXZhbGllciAoNDUpXCIsXG4gICAgICAgIFwiQ2F2YWxpZXIgYnVkZ8OpdGFpcmVcIixcbiAgICAgICAgXCJDYXZhbGllciBzb2NpYWxcIixcbiAgICAgICAgXCJDaGFtcCBkZSBsJ2hhYmlsaXRhdGlvbiAoMzgpXCIsXG4gICAgICAgIFwiQ2hhcmdlXCIsXG4gICAgICAgIFwiQ01QICg0NSlcIixcbiAgICAgICAgXCJDcsOpZGl0c1wiLFxuICAgICAgICBcIkRpc3Bvc2l0aW9uIHLDqWdsZW1lbnRhaXJlICgzNylcIixcbiAgICAgICAgXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gICAgICAgIFwiRG9tYWluZSBsb2kgb3JnYW5pcXVlICgxMjcpXCIsXG4gICAgICAgIFwiRG91YmxvblwiLFxuICAgICAgICBcIkVudG9ubm9pciAoNDUpXCIsXG4gICAgICAgIFwiR2FnZVwiLFxuICAgICAgICBcIkhvcnMtZMOpbGFpc1wiLFxuICAgICAgICBcIkluam9uY3Rpb24gKDIwKVwiLFxuICAgICAgICBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gICAgICAgIFwiSXJyIGVuIHNlY29uZGUgcGFydGllXCIsXG4gICAgICAgIFwiTE9MRlwiLFxuICAgICAgICBcIkxPTEZTU1wiLFxuICAgICAgICBcIk5vbiBzb3V0ZW51XCIsXG4gICAgICAgIFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gICAgICAgIFwiUlwiLFxuICAgICAgICBcIlJhdGlmaWNhdGlvbiB0cmFpdMOpICg1MylcIixcbiAgICAgICAgXCJSZWpldMOpXCIsXG4gICAgICAgIFwiUmV0aXLDqVwiLFxuICAgICAgICBcIlJldGlyw6kgYXByw6hzIHB1YmxpY2F0aW9uXCIsXG4gICAgICAgIFwiUmV0aXLDqSBhdmFudCBwdWJsaWNhdGlvblwiLFxuICAgICAgICBcIlNhdGlzZmFpdCBvdSBpbm9ww6lyYW50ICg0MilcIixcbiAgICAgICAgXCJTb3VzLWFtZW5kZW1lbnQgKDk4KVwiLFxuICAgICAgICBcIlRvbWLDqVwiLFxuICAgIF0sXG4gICAgXCJUeXBlUG9zaXRpb25cIjogW1xuICAgICAgICBcIkRlcm5pZXJcIixcbiAgICAgICAgXCJNaWxpZXVcIixcbiAgICAgICAgXCJQcmVtaWVyXCIsXG4gICAgXSxcbiAgICBcIkF2YW50QUFwcmVzXCI6IFtcbiAgICAgICAgXCJBXCIsXG4gICAgICAgIFwiQXByw6hzXCIsXG4gICAgICAgIFwiQXZhbnRcIixcbiAgICBdLFxuICAgIFwiRGl2aXNpb25UeXBlXCI6IFtcbiAgICAgICAgXCJBTk5FWEVcIixcbiAgICAgICAgXCJBUlRJQ0xFXCIsXG4gICAgICAgIFwiQ0hBUElUUkVcIixcbiAgICAgICAgXCJUSVRSRVwiLFxuICAgIF0sXG4gICAgXCJDb2RlRXRhdFwiOiBbXG4gICAgICAgIFwiQlwiLFxuICAgICAgICBcIkNcIixcbiAgICAgICAgXCJEXCIsXG4gICAgXSxcbiAgICBcIk5vbVwiOiBbXG4gICAgICAgIFwiUERGXCIsXG4gICAgXSxcbiAgICBcIlR5cGVNSU1FVHlwZVwiOiBbXG4gICAgICAgIFwiYXBwbGljYXRpb25cIixcbiAgICBdLFxuICAgIFwiVHlwZUF1dGV1clwiOiBbXG4gICAgICAgIFwiRMOpcHV0w6lcIixcbiAgICAgICAgXCJHb3V2ZXJuZW1lbnRcIixcbiAgICAgICAgXCJSYXBwb3J0ZXVyXCIsXG4gICAgXSxcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUE0Q1lBLGdDOzs7V0FBQUEsZ0M7RUFBQUEsZ0M7RUFBQUEsZ0M7R0FBQUEsZ0MsZ0RBQUFBLGdDOztJQXNEQUMsTTs7O1dBQUFBLE07RUFBQUEsTTtFQUFBQSxNO0VBQUFBLE07R0FBQUEsTSxzQkFBQUEsTTs7SUEwRUFDLEk7OztXQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtHQUFBQSxJLG9CQUFBQSxJOztJQTBCQUMsTzs7O1dBQUFBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87R0FBQUEsTyx1QkFBQUEsTzs7SUFtQkFDLFE7OztXQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7R0FBQUEsUSx3QkFBQUEsUTs7SUE0Q0FDLFk7OztXQUFBQSxZO0VBQUFBLFk7RUFBQUEsWTtFQUFBQSxZO0dBQUFBLFksNEJBQUFBLFk7O0lBbURBQyxXOzs7V0FBQUEsVztFQUFBQSxXO0VBQUFBLFc7RUFBQUEsVztHQUFBQSxXLDJCQUFBQSxXOztJQU1BQyxZOzs7V0FBQUEsWTtFQUFBQSxZO0VBQUFBLFk7RUFBQUEsWTtFQUFBQSxZO0dBQUFBLFksNEJBQUFBLFk7O0lBY0FDLFE7OztXQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0dBQUFBLFEsd0JBQUFBLFE7O0lBd0JBQyxHOzs7V0FBQUEsRztFQUFBQSxHO0dBQUFBLEcsbUJBQUFBLEc7O0lBaUJBQyxZOzs7V0FBQUEsWTtFQUFB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
|
|
1049
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsIkFjdGlvbiIsIkNvZGUiLCJMaWJlbGxlIiwiU29ydEVudW0iLCJUeXBlUG9zaXRpb24iLCJBdmFudEFBcHJlcyIsIkRpdmlzaW9uVHlwZSIsIkNvZGVFdGF0IiwiTm9tIiwiVHlwZU1JTUVUeXBlIiwiVHlwZUF1dGV1ciIsIkNvbnZlcnQiLCJqc29uIiwiY2FzdCIsIkpTT04iLCJwYXJzZSIsInIiLCJ2YWx1ZSIsInN0cmluZ2lmeSIsInVuY2FzdCIsImludmFsaWRWYWx1ZSIsInR5cCIsInZhbCIsImtleSIsIkVycm9yIiwianNvblRvSlNQcm9wcyIsImpzb25Ub0pTIiwidW5kZWZpbmVkIiwibWFwIiwicHJvcHMiLCJmb3JFYWNoIiwicCIsImpzIiwianNUb0pTT05Qcm9wcyIsImpzVG9KU09OIiwidHJhbnNmb3JtIiwiZ2V0UHJvcHMiLCJ0cmFuc2Zvcm1QcmltaXRpdmUiLCJ0cmFuc2Zvcm1VbmlvbiIsInR5cHMiLCJsIiwibGVuZ3RoIiwiaSIsIl8iLCJ0cmFuc2Zvcm1FbnVtIiwiY2FzZXMiLCJpbmRleE9mIiwidHJhbnNmb3JtQXJyYXkiLCJBcnJheSIsImlzQXJyYXkiLCJlbCIsInRyYW5zZm9ybURhdGUiLCJkIiwiRGF0ZSIsImlzTmFOIiwidmFsdWVPZiIsInRyYW5zZm9ybU9iamVjdCIsImFkZGl0aW9uYWwiLCJyZXN1bHQiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwicHJvcCIsInYiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJyZWYiLCJ0eXBlTWFwIiwidW5pb25NZW1iZXJzIiwiYXJyYXlJdGVtcyIsImEiLCJ1IiwibyIsIm5hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcmF3X3R5cGVzL2FtZW5kZW1lbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IEFtZW5kZW1lbnRzLCBBbWVuZGVtZW50V3JhcHBlciwgQ29udmVydCwgVGV4dGVMZWdpc2xhdGlmIH0gZnJvbSBcIi4vZmlsZVwiO1xuLy9cbi8vICAgY29uc3QgYW1lbmRlbWVudHMgPSBDb252ZXJ0LnRvQW1lbmRlbWVudHMoanNvbik7XG4vLyAgIGNvbnN0IGFtZW5kZW1lbnRXcmFwcGVyID0gQ29udmVydC50b0FtZW5kZW1lbnRXcmFwcGVyKGpzb24pO1xuLy8gICBjb25zdCB0ZXh0ZUxlZ2lzbGF0aWYgPSBDb252ZXJ0LnRvVGV4dGVMZWdpc2xhdGlmKGpzb24pO1xuLy9cbi8vIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBKU09OIGRvZXNuJ3Rcbi8vIG1hdGNoIHRoZSBleHBlY3RlZCBpbnRlcmZhY2UsIGV2ZW4gaWYgdGhlIEpTT04gaXMgdmFsaWQuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudHMge1xuICB0ZXh0ZXNMZWdpc2xhdGlmczogVGV4dGVMZWdpc2xhdGlmW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgIFwiQHhtbG5zOnhzaVwiOiAgICAgICBzdHJpbmc7XG4gICAgcmVmVGV4dGVMZWdpc2xhdGlmOiBzdHJpbmc7XG4gICAgYW1lbmRlbWVudHM6ICAgICAgICBBbWVuZGVtZW50c0NsYXNzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzQ2xhc3Mge1xuICAgIGFtZW5kZW1lbnQ6IEFtZW5kZW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50V3JhcHBlciB7XG4gIGFtZW5kZW1lbnQ6IEFtZW5kZW1lbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50IHtcbiAgICBcIkB4bWxuc1wiOiAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdWlkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBjaHJvbm90YWc6ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxlZ2lzbGF0dXJlOiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgaWRlbnRpZmljYXRpb246ICAgICAgICAgICAgICAgICAgIElkZW50aWZpY2F0aW9uO1xuICAgIGV4YW1lblJlZjogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdGV4dGVMZWdpc2xhdGlmUmVmOiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0cmlBbWVuZGVtZW50OiAgICAgICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGNhcmRpbmFsaXRlQW1kdE11bHRpcGxlczogICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYW1lbmRlbWVudFBhcmVudFJlZjogICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBzaWduYXRhaXJlczogICAgICAgICAgICAgICAgICAgICAgU2lnbmF0YWlyZXM7XG4gICAgcG9pbnRldXJGcmFnbWVudFRleHRlOiAgICAgICAgICAgIFBvaW50ZXVyRnJhZ21lbnRUZXh0ZTtcbiAgICBjb3JwczogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29ycHM7XG4gICAgY3ljbGVEZVZpZTogICAgICAgICAgICAgICAgICAgICAgIEN5Y2xlRGVWaWU7XG4gICAgcmVwcmVzZW50YXRpb25zOiAgICAgICAgICAgICAgICAgIFJlcHJlc2VudGF0aW9ucyB8IG51bGw7XG4gICAgc2VhbmNlRGlzY3Vzc2lvblJlZjogICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhcnRpY2xlOTk6ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxvaVJlZmVyZW5jZTogICAgICAgICAgICAgICAgICAgICBMb2lSZWZlcmVuY2U7XG4gICAgZGlzY3Vzc2lvbkNvbW11bmU6ICAgICAgICAgICAgICAgIERpc2N1c3Npb247XG4gICAgZGlzY3Vzc2lvbklkZW50aXF1ZTogICAgICAgICAgICAgIERpc2N1c3Npb247XG4gICAgYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWk6IEFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpO1xufVxuXG5leHBvcnQgZW51bSBBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSB7XG4gICAgQWNjb3JkID0gXCJBY2NvcmRcIixcbiAgICBTYW5zT2JqZXQgPSBcIlNhbnMgb2JqZXRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3Mge1xuICAgIFwiQHhtbG5zOnhzaVwiOiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiOiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3JwcyB7XG4gICAgY2FydG91Y2hlSW5mb3JtYXRpZj86IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBjb250ZW51QXV0ZXVyPzogICAgICAgQ29udGVudUF1dGV1cjtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgICAgICBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnVBdXRldXIge1xuICAgIGRpc3Bvc2l0aWY/OiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdmFudEFwcGVsPzogICAgICAgICAgICAgICBBdmFudEFwcGVsO1xuICAgIGV4cG9zZVNvbW1haXJlPzogICAgICAgICAgIHN0cmluZztcbiAgICBhbm5leGVFeHBvc2VTb21tYWlyZT86ICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiAgICAgICAgICAgICBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY/OiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY7XG4gICAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF2YW50QXBwZWwge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGRpc3Bvc2l0aWY/OiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRiB7XG4gICAgbGlzdGVQcm9ncmFtbWVzPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZMaXN0ZVByb2dyYW1tZXM7XG4gICAgc29sZGVBRT86ICAgICAgICAgc3RyaW5nO1xuICAgIHNvbGRlQ1A/OiAgICAgICAgIHN0cmluZztcbiAgICBjcEVnYWxBZTogICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZMaXN0ZVByb2dyYW1tZXMge1xuICAgIHByb2dyYW1tZTogUHVycGxlUHJvZ3JhbW1lW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVycGxlUHJvZ3JhbW1lIHtcbiAgICBsaWJlbGxlOiAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgcHJvZ3JhbW1lUmVmOiAgICAgICAgICAgc3RyaW5nO1xuICAgIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnQ6IHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudDogICAgICAgICBzdHJpbmc7XG4gICAgYWN0aW9uOiAgICAgICAgICAgICAgICAgQWN0aW9uO1xuICAgIGxpZ25lc0NyZWRpdHM6ICAgICAgICAgIFB1cnBsZUxpZ25lc0NyZWRpdHM7XG59XG5cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gICAgQ3LDqWF0aW9uID0gXCJjcsOpYXRpb25cIixcbiAgICBNb2RpZmljYXRpb24gPSBcIm1vZGlmaWNhdGlvblwiLFxuICAgIFN1cHByZXNzaW9uID0gXCJzdXBwcmVzc2lvblwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFB1cnBsZUxpZ25lc0NyZWRpdHMge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGxpZ25lQ3JlZGl0PzogIExpZ25lQ3JlZGl0Q2xhc3NbXSB8IExpZ25lQ3JlZGl0Q2xhc3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRDbGFzcyB7XG4gICAgaWQ6ICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxpYmVsbGU6ICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50OiBzdHJpbmc7XG4gICAgY3JlZGl0UGFpZW1lbnQ6ICAgICAgICAgc3RyaW5nO1xuICAgIGFjdGlvbjogICAgICAgICAgICAgICAgIEFjdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlIge1xuICAgIGxpc3RlUHJvZ3JhbW1lcz86IERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUkxpc3RlUHJvZ3JhbW1lcztcbiAgICB0b3RhbEFFPzogICAgICAgICBUb3RhbDtcbiAgICB0b3RhbENQPzogICAgICAgICBUb3RhbDtcbiAgICBjcEVnYWxBZTogICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSTGlzdGVQcm9ncmFtbWVzIHtcbiAgICBwcm9ncmFtbWU6IExpZ25lQ3JlZGl0RWxlbWVudFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0cyB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG4gICAgbGlnbmVDcmVkaXQ/OiAgTGlnbmVDcmVkaXRFbGVtZW50W10gfCBMaWduZUNyZWRpdEVsZW1lbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRFbGVtZW50IHtcbiAgICBsaWJlbGxlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBwcm9ncmFtbWVSZWY/OiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmU6IHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlOiAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlOiAgICAgICAgIHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudEFubnVsZTogICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhY3Rpb246ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFjdGlvbjtcbiAgICBsaWduZXNDcmVkaXRzPzogICAgICAgICAgICAgICAgICAgICAgIExpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0cztcbiAgICBpZD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUb3RhbCB7XG4gICAgc3VwcGxlbWVudGFpcmU6IHN0cmluZztcbiAgICBhbm51bGU6ICAgICAgICAgc3RyaW5nO1xuICAgIHNvbGRlOiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3ljbGVEZVZpZSB7XG4gICAgZGF0ZURlcG90OiAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBEYXRlO1xuICAgIGRhdGVQdWJsaWNhdGlvbjogICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgRGF0ZTtcbiAgICBzb3VtaXNBcnRpY2xlNDA6ICAgIHN0cmluZztcbiAgICBldGF0RGVzVHJhaXRlbWVudHM6IEV0YXRERVNUcmFpdGVtZW50cztcbiAgICBkYXRlU29ydDogICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IERhdGU7XG4gICAgc29ydDogICAgICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBTb3J0RW51bTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdGF0REVTVHJhaXRlbWVudHMge1xuICAgIGV0YXQ6ICAgICBFdGF0O1xuICAgIHNvdXNFdGF0OiBTb3VzRXRhdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdGF0IHtcbiAgICBjb2RlOiAgICBDb2RlO1xuICAgIGxpYmVsbGU6IExpYmVsbGU7XG59XG5cbmV4cG9ydCBlbnVtIENvZGUge1xuICAgIEFDID0gXCJBQ1wiLFxuICAgIEF0ID0gXCJBVFwiLFxuICAgIERpID0gXCJESVwiLFxuICAgIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgICBFciA9IFwiRVJcIixcbiAgICBFdCA9IFwiRVRcIixcbiAgICBJUiA9IFwiSVJcIixcbiAgICBJcnIxMjcgPSBcIklSUjEyN1wiLFxuICAgIElycjIwID0gXCJJUlIyMFwiLFxuICAgIElycjM3ID0gXCJJUlIzN1wiLFxuICAgIElycjM4ID0gXCJJUlIzOFwiLFxuICAgIElycjQxID0gXCJJUlI0MVwiLFxuICAgIElycjQyID0gXCJJUlI0MlwiLFxuICAgIElycjQ1ID0gXCJJUlI0NVwiLFxuICAgIElycjQ4ID0gXCJJUlI0OFwiLFxuICAgIElycjUzID0gXCJJUlI1M1wiLFxuICAgIElycmFpID0gXCJJUlJBSVwiLFxuICAgIElycmFpZiA9IFwiSVJSQUlGXCIsXG4gICAgSXJyZCA9IFwiSVJSRFwiLFxuICAgIElycmhkID0gXCJJUlJIRFwiLFxuICAgIElycnNhID0gXCJJUlJTQVwiLFxuICAgIFIgPSBcIlJcIixcbiAgICBSdCA9IFwiUlRcIixcbiAgICBUID0gXCJUXCIsXG59XG5cbmV4cG9ydCBlbnVtIExpYmVsbGUge1xuICAgIEFEaXNjdXRlciA9IFwiQSBkaXNjdXRlclwiLFxuICAgIEFEw6lwb3NlciA9IFwiQSBkw6lwb3NlclwiLFxuICAgIERpc2N1dMOpID0gXCJEaXNjdXTDqVwiLFxuICAgIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgICBFblJlY2V2YWJpbGl0w6kgPSBcIkVuIHJlY2V2YWJpbGl0w6lcIixcbiAgICBFblRyYWl0ZW1lbnQgPSBcIkVuIHRyYWl0ZW1lbnRcIixcbiAgICBJcnJlY2V2YWJsZSA9IFwiSXJyZWNldmFibGVcIixcbiAgICBJcnJlY2V2YWJsZTQwID0gXCJJcnJlY2V2YWJsZSA0MFwiLFxuICAgIFJldGlyw6kgPSBcIlJldGlyw6lcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTb3VzRXRhdCB7XG4gICAgY29kZT86ICAgICAgICAgQ29kZTtcbiAgICBsaWJlbGxlPzogICAgICBTb3J0RW51bTtcbiAgICBcIkB4bWxuczp4c2lcIj86IHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gU29ydEVudW0ge1xuICAgIEFkb3B0w6kgPSBcIkFkb3B0w6lcIixcbiAgICBBdXRyZUlycmVjZXZhYmlsaXTDqSA9IFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgQXV0cmVJcnJlY2V2YWJpbGl0w6k0MCA9IFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpIDQwXCIsXG4gICAgQXV0cmVzSXJyTE9MRiA9IFwiQXV0cmVzIGlyciBMT0xGXCIsXG4gICAgQXV0cmVzSXJyTE9MRlNTID0gXCJBdXRyZXMgaXJyIExPTEZTU1wiLFxuICAgIENhdmFsaWVyNDUgPSBcIkNhdmFsaWVyICg0NSlcIixcbiAgICBDYXZhbGllckJ1ZGfDqXRhaXJlID0gXCJDYXZhbGllciBidWRnw6l0YWlyZVwiLFxuICAgIENhdmFsaWVyU29jaWFsID0gXCJDYXZhbGllciBzb2NpYWxcIixcbiAgICBDaGFtcERlTEhhYmlsaXRhdGlvbjM4ID0gXCJDaGFtcCBkZSBsJ2hhYmlsaXRhdGlvbiAoMzgpXCIsXG4gICAgQ2hhcmdlID0gXCJDaGFyZ2VcIixcbiAgICBDbXA0NSA9IFwiQ01QICg0NSlcIixcbiAgICBDcsOpZGl0cyA9IFwiQ3LDqWRpdHNcIixcbiAgICBEaXNwb3NpdGlvblLDqWdsZW1lbnRhaXJlMzcgPSBcIkRpc3Bvc2l0aW9uIHLDqWdsZW1lbnRhaXJlICgzNylcIixcbiAgICBEb21haW5lRGVMYUxvaTQxID0gXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gICAgRG9tYWluZUxvaU9yZ2FuaXF1ZTEyNyA9IFwiRG9tYWluZSBsb2kgb3JnYW5pcXVlICgxMjcpXCIsXG4gICAgRG91YmxvbiA9IFwiRG91YmxvblwiLFxuICAgIEVudG9ubm9pcjQ1ID0gXCJFbnRvbm5vaXIgKDQ1KVwiLFxuICAgIEdhZ2UgPSBcIkdhZ2VcIixcbiAgICBIb3JzRMOpbGFpcyA9IFwiSG9ycy1kw6lsYWlzXCIsXG4gICAgSW5qb25jdGlvbjIwID0gXCJJbmpvbmN0aW9uICgyMClcIixcbiAgICBJcnJFblByZW1pw6hyZVBhcnRpZSA9IFwiSXJyIGVuIHByZW1pw6hyZSBwYXJ0aWVcIixcbiAgICBJcnJFblNlY29uZGVQYXJ0aWUgPSBcIklyciBlbiBzZWNvbmRlIHBhcnRpZVwiLFxuICAgIExvbGYgPSBcIkxPTEZcIixcbiAgICBMb2xmc3MgPSBcIkxPTEZTU1wiLFxuICAgIE5vblNvdXRlbnUgPSBcIk5vbiBzb3V0ZW51XCIsXG4gICAgT3JkcmVEdUpvdXI0OCA9IFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gICAgUiA9IFwiUlwiLFxuICAgIFJhdGlmaWNhdGlvblRyYWl0w6k1MyA9IFwiUmF0aWZpY2F0aW9uIHRyYWl0w6kgKDUzKVwiLFxuICAgIFJlamV0w6kgPSBcIlJlamV0w6lcIixcbiAgICBSZXRpcsOpID0gXCJSZXRpcsOpXCIsXG4gICAgUmV0aXLDqUFwcsOoc1B1YmxpY2F0aW9uID0gXCJSZXRpcsOpIGFwcsOocyBwdWJsaWNhdGlvblwiLFxuICAgIFJldGlyw6lBdmFudFB1YmxpY2F0aW9uID0gXCJSZXRpcsOpIGF2YW50IHB1YmxpY2F0aW9uXCIsXG4gICAgU2F0aXNmYWl0T3VJbm9ww6lyYW50NDIgPSBcIlNhdGlzZmFpdCBvdSBpbm9ww6lyYW50ICg0MilcIixcbiAgICBTb3VzQW1lbmRlbWVudDk4ID0gXCJTb3VzLWFtZW5kZW1lbnQgKDk4KVwiLFxuICAgIFRvbWLDqSA9IFwiVG9tYsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzY3Vzc2lvbiB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG4gICAgaWREaXNjdXNzaW9uPzogc3RyaW5nO1xuICAgIHR5cGVQb3NpdGlvbj86IFR5cGVQb3NpdGlvbjtcbn1cblxuZXhwb3J0IGVudW0gVHlwZVBvc2l0aW9uIHtcbiAgICBEZXJuaWVyID0gXCJEZXJuaWVyXCIsXG4gICAgTWlsaWV1ID0gXCJNaWxpZXVcIixcbiAgICBQcmVtaWVyID0gXCJQcmVtaWVyXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpZmljYXRpb24ge1xuICAgIG51bWVyb0xvbmc6ICAgICAgICAgIHN0cmluZztcbiAgICBudW1lcm9PcmRyZURlcG90OiAgICBzdHJpbmc7XG4gICAgcHJlZml4ZU9yZ2FuZUV4YW1lbjogc3RyaW5nO1xuICAgIG51bWVyb1JlY3Q6ICAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2lSZWZlcmVuY2Uge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogICAgc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgICAgc3RyaW5nO1xuICAgIGNvZGVMb2k/OiAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IG51bGwgfCBzdHJpbmc7XG4gICAgZGl2aXNpb25Db2RlTG9pPzogQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgbnVsbCB8IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2ludGV1ckZyYWdtZW50VGV4dGUge1xuICAgIHBhcnRpZUFtZW5kYWJsZVJlZjogIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcztcbiAgICBkaXZpc2lvbj86ICAgICAgICAgICBEaXZpc2lvbjtcbiAgICBhbWVuZGVtZW50U3RhbmRhcmQ/OiBBbWVuZGVtZW50U3RhbmRhcmQ7XG4gICAgbWlzc2lvblZpc2VlPzogICAgICAgTWlzc2lvblZpc2VlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRTdGFuZGFyZCB7XG4gICAgYWxpbmVhOiBBbGluZWE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWxpbmVhIHtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgICAgc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgICAgICBzdHJpbmc7XG4gICAgYXZhbnRfQV9BcHJlcz86ICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBudWxsIHwgc3RyaW5nO1xuICAgIG51bWVybz86ICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGFsaW5lYURlc2lnbmF0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpdmlzaW9uIHtcbiAgICB0aXRyZTogICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhcnRpY2xlRGVzaWduYXRpb25Db3VydGU6IG51bGwgfCBzdHJpbmc7XG4gICAgYXJ0aWNsZURlc2lnbmF0aW9uOiAgICAgICBudWxsIHwgc3RyaW5nO1xuICAgIHR5cGU6ICAgICAgICAgICAgICAgICAgICAgRGl2aXNpb25UeXBlO1xuICAgIGF2YW50X0FfQXByZXM6ICAgICAgICAgICAgQXZhbnRBQXByZXM7XG4gICAgZGl2aXNpb25SYXR0YWNoZWU6ICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYXJ0aWNsZUFkZGl0aW9ubmVsOiAgICAgICBzdHJpbmc7XG4gICAgY2hhcGl0cmVBZGRpdGlvbm5lbDogICAgICBzdHJpbmc7XG4gICAgdXJsRGl2aXNpb25UZXh0ZVZpc2U6ICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIEF2YW50QUFwcmVzIHtcbiAgICBBID0gXCJBXCIsXG4gICAgQXByw6hzID0gXCJBcHLDqHNcIixcbiAgICBBdmFudCA9IFwiQXZhbnRcIixcbn1cblxuZXhwb3J0IGVudW0gRGl2aXNpb25UeXBlIHtcbiAgICBBbm5leGUgPSBcIkFOTkVYRVwiLFxuICAgIEFydGljbGUgPSBcIkFSVElDTEVcIixcbiAgICBDaGFwaXRyZSA9IFwiQ0hBUElUUkVcIixcbiAgICBUaXRyZSA9IFwiVElUUkVcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNaXNzaW9uVmlzZWUge1xuICAgIGNvZGVFdGF0OiAgICAgICAgICBDb2RlRXRhdDtcbiAgICBjb2RlTWlzc2lvbk1pbmVmaTogc3RyaW5nO1xuICAgIGxpYmVsbGVNaXNzaW9uOiAgICBzdHJpbmc7XG4gICAgbWlzc2lvblJlZjogICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gQ29kZUV0YXQge1xuICAgIEIgPSBcIkJcIixcbiAgICBDID0gXCJDXCIsXG4gICAgRCA9IFwiRFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcHJlc2VudGF0aW9ucyB7XG4gICAgcmVwcmVzZW50YXRpb246IFJlcHJlc2VudGF0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcHJlc2VudGF0aW9uIHtcbiAgICBub206ICAgICAgICAgICAgICAgICAgICAgTm9tO1xuICAgIHR5cGVNaW1lOiAgICAgICAgICAgICAgICBUeXBlTUlNRTtcbiAgICBzdGF0dXRSZXByZXNlbnRhdGlvbjogICAgU3RhdHV0UmVwcmVzZW50YXRpb247XG4gICAgcmVwU291cmNlOiAgICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcztcbiAgICBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzO1xuICAgIGNvbnRlbnU6ICAgICAgICAgICAgICAgICBDb250ZW51O1xuICAgIGRhdGVEaXNwb1JlcHJlc2VudGF0aW9uOiBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudSB7XG4gICAgZG9jdW1lbnRVUkk6IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gTm9tIHtcbiAgICBQREYgPSBcIlBERlwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXR1dFJlcHJlc2VudGF0aW9uIHtcbiAgICB2ZXJiYXRpbTogICAgICAgc3RyaW5nO1xuICAgIGNhbm9uaXF1ZTogICAgICBzdHJpbmc7XG4gICAgb2ZmaWNpZWxsZTogICAgIHN0cmluZztcbiAgICB0cmFuc2NyaXB0aW9uOiAgc3RyaW5nO1xuICAgIGVucmVnaXN0cmVtZW50OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZU1JTUUge1xuICAgIHR5cGU6ICAgIFR5cGVNSU1FVHlwZTtcbiAgICBzdWJUeXBlOiBOb207XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVNSU1FVHlwZSB7XG4gICAgQXBwbGljYXRpb24gPSBcImFwcGxpY2F0aW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0YWlyZXMge1xuICAgIGF1dGV1cjogICAgICAgIEF1dGV1cjtcbiAgICBjb3NpZ25hdGFpcmVzOiBDb3NpZ25hdGFpcmVzO1xuICAgIHN1ZmZpeGU6ICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBsaWJlbGxlOiAgICAgICBudWxsIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGV1ciB7XG4gICAgdHlwZUF1dGV1cjogICAgICAgICAgICAgICAgVHlwZUF1dGV1cjtcbiAgICBnb3V2ZXJuZW1lbnRSZWY6ICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYWN0ZXVyUmVmOiAgICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGdyb3VwZVBvbGl0aXF1ZVJlZjogICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhdXRldXJSYXBwb3J0ZXVyT3JnYW5lUmVmOiBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVBdXRldXIge1xuICAgIETDqXB1dMOpID0gXCJEw6lwdXTDqVwiLFxuICAgIEdvdXZlcm5lbWVudCA9IFwiR291dmVybmVtZW50XCIsXG4gICAgUmFwcG9ydGV1ciA9IFwiUmFwcG9ydGV1clwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvc2lnbmF0YWlyZXMge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGFjdGV1clJlZj86ICAgIHN0cmluZ1tdIHwgc3RyaW5nO1xufVxuXG4vLyBDb252ZXJ0cyBKU09OIHN0cmluZ3MgdG8vZnJvbSB5b3VyIHR5cGVzXG4vLyBhbmQgYXNzZXJ0cyB0aGUgcmVzdWx0cyBvZiBKU09OLnBhcnNlIGF0IHJ1bnRpbWVcbmV4cG9ydCBjbGFzcyBDb252ZXJ0IHtcbiAgICBwdWJsaWMgc3RhdGljIHRvQW1lbmRlbWVudHMoanNvbjogc3RyaW5nKTogQW1lbmRlbWVudHMge1xuICAgICAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiQW1lbmRlbWVudHNcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYW1lbmRlbWVudHNUb0pzb24odmFsdWU6IEFtZW5kZW1lbnRzKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIkFtZW5kZW1lbnRzXCIpKSwgbnVsbCwgMik7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyB0b1RleHRlTGVnaXNsYXRpZihqc29uOiBzdHJpbmcpOiBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgICAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiVGV4dGVMZWdpc2xhdGlmXCIpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRleHRlTGVnaXNsYXRpZlRvSnNvbih2YWx1ZTogVGV4dGVMZWdpc2xhdGlmKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIlRleHRlTGVnaXNsYXRpZlwiKSksIG51bGwsIDIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgdG9BbWVuZGVtZW50V3JhcHBlcihqc29uOiBzdHJpbmcpOiBBbWVuZGVtZW50V3JhcHBlciB7XG4gICAgICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50V3JhcHBlclwiKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBhbWVuZGVtZW50V3JhcHBlclRvSnNvbih2YWx1ZTogQW1lbmRlbWVudFdyYXBwZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudFdyYXBwZXJcIikpLCBudWxsLCAyKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGludmFsaWRWYWx1ZSh0eXA6IGFueSwgdmFsOiBhbnksIGtleTogYW55ID0gJycpOiBuZXZlciB7XG4gICAgaWYgKGtleSkge1xuICAgICAgICB0aHJvdyBFcnJvcihgSW52YWxpZCB2YWx1ZSBmb3Iga2V5IFwiJHtrZXl9XCIuIEV4cGVjdGVkIHR5cGUgJHtKU09OLnN0cmluZ2lmeSh0eXApfSBidXQgZ290ICR7SlNPTi5zdHJpbmdpZnkodmFsKX1gKTtcbiAgICB9XG4gICAgdGhyb3cgRXJyb3IoYEludmFsaWQgdmFsdWUgJHtKU09OLnN0cmluZ2lmeSh2YWwpfSBmb3IgdHlwZSAke0pTT04uc3RyaW5naWZ5KHR5cCl9YCwgKTtcbn1cblxuZnVuY3Rpb24ganNvblRvSlNQcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gICAgaWYgKHR5cC5qc29uVG9KUyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IG1hcDogYW55ID0ge307XG4gICAgICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IG1hcFtwLmpzb25dID0geyBrZXk6IHAuanMsIHR5cDogcC50eXAgfSk7XG4gICAgICAgIHR5cC5qc29uVG9KUyA9IG1hcDtcbiAgICB9XG4gICAgcmV0dXJuIHR5cC5qc29uVG9KUztcbn1cblxuZnVuY3Rpb24ganNUb0pTT05Qcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gICAgaWYgKHR5cC5qc1RvSlNPTiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IG1hcDogYW55ID0ge307XG4gICAgICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IG1hcFtwLmpzXSA9IHsga2V5OiBwLmpzb24sIHR5cDogcC50eXAgfSk7XG4gICAgICAgIHR5cC5qc1RvSlNPTiA9IG1hcDtcbiAgICB9XG4gICAgcmV0dXJuIHR5cC5qc1RvSlNPTjtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtKHZhbDogYW55LCB0eXA6IGFueSwgZ2V0UHJvcHM6IGFueSwga2V5OiBhbnkgPSAnJyk6IGFueSB7XG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtUHJpbWl0aXZlKHR5cDogc3RyaW5nLCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh0eXBlb2YgdHlwID09PSB0eXBlb2YgdmFsKSByZXR1cm4gdmFsO1xuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXkpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybVVuaW9uKHR5cHM6IGFueVtdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIC8vIHZhbCBtdXN0IHZhbGlkYXRlIGFnYWluc3Qgb25lIHR5cCBpbiB0eXBzXG4gICAgICAgIGNvbnN0IGwgPSB0eXBzLmxlbmd0aDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHR5cCA9IHR5cHNbaV07XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGdldFByb3BzKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKF8pIHt9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXBzLCB2YWwpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybUVudW0oY2FzZXM6IHN0cmluZ1tdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmIChjYXNlcy5pbmRleE9mKHZhbCkgIT09IC0xKSByZXR1cm4gdmFsO1xuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKGNhc2VzLCB2YWwpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybUFycmF5KHR5cDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIC8vIHZhbCBtdXN0IGJlIGFuIGFycmF5IHdpdGggbm8gaW52YWxpZCBlbGVtZW50c1xuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsKSkgcmV0dXJuIGludmFsaWRWYWx1ZShcImFycmF5XCIsIHZhbCk7XG4gICAgICAgIHJldHVybiB2YWwubWFwKGVsID0+IHRyYW5zZm9ybShlbCwgdHlwLCBnZXRQcm9wcykpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybURhdGUodmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkID0gbmV3IERhdGUodmFsKTtcbiAgICAgICAgaWYgKGlzTmFOKGQudmFsdWVPZigpKSkge1xuICAgICAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShcIkRhdGVcIiwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZDtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1PYmplY3QocHJvcHM6IHsgW2s6IHN0cmluZ106IGFueSB9LCBhZGRpdGlvbmFsOiBhbnksIHZhbDogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHZhbCA9PT0gbnVsbCB8fCB0eXBlb2YgdmFsICE9PSBcIm9iamVjdFwiIHx8IEFycmF5LmlzQXJyYXkodmFsKSkge1xuICAgICAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShcIm9iamVjdFwiLCB2YWwpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJlc3VsdDogYW55ID0ge307XG4gICAgICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHByb3BzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwcm9wID0gcHJvcHNba2V5XTtcbiAgICAgICAgICAgIGNvbnN0IHYgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCBrZXkpID8gdmFsW2tleV0gOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICByZXN1bHRbcHJvcC5rZXldID0gdHJhbnNmb3JtKHYsIHByb3AudHlwLCBnZXRQcm9wcywgcHJvcC5rZXkpO1xuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcywga2V5KSkge1xuICAgICAgICAgICAgICAgIHJlc3VsdFtrZXldID0gdHJhbnNmb3JtKHZhbFtrZXldLCBhZGRpdGlvbmFsLCBnZXRQcm9wcywga2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgaWYgKHR5cCA9PT0gXCJhbnlcIikgcmV0dXJuIHZhbDtcbiAgICBpZiAodHlwID09PSBudWxsKSB7XG4gICAgICAgIGlmICh2YWwgPT09IG51bGwpIHJldHVybiB2YWw7XG4gICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpO1xuICAgIH1cbiAgICBpZiAodHlwID09PSBmYWxzZSkgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCk7XG4gICAgd2hpbGUgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLnJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHR5cCA9IHR5cGVNYXBbdHlwLnJlZl07XG4gICAgfVxuICAgIGlmIChBcnJheS5pc0FycmF5KHR5cCkpIHJldHVybiB0cmFuc2Zvcm1FbnVtKHR5cCwgdmFsKTtcbiAgICBpZiAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIikge1xuICAgICAgICByZXR1cm4gdHlwLmhhc093blByb3BlcnR5KFwidW5pb25NZW1iZXJzXCIpID8gdHJhbnNmb3JtVW5pb24odHlwLnVuaW9uTWVtYmVycywgdmFsKVxuICAgICAgICAgICAgOiB0eXAuaGFzT3duUHJvcGVydHkoXCJhcnJheUl0ZW1zXCIpICAgID8gdHJhbnNmb3JtQXJyYXkodHlwLmFycmF5SXRlbXMsIHZhbClcbiAgICAgICAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwicHJvcHNcIikgICAgICAgICA/IHRyYW5zZm9ybU9iamVjdChnZXRQcm9wcyh0eXApLCB0eXAuYWRkaXRpb25hbCwgdmFsKVxuICAgICAgICAgICAgOiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpO1xuICAgIH1cbiAgICAvLyBOdW1iZXJzIGNhbiBiZSBwYXJzZWQgYnkgRGF0ZSBidXQgc2hvdWxkbid0IGJlLlxuICAgIGlmICh0eXAgPT09IERhdGUgJiYgdHlwZW9mIHZhbCAhPT0gXCJudW1iZXJcIikgcmV0dXJuIHRyYW5zZm9ybURhdGUodmFsKTtcbiAgICByZXR1cm4gdHJhbnNmb3JtUHJpbWl0aXZlKHR5cCwgdmFsKTtcbn1cblxuZnVuY3Rpb24gY2FzdDxUPih2YWw6IGFueSwgdHlwOiBhbnkpOiBUIHtcbiAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc29uVG9KU1Byb3BzKTtcbn1cblxuZnVuY3Rpb24gdW5jYXN0PFQ+KHZhbDogVCwgdHlwOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzVG9KU09OUHJvcHMpO1xufVxuXG5mdW5jdGlvbiBhKHR5cDogYW55KSB7XG4gICAgcmV0dXJuIHsgYXJyYXlJdGVtczogdHlwIH07XG59XG5cbmZ1bmN0aW9uIHUoLi4udHlwczogYW55W10pIHtcbiAgICByZXR1cm4geyB1bmlvbk1lbWJlcnM6IHR5cHMgfTtcbn1cblxuZnVuY3Rpb24gbyhwcm9wczogYW55W10sIGFkZGl0aW9uYWw6IGFueSkge1xuICAgIHJldHVybiB7IHByb3BzLCBhZGRpdGlvbmFsIH07XG59XG5cbi8vIGZ1bmN0aW9uIG0oYWRkaXRpb25hbDogYW55KSB7XG4vLyAgICAgcmV0dXJuIHsgcHJvcHM6IFtdLCBhZGRpdGlvbmFsIH07XG4vLyB9XG5cbmZ1bmN0aW9uIHIobmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHsgcmVmOiBuYW1lIH07XG59XG5cbmNvbnN0IHR5cGVNYXA6IGFueSA9IHtcbiAgICBcIkFtZW5kZW1lbnRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidGV4dGVzTGVnaXNsYXRpZnNcIiwganM6IFwidGV4dGVzTGVnaXNsYXRpZnNcIiwgdHlwOiBhKHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiVGV4dGVMZWdpc2xhdGlmXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwicmVmVGV4dGVMZWdpc2xhdGlmXCIsIGpzOiBcInJlZlRleHRlTGVnaXNsYXRpZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRzXCIsIGpzOiBcImFtZW5kZW1lbnRzXCIsIHR5cDogcihcIkFtZW5kZW1lbnRzQ2xhc3NcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50c0NsYXNzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogYShyKFwiQW1lbmRlbWVudFwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50V3JhcHBlclwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRcIiwganM6IFwiYW1lbmRlbWVudFwiLCB0eXA6IHIoXCJBbWVuZGVtZW50XCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuc1wiLCBqczogXCJAeG1sbnNcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY2hyb25vdGFnXCIsIGpzOiBcImNocm9ub3RhZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxlZ2lzbGF0dXJlXCIsIGpzOiBcImxlZ2lzbGF0dXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiaWRlbnRpZmljYXRpb25cIiwganM6IFwiaWRlbnRpZmljYXRpb25cIiwgdHlwOiByKFwiSWRlbnRpZmljYXRpb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImV4YW1lblJlZlwiLCBqczogXCJleGFtZW5SZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJ0ZXh0ZUxlZ2lzbGF0aWZSZWZcIiwganM6IFwidGV4dGVMZWdpc2xhdGlmUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidHJpQW1lbmRlbWVudFwiLCBqczogXCJ0cmlBbWVuZGVtZW50XCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY2FyZGluYWxpdGVBbWR0TXVsdGlwbGVzXCIsIGpzOiBcImNhcmRpbmFsaXRlQW1kdE11bHRpcGxlc1wiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRQYXJlbnRSZWZcIiwganM6IFwiYW1lbmRlbWVudFBhcmVudFJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInNpZ25hdGFpcmVzXCIsIGpzOiBcInNpZ25hdGFpcmVzXCIsIHR5cDogcihcIlNpZ25hdGFpcmVzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJwb2ludGV1ckZyYWdtZW50VGV4dGVcIiwganM6IFwicG9pbnRldXJGcmFnbWVudFRleHRlXCIsIHR5cDogcihcIlBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29ycHNcIiwganM6IFwiY29ycHNcIiwgdHlwOiByKFwiQ29ycHNcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImN5Y2xlRGVWaWVcIiwganM6IFwiY3ljbGVEZVZpZVwiLCB0eXA6IHIoXCJDeWNsZURlVmllXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJyZXByZXNlbnRhdGlvbnNcIiwganM6IFwicmVwcmVzZW50YXRpb25zXCIsIHR5cDogdShyKFwiUmVwcmVzZW50YXRpb25zXCIpLCBudWxsKSB9LFxuICAgICAgICB7IGpzb246IFwic2VhbmNlRGlzY3Vzc2lvblJlZlwiLCBqczogXCJzZWFuY2VEaXNjdXNzaW9uUmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXJ0aWNsZTk5XCIsIGpzOiBcImFydGljbGU5OVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxvaVJlZmVyZW5jZVwiLCBqczogXCJsb2lSZWZlcmVuY2VcIiwgdHlwOiByKFwiTG9pUmVmZXJlbmNlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXNjdXNzaW9uQ29tbXVuZVwiLCBqczogXCJkaXNjdXNzaW9uQ29tbXVuZVwiLCB0eXA6IHIoXCJEaXNjdXNzaW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXNjdXNzaW9uSWRlbnRpcXVlXCIsIGpzOiBcImRpc2N1c3Npb25JZGVudGlxdWVcIiwgdHlwOiByKFwiRGlzY3Vzc2lvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIiwganM6IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIiwgdHlwOiByKFwiQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb3Jwc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNhcnRvdWNoZUluZm9ybWF0aWZcIiwganM6IFwiY2FydG91Y2hlSW5mb3JtYXRpZlwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiY29udGVudUF1dGV1clwiLCBqczogXCJjb250ZW51QXV0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJDb250ZW51QXV0ZXVyXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkNvbnRlbnVBdXRldXJcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJkaXNwb3NpdGlmXCIsIGpzOiBcImRpc3Bvc2l0aWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF2YW50QXBwZWxcIiwganM6IFwiYXZhbnRBcHBlbFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQXZhbnRBcHBlbFwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImV4cG9zZVNvbW1haXJlXCIsIGpzOiBcImV4cG9zZVNvbW1haXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhbm5leGVFeHBvc2VTb21tYWlyZVwiLCBqczogXCJhbm5leGVFeHBvc2VTb21tYWlyZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIiwganM6IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIsIGpzOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkF2YW50QXBwZWxcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXNwb3NpdGlmXCIsIGpzOiBcImRpc3Bvc2l0aWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImxpc3RlUHJvZ3JhbW1lc1wiLCBqczogXCJsaXN0ZVByb2dyYW1tZXNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGTGlzdGVQcm9ncmFtbWVzXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwic29sZGVBRVwiLCBqczogXCJzb2xkZUFFXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzb2xkZUNQXCIsIGpzOiBcInNvbGRlQ1BcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNwRWdhbEFlXCIsIGpzOiBcImNwRWdhbEFlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGTGlzdGVQcm9ncmFtbWVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicHJvZ3JhbW1lXCIsIGpzOiBcInByb2dyYW1tZVwiLCB0eXA6IGEocihcIlB1cnBsZVByb2dyYW1tZVwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJQdXJwbGVQcm9ncmFtbWVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJwcm9ncmFtbWVSZWZcIiwganM6IFwicHJvZ3JhbW1lUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhY3Rpb25cIiwganM6IFwiYWN0aW9uXCIsIHR5cDogcihcIkFjdGlvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlnbmVzQ3JlZGl0c1wiLCBqczogXCJsaWduZXNDcmVkaXRzXCIsIHR5cDogcihcIlB1cnBsZUxpZ25lc0NyZWRpdHNcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJQdXJwbGVMaWduZXNDcmVkaXRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlnbmVDcmVkaXRcIiwganM6IFwibGlnbmVDcmVkaXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJMaWduZUNyZWRpdENsYXNzXCIpKSwgcihcIkxpZ25lQ3JlZGl0Q2xhc3NcIikpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkxpZ25lQ3JlZGl0Q2xhc3NcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYWN0aW9uXCIsIGpzOiBcImFjdGlvblwiLCB0eXA6IHIoXCJBY3Rpb25cIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJsaXN0ZVByb2dyYW1tZXNcIiwganM6IFwibGlzdGVQcm9ncmFtbWVzXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJMaXN0ZVByb2dyYW1tZXNcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJ0b3RhbEFFXCIsIGpzOiBcInRvdGFsQUVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlRvdGFsXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwidG90YWxDUFwiLCBqczogXCJ0b3RhbENQXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUb3RhbFwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImNwRWdhbEFlXCIsIGpzOiBcImNwRWdhbEFlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUkxpc3RlUHJvZ3JhbW1lc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInByb2dyYW1tZVwiLCBqczogXCJwcm9ncmFtbWVcIiwgdHlwOiBhKHIoXCJMaWduZUNyZWRpdEVsZW1lbnRcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTGlnbmVDcmVkaXRMaWduZXNDcmVkaXRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlnbmVDcmVkaXRcIiwganM6IFwibGlnbmVDcmVkaXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJMaWduZUNyZWRpdEVsZW1lbnRcIikpLCByKFwiTGlnbmVDcmVkaXRFbGVtZW50XCIpKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJMaWduZUNyZWRpdEVsZW1lbnRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJwcm9ncmFtbWVSZWZcIiwganM6IFwicHJvZ3JhbW1lUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmVcIiwganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFN1cHBsZW1lbnRhaXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRTdXBwbGVtZW50YWlyZVwiLCBqczogXCJjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudEFubnVsZVwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRBbm51bGVcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRBbm51bGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhY3Rpb25cIiwganM6IFwiYWN0aW9uXCIsIHR5cDogcihcIkFjdGlvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlnbmVzQ3JlZGl0c1wiLCBqczogXCJsaWduZXNDcmVkaXRzXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJMaWduZUNyZWRpdExpZ25lc0NyZWRpdHNcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlRvdGFsXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwic3VwcGxlbWVudGFpcmVcIiwganM6IFwic3VwcGxlbWVudGFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhbm51bGVcIiwganM6IFwiYW5udWxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwic29sZGVcIiwganM6IFwic29sZGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ3ljbGVEZVZpZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImRhdGVEZXBvdFwiLCBqczogXCJkYXRlRGVwb3RcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIERhdGUpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlUHVibGljYXRpb25cIiwganM6IFwiZGF0ZVB1YmxpY2F0aW9uXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBEYXRlKSB9LFxuICAgICAgICB7IGpzb246IFwic291bWlzQXJ0aWNsZTQwXCIsIGpzOiBcInNvdW1pc0FydGljbGU0MFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImV0YXREZXNUcmFpdGVtZW50c1wiLCBqczogXCJldGF0RGVzVHJhaXRlbWVudHNcIiwgdHlwOiByKFwiRXRhdERFU1RyYWl0ZW1lbnRzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlU29ydFwiLCBqczogXCJkYXRlU29ydFwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgRGF0ZSkgfSxcbiAgICAgICAgeyBqc29uOiBcInNvcnRcIiwganM6IFwic29ydFwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgcihcIlNvcnRFbnVtXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkV0YXRERVNUcmFpdGVtZW50c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IHIoXCJFdGF0XCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzb3VzRXRhdFwiLCBqczogXCJzb3VzRXRhdFwiLCB0eXA6IHIoXCJTb3VzRXRhdFwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkV0YXRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiByKFwiQ29kZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogcihcIkxpYmVsbGVcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJTb3VzRXRhdFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNvZGVcIiwganM6IFwiY29kZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQ29kZVwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiU29ydEVudW1cIikpIH0sXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGlzY3Vzc2lvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImlkRGlzY3Vzc2lvblwiLCBqczogXCJpZERpc2N1c3Npb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVQb3NpdGlvblwiLCBqczogXCJ0eXBlUG9zaXRpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlR5cGVQb3NpdGlvblwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJJZGVudGlmaWNhdGlvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIm51bWVyb0xvbmdcIiwganM6IFwibnVtZXJvTG9uZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm51bWVyb09yZHJlRGVwb3RcIiwganM6IFwibnVtZXJvT3JkcmVEZXBvdFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInByZWZpeGVPcmdhbmVFeGFtZW5cIiwganM6IFwicHJlZml4ZU9yZ2FuZUV4YW1lblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm51bWVyb1JlY3RcIiwganM6IFwibnVtZXJvUmVjdFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJMb2lSZWZlcmVuY2VcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb2RlTG9pXCIsIGpzOiBcImNvZGVMb2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBudWxsLCBcIlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImRpdmlzaW9uQ29kZUxvaVwiLCBqczogXCJkaXZpc2lvbkNvZGVMb2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBudWxsLCBcIlwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJQb2ludGV1ckZyYWdtZW50VGV4dGVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJwYXJ0aWVBbWVuZGFibGVSZWZcIiwganM6IFwicGFydGllQW1lbmRhYmxlUmVmXCIsIHR5cDogcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGl2aXNpb25cIiwganM6IFwiZGl2aXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpdmlzaW9uXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiYW1lbmRlbWVudFN0YW5kYXJkXCIsIGpzOiBcImFtZW5kZW1lbnRTdGFuZGFyZFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQW1lbmRlbWVudFN0YW5kYXJkXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwibWlzc2lvblZpc2VlXCIsIGpzOiBcIm1pc3Npb25WaXNlZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiTWlzc2lvblZpc2VlXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFtZW5kZW1lbnRTdGFuZGFyZFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFsaW5lYVwiLCBqczogXCJhbGluZWFcIiwgdHlwOiByKFwiQWxpbmVhXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQWxpbmVhXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXZhbnRfQV9BcHJlc1wiLCBqczogXCJhdmFudF9BX0FwcmVzXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgbnVsbCwgXCJcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJudW1lcm9cIiwganM6IFwibnVtZXJvXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJhbGluZWFEZXNpZ25hdGlvblwiLCBqczogXCJhbGluZWFEZXNpZ25hdGlvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpdmlzaW9uXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidGl0cmVcIiwganM6IFwidGl0cmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25Db3VydGVcIiwganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXJ0aWNsZURlc2lnbmF0aW9uXCIsIGpzOiBcImFydGljbGVEZXNpZ25hdGlvblwiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVcIiwganM6IFwidHlwZVwiLCB0eXA6IHIoXCJEaXZpc2lvblR5cGVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF2YW50X0FfQXByZXNcIiwganM6IFwiYXZhbnRfQV9BcHJlc1wiLCB0eXA6IHIoXCJBdmFudEFBcHJlc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGl2aXNpb25SYXR0YWNoZWVcIiwganM6IFwiZGl2aXNpb25SYXR0YWNoZWVcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhcnRpY2xlQWRkaXRpb25uZWxcIiwganM6IFwiYXJ0aWNsZUFkZGl0aW9ubmVsXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY2hhcGl0cmVBZGRpdGlvbm5lbFwiLCBqczogXCJjaGFwaXRyZUFkZGl0aW9ubmVsXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidXJsRGl2aXNpb25UZXh0ZVZpc2VcIiwganM6IFwidXJsRGl2aXNpb25UZXh0ZVZpc2VcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTWlzc2lvblZpc2VlXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiY29kZUV0YXRcIiwganM6IFwiY29kZUV0YXRcIiwgdHlwOiByKFwiQ29kZUV0YXRcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIGpzOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibGliZWxsZU1pc3Npb25cIiwganM6IFwibGliZWxsZU1pc3Npb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJtaXNzaW9uUmVmXCIsIGpzOiBcIm1pc3Npb25SZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUmVwcmVzZW50YXRpb25zXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicmVwcmVzZW50YXRpb25cIiwganM6IFwicmVwcmVzZW50YXRpb25cIiwgdHlwOiByKFwiUmVwcmVzZW50YXRpb25cIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJSZXByZXNlbnRhdGlvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiByKFwiTm9tXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJ0eXBlTWltZVwiLCBqczogXCJ0eXBlTWltZVwiLCB0eXA6IHIoXCJUeXBlTUlNRVwiKSB9LFxuICAgICAgICB7IGpzb246IFwic3RhdHV0UmVwcmVzZW50YXRpb25cIiwganM6IFwic3RhdHV0UmVwcmVzZW50YXRpb25cIiwgdHlwOiByKFwiU3RhdHV0UmVwcmVzZW50YXRpb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcInJlcFNvdXJjZVwiLCBqczogXCJyZXBTb3VyY2VcIiwgdHlwOiByKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJvZmZzZXRcIiwganM6IFwib2Zmc2V0XCIsIHR5cDogcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29udGVudVwiLCBqczogXCJjb250ZW51XCIsIHR5cDogcihcIkNvbnRlbnVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRhdGVEaXNwb1JlcHJlc2VudGF0aW9uXCIsIGpzOiBcImRhdGVEaXNwb1JlcHJlc2VudGF0aW9uXCIsIHR5cDogcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkNvbnRlbnVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJkb2N1bWVudFVSSVwiLCBqczogXCJkb2N1bWVudFVSSVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJTdGF0dXRSZXByZXNlbnRhdGlvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInZlcmJhdGltXCIsIGpzOiBcInZlcmJhdGltXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY2Fub25pcXVlXCIsIGpzOiBcImNhbm9uaXF1ZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm9mZmljaWVsbGVcIiwganM6IFwib2ZmaWNpZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRyYW5zY3JpcHRpb25cIiwganM6IFwidHJhbnNjcmlwdGlvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImVucmVnaXN0cmVtZW50XCIsIGpzOiBcImVucmVnaXN0cmVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlR5cGVNSU1FXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidHlwZVwiLCBqczogXCJ0eXBlXCIsIHR5cDogcihcIlR5cGVNSU1FVHlwZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwic3ViVHlwZVwiLCBqczogXCJzdWJUeXBlXCIsIHR5cDogcihcIk5vbVwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlNpZ25hdGFpcmVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiYXV0ZXVyXCIsIGpzOiBcImF1dGV1clwiLCB0eXA6IHIoXCJBdXRldXJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvc2lnbmF0YWlyZXNcIiwganM6IFwiY29zaWduYXRhaXJlc1wiLCB0eXA6IHIoXCJDb3NpZ25hdGFpcmVzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzdWZmaXhlXCIsIGpzOiBcInN1ZmZpeGVcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiB1KG51bGwsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQXV0ZXVyXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidHlwZUF1dGV1clwiLCBqczogXCJ0eXBlQXV0ZXVyXCIsIHR5cDogcihcIlR5cGVBdXRldXJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImdvdXZlcm5lbWVudFJlZlwiLCBqczogXCJnb3V2ZXJuZW1lbnRSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZ3JvdXBlUG9saXRpcXVlUmVmXCIsIGpzOiBcImdyb3VwZVBvbGl0aXF1ZVJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWZcIiwganM6IFwiYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZVJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb3NpZ25hdGFpcmVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYWN0ZXVyUmVmXCIsIGpzOiBcImFjdGV1clJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KGEoXCJcIiksIFwiXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpXCI6IFtcbiAgICAgICAgXCJBY2NvcmRcIixcbiAgICAgICAgXCJTYW5zIG9iamV0XCIsXG4gICAgXSxcbiAgICBcIkFjdGlvblwiOiBbXG4gICAgICAgIFwiY3LDqWF0aW9uXCIsXG4gICAgICAgIFwibW9kaWZpY2F0aW9uXCIsXG4gICAgICAgIFwic3VwcHJlc3Npb25cIixcbiAgICBdLFxuICAgIFwiQ29kZVwiOiBbXG4gICAgICAgIFwiQUNcIixcbiAgICAgICAgXCJBVFwiLFxuICAgICAgICBcIkRJXCIsXG4gICAgICAgIFwiZWZmYWPDqVwiLFxuICAgICAgICBcIkVSXCIsXG4gICAgICAgIFwiRVRcIixcbiAgICAgICAgXCJJUlwiLFxuICAgICAgICBcIklSUjEyN1wiLFxuICAgICAgICBcIklSUjIwXCIsXG4gICAgICAgIFwiSVJSMzdcIixcbiAgICAgICAgXCJJUlIzOFwiLFxuICAgICAgICBcIklSUjQxXCIsXG4gICAgICAgIFwiSVJSNDJcIixcbiAgICAgICAgXCJJUlI0NVwiLFxuICAgICAgICBcIklSUjQ4XCIsXG4gICAgICAgIFwiSVJSNTNcIixcbiAgICAgICAgXCJJUlJBSVwiLFxuICAgICAgICBcIklSUkFJRlwiLFxuICAgICAgICBcIklSUkRcIixcbiAgICAgICAgXCJJUlJIRFwiLFxuICAgICAgICBcIklSUlNBXCIsXG4gICAgICAgIFwiUlwiLFxuICAgICAgICBcIlJUXCIsXG4gICAgICAgIFwiVFwiLFxuICAgIF0sXG4gICAgXCJMaWJlbGxlXCI6IFtcbiAgICAgICAgXCJBIGRpc2N1dGVyXCIsXG4gICAgICAgIFwiQSBkw6lwb3NlclwiLFxuICAgICAgICBcIkRpc2N1dMOpXCIsXG4gICAgICAgIFwiZWZmYWPDqVwiLFxuICAgICAgICBcIkVuIHJlY2V2YWJpbGl0w6lcIixcbiAgICAgICAgXCJFbiB0cmFpdGVtZW50XCIsXG4gICAgICAgIFwiSXJyZWNldmFibGVcIixcbiAgICAgICAgXCJJcnJlY2V2YWJsZSA0MFwiLFxuICAgICAgICBcIlJldGlyw6lcIixcbiAgICBdLFxuICAgIFwiU29ydEVudW1cIjogW1xuICAgICAgICBcIkFkb3B0w6lcIixcbiAgICAgICAgXCJBdXRyZSBpcnJlY2V2YWJpbGl0w6lcIixcbiAgICAgICAgXCJBdXRyZSBpcnJlY2V2YWJpbGl0w6kgNDBcIixcbiAgICAgICAgXCJBdXRyZXMgaXJyIExPTEZcIixcbiAgICAgICAgXCJBdXRyZXMgaXJyIExPTEZTU1wiLFxuICAgICAgICBcIkNhdmFsaWVyICg0NSlcIixcbiAgICAgICAgXCJDYXZhbGllciBidWRnw6l0YWlyZVwiLFxuICAgICAgICBcIkNhdmFsaWVyIHNvY2lhbFwiLFxuICAgICAgICBcIkNoYW1wIGRlIGwnaGFiaWxpdGF0aW9uICgzOClcIixcbiAgICAgICAgXCJDaGFyZ2VcIixcbiAgICAgICAgXCJDTVAgKDQ1KVwiLFxuICAgICAgICBcIkNyw6lkaXRzXCIsXG4gICAgICAgIFwiRGlzcG9zaXRpb24gcsOpZ2xlbWVudGFpcmUgKDM3KVwiLFxuICAgICAgICBcIkRvbWFpbmUgZGUgbGEgbG9pICg0MSlcIixcbiAgICAgICAgXCJEb21haW5lIGxvaSBvcmdhbmlxdWUgKDEyNylcIixcbiAgICAgICAgXCJEb3VibG9uXCIsXG4gICAgICAgIFwiRW50b25ub2lyICg0NSlcIixcbiAgICAgICAgXCJHYWdlXCIsXG4gICAgICAgIFwiSG9ycy1kw6lsYWlzXCIsXG4gICAgICAgIFwiSW5qb25jdGlvbiAoMjApXCIsXG4gICAgICAgIFwiSXJyIGVuIHByZW1pw6hyZSBwYXJ0aWVcIixcbiAgICAgICAgXCJJcnIgZW4gc2Vjb25kZSBwYXJ0aWVcIixcbiAgICAgICAgXCJMT0xGXCIsXG4gICAgICAgIFwiTE9MRlNTXCIsXG4gICAgICAgIFwiTm9uIHNvdXRlbnVcIixcbiAgICAgICAgXCJPcmRyZSBkdSBqb3VyICg0OClcIixcbiAgICAgICAgXCJSXCIsXG4gICAgICAgIFwiUmF0aWZpY2F0aW9uIHRyYWl0w6kgKDUzKVwiLFxuICAgICAgICBcIlJlamV0w6lcIixcbiAgICAgICAgXCJSZXRpcsOpXCIsXG4gICAgICAgIFwiUmV0aXLDqSBhcHLDqHMgcHVibGljYXRpb25cIixcbiAgICAgICAgXCJSZXRpcsOpIGF2YW50IHB1YmxpY2F0aW9uXCIsXG4gICAgICAgIFwiU2F0aXNmYWl0IG91IGlub3DDqXJhbnQgKDQyKVwiLFxuICAgICAgICBcIlNvdXMtYW1lbmRlbWVudCAoOTgpXCIsXG4gICAgICAgIFwiVG9tYsOpXCIsXG4gICAgXSxcbiAgICBcIlR5cGVQb3NpdGlvblwiOiBbXG4gICAgICAgIFwiRGVybmllclwiLFxuICAgICAgICBcIk1pbGlldVwiLFxuICAgICAgICBcIlByZW1pZXJcIixcbiAgICBdLFxuICAgIFwiQXZhbnRBQXByZXNcIjogW1xuICAgICAgICBcIkFcIixcbiAgICAgICAgXCJBcHLDqHNcIixcbiAgICAgICAgXCJBdmFudFwiLFxuICAgIF0sXG4gICAgXCJEaXZpc2lvblR5cGVcIjogW1xuICAgICAgICBcIkFOTkVYRVwiLFxuICAgICAgICBcIkFSVElDTEVcIixcbiAgICAgICAgXCJDSEFQSVRSRVwiLFxuICAgICAgICBcIlRJVFJFXCIsXG4gICAgXSxcbiAgICBcIkNvZGVFdGF0XCI6IFtcbiAgICAgICAgXCJCXCIsXG4gICAgICAgIFwiQ1wiLFxuICAgICAgICBcIkRcIixcbiAgICBdLFxuICAgIFwiTm9tXCI6IFtcbiAgICAgICAgXCJQREZcIixcbiAgICBdLFxuICAgIFwiVHlwZU1JTUVUeXBlXCI6IFtcbiAgICAgICAgXCJhcHBsaWNhdGlvblwiLFxuICAgIF0sXG4gICAgXCJUeXBlQXV0ZXVyXCI6IFtcbiAgICAgICAgXCJEw6lwdXTDqVwiLFxuICAgICAgICBcIkdvdXZlcm5lbWVudFwiLFxuICAgICAgICBcIlJhcHBvcnRldXJcIixcbiAgICBdLFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBLElBNENZQSxnQ0FBZ0M7QUFBQTtBQUFBLFdBQWhDQSxnQ0FBZ0M7RUFBaENBLGdD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
|