@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.SortAmendement = exports.Nom = exports.EtatAmendementLibelle = exports.EtatAmendementCode = exports.DivisionType = exports.Convert = exports.CodeEtat = 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 { Convert, Amendement, Amendements } from "./file";
@@ -7,22 +54,25 @@
7
54
  //
8
55
  // These functions will throw an error if the JSON doesn't
9
56
  // match the expected interface, even if the JSON is valid.
10
- export let AccordGouvernementDepotHorsDelai;
57
+ var AccordGouvernementDepotHorsDelai;
58
+ exports.AccordGouvernementDepotHorsDelai = AccordGouvernementDepotHorsDelai;
11
59
 
12
60
  (function (AccordGouvernementDepotHorsDelai) {
13
61
  AccordGouvernementDepotHorsDelai["Accord"] = "Accord";
14
62
  AccordGouvernementDepotHorsDelai["SansObjet"] = "Sans objet";
15
- })(AccordGouvernementDepotHorsDelai || (AccordGouvernementDepotHorsDelai = {}));
63
+ })(AccordGouvernementDepotHorsDelai || (exports.AccordGouvernementDepotHorsDelai = AccordGouvernementDepotHorsDelai = {}));
16
64
 
17
- export let Action;
65
+ var Action;
66
+ exports.Action = Action;
18
67
 
19
68
  (function (Action) {
20
69
  Action["Cr\xE9ation"] = "cr\xE9ation";
21
70
  Action["Modification"] = "modification";
22
71
  Action["Suppression"] = "suppression";
23
- })(Action || (Action = {}));
72
+ })(Action || (exports.Action = Action = {}));
24
73
 
25
- export let EtatAmendementCode;
74
+ var EtatAmendementCode;
75
+ exports.EtatAmendementCode = EtatAmendementCode;
26
76
 
27
77
  (function (EtatAmendementCode) {
28
78
  EtatAmendementCode["AC"] = "AC";
@@ -47,9 +97,10 @@ export let EtatAmendementCode;
47
97
  EtatAmendementCode["R"] = "R";
48
98
  EtatAmendementCode["Rt"] = "RT";
49
99
  EtatAmendementCode["T"] = "T";
50
- })(EtatAmendementCode || (EtatAmendementCode = {}));
100
+ })(EtatAmendementCode || (exports.EtatAmendementCode = EtatAmendementCode = {}));
51
101
 
52
- export let EtatAmendementLibelle;
102
+ var EtatAmendementLibelle;
103
+ exports.EtatAmendementLibelle = EtatAmendementLibelle;
53
104
 
54
105
  (function (EtatAmendementLibelle) {
55
106
  EtatAmendementLibelle["ADiscuter"] = "A discuter";
@@ -61,9 +112,10 @@ export let EtatAmendementLibelle;
61
112
  EtatAmendementLibelle["Irrecevable"] = "Irrecevable";
62
113
  EtatAmendementLibelle["Irrecevable40"] = "Irrecevable 40";
63
114
  EtatAmendementLibelle["Retir\xE9"] = "Retir\xE9";
64
- })(EtatAmendementLibelle || (EtatAmendementLibelle = {}));
115
+ })(EtatAmendementLibelle || (exports.EtatAmendementLibelle = EtatAmendementLibelle = {}));
65
116
 
66
- export let SortAmendement;
117
+ var SortAmendement;
118
+ exports.SortAmendement = SortAmendement;
67
119
 
68
120
  (function (SortAmendement) {
69
121
  SortAmendement["Adopt\xE9"] = "Adopt\xE9";
@@ -100,103 +152,130 @@ export let SortAmendement;
100
152
  SortAmendement["SatisfaitOuInop\xE9rant42"] = "Satisfait ou inop\xE9rant (42)";
101
153
  SortAmendement["SousAmendement98"] = "Sous-amendement (98)";
102
154
  SortAmendement["Tomb\xE9"] = "Tomb\xE9";
103
- })(SortAmendement || (SortAmendement = {}));
155
+ })(SortAmendement || (exports.SortAmendement = SortAmendement = {}));
104
156
 
105
- export let TypePosition;
157
+ var TypePosition;
158
+ exports.TypePosition = TypePosition;
106
159
 
107
160
  (function (TypePosition) {
108
161
  TypePosition["Dernier"] = "Dernier";
109
162
  TypePosition["Milieu"] = "Milieu";
110
163
  TypePosition["Premier"] = "Premier";
111
- })(TypePosition || (TypePosition = {}));
164
+ })(TypePosition || (exports.TypePosition = TypePosition = {}));
112
165
 
113
- export let AvantAApres;
166
+ var AvantAApres;
167
+ exports.AvantAApres = AvantAApres;
114
168
 
115
169
  (function (AvantAApres) {
116
170
  AvantAApres["A"] = "A";
117
171
  AvantAApres["Apres"] = "Apres";
118
172
  AvantAApres["Avant"] = "Avant";
119
- })(AvantAApres || (AvantAApres = {}));
173
+ })(AvantAApres || (exports.AvantAApres = AvantAApres = {}));
120
174
 
121
- export let DivisionType;
175
+ var DivisionType;
176
+ exports.DivisionType = DivisionType;
122
177
 
123
178
  (function (DivisionType) {
124
179
  DivisionType["Annexe"] = "ANNEXE";
125
180
  DivisionType["Article"] = "ARTICLE";
126
181
  DivisionType["Chapitre"] = "CHAPITRE";
127
182
  DivisionType["Titre"] = "TITRE";
128
- })(DivisionType || (DivisionType = {}));
183
+ })(DivisionType || (exports.DivisionType = DivisionType = {}));
129
184
 
130
- export let CodeEtat;
185
+ var CodeEtat;
186
+ exports.CodeEtat = CodeEtat;
131
187
 
132
188
  (function (CodeEtat) {
133
189
  CodeEtat["B"] = "B";
134
190
  CodeEtat["C"] = "C";
135
191
  CodeEtat["D"] = "D";
136
- })(CodeEtat || (CodeEtat = {}));
192
+ })(CodeEtat || (exports.CodeEtat = CodeEtat = {}));
137
193
 
138
- export let Nom;
194
+ var Nom;
195
+ exports.Nom = Nom;
139
196
 
140
197
  (function (Nom) {
141
198
  Nom["Pdf"] = "PDF";
142
- })(Nom || (Nom = {}));
199
+ })(Nom || (exports.Nom = Nom = {}));
143
200
 
144
- export let TypeMimeType;
201
+ var TypeMimeType;
202
+ exports.TypeMimeType = TypeMimeType;
145
203
 
146
204
  (function (TypeMimeType) {
147
205
  TypeMimeType["Application"] = "application";
148
- })(TypeMimeType || (TypeMimeType = {}));
206
+ })(TypeMimeType || (exports.TypeMimeType = TypeMimeType = {}));
149
207
 
150
- export let TypeAuteur; // Converts JSON strings to/from your types
208
+ var TypeAuteur; // Converts JSON strings to/from your types
151
209
  // and asserts the results of JSON.parse at runtime
152
210
 
211
+ exports.TypeAuteur = TypeAuteur;
212
+
153
213
  (function (TypeAuteur) {
154
214
  TypeAuteur["D\xE9put\xE9"] = "D\xE9put\xE9";
155
215
  TypeAuteur["Gouvernement"] = "Gouvernement";
156
216
  TypeAuteur["Rapporteur"] = "Rapporteur";
157
- })(TypeAuteur || (TypeAuteur = {}));
217
+ })(TypeAuteur || (exports.TypeAuteur = TypeAuteur = {}));
158
218
 
