@tricoteuses/assemblee 1.0.0-next.2 → 1.0.2

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.
Files changed (135) hide show
  1. package/README.md +2 -0
  2. package/lib/api.js +23 -7
  3. package/lib/api.mjs +41 -0
  4. package/lib/bugs/acteur-00010/plugin.test.js +139 -33
  5. package/lib/bugs/acteur-00010/plugin.test.mjs +33 -0
  6. package/lib/bugs/acteur-00010.js +166 -24
  7. package/lib/bugs/acteur-00010.mjs +31 -0
  8. package/lib/bugs/agenda-00002/plugin.test.js +178 -52
  9. package/lib/bugs/agenda-00002/plugin.test.mjs +52 -0
  10. package/lib/bugs/agenda-00002.js +507 -143
  11. package/lib/bugs/agenda-00002.mjs +197 -0
  12. package/lib/bugs/agenda-00008/plugin.test.js +143 -31
  13. package/lib/bugs/agenda-00008/plugin.test.mjs +31 -0
  14. package/lib/bugs/agenda-00008.js +180 -25
  15. package/lib/bugs/agenda-00008.mjs +30 -0
  16. package/lib/bugs/agenda-00011/plugin.test.js +371 -156
  17. package/lib/bugs/agenda-00011/plugin.test.mjs +156 -0
  18. package/lib/bugs/agenda-00011.js +416 -117
  19. package/lib/bugs/agenda-00011.mjs +150 -0
  20. package/lib/bugs.js +591 -54
  21. package/lib/bugs.mjs +93 -0
  22. package/lib/cleaners/actes_legislatifs.js +149 -61
  23. package/lib/cleaners/actes_legislatifs.mjs +311 -0
  24. package/lib/cleaners/acteurs.js +255 -123
  25. package/lib/cleaners/acteurs.mjs +211 -0
  26. package/lib/cleaners/amendements.js +242 -117
  27. package/lib/cleaners/amendements.mjs +292 -0
  28. package/lib/cleaners/documents.js +147 -62
  29. package/lib/cleaners/documents.mjs +162 -0
  30. package/lib/cleaners/dossiers_legislatifs.js +132 -45
  31. package/lib/cleaners/dossiers_legislatifs.mjs +123 -0
  32. package/lib/cleaners/index.js +64 -8
  33. package/lib/cleaners/index.mjs +8 -0
  34. package/lib/cleaners/organes.js +54 -21
  35. package/lib/cleaners/organes.mjs +64 -0
  36. package/lib/cleaners/reunions.js +237 -127
  37. package/lib/cleaners/reunions.mjs +318 -0
  38. package/lib/cleaners/scrutins.js +261 -99
  39. package/lib/cleaners/scrutins.mjs +254 -0
  40. package/lib/cleaners/xml.js +81 -16
  41. package/lib/cleaners/xml.mjs +42 -0
  42. package/lib/datasets.js +284 -153
  43. package/lib/datasets.mjs +596 -0
  44. package/lib/dates.js +93 -34
  45. package/lib/dates.mjs +98 -0
  46. package/lib/dossiers_legislatifs.js +107 -33
  47. package/lib/dossiers_legislatifs.mjs +215 -0
  48. package/lib/file_systems.js +203 -35
  49. package/lib/file_systems.mjs +64 -0
  50. package/lib/git.js +139 -41
  51. package/lib/git.mjs +114 -0
  52. package/lib/index.js +310 -16
  53. package/lib/index.mjs +16 -0
  54. package/lib/inserters.js +355 -131
  55. package/lib/inserters.mjs +413 -0
  56. package/lib/loaders.js +900 -440
  57. package/lib/loaders.mjs +678 -0
  58. package/lib/organes.js +15 -5
  59. package/lib/organes.mjs +18 -0
  60. package/lib/parsers/documents.js +241 -89
  61. package/lib/parsers/documents.mjs +433 -0
  62. package/lib/parsers/index.js +36 -3
  63. package/lib/parsers/index.mjs +3 -0
  64. package/lib/parsers/recherche_amendements.js +616 -173
  65. package/lib/parsers/recherche_amendements.mjs +189 -0
  66. package/lib/raw_types/acteurs_et_organes.d.ts +36 -148
  67. package/lib/raw_types/acteurs_et_organes.js +228 -506
  68. package/lib/raw_types/acteurs_et_organes.mjs +1240 -0
  69. package/lib/raw_types/agendas.js +165 -75
  70. package/lib/raw_types/agendas.mjs +944 -0
  71. package/lib/raw_types/amendements.js +165 -77
  72. package/lib/raw_types/amendements.mjs +1040 -0
  73. package/lib/raw_types/dossiers_legislatifs.d.ts +1 -43
  74. package/lib/raw_types/dossiers_legislatifs.js +181 -143
  75. package/lib/raw_types/dossiers_legislatifs.mjs +1792 -0
  76. package/lib/raw_types/scrutins.js +144 -61
  77. package/lib/raw_types/scrutins.mjs +645 -0
  78. package/lib/scripts/bugs_helper.js +657 -155
  79. package/lib/scripts/bugs_helper.mjs +286 -0
  80. package/lib/scripts/clean_data.js +380 -145
  81. package/lib/scripts/clean_data.mjs +190 -0
  82. package/lib/scripts/clean_reorganized_data.js +627 -331
  83. package/lib/scripts/clean_reorganized_data.mjs +520 -0
  84. package/lib/scripts/diff_amendements.js +159 -73
  85. package/lib/scripts/diff_amendements.mjs +234 -0
  86. package/lib/scripts/document_dossiers_legislatifs.js +570 -288
  87. package/lib/scripts/document_dossiers_legislatifs.mjs +494 -0
  88. package/lib/scripts/get_today_reunions.js +37 -20
  89. package/lib/scripts/get_today_reunions.mjs +41 -0
  90. package/lib/scripts/merge_scrutins.js +121 -39
  91. package/lib/scripts/merge_scrutins.mjs +69 -0
  92. package/lib/scripts/parse_textes_lois.js +179 -125
  93. package/lib/scripts/parse_textes_lois.mjs +215 -0
  94. package/lib/scripts/raw_types_from_amendements.js +276 -77
  95. package/lib/scripts/raw_types_from_amendements.mjs +118 -0
  96. package/lib/scripts/reorganize_data.js +867 -446
  97. package/lib/scripts/reorganize_data.mjs +712 -0
  98. package/lib/scripts/retrieve_deputes_photos.js +378 -157
  99. package/lib/scripts/retrieve_deputes_photos.mjs +230 -0
  100. package/lib/scripts/retrieve_documents.js +648 -172
  101. package/lib/scripts/retrieve_documents.mjs +292 -0
  102. package/lib/scripts/retrieve_open_data.js +286 -85
  103. package/lib/scripts/retrieve_open_data.mjs +125 -0
  104. package/lib/scripts/retrieve_pending_amendments.js +302 -69
  105. package/lib/scripts/retrieve_pending_amendments.mjs +130 -0
  106. package/lib/scripts/retrieve_senateurs_photos.js +374 -198
  107. package/lib/scripts/retrieve_senateurs_photos.mjs +277 -0
  108. package/lib/scripts/retrieve_textes_lois.js +343 -89
  109. package/lib/scripts/retrieve_textes_lois.mjs +168 -0
  110. package/lib/scripts/test_load.js +30 -11
  111. package/lib/scripts/test_load.mjs +26 -0
  112. package/lib/scripts/test_load_big_files.js +30 -11
  113. package/lib/scripts/test_load_big_files.mjs +26 -0
  114. package/lib/scripts/validate_json.js +370 -120
  115. package/lib/scripts/validate_json.mjs +216 -0
  116. package/lib/shared_types/codes_actes.js +50 -15
  117. package/lib/shared_types/codes_actes.mjs +228 -0
  118. package/lib/strings.js +16 -3
  119. package/lib/strings.mjs +7 -0
  120. package/lib/types/acteurs_et_organes.js +156 -71
  121. package/lib/types/acteurs_et_organes.mjs +918 -0
  122. package/lib/types/agendas.js +154 -67
  123. package/lib/types/agendas.mjs +623 -0
  124. package/lib/types/amendements.js +166 -77
  125. package/lib/types/amendements.mjs +885 -0
  126. package/lib/types/dossiers_legislatifs.d.ts +1 -42
  127. package/lib/types/dossiers_legislatifs.js +182 -143
  128. package/lib/types/dossiers_legislatifs.mjs +1120 -0
  129. package/lib/types/legislatures.js +12 -3
  130. package/lib/types/legislatures.mjs +9 -0
  131. package/lib/types/scrutins.js +144 -61
  132. package/lib/types/scrutins.mjs +528 -0
  133. package/lib/urls.js +44 -25
  134. package/lib/urls.mjs +201 -0
  135. package/package.json +33 -12
@@ -1,3 +1,50 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+
5
+ require("core-js/modules/es.symbol.description.js");
6
+
7
+ require("core-js/modules/es.symbol.iterator.js");
8
+
9
+ require("core-js/modules/es.array.iterator.js");
10
+
11
+ require("core-js/modules/es.string.iterator.js");
12
+
13
+ require("core-js/modules/web.dom-collections.iterator.js");
14
+
15
+ Object.defineProperty(exports, "__esModule", {
16
+ value: true
17
+ });
18
+ 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
+ require("core-js/modules/es.array.concat.js");
21
+
22
+ require("core-js/modules/es.array.for-each.js");
23
+
24
+ require("core-js/modules/es.object.to-string.js");
25
+
26
+ require("core-js/modules/web.dom-collections.for-each.js");
27
+
28
+ require("core-js/modules/es.array.index-of.js");
29
+
30
+ require("core-js/modules/es.array.is-array.js");
31
+
32
+ require("core-js/modules/es.array.map.js");
33
+
34
+ require("core-js/modules/es.date.to-string.js");
35
+
36
+ require("core-js/modules/es.object.get-own-property-names.js");
37
+
38
+ require("core-js/modules/es.object.define-property.js");
39
+
40
+ 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
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
43
+
44
+ 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
+ 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
+
1
48
  // To parse this data:
2
49
  //
3
50
  // import { Amendements, AmendementWrapper, Convert, TexteLegislatif } from "./file";
@@ -8,22 +55,25 @@
8
55
  //
9
56
  // These functions will throw an error if the JSON doesn't
10
57
  // match the expected interface, even if the JSON is valid.
11
- export let AccordGouvernementDepotHorsDelai;
58
+ var AccordGouvernementDepotHorsDelai;
59
+ exports.AccordGouvernementDepotHorsDelai = AccordGouvernementDepotHorsDelai;
12
60
 
13
61
  (function (AccordGouvernementDepotHorsDelai) {
14
62
  AccordGouvernementDepotHorsDelai["Accord"] = "Accord";
15
63
  AccordGouvernementDepotHorsDelai["SansObjet"] = "Sans objet";
16
- })(AccordGouvernementDepotHorsDelai || (AccordGouvernementDepotHorsDelai = {}));
64
+ })(AccordGouvernementDepotHorsDelai || (exports.AccordGouvernementDepotHorsDelai = AccordGouvernementDepotHorsDelai = {}));
17
65
 
18
- export let Action;
66
+ var Action;
67
+ exports.Action = Action;
19
68
 
20
69
  (function (Action) {
21
70
  Action["Cr\xE9ation"] = "cr\xE9ation";
22
71
  Action["Modification"] = "modification";
23
72
  Action["Suppression"] = "suppression";
24
- })(Action || (Action = {}));
73
+ })(Action || (exports.Action = Action = {}));
25
74
 
26
- export let Code;
75
+ var Code;
76
+ exports.Code = Code;
27
77
 
28
78
  (function (Code) {
29
79
  Code["AC"] = "AC";
@@ -48,9 +98,10 @@ export let Code;
48
98
  Code["R"] = "R";
49
99
  Code["Rt"] = "RT";
50
100
  Code["T"] = "T";
51
- })(Code || (Code = {}));
101
+ })(Code || (exports.Code = Code = {}));
52
102
 
53
- export let Libelle;
103
+ var Libelle;
104
+ exports.Libelle = Libelle;
54
105
 
55
106
  (function (Libelle) {
56
107
  Libelle["ADiscuter"] = "A discuter";
@@ -62,9 +113,10 @@ export let Libelle;
62
113
  Libelle["Irrecevable"] = "Irrecevable";
63
114
  Libelle["Irrecevable40"] = "Irrecevable 40";
64
115
  Libelle["Retir\xE9"] = "Retir\xE9";
65
- })(Libelle || (Libelle = {}));
116
+ })(Libelle || (exports.Libelle = Libelle = {}));
66
117
 
67
- export let SortEnum;
118
+ var SortEnum;
119
+ exports.SortEnum = SortEnum;
68
120
 
69
121
  (function (SortEnum) {
70
122
  SortEnum["Adopt\xE9"] = "Adopt\xE9";
@@ -101,104 +153,130 @@ export let SortEnum;
101
153
  SortEnum["SatisfaitOuInop\xE9rant42"] = "Satisfait ou inop\xE9rant (42)";
102
154
  SortEnum["SousAmendement98"] = "Sous-amendement (98)";
103
155
  SortEnum["Tomb\xE9"] = "Tomb\xE9";
104
- })(SortEnum || (SortEnum = {}));
156
+ })(SortEnum || (exports.SortEnum = SortEnum = {}));
105
157
 
106
- export let TypePosition;
158
+ var TypePosition;
159
+ exports.TypePosition = TypePosition;
107
160
 
108
161
  (function (TypePosition) {
109
162
  TypePosition["Dernier"] = "Dernier";
110
163
  TypePosition["Milieu"] = "Milieu";
111
164
  TypePosition["Premier"] = "Premier";
112
- })(TypePosition || (TypePosition = {}));
165
+ })(TypePosition || (exports.TypePosition = TypePosition = {}));
113
166
 
114
- export let AvantAApres;
167
+ var AvantAApres;
168
+ exports.AvantAApres = AvantAApres;
115
169
 
116
170
  (function (AvantAApres) {
117
171
  AvantAApres["A"] = "A";
118
172
  AvantAApres["Apr\xE8s"] = "Apr\xE8s";
119
173
  AvantAApres["Avant"] = "Avant";
120
- })(AvantAApres || (AvantAApres = {}));
174
+ })(AvantAApres || (exports.AvantAApres = AvantAApres = {}));
121
175
 
122
- export let DivisionType;
176
+ var DivisionType;
177
+ exports.DivisionType = DivisionType;
123
178
 
124
179
  (function (DivisionType) {
125
180
  DivisionType["Annexe"] = "ANNEXE";
126
181
  DivisionType["Article"] = "ARTICLE";
127
182
  DivisionType["Chapitre"] = "CHAPITRE";
128
183
  DivisionType["Titre"] = "TITRE";
129
- })(DivisionType || (DivisionType = {}));
184
+ })(DivisionType || (exports.DivisionType = DivisionType = {}));
130
185
 
131
- export let CodeEtat;
186
+ var CodeEtat;
187
+ exports.CodeEtat = CodeEtat;
132
188
 
133
189
  (function (CodeEtat) {
134
190
  CodeEtat["B"] = "B";
135
191
  CodeEtat["C"] = "C";
136
192
  CodeEtat["D"] = "D";
137
- })(CodeEtat || (CodeEtat = {}));
193
+ })(CodeEtat || (exports.CodeEtat = CodeEtat = {}));
138
194
 
139
- export let Nom;
195
+ var Nom;
196
+ exports.Nom = Nom;
140
197
 
141
198
  (function (Nom) {
142
199
  Nom["PDF"] = "PDF";
143
- })(Nom || (Nom = {}));
200
+ })(Nom || (exports.Nom = Nom = {}));
144
201
 
145
- export let TypeMIMEType;
202
+ var TypeMIMEType;
203
+ exports.TypeMIMEType = TypeMIMEType;
146
204
 
147
205
  (function (TypeMIMEType) {
148
206
  TypeMIMEType["Application"] = "application";
149
- })(TypeMIMEType || (TypeMIMEType = {}));
207
+ })(TypeMIMEType || (exports.TypeMIMEType = TypeMIMEType = {}));
150
208
 
151
- export let TypeAuteur;
209
+ var TypeAuteur;
210
+ exports.TypeAuteur = TypeAuteur;
152
211
 
153
212
  (function (TypeAuteur) {
154
213
  TypeAuteur["D\xE9put\xE9"] = "D\xE9put\xE9";
155
214
  TypeAuteur["Gouvernement"] = "Gouvernement";
156
215
  TypeAuteur["Rapporteur"] = "Rapporteur";
157
- })(TypeAuteur || (TypeAuteur = {}));
216
+ })(TypeAuteur || (exports.TypeAuteur = TypeAuteur = {}));
158
217
 
159
218
  // Converts JSON strings to/from your types
160
219
  // and asserts the results of JSON.parse at runtime
161
- export class Convert {
162
- static toAmendements(json) {
163
- return cast(JSON.parse(json), r("Amendements"));
220
+ var Convert = /*#__PURE__*/function () {
221
+ function Convert() {
222
+ _classCallCheck(this, Convert);
164
223
  }
165
224
 
166
- static amendementsToJson(value) {
167
- return JSON.stringify(uncast(value, r("Amendements")), null, 2);
168
- }
169
-
170
- static toTexteLegislatif(json) {
171
- return cast(JSON.parse(json), r("TexteLegislatif"));
172
- }
173
-
174
- static texteLegislatifToJson(value) {
175
- return JSON.stringify(uncast(value, r("TexteLegislatif")), null, 2);
176
- }
225
+ _createClass(Convert, null, [{
226
+ key: "toAmendements",
227
+ value: function toAmendements(json) {
228
+ return cast(JSON.parse(json), r("Amendements"));
229
+ }
230
+ }, {
231
+ key: "amendementsToJson",
232
+ value: function amendementsToJson(value) {
233
+ return JSON.stringify(uncast(value, r("Amendements")), null, 2);
234
+ }
235
+ }, {
236
+ key: "toTexteLegislatif",
237
+ value: function toTexteLegislatif(json) {
238
+ return cast(JSON.parse(json), r("TexteLegislatif"));
239
+ }
240
+ }, {
241
+ key: "texteLegislatifToJson",
242
+ value: function texteLegislatifToJson(value) {
243
+ return JSON.stringify(uncast(value, r("TexteLegislatif")), null, 2);
244
+ }
245
+ }, {
246
+ key: "toAmendementWrapper",
247
+ value: function toAmendementWrapper(json) {
248
+ return cast(JSON.parse(json), r("AmendementWrapper"));
249
+ }
250
+ }, {
251
+ key: "amendementWrapperToJson",
252
+ value: function amendementWrapperToJson(value) {
253
+ return JSON.stringify(uncast(value, r("AmendementWrapper")), null, 2);
254
+ }
255
+ }]);
177
256
 
178
- static toAmendementWrapper(json) {
179
- return cast(JSON.parse(json), r("AmendementWrapper"));
180
- }
257
+ return Convert;
258
+ }();
181
259
 
182
- static amendementWrapperToJson(value) {
183
- return JSON.stringify(uncast(value, r("AmendementWrapper")), null, 2);
184
- }
260
+ exports.Convert = Convert;
185
261
 
186
- }
262
+ function invalidValue(typ, val) {
263
+ var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
187
264
 
188
- function invalidValue(typ, val, key = '') {
189
265
  if (key) {
190
- throw Error(`Invalid value for key "${key}". Expected type ${JSON.stringify(typ)} but got ${JSON.stringify(val)}`);
266
+ throw Error("Invalid value for key \"".concat(key, "\". Expected type ").concat(JSON.stringify(typ), " but got ").concat(JSON.stringify(val)));
191
267
  }
192
268
 
193
- throw Error(`Invalid value ${JSON.stringify(val)} for type ${JSON.stringify(typ)}`);
269
+ throw Error("Invalid value ".concat(JSON.stringify(val), " for type ").concat(JSON.stringify(typ)));
194
270
  }
195
271
 
196
272
  function jsonToJSProps(typ) {
197
273
  if (typ.jsonToJS === undefined) {
198
- const map = {};
199
- typ.props.forEach(p => map[p.json] = {
200
- key: p.js,
201
- typ: p.typ
274
+ var map = {};
275
+ typ.props.forEach(function (p) {
276
+ return map[p.json] = {
277
+ key: p.js,
278
+ typ: p.typ
279
+ };
202
280
  });
203
281
  typ.jsonToJS = map;
204
282
  }
@@ -208,10 +286,12 @@ function jsonToJSProps(typ) {
208
286
 
209
287
  function jsToJSONProps(typ) {
210
288
  if (typ.jsToJSON === undefined) {
211
- const map = {};
212
- typ.props.forEach(p => map[p.js] = {
213
- key: p.json,
214
- typ: p.typ
289
+ var map = {};
290
+ typ.props.forEach(function (p) {
291
+ return map[p.js] = {
292
+ key: p.json,
293
+ typ: p.typ
294
+ };
215
295
  });
216
296
  typ.jsToJSON = map;
217
297
  }
@@ -219,21 +299,23 @@ function jsToJSONProps(typ) {
219
299
  return typ.jsToJSON;
220
300
  }
221
301
 
222
- function transform(val, typ, getProps, key = '') {
302
+ function transform(val, typ, getProps) {
303
+ var key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
304
+
223
305
  function transformPrimitive(typ, val) {
224
- if (typeof typ === typeof val) return val;
306
+ if (_typeof(typ) === _typeof(val)) return val;
225
307
  return invalidValue(typ, val, key);
226
308
  }
227
309
 
228
310
  function transformUnion(typs, val) {
229
311
  // val must validate against one typ in typs
230
- const l = typs.length;
312
+ var l = typs.length;
231
313
 
232
- for (let i = 0; i < l; i++) {
233
- const typ = typs[i];
314
+ for (var i = 0; i < l; i++) {
315
+ var _typ = typs[i];
234
316
 
235
317
  try {
236
- return transform(val, typ, getProps);
318
+ return transform(val, _typ, getProps);
237
319
  } catch (_) {}
238
320
  }
239
321
 
@@ -248,7 +330,9 @@ function transform(val, typ, getProps, key = '') {
248
330
  function transformArray(typ, val) {
249
331
  // val must be an array with no invalid elements
250
332
  if (!Array.isArray(val)) return invalidValue("array", val);
251
- return val.map(el => transform(el, typ, getProps));
333
+ return val.map(function (el) {
334
+ return transform(el, typ, getProps);
335
+ });
252
336
  }
253
337
 
254
338
  function transformDate(val) {
@@ -256,7 +340,7 @@ function transform(val, typ, getProps, key = '') {
256
340
  return null;
257
341
  }
258
342
 
259
- const d = new Date(val);
343
+ var d = new Date(val);
260
344
 
261
345
  if (isNaN(d.valueOf())) {
262
346
  return invalidValue("Date", val);
@@ -266,17 +350,17 @@ function transform(val, typ, getProps, key = '') {
266
350
  }
267
351
 
268
352
  function transformObject(props, additional, val) {
269
- if (val === null || typeof val !== "object" || Array.isArray(val)) {
353
+ if (val === null || _typeof(val) !== "object" || Array.isArray(val)) {
270
354
  return invalidValue("object", val);
271
355
  }
272
356
 
273
- const result = {};
274
- Object.getOwnPropertyNames(props).forEach(key => {
275
- const prop = props[key];
276
- const v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;
357
+ var result = {};
358
+ Object.getOwnPropertyNames(props).forEach(function (key) {
359
+ var prop = props[key];
360
+ var v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;
277
361
  result[prop.key] = transform(v, prop.typ, getProps, prop.key);
278
362
  });
279
- Object.getOwnPropertyNames(val).forEach(key => {
363
+ Object.getOwnPropertyNames(val).forEach(function (key) {
280
364
  if (!Object.prototype.hasOwnProperty.call(props, key)) {
281
365
  result[key] = transform(val[key], additional, getProps, key);
282
366
  }
@@ -293,13 +377,13 @@ function transform(val, typ, getProps, key = '') {
293
377
 
294
378
  if (typ === false) return invalidValue(typ, val);
295
379
 
296
- while (typeof typ === "object" && typ.ref !== undefined) {
380
+ while (_typeof(typ) === "object" && typ.ref !== undefined) {
297
381
  typ = typeMap[typ.ref];
298
382
  }
299
383
 
300
384
  if (Array.isArray(typ)) return transformEnum(typ, val);
301
385
 
302
- if (typeof typ === "object") {
386
+ if (_typeof(typ) === "object") {
303
387
  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);
304
388
  } // Numbers can be parsed by Date but shouldn't be.
305
389
 
@@ -322,7 +406,11 @@ function a(typ) {
322
406
  };
323
407
  }
324
408
 
325
- function u(...typs) {
409
+ function u() {
410
+ for (var _len = arguments.length, typs = new Array(_len), _key = 0; _key < _len; _key++) {
411
+ typs[_key] = arguments[_key];
412
+ }
413
+
326
414
  return {
327
415
  unionMembers: typs
328
416
  };
@@ -330,8 +418,8 @@ function u(...typs) {
330
418
 
331
419
  function o(props, additional) {
332
420
  return {
333
- props,
334
- additional
421
+ props: props,
422
+ additional: additional
335
423
  };
336
424
  } // function m(additional: any) {
337
425
  // return { props: [], additional };
@@ -344,7 +432,7 @@ function r(name) {
344
432
  };
345
433
  }
346
434
 
347
- const typeMap = {
435
+ var typeMap = {
348
436
  "Amendements": o([{
349
437
  json: "textesLegislatifs",
350
438
  js: "textesLegislatifs",
@@ -1037,4 +1125,4 @@ const typeMap = {
1037
1125
  "TypeMIMEType": ["application"],
1038
1126
  "TypeAuteur": ["Député", "Gouvernement", "Rapporteur"]
1039
1127
  };
1040
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsIkFjdGlvbiIsIkNvZGUiLCJMaWJlbGxlIiwiU29ydEVudW0iLCJUeXBlUG9zaXRpb24iLCJBdmFudEFBcHJlcyIsIkRpdmlzaW9uVHlwZSIsIkNvZGVFdGF0IiwiTm9tIiwiVHlwZU1JTUVUeXBlIiwiVHlwZUF1dGV1ciIsIkNvbnZlcnQiLCJ0b0FtZW5kZW1lbnRzIiwianNvbiIsImNhc3QiLCJKU09OIiwicGFyc2UiLCJyIiwiYW1lbmRlbWVudHNUb0pzb24iLCJ2YWx1ZSIsInN0cmluZ2lmeSIsInVuY2FzdCIsInRvVGV4dGVMZWdpc2xhdGlmIiwidGV4dGVMZWdpc2xhdGlmVG9Kc29uIiwidG9BbWVuZGVtZW50V3JhcHBlciIsImFtZW5kZW1lbnRXcmFwcGVyVG9Kc29uIiwiaW52YWxpZFZhbHVlIiwidHlwIiwidmFsIiwia2V5IiwiRXJyb3IiLCJqc29uVG9KU1Byb3BzIiwianNvblRvSlMiLCJ1bmRlZmluZWQiLCJtYXAiLCJwcm9wcyIsImZvckVhY2giLCJwIiwianMiLCJqc1RvSlNPTlByb3BzIiwianNUb0pTT04iLCJ0cmFuc2Zvcm0iLCJnZXRQcm9wcyIsInRyYW5zZm9ybVByaW1pdGl2ZSIsInRyYW5zZm9ybVVuaW9uIiwidHlwcyIsImwiLCJsZW5ndGgiLCJpIiwiXyIsInRyYW5zZm9ybUVudW0iLCJjYXNlcyIsImluZGV4T2YiLCJ0cmFuc2Zvcm1BcnJheSIsIkFycmF5IiwiaXNBcnJheSIsImVsIiwidHJhbnNmb3JtRGF0ZSIsImQiLCJEYXRlIiwiaXNOYU4iLCJ2YWx1ZU9mIiwidHJhbnNmb3JtT2JqZWN0IiwiYWRkaXRpb25hbCIsInJlc3VsdCIsIk9iamVjdCIsImdldE93blByb3BlcnR5TmFtZXMiLCJwcm9wIiwidiIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInJlZiIsInR5cGVNYXAiLCJ1bmlvbk1lbWJlcnMiLCJhcnJheUl0ZW1zIiwiYSIsInUiLCJvIiwibmFtZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yYXdfdHlwZXMvYW1lbmRlbWVudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVG8gcGFyc2UgdGhpcyBkYXRhOlxuLy9cbi8vICAgaW1wb3J0IHsgQW1lbmRlbWVudHMsIEFtZW5kZW1lbnRXcmFwcGVyLCBDb252ZXJ0LCBUZXh0ZUxlZ2lzbGF0aWYgfSBmcm9tIFwiLi9maWxlXCI7XG4vL1xuLy8gICBjb25zdCBhbWVuZGVtZW50cyA9IENvbnZlcnQudG9BbWVuZGVtZW50cyhqc29uKTtcbi8vICAgY29uc3QgYW1lbmRlbWVudFdyYXBwZXIgPSBDb252ZXJ0LnRvQW1lbmRlbWVudFdyYXBwZXIoanNvbik7XG4vLyAgIGNvbnN0IHRleHRlTGVnaXNsYXRpZiA9IENvbnZlcnQudG9UZXh0ZUxlZ2lzbGF0aWYoanNvbik7XG4vL1xuLy8gVGhlc2UgZnVuY3Rpb25zIHdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIEpTT04gZG9lc24ndFxuLy8gbWF0Y2ggdGhlIGV4cGVjdGVkIGludGVyZmFjZSwgZXZlbiBpZiB0aGUgSlNPTiBpcyB2YWxpZC5cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50cyB7XG4gIHRleHRlc0xlZ2lzbGF0aWZzOiBUZXh0ZUxlZ2lzbGF0aWZbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRlTGVnaXNsYXRpZiB7XG4gICAgXCJAeG1sbnM6eHNpXCI6ICAgICAgIHN0cmluZztcbiAgICByZWZUZXh0ZUxlZ2lzbGF0aWY6IHN0cmluZztcbiAgICBhbWVuZGVtZW50czogICAgICAgIEFtZW5kZW1lbnRzQ2xhc3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudHNDbGFzcyB7XG4gICAgYW1lbmRlbWVudDogQW1lbmRlbWVudFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRXcmFwcGVyIHtcbiAgYW1lbmRlbWVudDogQW1lbmRlbWVudFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnQge1xuICAgIFwiQHhtbG5zXCI6ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB1aWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGNocm9ub3RhZzogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgbGVnaXNsYXR1cmU6ICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBpZGVudGlmaWNhdGlvbjogICAgICAgICAgICAgICAgICAgSWRlbnRpZmljYXRpb247XG4gICAgZXhhbWVuUmVmOiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0ZXh0ZUxlZ2lzbGF0aWZSZWY6ICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIHRyaUFtZW5kZW1lbnQ6ICAgICAgICAgICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgY2FyZGluYWxpdGVBbWR0TXVsdGlwbGVzOiAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhbWVuZGVtZW50UGFyZW50UmVmOiAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIHNpZ25hdGFpcmVzOiAgICAgICAgICAgICAgICAgICAgICBTaWduYXRhaXJlcztcbiAgICBwb2ludGV1ckZyYWdtZW50VGV4dGU6ICAgICAgICAgICAgUG9pbnRldXJGcmFnbWVudFRleHRlO1xuICAgIGNvcnBzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb3JwcztcbiAgICBjeWNsZURlVmllOiAgICAgICAgICAgICAgICAgICAgICAgQ3ljbGVEZVZpZTtcbiAgICByZXByZXNlbnRhdGlvbnM6ICAgICAgICAgICAgICAgICAgUmVwcmVzZW50YXRpb25zIHwgbnVsbDtcbiAgICBzZWFuY2VEaXNjdXNzaW9uUmVmOiAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGFydGljbGU5OTogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgbG9pUmVmZXJlbmNlOiAgICAgICAgICAgICAgICAgICAgIExvaVJlZmVyZW5jZTtcbiAgICBkaXNjdXNzaW9uQ29tbXVuZTogICAgICAgICAgICAgICAgRGlzY3Vzc2lvbjtcbiAgICBkaXNjdXNzaW9uSWRlbnRpcXVlOiAgICAgICAgICAgICAgRGlzY3Vzc2lvbjtcbiAgICBhY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaTogQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWk7XG59XG5cbmV4cG9ydCBlbnVtIEFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpIHtcbiAgICBBY2NvcmQgPSBcIkFjY29yZFwiLFxuICAgIFNhbnNPYmpldCA9IFwiU2FucyBvYmpldFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB7XG4gICAgXCJAeG1sbnM6eHNpXCI6IHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI6ICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvcnBzIHtcbiAgICBjYXJ0b3VjaGVJbmZvcm1hdGlmPzogQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGNvbnRlbnVBdXRldXI/OiAgICAgICBDb250ZW51QXV0ZXVyO1xuICAgIFwiQHhtbG5zOnhzaVwiPzogICAgICAgIHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudUF1dGV1ciB7XG4gICAgZGlzcG9zaXRpZj86ICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGF2YW50QXBwZWw/OiAgICAgICAgICAgICAgIEF2YW50QXBwZWw7XG4gICAgZXhwb3NlU29tbWFpcmU/OiAgICAgICAgICAgc3RyaW5nO1xuICAgIGFubmV4ZUV4cG9zZVNvbW1haXJlPzogICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcztcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgICAgICAgICAgIHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBkaXNwb3NpdGlmQW1kdENyZWRpdFBMRj86ICBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRjtcbiAgICBkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlI/OiBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXZhbnRBcHBlbCB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG4gICAgZGlzcG9zaXRpZj86ICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGIHtcbiAgICBsaXN0ZVByb2dyYW1tZXM/OiBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRkxpc3RlUHJvZ3JhbW1lcztcbiAgICBzb2xkZUFFPzogICAgICAgICBzdHJpbmc7XG4gICAgc29sZGVDUD86ICAgICAgICAgc3RyaW5nO1xuICAgIGNwRWdhbEFlOiAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRkxpc3RlUHJvZ3JhbW1lcyB7XG4gICAgcHJvZ3JhbW1lOiBQdXJwbGVQcm9ncmFtbWVbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJwbGVQcm9ncmFtbWUge1xuICAgIGxpYmVsbGU6ICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBwcm9ncmFtbWVSZWY6ICAgICAgICAgICBzdHJpbmc7XG4gICAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudDogc3RyaW5nO1xuICAgIGNyZWRpdFBhaWVtZW50OiAgICAgICAgIHN0cmluZztcbiAgICBhY3Rpb246ICAgICAgICAgICAgICAgICBBY3Rpb247XG4gICAgbGlnbmVzQ3JlZGl0czogICAgICAgICAgUHVycGxlTGlnbmVzQ3JlZGl0cztcbn1cblxuZXhwb3J0IGVudW0gQWN0aW9uIHtcbiAgICBDcsOpYXRpb24gPSBcImNyw6lhdGlvblwiLFxuICAgIE1vZGlmaWNhdGlvbiA9IFwibW9kaWZpY2F0aW9uXCIsXG4gICAgU3VwcHJlc3Npb24gPSBcInN1cHByZXNzaW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVycGxlTGlnbmVzQ3JlZGl0cyB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG4gICAgbGlnbmVDcmVkaXQ/OiAgTGlnbmVDcmVkaXRDbGFzc1tdIHwgTGlnbmVDcmVkaXRDbGFzcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaWduZUNyZWRpdENsYXNzIHtcbiAgICBpZDogICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgbGliZWxsZTogICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnQ6IHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudDogICAgICAgICBzdHJpbmc7XG4gICAgYWN0aW9uOiAgICAgICAgICAgICAgICAgQWN0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUiB7XG4gICAgbGlzdGVQcm9ncmFtbWVzPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSTGlzdGVQcm9ncmFtbWVzO1xuICAgIHRvdGFsQUU/OiAgICAgICAgIFRvdGFsO1xuICAgIHRvdGFsQ1A/OiAgICAgICAgIFRvdGFsO1xuICAgIGNwRWdhbEFlOiAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJMaXN0ZVByb2dyYW1tZXMge1xuICAgIHByb2dyYW1tZTogTGlnbmVDcmVkaXRFbGVtZW50W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRMaWduZXNDcmVkaXRzIHtcbiAgICBcIkB4bWxuczp4c2lcIj86IHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgIHN0cmluZztcbiAgICBsaWduZUNyZWRpdD86ICBMaWduZUNyZWRpdEVsZW1lbnRbXSB8IExpZ25lQ3JlZGl0RWxlbWVudDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaWduZUNyZWRpdEVsZW1lbnQge1xuICAgIGxpYmVsbGU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIHByb2dyYW1tZVJlZj86ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZTogc3RyaW5nO1xuICAgIGNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmU6ICAgICAgICAgc3RyaW5nO1xuICAgIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGU6ICAgICAgICAgc3RyaW5nO1xuICAgIGNyZWRpdFBhaWVtZW50QW5udWxlOiAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGFjdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWN0aW9uO1xuICAgIGxpZ25lc0NyZWRpdHM/OiAgICAgICAgICAgICAgICAgICAgICAgTGlnbmVDcmVkaXRMaWduZXNDcmVkaXRzO1xuICAgIGlkPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRvdGFsIHtcbiAgICBzdXBwbGVtZW50YWlyZTogc3RyaW5nO1xuICAgIGFubnVsZTogICAgICAgICBzdHJpbmc7XG4gICAgc29sZGU6ICAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDeWNsZURlVmllIHtcbiAgICBkYXRlRGVwb3Q6ICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IERhdGU7XG4gICAgZGF0ZVB1YmxpY2F0aW9uOiAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBEYXRlO1xuICAgIHNvdW1pc0FydGljbGU0MDogICAgc3RyaW5nO1xuICAgIGV0YXREZXNUcmFpdGVtZW50czogRXRhdERFU1RyYWl0ZW1lbnRzO1xuICAgIGRhdGVTb3J0OiAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgRGF0ZTtcbiAgICBzb3J0OiAgICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IFNvcnRFbnVtO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV0YXRERVNUcmFpdGVtZW50cyB7XG4gICAgZXRhdDogICAgIEV0YXQ7XG4gICAgc291c0V0YXQ6IFNvdXNFdGF0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV0YXQge1xuICAgIGNvZGU6ICAgIENvZGU7XG4gICAgbGliZWxsZTogTGliZWxsZTtcbn1cblxuZXhwb3J0IGVudW0gQ29kZSB7XG4gICAgQUMgPSBcIkFDXCIsXG4gICAgQXQgPSBcIkFUXCIsXG4gICAgRGkgPSBcIkRJXCIsXG4gICAgRWZmYWPDqSA9IFwiZWZmYWPDqVwiLFxuICAgIEVyID0gXCJFUlwiLFxuICAgIElSID0gXCJJUlwiLFxuICAgIElycjEyNyA9IFwiSVJSMTI3XCIsXG4gICAgSXJyMjAgPSBcIklSUjIwXCIsXG4gICAgSXJyMzcgPSBcIklSUjM3XCIsXG4gICAgSXJyMzggPSBcIklSUjM4XCIsXG4gICAgSXJyNDEgPSBcIklSUjQxXCIsXG4gICAgSXJyNDIgPSBcIklSUjQyXCIsXG4gICAgSXJyNDUgPSBcIklSUjQ1XCIsXG4gICAgSXJyNDggPSBcIklSUjQ4XCIsXG4gICAgSXJyNTMgPSBcIklSUjUzXCIsXG4gICAgSXJyYWkgPSBcIklSUkFJXCIsXG4gICAgSXJyZCA9IFwiSVJSRFwiLFxuICAgIElycmhkID0gXCJJUlJIRFwiLFxuICAgIElycnNhID0gXCJJUlJTQVwiLFxuICAgIFIgPSBcIlJcIixcbiAgICBSdCA9IFwiUlRcIixcbiAgICBUID0gXCJUXCIsXG59XG5cbmV4cG9ydCBlbnVtIExpYmVsbGUge1xuICAgIEFEaXNjdXRlciA9IFwiQSBkaXNjdXRlclwiLFxuICAgIEFEw6lwb3NlciA9IFwiQSBkw6lwb3NlclwiLFxuICAgIERpc2N1dMOpID0gXCJEaXNjdXTDqVwiLFxuICAgIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgICBFblJlY2V2YWJpbGl0w6kgPSBcIkVuIHJlY2V2YWJpbGl0w6lcIixcbiAgICBFblRyYWl0ZW1lbnQgPSBcIkVuIHRyYWl0ZW1lbnRcIixcbiAgICBJcnJlY2V2YWJsZSA9IFwiSXJyZWNldmFibGVcIixcbiAgICBJcnJlY2V2YWJsZTQwID0gXCJJcnJlY2V2YWJsZSA0MFwiLFxuICAgIFJldGlyw6kgPSBcIlJldGlyw6lcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTb3VzRXRhdCB7XG4gICAgY29kZT86ICAgICAgICAgQ29kZTtcbiAgICBsaWJlbGxlPzogICAgICBTb3J0RW51bTtcbiAgICBcIkB4bWxuczp4c2lcIj86IHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gU29ydEVudW0ge1xuICAgIEFkb3B0w6kgPSBcIkFkb3B0w6lcIixcbiAgICBBdXRyZUlycmVjZXZhYmlsaXTDqSA9IFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgQXV0cmVzSXJyTE9MRiA9IFwiQXV0cmVzIGlyciBMT0xGXCIsXG4gICAgQXV0cmVzSXJyTE9MRlNTID0gXCJBdXRyZXMgaXJyIExPTEZTU1wiLFxuICAgIENhdmFsaWVyNDUgPSBcIkNhdmFsaWVyICg0NSlcIixcbiAgICBDYXZhbGllckJ1ZGfDqXRhaXJlID0gXCJDYXZhbGllciBidWRnw6l0YWlyZVwiLFxuICAgIENhdmFsaWVyU29jaWFsID0gXCJDYXZhbGllciBzb2NpYWxcIixcbiAgICBDaGFtcERlTEhhYmlsaXRhdGlvbjM4ID0gXCJDaGFtcCBkZSBsJ2hhYmlsaXRhdGlvbiAoMzgpXCIsXG4gICAgQ2hhcmdlID0gXCJDaGFyZ2VcIixcbiAgICBDbXA0NSA9IFwiQ01QICg0NSlcIixcbiAgICBDcsOpZGl0cyA9IFwiQ3LDqWRpdHNcIixcbiAgICBEaXNwb3NpdGlvblLDqWdsZW1lbnRhaXJlMzcgPSBcIkRpc3Bvc2l0aW9uIHLDqWdsZW1lbnRhaXJlICgzNylcIixcbiAgICBEb21haW5lRGVMYUxvaTQxID0gXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gICAgRG9tYWluZUxvaU9yZ2FuaXF1ZTEyNyA9IFwiRG9tYWluZSBsb2kgb3JnYW5pcXVlICgxMjcpXCIsXG4gICAgRG91YmxvbiA9IFwiRG91YmxvblwiLFxuICAgIEVudG9ubm9pcjQ1ID0gXCJFbnRvbm5vaXIgKDQ1KVwiLFxuICAgIEdhZ2UgPSBcIkdhZ2VcIixcbiAgICBIb3JzRMOpbGFpcyA9IFwiSG9ycy1kw6lsYWlzXCIsXG4gICAgSW5qb25jdGlvbjIwID0gXCJJbmpvbmN0aW9uICgyMClcIixcbiAgICBJcnJFblByZW1pw6hyZVBhcnRpZSA9IFwiSXJyIGVuIHByZW1pw6hyZSBwYXJ0aWVcIixcbiAgICBJcnJFblNlY29uZGVQYXJ0aWUgPSBcIklyciBlbiBzZWNvbmRlIHBhcnRpZVwiLFxuICAgIExvbGYgPSBcIkxPTEZcIixcbiAgICBMb2xmc3MgPSBcIkxPTEZTU1wiLFxuICAgIE5vblNvdXRlbnUgPSBcIk5vbiBzb3V0ZW51XCIsXG4gICAgT3JkcmVEdUpvdXI0OCA9IFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gICAgUiA9IFwiUlwiLFxuICAgIFJhdGlmaWNhdGlvblRyYWl0w6k1MyA9IFwiUmF0aWZpY2F0aW9uIHRyYWl0w6kgKDUzKVwiLFxuICAgIFJlamV0w6kgPSBcIlJlamV0w6lcIixcbiAgICBSZXRpcsOpID0gXCJSZXRpcsOpXCIsXG4gICAgUmV0aXLDqUFwcsOoc1B1YmxpY2F0aW9uID0gXCJSZXRpcsOpIGFwcsOocyBwdWJsaWNhdGlvblwiLFxuICAgIFJldGlyw6lBdmFudFB1YmxpY2F0aW9uID0gXCJSZXRpcsOpIGF2YW50IHB1YmxpY2F0aW9uXCIsXG4gICAgU2F0aXNmYWl0T3VJbm9ww6lyYW50NDIgPSBcIlNhdGlzZmFpdCBvdSBpbm9ww6lyYW50ICg0MilcIixcbiAgICBTb3VzQW1lbmRlbWVudDk4ID0gXCJTb3VzLWFtZW5kZW1lbnQgKDk4KVwiLFxuICAgIFRvbWLDqSA9IFwiVG9tYsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzY3Vzc2lvbiB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG4gICAgaWREaXNjdXNzaW9uPzogc3RyaW5nO1xuICAgIHR5cGVQb3NpdGlvbj86IFR5cGVQb3NpdGlvbjtcbn1cblxuZXhwb3J0IGVudW0gVHlwZVBvc2l0aW9uIHtcbiAgICBEZXJuaWVyID0gXCJEZXJuaWVyXCIsXG4gICAgTWlsaWV1ID0gXCJNaWxpZXVcIixcbiAgICBQcmVtaWVyID0gXCJQcmVtaWVyXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpZmljYXRpb24ge1xuICAgIG51bWVyb0xvbmc6ICAgICAgICAgIHN0cmluZztcbiAgICBudW1lcm9PcmRyZURlcG90OiAgICBzdHJpbmc7XG4gICAgcHJlZml4ZU9yZ2FuZUV4YW1lbjogc3RyaW5nO1xuICAgIG51bWVyb1JlY3Q6ICAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2lSZWZlcmVuY2Uge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogICAgc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgICAgc3RyaW5nO1xuICAgIGNvZGVMb2k/OiAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IG51bGwgfCBzdHJpbmc7XG4gICAgZGl2aXNpb25Db2RlTG9pPzogQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgbnVsbCB8IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2ludGV1ckZyYWdtZW50VGV4dGUge1xuICAgIHBhcnRpZUFtZW5kYWJsZVJlZjogIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcztcbiAgICBkaXZpc2lvbj86ICAgICAgICAgICBEaXZpc2lvbjtcbiAgICBhbWVuZGVtZW50U3RhbmRhcmQ/OiBBbWVuZGVtZW50U3RhbmRhcmQ7XG4gICAgbWlzc2lvblZpc2VlPzogICAgICAgTWlzc2lvblZpc2VlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRTdGFuZGFyZCB7XG4gICAgYWxpbmVhOiBBbGluZWE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWxpbmVhIHtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgICAgc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgICAgICBzdHJpbmc7XG4gICAgYXZhbnRfQV9BcHJlcz86ICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBudWxsIHwgc3RyaW5nO1xuICAgIG51bWVybz86ICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGFsaW5lYURlc2lnbmF0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpdmlzaW9uIHtcbiAgICB0aXRyZTogICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhcnRpY2xlRGVzaWduYXRpb25Db3VydGU6IG51bGwgfCBzdHJpbmc7XG4gICAgYXJ0aWNsZURlc2lnbmF0aW9uOiAgICAgICBudWxsIHwgc3RyaW5nO1xuICAgIHR5cGU6ICAgICAgICAgICAgICAgICAgICAgRGl2aXNpb25UeXBlO1xuICAgIGF2YW50X0FfQXByZXM6ICAgICAgICAgICAgQXZhbnRBQXByZXM7XG4gICAgZGl2aXNpb25SYXR0YWNoZWU6ICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYXJ0aWNsZUFkZGl0aW9ubmVsOiAgICAgICBzdHJpbmc7XG4gICAgY2hhcGl0cmVBZGRpdGlvbm5lbDogICAgICBzdHJpbmc7XG4gICAgdXJsRGl2aXNpb25UZXh0ZVZpc2U6ICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIEF2YW50QUFwcmVzIHtcbiAgICBBID0gXCJBXCIsXG4gICAgQXByw6hzID0gXCJBcHLDqHNcIixcbiAgICBBdmFudCA9IFwiQXZhbnRcIixcbn1cblxuZXhwb3J0IGVudW0gRGl2aXNpb25UeXBlIHtcbiAgICBBbm5leGUgPSBcIkFOTkVYRVwiLFxuICAgIEFydGljbGUgPSBcIkFSVElDTEVcIixcbiAgICBDaGFwaXRyZSA9IFwiQ0hBUElUUkVcIixcbiAgICBUaXRyZSA9IFwiVElUUkVcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNaXNzaW9uVmlzZWUge1xuICAgIGNvZGVFdGF0OiAgICAgICAgICBDb2RlRXRhdDtcbiAgICBjb2RlTWlzc2lvbk1pbmVmaTogc3RyaW5nO1xuICAgIGxpYmVsbGVNaXNzaW9uOiAgICBzdHJpbmc7XG4gICAgbWlzc2lvblJlZjogICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gQ29kZUV0YXQge1xuICAgIEIgPSBcIkJcIixcbiAgICBDID0gXCJDXCIsXG4gICAgRCA9IFwiRFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcHJlc2VudGF0aW9ucyB7XG4gICAgcmVwcmVzZW50YXRpb246IFJlcHJlc2VudGF0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcHJlc2VudGF0aW9uIHtcbiAgICBub206ICAgICAgICAgICAgICAgICAgICAgTm9tO1xuICAgIHR5cGVNaW1lOiAgICAgICAgICAgICAgICBUeXBlTUlNRTtcbiAgICBzdGF0dXRSZXByZXNlbnRhdGlvbjogICAgU3RhdHV0UmVwcmVzZW50YXRpb247XG4gICAgcmVwU291cmNlOiAgICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcztcbiAgICBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzO1xuICAgIGNvbnRlbnU6ICAgICAgICAgICAgICAgICBDb250ZW51O1xuICAgIGRhdGVEaXNwb1JlcHJlc2VudGF0aW9uOiBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudSB7XG4gICAgZG9jdW1lbnRVUkk6IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gTm9tIHtcbiAgICBQREYgPSBcIlBERlwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXR1dFJlcHJlc2VudGF0aW9uIHtcbiAgICB2ZXJiYXRpbTogICAgICAgc3RyaW5nO1xuICAgIGNhbm9uaXF1ZTogICAgICBzdHJpbmc7XG4gICAgb2ZmaWNpZWxsZTogICAgIHN0cmluZztcbiAgICB0cmFuc2NyaXB0aW9uOiAgc3RyaW5nO1xuICAgIGVucmVnaXN0cmVtZW50OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZU1JTUUge1xuICAgIHR5cGU6ICAgIFR5cGVNSU1FVHlwZTtcbiAgICBzdWJUeXBlOiBOb207XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVNSU1FVHlwZSB7XG4gICAgQXBwbGljYXRpb24gPSBcImFwcGxpY2F0aW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0YWlyZXMge1xuICAgIGF1dGV1cjogICAgICAgIEF1dGV1cjtcbiAgICBjb3NpZ25hdGFpcmVzOiBDb3NpZ25hdGFpcmVzO1xuICAgIHN1ZmZpeGU6ICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBsaWJlbGxlOiAgICAgICBudWxsIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGV1ciB7XG4gICAgdHlwZUF1dGV1cjogICAgICAgICAgICAgICAgVHlwZUF1dGV1cjtcbiAgICBnb3V2ZXJuZW1lbnRSZWY6ICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYWN0ZXVyUmVmOiAgICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGdyb3VwZVBvbGl0aXF1ZVJlZjogICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhdXRldXJSYXBwb3J0ZXVyT3JnYW5lUmVmOiBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVBdXRldXIge1xuICAgIETDqXB1dMOpID0gXCJEw6lwdXTDqVwiLFxuICAgIEdvdXZlcm5lbWVudCA9IFwiR291dmVybmVtZW50XCIsXG4gICAgUmFwcG9ydGV1ciA9IFwiUmFwcG9ydGV1clwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvc2lnbmF0YWlyZXMge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGFjdGV1clJlZj86ICAgIHN0cmluZ1tdIHwgc3RyaW5nO1xufVxuXG4vLyBDb252ZXJ0cyBKU09OIHN0cmluZ3MgdG8vZnJvbSB5b3VyIHR5cGVzXG4vLyBhbmQgYXNzZXJ0cyB0aGUgcmVzdWx0cyBvZiBKU09OLnBhcnNlIGF0IHJ1bnRpbWVcbmV4cG9ydCBjbGFzcyBDb252ZXJ0IHtcbiAgICBwdWJsaWMgc3RhdGljIHRvQW1lbmRlbWVudHMoanNvbjogc3RyaW5nKTogQW1lbmRlbWVudHMge1xuICAgICAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiQW1lbmRlbWVudHNcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYW1lbmRlbWVudHNUb0pzb24odmFsdWU6IEFtZW5kZW1lbnRzKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIkFtZW5kZW1lbnRzXCIpKSwgbnVsbCwgMik7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyB0b1RleHRlTGVnaXNsYXRpZihqc29uOiBzdHJpbmcpOiBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgICAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiVGV4dGVMZWdpc2xhdGlmXCIpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRleHRlTGVnaXNsYXRpZlRvSnNvbih2YWx1ZTogVGV4dGVMZWdpc2xhdGlmKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIlRleHRlTGVnaXNsYXRpZlwiKSksIG51bGwsIDIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgdG9BbWVuZGVtZW50V3JhcHBlcihqc29uOiBzdHJpbmcpOiBBbWVuZGVtZW50V3JhcHBlciB7XG4gICAgICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50V3JhcHBlclwiKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBhbWVuZGVtZW50V3JhcHBlclRvSnNvbih2YWx1ZTogQW1lbmRlbWVudFdyYXBwZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudFdyYXBwZXJcIikpLCBudWxsLCAyKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGludmFsaWRWYWx1ZSh0eXA6IGFueSwgdmFsOiBhbnksIGtleTogYW55ID0gJycpOiBuZXZlciB7XG4gICAgaWYgKGtleSkge1xuICAgICAgICB0aHJvdyBFcnJvcihgSW52YWxpZCB2YWx1ZSBmb3Iga2V5IFwiJHtrZXl9XCIuIEV4cGVjdGVkIHR5cGUgJHtKU09OLnN0cmluZ2lmeSh0eXApfSBidXQgZ290ICR7SlNPTi5zdHJpbmdpZnkodmFsKX1gKTtcbiAgICB9XG4gICAgdGhyb3cgRXJyb3IoYEludmFsaWQgdmFsdWUgJHtKU09OLnN0cmluZ2lmeSh2YWwpfSBmb3IgdHlwZSAke0pTT04uc3RyaW5naWZ5KHR5cCl9YCwgKTtcbn1cblxuZnVuY3Rpb24ganNvblRvSlNQcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gICAgaWYgKHR5cC5qc29uVG9KUyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IG1hcDogYW55ID0ge307XG4gICAgICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IG1hcFtwLmpzb25dID0geyBrZXk6IHAuanMsIHR5cDogcC50eXAgfSk7XG4gICAgICAgIHR5cC5qc29uVG9KUyA9IG1hcDtcbiAgICB9XG4gICAgcmV0dXJuIHR5cC5qc29uVG9KUztcbn1cblxuZnVuY3Rpb24ganNUb0pTT05Qcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gICAgaWYgKHR5cC5qc1RvSlNPTiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IG1hcDogYW55ID0ge307XG4gICAgICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IG1hcFtwLmpzXSA9IHsga2V5OiBwLmpzb24sIHR5cDogcC50eXAgfSk7XG4gICAgICAgIHR5cC5qc1RvSlNPTiA9IG1hcDtcbiAgICB9XG4gICAgcmV0dXJuIHR5cC5qc1RvSlNPTjtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtKHZhbDogYW55LCB0eXA6IGFueSwgZ2V0UHJvcHM6IGFueSwga2V5OiBhbnkgPSAnJyk6IGFueSB7XG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtUHJpbWl0aXZlKHR5cDogc3RyaW5nLCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh0eXBlb2YgdHlwID09PSB0eXBlb2YgdmFsKSByZXR1cm4gdmFsO1xuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXkpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybVVuaW9uKHR5cHM6IGFueVtdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIC8vIHZhbCBtdXN0IHZhbGlkYXRlIGFnYWluc3Qgb25lIHR5cCBpbiB0eXBzXG4gICAgICAgIGNvbnN0IGwgPSB0eXBzLmxlbmd0aDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHR5cCA9IHR5cHNbaV07XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGdldFByb3BzKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKF8pIHt9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXBzLCB2YWwpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybUVudW0oY2FzZXM6IHN0cmluZ1tdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmIChjYXNlcy5pbmRleE9mKHZhbCkgIT09IC0xKSByZXR1cm4gdmFsO1xuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKGNhc2VzLCB2YWwpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybUFycmF5KHR5cDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIC8vIHZhbCBtdXN0IGJlIGFuIGFycmF5IHdpdGggbm8gaW52YWxpZCBlbGVtZW50c1xuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsKSkgcmV0dXJuIGludmFsaWRWYWx1ZShcImFycmF5XCIsIHZhbCk7XG4gICAgICAgIHJldHVybiB2YWwubWFwKGVsID0+IHRyYW5zZm9ybShlbCwgdHlwLCBnZXRQcm9wcykpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybURhdGUodmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkID0gbmV3IERhdGUodmFsKTtcbiAgICAgICAgaWYgKGlzTmFOKGQudmFsdWVPZigpKSkge1xuICAgICAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShcIkRhdGVcIiwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZDtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1PYmplY3QocHJvcHM6IHsgW2s6IHN0cmluZ106IGFueSB9LCBhZGRpdGlvbmFsOiBhbnksIHZhbDogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHZhbCA9PT0gbnVsbCB8fCB0eXBlb2YgdmFsICE9PSBcIm9iamVjdFwiIHx8IEFycmF5LmlzQXJyYXkodmFsKSkge1xuICAgICAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShcIm9iamVjdFwiLCB2YWwpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJlc3VsdDogYW55ID0ge307XG4gICAgICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHByb3BzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwcm9wID0gcHJvcHNba2V5XTtcbiAgICAgICAgICAgIGNvbnN0IHYgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCBrZXkpID8gdmFsW2tleV0gOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICByZXN1bHRbcHJvcC5rZXldID0gdHJhbnNmb3JtKHYsIHByb3AudHlwLCBnZXRQcm9wcywgcHJvcC5rZXkpO1xuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcywga2V5KSkge1xuICAgICAgICAgICAgICAgIHJlc3VsdFtrZXldID0gdHJhbnNmb3JtKHZhbFtrZXldLCBhZGRpdGlvbmFsLCBnZXRQcm9wcywga2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgaWYgKHR5cCA9PT0gXCJhbnlcIikgcmV0dXJuIHZhbDtcbiAgICBpZiAodHlwID09PSBudWxsKSB7XG4gICAgICAgIGlmICh2YWwgPT09IG51bGwpIHJldHVybiB2YWw7XG4gICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpO1xuICAgIH1cbiAgICBpZiAodHlwID09PSBmYWxzZSkgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCk7XG4gICAgd2hpbGUgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLnJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHR5cCA9IHR5cGVNYXBbdHlwLnJlZl07XG4gICAgfVxuICAgIGlmIChBcnJheS5pc0FycmF5KHR5cCkpIHJldHVybiB0cmFuc2Zvcm1FbnVtKHR5cCwgdmFsKTtcbiAgICBpZiAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIikge1xuICAgICAgICByZXR1cm4gdHlwLmhhc093blByb3BlcnR5KFwidW5pb25NZW1iZXJzXCIpID8gdHJhbnNmb3JtVW5pb24odHlwLnVuaW9uTWVtYmVycywgdmFsKVxuICAgICAgICAgICAgOiB0eXAuaGFzT3duUHJvcGVydHkoXCJhcnJheUl0ZW1zXCIpICAgID8gdHJhbnNmb3JtQXJyYXkodHlwLmFycmF5SXRlbXMsIHZhbClcbiAgICAgICAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwicHJvcHNcIikgICAgICAgICA/IHRyYW5zZm9ybU9iamVjdChnZXRQcm9wcyh0eXApLCB0eXAuYWRkaXRpb25hbCwgdmFsKVxuICAgICAgICAgICAgOiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpO1xuICAgIH1cbiAgICAvLyBOdW1iZXJzIGNhbiBiZSBwYXJzZWQgYnkgRGF0ZSBidXQgc2hvdWxkbid0IGJlLlxuICAgIGlmICh0eXAgPT09IERhdGUgJiYgdHlwZW9mIHZhbCAhPT0gXCJudW1iZXJcIikgcmV0dXJuIHRyYW5zZm9ybURhdGUodmFsKTtcbiAgICByZXR1cm4gdHJhbnNmb3JtUHJpbWl0aXZlKHR5cCwgdmFsKTtcbn1cblxuZnVuY3Rpb24gY2FzdDxUPih2YWw6IGFueSwgdHlwOiBhbnkpOiBUIHtcbiAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc29uVG9KU1Byb3BzKTtcbn1cblxuZnVuY3Rpb24gdW5jYXN0PFQ+KHZhbDogVCwgdHlwOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzVG9KU09OUHJvcHMpO1xufVxuXG5mdW5jdGlvbiBhKHR5cDogYW55KSB7XG4gICAgcmV0dXJuIHsgYXJyYXlJdGVtczogdHlwIH07XG59XG5cbmZ1bmN0aW9uIHUoLi4udHlwczogYW55W10pIHtcbiAgICByZXR1cm4geyB1bmlvbk1lbWJlcnM6IHR5cHMgfTtcbn1cblxuZnVuY3Rpb24gbyhwcm9wczogYW55W10sIGFkZGl0aW9uYWw6IGFueSkge1xuICAgIHJldHVybiB7IHByb3BzLCBhZGRpdGlvbmFsIH07XG59XG5cbi8vIGZ1bmN0aW9uIG0oYWRkaXRpb25hbDogYW55KSB7XG4vLyAgICAgcmV0dXJuIHsgcHJvcHM6IFtdLCBhZGRpdGlvbmFsIH07XG4vLyB9XG5cbmZ1bmN0aW9uIHIobmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHsgcmVmOiBuYW1lIH07XG59XG5cbmNvbnN0IHR5cGVNYXA6IGFueSA9IHtcbiAgICBcIkFtZW5kZW1lbnRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidGV4dGVzTGVnaXNsYXRpZnNcIiwganM6IFwidGV4dGVzTGVnaXNsYXRpZnNcIiwgdHlwOiBhKHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiVGV4dGVMZWdpc2xhdGlmXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwicmVmVGV4dGVMZWdpc2xhdGlmXCIsIGpzOiBcInJlZlRleHRlTGVnaXNsYXRpZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRzXCIsIGpzOiBcImFtZW5kZW1lbnRzXCIsIHR5cDogcihcIkFtZW5kZW1lbnRzQ2xhc3NcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50c0NsYXNzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogYShyKFwiQW1lbmRlbWVudFwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50V3JhcHBlclwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRcIiwganM6IFwiYW1lbmRlbWVudFwiLCB0eXA6IHIoXCJBbWVuZGVtZW50XCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuc1wiLCBqczogXCJAeG1sbnNcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY2hyb25vdGFnXCIsIGpzOiBcImNocm9ub3RhZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxlZ2lzbGF0dXJlXCIsIGpzOiBcImxlZ2lzbGF0dXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiaWRlbnRpZmljYXRpb25cIiwganM6IFwiaWRlbnRpZmljYXRpb25cIiwgdHlwOiByKFwiSWRlbnRpZmljYXRpb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImV4YW1lblJlZlwiLCBqczogXCJleGFtZW5SZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJ0ZXh0ZUxlZ2lzbGF0aWZSZWZcIiwganM6IFwidGV4dGVMZWdpc2xhdGlmUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidHJpQW1lbmRlbWVudFwiLCBqczogXCJ0cmlBbWVuZGVtZW50XCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY2FyZGluYWxpdGVBbWR0TXVsdGlwbGVzXCIsIGpzOiBcImNhcmRpbmFsaXRlQW1kdE11bHRpcGxlc1wiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRQYXJlbnRSZWZcIiwganM6IFwiYW1lbmRlbWVudFBhcmVudFJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInNpZ25hdGFpcmVzXCIsIGpzOiBcInNpZ25hdGFpcmVzXCIsIHR5cDogcihcIlNpZ25hdGFpcmVzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJwb2ludGV1ckZyYWdtZW50VGV4dGVcIiwganM6IFwicG9pbnRldXJGcmFnbWVudFRleHRlXCIsIHR5cDogcihcIlBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29ycHNcIiwganM6IFwiY29ycHNcIiwgdHlwOiByKFwiQ29ycHNcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImN5Y2xlRGVWaWVcIiwganM6IFwiY3ljbGVEZVZpZVwiLCB0eXA6IHIoXCJDeWNsZURlVmllXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJyZXByZXNlbnRhdGlvbnNcIiwganM6IFwicmVwcmVzZW50YXRpb25zXCIsIHR5cDogdShyKFwiUmVwcmVzZW50YXRpb25zXCIpLCBudWxsKSB9LFxuICAgICAgICB7IGpzb246IFwic2VhbmNlRGlzY3Vzc2lvblJlZlwiLCBqczogXCJzZWFuY2VEaXNjdXNzaW9uUmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXJ0aWNsZTk5XCIsIGpzOiBcImFydGljbGU5OVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxvaVJlZmVyZW5jZVwiLCBqczogXCJsb2lSZWZlcmVuY2VcIiwgdHlwOiByKFwiTG9pUmVmZXJlbmNlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXNjdXNzaW9uQ29tbXVuZVwiLCBqczogXCJkaXNjdXNzaW9uQ29tbXVuZVwiLCB0eXA6IHIoXCJEaXNjdXNzaW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXNjdXNzaW9uSWRlbnRpcXVlXCIsIGpzOiBcImRpc2N1c3Npb25JZGVudGlxdWVcIiwgdHlwOiByKFwiRGlzY3Vzc2lvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIiwganM6IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIiwgdHlwOiByKFwiQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb3Jwc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNhcnRvdWNoZUluZm9ybWF0aWZcIiwganM6IFwiY2FydG91Y2hlSW5mb3JtYXRpZlwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiY29udGVudUF1dGV1clwiLCBqczogXCJjb250ZW51QXV0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJDb250ZW51QXV0ZXVyXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkNvbnRlbnVBdXRldXJcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJkaXNwb3NpdGlmXCIsIGpzOiBcImRpc3Bvc2l0aWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF2YW50QXBwZWxcIiwganM6IFwiYXZhbnRBcHBlbFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQXZhbnRBcHBlbFwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImV4cG9zZVNvbW1haXJlXCIsIGpzOiBcImV4cG9zZVNvbW1haXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhbm5leGVFeHBvc2VTb21tYWlyZVwiLCBqczogXCJhbm5leGVFeHBvc2VTb21tYWlyZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIiwganM6IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIsIGpzOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkF2YW50QXBwZWxcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXNwb3NpdGlmXCIsIGpzOiBcImRpc3Bvc2l0aWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImxpc3RlUHJvZ3JhbW1lc1wiLCBqczogXCJsaXN0ZVByb2dyYW1tZXNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGTGlzdGVQcm9ncmFtbWVzXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwic29sZGVBRVwiLCBqczogXCJzb2xkZUFFXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzb2xkZUNQXCIsIGpzOiBcInNvbGRlQ1BcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNwRWdhbEFlXCIsIGpzOiBcImNwRWdhbEFlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGTGlzdGVQcm9ncmFtbWVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicHJvZ3JhbW1lXCIsIGpzOiBcInByb2dyYW1tZVwiLCB0eXA6IGEocihcIlB1cnBsZVByb2dyYW1tZVwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJQdXJwbGVQcm9ncmFtbWVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJwcm9ncmFtbWVSZWZcIiwganM6IFwicHJvZ3JhbW1lUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhY3Rpb25cIiwganM6IFwiYWN0aW9uXCIsIHR5cDogcihcIkFjdGlvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlnbmVzQ3JlZGl0c1wiLCBqczogXCJsaWduZXNDcmVkaXRzXCIsIHR5cDogcihcIlB1cnBsZUxpZ25lc0NyZWRpdHNcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJQdXJwbGVMaWduZXNDcmVkaXRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlnbmVDcmVkaXRcIiwganM6IFwibGlnbmVDcmVkaXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJMaWduZUNyZWRpdENsYXNzXCIpKSwgcihcIkxpZ25lQ3JlZGl0Q2xhc3NcIikpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkxpZ25lQ3JlZGl0Q2xhc3NcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYWN0aW9uXCIsIGpzOiBcImFjdGlvblwiLCB0eXA6IHIoXCJBY3Rpb25cIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJsaXN0ZVByb2dyYW1tZXNcIiwganM6IFwibGlzdGVQcm9ncmFtbWVzXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJMaXN0ZVByb2dyYW1tZXNcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJ0b3RhbEFFXCIsIGpzOiBcInRvdGFsQUVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlRvdGFsXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwidG90YWxDUFwiLCBqczogXCJ0b3RhbENQXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUb3RhbFwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImNwRWdhbEFlXCIsIGpzOiBcImNwRWdhbEFlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUkxpc3RlUHJvZ3JhbW1lc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInByb2dyYW1tZVwiLCBqczogXCJwcm9ncmFtbWVcIiwgdHlwOiBhKHIoXCJMaWduZUNyZWRpdEVsZW1lbnRcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTGlnbmVDcmVkaXRMaWduZXNDcmVkaXRzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlnbmVDcmVkaXRcIiwganM6IFwibGlnbmVDcmVkaXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJMaWduZUNyZWRpdEVsZW1lbnRcIikpLCByKFwiTGlnbmVDcmVkaXRFbGVtZW50XCIpKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJMaWduZUNyZWRpdEVsZW1lbnRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJwcm9ncmFtbWVSZWZcIiwganM6IFwicHJvZ3JhbW1lUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmVcIiwganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFN1cHBsZW1lbnRhaXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRTdXBwbGVtZW50YWlyZVwiLCBqczogXCJjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudEFubnVsZVwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY3JlZGl0UGFpZW1lbnRBbm51bGVcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRBbm51bGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhY3Rpb25cIiwganM6IFwiYWN0aW9uXCIsIHR5cDogcihcIkFjdGlvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGlnbmVzQ3JlZGl0c1wiLCBqczogXCJsaWduZXNDcmVkaXRzXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJMaWduZUNyZWRpdExpZ25lc0NyZWRpdHNcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlRvdGFsXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwic3VwcGxlbWVudGFpcmVcIiwganM6IFwic3VwcGxlbWVudGFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhbm51bGVcIiwganM6IFwiYW5udWxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwic29sZGVcIiwganM6IFwic29sZGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ3ljbGVEZVZpZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImRhdGVEZXBvdFwiLCBqczogXCJkYXRlRGVwb3RcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIERhdGUpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlUHVibGljYXRpb25cIiwganM6IFwiZGF0ZVB1YmxpY2F0aW9uXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBEYXRlKSB9LFxuICAgICAgICB7IGpzb246IFwic291bWlzQXJ0aWNsZTQwXCIsIGpzOiBcInNvdW1pc0FydGljbGU0MFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImV0YXREZXNUcmFpdGVtZW50c1wiLCBqczogXCJldGF0RGVzVHJhaXRlbWVudHNcIiwgdHlwOiByKFwiRXRhdERFU1RyYWl0ZW1lbnRzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlU29ydFwiLCBqczogXCJkYXRlU29ydFwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgRGF0ZSkgfSxcbiAgICAgICAgeyBqc29uOiBcInNvcnRcIiwganM6IFwic29ydFwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgcihcIlNvcnRFbnVtXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkV0YXRERVNUcmFpdGVtZW50c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IHIoXCJFdGF0XCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzb3VzRXRhdFwiLCBqczogXCJzb3VzRXRhdFwiLCB0eXA6IHIoXCJTb3VzRXRhdFwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkV0YXRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiByKFwiQ29kZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogcihcIkxpYmVsbGVcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJTb3VzRXRhdFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNvZGVcIiwganM6IFwiY29kZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQ29kZVwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiU29ydEVudW1cIikpIH0sXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGlzY3Vzc2lvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImlkRGlzY3Vzc2lvblwiLCBqczogXCJpZERpc2N1c3Npb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVQb3NpdGlvblwiLCBqczogXCJ0eXBlUG9zaXRpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlR5cGVQb3NpdGlvblwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJJZGVudGlmaWNhdGlvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIm51bWVyb0xvbmdcIiwganM6IFwibnVtZXJvTG9uZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm51bWVyb09yZHJlRGVwb3RcIiwganM6IFwibnVtZXJvT3JkcmVEZXBvdFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInByZWZpeGVPcmdhbmVFeGFtZW5cIiwganM6IFwicHJlZml4ZU9yZ2FuZUV4YW1lblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm51bWVyb1JlY3RcIiwganM6IFwibnVtZXJvUmVjdFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJMb2lSZWZlcmVuY2VcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb2RlTG9pXCIsIGpzOiBcImNvZGVMb2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBudWxsLCBcIlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImRpdmlzaW9uQ29kZUxvaVwiLCBqczogXCJkaXZpc2lvbkNvZGVMb2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBudWxsLCBcIlwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJQb2ludGV1ckZyYWdtZW50VGV4dGVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJwYXJ0aWVBbWVuZGFibGVSZWZcIiwganM6IFwicGFydGllQW1lbmRhYmxlUmVmXCIsIHR5cDogcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGl2aXNpb25cIiwganM6IFwiZGl2aXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpdmlzaW9uXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiYW1lbmRlbWVudFN0YW5kYXJkXCIsIGpzOiBcImFtZW5kZW1lbnRTdGFuZGFyZFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQW1lbmRlbWVudFN0YW5kYXJkXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwibWlzc2lvblZpc2VlXCIsIGpzOiBcIm1pc3Npb25WaXNlZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiTWlzc2lvblZpc2VlXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFtZW5kZW1lbnRTdGFuZGFyZFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFsaW5lYVwiLCBqczogXCJhbGluZWFcIiwgdHlwOiByKFwiQWxpbmVhXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQWxpbmVhXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXZhbnRfQV9BcHJlc1wiLCBqczogXCJhdmFudF9BX0FwcmVzXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgbnVsbCwgXCJcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJudW1lcm9cIiwganM6IFwibnVtZXJvXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJhbGluZWFEZXNpZ25hdGlvblwiLCBqczogXCJhbGluZWFEZXNpZ25hdGlvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpdmlzaW9uXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidGl0cmVcIiwganM6IFwidGl0cmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25Db3VydGVcIiwganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXJ0aWNsZURlc2lnbmF0aW9uXCIsIGpzOiBcImFydGljbGVEZXNpZ25hdGlvblwiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInR5cGVcIiwganM6IFwidHlwZVwiLCB0eXA6IHIoXCJEaXZpc2lvblR5cGVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF2YW50X0FfQXByZXNcIiwganM6IFwiYXZhbnRfQV9BcHJlc1wiLCB0eXA6IHIoXCJBdmFudEFBcHJlc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGl2aXNpb25SYXR0YWNoZWVcIiwganM6IFwiZGl2aXNpb25SYXR0YWNoZWVcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhcnRpY2xlQWRkaXRpb25uZWxcIiwganM6IFwiYXJ0aWNsZUFkZGl0aW9ubmVsXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY2hhcGl0cmVBZGRpdGlvbm5lbFwiLCBqczogXCJjaGFwaXRyZUFkZGl0aW9ubmVsXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidXJsRGl2aXNpb25UZXh0ZVZpc2VcIiwganM6IFwidXJsRGl2aXNpb25UZXh0ZVZpc2VcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTWlzc2lvblZpc2VlXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiY29kZUV0YXRcIiwganM6IFwiY29kZUV0YXRcIiwgdHlwOiByKFwiQ29kZUV0YXRcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIGpzOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibGliZWxsZU1pc3Npb25cIiwganM6IFwibGliZWxsZU1pc3Npb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJtaXNzaW9uUmVmXCIsIGpzOiBcIm1pc3Npb25SZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUmVwcmVzZW50YXRpb25zXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicmVwcmVzZW50YXRpb25cIiwganM6IFwicmVwcmVzZW50YXRpb25cIiwgdHlwOiByKFwiUmVwcmVzZW50YXRpb25cIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJSZXByZXNlbnRhdGlvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiByKFwiTm9tXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJ0eXBlTWltZVwiLCBqczogXCJ0eXBlTWltZVwiLCB0eXA6IHIoXCJUeXBlTUlNRVwiKSB9LFxuICAgICAgICB7IGpzb246IFwic3RhdHV0UmVwcmVzZW50YXRpb25cIiwganM6IFwic3RhdHV0UmVwcmVzZW50YXRpb25cIiwgdHlwOiByKFwiU3RhdHV0UmVwcmVzZW50YXRpb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcInJlcFNvdXJjZVwiLCBqczogXCJyZXBTb3VyY2VcIiwgdHlwOiByKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJvZmZzZXRcIiwganM6IFwib2Zmc2V0XCIsIHR5cDogcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29udGVudVwiLCBqczogXCJjb250ZW51XCIsIHR5cDogcihcIkNvbnRlbnVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRhdGVEaXNwb1JlcHJlc2VudGF0aW9uXCIsIGpzOiBcImRhdGVEaXNwb1JlcHJlc2VudGF0aW9uXCIsIHR5cDogcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkNvbnRlbnVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJkb2N1bWVudFVSSVwiLCBqczogXCJkb2N1bWVudFVSSVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJTdGF0dXRSZXByZXNlbnRhdGlvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInZlcmJhdGltXCIsIGpzOiBcInZlcmJhdGltXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiY2Fub25pcXVlXCIsIGpzOiBcImNhbm9uaXF1ZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcIm9mZmljaWVsbGVcIiwganM6IFwib2ZmaWNpZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRyYW5zY3JpcHRpb25cIiwganM6IFwidHJhbnNjcmlwdGlvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImVucmVnaXN0cmVtZW50XCIsIGpzOiBcImVucmVnaXN0cmVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlR5cGVNSU1FXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidHlwZVwiLCBqczogXCJ0eXBlXCIsIHR5cDogcihcIlR5cGVNSU1FVHlwZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwic3ViVHlwZVwiLCBqczogXCJzdWJUeXBlXCIsIHR5cDogcihcIk5vbVwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlNpZ25hdGFpcmVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiYXV0ZXVyXCIsIGpzOiBcImF1dGV1clwiLCB0eXA6IHIoXCJBdXRldXJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvc2lnbmF0YWlyZXNcIiwganM6IFwiY29zaWduYXRhaXJlc1wiLCB0eXA6IHIoXCJDb3NpZ25hdGFpcmVzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzdWZmaXhlXCIsIGpzOiBcInN1ZmZpeGVcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiB1KG51bGwsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQXV0ZXVyXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwidHlwZUF1dGV1clwiLCBqczogXCJ0eXBlQXV0ZXVyXCIsIHR5cDogcihcIlR5cGVBdXRldXJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImdvdXZlcm5lbWVudFJlZlwiLCBqczogXCJnb3V2ZXJuZW1lbnRSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZ3JvdXBlUG9saXRpcXVlUmVmXCIsIGpzOiBcImdyb3VwZVBvbGl0aXF1ZVJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWZcIiwganM6IFwiYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZVJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb3NpZ25hdGFpcmVzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYWN0ZXVyUmVmXCIsIGpzOiBcImFjdGV1clJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCB1KGEoXCJcIiksIFwiXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpXCI6IFtcbiAgICAgICAgXCJBY2NvcmRcIixcbiAgICAgICAgXCJTYW5zIG9iamV0XCIsXG4gICAgXSxcbiAgICBcIkFjdGlvblwiOiBbXG4gICAgICAgIFwiY3LDqWF0aW9uXCIsXG4gICAgICAgIFwibW9kaWZpY2F0aW9uXCIsXG4gICAgICAgIFwic3VwcHJlc3Npb25cIixcbiAgICBdLFxuICAgIFwiQ29kZVwiOiBbXG4gICAgICAgIFwiQUNcIixcbiAgICAgICAgXCJBVFwiLFxuICAgICAgICBcIkRJXCIsXG4gICAgICAgIFwiZWZmYWPDqVwiLFxuICAgICAgICBcIkVSXCIsXG4gICAgICAgIFwiSVJcIixcbiAgICAgICAgXCJJUlIxMjdcIixcbiAgICAgICAgXCJJUlIyMFwiLFxuICAgICAgICBcIklSUjM3XCIsXG4gICAgICAgIFwiSVJSMzhcIixcbiAgICAgICAgXCJJUlI0MVwiLFxuICAgICAgICBcIklSUjQyXCIsXG4gICAgICAgIFwiSVJSNDVcIixcbiAgICAgICAgXCJJUlI0OFwiLFxuICAgICAgICBcIklSUjUzXCIsXG4gICAgICAgIFwiSVJSQUlcIixcbiAgICAgICAgXCJJUlJEXCIsXG4gICAgICAgIFwiSVJSSERcIixcbiAgICAgICAgXCJJUlJTQVwiLFxuICAgICAgICBcIlJcIixcbiAgICAgICAgXCJSVFwiLFxuICAgICAgICBcIlRcIixcbiAgICBdLFxuICAgIFwiTGliZWxsZVwiOiBbXG4gICAgICAgIFwiQSBkaXNjdXRlclwiLFxuICAgICAgICBcIkEgZMOpcG9zZXJcIixcbiAgICAgICAgXCJEaXNjdXTDqVwiLFxuICAgICAgICBcImVmZmFjw6lcIixcbiAgICAgICAgXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gICAgICAgIFwiRW4gdHJhaXRlbWVudFwiLFxuICAgICAgICBcIklycmVjZXZhYmxlXCIsXG4gICAgICAgIFwiSXJyZWNldmFibGUgNDBcIixcbiAgICAgICAgXCJSZXRpcsOpXCIsXG4gICAgXSxcbiAgICBcIlNvcnRFbnVtXCI6IFtcbiAgICAgICAgXCJBZG9wdMOpXCIsXG4gICAgICAgIFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgICAgIFwiQXV0cmVzIGlyciBMT0xGXCIsXG4gICAgICAgIFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgICAgICAgXCJDYXZhbGllciAoNDUpXCIsXG4gICAgICAgIFwiQ2F2YWxpZXIgYnVkZ8OpdGFpcmVcIixcbiAgICAgICAgXCJDYXZhbGllciBzb2NpYWxcIixcbiAgICAgICAgXCJDaGFtcCBkZSBsJ2hhYmlsaXRhdGlvbiAoMzgpXCIsXG4gICAgICAgIFwiQ2hhcmdlXCIsXG4gICAgICAgIFwiQ01QICg0NSlcIixcbiAgICAgICAgXCJDcsOpZGl0c1wiLFxuICAgICAgICBcIkRpc3Bvc2l0aW9uIHLDqWdsZW1lbnRhaXJlICgzNylcIixcbiAgICAgICAgXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gICAgICAgIFwiRG9tYWluZSBsb2kgb3JnYW5pcXVlICgxMjcpXCIsXG4gICAgICAgIFwiRG91YmxvblwiLFxuICAgICAgICBcIkVudG9ubm9pciAoNDUpXCIsXG4gICAgICAgIFwiR2FnZVwiLFxuICAgICAgICBcIkhvcnMtZMOpbGFpc1wiLFxuICAgICAgICBcIkluam9uY3Rpb24gKDIwKVwiLFxuICAgICAgICBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gICAgICAgIFwiSXJyIGVuIHNlY29uZGUgcGFydGllXCIsXG4gICAgICAgIFwiTE9MRlwiLFxuICAgICAgICBcIkxPTEZTU1wiLFxuICAgICAgICBcIk5vbiBzb3V0ZW51XCIsXG4gICAgICAgIFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gICAgICAgIFwiUlwiLFxuICAgICAgICBcIlJhdGlmaWNhdGlvbiB0cmFpdMOpICg1MylcIixcbiAgICAgICAgXCJSZWpldMOpXCIsXG4gICAgICAgIFwiUmV0aXLDqVwiLFxuICAgICAgICBcIlJldGlyw6kgYXByw6hzIHB1YmxpY2F0aW9uXCIsXG4gICAgICAgIFwiUmV0aXLDqSBhdmFudCBwdWJsaWNhdGlvblwiLFxuICAgICAgICBcIlNhdGlzZmFpdCBvdSBpbm9ww6lyYW50ICg0MilcIixcbiAgICAgICAgXCJTb3VzLWFtZW5kZW1lbnQgKDk4KVwiLFxuICAgICAgICBcIlRvbWLDqVwiLFxuICAgIF0sXG4gICAgXCJUeXBlUG9zaXRpb25cIjogW1xuICAgICAgICBcIkRlcm5pZXJcIixcbiAgICAgICAgXCJNaWxpZXVcIixcbiAgICAgICAgXCJQcmVtaWVyXCIsXG4gICAgXSxcbiAgICBcIkF2YW50QUFwcmVzXCI6IFtcbiAgICAgICAgXCJBXCIsXG4gICAgICAgIFwiQXByw6hzXCIsXG4gICAgICAgIFwiQXZhbnRcIixcbiAgICBdLFxuICAgIFwiRGl2aXNpb25UeXBlXCI6IFtcbiAgICAgICAgXCJBTk5FWEVcIixcbiAgICAgICAgXCJBUlRJQ0xFXCIsXG4gICAgICAgIFwiQ0hBUElUUkVcIixcbiAgICAgICAgXCJUSVRSRVwiLFxuICAgIF0sXG4gICAgXCJDb2RlRXRhdFwiOiBbXG4gICAgICAgIFwiQlwiLFxuICAgICAgICBcIkNcIixcbiAgICAgICAgXCJEXCIsXG4gICAgXSxcbiAgICBcIk5vbVwiOiBbXG4gICAgICAgIFwiUERGXCIsXG4gICAgXSxcbiAgICBcIlR5cGVNSU1FVHlwZVwiOiBbXG4gICAgICAgIFwiYXBwbGljYXRpb25cIixcbiAgICBdLFxuICAgIFwiVHlwZUF1dGV1clwiOiBbXG4gICAgICAgIFwiRMOpcHV0w6lcIixcbiAgICAgICAgXCJHb3V2ZXJuZW1lbnRcIixcbiAgICAgICAgXCJSYXBwb3J0ZXVyXCIsXG4gICAgXSxcbn07XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBNENBLFdBQVlBLGdDQUFaOztXQUFZQSxnQztFQUFBQSxnQztFQUFBQSxnQztHQUFBQSxnQyxLQUFBQSxnQzs7QUFzRFosV0FBWUMsTUFBWjs7V0FBWUEsTTtFQUFBQSxNO0VBQUFBLE07RUFBQUEsTTtHQUFBQSxNLEtBQUFBLE07O0FBMEVaLFdBQVlDLElBQVo7O1dBQVlBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtHQUFBQSxJLEtBQUFBLEk7O0FBeUJaLFdBQVlDLE9BQVo7O1dBQVlBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87R0FBQUEsTyxLQUFBQSxPOztBQW1CWixXQUFZQyxRQUFaOztXQUFZQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7R0FBQUEsUSxLQUFBQSxROztBQTRDWixXQUFZQyxZQUFaOztXQUFZQSxZO0VBQUFBLFk7RUFBQUEsWTtFQUFBQSxZO0dBQUFBLFksS0FBQUEsWTs7QUFtRFosV0FBWUMsV0FBWjs7V0FBWUEsVztFQUFBQSxXO0VBQUFBLFc7RUFBQUEsVztHQUFBQSxXLEtBQUFBLFc7O0FBTVosV0FBWUMsWUFBWjs7V0FBWUEsWTtFQUFBQSxZO0VBQUFBLFk7RUFBQUEsWTtFQUFBQSxZO0dBQUFBLFksS0FBQUEsWTs7QUFjWixXQUFZQyxRQUFaOztXQUFZQSxRO0VBQUFBLFE7RUFBQUEsUTtF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
1128
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsIkFjdGlvbiIsIkNvZGUiLCJMaWJlbGxlIiwiU29ydEVudW0iLCJUeXBlUG9zaXRpb24iLCJBdmFudEFBcHJlcyIsIkRpdmlzaW9uVHlwZSIsIkNvZGVFdGF0IiwiTm9tIiwiVHlwZU1JTUVUeXBlIiwiVHlwZUF1dGV1ciIsIkNvbnZlcnQiLCJqc29uIiwiY2FzdCIsIkpTT04iLCJwYXJzZSIsInIiLCJ2YWx1ZSIsInN0cmluZ2lmeSIsInVuY2FzdCIsImludmFsaWRWYWx1ZSIsInR5cCIsInZhbCIsImtleSIsIkVycm9yIiwianNvblRvSlNQcm9wcyIsImpzb25Ub0pTIiwidW5kZWZpbmVkIiwibWFwIiwicHJvcHMiLCJmb3JFYWNoIiwicCIsImpzIiwianNUb0pTT05Qcm9wcyIsImpzVG9KU09OIiwidHJhbnNmb3JtIiwiZ2V0UHJvcHMiLCJ0cmFuc2Zvcm1QcmltaXRpdmUiLCJ0cmFuc2Zvcm1VbmlvbiIsInR5cHMiLCJsIiwibGVuZ3RoIiwiaSIsIl8iLCJ0cmFuc2Zvcm1FbnVtIiwiY2FzZXMiLCJpbmRleE9mIiwidHJhbnNmb3JtQXJyYXkiLCJBcnJheSIsImlzQXJyYXkiLCJlbCIsInRyYW5zZm9ybURhdGUiLCJkIiwiRGF0ZSIsImlzTmFOIiwidmFsdWVPZiIsInRyYW5zZm9ybU9iamVjdCIsImFkZGl0aW9uYWwiLCJyZXN1bHQiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwicHJvcCIsInYiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJyZWYiLCJ0eXBlTWFwIiwidW5pb25NZW1iZXJzIiwiYXJyYXlJdGVtcyIsImEiLCJ1IiwibyIsIm5hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcmF3X3R5cGVzL2FtZW5kZW1lbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IEFtZW5kZW1lbnRzLCBBbWVuZGVtZW50V3JhcHBlciwgQ29udmVydCwgVGV4dGVMZWdpc2xhdGlmIH0gZnJvbSBcIi4vZmlsZVwiO1xuLy9cbi8vICAgY29uc3QgYW1lbmRlbWVudHMgPSBDb252ZXJ0LnRvQW1lbmRlbWVudHMoanNvbik7XG4vLyAgIGNvbnN0IGFtZW5kZW1lbnRXcmFwcGVyID0gQ29udmVydC50b0FtZW5kZW1lbnRXcmFwcGVyKGpzb24pO1xuLy8gICBjb25zdCB0ZXh0ZUxlZ2lzbGF0aWYgPSBDb252ZXJ0LnRvVGV4dGVMZWdpc2xhdGlmKGpzb24pO1xuLy9cbi8vIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBKU09OIGRvZXNuJ3Rcbi8vIG1hdGNoIHRoZSBleHBlY3RlZCBpbnRlcmZhY2UsIGV2ZW4gaWYgdGhlIEpTT04gaXMgdmFsaWQuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudHMge1xuICB0ZXh0ZXNMZWdpc2xhdGlmczogVGV4dGVMZWdpc2xhdGlmW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgIFwiQHhtbG5zOnhzaVwiOiAgICAgICBzdHJpbmc7XG4gICAgcmVmVGV4dGVMZWdpc2xhdGlmOiBzdHJpbmc7XG4gICAgYW1lbmRlbWVudHM6ICAgICAgICBBbWVuZGVtZW50c0NsYXNzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzQ2xhc3Mge1xuICAgIGFtZW5kZW1lbnQ6IEFtZW5kZW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50V3JhcHBlciB7XG4gIGFtZW5kZW1lbnQ6IEFtZW5kZW1lbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50IHtcbiAgICBcIkB4bWxuc1wiOiAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdWlkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBjaHJvbm90YWc6ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxlZ2lzbGF0dXJlOiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgaWRlbnRpZmljYXRpb246ICAgICAgICAgICAgICAgICAgIElkZW50aWZpY2F0aW9uO1xuICAgIGV4YW1lblJlZjogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdGV4dGVMZWdpc2xhdGlmUmVmOiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0cmlBbWVuZGVtZW50OiAgICAgICAgICAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGNhcmRpbmFsaXRlQW1kdE11bHRpcGxlczogICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYW1lbmRlbWVudFBhcmVudFJlZjogICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBzaWduYXRhaXJlczogICAgICAgICAgICAgICAgICAgICAgU2lnbmF0YWlyZXM7XG4gICAgcG9pbnRldXJGcmFnbWVudFRleHRlOiAgICAgICAgICAgIFBvaW50ZXVyRnJhZ21lbnRUZXh0ZTtcbiAgICBjb3JwczogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29ycHM7XG4gICAgY3ljbGVEZVZpZTogICAgICAgICAgICAgICAgICAgICAgIEN5Y2xlRGVWaWU7XG4gICAgcmVwcmVzZW50YXRpb25zOiAgICAgICAgICAgICAgICAgIFJlcHJlc2VudGF0aW9ucyB8IG51bGw7XG4gICAgc2VhbmNlRGlzY3Vzc2lvblJlZjogICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhcnRpY2xlOTk6ICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxvaVJlZmVyZW5jZTogICAgICAgICAgICAgICAgICAgICBMb2lSZWZlcmVuY2U7XG4gICAgZGlzY3Vzc2lvbkNvbW11bmU6ICAgICAgICAgICAgICAgIERpc2N1c3Npb247XG4gICAgZGlzY3Vzc2lvbklkZW50aXF1ZTogICAgICAgICAgICAgIERpc2N1c3Npb247XG4gICAgYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWk6IEFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpO1xufVxuXG5leHBvcnQgZW51bSBBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSB7XG4gICAgQWNjb3JkID0gXCJBY2NvcmRcIixcbiAgICBTYW5zT2JqZXQgPSBcIlNhbnMgb2JqZXRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3Mge1xuICAgIFwiQHhtbG5zOnhzaVwiOiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiOiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3JwcyB7XG4gICAgY2FydG91Y2hlSW5mb3JtYXRpZj86IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBjb250ZW51QXV0ZXVyPzogICAgICAgQ29udGVudUF1dGV1cjtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgICAgICBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnVBdXRldXIge1xuICAgIGRpc3Bvc2l0aWY/OiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdmFudEFwcGVsPzogICAgICAgICAgICAgICBBdmFudEFwcGVsO1xuICAgIGV4cG9zZVNvbW1haXJlPzogICAgICAgICAgIHN0cmluZztcbiAgICBhbm5leGVFeHBvc2VTb21tYWlyZT86ICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiAgICAgICAgICAgICBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY/OiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY7XG4gICAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF2YW50QXBwZWwge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGRpc3Bvc2l0aWY/OiAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRiB7XG4gICAgbGlzdGVQcm9ncmFtbWVzPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZMaXN0ZVByb2dyYW1tZXM7XG4gICAgc29sZGVBRT86ICAgICAgICAgc3RyaW5nO1xuICAgIHNvbGRlQ1A/OiAgICAgICAgIHN0cmluZztcbiAgICBjcEVnYWxBZTogICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZMaXN0ZVByb2dyYW1tZXMge1xuICAgIHByb2dyYW1tZTogUHVycGxlUHJvZ3JhbW1lW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVycGxlUHJvZ3JhbW1lIHtcbiAgICBsaWJlbGxlOiAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgcHJvZ3JhbW1lUmVmOiAgICAgICAgICAgc3RyaW5nO1xuICAgIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnQ6IHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudDogICAgICAgICBzdHJpbmc7XG4gICAgYWN0aW9uOiAgICAgICAgICAgICAgICAgQWN0aW9uO1xuICAgIGxpZ25lc0NyZWRpdHM6ICAgICAgICAgIFB1cnBsZUxpZ25lc0NyZWRpdHM7XG59XG5cbmV4cG9ydCBlbnVtIEFjdGlvbiB7XG4gICAgQ3LDqWF0aW9uID0gXCJjcsOpYXRpb25cIixcbiAgICBNb2RpZmljYXRpb24gPSBcIm1vZGlmaWNhdGlvblwiLFxuICAgIFN1cHByZXNzaW9uID0gXCJzdXBwcmVzc2lvblwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFB1cnBsZUxpZ25lc0NyZWRpdHMge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGxpZ25lQ3JlZGl0PzogIExpZ25lQ3JlZGl0Q2xhc3NbXSB8IExpZ25lQ3JlZGl0Q2xhc3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRDbGFzcyB7XG4gICAgaWQ6ICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGxpYmVsbGU6ICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50OiBzdHJpbmc7XG4gICAgY3JlZGl0UGFpZW1lbnQ6ICAgICAgICAgc3RyaW5nO1xuICAgIGFjdGlvbjogICAgICAgICAgICAgICAgIEFjdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlIge1xuICAgIGxpc3RlUHJvZ3JhbW1lcz86IERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUkxpc3RlUHJvZ3JhbW1lcztcbiAgICB0b3RhbEFFPzogICAgICAgICBUb3RhbDtcbiAgICB0b3RhbENQPzogICAgICAgICBUb3RhbDtcbiAgICBjcEVnYWxBZTogICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSTGlzdGVQcm9ncmFtbWVzIHtcbiAgICBwcm9ncmFtbWU6IExpZ25lQ3JlZGl0RWxlbWVudFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0cyB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG4gICAgbGlnbmVDcmVkaXQ/OiAgTGlnbmVDcmVkaXRFbGVtZW50W10gfCBMaWduZUNyZWRpdEVsZW1lbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRFbGVtZW50IHtcbiAgICBsaWJlbGxlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBwcm9ncmFtbWVSZWY/OiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmU6IHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlOiAgICAgICAgIHN0cmluZztcbiAgICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlOiAgICAgICAgIHN0cmluZztcbiAgICBjcmVkaXRQYWllbWVudEFubnVsZTogICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBhY3Rpb246ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFjdGlvbjtcbiAgICBsaWduZXNDcmVkaXRzPzogICAgICAgICAgICAgICAgICAgICAgIExpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0cztcbiAgICBpZD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUb3RhbCB7XG4gICAgc3VwcGxlbWVudGFpcmU6IHN0cmluZztcbiAgICBhbm51bGU6ICAgICAgICAgc3RyaW5nO1xuICAgIHNvbGRlOiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3ljbGVEZVZpZSB7XG4gICAgZGF0ZURlcG90OiAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBEYXRlO1xuICAgIGRhdGVQdWJsaWNhdGlvbjogICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgRGF0ZTtcbiAgICBzb3VtaXNBcnRpY2xlNDA6ICAgIHN0cmluZztcbiAgICBldGF0RGVzVHJhaXRlbWVudHM6IEV0YXRERVNUcmFpdGVtZW50cztcbiAgICBkYXRlU29ydDogICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IERhdGU7XG4gICAgc29ydDogICAgICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBTb3J0RW51bTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdGF0REVTVHJhaXRlbWVudHMge1xuICAgIGV0YXQ6ICAgICBFdGF0O1xuICAgIHNvdXNFdGF0OiBTb3VzRXRhdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdGF0IHtcbiAgICBjb2RlOiAgICBDb2RlO1xuICAgIGxpYmVsbGU6IExpYmVsbGU7XG59XG5cbmV4cG9ydCBlbnVtIENvZGUge1xuICAgIEFDID0gXCJBQ1wiLFxuICAgIEF0ID0gXCJBVFwiLFxuICAgIERpID0gXCJESVwiLFxuICAgIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgICBFciA9IFwiRVJcIixcbiAgICBJUiA9IFwiSVJcIixcbiAgICBJcnIxMjcgPSBcIklSUjEyN1wiLFxuICAgIElycjIwID0gXCJJUlIyMFwiLFxuICAgIElycjM3ID0gXCJJUlIzN1wiLFxuICAgIElycjM4ID0gXCJJUlIzOFwiLFxuICAgIElycjQxID0gXCJJUlI0MVwiLFxuICAgIElycjQyID0gXCJJUlI0MlwiLFxuICAgIElycjQ1ID0gXCJJUlI0NVwiLFxuICAgIElycjQ4ID0gXCJJUlI0OFwiLFxuICAgIElycjUzID0gXCJJUlI1M1wiLFxuICAgIElycmFpID0gXCJJUlJBSVwiLFxuICAgIElycmQgPSBcIklSUkRcIixcbiAgICBJcnJoZCA9IFwiSVJSSERcIixcbiAgICBJcnJzYSA9IFwiSVJSU0FcIixcbiAgICBSID0gXCJSXCIsXG4gICAgUnQgPSBcIlJUXCIsXG4gICAgVCA9IFwiVFwiLFxufVxuXG5leHBvcnQgZW51bSBMaWJlbGxlIHtcbiAgICBBRGlzY3V0ZXIgPSBcIkEgZGlzY3V0ZXJcIixcbiAgICBBRMOpcG9zZXIgPSBcIkEgZMOpcG9zZXJcIixcbiAgICBEaXNjdXTDqSA9IFwiRGlzY3V0w6lcIixcbiAgICBFZmZhY8OpID0gXCJlZmZhY8OpXCIsXG4gICAgRW5SZWNldmFiaWxpdMOpID0gXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gICAgRW5UcmFpdGVtZW50ID0gXCJFbiB0cmFpdGVtZW50XCIsXG4gICAgSXJyZWNldmFibGUgPSBcIklycmVjZXZhYmxlXCIsXG4gICAgSXJyZWNldmFibGU0MCA9IFwiSXJyZWNldmFibGUgNDBcIixcbiAgICBSZXRpcsOpID0gXCJSZXRpcsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU291c0V0YXQge1xuICAgIGNvZGU/OiAgICAgICAgIENvZGU7XG4gICAgbGliZWxsZT86ICAgICAgU29ydEVudW07XG4gICAgXCJAeG1sbnM6eHNpXCI/OiBzdHJpbmc7XG4gICAgXCJAeHNpOm5pbFwiPzogICBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIFNvcnRFbnVtIHtcbiAgICBBZG9wdMOpID0gXCJBZG9wdMOpXCIsXG4gICAgQXV0cmVJcnJlY2V2YWJpbGl0w6kgPSBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqVwiLFxuICAgIEF1dHJlc0lyckxPTEYgPSBcIkF1dHJlcyBpcnIgTE9MRlwiLFxuICAgIEF1dHJlc0lyckxPTEZTUyA9IFwiQXV0cmVzIGlyciBMT0xGU1NcIixcbiAgICBDYXZhbGllcjQ1ID0gXCJDYXZhbGllciAoNDUpXCIsXG4gICAgQ2F2YWxpZXJCdWRnw6l0YWlyZSA9IFwiQ2F2YWxpZXIgYnVkZ8OpdGFpcmVcIixcbiAgICBDYXZhbGllclNvY2lhbCA9IFwiQ2F2YWxpZXIgc29jaWFsXCIsXG4gICAgQ2hhbXBEZUxIYWJpbGl0YXRpb24zOCA9IFwiQ2hhbXAgZGUgbCdoYWJpbGl0YXRpb24gKDM4KVwiLFxuICAgIENoYXJnZSA9IFwiQ2hhcmdlXCIsXG4gICAgQ21wNDUgPSBcIkNNUCAoNDUpXCIsXG4gICAgQ3LDqWRpdHMgPSBcIkNyw6lkaXRzXCIsXG4gICAgRGlzcG9zaXRpb25Sw6lnbGVtZW50YWlyZTM3ID0gXCJEaXNwb3NpdGlvbiByw6lnbGVtZW50YWlyZSAoMzcpXCIsXG4gICAgRG9tYWluZURlTGFMb2k0MSA9IFwiRG9tYWluZSBkZSBsYSBsb2kgKDQxKVwiLFxuICAgIERvbWFpbmVMb2lPcmdhbmlxdWUxMjcgPSBcIkRvbWFpbmUgbG9pIG9yZ2FuaXF1ZSAoMTI3KVwiLFxuICAgIERvdWJsb24gPSBcIkRvdWJsb25cIixcbiAgICBFbnRvbm5vaXI0NSA9IFwiRW50b25ub2lyICg0NSlcIixcbiAgICBHYWdlID0gXCJHYWdlXCIsXG4gICAgSG9yc0TDqWxhaXMgPSBcIkhvcnMtZMOpbGFpc1wiLFxuICAgIEluam9uY3Rpb24yMCA9IFwiSW5qb25jdGlvbiAoMjApXCIsXG4gICAgSXJyRW5QcmVtacOocmVQYXJ0aWUgPSBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gICAgSXJyRW5TZWNvbmRlUGFydGllID0gXCJJcnIgZW4gc2Vjb25kZSBwYXJ0aWVcIixcbiAgICBMb2xmID0gXCJMT0xGXCIsXG4gICAgTG9sZnNzID0gXCJMT0xGU1NcIixcbiAgICBOb25Tb3V0ZW51ID0gXCJOb24gc291dGVudVwiLFxuICAgIE9yZHJlRHVKb3VyNDggPSBcIk9yZHJlIGR1IGpvdXIgKDQ4KVwiLFxuICAgIFIgPSBcIlJcIixcbiAgICBSYXRpZmljYXRpb25UcmFpdMOpNTMgPSBcIlJhdGlmaWNhdGlvbiB0cmFpdMOpICg1MylcIixcbiAgICBSZWpldMOpID0gXCJSZWpldMOpXCIsXG4gICAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxuICAgIFJldGlyw6lBcHLDqHNQdWJsaWNhdGlvbiA9IFwiUmV0aXLDqSBhcHLDqHMgcHVibGljYXRpb25cIixcbiAgICBSZXRpcsOpQXZhbnRQdWJsaWNhdGlvbiA9IFwiUmV0aXLDqSBhdmFudCBwdWJsaWNhdGlvblwiLFxuICAgIFNhdGlzZmFpdE91SW5vcMOpcmFudDQyID0gXCJTYXRpc2ZhaXQgb3UgaW5vcMOpcmFudCAoNDIpXCIsXG4gICAgU291c0FtZW5kZW1lbnQ5OCA9IFwiU291cy1hbWVuZGVtZW50ICg5OClcIixcbiAgICBUb21iw6kgPSBcIlRvbWLDqVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc2N1c3Npb24ge1xuICAgIFwiQHhtbG5zOnhzaVwiPzogc3RyaW5nO1xuICAgIFwiQHhzaTpuaWxcIj86ICAgc3RyaW5nO1xuICAgIGlkRGlzY3Vzc2lvbj86IHN0cmluZztcbiAgICB0eXBlUG9zaXRpb24/OiBUeXBlUG9zaXRpb247XG59XG5cbmV4cG9ydCBlbnVtIFR5cGVQb3NpdGlvbiB7XG4gICAgRGVybmllciA9IFwiRGVybmllclwiLFxuICAgIE1pbGlldSA9IFwiTWlsaWV1XCIsXG4gICAgUHJlbWllciA9IFwiUHJlbWllclwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElkZW50aWZpY2F0aW9uIHtcbiAgICBudW1lcm9Mb25nOiAgICAgICAgICBzdHJpbmc7XG4gICAgbnVtZXJvT3JkcmVEZXBvdDogICAgc3RyaW5nO1xuICAgIHByZWZpeGVPcmdhbmVFeGFtZW46IHN0cmluZztcbiAgICBudW1lcm9SZWN0OiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9pUmVmZXJlbmNlIHtcbiAgICBcIkB4bWxuczp4c2lcIj86ICAgIHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgICAgIHN0cmluZztcbiAgICBjb2RlTG9pPzogICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBudWxsIHwgc3RyaW5nO1xuICAgIGRpdmlzaW9uQ29kZUxvaT86IEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IG51bGwgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9pbnRldXJGcmFnbWVudFRleHRlIHtcbiAgICBwYXJ0aWVBbWVuZGFibGVSZWY6ICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgZGl2aXNpb24/OiAgICAgICAgICAgRGl2aXNpb247XG4gICAgYW1lbmRlbWVudFN0YW5kYXJkPzogQW1lbmRlbWVudFN0YW5kYXJkO1xuICAgIG1pc3Npb25WaXNlZT86ICAgICAgIE1pc3Npb25WaXNlZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbWVuZGVtZW50U3RhbmRhcmQge1xuICAgIGFsaW5lYTogQWxpbmVhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsaW5lYSB7XG4gICAgXCJAeG1sbnM6eHNpXCI/OiAgICAgIHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgICAgICAgc3RyaW5nO1xuICAgIGF2YW50X0FfQXByZXM/OiAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgbnVsbCB8IHN0cmluZztcbiAgICBudW1lcm8/OiAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBhbGluZWFEZXNpZ25hdGlvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXZpc2lvbiB7XG4gICAgdGl0cmU6ICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlOiBudWxsIHwgc3RyaW5nO1xuICAgIGFydGljbGVEZXNpZ25hdGlvbjogICAgICAgbnVsbCB8IHN0cmluZztcbiAgICB0eXBlOiAgICAgICAgICAgICAgICAgICAgIERpdmlzaW9uVHlwZTtcbiAgICBhdmFudF9BX0FwcmVzOiAgICAgICAgICAgIEF2YW50QUFwcmVzO1xuICAgIGRpdmlzaW9uUmF0dGFjaGVlOiAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGFydGljbGVBZGRpdGlvbm5lbDogICAgICAgc3RyaW5nO1xuICAgIGNoYXBpdHJlQWRkaXRpb25uZWw6ICAgICAgc3RyaW5nO1xuICAgIHVybERpdmlzaW9uVGV4dGVWaXNlOiAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBBdmFudEFBcHJlcyB7XG4gICAgQSA9IFwiQVwiLFxuICAgIEFwcsOocyA9IFwiQXByw6hzXCIsXG4gICAgQXZhbnQgPSBcIkF2YW50XCIsXG59XG5cbmV4cG9ydCBlbnVtIERpdmlzaW9uVHlwZSB7XG4gICAgQW5uZXhlID0gXCJBTk5FWEVcIixcbiAgICBBcnRpY2xlID0gXCJBUlRJQ0xFXCIsXG4gICAgQ2hhcGl0cmUgPSBcIkNIQVBJVFJFXCIsXG4gICAgVGl0cmUgPSBcIlRJVFJFXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWlzc2lvblZpc2VlIHtcbiAgICBjb2RlRXRhdDogICAgICAgICAgQ29kZUV0YXQ7XG4gICAgY29kZU1pc3Npb25NaW5lZmk6IHN0cmluZztcbiAgICBsaWJlbGxlTWlzc2lvbjogICAgc3RyaW5nO1xuICAgIG1pc3Npb25SZWY6ICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIENvZGVFdGF0IHtcbiAgICBCID0gXCJCXCIsXG4gICAgQyA9IFwiQ1wiLFxuICAgIEQgPSBcIkRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXByZXNlbnRhdGlvbnMge1xuICAgIHJlcHJlc2VudGF0aW9uOiBSZXByZXNlbnRhdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXByZXNlbnRhdGlvbiB7XG4gICAgbm9tOiAgICAgICAgICAgICAgICAgICAgIE5vbTtcbiAgICB0eXBlTWltZTogICAgICAgICAgICAgICAgVHlwZU1JTUU7XG4gICAgc3RhdHV0UmVwcmVzZW50YXRpb246ICAgIFN0YXR1dFJlcHJlc2VudGF0aW9uO1xuICAgIHJlcFNvdXJjZTogICAgICAgICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3M7XG4gICAgb2Zmc2V0OiAgICAgICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcztcbiAgICBjb250ZW51OiAgICAgICAgICAgICAgICAgQ29udGVudTtcbiAgICBkYXRlRGlzcG9SZXByZXNlbnRhdGlvbjogQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnUge1xuICAgIGRvY3VtZW50VVJJOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIE5vbSB7XG4gICAgUERGID0gXCJQREZcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXRSZXByZXNlbnRhdGlvbiB7XG4gICAgdmVyYmF0aW06ICAgICAgIHN0cmluZztcbiAgICBjYW5vbmlxdWU6ICAgICAgc3RyaW5nO1xuICAgIG9mZmljaWVsbGU6ICAgICBzdHJpbmc7XG4gICAgdHJhbnNjcmlwdGlvbjogIHN0cmluZztcbiAgICBlbnJlZ2lzdHJlbWVudDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVNSU1FIHtcbiAgICB0eXBlOiAgICBUeXBlTUlNRVR5cGU7XG4gICAgc3ViVHlwZTogTm9tO1xufVxuXG5leHBvcnQgZW51bSBUeXBlTUlNRVR5cGUge1xuICAgIEFwcGxpY2F0aW9uID0gXCJhcHBsaWNhdGlvblwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25hdGFpcmVzIHtcbiAgICBhdXRldXI6ICAgICAgICBBdXRldXI7XG4gICAgY29zaWduYXRhaXJlczogQ29zaWduYXRhaXJlcztcbiAgICBzdWZmaXhlOiAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgbGliZWxsZTogICAgICAgbnVsbCB8IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRldXIge1xuICAgIHR5cGVBdXRldXI6ICAgICAgICAgICAgICAgIFR5cGVBdXRldXI7XG4gICAgZ291dmVybmVtZW50UmVmOiAgICAgICAgICAgQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xuICAgIGFjdGV1clJlZjogICAgICAgICAgICAgICAgIEFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzcyB8IHN0cmluZztcbiAgICBncm91cGVQb2xpdGlxdWVSZWY6ICAgICAgICBBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3MgfCBzdHJpbmc7XG4gICAgYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZVJlZjogQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgZW51bSBUeXBlQXV0ZXVyIHtcbiAgICBEw6lwdXTDqSA9IFwiRMOpcHV0w6lcIixcbiAgICBHb3V2ZXJuZW1lbnQgPSBcIkdvdXZlcm5lbWVudFwiLFxuICAgIFJhcHBvcnRldXIgPSBcIlJhcHBvcnRldXJcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb3NpZ25hdGFpcmVzIHtcbiAgICBcIkB4bWxuczp4c2lcIj86IHN0cmluZztcbiAgICBcIkB4c2k6bmlsXCI/OiAgIHN0cmluZztcbiAgICBhY3RldXJSZWY/OiAgICBzdHJpbmdbXSB8IHN0cmluZztcbn1cblxuLy8gQ29udmVydHMgSlNPTiBzdHJpbmdzIHRvL2Zyb20geW91ciB0eXBlc1xuLy8gYW5kIGFzc2VydHMgdGhlIHJlc3VsdHMgb2YgSlNPTi5wYXJzZSBhdCBydW50aW1lXG5leHBvcnQgY2xhc3MgQ29udmVydCB7XG4gICAgcHVibGljIHN0YXRpYyB0b0FtZW5kZW1lbnRzKGpzb246IHN0cmluZyk6IEFtZW5kZW1lbnRzIHtcbiAgICAgICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkFtZW5kZW1lbnRzXCIpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFtZW5kZW1lbnRzVG9Kc29uKHZhbHVlOiBBbWVuZGVtZW50cyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJBbWVuZGVtZW50c1wiKSksIG51bGwsIDIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgdG9UZXh0ZUxlZ2lzbGF0aWYoanNvbjogc3RyaW5nKTogVGV4dGVMZWdpc2xhdGlmIHtcbiAgICAgICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIlRleHRlTGVnaXNsYXRpZlwiKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyB0ZXh0ZUxlZ2lzbGF0aWZUb0pzb24odmFsdWU6IFRleHRlTGVnaXNsYXRpZik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpLCBudWxsLCAyKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRvQW1lbmRlbWVudFdyYXBwZXIoanNvbjogc3RyaW5nKTogQW1lbmRlbWVudFdyYXBwZXIge1xuICAgICAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiQW1lbmRlbWVudFdyYXBwZXJcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYW1lbmRlbWVudFdyYXBwZXJUb0pzb24odmFsdWU6IEFtZW5kZW1lbnRXcmFwcGVyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIkFtZW5kZW1lbnRXcmFwcGVyXCIpKSwgbnVsbCwgMik7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSA9ICcnKTogbmV2ZXIge1xuICAgIGlmIChrZXkpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYEludmFsaWQgdmFsdWUgZm9yIGtleSBcIiR7a2V5fVwiLiBFeHBlY3RlZCB0eXBlICR7SlNPTi5zdHJpbmdpZnkodHlwKX0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KHZhbCl9YCk7XG4gICAgfVxuICAgIHRocm93IEVycm9yKGBJbnZhbGlkIHZhbHVlICR7SlNPTi5zdHJpbmdpZnkodmFsKX0gZm9yIHR5cGUgJHtKU09OLnN0cmluZ2lmeSh0eXApfWAsICk7XG59XG5cbmZ1bmN0aW9uIGpzb25Ub0pTUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXAuanNvblRvSlMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBtYXA6IGFueSA9IHt9O1xuICAgICAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiBtYXBbcC5qc29uXSA9IHsga2V5OiBwLmpzLCB0eXA6IHAudHlwIH0pO1xuICAgICAgICB0eXAuanNvblRvSlMgPSBtYXA7XG4gICAgfVxuICAgIHJldHVybiB0eXAuanNvblRvSlM7XG59XG5cbmZ1bmN0aW9uIGpzVG9KU09OUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXAuanNUb0pTT04gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBtYXA6IGFueSA9IHt9O1xuICAgICAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiBtYXBbcC5qc10gPSB7IGtleTogcC5qc29uLCB0eXA6IHAudHlwIH0pO1xuICAgICAgICB0eXAuanNUb0pTT04gPSBtYXA7XG4gICAgfVxuICAgIHJldHVybiB0eXAuanNUb0pTT047XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybSh2YWw6IGFueSwgdHlwOiBhbnksIGdldFByb3BzOiBhbnksIGtleTogYW55ID0gJycpOiBhbnkge1xuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXA6IHN0cmluZywgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodHlwZW9mIHR5cCA9PT0gdHlwZW9mIHZhbCkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgICAgICBjb25zdCBsID0gdHlwcy5sZW5ndGg7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB0eXAgPSB0eXBzW2ldO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcyk7XG4gICAgICAgICAgICB9IGNhdGNoIChfKSB7fVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1FbnVtKGNhc2VzOiBzdHJpbmdbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAoY2FzZXMuaW5kZXhPZih2YWwpICE9PSAtMSkgcmV0dXJuIHZhbDtcbiAgICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShjYXNlcywgdmFsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1BcnJheSh0eXA6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgICAgICAvLyB2YWwgbXVzdCBiZSBhbiBhcnJheSB3aXRoIG5vIGludmFsaWQgZWxlbWVudHNcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiBpbnZhbGlkVmFsdWUoXCJhcnJheVwiLCB2YWwpO1xuICAgICAgICByZXR1cm4gdmFsLm1hcChlbCA9PiB0cmFuc2Zvcm0oZWwsIHR5cCwgZ2V0UHJvcHMpKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZCA9IG5ldyBEYXRlKHZhbCk7XG4gICAgICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJEYXRlXCIsIHZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGQ7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gdHJhbnNmb3JtT2JqZWN0KHByb3BzOiB7IFtrOiBzdHJpbmddOiBhbnkgfSwgYWRkaXRpb25hbDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJvYmplY3RcIiwgdmFsKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9O1xuICAgICAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwcm9wcykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV07XG4gICAgICAgICAgICBjb25zdCB2ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbCwga2V5KSA/IHZhbFtrZXldIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgcmVzdWx0W3Byb3Aua2V5XSA9IHRyYW5zZm9ybSh2LCBwcm9wLnR5cCwgZ2V0UHJvcHMsIHByb3Aua2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocHJvcHMsIGtleSkpIHtcbiAgICAgICAgICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGlmICh0eXAgPT09IFwiYW55XCIpIHJldHVybiB2YWw7XG4gICAgaWYgKHR5cCA9PT0gbnVsbCkge1xuICAgICAgICBpZiAodmFsID09PSBudWxsKSByZXR1cm4gdmFsO1xuICAgICAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB9XG4gICAgaWYgKHR5cCA9PT0gZmFsc2UpIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpO1xuICAgIHdoaWxlICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiICYmIHR5cC5yZWYgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdO1xuICAgIH1cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0eXApKSByZXR1cm4gdHJhbnNmb3JtRW51bSh0eXAsIHZhbCk7XG4gICAgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKSA/IHRyYW5zZm9ybVVuaW9uKHR5cC51bmlvbk1lbWJlcnMsIHZhbClcbiAgICAgICAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwiYXJyYXlJdGVtc1wiKSAgICA/IHRyYW5zZm9ybUFycmF5KHR5cC5hcnJheUl0ZW1zLCB2YWwpXG4gICAgICAgICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcInByb3BzXCIpICAgICAgICAgPyB0cmFuc2Zvcm1PYmplY3QoZ2V0UHJvcHModHlwKSwgdHlwLmFkZGl0aW9uYWwsIHZhbClcbiAgICAgICAgICAgIDogaW52YWxpZFZhbHVlKHR5cCwgdmFsKTtcbiAgICB9XG4gICAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbCk7XG4gICAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbCk7XG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gICAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcyk7XG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKTtcbn1cblxuZnVuY3Rpb24gYSh0eXA6IGFueSkge1xuICAgIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9O1xufVxuXG5mdW5jdGlvbiB1KC4uLnR5cHM6IGFueVtdKSB7XG4gICAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH07XG59XG5cbmZ1bmN0aW9uIG8ocHJvcHM6IGFueVtdLCBhZGRpdGlvbmFsOiBhbnkpIHtcbiAgICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9O1xufVxuXG4vLyBmdW5jdGlvbiBtKGFkZGl0aW9uYWw6IGFueSkge1xuLy8gICAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9O1xuLy8gfVxuXG5mdW5jdGlvbiByKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiB7IHJlZjogbmFtZSB9O1xufVxuXG5jb25zdCB0eXBlTWFwOiBhbnkgPSB7XG4gICAgXCJBbWVuZGVtZW50c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsIGpzOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsIHR5cDogYShyKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlRleHRlTGVnaXNsYXRpZlwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInJlZlRleHRlTGVnaXNsYXRpZlwiLCBqczogXCJyZWZUZXh0ZUxlZ2lzbGF0aWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhbWVuZGVtZW50c1wiLCBqczogXCJhbWVuZGVtZW50c1wiLCB0eXA6IHIoXCJBbWVuZGVtZW50c0NsYXNzXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudHNDbGFzc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRcIiwganM6IFwiYW1lbmRlbWVudFwiLCB0eXA6IGEocihcIkFtZW5kZW1lbnRcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudFdyYXBwZXJcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJhbWVuZGVtZW50XCIsIGpzOiBcImFtZW5kZW1lbnRcIiwgdHlwOiByKFwiQW1lbmRlbWVudFwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFtZW5kZW1lbnRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnNcIiwganM6IFwiQHhtbG5zXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNocm9ub3RhZ1wiLCBqczogXCJjaHJvbm90YWdcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJsZWdpc2xhdHVyZVwiLCBqczogXCJsZWdpc2xhdHVyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImlkZW50aWZpY2F0aW9uXCIsIGpzOiBcImlkZW50aWZpY2F0aW9uXCIsIHR5cDogcihcIklkZW50aWZpY2F0aW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJleGFtZW5SZWZcIiwganM6IFwiZXhhbWVuUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwidGV4dGVMZWdpc2xhdGlmUmVmXCIsIGpzOiBcInRleHRlTGVnaXNsYXRpZlJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInRyaUFtZW5kZW1lbnRcIiwganM6IFwidHJpQW1lbmRlbWVudFwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNhcmRpbmFsaXRlQW1kdE11bHRpcGxlc1wiLCBqczogXCJjYXJkaW5hbGl0ZUFtZHRNdWx0aXBsZXNcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhbWVuZGVtZW50UGFyZW50UmVmXCIsIGpzOiBcImFtZW5kZW1lbnRQYXJlbnRSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJzaWduYXRhaXJlc1wiLCBqczogXCJzaWduYXRhaXJlc1wiLCB0eXA6IHIoXCJTaWduYXRhaXJlc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwicG9pbnRldXJGcmFnbWVudFRleHRlXCIsIGpzOiBcInBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiLCB0eXA6IHIoXCJQb2ludGV1ckZyYWdtZW50VGV4dGVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvcnBzXCIsIGpzOiBcImNvcnBzXCIsIHR5cDogcihcIkNvcnBzXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjeWNsZURlVmllXCIsIGpzOiBcImN5Y2xlRGVWaWVcIiwgdHlwOiByKFwiQ3ljbGVEZVZpZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwicmVwcmVzZW50YXRpb25zXCIsIGpzOiBcInJlcHJlc2VudGF0aW9uc1wiLCB0eXA6IHUocihcIlJlcHJlc2VudGF0aW9uc1wiKSwgbnVsbCkgfSxcbiAgICAgICAgeyBqc29uOiBcInNlYW5jZURpc2N1c3Npb25SZWZcIiwganM6IFwic2VhbmNlRGlzY3Vzc2lvblJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFydGljbGU5OVwiLCBqczogXCJhcnRpY2xlOTlcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJsb2lSZWZlcmVuY2VcIiwganM6IFwibG9pUmVmZXJlbmNlXCIsIHR5cDogcihcIkxvaVJlZmVyZW5jZVwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzY3Vzc2lvbkNvbW11bmVcIiwganM6IFwiZGlzY3Vzc2lvbkNvbW11bmVcIiwgdHlwOiByKFwiRGlzY3Vzc2lvblwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzY3Vzc2lvbklkZW50aXF1ZVwiLCBqczogXCJkaXNjdXNzaW9uSWRlbnRpcXVlXCIsIHR5cDogcihcIkRpc2N1c3Npb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpXCIsIGpzOiBcImFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpXCIsIHR5cDogcihcIkFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ29ycHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjYXJ0b3VjaGVJbmZvcm1hdGlmXCIsIGpzOiBcImNhcnRvdWNoZUluZm9ybWF0aWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImNvbnRlbnVBdXRldXJcIiwganM6IFwiY29udGVudUF1dGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiQ29udGVudUF1dGV1clwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb250ZW51QXV0ZXVyXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZlwiLCBqczogXCJkaXNwb3NpdGlmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdmFudEFwcGVsXCIsIGpzOiBcImF2YW50QXBwZWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkF2YW50QXBwZWxcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJleHBvc2VTb21tYWlyZVwiLCBqczogXCJleHBvc2VTb21tYWlyZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYW5uZXhlRXhwb3NlU29tbWFpcmVcIiwganM6IFwiYW5uZXhlRXhwb3NlU29tbWFpcmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIsIGpzOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiLCBqczogXCJkaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBdmFudEFwcGVsXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGlzcG9zaXRpZlwiLCBqczogXCJkaXNwb3NpdGlmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJsaXN0ZVByb2dyYW1tZXNcIiwganM6IFwibGlzdGVQcm9ncmFtbWVzXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRkxpc3RlUHJvZ3JhbW1lc1wiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcInNvbGRlQUVcIiwganM6IFwic29sZGVBRVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwic29sZGVDUFwiLCBqczogXCJzb2xkZUNQXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjcEVnYWxBZVwiLCBqczogXCJjcEVnYWxBZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRkxpc3RlUHJvZ3JhbW1lc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInByb2dyYW1tZVwiLCBqczogXCJwcm9ncmFtbWVcIiwgdHlwOiBhKHIoXCJQdXJwbGVQcm9ncmFtbWVcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUHVycGxlUHJvZ3JhbW1lXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwicHJvZ3JhbW1lUmVmXCIsIGpzOiBcInByb2dyYW1tZVJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYWN0aW9uXCIsIGpzOiBcImFjdGlvblwiLCB0eXA6IHIoXCJBY3Rpb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpZ25lc0NyZWRpdHNcIiwganM6IFwibGlnbmVzQ3JlZGl0c1wiLCB0eXA6IHIoXCJQdXJwbGVMaWduZXNDcmVkaXRzXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUHVycGxlTGlnbmVzQ3JlZGl0c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpZ25lQ3JlZGl0XCIsIGpzOiBcImxpZ25lQ3JlZGl0XCIsIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiTGlnbmVDcmVkaXRDbGFzc1wiKSksIHIoXCJMaWduZUNyZWRpdENsYXNzXCIpKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJMaWduZUNyZWRpdENsYXNzXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiaWRcIiwganM6IFwiaWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJjcmVkaXRQYWllbWVudFwiLCBqczogXCJjcmVkaXRQYWllbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibGlzdGVQcm9ncmFtbWVzXCIsIGpzOiBcImxpc3RlUHJvZ3JhbW1lc1wiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSTGlzdGVQcm9ncmFtbWVzXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwidG90YWxBRVwiLCBqczogXCJ0b3RhbEFFXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUb3RhbFwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcInRvdGFsQ1BcIiwganM6IFwidG90YWxDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiVG90YWxcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJjcEVnYWxBZVwiLCBqczogXCJjcEVnYWxBZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlJMaXN0ZVByb2dyYW1tZXNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJwcm9ncmFtbWVcIiwganM6IFwicHJvZ3JhbW1lXCIsIHR5cDogYShyKFwiTGlnbmVDcmVkaXRFbGVtZW50XCIpKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkxpZ25lQ3JlZGl0TGlnbmVzQ3JlZGl0c1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpZ25lQ3JlZGl0XCIsIGpzOiBcImxpZ25lQ3JlZGl0XCIsIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiTGlnbmVDcmVkaXRFbGVtZW50XCIpKSwgcihcIkxpZ25lQ3JlZGl0RWxlbWVudFwiKSkpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTGlnbmVDcmVkaXRFbGVtZW50XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwicHJvZ3JhbW1lUmVmXCIsIGpzOiBcInByb2dyYW1tZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFN1cHBsZW1lbnRhaXJlXCIsIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmVcIiwganM6IFwiY3JlZGl0UGFpZW1lbnRTdXBwbGVtZW50YWlyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGVcIiwganM6IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudEFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50QW5udWxlXCIsIGpzOiBcImNyZWRpdFBhaWVtZW50QW5udWxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYWN0aW9uXCIsIGpzOiBcImFjdGlvblwiLCB0eXA6IHIoXCJBY3Rpb25cIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpZ25lc0NyZWRpdHNcIiwganM6IFwibGlnbmVzQ3JlZGl0c1wiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiTGlnbmVDcmVkaXRMaWduZXNDcmVkaXRzXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiaWRcIiwganM6IFwiaWRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJUb3RhbFwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInN1cHBsZW1lbnRhaXJlXCIsIGpzOiBcInN1cHBsZW1lbnRhaXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYW5udWxlXCIsIGpzOiBcImFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInNvbGRlXCIsIGpzOiBcInNvbGRlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkN5Y2xlRGVWaWVcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJkYXRlRGVwb3RcIiwganM6IFwiZGF0ZURlcG90XCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBEYXRlKSB9LFxuICAgICAgICB7IGpzb246IFwiZGF0ZVB1YmxpY2F0aW9uXCIsIGpzOiBcImRhdGVQdWJsaWNhdGlvblwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgRGF0ZSkgfSxcbiAgICAgICAgeyBqc29uOiBcInNvdW1pc0FydGljbGU0MFwiLCBqczogXCJzb3VtaXNBcnRpY2xlNDBcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJldGF0RGVzVHJhaXRlbWVudHNcIiwganM6IFwiZXRhdERlc1RyYWl0ZW1lbnRzXCIsIHR5cDogcihcIkV0YXRERVNUcmFpdGVtZW50c1wiKSB9LFxuICAgICAgICB7IGpzb246IFwiZGF0ZVNvcnRcIiwganM6IFwiZGF0ZVNvcnRcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIERhdGUpIH0sXG4gICAgICAgIHsganNvbjogXCJzb3J0XCIsIGpzOiBcInNvcnRcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIHIoXCJTb3J0RW51bVwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJFdGF0REVTVHJhaXRlbWVudHNcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJldGF0XCIsIGpzOiBcImV0YXRcIiwgdHlwOiByKFwiRXRhdFwiKSB9LFxuICAgICAgICB7IGpzb246IFwic291c0V0YXRcIiwganM6IFwic291c0V0YXRcIiwgdHlwOiByKFwiU291c0V0YXRcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJFdGF0XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiY29kZVwiLCBqczogXCJjb2RlXCIsIHR5cDogcihcIkNvZGVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHIoXCJMaWJlbGxlXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiU291c0V0YXRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvZGVcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlNvcnRFbnVtXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkRpc2N1c3Npb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJAeG1sbnM6eHNpXCIsIGpzOiBcIkB4bWxuczp4c2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcIkB4c2k6bmlsXCIsIGpzOiBcIkB4c2k6bmlsXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJpZERpc2N1c3Npb25cIiwganM6IFwiaWREaXNjdXNzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJ0eXBlUG9zaXRpb25cIiwganM6IFwidHlwZVBvc2l0aW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlUG9zaXRpb25cIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiSWRlbnRpZmljYXRpb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJudW1lcm9Mb25nXCIsIGpzOiBcIm51bWVyb0xvbmdcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJudW1lcm9PcmRyZURlcG90XCIsIGpzOiBcIm51bWVyb09yZHJlRGVwb3RcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJwcmVmaXhlT3JnYW5lRXhhbWVuXCIsIGpzOiBcInByZWZpeGVPcmdhbmVFeGFtZW5cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJudW1lcm9SZWN0XCIsIGpzOiBcIm51bWVyb1JlY3RcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiTG9pUmVmZXJlbmNlXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiQHhtbG5zOnhzaVwiLCBqczogXCJAeG1sbnM6eHNpXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJAeHNpOm5pbFwiLCBqczogXCJAeHNpOm5pbFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiY29kZUxvaVwiLCBqczogXCJjb2RlTG9pXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgbnVsbCwgXCJcIikpIH0sXG4gICAgICAgIHsganNvbjogXCJkaXZpc2lvbkNvZGVMb2lcIiwganM6IFwiZGl2aXNpb25Db2RlTG9pXCIsIHR5cDogdSh1bmRlZmluZWQsIHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgbnVsbCwgXCJcIikpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUG9pbnRldXJGcmFnbWVudFRleHRlXCI6IG8oW1xuICAgICAgICB7IGpzb246IFwicGFydGllQW1lbmRhYmxlUmVmXCIsIGpzOiBcInBhcnRpZUFtZW5kYWJsZVJlZlwiLCB0eXA6IHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpdmlzaW9uXCIsIGpzOiBcImRpdmlzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXZpc2lvblwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRTdGFuZGFyZFwiLCBqczogXCJhbWVuZGVtZW50U3RhbmRhcmRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkFtZW5kZW1lbnRTdGFuZGFyZFwiKSkgfSxcbiAgICAgICAgeyBqc29uOiBcIm1pc3Npb25WaXNlZVwiLCBqczogXCJtaXNzaW9uVmlzZWVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIk1pc3Npb25WaXNlZVwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBbWVuZGVtZW50U3RhbmRhcmRcIjogbyhbXG4gICAgICAgIHsganNvbjogXCJhbGluZWFcIiwganM6IFwiYWxpbmVhXCIsIHR5cDogcihcIkFsaW5lYVwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkFsaW5lYVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImF2YW50X0FfQXByZXNcIiwganM6IFwiYXZhbnRfQV9BcHJlc1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIG51bGwsIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwibnVtZXJvXCIsIGpzOiBcIm51bWVyb1wiLCB0eXA6IHUodW5kZWZpbmVkLCB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpKSB9LFxuICAgICAgICB7IGpzb246IFwiYWxpbmVhRGVzaWduYXRpb25cIiwganM6IFwiYWxpbmVhRGVzaWduYXRpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJEaXZpc2lvblwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInRpdHJlXCIsIGpzOiBcInRpdHJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwiYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlXCIsIGpzOiBcImFydGljbGVEZXNpZ25hdGlvbkNvdXJ0ZVwiLCB0eXA6IHUobnVsbCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFydGljbGVEZXNpZ25hdGlvblwiLCBqczogXCJhcnRpY2xlRGVzaWduYXRpb25cIiwgdHlwOiB1KG51bGwsIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiRGl2aXNpb25UeXBlXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdmFudF9BX0FwcmVzXCIsIGpzOiBcImF2YW50X0FfQXByZXNcIiwgdHlwOiByKFwiQXZhbnRBQXByZXNcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsIGpzOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYXJ0aWNsZUFkZGl0aW9ubmVsXCIsIGpzOiBcImFydGljbGVBZGRpdGlvbm5lbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNoYXBpdHJlQWRkaXRpb25uZWxcIiwganM6IFwiY2hhcGl0cmVBZGRpdGlvbm5lbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcInVybERpdmlzaW9uVGV4dGVWaXNlXCIsIGpzOiBcInVybERpdmlzaW9uVGV4dGVWaXNlXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIk1pc3Npb25WaXNlZVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImNvZGVFdGF0XCIsIGpzOiBcImNvZGVFdGF0XCIsIHR5cDogcihcIkNvZGVFdGF0XCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb2RlTWlzc2lvbk1pbmVmaVwiLCBqczogXCJjb2RlTWlzc2lvbk1pbmVmaVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImxpYmVsbGVNaXNzaW9uXCIsIGpzOiBcImxpYmVsbGVNaXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgICB7IGpzb246IFwibWlzc2lvblJlZlwiLCBqczogXCJtaXNzaW9uUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIlJlcHJlc2VudGF0aW9uc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInJlcHJlc2VudGF0aW9uXCIsIGpzOiBcInJlcHJlc2VudGF0aW9uXCIsIHR5cDogcihcIlJlcHJlc2VudGF0aW9uXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiUmVwcmVzZW50YXRpb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJub21cIiwganM6IFwibm9tXCIsIHR5cDogcihcIk5vbVwiKSB9LFxuICAgICAgICB7IGpzb246IFwidHlwZU1pbWVcIiwganM6IFwidHlwZU1pbWVcIiwgdHlwOiByKFwiVHlwZU1JTUVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsIGpzOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsIHR5cDogcihcIlN0YXR1dFJlcHJlc2VudGF0aW9uXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJyZXBTb3VyY2VcIiwganM6IFwicmVwU291cmNlXCIsIHR5cDogcihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwib2Zmc2V0XCIsIGpzOiBcIm9mZnNldFwiLCB0eXA6IHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImNvbnRlbnVcIiwganM6IFwiY29udGVudVwiLCB0eXA6IHIoXCJDb250ZW51XCIpIH0sXG4gICAgICAgIHsganNvbjogXCJkYXRlRGlzcG9SZXByZXNlbnRhdGlvblwiLCBqczogXCJkYXRlRGlzcG9SZXByZXNlbnRhdGlvblwiLCB0eXA6IHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJDb250ZW51XCI6IG8oW1xuICAgICAgICB7IGpzb246IFwiZG9jdW1lbnRVUklcIiwganM6IFwiZG9jdW1lbnRVUklcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiU3RhdHV0UmVwcmVzZW50YXRpb25cIjogbyhbXG4gICAgICAgIHsganNvbjogXCJ2ZXJiYXRpbVwiLCBqczogXCJ2ZXJiYXRpbVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgICAgeyBqc29uOiBcImNhbm9uaXF1ZVwiLCBqczogXCJjYW5vbmlxdWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJvZmZpY2llbGxlXCIsIGpzOiBcIm9mZmljaWVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJ0cmFuc2NyaXB0aW9uXCIsIGpzOiBcInRyYW5zY3JpcHRpb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgICAgIHsganNvbjogXCJlbnJlZ2lzdHJlbWVudFwiLCBqczogXCJlbnJlZ2lzdHJlbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJUeXBlTUlNRVwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInR5cGVcIiwganM6IFwidHlwZVwiLCB0eXA6IHIoXCJUeXBlTUlNRVR5cGVcIikgfSxcbiAgICAgICAgeyBqc29uOiBcInN1YlR5cGVcIiwganM6IFwic3ViVHlwZVwiLCB0eXA6IHIoXCJOb21cIikgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJTaWduYXRhaXJlc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcImF1dGV1clwiLCBqczogXCJhdXRldXJcIiwgdHlwOiByKFwiQXV0ZXVyXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJjb3NpZ25hdGFpcmVzXCIsIGpzOiBcImNvc2lnbmF0YWlyZXNcIiwgdHlwOiByKFwiQ29zaWduYXRhaXJlc1wiKSB9LFxuICAgICAgICB7IGpzb246IFwic3VmZml4ZVwiLCBqczogXCJzdWZmaXhlXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogdShudWxsLCBcIlwiKSB9LFxuICAgIF0sIGZhbHNlKSxcbiAgICBcIkF1dGV1clwiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcInR5cGVBdXRldXJcIiwganM6IFwidHlwZUF1dGV1clwiLCB0eXA6IHIoXCJUeXBlQXV0ZXVyXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJnb3V2ZXJuZW1lbnRSZWZcIiwganM6IFwiZ291dmVybmVtZW50UmVmXCIsIHR5cDogdShyKFwiQW1lbmRlbWVudFBhcmVudFJlZkNsYXNzXCIpLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiYWN0ZXVyUmVmXCIsIGpzOiBcImFjdGV1clJlZlwiLCB0eXA6IHUocihcIkFtZW5kZW1lbnRQYXJlbnRSZWZDbGFzc1wiKSwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImdyb3VwZVBvbGl0aXF1ZVJlZlwiLCBqczogXCJncm91cGVQb2xpdGlxdWVSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgICAgIHsganNvbjogXCJhdXRldXJSYXBwb3J0ZXVyT3JnYW5lUmVmXCIsIGpzOiBcImF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWZcIiwgdHlwOiB1KHIoXCJBbWVuZGVtZW50UGFyZW50UmVmQ2xhc3NcIiksIFwiXCIpIH0sXG4gICAgXSwgZmFsc2UpLFxuICAgIFwiQ29zaWduYXRhaXJlc1wiOiBvKFtcbiAgICAgICAgeyBqc29uOiBcIkB4bWxuczp4c2lcIiwganM6IFwiQHhtbG5zOnhzaVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgICB7IGpzb246IFwiQHhzaTpuaWxcIiwganM6IFwiQHhzaTpuaWxcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgICAgeyBqc29uOiBcImFjdGV1clJlZlwiLCBqczogXCJhY3RldXJSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgdShhKFwiXCIpLCBcIlwiKSkgfSxcbiAgICBdLCBmYWxzZSksXG4gICAgXCJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVwiOiBbXG4gICAgICAgIFwiQWNjb3JkXCIsXG4gICAgICAgIFwiU2FucyBvYmpldFwiLFxuICAgIF0sXG4gICAgXCJBY3Rpb25cIjogW1xuICAgICAgICBcImNyw6lhdGlvblwiLFxuICAgICAgICBcIm1vZGlmaWNhdGlvblwiLFxuICAgICAgICBcInN1cHByZXNzaW9uXCIsXG4gICAgXSxcbiAgICBcIkNvZGVcIjogW1xuICAgICAgICBcIkFDXCIsXG4gICAgICAgIFwiQVRcIixcbiAgICAgICAgXCJESVwiLFxuICAgICAgICBcImVmZmFjw6lcIixcbiAgICAgICAgXCJFUlwiLFxuICAgICAgICBcIklSXCIsXG4gICAgICAgIFwiSVJSMTI3XCIsXG4gICAgICAgIFwiSVJSMjBcIixcbiAgICAgICAgXCJJUlIzN1wiLFxuICAgICAgICBcIklSUjM4XCIsXG4gICAgICAgIFwiSVJSNDFcIixcbiAgICAgICAgXCJJUlI0MlwiLFxuICAgICAgICBcIklSUjQ1XCIsXG4gICAgICAgIFwiSVJSNDhcIixcbiAgICAgICAgXCJJUlI1M1wiLFxuICAgICAgICBcIklSUkFJXCIsXG4gICAgICAgIFwiSVJSRFwiLFxuICAgICAgICBcIklSUkhEXCIsXG4gICAgICAgIFwiSVJSU0FcIixcbiAgICAgICAgXCJSXCIsXG4gICAgICAgIFwiUlRcIixcbiAgICAgICAgXCJUXCIsXG4gICAgXSxcbiAgICBcIkxpYmVsbGVcIjogW1xuICAgICAgICBcIkEgZGlzY3V0ZXJcIixcbiAgICAgICAgXCJBIGTDqXBvc2VyXCIsXG4gICAgICAgIFwiRGlzY3V0w6lcIixcbiAgICAgICAgXCJlZmZhY8OpXCIsXG4gICAgICAgIFwiRW4gcmVjZXZhYmlsaXTDqVwiLFxuICAgICAgICBcIkVuIHRyYWl0ZW1lbnRcIixcbiAgICAgICAgXCJJcnJlY2V2YWJsZVwiLFxuICAgICAgICBcIklycmVjZXZhYmxlIDQwXCIsXG4gICAgICAgIFwiUmV0aXLDqVwiLFxuICAgIF0sXG4gICAgXCJTb3J0RW51bVwiOiBbXG4gICAgICAgIFwiQWRvcHTDqVwiLFxuICAgICAgICBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqVwiLFxuICAgICAgICBcIkF1dHJlcyBpcnIgTE9MRlwiLFxuICAgICAgICBcIkF1dHJlcyBpcnIgTE9MRlNTXCIsXG4gICAgICAgIFwiQ2F2YWxpZXIgKDQ1KVwiLFxuICAgICAgICBcIkNhdmFsaWVyIGJ1ZGfDqXRhaXJlXCIsXG4gICAgICAgIFwiQ2F2YWxpZXIgc29jaWFsXCIsXG4gICAgICAgIFwiQ2hhbXAgZGUgbCdoYWJpbGl0YXRpb24gKDM4KVwiLFxuICAgICAgICBcIkNoYXJnZVwiLFxuICAgICAgICBcIkNNUCAoNDUpXCIsXG4gICAgICAgIFwiQ3LDqWRpdHNcIixcbiAgICAgICAgXCJEaXNwb3NpdGlvbiByw6lnbGVtZW50YWlyZSAoMzcpXCIsXG4gICAgICAgIFwiRG9tYWluZSBkZSBsYSBsb2kgKDQxKVwiLFxuICAgICAgICBcIkRvbWFpbmUgbG9pIG9yZ2FuaXF1ZSAoMTI3KVwiLFxuICAgICAgICBcIkRvdWJsb25cIixcbiAgICAgICAgXCJFbnRvbm5vaXIgKDQ1KVwiLFxuICAgICAgICBcIkdhZ2VcIixcbiAgICAgICAgXCJIb3JzLWTDqWxhaXNcIixcbiAgICAgICAgXCJJbmpvbmN0aW9uICgyMClcIixcbiAgICAgICAgXCJJcnIgZW4gcHJlbWnDqHJlIHBhcnRpZVwiLFxuICAgICAgICBcIklyciBlbiBzZWNvbmRlIHBhcnRpZVwiLFxuICAgICAgICBcIkxPTEZcIixcbiAgICAgICAgXCJMT0xGU1NcIixcbiAgICAgICAgXCJOb24gc291dGVudVwiLFxuICAgICAgICBcIk9yZHJlIGR1IGpvdXIgKDQ4KVwiLFxuICAgICAgICBcIlJcIixcbiAgICAgICAgXCJSYXRpZmljYXRpb24gdHJhaXTDqSAoNTMpXCIsXG4gICAgICAgIFwiUmVqZXTDqVwiLFxuICAgICAgICBcIlJldGlyw6lcIixcbiAgICAgICAgXCJSZXRpcsOpIGFwcsOocyBwdWJsaWNhdGlvblwiLFxuICAgICAgICBcIlJldGlyw6kgYXZhbnQgcHVibGljYXRpb25cIixcbiAgICAgICAgXCJTYXRpc2ZhaXQgb3UgaW5vcMOpcmFudCAoNDIpXCIsXG4gICAgICAgIFwiU291cy1hbWVuZGVtZW50ICg5OClcIixcbiAgICAgICAgXCJUb21iw6lcIixcbiAgICBdLFxuICAgIFwiVHlwZVBvc2l0aW9uXCI6IFtcbiAgICAgICAgXCJEZXJuaWVyXCIsXG4gICAgICAgIFwiTWlsaWV1XCIsXG4gICAgICAgIFwiUHJlbWllclwiLFxuICAgIF0sXG4gICAgXCJBdmFudEFBcHJlc1wiOiBbXG4gICAgICAgIFwiQVwiLFxuICAgICAgICBcIkFwcsOoc1wiLFxuICAgICAgICBcIkF2YW50XCIsXG4gICAgXSxcbiAgICBcIkRpdmlzaW9uVHlwZVwiOiBbXG4gICAgICAgIFwiQU5ORVhFXCIsXG4gICAgICAgIFwiQVJUSUNMRVwiLFxuICAgICAgICBcIkNIQVBJVFJFXCIsXG4gICAgICAgIFwiVElUUkVcIixcbiAgICBdLFxuICAgIFwiQ29kZUV0YXRcIjogW1xuICAgICAgICBcIkJcIixcbiAgICAgICAgXCJDXCIsXG4gICAgICAgIFwiRFwiLFxuICAgIF0sXG4gICAgXCJOb21cIjogW1xuICAgICAgICBcIlBERlwiLFxuICAgIF0sXG4gICAgXCJUeXBlTUlNRVR5cGVcIjogW1xuICAgICAgICBcImFwcGxpY2F0aW9uXCIsXG4gICAgXSxcbiAgICBcIlR5cGVBdXRldXJcIjogW1xuICAgICAgICBcIkTDqXB1dMOpXCIsXG4gICAgICAgIFwiR291dmVybmVtZW50XCIsXG4gICAgICAgIFwiUmFwcG9ydGV1clwiLFxuICAgIF0sXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0lBNENZQSxnQzs7O1dBQUFBLGdDO0VBQUFBLGdDO0VBQUFBLGdDO0dBQUFBLGdDLGdEQUFBQSxnQzs7SUFzREFDLE07OztXQUFBQSxNO0VBQUFBLE07RUFBQUEsTTtFQUFBQSxNO0dBQUFBLE0sc0JBQUFBLE07O0lBMEVBQyxJOzs7V0FBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0VBQUFBLEk7RUFBQUEsSTtFQUFBQSxJO0dBQUFBLEksb0JBQUFBLEk7O0lBeUJBQyxPOzs7V0FBQUEsTztFQUFBQSxPO0VBQUFBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87RUFBQUEsTztHQUFBQSxPLHVCQUFBQSxPOztJQW1CQUMsUTs7O1dBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7RUFBQUEsUTtHQUFBQSxRLHdCQUFBQSxROztJQTRDQUMsWTs7O1dBQUFBLFk7RUFBQUEsWTtFQUFBQSxZO0VBQUFBLFk7R0FBQUEsWSw0QkFBQUEsWTs7SUFtREFDLFc7OztXQUFBQSxXO0VBQUFBLFc7RUFBQUEsVztFQUFBQSxXO0dBQUFBLFcsMkJBQUFBLFc7O0lBTUFDLFk7OztXQUFBQSxZO0VBQUFBLFk7RUFBQUEsWTtFQUFBQSxZO0VBQUFBLFk7R0FBQUEsWSw0QkFBQUEsWTs7SUFjQUMsUTs7O1dBQUFBLFE7RUFBQUEsUTtFQUFBQSxRO0VBQUFBLFE7R0FBQUEsUSx3QkFBQUEsUTs7SUF3QkFDLEc7OztXQUFBQSxHO0VBQUFBLEc7R0FBQUEsRyxtQkFBQUEsRzs7SUFpQkFDLFk7OztXQUFBQSxZO0VBQUFBLFk7R0FBQUEsWSw0QkFBQUEsWTs7SUFtQkFDLFU7OztXQUFBQSxVO0VB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