159
- export class Convert {
160
- static toAmendement(json) {
161
- return cast(JSON.parse(json), r("Amendement"));
219
+ var Convert = /*#__PURE__*/function () {
220
+ function Convert() {
221
+ _classCallCheck(this, Convert);
162
222
  }
163
223
 
164
- static amendementToJson(value) {
165
- return JSON.stringify(uncast(value, r("Amendement")), null, 2);
166
- }
167
-
168
- static toAmendements(json) {
169
- return cast(JSON.parse(json), r("Amendements"));
170
- }
171
-
172
- static amendementsToJson(value) {
173
- return JSON.stringify(uncast(value, r("Amendements")), null, 2);
174
- }
224
+ _createClass(Convert, null, [{
225
+ key: "toAmendement",
226
+ value: function toAmendement(json) {
227
+ return cast(JSON.parse(json), r("Amendement"));
228
+ }
229
+ }, {
230
+ key: "amendementToJson",
231
+ value: function amendementToJson(value) {
232
+ return JSON.stringify(uncast(value, r("Amendement")), null, 2);
233
+ }
234
+ }, {
235
+ key: "toAmendements",
236
+ value: function toAmendements(json) {
237
+ return cast(JSON.parse(json), r("Amendements"));
238
+ }
239
+ }, {
240
+ key: "amendementsToJson",
241
+ value: function amendementsToJson(value) {
242
+ return JSON.stringify(uncast(value, r("Amendements")), null, 2);
243
+ }
244
+ }, {
245
+ key: "toTexteLegislatif",
246
+ value: function toTexteLegislatif(json) {
247
+ return cast(JSON.parse(json), r("TexteLegislatif"));
248
+ }
249
+ }, {
250
+ key: "texteLegislatifToJson",
251
+ value: function texteLegislatifToJson(value) {
252
+ return JSON.stringify(uncast(value, r("TexteLegislatif")), null, 2);
253
+ }
254
+ }]);
175
255
 
176
- static toTexteLegislatif(json) {
177
- return cast(JSON.parse(json), r("TexteLegislatif"));
178
- }
256
+ return Convert;
257
+ }();
179
258
 
180
- static texteLegislatifToJson(value) {
181
- return JSON.stringify(uncast(value, r("TexteLegislatif")), null, 2);
182
- }
259
+ exports.Convert = Convert;
183
260
 
184
- }
261
+ function invalidValue(typ, val) {
262
+ var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "";
185
263
 
186
- function invalidValue(typ, val, key = "") {
187
264
  if (key) {
188
- throw Error(`Invalid value for key "${key}". Expected type ${JSON.stringify(typ)} but got ${JSON.stringify(val)}`);
265
+ throw Error("Invalid value for key \"".concat(key, "\". Expected type ").concat(JSON.stringify(typ), " but got ").concat(JSON.stringify(val)));
189
266
  }
190
267
 
191
- throw Error(`Invalid value ${JSON.stringify(val)} for type ${JSON.stringify(typ)}`);
268
+ throw Error("Invalid value ".concat(JSON.stringify(val), " for type ").concat(JSON.stringify(typ)));
192
269
  }
193
270
 
194
271
  function jsonToJSProps(typ) {
195
272
  if (typ.jsonToJS === undefined) {
196
- const map = {};
197
- typ.props.forEach(p => map[p.json] = {
198
- key: p.js,
199
- typ: p.typ
273
+ var map = {};
274
+ typ.props.forEach(function (p) {
275
+ return map[p.json] = {
276
+ key: p.js,
277
+ typ: p.typ
278
+ };
200
279
  });
201
280
  typ.jsonToJS = map;
202
281
  }
@@ -206,10 +285,12 @@ function jsonToJSProps(typ) {
206
285
 
207
286
  function jsToJSONProps(typ) {
208
287
  if (typ.jsToJSON === undefined) {
209
- const map = {};
210
- typ.props.forEach(p => map[p.js] = {
211
- key: p.json,
212
- typ: p.typ
288
+ var map = {};
289
+ typ.props.forEach(function (p) {
290
+ return map[p.js] = {
291
+ key: p.json,
292
+ typ: p.typ
293
+ };
213
294
  });
214
295
  typ.jsToJSON = map;
215
296
  }
@@ -217,21 +298,23 @@ function jsToJSONProps(typ) {
217
298
  return typ.jsToJSON;
218
299
  }
219
300
 
220
- function transform(val, typ, getProps, key = "") {
301
+ function transform(val, typ, getProps) {
302
+ var key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "";
303
+
221
304
  function transformPrimitive(typ, val) {
222
- if (typeof typ === typeof val) return val;
305
+ if (_typeof(typ) === _typeof(val)) return val;
223
306
  return invalidValue(typ, val, key);
224
307
  }
225
308
 
226
309
  function transformUnion(typs, val) {
227
310
  // val must validate against one typ in typs
228
- const l = typs.length;
311
+ var l = typs.length;
229
312
 
230
- for (let i = 0; i < l; i++) {
231
- const typ = typs[i];
313
+ for (var i = 0; i < l; i++) {
314
+ var _typ = typs[i];
232
315
 
233
316
  try {
234
- return transform(val, typ, getProps);
317
+ return transform(val, _typ, getProps);
235
318
  } catch (_) {}
236
319
  }
237
320
 
@@ -246,7 +329,9 @@ function transform(val, typ, getProps, key = "") {
246
329
  function transformArray(typ, val) {
247
330
  // val must be an array with no invalid elements
248
331
  if (!Array.isArray(val)) return invalidValue("array", val);
249
- return val.map(el => transform(el, typ, getProps));
332
+ return val.map(function (el) {
333
+ return transform(el, typ, getProps);
334
+ });
250
335
  }
251
336
 
252
337
  function transformDate(val) {
@@ -254,7 +339,7 @@ function transform(val, typ, getProps, key = "") {
254
339
  return null;
255
340
  }
256
341
 
257
- const d = new Date(val);
342
+ var d = new Date(val);
258
343
 
259
344
  if (isNaN(d.valueOf())) {
260
345
  return invalidValue("Date", val);
@@ -264,17 +349,17 @@ function transform(val, typ, getProps, key = "") {
264
349
  }
265
350
 
266
351
  function transformObject(props, additional, val) {
267
- if (val === null || typeof val !== "object" || Array.isArray(val)) {
352
+ if (val === null || _typeof(val) !== "object" || Array.isArray(val)) {
268
353
  return invalidValue("object", val);
269
354
  }
270
355
 
271
- const result = {};
272
- Object.getOwnPropertyNames(props).forEach(key => {
273
- const prop = props[key];
274
- const v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;
356
+ var result = {};
357
+ Object.getOwnPropertyNames(props).forEach(function (key) {
358
+ var prop = props[key];
359
+ var v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;
275
360
  result[prop.key] = transform(v, prop.typ, getProps, prop.key);
276
361
  });
277
- Object.getOwnPropertyNames(val).forEach(key => {
362
+ Object.getOwnPropertyNames(val).forEach(function (key) {
278
363
  if (!Object.prototype.hasOwnProperty.call(props, key)) {
279
364
  result[key] = transform(val[key], additional, getProps, key);
280
365
  }
@@ -290,13 +375,13 @@ function transform(val, typ, getProps, key = "") {
290
375
  } // if (typ === false) return invalidValue(typ, val)
291
376
 
292
377
 
293
- while (typeof typ === "object" && typ.ref !== undefined) {
378
+ while (_typeof(typ) === "object" && typ.ref !== undefined) {
294
379
  typ = typeMap[typ.ref];
295
380
  }
296
381
 
297
382
  if (Array.isArray(typ)) return transformEnum(typ, val);
298
383
 
299
- if (typeof typ === "object") {
384
+ if (_typeof(typ) === "object") {
300
385
  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);
301
386
  } // Numbers can be parsed by Date but shouldn't be.
302
387
 
@@ -319,7 +404,11 @@ function a(typ) {
319
404
  };
320
405
  }
321
406
 
322
- function u(...typs) {
407
+ function u() {
408
+ for (var _len = arguments.length, typs = new Array(_len), _key = 0; _key < _len; _key++) {
409
+ typs[_key] = arguments[_key];
410
+ }
411
+
323
412
  return {
324
413
  unionMembers: typs
325
414
  };
@@ -327,8 +416,8 @@ function u(...typs) {
327
416
 
328
417
  function o(props, additional) {
329
418
  return {
330
- props,
331
- additional
419
+ props: props,
420
+ additional: additional
332
421
  };
333
422
  } // function m(additional: any) {
334
423
  // return { props: [], additional }
@@ -341,7 +430,7 @@ function r(name) {
341
430
  };
342
431
  }
343
432
 
344
- const typeMap = {
433
+ var typeMap = {
345
434
  Amendements: o([{
346
435
  json: "textesLegislatifs",
347
436
  js: "textesLegislatifs",
@@ -882,4 +971,4 @@ const typeMap = {
882
971
  TypeMimeType: ["application"],
883
972
  TypeAuteur: ["Député", "Gouvernement", "Rapporteur"]
884
973
  };
885
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsIkFjdGlvbiIsIkV0YXRBbWVuZGVtZW50Q29kZSIsIkV0YXRBbWVuZGVtZW50TGliZWxsZSIsIlNvcnRBbWVuZGVtZW50IiwiVHlwZVBvc2l0aW9uIiwiQXZhbnRBQXByZXMiLCJEaXZpc2lvblR5cGUiLCJDb2RlRXRhdCIsIk5vbSIsIlR5cGVNaW1lVHlwZSIsIlR5cGVBdXRldXIiLCJDb252ZXJ0IiwidG9BbWVuZGVtZW50IiwianNvbiIsImNhc3QiLCJKU09OIiwicGFyc2UiLCJyIiwiYW1lbmRlbWVudFRvSnNvbiIsInZhbHVlIiwic3RyaW5naWZ5IiwidW5jYXN0IiwidG9BbWVuZGVtZW50cyIsImFtZW5kZW1lbnRzVG9Kc29uIiwidG9UZXh0ZUxlZ2lzbGF0aWYiLCJ0ZXh0ZUxlZ2lzbGF0aWZUb0pzb24iLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJFcnJvciIsImpzb25Ub0pTUHJvcHMiLCJqc29uVG9KUyIsInVuZGVmaW5lZCIsIm1hcCIsInByb3BzIiwiZm9yRWFjaCIsInAiLCJqcyIsImpzVG9KU09OUHJvcHMiLCJqc1RvSlNPTiIsInRyYW5zZm9ybSIsImdldFByb3BzIiwidHJhbnNmb3JtUHJpbWl0aXZlIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImxlbmd0aCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiQXJyYXkiLCJpc0FycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwicmVmIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJhIiwidSIsIm8iLCJuYW1lIiwiQW1lbmRlbWVudHMiLCJUZXh0ZUxlZ2lzbGF0aWYiLCJBbWVuZGVtZW50c0NsYXNzIiwiQW1lbmRlbWVudFdyYXBwZXIiLCJBbWVuZGVtZW50IiwiQ29ycHMiLCJDb250ZW51QXV0ZXVyIiwiQXZhbnRBcHBlbCIsIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGIiwiUHJvZ3JhbW1lUGxmIiwiTGlnbmVDcmVkaXRQTEYiLCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlIiLCJMaWduZUNyZWRpdFBMRlIiLCJUb3RhbCIsIkN5Y2xlRGVWaWUiLCJFdGF0RGVzVHJhaXRlbWVudHMiLCJFdGF0QW1lbmRlbWVudCIsIlNvdXNFdGF0QW1lbmRlbWVudCIsIkRpc2N1c3Npb24iLCJJZGVudGlmaWNhdGlvbiIsIkxvaVJlZmVyZW5jZSIsIlBvaW50ZXVyRnJhZ21lbnRUZXh0ZSIsIkFsaW5lYSIsIkRpdmlzaW9uIiwiTWlzc2lvblZpc2VlIiwiUmVwcmVzZW50YXRpb24iLCJDb250ZW51IiwiU3RhdHV0UmVwcmVzZW50YXRpb24iLCJUeXBlTWltZSIsIlNpZ25hdGFpcmVzIiwiQXV0ZXVyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2FtZW5kZW1lbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IENvbnZlcnQsIEFtZW5kZW1lbnQsIEFtZW5kZW1lbnRzIH0gZnJvbSBcIi4vZmlsZVwiO1xuLy9cbi8vICAgY29uc3QgYW1lbmRlbWVudCA9IENvbnZlcnQudG9BbWVuZGVtZW50KGpzb24pO1xuLy8gICBjb25zdCBhbWVuZGVtZW50cyA9IENvbnZlcnQudG9BbWVuZGVtZW50cyhqc29uKTtcbi8vXG4vLyBUaGVzZSBmdW5jdGlvbnMgd2lsbCB0aHJvdyBhbiBlcnJvciBpZiB0aGUgSlNPTiBkb2Vzbid0XG4vLyBtYXRjaCB0aGUgZXhwZWN0ZWQgaW50ZXJmYWNlLCBldmVuIGlmIHRoZSBKU09OIGlzIHZhbGlkLlxuXG5pbXBvcnQgeyBBY3RldXIsIE9yZ2FuZSB9IGZyb20gXCIuL2FjdGV1cnNfZXRfb3JnYW5lc1wiXG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudHMge1xuICB0ZXh0ZXNMZWdpc2xhdGlmczogVGV4dGVMZWdpc2xhdGlmW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZUxlZ2lzbGF0aWYge1xuICByZWZUZXh0ZUxlZ2lzbGF0aWY6IHN0cmluZ1xuICBhbWVuZGVtZW50czogQW1lbmRlbWVudFtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudCB7XG4gIHNjaGVtYVZlcnNpb24/OiBzdHJpbmdcbiAgdWlkOiBzdHJpbmdcbiAgY2hyb25vdGFnOiBzdHJpbmdcbiAgbGVnaXNsYXR1cmU6IHN0cmluZ1xuICBpZGVudGlmaWNhdGlvbjogSWRlbnRpZmljYXRpb25cbiAgZXhhbWVuUmVmOiBzdHJpbmdcbiAgdGV4dGVMZWdpc2xhdGlmUmVmOiBzdHJpbmdcbiAgdHJpQW1lbmRlbWVudD86IHN0cmluZ1xuICBjYXJkaW5hbGl0ZUFtZHRNdWx0aXBsZXM/OiBzdHJpbmdcbiAgYW1lbmRlbWVudFBhcmVudFJlZj86IHN0cmluZ1xuICBzaWduYXRhaXJlczogU2lnbmF0YWlyZXNcbiAgcG9pbnRldXJGcmFnbWVudFRleHRlOiBQb2ludGV1ckZyYWdtZW50VGV4dGVcbiAgY29ycHM/OiBDb3Jwc1xuICBjeWNsZURlVmllOiBDeWNsZURlVmllXG4gIHJlcHJlc2VudGF0aW9uPzogUmVwcmVzZW50YXRpb25cbiAgc2VhbmNlRGlzY3Vzc2lvblJlZj86IHN0cmluZ1xuICBhcnRpY2xlOTk6IHN0cmluZ1xuICBsb2lSZWZlcmVuY2U/OiBMb2lSZWZlcmVuY2VcbiAgZGlzY3Vzc2lvbkNvbW11bmU/OiBEaXNjdXNzaW9uXG4gIGRpc2N1c3Npb25JZGVudGlxdWU/OiBEaXNjdXNzaW9uXG4gIGFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpOiBBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVxufVxuXG5leHBvcnQgZW51bSBBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSB7XG4gIEFjY29yZCA9IFwiQWNjb3JkXCIsXG4gIFNhbnNPYmpldCA9IFwiU2FucyBvYmpldFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvcnBzIHtcbiAgY2FydG91Y2hlSW5mb3JtYXRpZj86IHN0cmluZ1xuICBjb250ZW51QXV0ZXVyPzogQ29udGVudUF1dGV1clxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnVBdXRldXIge1xuICBkaXNwb3NpdGlmPzogc3RyaW5nXG4gIGF2YW50QXBwZWw/OiBBdmFudEFwcGVsXG4gIGV4cG9zZVNvbW1haXJlPzogc3RyaW5nXG4gIGRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcbiAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXZhbnRBcHBlbCB7XG4gIGRpc3Bvc2l0aWY6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGIHtcbiAgbGlzdGVQcm9ncmFtbWVzPzogUHJvZ3JhbW1lUGxmW11cbiAgc29sZGVBRT86IHN0cmluZ1xuICBzb2xkZUNQPzogc3RyaW5nXG4gIGNwRWdhbEFlOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9ncmFtbWVQbGYge1xuICBsaWJlbGxlOiBzdHJpbmdcbiAgcHJvZ3JhbW1lUmVmOiBzdHJpbmdcbiAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudDogc3RyaW5nXG4gIGNyZWRpdFBhaWVtZW50OiBzdHJpbmdcbiAgYWN0aW9uOiBBY3Rpb25cbiAgbGlnbmVzQ3JlZGl0cz86IExpZ25lQ3JlZGl0UExGW11cbn1cblxuZXhwb3J0IGVudW0gQWN0aW9uIHtcbiAgQ3LDqWF0aW9uID0gXCJjcsOpYXRpb25cIixcbiAgTW9kaWZpY2F0aW9uID0gXCJtb2RpZmljYXRpb25cIixcbiAgU3VwcHJlc3Npb24gPSBcInN1cHByZXNzaW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRQTEYge1xuICBpZDogc3RyaW5nXG4gIGxpYmVsbGU6IHN0cmluZ1xuICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50OiBzdHJpbmdcbiAgY3JlZGl0UGFpZW1lbnQ6IHN0cmluZ1xuICBhY3Rpb246IEFjdGlvblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUiB7XG4gIGxpc3RlUHJvZ3JhbW1lcz86IExpZ25lQ3JlZGl0UExGUltdXG4gIHRvdGFsQUU/OiBUb3RhbFxuICB0b3RhbENQPzogVG90YWxcbiAgY3BFZ2FsQWU6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0UExGUiB7XG4gIGxpYmVsbGU6IHN0cmluZ1xuICBwcm9ncmFtbWVSZWY/OiBzdHJpbmdcbiAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFN1cHBsZW1lbnRhaXJlOiBzdHJpbmdcbiAgY3JlZGl0UGFpZW1lbnRTdXBwbGVtZW50YWlyZTogc3RyaW5nXG4gIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGU6IHN0cmluZ1xuICBjcmVkaXRQYWllbWVudEFubnVsZTogc3RyaW5nXG4gIGFjdGlvbjogQWN0aW9uXG4gIGxpZ25lc0NyZWRpdHM/OiBMaWduZUNyZWRpdFBMRlJbXVxuICBpZD86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRvdGFsIHtcbiAgc3VwcGxlbWVudGFpcmU6IHN0cmluZ1xuICBhbm51bGU6IHN0cmluZ1xuICBzb2xkZTogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3ljbGVEZVZpZSB7XG4gIGRhdGVEZXBvdD86IERhdGVcbiAgZGF0ZVB1YmxpY2F0aW9uPzogRGF0ZVxuICBzb3VtaXNBcnRpY2xlNDA6IHN0cmluZ1xuICBldGF0RGVzVHJhaXRlbWVudHM6IEV0YXREZXNUcmFpdGVtZW50c1xuICBkYXRlU29ydD86IERhdGVcbiAgc29ydD86IFNvcnRBbWVuZGVtZW50XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXRhdERlc1RyYWl0ZW1lbnRzIHtcbiAgZXRhdDogRXRhdEFtZW5kZW1lbnRcbiAgc291c0V0YXQ/OiBTb3VzRXRhdEFtZW5kZW1lbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdGF0QW1lbmRlbWVudCB7XG4gIGNvZGU6IEV0YXRBbWVuZGVtZW50Q29kZVxuICBsaWJlbGxlOiBFdGF0QW1lbmRlbWVudExpYmVsbGVcbn1cblxuZXhwb3J0IGVudW0gRXRhdEFtZW5kZW1lbnRDb2RlIHtcbiAgQUMgPSBcIkFDXCIsXG4gIEF0ID0gXCJBVFwiLFxuICBEaSA9IFwiRElcIixcbiAgRWZmYWPDqSA9IFwiZWZmYWPDqVwiLFxuICBFciA9IFwiRVJcIixcbiAgSVIgPSBcIklSXCIsXG4gIElycjEyNyA9IFwiSVJSMTI3XCIsXG4gIElycjIwID0gXCJJUlIyMFwiLFxuICBJcnIzNyA9IFwiSVJSMzdcIixcbiAgSXJyMzggPSBcIklSUjM4XCIsXG4gIElycjQxID0gXCJJUlI0MVwiLFxuICBJcnI0MiA9IFwiSVJSNDJcIixcbiAgSXJyNDUgPSBcIklSUjQ1XCIsXG4gIElycjQ4ID0gXCJJUlI0OFwiLFxuICBJcnI1MyA9IFwiSVJSNTNcIixcbiAgSXJyYWkgPSBcIklSUkFJXCIsXG4gIElycmQgPSBcIklSUkRcIixcbiAgSXJyaGQgPSBcIklSUkhEXCIsXG4gIElycnNhID0gXCJJUlJTQVwiLFxuICBSID0gXCJSXCIsXG4gIFJ0ID0gXCJSVFwiLFxuICBUID0gXCJUXCIsXG59XG5cbmV4cG9ydCBlbnVtIEV0YXRBbWVuZGVtZW50TGliZWxsZSB7XG4gIEFEaXNjdXRlciA9IFwiQSBkaXNjdXRlclwiLFxuICBBRMOpcG9zZXIgPSBcIkEgZMOpcG9zZXJcIixcbiAgRGlzY3V0w6kgPSBcIkRpc2N1dMOpXCIsXG4gIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgRW5SZWNldmFiaWxpdMOpID0gXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gIEVuVHJhaXRlbWVudCA9IFwiRW4gdHJhaXRlbWVudFwiLFxuICBJcnJlY2V2YWJsZSA9IFwiSXJyZWNldmFibGVcIixcbiAgSXJyZWNldmFibGU0MCA9IFwiSXJyZWNldmFibGUgNDBcIixcbiAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNvdXNFdGF0QW1lbmRlbWVudCB7XG4gIGNvZGU6IEV0YXRBbWVuZGVtZW50Q29kZVxuICBsaWJlbGxlOiBTb3J0QW1lbmRlbWVudFxufVxuXG5leHBvcnQgZW51bSBTb3J0QW1lbmRlbWVudCB7XG4gIEFkb3B0w6kgPSBcIkFkb3B0w6lcIixcbiAgQXV0cmVJcnJlY2V2YWJpbGl0w6kgPSBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqVwiLFxuICBBdXRyZXNJcnJMT0xGID0gXCJBdXRyZXMgaXJyIExPTEZcIixcbiAgQXV0cmVzSXJyTE9MRlNTID0gXCJBdXRyZXMgaXJyIExPTEZTU1wiLFxuICBDYXZhbGllcjQ1ID0gXCJDYXZhbGllciAoNDUpXCIsXG4gIENhdmFsaWVyQnVkZ8OpdGFpcmUgPSBcIkNhdmFsaWVyIGJ1ZGfDqXRhaXJlXCIsXG4gIENhdmFsaWVyU29jaWFsID0gXCJDYXZhbGllciBzb2NpYWxcIixcbiAgQ2hhbXBEZUxIYWJpbGl0YXRpb24zOCA9IFwiQ2hhbXAgZGUgbCdoYWJpbGl0YXRpb24gKDM4KVwiLFxuICBDaGFyZ2UgPSBcIkNoYXJnZVwiLFxuICBDbXA0NSA9IFwiQ01QICg0NSlcIixcbiAgQ3LDqWRpdHMgPSBcIkNyw6lkaXRzXCIsXG4gIERpc3Bvc2l0aW9uUsOpZ2xlbWVudGFpcmUzNyA9IFwiRGlzcG9zaXRpb24gcsOpZ2xlbWVudGFpcmUgKDM3KVwiLFxuICBEb21haW5lRGVMYUxvaTQxID0gXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gIERvbWFpbmVMb2lPcmdhbmlxdWUxMjcgPSBcIkRvbWFpbmUgbG9pIG9yZ2FuaXF1ZSAoMTI3KVwiLFxuICBEb3VibG9uID0gXCJEb3VibG9uXCIsXG4gIEVudG9ubm9pcjQ1ID0gXCJFbnRvbm5vaXIgKDQ1KVwiLFxuICBHYWdlID0gXCJHYWdlXCIsXG4gIEhvcnNEw6lsYWlzID0gXCJIb3JzLWTDqWxhaXNcIixcbiAgSW5qb25jdGlvbjIwID0gXCJJbmpvbmN0aW9uICgyMClcIixcbiAgSXJyRW5QcmVtacOocmVQYXJ0aWUgPSBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gIElyckVuU2Vjb25kZVBhcnRpZSA9IFwiSXJyIGVuIHNlY29uZGUgcGFydGllXCIsXG4gIExvbGYgPSBcIkxPTEZcIixcbiAgTG9sZnNzID0gXCJMT0xGU1NcIixcbiAgTm9uU291dGVudSA9IFwiTm9uIHNvdXRlbnVcIixcbiAgT3JkcmVEdUpvdXI0OCA9IFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gIFIgPSBcIlJcIixcbiAgUmF0aWZpY2F0aW9uVHJhaXTDqTUzID0gXCJSYXRpZmljYXRpb24gdHJhaXTDqSAoNTMpXCIsXG4gIFJlamV0w6kgPSBcIlJlamV0w6lcIixcbiAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxuICBSZXRpcsOpQXByw6hzUHVibGljYXRpb24gPSBcIlJldGlyw6kgYXByw6hzIHB1YmxpY2F0aW9uXCIsXG4gIFJldGlyw6lBdmFudFB1YmxpY2F0aW9uID0gXCJSZXRpcsOpIGF2YW50IHB1YmxpY2F0aW9uXCIsXG4gIFNhdGlzZmFpdE91SW5vcMOpcmFudDQyID0gXCJTYXRpc2ZhaXQgb3UgaW5vcMOpcmFudCAoNDIpXCIsXG4gIFNvdXNBbWVuZGVtZW50OTggPSBcIlNvdXMtYW1lbmRlbWVudCAoOTgpXCIsXG4gIFRvbWLDqSA9IFwiVG9tYsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzY3Vzc2lvbiB7XG4gIGlkRGlzY3Vzc2lvbj86IHN0cmluZ1xuICB0eXBlUG9zaXRpb24/OiBUeXBlUG9zaXRpb25cbn1cblxuZXhwb3J0IGVudW0gVHlwZVBvc2l0aW9uIHtcbiAgRGVybmllciA9IFwiRGVybmllclwiLFxuICBNaWxpZXUgPSBcIk1pbGlldVwiLFxuICBQcmVtaWVyID0gXCJQcmVtaWVyXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpZmljYXRpb24ge1xuICBudW1lcm9Mb25nOiBzdHJpbmdcbiAgbnVtZXJvT3JkcmVEZXBvdDogc3RyaW5nXG4gIHByZWZpeGVPcmdhbmVFeGFtZW46IHN0cmluZ1xuICBudW1lcm9SZWN0OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2lSZWZlcmVuY2Uge1xuICBjb2RlTG9pPzogc3RyaW5nXG4gIGRpdmlzaW9uQ29kZUxvaT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvaW50ZXVyRnJhZ21lbnRUZXh0ZSB7XG4gIGRpdmlzaW9uPzogRGl2aXNpb25cbiAgYWxpbmVhPzogQWxpbmVhXG4gIG1pc3Npb25WaXNlZT86IE1pc3Npb25WaXNlZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsaW5lYSB7XG4gIGF2YW50QUFwcmVzPzogQXZhbnRBQXByZXNcbiAgbnVtZXJvPzogc3RyaW5nXG4gIGFsaW5lYURlc2lnbmF0aW9uPzogc3RyaW5nXG59XG5cbmV4cG9ydCBlbnVtIEF2YW50QUFwcmVzIHtcbiAgQSA9IFwiQVwiLFxuICBBcHJlcyA9IFwiQXByZXNcIixcbiAgQXZhbnQgPSBcIkF2YW50XCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGl2aXNpb24ge1xuICB0aXRyZTogc3RyaW5nXG4gIGFydGljbGVEZXNpZ25hdGlvbkNvdXJ0ZT86IHN0cmluZ1xuICBhcnRpY2xlRGVzaWduYXRpb24/OiBzdHJpbmdcbiAgdHlwZTogRGl2aXNpb25UeXBlXG4gIGF2YW50QUFwcmVzOiBBdmFudEFBcHJlc1xuICBkaXZpc2lvblJhdHRhY2hlZT86IHN0cmluZ1xuICBhcnRpY2xlQWRkaXRpb25uZWw6IHN0cmluZ1xuICBjaGFwaXRyZUFkZGl0aW9ubmVsOiBzdHJpbmdcbiAgdXJsRGl2aXNpb25UZXh0ZVZpc2U/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gRGl2aXNpb25UeXBlIHtcbiAgQW5uZXhlID0gXCJBTk5FWEVcIixcbiAgQXJ0aWNsZSA9IFwiQVJUSUNMRVwiLFxuICBDaGFwaXRyZSA9IFwiQ0hBUElUUkVcIixcbiAgVGl0cmUgPSBcIlRJVFJFXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWlzc2lvblZpc2VlIHtcbiAgY29kZUV0YXQ6IENvZGVFdGF0XG4gIGNvZGVNaXNzaW9uTWluZWZpOiBzdHJpbmdcbiAgbGliZWxsZU1pc3Npb246IHN0cmluZ1xuICBtaXNzaW9uUmVmOiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gQ29kZUV0YXQge1xuICBCID0gXCJCXCIsXG4gIEMgPSBcIkNcIixcbiAgRCA9IFwiRFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcHJlc2VudGF0aW9uIHtcbiAgbm9tOiBOb21cbiAgdHlwZU1pbWU6IFR5cGVNaW1lXG4gIHN0YXR1dFJlcHJlc2VudGF0aW9uOiBTdGF0dXRSZXByZXNlbnRhdGlvblxuICBjb250ZW51OiBDb250ZW51XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudSB7XG4gIGRvY3VtZW50VVJJOiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gTm9tIHtcbiAgUGRmID0gXCJQREZcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXRSZXByZXNlbnRhdGlvbiB7XG4gIHZlcmJhdGltOiBib29sZWFuXG4gIGNhbm9uaXF1ZTogYm9vbGVhblxuICBvZmZpY2llbGxlOiBib29sZWFuXG4gIHRyYW5zY3JpcHRpb246IGJvb2xlYW5cbiAgZW5yZWdpc3RyZW1lbnQ6IGJvb2xlYW5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeXBlTWltZSB7XG4gIHR5cGU6IFR5cGVNaW1lVHlwZVxuICBzdWJUeXBlOiBOb21cbn1cblxuZXhwb3J0IGVudW0gVHlwZU1pbWVUeXBlIHtcbiAgQXBwbGljYXRpb24gPSBcImFwcGxpY2F0aW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0YWlyZXMge1xuICBhdXRldXI6IEF1dGV1clxuICBjb3NpZ25hdGFpcmVzUmVmcz86IHN0cmluZ1tdXG4gIGNvc2lnbmF0YWlyZXM/OiBBY3RldXJbXSAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICBzdWZmaXhlPzogc3RyaW5nXG4gIGxpYmVsbGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRldXIge1xuICB0eXBlQXV0ZXVyOiBUeXBlQXV0ZXVyXG4gIGdvdXZlcm5lbWVudFJlZj86IHN0cmluZ1xuICBnb3V2ZXJuZW1lbnQ/OiBPcmdhbmUgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgYWN0ZXVyUmVmPzogc3RyaW5nXG4gIGFjdGV1cj86IEFjdGV1ciAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICBncm91cGVQb2xpdGlxdWVSZWY/OiBzdHJpbmdcbiAgZ3JvdXBlUG9saXRpcXVlPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWY/OiBzdHJpbmdcbiAgYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZT86IE9yZ2FuZSAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xufVxuXG5leHBvcnQgZW51bSBUeXBlQXV0ZXVyIHtcbiAgRMOpcHV0w6kgPSBcIkTDqXB1dMOpXCIsXG4gIEdvdXZlcm5lbWVudCA9IFwiR291dmVybmVtZW50XCIsXG4gIFJhcHBvcnRldXIgPSBcIlJhcHBvcnRldXJcIixcbn1cblxuLy8gQ29udmVydHMgSlNPTiBzdHJpbmdzIHRvL2Zyb20geW91ciB0eXBlc1xuLy8gYW5kIGFzc2VydHMgdGhlIHJlc3VsdHMgb2YgSlNPTi5wYXJzZSBhdCBydW50aW1lXG5leHBvcnQgY2xhc3MgQ29udmVydCB7XG4gIHB1YmxpYyBzdGF0aWMgdG9BbWVuZGVtZW50KGpzb246IHN0cmluZyk6IEFtZW5kZW1lbnQge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50XCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhbWVuZGVtZW50VG9Kc29uKHZhbHVlOiBBbWVuZGVtZW50KTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudFwiKSksIG51bGwsIDIpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvQW1lbmRlbWVudHMoanNvbjogc3RyaW5nKTogQW1lbmRlbWVudHMge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50c1wiKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgYW1lbmRlbWVudHNUb0pzb24odmFsdWU6IEFtZW5kZW1lbnRzKTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudHNcIikpLCBudWxsLCAyKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b1RleHRlTGVnaXNsYXRpZihqc29uOiBzdHJpbmcpOiBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRleHRlTGVnaXNsYXRpZlRvSnNvbih2YWx1ZTogVGV4dGVMZWdpc2xhdGlmKTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSwgbnVsbCwgMilcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSA9IFwiXCIpOiBuZXZlciB7XG4gIGlmIChrZXkpIHtcbiAgICB0aHJvdyBFcnJvcihcbiAgICAgIGBJbnZhbGlkIHZhbHVlIGZvciBrZXkgXCIke2tleX1cIi4gRXhwZWN0ZWQgdHlwZSAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICB0eXAsXG4gICAgICApfSBidXQgZ290ICR7SlNPTi5zdHJpbmdpZnkodmFsKX1gLFxuICAgIClcbiAgfVxuICB0aHJvdyBFcnJvcihcbiAgICBgSW52YWxpZCB2YWx1ZSAke0pTT04uc3RyaW5naWZ5KHZhbCl9IGZvciB0eXBlICR7SlNPTi5zdHJpbmdpZnkodHlwKX1gLFxuICApXG59XG5cbmZ1bmN0aW9uIGpzb25Ub0pTUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICBpZiAodHlwLmpzb25Ub0pTID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBtYXA6IGFueSA9IHt9XG4gICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gKG1hcFtwLmpzb25dID0geyBrZXk6IHAuanMsIHR5cDogcC50eXAgfSkpXG4gICAgdHlwLmpzb25Ub0pTID0gbWFwXG4gIH1cbiAgcmV0dXJuIHR5cC5qc29uVG9KU1xufVxuXG5mdW5jdGlvbiBqc1RvSlNPTlByb3BzKHR5cDogYW55KTogYW55IHtcbiAgaWYgKHR5cC5qc1RvSlNPTiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgbWFwOiBhbnkgPSB7fVxuICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IChtYXBbcC5qc10gPSB7IGtleTogcC5qc29uLCB0eXA6IHAudHlwIH0pKVxuICAgIHR5cC5qc1RvSlNPTiA9IG1hcFxuICB9XG4gIHJldHVybiB0eXAuanNUb0pTT05cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtKHZhbDogYW55LCB0eXA6IGFueSwgZ2V0UHJvcHM6IGFueSwga2V5OiBhbnkgPSBcIlwiKTogYW55IHtcbiAgZnVuY3Rpb24gdHJhbnNmb3JtUHJpbWl0aXZlKHR5cDogc3RyaW5nLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKHR5cGVvZiB0eXAgPT09IHR5cGVvZiB2YWwpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXkpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IHZhbGlkYXRlIGFnYWluc3Qgb25lIHR5cCBpbiB0eXBzXG4gICAgY29uc3QgbCA9IHR5cHMubGVuZ3RoXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgIGNvbnN0IHR5cCA9IHR5cHNbaV1cbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGdldFByb3BzKVxuICAgICAgfSBjYXRjaCAoXykge31cbiAgICB9XG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXBzLCB2YWwpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1FbnVtKGNhc2VzOiBzdHJpbmdbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIGlmIChjYXNlcy5pbmRleE9mKHZhbCkgIT09IC0xKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZShjYXNlcywgdmFsKVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtQXJyYXkodHlwOiBhbnksIHZhbDogYW55KTogYW55IHtcbiAgICAvLyB2YWwgbXVzdCBiZSBhbiBhcnJheSB3aXRoIG5vIGludmFsaWQgZWxlbWVudHNcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsKSkgcmV0dXJuIGludmFsaWRWYWx1ZShcImFycmF5XCIsIHZhbClcbiAgICByZXR1cm4gdmFsLm1hcCgoZWwpID0+IHRyYW5zZm9ybShlbCwgdHlwLCBnZXRQcm9wcykpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCBkID0gbmV3IERhdGUodmFsKVxuICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJEYXRlXCIsIHZhbClcbiAgICB9XG4gICAgcmV0dXJuIGRcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybU9iamVjdChcbiAgICBwcm9wczogeyBbazogc3RyaW5nXTogYW55IH0sXG4gICAgYWRkaXRpb25hbDogYW55LFxuICAgIHZhbDogYW55LFxuICApOiBhbnkge1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJvYmplY3RcIiwgdmFsKVxuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9XG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvcHMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV1cbiAgICAgIGNvbnN0IHYgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCBrZXkpXG4gICAgICAgID8gdmFsW2tleV1cbiAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgIHJlc3VsdFtwcm9wLmtleV0gPSB0cmFuc2Zvcm0odiwgcHJvcC50eXAsIGdldFByb3BzLCBwcm9wLmtleSlcbiAgICB9KVxuICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcywga2V5KSkge1xuICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSlcbiAgICAgIH1cbiAgICB9KVxuICAgIHJldHVybiByZXN1bHRcbiAgfVxuXG4gIGlmICh0eXAgPT09IFwiYW55XCIpIHJldHVybiB2YWxcbiAgaWYgKHR5cCA9PT0gbnVsbCkge1xuICAgIGlmICh2YWwgPT09IG51bGwpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKVxuICB9XG4gIC8vIGlmICh0eXAgPT09IGZhbHNlKSByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKVxuICB3aGlsZSAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIiAmJiB0eXAucmVmICE9PSB1bmRlZmluZWQpIHtcbiAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdXG4gIH1cbiAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkgcmV0dXJuIHRyYW5zZm9ybUVudW0odHlwLCB2YWwpXG4gIGlmICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKVxuICAgICAgPyB0cmFuc2Zvcm1Vbmlvbih0eXAudW5pb25NZW1iZXJzLCB2YWwpXG4gICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcImFycmF5SXRlbXNcIilcbiAgICAgID8gdHJhbnNmb3JtQXJyYXkodHlwLmFycmF5SXRlbXMsIHZhbClcbiAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwicHJvcHNcIilcbiAgICAgID8gdHJhbnNmb3JtT2JqZWN0KGdldFByb3BzKHR5cCksIHR5cC5hZGRpdGlvbmFsLCB2YWwpXG4gICAgICA6IGludmFsaWRWYWx1ZSh0eXAsIHZhbClcbiAgfVxuICAvLyBOdW1iZXJzIGNhbiBiZSBwYXJzZWQgYnkgRGF0ZSBidXQgc2hvdWxkbid0IGJlLlxuICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbClcbiAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbClcbn1cblxuZnVuY3Rpb24gY2FzdDxUPih2YWw6IGFueSwgdHlwOiBhbnkpOiBUIHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcylcbn1cblxuZnVuY3Rpb24gdW5jYXN0PFQ+KHZhbDogVCwgdHlwOiBhbnkpOiBhbnkge1xuICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKVxufVxuXG5mdW5jdGlvbiBhKHR5cDogYW55KSB7XG4gIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9XG59XG5cbmZ1bmN0aW9uIHUoLi4udHlwczogYW55W10pIHtcbiAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH1cbn1cblxuZnVuY3Rpb24gbyhwcm9wczogYW55W10sIGFkZGl0aW9uYWw6IGFueSkge1xuICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9XG59XG5cbi8vIGZ1bmN0aW9uIG0oYWRkaXRpb25hbDogYW55KSB7XG4vLyAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9XG4vLyB9XG5cbmZ1bmN0aW9uIHIobmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiB7IHJlZjogbmFtZSB9XG59XG5cbmNvbnN0IHR5cGVNYXA6IGFueSA9IHtcbiAgQW1lbmRlbWVudHM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIGpzOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIHR5cDogYShyKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGV4dGVMZWdpc2xhdGlmOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJyZWZUZXh0ZUxlZ2lzbGF0aWZcIiwganM6IFwicmVmVGV4dGVMZWdpc2xhdGlmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRzXCIsIGpzOiBcImFtZW5kZW1lbnRzXCIsIHR5cDogcihcIkFtZW5kZW1lbnRzQ2xhc3NcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBBbWVuZGVtZW50c0NsYXNzOiBvKFxuICAgIFt7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogYShyKFwiQW1lbmRlbWVudFwiKSkgfV0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnRXcmFwcGVyOiBvKFxuICAgIFt7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogcihcIkFtZW5kZW1lbnRcIikgfV0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY2hyb25vdGFnXCIsIGpzOiBcImNocm9ub3RhZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJsZWdpc2xhdHVyZVwiLCBqczogXCJsZWdpc2xhdHVyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpZGVudGlmaWNhdGlvblwiLFxuICAgICAgICBqczogXCJpZGVudGlmaWNhdGlvblwiLFxuICAgICAgICB0eXA6IHIoXCJJZGVudGlmaWNhdGlvblwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZXhhbWVuUmVmXCIsIGpzOiBcImV4YW1lblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0ZXh0ZUxlZ2lzbGF0aWZSZWZcIiwganM6IFwidGV4dGVMZWdpc2xhdGlmUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInRyaUFtZW5kZW1lbnRcIiwganM6IFwidHJpQW1lbmRlbWVudFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNhcmRpbmFsaXRlQW1kdE11bHRpcGxlc1wiLFxuICAgICAgICBqczogXCJjYXJkaW5hbGl0ZUFtZHRNdWx0aXBsZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImFtZW5kZW1lbnRQYXJlbnRSZWZcIixcbiAgICAgICAganM6IFwiYW1lbmRlbWVudFBhcmVudFJlZlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwic2lnbmF0YWlyZXNcIiwganM6IFwic2lnbmF0YWlyZXNcIiwgdHlwOiByKFwiU2lnbmF0YWlyZXNcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwb2ludGV1ckZyYWdtZW50VGV4dGVcIixcbiAgICAgICAganM6IFwicG9pbnRldXJGcmFnbWVudFRleHRlXCIsXG4gICAgICAgIHR5cDogcihcIlBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiY29ycHNcIiwganM6IFwiY29ycHNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvcnBzXCIpKSB9LFxuICAgICAgeyBqc29uOiBcImN5Y2xlRGVWaWVcIiwganM6IFwiY3ljbGVEZVZpZVwiLCB0eXA6IHIoXCJDeWNsZURlVmllXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicmVwcmVzZW50YXRpb25cIixcbiAgICAgICAganM6IFwicmVwcmVzZW50YXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlJlcHJlc2VudGF0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic2VhbmNlRGlzY3Vzc2lvblJlZlwiLFxuICAgICAgICBqczogXCJzZWFuY2VEaXNjdXNzaW9uUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhcnRpY2xlOTlcIiwganM6IFwiYXJ0aWNsZTk5XCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImxvaVJlZmVyZW5jZVwiLFxuICAgICAgICBqczogXCJsb2lSZWZlcmVuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkxvaVJlZmVyZW5jZVwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpc2N1c3Npb25Db21tdW5lXCIsXG4gICAgICAgIGpzOiBcImRpc2N1c3Npb25Db21tdW5lXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNjdXNzaW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzY3Vzc2lvbklkZW50aXF1ZVwiLFxuICAgICAgICBqczogXCJkaXNjdXNzaW9uSWRlbnRpcXVlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNjdXNzaW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIixcbiAgICAgICAganM6IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIixcbiAgICAgICAgdHlwOiByKFwiQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvcnBzOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjYXJ0b3VjaGVJbmZvcm1hdGlmXCIsXG4gICAgICAgIGpzOiBcImNhcnRvdWNoZUluZm9ybWF0aWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNvbnRlbnVBdXRldXJcIixcbiAgICAgICAganM6IFwiY29udGVudUF1dGV1clwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQ29udGVudUF1dGV1clwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvbnRlbnVBdXRldXI6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZcIiwganM6IFwiZGlzcG9zaXRpZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImF2YW50QXBwZWxcIixcbiAgICAgICAganM6IFwiYXZhbnRBcHBlbFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQXZhbnRBcHBlbFwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImV4cG9zZVNvbW1haXJlXCIsIGpzOiBcImV4cG9zZVNvbW1haXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIixcbiAgICAgICAganM6IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIsXG4gICAgICAgIGpzOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQXZhbnRBcHBlbDogbyhbeyBqc29uOiBcImRpc3Bvc2l0aWZcIiwganM6IFwiZGlzcG9zaXRpZlwiLCB0eXA6IFwiXCIgfV0sIGZhbHNlKSxcbiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImxpc3RlUHJvZ3JhbW1lc1wiLFxuICAgICAgICBqczogXCJsaXN0ZVByb2dyYW1tZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiUHJvZ3JhbW1lUGxmXCIpKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInNvbGRlQUVcIiwganM6IFwic29sZGVBRVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvbGRlQ1BcIiwganM6IFwic29sZGVDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImNwRWdhbEFlXCIsIGpzOiBcImNwRWdhbEFlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFByb2dyYW1tZVBsZjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInByb2dyYW1tZVJlZlwiLCBqczogXCJwcm9ncmFtbWVSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibGlnbmVzQ3JlZGl0c1wiLFxuICAgICAgICBqczogXCJsaWduZXNDcmVkaXRzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkxpZ25lQ3JlZGl0UExGXCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIExpZ25lQ3JlZGl0UExGOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJsaXN0ZVByb2dyYW1tZXNcIixcbiAgICAgICAganM6IFwibGlzdGVQcm9ncmFtbWVzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkxpZ25lQ3JlZGl0UExGUlwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0b3RhbEFFXCIsIGpzOiBcInRvdGFsQUVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlRvdGFsXCIpKSB9LFxuICAgICAgeyBqc29uOiBcInRvdGFsQ1BcIiwganM6IFwidG90YWxDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiVG90YWxcIikpIH0sXG4gICAgICB7IGpzb246IFwiY3BFZ2FsQWVcIiwganM6IFwiY3BFZ2FsQWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTGlnbmVDcmVkaXRQTEZSOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwicHJvZ3JhbW1lUmVmXCIsIGpzOiBcInByb2dyYW1tZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZVwiLFxuICAgICAgICBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlXCIsXG4gICAgICAgIGpzOiBcImNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlXCIsXG4gICAgICAgIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjcmVkaXRQYWllbWVudEFubnVsZVwiLCBqczogXCJjcmVkaXRQYWllbWVudEFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJhY3Rpb25cIiwganM6IFwiYWN0aW9uXCIsIHR5cDogcihcIkFjdGlvblwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImxpZ25lc0NyZWRpdHNcIixcbiAgICAgICAganM6IFwibGlnbmVzQ3JlZGl0c1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJMaWduZUNyZWRpdFBMRlJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiaWRcIiwganM6IFwiaWRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUb3RhbDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwic3VwcGxlbWVudGFpcmVcIiwganM6IFwic3VwcGxlbWVudGFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYW5udWxlXCIsIGpzOiBcImFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJzb2xkZVwiLCBqczogXCJzb2xkZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDeWNsZURlVmllOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlRGVwb3RcIiwganM6IFwiZGF0ZURlcG90XCIsIHR5cDogdSh1bmRlZmluZWQsIERhdGUpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGF0ZVB1YmxpY2F0aW9uXCIsXG4gICAgICAgIGpzOiBcImRhdGVQdWJsaWNhdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBEYXRlKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwic291bWlzQXJ0aWNsZTQwXCIsIGpzOiBcInNvdW1pc0FydGljbGU0MFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJldGF0RGVzVHJhaXRlbWVudHNcIixcbiAgICAgICAganM6IFwiZXRhdERlc1RyYWl0ZW1lbnRzXCIsXG4gICAgICAgIHR5cDogcihcIkV0YXREZXNUcmFpdGVtZW50c1wiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGF0ZVNvcnRcIixcbiAgICAgICAganM6IFwiZGF0ZVNvcnRcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgRGF0ZSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvcnRcIixcbiAgICAgICAganM6IFwic29ydFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiU29ydEFtZW5kZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBFdGF0RGVzVHJhaXRlbWVudHM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudFwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvdXNFdGF0XCIsXG4gICAgICAgIGpzOiBcInNvdXNFdGF0XCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJTb3VzRXRhdEFtZW5kZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBFdGF0QW1lbmRlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiY29kZVwiLCBqczogXCJjb2RlXCIsIHR5cDogcihcIkV0YXRBbWVuZGVtZW50Q29kZVwiKSB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudExpYmVsbGVcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBTb3VzRXRhdEFtZW5kZW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImNvZGVcIiwganM6IFwiY29kZVwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudENvZGVcIikgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiByKFwiU29ydEFtZW5kZW1lbnRcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBEaXNjdXNzaW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJpZERpc2N1c3Npb25cIiwganM6IFwiaWREaXNjdXNzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwidHlwZVBvc2l0aW9uXCIsXG4gICAgICAgIGpzOiBcInR5cGVQb3NpdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiVHlwZVBvc2l0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgSWRlbnRpZmljYXRpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIm51bWVyb0xvbmdcIiwganM6IFwibnVtZXJvTG9uZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJudW1lcm9PcmRyZURlcG90XCIsIGpzOiBcIm51bWVyb09yZHJlRGVwb3RcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwicHJlZml4ZU9yZ2FuZUV4YW1lblwiLCBqczogXCJwcmVmaXhlT3JnYW5lRXhhbWVuXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm51bWVyb1JlY3RcIiwganM6IFwibnVtZXJvUmVjdFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBMb2lSZWZlcmVuY2U6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImNvZGVMb2lcIixcbiAgICAgICAganM6IFwiY29kZUxvaVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGl2aXNpb25Db2RlTG9pXCIsXG4gICAgICAgIGpzOiBcImRpdmlzaW9uQ29kZUxvaVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgUG9pbnRldXJGcmFnbWVudFRleHRlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkaXZpc2lvblwiLCBqczogXCJkaXZpc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGl2aXNpb25cIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWxpbmVhXCIsXG4gICAgICAgIGpzOiBcImFsaW5lYVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQWxpbmVhXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibWlzc2lvblZpc2VlXCIsXG4gICAgICAgIGpzOiBcIm1pc3Npb25WaXNlZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiTWlzc2lvblZpc2VlXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQWxpbmVhOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdmFudEFBcHJlc1wiLFxuICAgICAgICBqczogXCJhdmFudEFBcHJlc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQXZhbnRBQXByZXNcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJudW1lcm9cIiwganM6IFwibnVtZXJvXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWxpbmVhRGVzaWduYXRpb25cIixcbiAgICAgICAganM6IFwiYWxpbmVhRGVzaWduYXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERpdmlzaW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0aXRyZVwiLCBqczogXCJ0aXRyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25Db3VydGVcIixcbiAgICAgICAganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25cIixcbiAgICAgICAganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiRGl2aXNpb25UeXBlXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYXZhbnRBQXByZXNcIixcbiAgICAgICAganM6IFwiYXZhbnRBQXByZXNcIixcbiAgICAgICAgdHlwOiByKFwiQXZhbnRBQXByZXNcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsXG4gICAgICAgIGpzOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhcnRpY2xlQWRkaXRpb25uZWxcIiwganM6IFwiYXJ0aWNsZUFkZGl0aW9ubmVsXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNoYXBpdHJlQWRkaXRpb25uZWxcIiwganM6IFwiY2hhcGl0cmVBZGRpdGlvbm5lbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ1cmxEaXZpc2lvblRleHRlVmlzZVwiLFxuICAgICAgICBqczogXCJ1cmxEaXZpc2lvblRleHRlVmlzZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTWlzc2lvblZpc2VlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJjb2RlRXRhdFwiLCBqczogXCJjb2RlRXRhdFwiLCB0eXA6IHIoXCJDb2RlRXRhdFwiKSB9LFxuICAgICAgeyBqc29uOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIGpzOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVNaXNzaW9uXCIsIGpzOiBcImxpYmVsbGVNaXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm1pc3Npb25SZWZcIiwganM6IFwibWlzc2lvblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBSZXByZXNlbnRhdGlvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibm9tXCIsIGpzOiBcIm5vbVwiLCB0eXA6IHIoXCJOb21cIikgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlTWltZVwiLCBqczogXCJ0eXBlTWltZVwiLCB0eXA6IHIoXCJUeXBlTWltZVwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsXG4gICAgICAgIGpzOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsXG4gICAgICAgIHR5cDogcihcIlN0YXR1dFJlcHJlc2VudGF0aW9uXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjb250ZW51XCIsIGpzOiBcImNvbnRlbnVcIiwgdHlwOiByKFwiQ29udGVudVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvbnRlbnU6IG8oW3sganNvbjogXCJkb2N1bWVudFVSSVwiLCBqczogXCJkb2N1bWVudFVSSVwiLCB0eXA6IFwiXCIgfV0sIGZhbHNlKSxcbiAgU3RhdHV0UmVwcmVzZW50YXRpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInZlcmJhdGltXCIsIGpzOiBcInZlcmJhdGltXCIsIHR5cDogZmFsc2UgfSxcbiAgICAgIHsganNvbjogXCJjYW5vbmlxdWVcIiwganM6IFwiY2Fub25pcXVlXCIsIHR5cDogZmFsc2UgfSxcbiAgICAgIHsganNvbjogXCJvZmZpY2llbGxlXCIsIGpzOiBcIm9mZmljaWVsbGVcIiwgdHlwOiBmYWxzZSB9LFxuICAgICAgeyBqc29uOiBcInRyYW5zY3JpcHRpb25cIiwganM6IFwidHJhbnNjcmlwdGlvblwiLCB0eXA6IGZhbHNlIH0sXG4gICAgICB7IGpzb246IFwiZW5yZWdpc3RyZW1lbnRcIiwganM6IFwiZW5yZWdpc3RyZW1lbnRcIiwgdHlwOiBmYWxzZSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFR5cGVNaW1lOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiVHlwZU1pbWVUeXBlXCIpIH0sXG4gICAgICB7IGpzb246IFwic3ViVHlwZVwiLCBqczogXCJzdWJUeXBlXCIsIHR5cDogcihcIk5vbVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNpZ25hdGFpcmVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhdXRldXJcIiwganM6IFwiYXV0ZXVyXCIsIHR5cDogcihcIkF1dGV1clwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNvc2lnbmF0YWlyZXNSZWZzXCIsXG4gICAgICAgIGpzOiBcImNvc2lnbmF0YWlyZXNSZWZzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEoXCJcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzdWZmaXhlXCIsXG4gICAgICAgIGpzOiBcInN1ZmZpeGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEF1dGV1cjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwidHlwZUF1dGV1clwiLCBqczogXCJ0eXBlQXV0ZXVyXCIsIHR5cDogcihcIlR5cGVBdXRldXJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJnb3V2ZXJuZW1lbnRSZWZcIixcbiAgICAgICAganM6IFwiZ291dmVybmVtZW50UmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhY3RldXJSZWZcIixcbiAgICAgICAganM6IFwiYWN0ZXVyUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJncm91cGVQb2xpdGlxdWVSZWZcIixcbiAgICAgICAganM6IFwiZ3JvdXBlUG9saXRpcXVlUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRldXJSYXBwb3J0ZXVyT3JnYW5lUmVmXCIsXG4gICAgICAgIGpzOiBcImF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpOiBbXCJBY2NvcmRcIiwgXCJTYW5zIG9iamV0XCJdLFxuICBBY3Rpb246IFtcImNyw6lhdGlvblwiLCBcIm1vZGlmaWNhdGlvblwiLCBcInN1cHByZXNzaW9uXCJdLFxuICBFdGF0QW1lbmRlbWVudENvZGU6IFtcbiAgICBcIkFDXCIsXG4gICAgXCJBVFwiLFxuICAgIFwiRElcIixcbiAgICBcImVmZmFjw6lcIixcbiAgICBcIkVSXCIsXG4gICAgXCJJUlwiLFxuICAgIFwiSVJSMTI3XCIsXG4gICAgXCJJUlIyMFwiLFxuICAgIFwiSVJSMzdcIixcbiAgICBcIklSUjM4XCIsXG4gICAgXCJJUlI0MVwiLFxuICAgIFwiSVJSNDJcIixcbiAgICBcIklSUjQ1XCIsXG4gICAgXCJJUlI0OFwiLFxuICAgIFwiSVJSNTNcIixcbiAgICBcIklSUkFJXCIsXG4gICAgXCJJUlJEXCIsXG4gICAgXCJJUlJIRFwiLFxuICAgIFwiSVJSU0FcIixcbiAgICBcIlJcIixcbiAgICBcIlJUXCIsXG4gICAgXCJUXCIsXG4gIF0sXG4gIEV0YXRBbWVuZGVtZW50TGliZWxsZTogW1xuICAgIFwiQSBkaXNjdXRlclwiLFxuICAgIFwiQSBkw6lwb3NlclwiLFxuICAgIFwiRGlzY3V0w6lcIixcbiAgICBcImVmZmFjw6lcIixcbiAgICBcIkVuIHJlY2V2YWJpbGl0w6lcIixcbiAgICBcIkVuIHRyYWl0ZW1lbnRcIixcbiAgICBcIklycmVjZXZhYmxlXCIsXG4gICAgXCJJcnJlY2V2YWJsZSA0MFwiLFxuICAgIFwiUmV0aXLDqVwiLFxuICBdLFxuICBTb3J0QW1lbmRlbWVudDogW1xuICAgIFwiQWRvcHTDqVwiLFxuICAgIFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgXCJBdXRyZXMgaXJyIExPTEZcIixcbiAgICBcIkF1dHJlcyBpcnIgTE9MRlNTXCIsXG4gICAgXCJDYXZhbGllciAoNDUpXCIsXG4gICAgXCJDYXZhbGllciBidWRnw6l0YWlyZVwiLFxuICAgIFwiQ2F2YWxpZXIgc29jaWFsXCIsXG4gICAgXCJDaGFtcCBkZSBsJ2hhYmlsaXRhdGlvbiAoMzgpXCIsXG4gICAgXCJDaGFyZ2VcIixcbiAgICBcIkNNUCAoNDUpXCIsXG4gICAgXCJDcsOpZGl0c1wiLFxuICAgIFwiRGlzcG9zaXRpb24gcsOpZ2xlbWVudGFpcmUgKDM3KVwiLFxuICAgIFwiRG9tYWluZSBkZSBsYSBsb2kgKDQxKVwiLFxuICAgIFwiRG9tYWluZSBsb2kgb3JnYW5pcXVlICgxMjcpXCIsXG4gICAgXCJEb3VibG9uXCIsXG4gICAgXCJFbnRvbm5vaXIgKDQ1KVwiLFxuICAgIFwiR2FnZVwiLFxuICAgIFwiSG9ycy1kw6lsYWlzXCIsXG4gICAgXCJJbmpvbmN0aW9uICgyMClcIixcbiAgICBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gICAgXCJJcnIgZW4gc2Vjb25kZSBwYXJ0aWVcIixcbiAgICBcIkxPTEZcIixcbiAgICBcIkxPTEZTU1wiLFxuICAgIFwiTm9uIHNvdXRlbnVcIixcbiAgICBcIk9yZHJlIGR1IGpvdXIgKDQ4KVwiLFxuICAgIFwiUlwiLFxuICAgIFwiUmF0aWZpY2F0aW9uIHRyYWl0w6kgKDUzKVwiLFxuICAgIFwiUmVqZXTDqVwiLFxuICAgIFwiUmV0aXLDqVwiLFxuICAgIFwiUmV0aXLDqSBhcHLDqHMgcHVibGljYXRpb25cIixcbiAgICBcIlJldGlyw6kgYXZhbnQgcHVibGljYXRpb25cIixcbiAgICBcIlNhdGlzZmFpdCBvdSBpbm9ww6lyYW50ICg0MilcIixcbiAgICBcIlNvdXMtYW1lbmRlbWVudCAoOTgpXCIsXG4gICAgXCJUb21iw6lcIixcbiAgXSxcbiAgVHlwZVBvc2l0aW9uOiBbXCJEZXJuaWVyXCIsIFwiTWlsaWV1XCIsIFwiUHJlbWllclwiXSxcbiAgQXZhbnRBQXByZXM6IFtcIkFcIiwgXCJBcHJlc1wiLCBcIkF2YW50XCJdLFxuICBEaXZpc2lvblR5cGU6IFtcIkFOTkVYRVwiLCBcIkFSVElDTEVcIiwgXCJDSEFQSVRSRVwiLCBcIlRJVFJFXCJdLFxuICBDb2RlRXRhdDogW1wiQlwiLCBcIkNcIiwgXCJEXCJdLFxuICBOb206IFtcIlBERlwiXSxcbiAgVHlwZU1pbWVUeXBlOiBbXCJhcHBsaWNhdGlvblwiXSxcbiAgVHlwZUF1dGV1cjogW1wiRMOpcHV0w6lcIiwgXCJHb3V2ZXJuZW1lbnRcIiwgXCJSYXBwb3J0ZXVyXCJdLFxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFxQ0EsV0FBWUEsZ0NBQVo7O1dBQVlBLGdDO0VBQUFBLGdDO0VBQUFBLGdDO0dBQUFBLGdDLEtBQUFBLGdDOztBQXNDWixXQUFZQyxNQUFaOztXQUFZQSxNO0VBQUFBLE07RUFBQUEsTTtFQUFBQSxNO0dBQUFBLE0sS0FBQUEsTTs7QUEwRFosV0FBWUMsa0JBQVo7O1dBQVlBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0dBQUFBLGtCLEtBQUFBLGtCOztBQXlCWixXQUFZQyxxQkFBWjs7V0FBWUEscUI7RUFBQUEscUI7RUFBQUEscUI7RUFBQUEs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
974
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSIsIkFjdGlvbiIsIkV0YXRBbWVuZGVtZW50Q29kZSIsIkV0YXRBbWVuZGVtZW50TGliZWxsZSIsIlNvcnRBbWVuZGVtZW50IiwiVHlwZVBvc2l0aW9uIiwiQXZhbnRBQXByZXMiLCJEaXZpc2lvblR5cGUiLCJDb2RlRXRhdCIsIk5vbSIsIlR5cGVNaW1lVHlwZSIsIlR5cGVBdXRldXIiLCJDb252ZXJ0IiwianNvbiIsImNhc3QiLCJKU09OIiwicGFyc2UiLCJyIiwidmFsdWUiLCJzdHJpbmdpZnkiLCJ1bmNhc3QiLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJFcnJvciIsImpzb25Ub0pTUHJvcHMiLCJqc29uVG9KUyIsInVuZGVmaW5lZCIsIm1hcCIsInByb3BzIiwiZm9yRWFjaCIsInAiLCJqcyIsImpzVG9KU09OUHJvcHMiLCJqc1RvSlNPTiIsInRyYW5zZm9ybSIsImdldFByb3BzIiwidHJhbnNmb3JtUHJpbWl0aXZlIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImxlbmd0aCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiQXJyYXkiLCJpc0FycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwicmVmIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJhIiwidSIsIm8iLCJuYW1lIiwiQW1lbmRlbWVudHMiLCJUZXh0ZUxlZ2lzbGF0aWYiLCJBbWVuZGVtZW50c0NsYXNzIiwiQW1lbmRlbWVudFdyYXBwZXIiLCJBbWVuZGVtZW50IiwiQ29ycHMiLCJDb250ZW51QXV0ZXVyIiwiQXZhbnRBcHBlbCIsIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGIiwiUHJvZ3JhbW1lUGxmIiwiTGlnbmVDcmVkaXRQTEYiLCJEaXNwb3NpdGlmQW1kdENyZWRpdFBMRlIiLCJMaWduZUNyZWRpdFBMRlIiLCJUb3RhbCIsIkN5Y2xlRGVWaWUiLCJFdGF0RGVzVHJhaXRlbWVudHMiLCJFdGF0QW1lbmRlbWVudCIsIlNvdXNFdGF0QW1lbmRlbWVudCIsIkRpc2N1c3Npb24iLCJJZGVudGlmaWNhdGlvbiIsIkxvaVJlZmVyZW5jZSIsIlBvaW50ZXVyRnJhZ21lbnRUZXh0ZSIsIkFsaW5lYSIsIkRpdmlzaW9uIiwiTWlzc2lvblZpc2VlIiwiUmVwcmVzZW50YXRpb24iLCJDb250ZW51IiwiU3RhdHV0UmVwcmVzZW50YXRpb24iLCJUeXBlTWltZSIsIlNpZ25hdGFpcmVzIiwiQXV0ZXVyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2FtZW5kZW1lbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IENvbnZlcnQsIEFtZW5kZW1lbnQsIEFtZW5kZW1lbnRzIH0gZnJvbSBcIi4vZmlsZVwiO1xuLy9cbi8vICAgY29uc3QgYW1lbmRlbWVudCA9IENvbnZlcnQudG9BbWVuZGVtZW50KGpzb24pO1xuLy8gICBjb25zdCBhbWVuZGVtZW50cyA9IENvbnZlcnQudG9BbWVuZGVtZW50cyhqc29uKTtcbi8vXG4vLyBUaGVzZSBmdW5jdGlvbnMgd2lsbCB0aHJvdyBhbiBlcnJvciBpZiB0aGUgSlNPTiBkb2Vzbid0XG4vLyBtYXRjaCB0aGUgZXhwZWN0ZWQgaW50ZXJmYWNlLCBldmVuIGlmIHRoZSBKU09OIGlzIHZhbGlkLlxuXG5pbXBvcnQgeyBBY3RldXIsIE9yZ2FuZSB9IGZyb20gXCIuL2FjdGV1cnNfZXRfb3JnYW5lc1wiXG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudHMge1xuICB0ZXh0ZXNMZWdpc2xhdGlmczogVGV4dGVMZWdpc2xhdGlmW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZUxlZ2lzbGF0aWYge1xuICByZWZUZXh0ZUxlZ2lzbGF0aWY6IHN0cmluZ1xuICBhbWVuZGVtZW50czogQW1lbmRlbWVudFtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1lbmRlbWVudCB7XG4gIHNjaGVtYVZlcnNpb24/OiBzdHJpbmdcbiAgdWlkOiBzdHJpbmdcbiAgY2hyb25vdGFnOiBzdHJpbmdcbiAgbGVnaXNsYXR1cmU6IHN0cmluZ1xuICBpZGVudGlmaWNhdGlvbjogSWRlbnRpZmljYXRpb25cbiAgZXhhbWVuUmVmOiBzdHJpbmdcbiAgdGV4dGVMZWdpc2xhdGlmUmVmOiBzdHJpbmdcbiAgdHJpQW1lbmRlbWVudD86IHN0cmluZ1xuICBjYXJkaW5hbGl0ZUFtZHRNdWx0aXBsZXM/OiBzdHJpbmdcbiAgYW1lbmRlbWVudFBhcmVudFJlZj86IHN0cmluZ1xuICBzaWduYXRhaXJlczogU2lnbmF0YWlyZXNcbiAgcG9pbnRldXJGcmFnbWVudFRleHRlOiBQb2ludGV1ckZyYWdtZW50VGV4dGVcbiAgY29ycHM/OiBDb3Jwc1xuICBjeWNsZURlVmllOiBDeWNsZURlVmllXG4gIHJlcHJlc2VudGF0aW9uPzogUmVwcmVzZW50YXRpb25cbiAgc2VhbmNlRGlzY3Vzc2lvblJlZj86IHN0cmluZ1xuICBhcnRpY2xlOTk6IHN0cmluZ1xuICBsb2lSZWZlcmVuY2U/OiBMb2lSZWZlcmVuY2VcbiAgZGlzY3Vzc2lvbkNvbW11bmU/OiBEaXNjdXNzaW9uXG4gIGRpc2N1c3Npb25JZGVudGlxdWU/OiBEaXNjdXNzaW9uXG4gIGFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpOiBBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaVxufVxuXG5leHBvcnQgZW51bSBBY2NvcmRHb3V2ZXJuZW1lbnREZXBvdEhvcnNEZWxhaSB7XG4gIEFjY29yZCA9IFwiQWNjb3JkXCIsXG4gIFNhbnNPYmpldCA9IFwiU2FucyBvYmpldFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvcnBzIHtcbiAgY2FydG91Y2hlSW5mb3JtYXRpZj86IHN0cmluZ1xuICBjb250ZW51QXV0ZXVyPzogQ29udGVudUF1dGV1clxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnVBdXRldXIge1xuICBkaXNwb3NpdGlmPzogc3RyaW5nXG4gIGF2YW50QXBwZWw/OiBBdmFudEFwcGVsXG4gIGV4cG9zZVNvbW1haXJlPzogc3RyaW5nXG4gIGRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcbiAgZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSPzogRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXZhbnRBcHBlbCB7XG4gIGRpc3Bvc2l0aWY6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGIHtcbiAgbGlzdGVQcm9ncmFtbWVzPzogUHJvZ3JhbW1lUGxmW11cbiAgc29sZGVBRT86IHN0cmluZ1xuICBzb2xkZUNQPzogc3RyaW5nXG4gIGNwRWdhbEFlOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9ncmFtbWVQbGYge1xuICBsaWJlbGxlOiBzdHJpbmdcbiAgcHJvZ3JhbW1lUmVmOiBzdHJpbmdcbiAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudDogc3RyaW5nXG4gIGNyZWRpdFBhaWVtZW50OiBzdHJpbmdcbiAgYWN0aW9uOiBBY3Rpb25cbiAgbGlnbmVzQ3JlZGl0cz86IExpZ25lQ3JlZGl0UExGW11cbn1cblxuZXhwb3J0IGVudW0gQWN0aW9uIHtcbiAgQ3LDqWF0aW9uID0gXCJjcsOpYXRpb25cIixcbiAgTW9kaWZpY2F0aW9uID0gXCJtb2RpZmljYXRpb25cIixcbiAgU3VwcHJlc3Npb24gPSBcInN1cHByZXNzaW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnbmVDcmVkaXRQTEYge1xuICBpZDogc3RyaW5nXG4gIGxpYmVsbGU6IHN0cmluZ1xuICBhdXRvcmlzYXRpb25FbmdhZ2VtZW50OiBzdHJpbmdcbiAgY3JlZGl0UGFpZW1lbnQ6IHN0cmluZ1xuICBhY3Rpb246IEFjdGlvblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUiB7XG4gIGxpc3RlUHJvZ3JhbW1lcz86IExpZ25lQ3JlZGl0UExGUltdXG4gIHRvdGFsQUU/OiBUb3RhbFxuICB0b3RhbENQPzogVG90YWxcbiAgY3BFZ2FsQWU6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpZ25lQ3JlZGl0UExGUiB7XG4gIGxpYmVsbGU6IHN0cmluZ1xuICBwcm9ncmFtbWVSZWY/OiBzdHJpbmdcbiAgYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFN1cHBsZW1lbnRhaXJlOiBzdHJpbmdcbiAgY3JlZGl0UGFpZW1lbnRTdXBwbGVtZW50YWlyZTogc3RyaW5nXG4gIGF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGU6IHN0cmluZ1xuICBjcmVkaXRQYWllbWVudEFubnVsZTogc3RyaW5nXG4gIGFjdGlvbjogQWN0aW9uXG4gIGxpZ25lc0NyZWRpdHM/OiBMaWduZUNyZWRpdFBMRlJbXVxuICBpZD86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRvdGFsIHtcbiAgc3VwcGxlbWVudGFpcmU6IHN0cmluZ1xuICBhbm51bGU6IHN0cmluZ1xuICBzb2xkZTogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3ljbGVEZVZpZSB7XG4gIGRhdGVEZXBvdD86IERhdGVcbiAgZGF0ZVB1YmxpY2F0aW9uPzogRGF0ZVxuICBzb3VtaXNBcnRpY2xlNDA6IHN0cmluZ1xuICBldGF0RGVzVHJhaXRlbWVudHM6IEV0YXREZXNUcmFpdGVtZW50c1xuICBkYXRlU29ydD86IERhdGVcbiAgc29ydD86IFNvcnRBbWVuZGVtZW50XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXRhdERlc1RyYWl0ZW1lbnRzIHtcbiAgZXRhdDogRXRhdEFtZW5kZW1lbnRcbiAgc291c0V0YXQ/OiBTb3VzRXRhdEFtZW5kZW1lbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdGF0QW1lbmRlbWVudCB7XG4gIGNvZGU6IEV0YXRBbWVuZGVtZW50Q29kZVxuICBsaWJlbGxlOiBFdGF0QW1lbmRlbWVudExpYmVsbGVcbn1cblxuZXhwb3J0IGVudW0gRXRhdEFtZW5kZW1lbnRDb2RlIHtcbiAgQUMgPSBcIkFDXCIsXG4gIEF0ID0gXCJBVFwiLFxuICBEaSA9IFwiRElcIixcbiAgRWZmYWPDqSA9IFwiZWZmYWPDqVwiLFxuICBFciA9IFwiRVJcIixcbiAgSVIgPSBcIklSXCIsXG4gIElycjEyNyA9IFwiSVJSMTI3XCIsXG4gIElycjIwID0gXCJJUlIyMFwiLFxuICBJcnIzNyA9IFwiSVJSMzdcIixcbiAgSXJyMzggPSBcIklSUjM4XCIsXG4gIElycjQxID0gXCJJUlI0MVwiLFxuICBJcnI0MiA9IFwiSVJSNDJcIixcbiAgSXJyNDUgPSBcIklSUjQ1XCIsXG4gIElycjQ4ID0gXCJJUlI0OFwiLFxuICBJcnI1MyA9IFwiSVJSNTNcIixcbiAgSXJyYWkgPSBcIklSUkFJXCIsXG4gIElycmQgPSBcIklSUkRcIixcbiAgSXJyaGQgPSBcIklSUkhEXCIsXG4gIElycnNhID0gXCJJUlJTQVwiLFxuICBSID0gXCJSXCIsXG4gIFJ0ID0gXCJSVFwiLFxuICBUID0gXCJUXCIsXG59XG5cbmV4cG9ydCBlbnVtIEV0YXRBbWVuZGVtZW50TGliZWxsZSB7XG4gIEFEaXNjdXRlciA9IFwiQSBkaXNjdXRlclwiLFxuICBBRMOpcG9zZXIgPSBcIkEgZMOpcG9zZXJcIixcbiAgRGlzY3V0w6kgPSBcIkRpc2N1dMOpXCIsXG4gIEVmZmFjw6kgPSBcImVmZmFjw6lcIixcbiAgRW5SZWNldmFiaWxpdMOpID0gXCJFbiByZWNldmFiaWxpdMOpXCIsXG4gIEVuVHJhaXRlbWVudCA9IFwiRW4gdHJhaXRlbWVudFwiLFxuICBJcnJlY2V2YWJsZSA9IFwiSXJyZWNldmFibGVcIixcbiAgSXJyZWNldmFibGU0MCA9IFwiSXJyZWNldmFibGUgNDBcIixcbiAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNvdXNFdGF0QW1lbmRlbWVudCB7XG4gIGNvZGU6IEV0YXRBbWVuZGVtZW50Q29kZVxuICBsaWJlbGxlOiBTb3J0QW1lbmRlbWVudFxufVxuXG5leHBvcnQgZW51bSBTb3J0QW1lbmRlbWVudCB7XG4gIEFkb3B0w6kgPSBcIkFkb3B0w6lcIixcbiAgQXV0cmVJcnJlY2V2YWJpbGl0w6kgPSBcIkF1dHJlIGlycmVjZXZhYmlsaXTDqVwiLFxuICBBdXRyZXNJcnJMT0xGID0gXCJBdXRyZXMgaXJyIExPTEZcIixcbiAgQXV0cmVzSXJyTE9MRlNTID0gXCJBdXRyZXMgaXJyIExPTEZTU1wiLFxuICBDYXZhbGllcjQ1ID0gXCJDYXZhbGllciAoNDUpXCIsXG4gIENhdmFsaWVyQnVkZ8OpdGFpcmUgPSBcIkNhdmFsaWVyIGJ1ZGfDqXRhaXJlXCIsXG4gIENhdmFsaWVyU29jaWFsID0gXCJDYXZhbGllciBzb2NpYWxcIixcbiAgQ2hhbXBEZUxIYWJpbGl0YXRpb24zOCA9IFwiQ2hhbXAgZGUgbCdoYWJpbGl0YXRpb24gKDM4KVwiLFxuICBDaGFyZ2UgPSBcIkNoYXJnZVwiLFxuICBDbXA0NSA9IFwiQ01QICg0NSlcIixcbiAgQ3LDqWRpdHMgPSBcIkNyw6lkaXRzXCIsXG4gIERpc3Bvc2l0aW9uUsOpZ2xlbWVudGFpcmUzNyA9IFwiRGlzcG9zaXRpb24gcsOpZ2xlbWVudGFpcmUgKDM3KVwiLFxuICBEb21haW5lRGVMYUxvaTQxID0gXCJEb21haW5lIGRlIGxhIGxvaSAoNDEpXCIsXG4gIERvbWFpbmVMb2lPcmdhbmlxdWUxMjcgPSBcIkRvbWFpbmUgbG9pIG9yZ2FuaXF1ZSAoMTI3KVwiLFxuICBEb3VibG9uID0gXCJEb3VibG9uXCIsXG4gIEVudG9ubm9pcjQ1ID0gXCJFbnRvbm5vaXIgKDQ1KVwiLFxuICBHYWdlID0gXCJHYWdlXCIsXG4gIEhvcnNEw6lsYWlzID0gXCJIb3JzLWTDqWxhaXNcIixcbiAgSW5qb25jdGlvbjIwID0gXCJJbmpvbmN0aW9uICgyMClcIixcbiAgSXJyRW5QcmVtacOocmVQYXJ0aWUgPSBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gIElyckVuU2Vjb25kZVBhcnRpZSA9IFwiSXJyIGVuIHNlY29uZGUgcGFydGllXCIsXG4gIExvbGYgPSBcIkxPTEZcIixcbiAgTG9sZnNzID0gXCJMT0xGU1NcIixcbiAgTm9uU291dGVudSA9IFwiTm9uIHNvdXRlbnVcIixcbiAgT3JkcmVEdUpvdXI0OCA9IFwiT3JkcmUgZHUgam91ciAoNDgpXCIsXG4gIFIgPSBcIlJcIixcbiAgUmF0aWZpY2F0aW9uVHJhaXTDqTUzID0gXCJSYXRpZmljYXRpb24gdHJhaXTDqSAoNTMpXCIsXG4gIFJlamV0w6kgPSBcIlJlamV0w6lcIixcbiAgUmV0aXLDqSA9IFwiUmV0aXLDqVwiLFxuICBSZXRpcsOpQXByw6hzUHVibGljYXRpb24gPSBcIlJldGlyw6kgYXByw6hzIHB1YmxpY2F0aW9uXCIsXG4gIFJldGlyw6lBdmFudFB1YmxpY2F0aW9uID0gXCJSZXRpcsOpIGF2YW50IHB1YmxpY2F0aW9uXCIsXG4gIFNhdGlzZmFpdE91SW5vcMOpcmFudDQyID0gXCJTYXRpc2ZhaXQgb3UgaW5vcMOpcmFudCAoNDIpXCIsXG4gIFNvdXNBbWVuZGVtZW50OTggPSBcIlNvdXMtYW1lbmRlbWVudCAoOTgpXCIsXG4gIFRvbWLDqSA9IFwiVG9tYsOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGlzY3Vzc2lvbiB7XG4gIGlkRGlzY3Vzc2lvbj86IHN0cmluZ1xuICB0eXBlUG9zaXRpb24/OiBUeXBlUG9zaXRpb25cbn1cblxuZXhwb3J0IGVudW0gVHlwZVBvc2l0aW9uIHtcbiAgRGVybmllciA9IFwiRGVybmllclwiLFxuICBNaWxpZXUgPSBcIk1pbGlldVwiLFxuICBQcmVtaWVyID0gXCJQcmVtaWVyXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWRlbnRpZmljYXRpb24ge1xuICBudW1lcm9Mb25nOiBzdHJpbmdcbiAgbnVtZXJvT3JkcmVEZXBvdDogc3RyaW5nXG4gIHByZWZpeGVPcmdhbmVFeGFtZW46IHN0cmluZ1xuICBudW1lcm9SZWN0OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2lSZWZlcmVuY2Uge1xuICBjb2RlTG9pPzogc3RyaW5nXG4gIGRpdmlzaW9uQ29kZUxvaT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvaW50ZXVyRnJhZ21lbnRUZXh0ZSB7XG4gIGRpdmlzaW9uPzogRGl2aXNpb25cbiAgYWxpbmVhPzogQWxpbmVhXG4gIG1pc3Npb25WaXNlZT86IE1pc3Npb25WaXNlZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsaW5lYSB7XG4gIGF2YW50QUFwcmVzPzogQXZhbnRBQXByZXNcbiAgbnVtZXJvPzogc3RyaW5nXG4gIGFsaW5lYURlc2lnbmF0aW9uPzogc3RyaW5nXG59XG5cbmV4cG9ydCBlbnVtIEF2YW50QUFwcmVzIHtcbiAgQSA9IFwiQVwiLFxuICBBcHJlcyA9IFwiQXByZXNcIixcbiAgQXZhbnQgPSBcIkF2YW50XCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGl2aXNpb24ge1xuICB0aXRyZTogc3RyaW5nXG4gIGFydGljbGVEZXNpZ25hdGlvbkNvdXJ0ZT86IHN0cmluZ1xuICBhcnRpY2xlRGVzaWduYXRpb24/OiBzdHJpbmdcbiAgdHlwZTogRGl2aXNpb25UeXBlXG4gIGF2YW50QUFwcmVzOiBBdmFudEFBcHJlc1xuICBkaXZpc2lvblJhdHRhY2hlZT86IHN0cmluZ1xuICBhcnRpY2xlQWRkaXRpb25uZWw6IHN0cmluZ1xuICBjaGFwaXRyZUFkZGl0aW9ubmVsOiBzdHJpbmdcbiAgdXJsRGl2aXNpb25UZXh0ZVZpc2U/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gRGl2aXNpb25UeXBlIHtcbiAgQW5uZXhlID0gXCJBTk5FWEVcIixcbiAgQXJ0aWNsZSA9IFwiQVJUSUNMRVwiLFxuICBDaGFwaXRyZSA9IFwiQ0hBUElUUkVcIixcbiAgVGl0cmUgPSBcIlRJVFJFXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWlzc2lvblZpc2VlIHtcbiAgY29kZUV0YXQ6IENvZGVFdGF0XG4gIGNvZGVNaXNzaW9uTWluZWZpOiBzdHJpbmdcbiAgbGliZWxsZU1pc3Npb246IHN0cmluZ1xuICBtaXNzaW9uUmVmOiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gQ29kZUV0YXQge1xuICBCID0gXCJCXCIsXG4gIEMgPSBcIkNcIixcbiAgRCA9IFwiRFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcHJlc2VudGF0aW9uIHtcbiAgbm9tOiBOb21cbiAgdHlwZU1pbWU6IFR5cGVNaW1lXG4gIHN0YXR1dFJlcHJlc2VudGF0aW9uOiBTdGF0dXRSZXByZXNlbnRhdGlvblxuICBjb250ZW51OiBDb250ZW51XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudSB7XG4gIGRvY3VtZW50VVJJOiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gTm9tIHtcbiAgUGRmID0gXCJQREZcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXRSZXByZXNlbnRhdGlvbiB7XG4gIHZlcmJhdGltOiBib29sZWFuXG4gIGNhbm9uaXF1ZTogYm9vbGVhblxuICBvZmZpY2llbGxlOiBib29sZWFuXG4gIHRyYW5zY3JpcHRpb246IGJvb2xlYW5cbiAgZW5yZWdpc3RyZW1lbnQ6IGJvb2xlYW5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeXBlTWltZSB7XG4gIHR5cGU6IFR5cGVNaW1lVHlwZVxuICBzdWJUeXBlOiBOb21cbn1cblxuZXhwb3J0IGVudW0gVHlwZU1pbWVUeXBlIHtcbiAgQXBwbGljYXRpb24gPSBcImFwcGxpY2F0aW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0YWlyZXMge1xuICBhdXRldXI6IEF1dGV1clxuICBjb3NpZ25hdGFpcmVzUmVmcz86IHN0cmluZ1tdXG4gIGNvc2lnbmF0YWlyZXM/OiBBY3RldXJbXSAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICBzdWZmaXhlPzogc3RyaW5nXG4gIGxpYmVsbGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRldXIge1xuICB0eXBlQXV0ZXVyOiBUeXBlQXV0ZXVyXG4gIGdvdXZlcm5lbWVudFJlZj86IHN0cmluZ1xuICBnb3V2ZXJuZW1lbnQ/OiBPcmdhbmUgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgYWN0ZXVyUmVmPzogc3RyaW5nXG4gIGFjdGV1cj86IEFjdGV1ciAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICBncm91cGVQb2xpdGlxdWVSZWY/OiBzdHJpbmdcbiAgZ3JvdXBlUG9saXRpcXVlPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWY/OiBzdHJpbmdcbiAgYXV0ZXVyUmFwcG9ydGV1ck9yZ2FuZT86IE9yZ2FuZSAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xufVxuXG5leHBvcnQgZW51bSBUeXBlQXV0ZXVyIHtcbiAgRMOpcHV0w6kgPSBcIkTDqXB1dMOpXCIsXG4gIEdvdXZlcm5lbWVudCA9IFwiR291dmVybmVtZW50XCIsXG4gIFJhcHBvcnRldXIgPSBcIlJhcHBvcnRldXJcIixcbn1cblxuLy8gQ29udmVydHMgSlNPTiBzdHJpbmdzIHRvL2Zyb20geW91ciB0eXBlc1xuLy8gYW5kIGFzc2VydHMgdGhlIHJlc3VsdHMgb2YgSlNPTi5wYXJzZSBhdCBydW50aW1lXG5leHBvcnQgY2xhc3MgQ29udmVydCB7XG4gIHB1YmxpYyBzdGF0aWMgdG9BbWVuZGVtZW50KGpzb246IHN0cmluZyk6IEFtZW5kZW1lbnQge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50XCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBhbWVuZGVtZW50VG9Kc29uKHZhbHVlOiBBbWVuZGVtZW50KTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudFwiKSksIG51bGwsIDIpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvQW1lbmRlbWVudHMoanNvbjogc3RyaW5nKTogQW1lbmRlbWVudHMge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJBbWVuZGVtZW50c1wiKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgYW1lbmRlbWVudHNUb0pzb24odmFsdWU6IEFtZW5kZW1lbnRzKTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiQW1lbmRlbWVudHNcIikpLCBudWxsLCAyKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b1RleHRlTGVnaXNsYXRpZihqc29uOiBzdHJpbmcpOiBUZXh0ZUxlZ2lzbGF0aWYge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJUZXh0ZUxlZ2lzbGF0aWZcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRleHRlTGVnaXNsYXRpZlRvSnNvbih2YWx1ZTogVGV4dGVMZWdpc2xhdGlmKTogc3RyaW5nIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodW5jYXN0KHZhbHVlLCByKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSwgbnVsbCwgMilcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSA9IFwiXCIpOiBuZXZlciB7XG4gIGlmIChrZXkpIHtcbiAgICB0aHJvdyBFcnJvcihcbiAgICAgIGBJbnZhbGlkIHZhbHVlIGZvciBrZXkgXCIke2tleX1cIi4gRXhwZWN0ZWQgdHlwZSAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICB0eXAsXG4gICAgICApfSBidXQgZ290ICR7SlNPTi5zdHJpbmdpZnkodmFsKX1gLFxuICAgIClcbiAgfVxuICB0aHJvdyBFcnJvcihcbiAgICBgSW52YWxpZCB2YWx1ZSAke0pTT04uc3RyaW5naWZ5KHZhbCl9IGZvciB0eXBlICR7SlNPTi5zdHJpbmdpZnkodHlwKX1gLFxuICApXG59XG5cbmZ1bmN0aW9uIGpzb25Ub0pTUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICBpZiAodHlwLmpzb25Ub0pTID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBtYXA6IGFueSA9IHt9XG4gICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gKG1hcFtwLmpzb25dID0geyBrZXk6IHAuanMsIHR5cDogcC50eXAgfSkpXG4gICAgdHlwLmpzb25Ub0pTID0gbWFwXG4gIH1cbiAgcmV0dXJuIHR5cC5qc29uVG9KU1xufVxuXG5mdW5jdGlvbiBqc1RvSlNPTlByb3BzKHR5cDogYW55KTogYW55IHtcbiAgaWYgKHR5cC5qc1RvSlNPTiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgbWFwOiBhbnkgPSB7fVxuICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IChtYXBbcC5qc10gPSB7IGtleTogcC5qc29uLCB0eXA6IHAudHlwIH0pKVxuICAgIHR5cC5qc1RvSlNPTiA9IG1hcFxuICB9XG4gIHJldHVybiB0eXAuanNUb0pTT05cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtKHZhbDogYW55LCB0eXA6IGFueSwgZ2V0UHJvcHM6IGFueSwga2V5OiBhbnkgPSBcIlwiKTogYW55IHtcbiAgZnVuY3Rpb24gdHJhbnNmb3JtUHJpbWl0aXZlKHR5cDogc3RyaW5nLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKHR5cGVvZiB0eXAgPT09IHR5cGVvZiB2YWwpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXkpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IHZhbGlkYXRlIGFnYWluc3Qgb25lIHR5cCBpbiB0eXBzXG4gICAgY29uc3QgbCA9IHR5cHMubGVuZ3RoXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgIGNvbnN0IHR5cCA9IHR5cHNbaV1cbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGdldFByb3BzKVxuICAgICAgfSBjYXRjaCAoXykge31cbiAgICB9XG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXBzLCB2YWwpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1FbnVtKGNhc2VzOiBzdHJpbmdbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIGlmIChjYXNlcy5pbmRleE9mKHZhbCkgIT09IC0xKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZShjYXNlcywgdmFsKVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtQXJyYXkodHlwOiBhbnksIHZhbDogYW55KTogYW55IHtcbiAgICAvLyB2YWwgbXVzdCBiZSBhbiBhcnJheSB3aXRoIG5vIGludmFsaWQgZWxlbWVudHNcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsKSkgcmV0dXJuIGludmFsaWRWYWx1ZShcImFycmF5XCIsIHZhbClcbiAgICByZXR1cm4gdmFsLm1hcCgoZWwpID0+IHRyYW5zZm9ybShlbCwgdHlwLCBnZXRQcm9wcykpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCBkID0gbmV3IERhdGUodmFsKVxuICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJEYXRlXCIsIHZhbClcbiAgICB9XG4gICAgcmV0dXJuIGRcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybU9iamVjdChcbiAgICBwcm9wczogeyBbazogc3RyaW5nXTogYW55IH0sXG4gICAgYWRkaXRpb25hbDogYW55LFxuICAgIHZhbDogYW55LFxuICApOiBhbnkge1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXCJvYmplY3RcIiwgdmFsKVxuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9XG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvcHMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV1cbiAgICAgIGNvbnN0IHYgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCBrZXkpXG4gICAgICAgID8gdmFsW2tleV1cbiAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgIHJlc3VsdFtwcm9wLmtleV0gPSB0cmFuc2Zvcm0odiwgcHJvcC50eXAsIGdldFByb3BzLCBwcm9wLmtleSlcbiAgICB9KVxuICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcywga2V5KSkge1xuICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSlcbiAgICAgIH1cbiAgICB9KVxuICAgIHJldHVybiByZXN1bHRcbiAgfVxuXG4gIGlmICh0eXAgPT09IFwiYW55XCIpIHJldHVybiB2YWxcbiAgaWYgKHR5cCA9PT0gbnVsbCkge1xuICAgIGlmICh2YWwgPT09IG51bGwpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKVxuICB9XG4gIC8vIGlmICh0eXAgPT09IGZhbHNlKSByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsKVxuICB3aGlsZSAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIiAmJiB0eXAucmVmICE9PSB1bmRlZmluZWQpIHtcbiAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdXG4gIH1cbiAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkgcmV0dXJuIHRyYW5zZm9ybUVudW0odHlwLCB2YWwpXG4gIGlmICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKVxuICAgICAgPyB0cmFuc2Zvcm1Vbmlvbih0eXAudW5pb25NZW1iZXJzLCB2YWwpXG4gICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcImFycmF5SXRlbXNcIilcbiAgICAgID8gdHJhbnNmb3JtQXJyYXkodHlwLmFycmF5SXRlbXMsIHZhbClcbiAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwicHJvcHNcIilcbiAgICAgID8gdHJhbnNmb3JtT2JqZWN0KGdldFByb3BzKHR5cCksIHR5cC5hZGRpdGlvbmFsLCB2YWwpXG4gICAgICA6IGludmFsaWRWYWx1ZSh0eXAsIHZhbClcbiAgfVxuICAvLyBOdW1iZXJzIGNhbiBiZSBwYXJzZWQgYnkgRGF0ZSBidXQgc2hvdWxkbid0IGJlLlxuICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbClcbiAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbClcbn1cblxuZnVuY3Rpb24gY2FzdDxUPih2YWw6IGFueSwgdHlwOiBhbnkpOiBUIHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcylcbn1cblxuZnVuY3Rpb24gdW5jYXN0PFQ+KHZhbDogVCwgdHlwOiBhbnkpOiBhbnkge1xuICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKVxufVxuXG5mdW5jdGlvbiBhKHR5cDogYW55KSB7XG4gIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9XG59XG5cbmZ1bmN0aW9uIHUoLi4udHlwczogYW55W10pIHtcbiAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH1cbn1cblxuZnVuY3Rpb24gbyhwcm9wczogYW55W10sIGFkZGl0aW9uYWw6IGFueSkge1xuICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9XG59XG5cbi8vIGZ1bmN0aW9uIG0oYWRkaXRpb25hbDogYW55KSB7XG4vLyAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9XG4vLyB9XG5cbmZ1bmN0aW9uIHIobmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiB7IHJlZjogbmFtZSB9XG59XG5cbmNvbnN0IHR5cGVNYXA6IGFueSA9IHtcbiAgQW1lbmRlbWVudHM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIGpzOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIHR5cDogYShyKFwiVGV4dGVMZWdpc2xhdGlmXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGV4dGVMZWdpc2xhdGlmOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJyZWZUZXh0ZUxlZ2lzbGF0aWZcIiwganM6IFwicmVmVGV4dGVMZWdpc2xhdGlmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFtZW5kZW1lbnRzXCIsIGpzOiBcImFtZW5kZW1lbnRzXCIsIHR5cDogcihcIkFtZW5kZW1lbnRzQ2xhc3NcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBBbWVuZGVtZW50c0NsYXNzOiBvKFxuICAgIFt7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogYShyKFwiQW1lbmRlbWVudFwiKSkgfV0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnRXcmFwcGVyOiBvKFxuICAgIFt7IGpzb246IFwiYW1lbmRlbWVudFwiLCBqczogXCJhbWVuZGVtZW50XCIsIHR5cDogcihcIkFtZW5kZW1lbnRcIikgfV0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiY2hyb25vdGFnXCIsIGpzOiBcImNocm9ub3RhZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJsZWdpc2xhdHVyZVwiLCBqczogXCJsZWdpc2xhdHVyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpZGVudGlmaWNhdGlvblwiLFxuICAgICAgICBqczogXCJpZGVudGlmaWNhdGlvblwiLFxuICAgICAgICB0eXA6IHIoXCJJZGVudGlmaWNhdGlvblwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZXhhbWVuUmVmXCIsIGpzOiBcImV4YW1lblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0ZXh0ZUxlZ2lzbGF0aWZSZWZcIiwganM6IFwidGV4dGVMZWdpc2xhdGlmUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInRyaUFtZW5kZW1lbnRcIiwganM6IFwidHJpQW1lbmRlbWVudFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNhcmRpbmFsaXRlQW1kdE11bHRpcGxlc1wiLFxuICAgICAgICBqczogXCJjYXJkaW5hbGl0ZUFtZHRNdWx0aXBsZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImFtZW5kZW1lbnRQYXJlbnRSZWZcIixcbiAgICAgICAganM6IFwiYW1lbmRlbWVudFBhcmVudFJlZlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwic2lnbmF0YWlyZXNcIiwganM6IFwic2lnbmF0YWlyZXNcIiwgdHlwOiByKFwiU2lnbmF0YWlyZXNcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwb2ludGV1ckZyYWdtZW50VGV4dGVcIixcbiAgICAgICAganM6IFwicG9pbnRldXJGcmFnbWVudFRleHRlXCIsXG4gICAgICAgIHR5cDogcihcIlBvaW50ZXVyRnJhZ21lbnRUZXh0ZVwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiY29ycHNcIiwganM6IFwiY29ycHNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvcnBzXCIpKSB9LFxuICAgICAgeyBqc29uOiBcImN5Y2xlRGVWaWVcIiwganM6IFwiY3ljbGVEZVZpZVwiLCB0eXA6IHIoXCJDeWNsZURlVmllXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicmVwcmVzZW50YXRpb25cIixcbiAgICAgICAganM6IFwicmVwcmVzZW50YXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlJlcHJlc2VudGF0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic2VhbmNlRGlzY3Vzc2lvblJlZlwiLFxuICAgICAgICBqczogXCJzZWFuY2VEaXNjdXNzaW9uUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhcnRpY2xlOTlcIiwganM6IFwiYXJ0aWNsZTk5XCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImxvaVJlZmVyZW5jZVwiLFxuICAgICAgICBqczogXCJsb2lSZWZlcmVuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkxvaVJlZmVyZW5jZVwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpc2N1c3Npb25Db21tdW5lXCIsXG4gICAgICAgIGpzOiBcImRpc2N1c3Npb25Db21tdW5lXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNjdXNzaW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzY3Vzc2lvbklkZW50aXF1ZVwiLFxuICAgICAgICBqczogXCJkaXNjdXNzaW9uSWRlbnRpcXVlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJEaXNjdXNzaW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIixcbiAgICAgICAganM6IFwiYWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIixcbiAgICAgICAgdHlwOiByKFwiQWNjb3JkR291dmVybmVtZW50RGVwb3RIb3JzRGVsYWlcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvcnBzOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjYXJ0b3VjaGVJbmZvcm1hdGlmXCIsXG4gICAgICAgIGpzOiBcImNhcnRvdWNoZUluZm9ybWF0aWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNvbnRlbnVBdXRldXJcIixcbiAgICAgICAganM6IFwiY29udGVudUF1dGV1clwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQ29udGVudUF1dGV1clwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvbnRlbnVBdXRldXI6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImRpc3Bvc2l0aWZcIiwganM6IFwiZGlzcG9zaXRpZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImF2YW50QXBwZWxcIixcbiAgICAgICAganM6IFwiYXZhbnRBcHBlbFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQXZhbnRBcHBlbFwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImV4cG9zZVNvbW1haXJlXCIsIGpzOiBcImV4cG9zZVNvbW1haXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIixcbiAgICAgICAganM6IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIsXG4gICAgICAgIGpzOiBcImRpc3Bvc2l0aWZBbWR0Q3JlZGl0UExGUlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQXZhbnRBcHBlbDogbyhbeyBqc29uOiBcImRpc3Bvc2l0aWZcIiwganM6IFwiZGlzcG9zaXRpZlwiLCB0eXA6IFwiXCIgfV0sIGZhbHNlKSxcbiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEY6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImxpc3RlUHJvZ3JhbW1lc1wiLFxuICAgICAgICBqczogXCJsaXN0ZVByb2dyYW1tZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiUHJvZ3JhbW1lUGxmXCIpKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInNvbGRlQUVcIiwganM6IFwic29sZGVBRVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvbGRlQ1BcIiwganM6IFwic29sZGVDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImNwRWdhbEFlXCIsIGpzOiBcImNwRWdhbEFlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFByb2dyYW1tZVBsZjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInByb2dyYW1tZVJlZlwiLCBqczogXCJwcm9ncmFtbWVSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibGlnbmVzQ3JlZGl0c1wiLFxuICAgICAgICBqczogXCJsaWduZXNDcmVkaXRzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkxpZ25lQ3JlZGl0UExGXCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIExpZ25lQ3JlZGl0UExGOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYXV0b3Jpc2F0aW9uRW5nYWdlbWVudFwiLCBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNyZWRpdFBhaWVtZW50XCIsIGpzOiBcImNyZWRpdFBhaWVtZW50XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFjdGlvblwiLCBqczogXCJhY3Rpb25cIiwgdHlwOiByKFwiQWN0aW9uXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRGlzcG9zaXRpZkFtZHRDcmVkaXRQTEZSOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJsaXN0ZVByb2dyYW1tZXNcIixcbiAgICAgICAganM6IFwibGlzdGVQcm9ncmFtbWVzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkxpZ25lQ3JlZGl0UExGUlwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0b3RhbEFFXCIsIGpzOiBcInRvdGFsQUVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlRvdGFsXCIpKSB9LFxuICAgICAgeyBqc29uOiBcInRvdGFsQ1BcIiwganM6IFwidG90YWxDUFwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiVG90YWxcIikpIH0sXG4gICAgICB7IGpzb246IFwiY3BFZ2FsQWVcIiwganM6IFwiY3BFZ2FsQWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTGlnbmVDcmVkaXRQTEZSOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwicHJvZ3JhbW1lUmVmXCIsIGpzOiBcInByb2dyYW1tZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRTdXBwbGVtZW50YWlyZVwiLFxuICAgICAgICBqczogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50U3VwcGxlbWVudGFpcmVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjcmVkaXRQYWllbWVudFN1cHBsZW1lbnRhaXJlXCIsXG4gICAgICAgIGpzOiBcImNyZWRpdFBhaWVtZW50U3VwcGxlbWVudGFpcmVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRvcmlzYXRpb25FbmdhZ2VtZW50QW5udWxlXCIsXG4gICAgICAgIGpzOiBcImF1dG9yaXNhdGlvbkVuZ2FnZW1lbnRBbm51bGVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjcmVkaXRQYWllbWVudEFubnVsZVwiLCBqczogXCJjcmVkaXRQYWllbWVudEFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJhY3Rpb25cIiwganM6IFwiYWN0aW9uXCIsIHR5cDogcihcIkFjdGlvblwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImxpZ25lc0NyZWRpdHNcIixcbiAgICAgICAganM6IFwibGlnbmVzQ3JlZGl0c1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJMaWduZUNyZWRpdFBMRlJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiaWRcIiwganM6IFwiaWRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUb3RhbDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwic3VwcGxlbWVudGFpcmVcIiwganM6IFwic3VwcGxlbWVudGFpcmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiYW5udWxlXCIsIGpzOiBcImFubnVsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJzb2xkZVwiLCBqczogXCJzb2xkZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDeWNsZURlVmllOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlRGVwb3RcIiwganM6IFwiZGF0ZURlcG90XCIsIHR5cDogdSh1bmRlZmluZWQsIERhdGUpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGF0ZVB1YmxpY2F0aW9uXCIsXG4gICAgICAgIGpzOiBcImRhdGVQdWJsaWNhdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBEYXRlKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwic291bWlzQXJ0aWNsZTQwXCIsIGpzOiBcInNvdW1pc0FydGljbGU0MFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJldGF0RGVzVHJhaXRlbWVudHNcIixcbiAgICAgICAganM6IFwiZXRhdERlc1RyYWl0ZW1lbnRzXCIsXG4gICAgICAgIHR5cDogcihcIkV0YXREZXNUcmFpdGVtZW50c1wiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGF0ZVNvcnRcIixcbiAgICAgICAganM6IFwiZGF0ZVNvcnRcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgRGF0ZSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvcnRcIixcbiAgICAgICAganM6IFwic29ydFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiU29ydEFtZW5kZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBFdGF0RGVzVHJhaXRlbWVudHM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudFwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvdXNFdGF0XCIsXG4gICAgICAgIGpzOiBcInNvdXNFdGF0XCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJTb3VzRXRhdEFtZW5kZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBFdGF0QW1lbmRlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiY29kZVwiLCBqczogXCJjb2RlXCIsIHR5cDogcihcIkV0YXRBbWVuZGVtZW50Q29kZVwiKSB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudExpYmVsbGVcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBTb3VzRXRhdEFtZW5kZW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImNvZGVcIiwganM6IFwiY29kZVwiLCB0eXA6IHIoXCJFdGF0QW1lbmRlbWVudENvZGVcIikgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiByKFwiU29ydEFtZW5kZW1lbnRcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBEaXNjdXNzaW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJpZERpc2N1c3Npb25cIiwganM6IFwiaWREaXNjdXNzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwidHlwZVBvc2l0aW9uXCIsXG4gICAgICAgIGpzOiBcInR5cGVQb3NpdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiVHlwZVBvc2l0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgSWRlbnRpZmljYXRpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIm51bWVyb0xvbmdcIiwganM6IFwibnVtZXJvTG9uZ1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJudW1lcm9PcmRyZURlcG90XCIsIGpzOiBcIm51bWVyb09yZHJlRGVwb3RcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwicHJlZml4ZU9yZ2FuZUV4YW1lblwiLCBqczogXCJwcmVmaXhlT3JnYW5lRXhhbWVuXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm51bWVyb1JlY3RcIiwganM6IFwibnVtZXJvUmVjdFwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBMb2lSZWZlcmVuY2U6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcImNvZGVMb2lcIixcbiAgICAgICAganM6IFwiY29kZUxvaVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGl2aXNpb25Db2RlTG9pXCIsXG4gICAgICAgIGpzOiBcImRpdmlzaW9uQ29kZUxvaVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgUG9pbnRldXJGcmFnbWVudFRleHRlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkaXZpc2lvblwiLCBqczogXCJkaXZpc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGl2aXNpb25cIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWxpbmVhXCIsXG4gICAgICAgIGpzOiBcImFsaW5lYVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQWxpbmVhXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibWlzc2lvblZpc2VlXCIsXG4gICAgICAgIGpzOiBcIm1pc3Npb25WaXNlZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiTWlzc2lvblZpc2VlXCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQWxpbmVhOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdmFudEFBcHJlc1wiLFxuICAgICAgICBqczogXCJhdmFudEFBcHJlc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiQXZhbnRBQXByZXNcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJudW1lcm9cIiwganM6IFwibnVtZXJvXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWxpbmVhRGVzaWduYXRpb25cIixcbiAgICAgICAganM6IFwiYWxpbmVhRGVzaWduYXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERpdmlzaW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0aXRyZVwiLCBqczogXCJ0aXRyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25Db3VydGVcIixcbiAgICAgICAganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uQ291cnRlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhcnRpY2xlRGVzaWduYXRpb25cIixcbiAgICAgICAganM6IFwiYXJ0aWNsZURlc2lnbmF0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiRGl2aXNpb25UeXBlXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYXZhbnRBQXByZXNcIixcbiAgICAgICAganM6IFwiYXZhbnRBQXByZXNcIixcbiAgICAgICAgdHlwOiByKFwiQXZhbnRBQXByZXNcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsXG4gICAgICAgIGpzOiBcImRpdmlzaW9uUmF0dGFjaGVlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhcnRpY2xlQWRkaXRpb25uZWxcIiwganM6IFwiYXJ0aWNsZUFkZGl0aW9ubmVsXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImNoYXBpdHJlQWRkaXRpb25uZWxcIiwganM6IFwiY2hhcGl0cmVBZGRpdGlvbm5lbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ1cmxEaXZpc2lvblRleHRlVmlzZVwiLFxuICAgICAgICBqczogXCJ1cmxEaXZpc2lvblRleHRlVmlzZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTWlzc2lvblZpc2VlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJjb2RlRXRhdFwiLCBqczogXCJjb2RlRXRhdFwiLCB0eXA6IHIoXCJDb2RlRXRhdFwiKSB9LFxuICAgICAgeyBqc29uOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIGpzOiBcImNvZGVNaXNzaW9uTWluZWZpXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVNaXNzaW9uXCIsIGpzOiBcImxpYmVsbGVNaXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm1pc3Npb25SZWZcIiwganM6IFwibWlzc2lvblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBSZXByZXNlbnRhdGlvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibm9tXCIsIGpzOiBcIm5vbVwiLCB0eXA6IHIoXCJOb21cIikgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlTWltZVwiLCBqczogXCJ0eXBlTWltZVwiLCB0eXA6IHIoXCJUeXBlTWltZVwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsXG4gICAgICAgIGpzOiBcInN0YXR1dFJlcHJlc2VudGF0aW9uXCIsXG4gICAgICAgIHR5cDogcihcIlN0YXR1dFJlcHJlc2VudGF0aW9uXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjb250ZW51XCIsIGpzOiBcImNvbnRlbnVcIiwgdHlwOiByKFwiQ29udGVudVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvbnRlbnU6IG8oW3sganNvbjogXCJkb2N1bWVudFVSSVwiLCBqczogXCJkb2N1bWVudFVSSVwiLCB0eXA6IFwiXCIgfV0sIGZhbHNlKSxcbiAgU3RhdHV0UmVwcmVzZW50YXRpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInZlcmJhdGltXCIsIGpzOiBcInZlcmJhdGltXCIsIHR5cDogZmFsc2UgfSxcbiAgICAgIHsganNvbjogXCJjYW5vbmlxdWVcIiwganM6IFwiY2Fub25pcXVlXCIsIHR5cDogZmFsc2UgfSxcbiAgICAgIHsganNvbjogXCJvZmZpY2llbGxlXCIsIGpzOiBcIm9mZmljaWVsbGVcIiwgdHlwOiBmYWxzZSB9LFxuICAgICAgeyBqc29uOiBcInRyYW5zY3JpcHRpb25cIiwganM6IFwidHJhbnNjcmlwdGlvblwiLCB0eXA6IGZhbHNlIH0sXG4gICAgICB7IGpzb246IFwiZW5yZWdpc3RyZW1lbnRcIiwganM6IFwiZW5yZWdpc3RyZW1lbnRcIiwgdHlwOiBmYWxzZSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFR5cGVNaW1lOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiVHlwZU1pbWVUeXBlXCIpIH0sXG4gICAgICB7IGpzb246IFwic3ViVHlwZVwiLCBqczogXCJzdWJUeXBlXCIsIHR5cDogcihcIk5vbVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNpZ25hdGFpcmVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhdXRldXJcIiwganM6IFwiYXV0ZXVyXCIsIHR5cDogcihcIkF1dGV1clwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNvc2lnbmF0YWlyZXNSZWZzXCIsXG4gICAgICAgIGpzOiBcImNvc2lnbmF0YWlyZXNSZWZzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEoXCJcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzdWZmaXhlXCIsXG4gICAgICAgIGpzOiBcInN1ZmZpeGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEF1dGV1cjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwidHlwZUF1dGV1clwiLCBqczogXCJ0eXBlQXV0ZXVyXCIsIHR5cDogcihcIlR5cGVBdXRldXJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJnb3V2ZXJuZW1lbnRSZWZcIixcbiAgICAgICAganM6IFwiZ291dmVybmVtZW50UmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhY3RldXJSZWZcIixcbiAgICAgICAganM6IFwiYWN0ZXVyUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJncm91cGVQb2xpdGlxdWVSZWZcIixcbiAgICAgICAganM6IFwiZ3JvdXBlUG9saXRpcXVlUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRldXJSYXBwb3J0ZXVyT3JnYW5lUmVmXCIsXG4gICAgICAgIGpzOiBcImF1dGV1clJhcHBvcnRldXJPcmdhbmVSZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFjY29yZEdvdXZlcm5lbWVudERlcG90SG9yc0RlbGFpOiBbXCJBY2NvcmRcIiwgXCJTYW5zIG9iamV0XCJdLFxuICBBY3Rpb246IFtcImNyw6lhdGlvblwiLCBcIm1vZGlmaWNhdGlvblwiLCBcInN1cHByZXNzaW9uXCJdLFxuICBFdGF0QW1lbmRlbWVudENvZGU6IFtcbiAgICBcIkFDXCIsXG4gICAgXCJBVFwiLFxuICAgIFwiRElcIixcbiAgICBcImVmZmFjw6lcIixcbiAgICBcIkVSXCIsXG4gICAgXCJJUlwiLFxuICAgIFwiSVJSMTI3XCIsXG4gICAgXCJJUlIyMFwiLFxuICAgIFwiSVJSMzdcIixcbiAgICBcIklSUjM4XCIsXG4gICAgXCJJUlI0MVwiLFxuICAgIFwiSVJSNDJcIixcbiAgICBcIklSUjQ1XCIsXG4gICAgXCJJUlI0OFwiLFxuICAgIFwiSVJSNTNcIixcbiAgICBcIklSUkFJXCIsXG4gICAgXCJJUlJEXCIsXG4gICAgXCJJUlJIRFwiLFxuICAgIFwiSVJSU0FcIixcbiAgICBcIlJcIixcbiAgICBcIlJUXCIsXG4gICAgXCJUXCIsXG4gIF0sXG4gIEV0YXRBbWVuZGVtZW50TGliZWxsZTogW1xuICAgIFwiQSBkaXNjdXRlclwiLFxuICAgIFwiQSBkw6lwb3NlclwiLFxuICAgIFwiRGlzY3V0w6lcIixcbiAgICBcImVmZmFjw6lcIixcbiAgICBcIkVuIHJlY2V2YWJpbGl0w6lcIixcbiAgICBcIkVuIHRyYWl0ZW1lbnRcIixcbiAgICBcIklycmVjZXZhYmxlXCIsXG4gICAgXCJJcnJlY2V2YWJsZSA0MFwiLFxuICAgIFwiUmV0aXLDqVwiLFxuICBdLFxuICBTb3J0QW1lbmRlbWVudDogW1xuICAgIFwiQWRvcHTDqVwiLFxuICAgIFwiQXV0cmUgaXJyZWNldmFiaWxpdMOpXCIsXG4gICAgXCJBdXRyZXMgaXJyIExPTEZcIixcbiAgICBcIkF1dHJlcyBpcnIgTE9MRlNTXCIsXG4gICAgXCJDYXZhbGllciAoNDUpXCIsXG4gICAgXCJDYXZhbGllciBidWRnw6l0YWlyZVwiLFxuICAgIFwiQ2F2YWxpZXIgc29jaWFsXCIsXG4gICAgXCJDaGFtcCBkZSBsJ2hhYmlsaXRhdGlvbiAoMzgpXCIsXG4gICAgXCJDaGFyZ2VcIixcbiAgICBcIkNNUCAoNDUpXCIsXG4gICAgXCJDcsOpZGl0c1wiLFxuICAgIFwiRGlzcG9zaXRpb24gcsOpZ2xlbWVudGFpcmUgKDM3KVwiLFxuICAgIFwiRG9tYWluZSBkZSBsYSBsb2kgKDQxKVwiLFxuICAgIFwiRG9tYWluZSBsb2kgb3JnYW5pcXVlICgxMjcpXCIsXG4gICAgXCJEb3VibG9uXCIsXG4gICAgXCJFbnRvbm5vaXIgKDQ1KVwiLFxuICAgIFwiR2FnZVwiLFxuICAgIFwiSG9ycy1kw6lsYWlzXCIsXG4gICAgXCJJbmpvbmN0aW9uICgyMClcIixcbiAgICBcIklyciBlbiBwcmVtacOocmUgcGFydGllXCIsXG4gICAgXCJJcnIgZW4gc2Vjb25kZSBwYXJ0aWVcIixcbiAgICBcIkxPTEZcIixcbiAgICBcIkxPTEZTU1wiLFxuICAgIFwiTm9uIHNvdXRlbnVcIixcbiAgICBcIk9yZHJlIGR1IGpvdXIgKDQ4KVwiLFxuICAgIFwiUlwiLFxuICAgIFwiUmF0aWZpY2F0aW9uIHRyYWl0w6kgKDUzKVwiLFxuICAgIFwiUmVqZXTDqVwiLFxuICAgIFwiUmV0aXLDqVwiLFxuICAgIFwiUmV0aXLDqSBhcHLDqHMgcHVibGljYXRpb25cIixcbiAgICBcIlJldGlyw6kgYXZhbnQgcHVibGljYXRpb25cIixcbiAgICBcIlNhdGlzZmFpdCBvdSBpbm9ww6lyYW50ICg0MilcIixcbiAgICBcIlNvdXMtYW1lbmRlbWVudCAoOTgpXCIsXG4gICAgXCJUb21iw6lcIixcbiAgXSxcbiAgVHlwZVBvc2l0aW9uOiBbXCJEZXJuaWVyXCIsIFwiTWlsaWV1XCIsIFwiUHJlbWllclwiXSxcbiAgQXZhbnRBQXByZXM6IFtcIkFcIiwgXCJBcHJlc1wiLCBcIkF2YW50XCJdLFxuICBEaXZpc2lvblR5cGU6IFtcIkFOTkVYRVwiLCBcIkFSVElDTEVcIiwgXCJDSEFQSVRSRVwiLCBcIlRJVFJFXCJdLFxuICBDb2RlRXRhdDogW1wiQlwiLCBcIkNcIiwgXCJEXCJdLFxuICBOb206IFtcIlBERlwiXSxcbiAgVHlwZU1pbWVUeXBlOiBbXCJhcHBsaWNhdGlvblwiXSxcbiAgVHlwZUF1dGV1cjogW1wiRMOpcHV0w6lcIiwgXCJHb3V2ZXJuZW1lbnRcIiwgXCJSYXBwb3J0ZXVyXCJdLFxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtJQXFDWUEsZ0M7OztXQUFBQSxnQztFQUFBQSxnQztFQUFBQSxnQztHQUFBQSxnQyxnREFBQUEsZ0M7O0lBc0NBQyxNOzs7V0FBQUEsTTtFQUFBQSxNO0VBQUFBLE07RUFBQUEsTTtHQUFBQSxNLHNCQUFBQSxNOztJQTBEQUMsa0I7OztXQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtFQUFBQSxrQjtHQUFBQSxrQixrQ0FBQUEsa0I7O0lBeUJBQyxxQjs7O1dBQUFBLHFCO0VBQUFBLHFCO0VBQUFBLHFCO0VBQUFBLHFCO0VBQUFBLHFCO0VBQUFBLHFCO0VBQUFBLHFCO0VBQUFBLHFCO0VBQUFBLHFCO0VBQUFBLHFCO0dBQUFBLHFCLHFDQUFBQSxxQjs7SUFpQkFDLGM7OztXQUFB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