@tricoteuses/assemblee 1.0.7 → 1.1.0

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 (134) hide show
  1. package/lib/api.js +3 -9
  2. package/lib/api.mjs +4 -5
  3. package/lib/bugs/acteur-00010/plugin.test.js +3 -50
  4. package/lib/bugs/acteur-00010/plugin.test.mjs +1 -1
  5. package/lib/bugs/acteur-00010.js +2 -57
  6. package/lib/bugs/acteur-00010.mjs +1 -6
  7. package/lib/bugs/agenda-00002/plugin.test.js +3 -53
  8. package/lib/bugs/agenda-00002/plugin.test.mjs +1 -3
  9. package/lib/bugs/agenda-00002.js +3 -148
  10. package/lib/bugs/agenda-00002.mjs +1 -28
  11. package/lib/bugs/agenda-00008/plugin.test.js +3 -52
  12. package/lib/bugs/agenda-00008/plugin.test.mjs +1 -1
  13. package/lib/bugs/agenda-00008.js +2 -61
  14. package/lib/bugs/agenda-00008.mjs +1 -5
  15. package/lib/bugs/agenda-00011/plugin.test.js +5 -99
  16. package/lib/bugs/agenda-00011/plugin.test.mjs +3 -3
  17. package/lib/bugs/agenda-00011.js +4 -105
  18. package/lib/bugs/agenda-00011.mjs +3 -29
  19. package/lib/bugs.js +3 -164
  20. package/lib/bugs.mjs +1 -26
  21. package/lib/cleaners/actes_legislatifs.js +11 -115
  22. package/lib/cleaners/actes_legislatifs.mjs +7 -82
  23. package/lib/cleaners/acteurs.js +12 -92
  24. package/lib/cleaners/acteurs.mjs +7 -38
  25. package/lib/cleaners/amendements.js +10 -103
  26. package/lib/cleaners/amendements.mjs +4 -58
  27. package/lib/cleaners/documents.js +5 -67
  28. package/lib/cleaners/documents.mjs +1 -37
  29. package/lib/cleaners/dossiers_legislatifs.js +5 -61
  30. package/lib/cleaners/dossiers_legislatifs.mjs +1 -29
  31. package/lib/cleaners/index.js +1 -9
  32. package/lib/cleaners/index.mjs +1 -1
  33. package/lib/cleaners/organes.js +1 -33
  34. package/lib/cleaners/organes.mjs +1 -17
  35. package/lib/cleaners/reunions.js +4 -119
  36. package/lib/cleaners/reunions.mjs +1 -64
  37. package/lib/cleaners/scrutins.js +10 -102
  38. package/lib/cleaners/scrutins.mjs +1 -48
  39. package/lib/cleaners/xml.js +8 -42
  40. package/lib/cleaners/xml.mjs +6 -8
  41. package/lib/datasets.js +14 -113
  42. package/lib/datasets.mjs +6 -46
  43. package/lib/dates.js +7 -37
  44. package/lib/dates.mjs +9 -14
  45. package/lib/dossiers_legislatifs.js +6 -68
  46. package/lib/dossiers_legislatifs.mjs +5 -36
  47. package/lib/file_systems.js +56 -139
  48. package/lib/file_systems.mjs +1 -9
  49. package/lib/git.js +4 -53
  50. package/lib/git.mjs +1 -12
  51. package/lib/index.js +1 -15
  52. package/lib/index.mjs +1 -1
  53. package/lib/inserters.js +23 -146
  54. package/lib/inserters.mjs +6 -87
  55. package/lib/loaders.js +44 -316
  56. package/lib/loaders.mjs +12 -135
  57. package/lib/organes.js +1 -7
  58. package/lib/organes.mjs +1 -4
  59. package/lib/parsers/documents.js +22 -151
  60. package/lib/parsers/documents.mjs +19 -81
  61. package/lib/parsers/index.js +1 -4
  62. package/lib/parsers/index.mjs +1 -1
  63. package/lib/parsers/recherche_amendements.js +302 -527
  64. package/lib/parsers/recherche_amendements.mjs +8 -31
  65. package/lib/raw_types/acteurs_et_organes.d.ts +1 -30
  66. package/lib/raw_types/acteurs_et_organes.js +5 -124
  67. package/lib/raw_types/acteurs_et_organes.mjs +5 -105
  68. package/lib/raw_types/agendas.js +6 -89
  69. package/lib/raw_types/agendas.mjs +9 -65
  70. package/lib/raw_types/amendements.d.ts +2 -0
  71. package/lib/raw_types/amendements.js +10 -90
  72. package/lib/raw_types/amendements.mjs +11 -69
  73. package/lib/raw_types/dossiers_legislatifs.js +6 -96
  74. package/lib/raw_types/dossiers_legislatifs.mjs +6 -73
  75. package/lib/raw_types/scrutins.js +6 -81
  76. package/lib/raw_types/scrutins.mjs +9 -57
  77. package/lib/scripts/bugs_helper.js +2 -181
  78. package/lib/scripts/bugs_helper.mjs +2 -39
  79. package/lib/scripts/clean_data.js +27 -143
  80. package/lib/scripts/clean_data.mjs +15 -34
  81. package/lib/scripts/clean_reorganized_data.js +76 -240
  82. package/lib/scripts/clean_reorganized_data.mjs +36 -99
  83. package/lib/scripts/diff_amendements.js +19 -79
  84. package/lib/scripts/diff_amendements.mjs +17 -35
  85. package/lib/scripts/document_dossiers_legislatifs.js +17 -142
  86. package/lib/scripts/document_dossiers_legislatifs.mjs +6 -90
  87. package/lib/scripts/get_today_reunions.js +4 -22
  88. package/lib/scripts/get_today_reunions.mjs +1 -7
  89. package/lib/scripts/merge_scrutins.js +3 -47
  90. package/lib/scripts/merge_scrutins.mjs +1 -9
  91. package/lib/scripts/parse_textes_lois.js +15 -44
  92. package/lib/scripts/parse_textes_lois.mjs +18 -19
  93. package/lib/scripts/raw_types_from_amendements.js +3 -95
  94. package/lib/scripts/raw_types_from_amendements.mjs +1 -16
  95. package/lib/scripts/reorganize_data.js +74 -294
  96. package/lib/scripts/reorganize_data.mjs +22 -133
  97. package/lib/scripts/retrieve_deputes_photos.js +6 -119
  98. package/lib/scripts/retrieve_deputes_photos.mjs +7 -33
  99. package/lib/scripts/retrieve_documents.js +4 -192
  100. package/lib/scripts/retrieve_documents.mjs +2 -50
  101. package/lib/scripts/retrieve_open_data.js +44 -116
  102. package/lib/scripts/retrieve_open_data.mjs +14 -19
  103. package/lib/scripts/retrieve_pending_amendments.js +4 -98
  104. package/lib/scripts/retrieve_pending_amendments.mjs +1 -14
  105. package/lib/scripts/retrieve_senateurs_photos.js +18 -114
  106. package/lib/scripts/retrieve_senateurs_photos.mjs +20 -48
  107. package/lib/scripts/retrieve_textes_lois.js +3 -122
  108. package/lib/scripts/retrieve_textes_lois.mjs +3 -21
  109. package/lib/scripts/test_load.js +2 -10
  110. package/lib/scripts/test_load.mjs +2 -1
  111. package/lib/scripts/test_load_big_files.js +2 -10
  112. package/lib/scripts/test_load_big_files.mjs +2 -1
  113. package/lib/scripts/validate_json.js +4 -119
  114. package/lib/scripts/validate_json.mjs +2 -36
  115. package/lib/shared_types/codes_actes.js +1 -24
  116. package/lib/shared_types/codes_actes.mjs +3 -10
  117. package/lib/strings.js +1 -5
  118. package/lib/strings.mjs +1 -1
  119. package/lib/types/acteurs_et_organes.js +9 -84
  120. package/lib/types/acteurs_et_organes.mjs +10 -63
  121. package/lib/types/agendas.js +8 -90
  122. package/lib/types/agendas.mjs +11 -66
  123. package/lib/types/amendements.d.ts +2 -0
  124. package/lib/types/amendements.js +12 -92
  125. package/lib/types/amendements.mjs +15 -70
  126. package/lib/types/dossiers_legislatifs.js +8 -96
  127. package/lib/types/dossiers_legislatifs.mjs +10 -72
  128. package/lib/types/legislatures.js +1 -3
  129. package/lib/types/legislatures.mjs +1 -2
  130. package/lib/types/scrutins.js +8 -82
  131. package/lib/types/scrutins.mjs +11 -58
  132. package/lib/urls.js +3 -27
  133. package/lib/urls.mjs +3 -21
  134. package/package.json +1 -1
@@ -1,57 +1,33 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.symbol.js");
4
-
5
4
  require("core-js/modules/es.symbol.description.js");
6
-
7
5
  require("core-js/modules/es.symbol.iterator.js");
8
-
9
6
  require("core-js/modules/es.array.iterator.js");
10
-
11
7
  require("core-js/modules/es.string.iterator.js");
12
-
13
8
  require("core-js/modules/web.dom-collections.iterator.js");
14
-
15
9
  Object.defineProperty(exports, "__esModule", {
16
10
  value: true
17
11
  });
18
12
  exports.TypeTexte = exports.TypeMission = exports.TypeJo = exports.TypeDocument = exports.TypeCorrection = exports.TypeBudget = exports.TypeActeLegislatif = exports.StatutAdoption = exports.Qualite = exports.Provenance = exports.Motif = exports.DossierParlementaireXsiType = exports.DocumentDenominationStructurelle = exports.Convert = exports.Cause = void 0;
19
-
20
13
  require("core-js/modules/es.array.concat.js");
21
-
22
14
  require("core-js/modules/es.array.for-each.js");
23
-
24
15
  require("core-js/modules/es.object.to-string.js");
25
-
26
16
  require("core-js/modules/web.dom-collections.for-each.js");
27
-
28
17
  require("core-js/modules/es.array.index-of.js");
29
-
30
18
  require("core-js/modules/es.array.is-array.js");
31
-
32
19
  require("core-js/modules/es.array.map.js");
33
-
34
20
  require("core-js/modules/es.date.to-string.js");
35
-
36
21
  require("core-js/modules/es.object.get-own-property-names.js");
37
-
38
22
  require("core-js/modules/es.object.values.js");
39
-
40
23
  require("core-js/modules/es.object.define-property.js");
41
-
42
24
  var _codes_actes = require("../shared_types/codes_actes");
43
-
44
25
  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); }
45
-
46
26
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
47
-
48
27
  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); } }
49
-
50
28
  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
51
-
52
29
  var DossierParlementaireXsiType;
53
30
  exports.DossierParlementaireXsiType = DossierParlementaireXsiType;
54
-
55
31
  (function (DossierParlementaireXsiType) {
56
32
  DossierParlementaireXsiType["DossierCommissionEnqueteType"] = "DossierCommissionEnquete_Type";
57
33
  DossierParlementaireXsiType["DossierIniativeExecutifType"] = "DossierIniativeExecutif_Type";
@@ -60,10 +36,8 @@ exports.DossierParlementaireXsiType = DossierParlementaireXsiType;
60
36
  DossierParlementaireXsiType["DossierMissionInformationType"] = "DossierMissionInformation_Type";
61
37
  DossierParlementaireXsiType["DossierResolutionAn"] = "DossierResolutionAN";
62
38
  })(DossierParlementaireXsiType || (exports.DossierParlementaireXsiType = DossierParlementaireXsiType = {}));
63
-
64
39
  var TypeBudget;
65
40
  exports.TypeBudget = TypeBudget;
66
-
67
41
  (function (TypeBudget) {
68
42
  TypeBudget["BudgetAnnexe"] = "Budget annexe";
69
43
  TypeBudget["BudgetG\xE9n\xE9ral"] = "Budget g\xE9n\xE9ral";
@@ -71,19 +45,15 @@ exports.TypeBudget = TypeBudget;
71
45
  TypeBudget["CompteSp\xE9cial"] = "Compte sp\xE9cial";
72
46
  TypeBudget["Premi\xE8rePartie"] = "Premi\xE8re partie";
73
47
  })(TypeBudget || (exports.TypeBudget = TypeBudget = {}));
74
-
75
48
  var TypeMission;
76
49
  exports.TypeMission = TypeMission;
77
-
78
50
  (function (TypeMission) {
79
51
  TypeMission["MissionPrincipale"] = "mission principale";
80
52
  TypeMission["MissionSecondaire"] = "mission secondaire";
81
53
  TypeMission["PartieDeMission"] = "partie de mission";
82
54
  })(TypeMission || (exports.TypeMission = TypeMission = {}));
83
-
84
55
  var Qualite;
85
56
  exports.Qualite = Qualite;
86
-
87
57
  (function (Qualite) {
88
58
  Qualite["Auteur"] = "auteur";
89
59
  Qualite["Rapporteur"] = "rapporteur";
@@ -91,10 +61,8 @@ exports.Qualite = Qualite;
91
61
  Qualite["RapporteurPourAvis"] = "rapporteur pour avis";
92
62
  Qualite["RapporteurSp\xE9cial"] = "rapporteur sp\xE9cial";
93
63
  })(Qualite || (exports.Qualite = Qualite = {}));
94
-
95
64
  var TypeActeLegislatif;
96
65
  exports.TypeActeLegislatif = TypeActeLegislatif;
97
-
98
66
  (function (TypeActeLegislatif) {
99
67
  TypeActeLegislatif["AdoptionEuropeType"] = "Adoption_Europe_Type";
100
68
  TypeActeLegislatif["ConclusionEtapeCcType"] = "ConclusionEtapeCC_Type";
@@ -126,40 +94,30 @@ exports.TypeActeLegislatif = TypeActeLegislatif;
126
94
  TypeActeLegislatif["SaisieComFondType"] = "SaisieComFond_Type";
127
95
  TypeActeLegislatif["SaisineConseilConstitType"] = "SaisineConseilConstit_Type";
128
96
  })(TypeActeLegislatif || (exports.TypeActeLegislatif = TypeActeLegislatif = {}));
129
-
130
97
  var TypeTexte;
131
98
  exports.TypeTexte = TypeTexte;
132
-
133
99
  (function (TypeTexte) {
134
100
  TypeTexte["Bta"] = "BTA";
135
101
  TypeTexte["Tap"] = "TAP";
136
102
  })(TypeTexte || (exports.TypeTexte = TypeTexte = {}));
137
-
138
103
  var Motif;
139
104
  exports.Motif = Motif;
140
-
141
105
  (function (Motif) {
142
106
  Motif["EnApplicationDeLArticle612DeLaConstitution"] = "En application de l'article 61\xA72 de la Constitution";
143
107
  })(Motif || (exports.Motif = Motif = {}));
144
-
145
108
  var TypeJo;
146
109
  exports.TypeJo = TypeJo;
147
-
148
110
  (function (TypeJo) {
149
111
  TypeJo["JoLoiDecret"] = "JO_LOI_DECRET";
150
112
  })(TypeJo || (exports.TypeJo = TypeJo = {}));
151
-
152
113
  var Cause;
153
114
  exports.Cause = Cause;
154
-
155
115
  (function (Cause) {
156
116
  Cause["DossierAbsorb\xE9"] = "Dossier absorb\xE9";
157
117
  Cause["ExamenCommun"] = "Examen commun";
158
118
  })(Cause || (exports.Cause = Cause = {}));
159
-
160
119
  var TypeDocument;
161
120
  exports.TypeDocument = TypeDocument;
162
-
163
121
  (function (TypeDocument) {
164
122
  TypeDocument["AccordInternationalType"] = "accordInternational_Type";
165
123
  TypeDocument["AvisConseilEtatType"] = "avisConseilEtat_Type";
@@ -167,26 +125,20 @@ exports.TypeDocument = TypeDocument;
167
125
  TypeDocument["RapportParlementaireType"] = "rapportParlementaire_Type";
168
126
  TypeDocument["TexteLoiType"] = "texteLoi_Type";
169
127
  })(TypeDocument || (exports.TypeDocument = TypeDocument = {}));
170
-
171
128
  var StatutAdoption;
172
129
  exports.StatutAdoption = StatutAdoption;
173
-
174
130
  (function (StatutAdoption) {
175
131
  StatutAdoption["Adoptcom"] = "ADOPTCOM";
176
132
  StatutAdoption["Adoptseance"] = "ADOPTSEANCE";
177
133
  StatutAdoption["Rejetseance"] = "REJETSEANCE";
178
134
  })(StatutAdoption || (exports.StatutAdoption = StatutAdoption = {}));
179
-
180
135
  var TypeCorrection;
181
136
  exports.TypeCorrection = TypeCorrection;
182
-
183
137
  (function (TypeCorrection) {
184
138
  TypeCorrection["Rectifi\xE9"] = "Rectifi\xE9";
185
139
  })(TypeCorrection || (exports.TypeCorrection = TypeCorrection = {}));
186
-
187
140
  var DocumentDenominationStructurelle;
188
141
  exports.DocumentDenominationStructurelle = DocumentDenominationStructurelle;
189
-
190
142
  (function (DocumentDenominationStructurelle) {
191
143
  DocumentDenominationStructurelle["Allocution"] = "Allocution";
192
144
  DocumentDenominationStructurelle["Avis"] = "Avis";
@@ -200,23 +152,18 @@ exports.DocumentDenominationStructurelle = DocumentDenominationStructurelle;
200
152
  DocumentDenominationStructurelle["RapportDInformation"] = "Rapport d'information";
201
153
  DocumentDenominationStructurelle["R\xE9solution"] = "R\xE9solution";
202
154
  })(DocumentDenominationStructurelle || (exports.DocumentDenominationStructurelle = DocumentDenominationStructurelle = {}));
203
-
204
155
  var Provenance; // Converts JSON strings to/from your types
205
156
  // and asserts the results of JSON.parse at runtime
206
-
207
157
  exports.Provenance = Provenance;
208
-
209
158
  (function (Provenance) {
210
159
  Provenance["Commission"] = "Commission";
211
160
  Provenance["S\xE9ance"] = "S\xE9ance";
212
161
  Provenance["TexteD\xE9pos\xE9"] = "Texte D\xE9pos\xE9";
213
162
  })(Provenance || (exports.Provenance = Provenance = {}));
214
-
215
163
  var Convert = /*#__PURE__*/function () {
216
164
  function Convert() {
217
165
  _classCallCheck(this, Convert);
218
166
  }
219
-
220
167
  _createClass(Convert, null, [{
221
168
  key: "toDossiersLegislatifs",
222
169
  value: function toDossiersLegislatifs(json) {
@@ -248,22 +195,16 @@ var Convert = /*#__PURE__*/function () {
248
195
  return JSON.stringify(uncast(value, r("DossierParlementaire")), null, 2);
249
196
  }
250
197
  }]);
251
-
252
198
  return Convert;
253
199
  }();
254
-
255
200
  exports.Convert = Convert;
256
-
257
201
  function invalidValue(typ, val) {
258
202
  var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "";
259
-
260
203
  if (key) {
261
204
  throw Error("Invalid value for key \"".concat(key, "\". Expected type ").concat(JSON.stringify(typ), " but got ").concat(JSON.stringify(val)));
262
205
  }
263
-
264
206
  throw Error("Invalid value ".concat(JSON.stringify(val), " for type ").concat(JSON.stringify(typ)));
265
207
  }
266
-
267
208
  function jsonToJSProps(typ) {
268
209
  if (typ.jsonToJS === undefined) {
269
210
  var map = {};
@@ -275,10 +216,8 @@ function jsonToJSProps(typ) {
275
216
  });
276
217
  typ.jsonToJS = map;
277
218
  }
278
-
279
219
  return typ.jsonToJS;
280
220
  }
281
-
282
221
  function jsToJSONProps(typ) {
283
222
  if (typ.jsToJSON === undefined) {
284
223
  var map = {};
@@ -290,38 +229,29 @@ function jsToJSONProps(typ) {
290
229
  });
291
230
  typ.jsToJSON = map;
292
231
  }
293
-
294
232
  return typ.jsToJSON;
295
233
  }
296
-
297
234
  function transform(val, typ, getProps) {
298
235
  var key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "";
299
-
300
236
  function transformPrimitive(typ, val) {
301
237
  if (_typeof(typ) === _typeof(val)) return val;
302
238
  return invalidValue(typ, val, key);
303
239
  }
304
-
305
240
  function transformUnion(typs, val) {
306
241
  // val must validate against one typ in typs
307
242
  var l = typs.length;
308
-
309
243
  for (var i = 0; i < l; i++) {
310
244
  var _typ = typs[i];
311
-
312
245
  try {
313
246
  return transform(val, _typ, getProps);
314
247
  } catch (_) {}
315
248
  }
316
-
317
249
  return invalidValue(typs, val);
318
250
  }
319
-
320
251
  function transformEnum(cases, val) {
321
252
  if (cases.indexOf(val) !== -1) return val;
322
253
  return invalidValue(cases, val);
323
254
  }
324
-
325
255
  function transformArray(typ, val) {
326
256
  // val must be an array with no invalid elements
327
257
  if (!Array.isArray(val)) return invalidValue("array", val);
@@ -329,26 +259,20 @@ function transform(val, typ, getProps) {
329
259
  return transform(el, typ, getProps);
330
260
  });
331
261
  }
332
-
333
262
  function transformDate(val) {
334
263
  if (val === null) {
335
264
  return null;
336
265
  }
337
-
338
266
  var d = new Date(val);
339
-
340
267
  if (isNaN(d.valueOf())) {
341
268
  return invalidValue("Date", val);
342
269
  }
343
-
344
270
  return d;
345
271
  }
346
-
347
272
  function transformObject(props, additional, val) {
348
273
  if (val === null || _typeof(val) !== "object" || Array.isArray(val)) {
349
274
  return invalidValue("object", val);
350
275
  }
351
-
352
276
  var result = {};
353
277
  Object.getOwnPropertyNames(props).forEach(function (key) {
354
278
  var prop = props[key];
@@ -362,70 +286,58 @@ function transform(val, typ, getProps) {
362
286
  });
363
287
  return result;
364
288
  }
365
-
366
289
  if (typ === "any") return val;
367
-
368
290
  if (typ === null) {
369
291
  if (val === null) return val;
370
292
  return invalidValue(typ, val);
371
- } // if (typ === false) return invalidValue(typ, val)
372
-
373
-
293
+ }
294
+ // if (typ === false) return invalidValue(typ, val)
374
295
  while (_typeof(typ) === "object" && typ.ref !== undefined) {
375
296
  typ = typeMap[typ.ref];
376
297
  }
377
-
378
298
  if (Array.isArray(typ)) return transformEnum(typ, val);
379
-
380
299
  if (_typeof(typ) === "object") {
381
300
  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);
382
- } // Numbers can be parsed by Date but shouldn't be.
383
-
384
-
301
+ }
302
+ // Numbers can be parsed by Date but shouldn't be.
385
303
  if (typ === Date && typeof val !== "number") return transformDate(val);
386
304
  return transformPrimitive(typ, val);
387
305
  }
388
-
389
306
  function cast(val, typ) {
390
307
  return transform(val, typ, jsonToJSProps);
391
308
  }
392
-
393
309
  function uncast(val, typ) {
394
310
  return transform(val, typ, jsToJSONProps);
395
311
  }
396
-
397
312
  function a(typ) {
398
313
  return {
399
314
  arrayItems: typ
400
315
  };
401
316
  }
402
-
403
317
  function u() {
404
318
  for (var _len = arguments.length, typs = new Array(_len), _key = 0; _key < _len; _key++) {
405
319
  typs[_key] = arguments[_key];
406
320
  }
407
-
408
321
  return {
409
322
  unionMembers: typs
410
323
  };
411
324
  }
412
-
413
325
  function o(props, additional) {
414
326
  return {
415
327
  props: props,
416
328
  additional: additional
417
329
  };
418
- } // function m(additional: any) {
330
+ }
331
+
332
+ // function m(additional: any) {
419
333
  // return { props: [], additional };
420
334
  // }
421
335
 
422
-
423
336
  function r(name) {
424
337
  return {
425
338
  ref: name
426
339
  };
427
340
  }
428
-
429
341
  var typeMap = {
430
342
  DossiersLegislatifs: o([{
431
343
  json: "textesLegislatifs",
@@ -1205,4 +1117,4 @@ var typeMap = {
1205
1117
  DocumentDenominationStructurelle: ["Allocution", "Avis", "Déclaration", "Lettre", "Message", "Projet de loi", "Proposition de loi", "Proposition de résolution", "Rapport", "Rapport d'information", "Résolution"],
1206
1118
  Provenance: ["Commission", "Séance", "Texte Déposé"]
1207
1119
  };
1208
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEb3NzaWVyUGFybGVtZW50YWlyZVhzaVR5cGUiLCJUeXBlQnVkZ2V0IiwiVHlwZU1pc3Npb24iLCJRdWFsaXRlIiwiVHlwZUFjdGVMZWdpc2xhdGlmIiwiVHlwZVRleHRlIiwiTW90aWYiLCJUeXBlSm8iLCJDYXVzZSIsIlR5cGVEb2N1bWVudCIsIlN0YXR1dEFkb3B0aW9uIiwiVHlwZUNvcnJlY3Rpb24iLCJEb2N1bWVudERlbm9taW5hdGlvblN0cnVjdHVyZWxsZSIsIlByb3ZlbmFuY2UiLCJDb252ZXJ0IiwianNvbiIsImNhc3QiLCJKU09OIiwicGFyc2UiLCJyIiwidmFsdWUiLCJzdHJpbmdpZnkiLCJ1bmNhc3QiLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJFcnJvciIsImpzb25Ub0pTUHJvcHMiLCJqc29uVG9KUyIsInVuZGVmaW5lZCIsIm1hcCIsInByb3BzIiwiZm9yRWFjaCIsInAiLCJqcyIsImpzVG9KU09OUHJvcHMiLCJqc1RvSlNPTiIsInRyYW5zZm9ybSIsImdldFByb3BzIiwidHJhbnNmb3JtUHJpbWl0aXZlIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImxlbmd0aCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiQXJyYXkiLCJpc0FycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwicmVmIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJhIiwidSIsIm8iLCJuYW1lIiwiRG9zc2llcnNMZWdpc2xhdGlmcyIsIkRvc3NpZXJQYXJsZW1lbnRhaXJlIiwiRXR1ZGVQbGYiLCJNaXNzaW9uTWluZWZpIiwiQWN0ZUxlZ2lzbGF0aWYiLCJMaWJlbGxlQWN0ZSIsIlJhcHBvcnRldXIiLCJUeXBlRGVjbGFyYXRpb24iLCJUZXh0ZUFzc29jaWUiLCJDb250cmlidXRpb25JbnRlcm5hdXRlIiwiSW5mb0pvY2UiLCJJbml0aWF0ZXVyQWN0ZXVyIiwiVGV4dGVFdXJvcGVlbiIsIkluZm9KbyIsIkZ1c2lvbkRvc3NpZXIiLCJJbmRleGF0aW9uIiwiVGhlbWVzIiwiVGhlbWUiLCJJbml0aWF0ZXVyIiwiUHJvY2VkdXJlUGFybGVtZW50YWlyZSIsIlRpdHJlRG9zc2llciIsIkRvY3VtZW50IiwiQXV0ZXVyIiwiQXV0ZXVyQWN0ZXVyIiwiQ2xhc3NpZmljYXRpb24iLCJGYW1pbGxlIiwiU291c1R5cGUiLCJDb1NpZ25hdGFpcmVFbGVtZW50IiwiQ29TaWduYXRhaXJlT3JnYW5lIiwiQ29ycmVjdGlvbiIsIkN5Y2xlRGVWaWUiLCJDaHJvbm8iLCJEZXBvdEFtZW5kZW1lbnRzIiwiQW1lbmRlbWVudHNDb21taXNzaW9uIiwiQW1lbmRlbWVudHNTZWFuY2UiLCJEaXZpc2lvbiIsIkltcHJpbWVyaWUiLCJOb3RpY2UiLCJUaXRyZXMiLCJDb2RlQWN0ZU5pdmVhdTAiLCJ2YWx1ZXMiLCJDb2RlQWN0ZU5pdmVhdTEiLCJDb2RlQWN0ZU5pdmVhdTIiLCJDb2RlQWN0ZU5pdmVhdTMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvZG9zc2llcnNfbGVnaXNsYXRpZnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVG8gcGFyc2UgdGhpcyBkYXRhOlxuLy9cbi8vICAgaW1wb3J0IHsgQ29udmVydCwgRG9jdW1lbnQsIERvc3NpZXJQYXJsZW1lbnRhaXJlLCBEb3NzaWVyc0xlZ2lzbGF0aWZzIH0gZnJvbSBcIi4vZmlsZVwiO1xuLy9cbi8vICAgY29uc3QgZG9jdW1lbnQgPSBDb252ZXJ0LnRvRG9jdW1lbnQoanNvbik7XG4vLyAgIGNvbnN0IGRvc3NpZXJQYXJsZW1lbnRhaXJlID0gQ29udmVydC50b0Rvc3NpZXJQYXJsZW1lbnRhaXJlKGpzb24pO1xuLy8gICBjb25zdCBkb3NzaWVyc0xlZ2lzbGF0aWZzID0gQ29udmVydC50b0Rvc3NpZXJzTGVnaXNsYXRpZnMoanNvbik7XG4vL1xuLy8gVGhlc2UgZnVuY3Rpb25zIHdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIEpTT04gZG9lc24ndFxuLy8gbWF0Y2ggdGhlIGV4cGVjdGVkIGludGVyZmFjZSwgZXZlbiBpZiB0aGUgSlNPTiBpcyB2YWxpZC5cblxuaW1wb3J0IHsgQWN0ZXVyLCBNYW5kYXQsIE9yZ2FuZSB9IGZyb20gXCIuL2FjdGV1cnNfZXRfb3JnYW5lc1wiXG5pbXBvcnQgeyBQb2ludE9kaiwgUmV1bmlvbiB9IGZyb20gXCIuL2FnZW5kYXNcIlxuaW1wb3J0IHsgU2NydXRpbiB9IGZyb20gXCIuL3NjcnV0aW5zXCJcbmltcG9ydCB7XG4gIENvZGVBY3RlLFxuICBDb2RlQWN0ZU5pdmVhdTAsXG4gIENvZGVBY3RlTml2ZWF1MSxcbiAgQ29kZUFjdGVOaXZlYXUyLFxuICBDb2RlQWN0ZU5pdmVhdTMsXG59IGZyb20gXCIuLi9zaGFyZWRfdHlwZXMvY29kZXNfYWN0ZXNcIlxuXG5leHBvcnQgaW50ZXJmYWNlIERvc3NpZXJzTGVnaXNsYXRpZnMge1xuICB0ZXh0ZXNMZWdpc2xhdGlmczogRG9jdW1lbnRbXVxuICBkb3NzaWVyc1BhcmxlbWVudGFpcmVzOiBEb3NzaWVyUGFybGVtZW50YWlyZVtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9zc2llclBhcmxlbWVudGFpcmUge1xuICBzY2hlbWFWZXJzaW9uPzogc3RyaW5nXG4gIHhzaVR5cGU/OiBEb3NzaWVyUGFybGVtZW50YWlyZVhzaVR5cGVcbiAgdWlkOiBzdHJpbmdcbiAgbGVnaXNsYXR1cmU6IHN0cmluZ1xuICB0aXRyZURvc3NpZXI6IFRpdHJlRG9zc2llclxuICBwcm9jZWR1cmVQYXJsZW1lbnRhaXJlOiBQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXG4gIGluaXRpYXRldXI/OiBJbml0aWF0ZXVyXG4gIGFjdGVzTGVnaXNsYXRpZnM/OiBBY3RlTGVnaXNsYXRpZltdXG4gIGZ1c2lvbkRvc3NpZXI/OiBGdXNpb25Eb3NzaWVyXG4gIGluZGV4YXRpb24/OiBJbmRleGF0aW9uXG4gIHBsZj86IEV0dWRlUGxmW11cbn1cblxuZXhwb3J0IGVudW0gRG9zc2llclBhcmxlbWVudGFpcmVYc2lUeXBlIHtcbiAgRG9zc2llckNvbW1pc3Npb25FbnF1ZXRlVHlwZSA9IFwiRG9zc2llckNvbW1pc3Npb25FbnF1ZXRlX1R5cGVcIixcbiAgRG9zc2llckluaWF0aXZlRXhlY3V0aWZUeXBlID0gXCJEb3NzaWVySW5pYXRpdmVFeGVjdXRpZl9UeXBlXCIsXG4gIERvc3NpZXJMZWdpc2xhdGlmVHlwZSA9IFwiRG9zc2llckxlZ2lzbGF0aWZfVHlwZVwiLFxuICBEb3NzaWVyTWlzc2lvbkNvbnRyb2xlVHlwZSA9IFwiRG9zc2llck1pc3Npb25Db250cm9sZV9UeXBlXCIsXG4gIERvc3NpZXJNaXNzaW9uSW5mb3JtYXRpb25UeXBlID0gXCJEb3NzaWVyTWlzc2lvbkluZm9ybWF0aW9uX1R5cGVcIixcbiAgRG9zc2llclJlc29sdXRpb25BbiA9IFwiRG9zc2llclJlc29sdXRpb25BTlwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV0dWRlUGxmIHtcbiAgdWlkOiBzdHJpbmdcbiAgb3JnYW5lUmVmOiBzdHJpbmdcbiAgdGV4dGVBc3NvY2llPzogc3RyaW5nXG4gIHJhcHBvcnRldXJzPzogUmFwcG9ydGV1cltdXG4gIG1pc3Npb25NaW5lZmk/OiBNaXNzaW9uTWluZWZpXG4gIG9yZHJlRGlxczogc3RyaW5nXG4gIG9yZHJlQ29tbWlzc2lvbjogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWlzc2lvbk1pbmVmaSB7XG4gIHR5cGVNaXNzaW9uOiBUeXBlTWlzc2lvblxuICBsaWJlbGxlTG9uZzogc3RyaW5nXG4gIGxpYmVsbGVDb3VydDogc3RyaW5nXG4gIHR5cGVCdWRnZXQ6IFR5cGVCdWRnZXRcbiAgbWlzc2lvbnM/OiBNaXNzaW9uTWluZWZpW11cbn1cblxuZXhwb3J0IGVudW0gVHlwZUJ1ZGdldCB7XG4gIEJ1ZGdldEFubmV4ZSA9IFwiQnVkZ2V0IGFubmV4ZVwiLFxuICBCdWRnZXRHw6luw6lyYWwgPSBcIkJ1ZGdldCBnw6luw6lyYWxcIixcbiAgQ29tcHRlRGVDb25jb3Vyc0ZpbmFuY2llciA9IFwiQ29tcHRlIGRlIGNvbmNvdXJzIGZpbmFuY2llclwiLFxuICBDb21wdGVTcMOpY2lhbCA9IFwiQ29tcHRlIHNww6ljaWFsXCIsXG4gIFByZW1pw6hyZVBhcnRpZSA9IFwiUHJlbWnDqHJlIHBhcnRpZVwiLFxufVxuXG5leHBvcnQgZW51bSBUeXBlTWlzc2lvbiB7XG4gIE1pc3Npb25QcmluY2lwYWxlID0gXCJtaXNzaW9uIHByaW5jaXBhbGVcIixcbiAgTWlzc2lvblNlY29uZGFpcmUgPSBcIm1pc3Npb24gc2Vjb25kYWlyZVwiLFxuICBQYXJ0aWVEZU1pc3Npb24gPSBcInBhcnRpZSBkZSBtaXNzaW9uXCIsXG59XG5cbmV4cG9ydCBlbnVtIFF1YWxpdGUge1xuICBBdXRldXIgPSBcImF1dGV1clwiLFxuICBSYXBwb3J0ZXVyID0gXCJyYXBwb3J0ZXVyXCIsXG4gIFJhcHBvcnRldXJHw6luw6lyYWwgPSBcInJhcHBvcnRldXIgZ8OpbsOpcmFsXCIsXG4gIFJhcHBvcnRldXJQb3VyQXZpcyA9IFwicmFwcG9ydGV1ciBwb3VyIGF2aXNcIixcbiAgUmFwcG9ydGV1clNww6ljaWFsID0gXCJyYXBwb3J0ZXVyIHNww6ljaWFsXCIsXG59XG5cbmV4cG9ydCBlbnVtIFR5cGVBY3RlTGVnaXNsYXRpZiB7XG4gIEFkb3B0aW9uRXVyb3BlVHlwZSA9IFwiQWRvcHRpb25fRXVyb3BlX1R5cGVcIixcbiAgQ29uY2x1c2lvbkV0YXBlQ2NUeXBlID0gXCJDb25jbHVzaW9uRXRhcGVDQ19UeXBlXCIsXG4gIENyZWF0aW9uT3JnYW5lVGVtcG9yYWlyZVR5cGUgPSBcIkNyZWF0aW9uT3JnYW5lVGVtcG9yYWlyZV9UeXBlXCIsXG4gIERlY2lzaW9uTW90aW9uQ2Vuc3VyZVR5cGUgPSBcIkRlY2lzaW9uTW90aW9uQ2Vuc3VyZV9UeXBlXCIsXG4gIERlY2lzaW9uUmVjZXZhYmlsaXRlQnVyZWF1VHlwZSA9IFwiRGVjaXNpb25SZWNldmFiaWxpdGVCdXJlYXVfVHlwZVwiLFxuICBEZWNpc2lvblR5cGUgPSBcIkRlY2lzaW9uX1R5cGVcIixcbiAgRGVjbGFyYXRpb25Hb3V2ZXJuZW1lbnRUeXBlID0gXCJEZWNsYXJhdGlvbkdvdXZlcm5lbWVudF9UeXBlXCIsXG4gIERlcG90QWNjb3JkSW50ZXJuYXRpb25hbFR5cGUgPSBcIkRlcG90QWNjb3JkSW50ZXJuYXRpb25hbF9UeXBlXCIsXG4gIERlcG90QXZpc0NvbnNlaWxFdGF0VHlwZSA9IFwiRGVwb3RBdmlzQ29uc2VpbEV0YXRfVHlwZVwiLFxuICBEZXBvdEluaXRpYXRpdmVOYXZldHRlVHlwZSA9IFwiRGVwb3RJbml0aWF0aXZlTmF2ZXR0ZV9UeXBlXCIsXG4gIERlcG90SW5pdGlhdGl2ZVR5cGUgPSBcIkRlcG90SW5pdGlhdGl2ZV9UeXBlXCIsXG4gIERlcG90TGV0dHJlUmVjdGlmaWNhdGl2ZVR5cGUgPSBcIkRlcG90TGV0dHJlUmVjdGlmaWNhdGl2ZV9UeXBlXCIsXG4gIERlcG90TW90aW9uQ2Vuc3VyZVR5cGUgPSBcIkRlcG90TW90aW9uQ2Vuc3VyZV9UeXBlXCIsXG4gIERlcG90TW90aW9uUmVmZXJlbmRhaXJlVHlwZSA9IFwiRGVwb3RNb3Rpb25SZWZlcmVuZGFpcmVfVHlwZVwiLFxuICBEZXBvdFJhcHBvcnRUeXBlID0gXCJEZXBvdFJhcHBvcnRfVHlwZVwiLFxuICBEaXNjdXNzaW9uQ29tbWlzc2lvblR5cGUgPSBcIkRpc2N1c3Npb25Db21taXNzaW9uX1R5cGVcIixcbiAgRGlzY3Vzc2lvblNlYW5jZVB1YmxpcXVlVHlwZSA9IFwiRGlzY3Vzc2lvblNlYW5jZVB1YmxpcXVlX1R5cGVcIixcbiAgRXRhcGVUeXBlID0gXCJFdGFwZV9UeXBlXCIsXG4gIEV0dWRlSW1wYWN0VHlwZSA9IFwiRXR1ZGVJbXBhY3RfVHlwZVwiLFxuICBNb3Rpb25Qcm9jZWR1cmVUeXBlID0gXCJNb3Rpb25Qcm9jZWR1cmVfVHlwZVwiLFxuICBOb21pblJhcHBvcnRldXJzVHlwZSA9IFwiTm9taW5SYXBwb3J0ZXVyc19UeXBlXCIsXG4gIFByb2NlZHVyZUFjY2VsZXJlVHlwZSA9IFwiUHJvY2VkdXJlQWNjZWxlcmVfVHlwZVwiLFxuICBQcm9tdWxnYXRpb25UeXBlID0gXCJQcm9tdWxnYXRpb25fVHlwZVwiLFxuICBSZW52b2lDbXBUeXBlID0gXCJSZW52b2lDTVBfVHlwZVwiLFxuICBSZW52b2lQcmVhbGFibGVUeXBlID0gXCJSZW52b2lQcmVhbGFibGVfVHlwZVwiLFxuICBSZXRyYWl0SW5pdGlhdGl2ZVR5cGUgPSBcIlJldHJhaXRJbml0aWF0aXZlX1R5cGVcIixcbiAgU2Fpc2llQ29tQXZpc1R5cGUgPSBcIlNhaXNpZUNvbUF2aXNfVHlwZVwiLFxuICBTYWlzaWVDb21Gb25kVHlwZSA9IFwiU2Fpc2llQ29tRm9uZF9UeXBlXCIsXG4gIFNhaXNpbmVDb25zZWlsQ29uc3RpdFR5cGUgPSBcIlNhaXNpbmVDb25zZWlsQ29uc3RpdF9UeXBlXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0ZUxlZ2lzbGF0aWYge1xuICB4c2lUeXBlOiBUeXBlQWN0ZUxlZ2lzbGF0aWZcbiAgdWlkOiBzdHJpbmdcbiAgY29kZUFjdGU6IENvZGVBY3RlXG4gIGxpYmVsbGVBY3RlOiBMaWJlbGxlQWN0ZVxuICBvcmdhbmVSZWY/OiBzdHJpbmdcbiAgb3JnYW5lPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGRhdGVBY3RlPzogRGF0ZVxuICAvL1xuICBhbm5lZURlY2lzaW9uPzogc3RyaW5nXG4gIGF1dGV1ck1vdGlvbj86IHN0cmluZ1xuICBhdXRldXJzUmVmcz86IHN0cmluZ1tdXG4gIGNhc1NhaXNpbmU/OiBUeXBlRGVjbGFyYXRpb25cbiAgY29kZUxvaT86IHN0cmluZ1xuICBjb250cmlidXRpb25JbnRlcm5hdXRlPzogQ29udHJpYnV0aW9uSW50ZXJuYXV0ZVxuICBkZWNpc2lvbj86IFR5cGVEZWNsYXJhdGlvblxuICBkZXBvdEluaXRpYWxMZWN0dXJlRGVmaW5pdGl2ZVJlZj86IHN0cmluZ1xuICBkZXBvdEluaXRpYWxMZWN0dXJlRGVmaW5pdGl2ZT86IERvY3VtZW50IC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGZvcm11bGVEZWNpc2lvbj86IHN0cmluZ1xuICBpbmZvSm8/OiBJbmZvSm9cbiAgaW5mb0pvY2U/OiBJbmZvSm9jZVxuICBpbmZvSm9SZWN0PzogSW5mb0pvW11cbiAgaW5pdGlhdGV1cj86IEluaXRpYXRldXJcbiAgbW90aWY/OiBNb3RpZlxuICBudW1EZWNpc2lvbj86IHN0cmluZ1xuICBvZGpSZWY/OiBzdHJpbmdcbiAgb2RqPzogUG9pbnRPZGogLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgcHJvdmVuYW5jZVJlZj86IHN0cmluZ1xuICBwcm92ZW5hbmNlPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHJhcHBvcnRldXJzPzogUmFwcG9ydGV1cltdXG4gIHJlZmVyZW5jZU5vcj86IHN0cmluZ1xuICByZXVuaW9uUmVmPzogc3RyaW5nXG4gIHJldW5pb24/OiBSZXVuaW9uIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHN0YXR1dEFkb3B0aW9uPzogVHlwZURlY2xhcmF0aW9uXG4gIHN0YXR1dENvbmNsdXNpb24/OiBUeXBlRGVjbGFyYXRpb25cbiAgdGV4dGVBZG9wdGVSZWY/OiBzdHJpbmdcbiAgdGV4dGVBZG9wdGU/OiBEb2N1bWVudCAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICB0ZXh0ZUFzc29jaWVSZWY/OiBzdHJpbmdcbiAgdGV4dGVBc3NvY2llPzogRG9jdW1lbnQgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgdGV4dGVFdXJvcGVlbj86IFRleHRlRXVyb3BlZW5cbiAgdGV4dGVMb2lSZWY/OiBzdHJpbmdcbiAgdGV4dGVzQXNzb2NpZXM/OiBUZXh0ZUFzc29jaWVbXVxuICB0aXRyZUxvaT86IHN0cmluZ1xuICB0eXBlRGVjbGFyYXRpb24/OiBUeXBlRGVjbGFyYXRpb25cbiAgdHlwZU1vdGlvbj86IFR5cGVEZWNsYXJhdGlvblxuICB0eXBlTW90aW9uQ2Vuc3VyZT86IFR5cGVEZWNsYXJhdGlvblxuICB1cmxDb25jbHVzaW9uPzogc3RyaW5nXG4gIHVybEVjaGVhbmNpZXJMb2k/OiBzdHJpbmdcbiAgdXJsTGVnaWZyYW5jZT86IHN0cmluZ1xuICB2b3RlUmVmcz86IHN0cmluZ1tdXG4gIHZvdGVzPzogU2NydXRpbltdIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIC8vXG4gIGFjdGVzTGVnaXNsYXRpZnM/OiBBY3RlTGVnaXNsYXRpZltdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGliZWxsZUFjdGUge1xuICBub21DYW5vbmlxdWU6IHN0cmluZ1xuICBsaWJlbGxlQ291cnQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSYXBwb3J0ZXVyIHtcbiAgYWN0ZXVyUmVmOiBzdHJpbmdcbiAgYWN0ZXVyPzogQWN0ZXVyIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHR5cGVSYXBwb3J0ZXVyOiBRdWFsaXRlXG4gIGV0dWRlUGxmUmVmPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZURlY2xhcmF0aW9uIHtcbiAgZmFtQ29kZTogc3RyaW5nXG4gIGxpYmVsbGU6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRlQXNzb2NpZSB7XG4gIHR5cGVUZXh0ZTogVHlwZVRleHRlXG4gIHRleHRlQXNzb2NpZVJlZjogc3RyaW5nXG4gIHRleHRlQXNzb2NpZT86IERvY3VtZW50IC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG59XG5cbmV4cG9ydCBlbnVtIFR5cGVUZXh0ZSB7XG4gIEJ0YSA9IFwiQlRBXCIsXG4gIFRhcCA9IFwiVEFQXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udHJpYnV0aW9uSW50ZXJuYXV0ZSB7XG4gIGRhdGVPdXZlcnR1cmU/OiBzdHJpbmdcbiAgZGF0ZUZlcm1ldHVyZT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZm9Kb2NlIHtcbiAgcmVmSm9jZTogc3RyaW5nXG4gIGRhdGVKb2NlOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbml0aWF0ZXVyQWN0ZXVyIHtcbiAgYWN0ZXVyUmVmOiBzdHJpbmdcbiAgYWN0ZXVyPzogQWN0ZXVyIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIG1hbmRhdFJlZj86IHN0cmluZ1xuICBtYW5kYXQ/OiBNYW5kYXQgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbn1cblxuZXhwb3J0IGVudW0gTW90aWYge1xuICBFbkFwcGxpY2F0aW9uRGVMQXJ0aWNsZTYxMkRlTGFDb25zdGl0dXRpb24gPSBcIkVuIGFwcGxpY2F0aW9uIGRlIGwnYXJ0aWNsZSA2McKnMiBkZSBsYSBDb25zdGl0dXRpb25cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZUV1cm9wZWVuIHtcbiAgdHlwZVRleHRlRXVyb3BlZW46IHN0cmluZ1xuICB0aXRyZVRleHRlRXVyb3BlZW46IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZm9KbyB7XG4gIHR5cGVKbzogVHlwZUpvXG4gIGRhdGVKbzogc3RyaW5nXG4gIG51bUpvOiBzdHJpbmdcbiAgdXJsTGVnaWZyYW5jZT86IHN0cmluZ1xuICByZWZlcmVuY2VOb3I/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gVHlwZUpvIHtcbiAgSm9Mb2lEZWNyZXQgPSBcIkpPX0xPSV9ERUNSRVRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmZvSm9SZWN0RWxlbWVudCB7XG4gIHR5cGVKbzogVHlwZUpvXG4gIGRhdGVKbzogc3RyaW5nXG4gIG51bUpvOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGdXNpb25Eb3NzaWVyIHtcbiAgY2F1c2U6IENhdXNlXG4gIGRvc3NpZXJBYnNvcmJhbnRSZWY6IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBDYXVzZSB7XG4gIERvc3NpZXJBYnNvcmLDqSA9IFwiRG9zc2llciBhYnNvcmLDqVwiLFxuICBFeGFtZW5Db21tdW4gPSBcIkV4YW1lbiBjb21tdW5cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmRleGF0aW9uIHtcbiAgdGhlbWVzOiBUaGVtZXNcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaGVtZXMge1xuICBcIkBuaXZlYXVcIjogc3RyaW5nXG4gIHRoZW1lOiBUaGVtZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRoZW1lIHtcbiAgbGliZWxsZVRoZW1lOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbml0aWF0ZXVyIHtcbiAgYWN0ZXVycz86IEluaXRpYXRldXJBY3RldXJbXVxuICBvcmdhbmVSZWY/OiBzdHJpbmdcbiAgb3JnYW5lPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvY2VkdXJlUGFybGVtZW50YWlyZSB7XG4gIGNvZGU6IHN0cmluZ1xuICBsaWJlbGxlOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaXRyZURvc3NpZXIge1xuICB0aXRyZTogc3RyaW5nXG4gIHRpdHJlQ2hlbWluPzogc3RyaW5nXG4gIHNlbmF0Q2hlbWluPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnQge1xuICBzY2hlbWFWZXJzaW9uPzogc3RyaW5nXG4gIHhzaVR5cGU6IFR5cGVEb2N1bWVudFxuICB1aWQ6IHN0cmluZ1xuICBsZWdpc2xhdHVyZT86IHN0cmluZ1xuICBjeWNsZURlVmllOiBDeWNsZURlVmllXG4gIGRlbm9taW5hdGlvblN0cnVjdHVyZWxsZTogRG9jdW1lbnREZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGVcbiAgcHJvdmVuYW5jZT86IFByb3ZlbmFuY2VcbiAgdGl0cmVzOiBUaXRyZXNcbiAgZGl2aXNpb25zPzogRGl2aXNpb25bXVxuICBkb3NzaWVyUmVmOiBzdHJpbmdcbiAgZG9zc2llcj86IERvc3NpZXJQYXJsZW1lbnRhaXJlIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGNsYXNzaWZpY2F0aW9uOiBDbGFzc2lmaWNhdGlvblxuICBhdXRldXJzOiBBdXRldXJbXVxuICBjb3JyZWN0aW9uPzogQ29ycmVjdGlvblxuICBub3RpY2U6IE5vdGljZVxuICBpbmRleGF0aW9uPzogSW5kZXhhdGlvblxuICBpbXByaW1lcmllPzogSW1wcmltZXJpZVxuICBjb1NpZ25hdGFpcmVzPzogQ29TaWduYXRhaXJlRWxlbWVudFtdXG4gIGRlcG90QW1lbmRlbWVudHM/OiBEZXBvdEFtZW5kZW1lbnRzXG4gIG9yZ2FuZXNSZWZlcmVudHM/OiBzdHJpbmdbXVxuICByYXBwb3J0UHVibGllPzogYm9vbGVhblxufVxuXG5leHBvcnQgZW51bSBUeXBlRG9jdW1lbnQge1xuICBBY2NvcmRJbnRlcm5hdGlvbmFsVHlwZSA9IFwiYWNjb3JkSW50ZXJuYXRpb25hbF9UeXBlXCIsXG4gIEF2aXNDb25zZWlsRXRhdFR5cGUgPSBcImF2aXNDb25zZWlsRXRhdF9UeXBlXCIsXG4gIERvY3VtZW50RXR1ZGVJbXBhY3RUeXBlID0gXCJkb2N1bWVudEV0dWRlSW1wYWN0X1R5cGVcIixcbiAgUmFwcG9ydFBhcmxlbWVudGFpcmVUeXBlID0gXCJyYXBwb3J0UGFybGVtZW50YWlyZV9UeXBlXCIsXG4gIFRleHRlTG9pVHlwZSA9IFwidGV4dGVMb2lfVHlwZVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGV1ciB7XG4gIGFjdGV1cj86IEF1dGV1ckFjdGV1clxuICBvcmdhbmVSZWY/OiBzdHJpbmdcbiAgb3JnYW5lPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0ZXVyQWN0ZXVyIHtcbiAgYWN0ZXVyUmVmOiBzdHJpbmdcbiAgYWN0ZXVyPzogQWN0ZXVyIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHF1YWxpdGU6IFF1YWxpdGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbGFzc2lmaWNhdGlvbiB7XG4gIGZhbWlsbGU/OiBGYW1pbGxlXG4gIHR5cGU6IFByb2NlZHVyZVBhcmxlbWVudGFpcmVcbiAgc291c1R5cGU/OiBTb3VzVHlwZVxuICBzdGF0dXRBZG9wdGlvbj86IFN0YXR1dEFkb3B0aW9uXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmFtaWxsZSB7XG4gIGRlcG90OiBQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXG4gIGNsYXNzZTogUHJvY2VkdXJlUGFybGVtZW50YWlyZVxuICBlc3BlY2U/OiBQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU291c1R5cGUge1xuICBjb2RlOiBzdHJpbmdcbiAgbGliZWxsZT86IHN0cmluZ1xuICBsaWJlbGxlRWRpdGlvbj86IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBTdGF0dXRBZG9wdGlvbiB7XG4gIEFkb3B0Y29tID0gXCJBRE9QVENPTVwiLFxuICBBZG9wdHNlYW5jZSA9IFwiQURPUFRTRUFOQ0VcIixcbiAgUmVqZXRzZWFuY2UgPSBcIlJFSkVUU0VBTkNFXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29TaWduYXRhaXJlRWxlbWVudCB7XG4gIGFjdGV1clJlZj86IHN0cmluZ1xuICBkYXRlQ29zaWduYXR1cmU6IHN0cmluZ1xuICBkYXRlUmV0cmFpdENvc2lnbmF0dXJlPzogc3RyaW5nXG4gIGVkaXRlOiBib29sZWFuXG4gIG9yZ2FuZT86IENvU2lnbmF0YWlyZU9yZ2FuZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvU2lnbmF0YWlyZU9yZ2FuZSB7XG4gIG9yZ2FuZVJlZjogc3RyaW5nXG4gIGV0QXBwYXJlbnRlczogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvcnJlY3Rpb24ge1xuICB0eXBlQ29ycmVjdGlvbjogVHlwZUNvcnJlY3Rpb25cbiAgbml2ZWF1Q29ycmVjdGlvbj86IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBUeXBlQ29ycmVjdGlvbiB7XG4gIFJlY3RpZmnDqSA9IFwiUmVjdGlmacOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3ljbGVEZVZpZSB7XG4gIGNocm9ubzogQ2hyb25vXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hyb25vIHtcbiAgZGF0ZUNyZWF0aW9uOiBEYXRlXG4gIGRhdGVEZXBvdD86IERhdGVcbiAgZGF0ZVB1YmxpY2F0aW9uPzogRGF0ZVxuICBkYXRlUHVibGljYXRpb25XZWI/OiBEYXRlXG59XG5cbmV4cG9ydCBlbnVtIERvY3VtZW50RGVub21pbmF0aW9uU3RydWN0dXJlbGxlIHtcbiAgQWxsb2N1dGlvbiA9IFwiQWxsb2N1dGlvblwiLFxuICBBdmlzID0gXCJBdmlzXCIsXG4gIETDqWNsYXJhdGlvbiA9IFwiRMOpY2xhcmF0aW9uXCIsXG4gIExldHRyZSA9IFwiTGV0dHJlXCIsXG4gIE1lc3NhZ2UgPSBcIk1lc3NhZ2VcIixcbiAgUHJvamV0RGVMb2kgPSBcIlByb2pldCBkZSBsb2lcIixcbiAgUHJvcG9zaXRpb25EZUxvaSA9IFwiUHJvcG9zaXRpb24gZGUgbG9pXCIsXG4gIFByb3Bvc2l0aW9uRGVSw6lzb2x1dGlvbiA9IFwiUHJvcG9zaXRpb24gZGUgcsOpc29sdXRpb25cIixcbiAgUmFwcG9ydCA9IFwiUmFwcG9ydFwiLFxuICBSYXBwb3J0REluZm9ybWF0aW9uID0gXCJSYXBwb3J0IGQnaW5mb3JtYXRpb25cIixcbiAgUsOpc29sdXRpb24gPSBcIlLDqXNvbHV0aW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVwb3RBbWVuZGVtZW50cyB7XG4gIGFtZW5kZW1lbnRzU2VhbmNlOiBBbWVuZGVtZW50c1NlYW5jZVxuICBhbWVuZGVtZW50c0NvbW1pc3Npb24/OiBBbWVuZGVtZW50c0NvbW1pc3Npb25bXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzQ29tbWlzc2lvbiB7XG4gIG9yZ2FuZVJlZjogc3RyaW5nXG4gIGFtZW5kYWJsZTogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzU2VhbmNlIHtcbiAgYW1lbmRhYmxlOiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGl2aXNpb24ge1xuICB4c2lUeXBlOiBUeXBlRG9jdW1lbnRcbiAgdWlkOiBzdHJpbmdcbiAgbGVnaXNsYXR1cmU/OiBzdHJpbmdcbiAgY3ljbGVEZVZpZTogQ3ljbGVEZVZpZVxuICBkZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGU6IHN0cmluZ1xuICB0aXRyZXM6IFRpdHJlc1xuICBkaXZpc2lvbnM/OiBEaXZpc2lvbltdXG4gIGRvc3NpZXJSZWY6IHN0cmluZ1xuICBkb3NzaWVyPzogRG9zc2llclBhcmxlbWVudGFpcmUgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgY2xhc3NpZmljYXRpb246IENsYXNzaWZpY2F0aW9uXG4gIGF1dGV1cnM6IEF1dGV1cltdXG4gIG9yZ2FuZXNSZWZlcmVudHM/OiBzdHJpbmdbXVxuICBjb3JyZWN0aW9uPzogQ29ycmVjdGlvblxuICBub3RpY2U6IE5vdGljZVxuICBpbmRleGF0aW9uPzogSW5kZXhhdGlvblxuICBpbXByaW1lcmllPzogSW1wcmltZXJpZVxuICByYXBwb3J0UHVibGllPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEltcHJpbWVyaWUge1xuICBkaWFuPzogc3RyaW5nXG4gIGlzYm4/OiBzdHJpbmdcbiAgbmJQYWdlPzogc3RyaW5nXG4gIHByaXg/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb3RpY2Uge1xuICBudW1Ob3RpY2U/OiBzdHJpbmdcbiAgZm9ybXVsZT86IHN0cmluZ1xuICBhZG9wdGlvbkNvbmZvcm1lOiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGl0cmVzIHtcbiAgdGl0cmVQcmluY2lwYWw6IHN0cmluZ1xuICB0aXRyZVByaW5jaXBhbENvdXJ0OiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gUHJvdmVuYW5jZSB7XG4gIENvbW1pc3Npb24gPSBcIkNvbW1pc3Npb25cIixcbiAgU8OpYW5jZSA9IFwiU8OpYW5jZVwiLFxuICBUZXh0ZUTDqXBvc8OpID0gXCJUZXh0ZSBEw6lwb3PDqVwiLFxufVxuXG4vLyBDb252ZXJ0cyBKU09OIHN0cmluZ3MgdG8vZnJvbSB5b3VyIHR5cGVzXG4vLyBhbmQgYXNzZXJ0cyB0aGUgcmVzdWx0cyBvZiBKU09OLnBhcnNlIGF0IHJ1bnRpbWVcbmV4cG9ydCBjbGFzcyBDb252ZXJ0IHtcbiAgcHVibGljIHN0YXRpYyB0b0Rvc3NpZXJzTGVnaXNsYXRpZnMoanNvbjogc3RyaW5nKTogRG9zc2llcnNMZWdpc2xhdGlmcyB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkRvc3NpZXJzTGVnaXNsYXRpZnNcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGRvc3NpZXJzTGVnaXNsYXRpZnNUb0pzb24odmFsdWU6IERvc3NpZXJzTGVnaXNsYXRpZnMpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJEb3NzaWVyc0xlZ2lzbGF0aWZzXCIpKSwgbnVsbCwgMilcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdG9Eb2N1bWVudChqc29uOiBzdHJpbmcpOiBEb2N1bWVudCB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkRvY3VtZW50XCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBkb2N1bWVudFRvSnNvbih2YWx1ZTogRG9jdW1lbnQpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJEb2N1bWVudFwiKSksIG51bGwsIDIpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvRG9zc2llclBhcmxlbWVudGFpcmUoanNvbjogc3RyaW5nKTogRG9zc2llclBhcmxlbWVudGFpcmUge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJEb3NzaWVyUGFybGVtZW50YWlyZVwiKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZG9zc2llclBhcmxlbWVudGFpcmVUb0pzb24oXG4gICAgdmFsdWU6IERvc3NpZXJQYXJsZW1lbnRhaXJlLFxuICApOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJEb3NzaWVyUGFybGVtZW50YWlyZVwiKSksIG51bGwsIDIpXG4gIH1cbn1cblxuZnVuY3Rpb24gaW52YWxpZFZhbHVlKHR5cDogYW55LCB2YWw6IGFueSwga2V5OiBhbnkgPSBcIlwiKTogbmV2ZXIge1xuICBpZiAoa2V5KSB7XG4gICAgdGhyb3cgRXJyb3IoXG4gICAgICBgSW52YWxpZCB2YWx1ZSBmb3Iga2V5IFwiJHtrZXl9XCIuIEV4cGVjdGVkIHR5cGUgJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgdHlwLFxuICAgICAgKX0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KHZhbCl9YCxcbiAgICApXG4gIH1cbiAgdGhyb3cgRXJyb3IoXG4gICAgYEludmFsaWQgdmFsdWUgJHtKU09OLnN0cmluZ2lmeSh2YWwpfSBmb3IgdHlwZSAke0pTT04uc3RyaW5naWZ5KHR5cCl9YCxcbiAgKVxufVxuXG5mdW5jdGlvbiBqc29uVG9KU1Byb3BzKHR5cDogYW55KTogYW55IHtcbiAgaWYgKHR5cC5qc29uVG9KUyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgbWFwOiBhbnkgPSB7fVxuICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IChtYXBbcC5qc29uXSA9IHsga2V5OiBwLmpzLCB0eXA6IHAudHlwIH0pKVxuICAgIHR5cC5qc29uVG9KUyA9IG1hcFxuICB9XG4gIHJldHVybiB0eXAuanNvblRvSlNcbn1cblxuZnVuY3Rpb24ganNUb0pTT05Qcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gIGlmICh0eXAuanNUb0pTT04gPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1hcDogYW55ID0ge31cbiAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiAobWFwW3AuanNdID0geyBrZXk6IHAuanNvbiwgdHlwOiBwLnR5cCB9KSlcbiAgICB0eXAuanNUb0pTT04gPSBtYXBcbiAgfVxuICByZXR1cm4gdHlwLmpzVG9KU09OXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybSh2YWw6IGFueSwgdHlwOiBhbnksIGdldFByb3BzOiBhbnksIGtleTogYW55ID0gXCJcIik6IGFueSB7XG4gIGZ1bmN0aW9uIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXA6IHN0cmluZywgdmFsOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXBlb2YgdHlwID09PSB0eXBlb2YgdmFsKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5KVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtVW5pb24odHlwczogYW55W10sIHZhbDogYW55KTogYW55IHtcbiAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgIGNvbnN0IGwgPSB0eXBzLmxlbmd0aFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCB0eXAgPSB0eXBzW2ldXG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcylcbiAgICAgIH0gY2F0Y2ggKF8pIHt9XG4gICAgfVxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsKVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtRW51bShjYXNlczogc3RyaW5nW10sIHZhbDogYW55KTogYW55IHtcbiAgICBpZiAoY2FzZXMuaW5kZXhPZih2YWwpICE9PSAtMSkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUoY2FzZXMsIHZhbClcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybUFycmF5KHR5cDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgLy8gdmFsIG11c3QgYmUgYW4gYXJyYXkgd2l0aCBubyBpbnZhbGlkIGVsZW1lbnRzXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiBpbnZhbGlkVmFsdWUoXCJhcnJheVwiLCB2YWwpXG4gICAgcmV0dXJuIHZhbC5tYXAoKGVsKSA9PiB0cmFuc2Zvcm0oZWwsIHR5cCwgZ2V0UHJvcHMpKVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtRGF0ZSh2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gICAgY29uc3QgZCA9IG5ldyBEYXRlKHZhbClcbiAgICBpZiAoaXNOYU4oZC52YWx1ZU9mKCkpKSB7XG4gICAgICByZXR1cm4gaW52YWxpZFZhbHVlKFwiRGF0ZVwiLCB2YWwpXG4gICAgfVxuICAgIHJldHVybiBkXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1PYmplY3QoXG4gICAgcHJvcHM6IHsgW2s6IHN0cmluZ106IGFueSB9LFxuICAgIGFkZGl0aW9uYWw6IGFueSxcbiAgICB2YWw6IGFueSxcbiAgKTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsIHx8IHR5cGVvZiB2YWwgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICByZXR1cm4gaW52YWxpZFZhbHVlKFwib2JqZWN0XCIsIHZhbClcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0OiBhbnkgPSB7fVxuICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHByb3BzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGNvbnN0IHByb3AgPSBwcm9wc1trZXldXG4gICAgICBjb25zdCB2ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbCwga2V5KVxuICAgICAgICA/IHZhbFtrZXldXG4gICAgICAgIDogdW5kZWZpbmVkXG4gICAgICByZXN1bHRbcHJvcC5rZXldID0gdHJhbnNmb3JtKHYsIHByb3AudHlwLCBnZXRQcm9wcywgcHJvcC5rZXkpXG4gICAgfSlcbiAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWwpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocHJvcHMsIGtleSkpIHtcbiAgICAgICAgcmVzdWx0W2tleV0gPSB0cmFuc2Zvcm0odmFsW2tleV0sIGFkZGl0aW9uYWwsIGdldFByb3BzLCBrZXkpXG4gICAgICB9XG4gICAgfSlcbiAgICByZXR1cm4gcmVzdWx0XG4gIH1cblxuICBpZiAodHlwID09PSBcImFueVwiKSByZXR1cm4gdmFsXG4gIGlmICh0eXAgPT09IG51bGwpIHtcbiAgICBpZiAodmFsID09PSBudWxsKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbClcbiAgfVxuICAvLyBpZiAodHlwID09PSBmYWxzZSkgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbClcbiAgd2hpbGUgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLnJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgdHlwID0gdHlwZU1hcFt0eXAucmVmXVxuICB9XG4gIGlmIChBcnJheS5pc0FycmF5KHR5cCkpIHJldHVybiB0cmFuc2Zvcm1FbnVtKHR5cCwgdmFsKVxuICBpZiAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIikge1xuICAgIHJldHVybiB0eXAuaGFzT3duUHJvcGVydHkoXCJ1bmlvbk1lbWJlcnNcIilcbiAgICAgID8gdHJhbnNmb3JtVW5pb24odHlwLnVuaW9uTWVtYmVycywgdmFsKVxuICAgICAgOiB0eXAuaGFzT3duUHJvcGVydHkoXCJhcnJheUl0ZW1zXCIpXG4gICAgICA/IHRyYW5zZm9ybUFycmF5KHR5cC5hcnJheUl0ZW1zLCB2YWwpXG4gICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcInByb3BzXCIpXG4gICAgICA/IHRyYW5zZm9ybU9iamVjdChnZXRQcm9wcyh0eXApLCB0eXAuYWRkaXRpb25hbCwgdmFsKVxuICAgICAgOiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpXG4gIH1cbiAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgaWYgKHR5cCA9PT0gRGF0ZSAmJiB0eXBlb2YgdmFsICE9PSBcIm51bWJlclwiKSByZXR1cm4gdHJhbnNmb3JtRGF0ZSh2YWwpXG4gIHJldHVybiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwLCB2YWwpXG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzb25Ub0pTUHJvcHMpXG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNUb0pTT05Qcm9wcylcbn1cblxuZnVuY3Rpb24gYSh0eXA6IGFueSkge1xuICByZXR1cm4geyBhcnJheUl0ZW1zOiB0eXAgfVxufVxuXG5mdW5jdGlvbiB1KC4uLnR5cHM6IGFueVtdKSB7XG4gIHJldHVybiB7IHVuaW9uTWVtYmVyczogdHlwcyB9XG59XG5cbmZ1bmN0aW9uIG8ocHJvcHM6IGFueVtdLCBhZGRpdGlvbmFsOiBhbnkpIHtcbiAgcmV0dXJuIHsgcHJvcHMsIGFkZGl0aW9uYWwgfVxufVxuXG4vLyBmdW5jdGlvbiBtKGFkZGl0aW9uYWw6IGFueSkge1xuLy8gICAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9O1xuLy8gfVxuXG5mdW5jdGlvbiByKG5hbWU6IHN0cmluZykge1xuICByZXR1cm4geyByZWY6IG5hbWUgfVxufVxuXG5jb25zdCB0eXBlTWFwOiBhbnkgPSB7XG4gIERvc3NpZXJzTGVnaXNsYXRpZnM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIGpzOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIHR5cDogYShyKFwiRG9jdW1lbnRcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkb3NzaWVyc1BhcmxlbWVudGFpcmVzXCIsXG4gICAgICAgIGpzOiBcImRvc3NpZXJzUGFybGVtZW50YWlyZXNcIixcbiAgICAgICAgdHlwOiBhKHIoXCJEb3NzaWVyUGFybGVtZW50YWlyZVwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERvc3NpZXJQYXJsZW1lbnRhaXJlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJzY2hlbWFWZXJzaW9uXCIsIGpzOiBcInNjaGVtYVZlcnNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ4c2lUeXBlXCIsXG4gICAgICAgIGpzOiBcInhzaVR5cGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRvc3NpZXJQYXJsZW1lbnRhaXJlWHNpVHlwZVwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGVnaXNsYXR1cmVcIiwganM6IFwibGVnaXNsYXR1cmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidGl0cmVEb3NzaWVyXCIsIGpzOiBcInRpdHJlRG9zc2llclwiLCB0eXA6IHIoXCJUaXRyZURvc3NpZXJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwcm9jZWR1cmVQYXJsZW1lbnRhaXJlXCIsXG4gICAgICAgIGpzOiBcInByb2NlZHVyZVBhcmxlbWVudGFpcmVcIixcbiAgICAgICAgdHlwOiByKFwiUHJvY2VkdXJlUGFybGVtZW50YWlyZVwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiaW5pdGlhdGV1clwiLFxuICAgICAgICBqczogXCJpbml0aWF0ZXVyXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJJbml0aWF0ZXVyXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWN0ZXNMZWdpc2xhdGlmc1wiLFxuICAgICAgICBqczogXCJhY3Rlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkFjdGVMZWdpc2xhdGlmXCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImZ1c2lvbkRvc3NpZXJcIixcbiAgICAgICAganM6IFwiZnVzaW9uRG9zc2llclwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiRnVzaW9uRG9zc2llclwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImluZGV4YXRpb25cIixcbiAgICAgICAganM6IFwiaW5kZXhhdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiSW5kZXhhdGlvblwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInBsZlwiLCBqczogXCJwbGZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiRXR1ZGVQbGZcIikpKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEV0dWRlUGxmOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm9yZ2FuZVJlZlwiLCBqczogXCJvcmdhbmVSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVBc3NvY2llXCIsIGpzOiBcInRleHRlQXNzb2NpZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInJhcHBvcnRldXJzXCIsXG4gICAgICAgIGpzOiBcInJhcHBvcnRldXJzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIlJhcHBvcnRldXJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibWlzc2lvbk1pbmVmaVwiLFxuICAgICAgICBqczogXCJtaXNzaW9uTWluZWZpXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJNaXNzaW9uTWluZWZpXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwib3JkcmVEaXFzXCIsIGpzOiBcIm9yZHJlRGlxc1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJvcmRyZUNvbW1pc3Npb25cIiwganM6IFwib3JkcmVDb21taXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIE1pc3Npb25NaW5lZmk6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInR5cGVNaXNzaW9uXCIsIGpzOiBcInR5cGVNaXNzaW9uXCIsIHR5cDogcihcIlR5cGVNaXNzaW9uXCIpIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZUxvbmdcIiwganM6IFwibGliZWxsZUxvbmdcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZUNvdXJ0XCIsIGpzOiBcImxpYmVsbGVDb3VydFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlQnVkZ2V0XCIsIGpzOiBcInR5cGVCdWRnZXRcIiwgdHlwOiByKFwiVHlwZUJ1ZGdldFwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm1pc3Npb25zXCIsXG4gICAgICAgIGpzOiBcIm1pc3Npb25zXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIk1pc3Npb25NaW5lZmlcIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQWN0ZUxlZ2lzbGF0aWY6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInhzaVR5cGVcIiwganM6IFwieHNpVHlwZVwiLCB0eXA6IHIoXCJUeXBlQWN0ZUxlZ2lzbGF0aWZcIikgfSxcbiAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNvZGVBY3RlXCIsXG4gICAgICAgIGpzOiBcImNvZGVBY3RlXCIsXG4gICAgICAgIHR5cDogdShcbiAgICAgICAgICByKFwiQ29kZUFjdGVOaXZlYXUwXCIpLFxuICAgICAgICAgIHUoXG4gICAgICAgICAgICByKFwiQ29kZUFjdGVOaXZlYXUxXCIpLFxuICAgICAgICAgICAgdShyKFwiQ29kZUFjdGVOaXZlYXUyXCIpLCByKFwiQ29kZUFjdGVOaXZlYXUzXCIpKSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlQWN0ZVwiLCBqczogXCJsaWJlbGxlQWN0ZVwiLCB0eXA6IHIoXCJMaWJlbGxlQWN0ZVwiKSB9LFxuICAgICAgeyBqc29uOiBcIm9yZ2FuZVJlZlwiLCBqczogXCJvcmdhbmVSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJkYXRlQWN0ZVwiLCBqczogXCJkYXRlQWN0ZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBEYXRlKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImFjdGVzTGVnaXNsYXRpZnNcIixcbiAgICAgICAganM6IFwiYWN0ZXNMZWdpc2xhdGlmc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJBY3RlTGVnaXNsYXRpZlwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhbm5lZURlY2lzaW9uXCIsIGpzOiBcImFubmVlRGVjaXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRldXJNb3Rpb25cIixcbiAgICAgICAganM6IFwiYXV0ZXVyTW90aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRldXJzUmVmc1wiLFxuICAgICAgICBqczogXCJhdXRldXJzUmVmc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKFwiXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY2FzU2Fpc2luZVwiLFxuICAgICAgICBqczogXCJjYXNTYWlzaW5lXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlRGVjbGFyYXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjb2RlTG9pXCIsIGpzOiBcImNvZGVMb2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjb250cmlidXRpb25JbnRlcm5hdXRlXCIsXG4gICAgICAgIGpzOiBcImNvbnRyaWJ1dGlvbkludGVybmF1dGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvbnRyaWJ1dGlvbkludGVybmF1dGVcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkZWNpc2lvblwiLFxuICAgICAgICBqczogXCJkZWNpc2lvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiVHlwZURlY2xhcmF0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGVwb3RJbml0aWFsTGVjdHVyZURlZmluaXRpdmVSZWZcIixcbiAgICAgICAganM6IFwiZGVwb3RJbml0aWFsTGVjdHVyZURlZmluaXRpdmVSZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImZvcm11bGVEZWNpc2lvblwiLCBqczogXCJmb3JtdWxlRGVjaXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpbmZvSm9cIiwganM6IFwiaW5mb0pvXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJJbmZvSm9cIikpIH0sXG4gICAgICB7IGpzb246IFwiaW5mb0pvY2VcIiwganM6IFwiaW5mb0pvY2VcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkluZm9Kb2NlXCIpKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImluZm9Kb1JlY3RcIixcbiAgICAgICAganM6IFwiaW5mb0pvUmVjdFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJJbmZvSm9cIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiaW5pdGlhdGV1clwiLFxuICAgICAgICBqczogXCJpbml0aWF0ZXVyXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJJbml0aWF0ZXVyXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibW90aWZcIiwganM6IFwibW90aWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIk1vdGlmXCIpKSB9LFxuICAgICAgeyBqc29uOiBcIm51bURlY2lzaW9uXCIsIGpzOiBcIm51bURlY2lzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwib2RqUmVmXCIsIGpzOiBcIm9kalJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInByb3ZlbmFuY2VSZWZcIiwganM6IFwicHJvdmVuYW5jZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInJhcHBvcnRldXJzXCIsXG4gICAgICAgIGpzOiBcInJhcHBvcnRldXJzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIlJhcHBvcnRldXJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwicmVmZXJlbmNlTm9yXCIsIGpzOiBcInJlZmVyZW5jZU5vclwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInJldW5pb25SZWZcIiwganM6IFwicmV1bmlvblJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInN0YXR1dEFkb3B0aW9uXCIsXG4gICAgICAgIGpzOiBcInN0YXR1dEFkb3B0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlRGVjbGFyYXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzdGF0dXRDb25jbHVzaW9uXCIsXG4gICAgICAgIGpzOiBcInN0YXR1dENvbmNsdXNpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlR5cGVEZWNsYXJhdGlvblwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInRleHRlQWRvcHRlUmVmXCIsXG4gICAgICAgIGpzOiBcInRleHRlQWRvcHRlUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0ZXh0ZUFzc29jaWVSZWZcIiwganM6IFwidGV4dGVBc3NvY2llUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwidGV4dGVFdXJvcGVlblwiLFxuICAgICAgICBqczogXCJ0ZXh0ZUV1cm9wZWVuXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUZXh0ZUV1cm9wZWVuXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVMb2lSZWZcIiwganM6IFwidGV4dGVMb2lSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0ZXh0ZXNBc3NvY2llc1wiLFxuICAgICAgICBqczogXCJ0ZXh0ZXNBc3NvY2llc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJUZXh0ZUFzc29jaWVcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidGl0cmVMb2lcIiwganM6IFwidGl0cmVMb2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0eXBlRGVjbGFyYXRpb25cIixcbiAgICAgICAganM6IFwidHlwZURlY2xhcmF0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlRGVjbGFyYXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0eXBlTW90aW9uXCIsXG4gICAgICAgIGpzOiBcInR5cGVNb3Rpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlR5cGVEZWNsYXJhdGlvblwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInR5cGVNb3Rpb25DZW5zdXJlXCIsXG4gICAgICAgIGpzOiBcInR5cGVNb3Rpb25DZW5zdXJlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlRGVjbGFyYXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ1cmxDb25jbHVzaW9uXCIsIGpzOiBcInVybENvbmNsdXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ1cmxFY2hlYW5jaWVyTG9pXCIsXG4gICAgICAgIGpzOiBcInVybEVjaGVhbmNpZXJMb2lcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInVybExlZ2lmcmFuY2VcIixcbiAgICAgICAganM6IFwidXJsTGVnaWZyYW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwidm90ZVJlZnNcIixcbiAgICAgICAganM6IFwidm90ZVJlZnNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShcIlwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIExpYmVsbGVBY3RlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJub21DYW5vbmlxdWVcIiwganM6IFwibm9tQ2Fub25pcXVlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVDb3VydFwiLCBqczogXCJsaWJlbGxlQ291cnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBSYXBwb3J0ZXVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInR5cGVSYXBwb3J0ZXVyXCIsIGpzOiBcInR5cGVSYXBwb3J0ZXVyXCIsIHR5cDogcihcIlF1YWxpdGVcIikgfSxcbiAgICAgIHsganNvbjogXCJldHVkZVBsZlJlZlwiLCBqczogXCJldHVkZVBsZlJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFR5cGVEZWNsYXJhdGlvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiZmFtQ29kZVwiLCBqczogXCJmYW1Db2RlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUZXh0ZUFzc29jaWU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInR5cGVUZXh0ZVwiLCBqczogXCJ0eXBlVGV4dGVcIiwgdHlwOiByKFwiVHlwZVRleHRlXCIpIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVBc3NvY2llUmVmXCIsIGpzOiBcInRleHRlQXNzb2NpZVJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDb250cmlidXRpb25JbnRlcm5hdXRlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlT3V2ZXJ0dXJlXCIsIGpzOiBcImRhdGVPdXZlcnR1cmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJkYXRlRmVybWV0dXJlXCIsIGpzOiBcImRhdGVGZXJtZXR1cmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBJbmZvSm9jZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwicmVmSm9jZVwiLCBqczogXCJyZWZKb2NlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImRhdGVKb2NlXCIsIGpzOiBcImRhdGVKb2NlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEluaXRpYXRldXJBY3RldXI6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImFjdGV1clJlZlwiLCBqczogXCJhY3RldXJSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibWFuZGF0UmVmXCIsIGpzOiBcIm1hbmRhdFJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFRleHRlRXVyb3BlZW46IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInR5cGVUZXh0ZUV1cm9wZWVuXCIsIGpzOiBcInR5cGVUZXh0ZUV1cm9wZWVuXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInRpdHJlVGV4dGVFdXJvcGVlblwiLCBqczogXCJ0aXRyZVRleHRlRXVyb3BlZW5cIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgSW5mb0pvOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0eXBlSm9cIiwganM6IFwidHlwZUpvXCIsIHR5cDogcihcIlR5cGVKb1wiKSB9LFxuICAgICAgeyBqc29uOiBcImRhdGVKb1wiLCBqczogXCJkYXRlSm9cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibnVtSm9cIiwganM6IFwibnVtSm9cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidXJsTGVnaWZyYW5jZVwiLCBqczogXCJ1cmxMZWdpZnJhbmNlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwicmVmZXJlbmNlTm9yXCIsIGpzOiBcInJlZmVyZW5jZU5vclwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEZ1c2lvbkRvc3NpZXI6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImNhdXNlXCIsIGpzOiBcImNhdXNlXCIsIHR5cDogcihcIkNhdXNlXCIpIH0sXG4gICAgICB7IGpzb246IFwiZG9zc2llckFic29yYmFudFJlZlwiLCBqczogXCJkb3NzaWVyQWJzb3JiYW50UmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEluZGV4YXRpb246IG8oW3sganNvbjogXCJ0aGVtZXNcIiwganM6IFwidGhlbWVzXCIsIHR5cDogcihcIlRoZW1lc1wiKSB9XSwgZmFsc2UpLFxuICBUaGVtZXM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIkBuaXZlYXVcIiwganM6IFwiQG5pdmVhdVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0aGVtZVwiLCBqczogXCJ0aGVtZVwiLCB0eXA6IHIoXCJUaGVtZVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFRoZW1lOiBvKFt7IGpzb246IFwibGliZWxsZVRoZW1lXCIsIGpzOiBcImxpYmVsbGVUaGVtZVwiLCB0eXA6IFwiXCIgfV0sIGZhbHNlKSxcbiAgSW5pdGlhdGV1cjogbyhcbiAgICBbXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWN0ZXVyc1wiLFxuICAgICAgICBqczogXCJhY3RldXJzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkluaXRpYXRldXJBY3RldXJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwib3JnYW5lUmVmXCIsIGpzOiBcIm9yZ2FuZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFByb2NlZHVyZVBhcmxlbWVudGFpcmU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImNvZGVcIiwganM6IFwiY29kZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGl0cmVEb3NzaWVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0aXRyZVwiLCBqczogXCJ0aXRyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0aXRyZUNoZW1pblwiLCBqczogXCJ0aXRyZUNoZW1pblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNlbmF0Q2hlbWluXCIsIGpzOiBcInNlbmF0Q2hlbWluXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRG9jdW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInNjaGVtYVZlcnNpb25cIiwganM6IFwic2NoZW1hVmVyc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInhzaVR5cGVcIiwganM6IFwieHNpVHlwZVwiLCB0eXA6IHIoXCJUeXBlRG9jdW1lbnRcIikgfSxcbiAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxlZ2lzbGF0dXJlXCIsIGpzOiBcImxlZ2lzbGF0dXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiY3ljbGVEZVZpZVwiLCBqczogXCJjeWNsZURlVmllXCIsIHR5cDogcihcIkN5Y2xlRGVWaWVcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGVcIixcbiAgICAgICAganM6IFwiZGVub21pbmF0aW9uU3RydWN0dXJlbGxlXCIsXG4gICAgICAgIHR5cDogcihcIkRvY3VtZW50RGVub21pbmF0aW9uU3RydWN0dXJlbGxlXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwcm92ZW5hbmNlXCIsXG4gICAgICAgIGpzOiBcInByb3ZlbmFuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlByb3ZlbmFuY2VcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0aXRyZXNcIiwganM6IFwidGl0cmVzXCIsIHR5cDogcihcIlRpdHJlc1wiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpdmlzaW9uc1wiLFxuICAgICAgICBqczogXCJkaXZpc2lvbnNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiRGl2aXNpb25cIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZG9zc2llclJlZlwiLCBqczogXCJkb3NzaWVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNsYXNzaWZpY2F0aW9uXCIsXG4gICAgICAgIGpzOiBcImNsYXNzaWZpY2F0aW9uXCIsXG4gICAgICAgIHR5cDogcihcIkNsYXNzaWZpY2F0aW9uXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhdXRldXJzXCIsIGpzOiBcImF1dGV1cnNcIiwgdHlwOiBhKHIoXCJBdXRldXJcIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY29ycmVjdGlvblwiLFxuICAgICAgICBqczogXCJjb3JyZWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJDb3JyZWN0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibm90aWNlXCIsIGpzOiBcIm5vdGljZVwiLCB0eXA6IHIoXCJOb3RpY2VcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbmRleGF0aW9uXCIsXG4gICAgICAgIGpzOiBcImluZGV4YXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkluZGV4YXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbXByaW1lcmllXCIsXG4gICAgICAgIGpzOiBcImltcHJpbWVyaWVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkltcHJpbWVyaWVcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjb1NpZ25hdGFpcmVzXCIsXG4gICAgICAgIGpzOiBcImNvU2lnbmF0YWlyZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiQ29TaWduYXRhaXJlRWxlbWVudFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkZXBvdEFtZW5kZW1lbnRzXCIsXG4gICAgICAgIGpzOiBcImRlcG90QW1lbmRlbWVudHNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRlcG90QW1lbmRlbWVudHNcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJvcmdhbmVzUmVmZXJlbnRzXCIsIGpzOiBcIm9yZ2FuZXNSZWZlcmVudHNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgYShcIlwiKSkgfSxcbiAgICAgIHsganNvbjogXCJyYXBwb3J0UHVibGllXCIsIGpzOiBcInJhcHBvcnRQdWJsaWVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgZmFsc2UpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQXV0ZXVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhY3RldXJcIiwganM6IFwiYWN0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJBdXRldXJBY3RldXJcIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3JnYW5lUmVmXCIsXG4gICAgICAgIGpzOiBcIm9yZ2FuZVJlZlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQXV0ZXVyQWN0ZXVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInF1YWxpdGVcIiwganM6IFwicXVhbGl0ZVwiLCB0eXA6IHIoXCJRdWFsaXRlXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ2xhc3NpZmljYXRpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImZhbWlsbGVcIiwganM6IFwiZmFtaWxsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRmFtaWxsZVwiKSkgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiUHJvY2VkdXJlUGFybGVtZW50YWlyZVwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvdXNUeXBlXCIsIGpzOiBcInNvdXNUeXBlXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJTb3VzVHlwZVwiKSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzdGF0dXRBZG9wdGlvblwiLFxuICAgICAgICBqczogXCJzdGF0dXRBZG9wdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiU3RhdHV0QWRvcHRpb25cIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBGYW1pbGxlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkZXBvdFwiLCBqczogXCJkZXBvdFwiLCB0eXA6IHIoXCJQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXCIpIH0sXG4gICAgICB7IGpzb246IFwiY2xhc3NlXCIsIGpzOiBcImNsYXNzZVwiLCB0eXA6IHIoXCJQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZXNwZWNlXCIsXG4gICAgICAgIGpzOiBcImVzcGVjZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiUHJvY2VkdXJlUGFybGVtZW50YWlyZVwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvdXNUeXBlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZUVkaXRpb25cIiwganM6IFwibGliZWxsZUVkaXRpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDb1NpZ25hdGFpcmVFbGVtZW50OiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhY3RldXJSZWZcIixcbiAgICAgICAganM6IFwiYWN0ZXVyUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJkYXRlQ29zaWduYXR1cmVcIiwganM6IFwiZGF0ZUNvc2lnbmF0dXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRhdGVSZXRyYWl0Q29zaWduYXR1cmVcIixcbiAgICAgICAganM6IFwiZGF0ZVJldHJhaXRDb3NpZ25hdHVyZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZWRpdGVcIiwganM6IFwiZWRpdGVcIiwgdHlwOiBmYWxzZSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yZ2FuZVwiLFxuICAgICAgICBqczogXCJvcmdhbmVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvU2lnbmF0YWlyZU9yZ2FuZVwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvU2lnbmF0YWlyZU9yZ2FuZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwib3JnYW5lUmVmXCIsIGpzOiBcIm9yZ2FuZVJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJldEFwcGFyZW50ZXNcIiwganM6IFwiZXRBcHBhcmVudGVzXCIsIHR5cDogZmFsc2UgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDb3JyZWN0aW9uOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0eXBlQ29ycmVjdGlvblwiLFxuICAgICAgICBqczogXCJ0eXBlQ29ycmVjdGlvblwiLFxuICAgICAgICB0eXA6IHIoXCJUeXBlQ29ycmVjdGlvblwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibml2ZWF1Q29ycmVjdGlvblwiLFxuICAgICAgICBqczogXCJuaXZlYXVDb3JyZWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDeWNsZURlVmllOiBvKFt7IGpzb246IFwiY2hyb25vXCIsIGpzOiBcImNocm9ub1wiLCB0eXA6IHIoXCJDaHJvbm9cIikgfV0sIGZhbHNlKSxcbiAgQ2hyb25vOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlQ3JlYXRpb25cIiwganM6IFwiZGF0ZUNyZWF0aW9uXCIsIHR5cDogRGF0ZSB9LFxuICAgICAgeyBqc29uOiBcImRhdGVEZXBvdFwiLCBqczogXCJkYXRlRGVwb3RcIiwgdHlwOiB1KHVuZGVmaW5lZCwgRGF0ZSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkYXRlUHVibGljYXRpb25cIixcbiAgICAgICAganM6IFwiZGF0ZVB1YmxpY2F0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIERhdGUpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkYXRlUHVibGljYXRpb25XZWJcIixcbiAgICAgICAganM6IFwiZGF0ZVB1YmxpY2F0aW9uV2ViXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIERhdGUpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBEZXBvdEFtZW5kZW1lbnRzOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhbWVuZGVtZW50c1NlYW5jZVwiLFxuICAgICAgICBqczogXCJhbWVuZGVtZW50c1NlYW5jZVwiLFxuICAgICAgICB0eXA6IHIoXCJBbWVuZGVtZW50c1NlYW5jZVwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYW1lbmRlbWVudHNDb21taXNzaW9uXCIsXG4gICAgICAgIGpzOiBcImFtZW5kZW1lbnRzQ29tbWlzc2lvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJBbWVuZGVtZW50c0NvbW1pc3Npb25cIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQW1lbmRlbWVudHNDb21taXNzaW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJvcmdhbmVSZWZcIiwganM6IFwib3JnYW5lUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFtZW5kYWJsZVwiLCBqczogXCJhbWVuZGFibGVcIiwgdHlwOiBmYWxzZSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnRzU2VhbmNlOiBvKFxuICAgIFt7IGpzb246IFwiYW1lbmRhYmxlXCIsIGpzOiBcImFtZW5kYWJsZVwiLCB0eXA6IGZhbHNlIH1dLFxuICAgIGZhbHNlLFxuICApLFxuICBEaXZpc2lvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwieHNpVHlwZVwiLCBqczogXCJ4c2lUeXBlXCIsIHR5cDogcihcIlR5cGVEb2N1bWVudFwiKSB9LFxuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGVnaXNsYXR1cmVcIiwganM6IFwibGVnaXNsYXR1cmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJjeWNsZURlVmllXCIsIGpzOiBcImN5Y2xlRGVWaWVcIiwgdHlwOiByKFwiQ3ljbGVEZVZpZVwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRlbm9taW5hdGlvblN0cnVjdHVyZWxsZVwiLFxuICAgICAgICBqczogXCJkZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0aXRyZXNcIiwganM6IFwidGl0cmVzXCIsIHR5cDogcihcIlRpdHJlc1wiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpdmlzaW9uc1wiLFxuICAgICAgICBqczogXCJkaXZpc2lvbnNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiRGl2aXNpb25cIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZG9zc2llclJlZlwiLCBqczogXCJkb3NzaWVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNsYXNzaWZpY2F0aW9uXCIsXG4gICAgICAgIGpzOiBcImNsYXNzaWZpY2F0aW9uXCIsXG4gICAgICAgIHR5cDogcihcIkNsYXNzaWZpY2F0aW9uXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhdXRldXJzXCIsIGpzOiBcImF1dGV1cnNcIiwgdHlwOiBhKHIoXCJBdXRldXJcIikpIH0sXG4gICAgICB7IGpzb246IFwib3JnYW5lc1JlZmVyZW50c1wiLCBqczogXCJvcmdhbmVzUmVmZXJlbnRzXCIsIHR5cDogdSh1bmRlZmluZWQsIGEoXCJcIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY29ycmVjdGlvblwiLFxuICAgICAgICBqczogXCJjb3JyZWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJDb3JyZWN0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibm90aWNlXCIsIGpzOiBcIm5vdGljZVwiLCB0eXA6IHIoXCJOb3RpY2VcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbmRleGF0aW9uXCIsXG4gICAgICAgIGpzOiBcImluZGV4YXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkluZGV4YXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbXByaW1lcmllXCIsXG4gICAgICAgIGpzOiBcImltcHJpbWVyaWVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkltcHJpbWVyaWVcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJyYXBwb3J0UHVibGllXCIsIGpzOiBcInJhcHBvcnRQdWJsaWVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgZmFsc2UpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgSW1wcmltZXJpZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiZGlhblwiLCBqczogXCJkaWFuXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaXNiblwiLCBqczogXCJpc2JuXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwibmJQYWdlXCIsIGpzOiBcIm5iUGFnZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInByaXhcIiwganM6IFwicHJpeFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIE5vdGljZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibnVtTm90aWNlXCIsIGpzOiBcIm51bU5vdGljZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImZvcm11bGVcIiwganM6IFwiZm9ybXVsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImFkb3B0aW9uQ29uZm9ybWVcIiwganM6IFwiYWRvcHRpb25Db25mb3JtZVwiLCB0eXA6IGZhbHNlIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGl0cmVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0aXRyZVByaW5jaXBhbFwiLCBqczogXCJ0aXRyZVByaW5jaXBhbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0aXRyZVByaW5jaXBhbENvdXJ0XCIsIGpzOiBcInRpdHJlUHJpbmNpcGFsQ291cnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRG9zc2llclBhcmxlbWVudGFpcmVYc2lUeXBlOiBbXG4gICAgXCJEb3NzaWVyQ29tbWlzc2lvbkVucXVldGVfVHlwZVwiLFxuICAgIFwiRG9zc2llckluaWF0aXZlRXhlY3V0aWZfVHlwZVwiLFxuICAgIFwiRG9zc2llckxlZ2lzbGF0aWZfVHlwZVwiLFxuICAgIFwiRG9zc2llck1pc3Npb25Db250cm9sZV9UeXBlXCIsXG4gICAgXCJEb3NzaWVyTWlzc2lvbkluZm9ybWF0aW9uX1R5cGVcIixcbiAgICBcIkRvc3NpZXJSZXNvbHV0aW9uQU5cIixcbiAgXSxcbiAgVHlwZUJ1ZGdldDogW1xuICAgIFwiQnVkZ2V0IGFubmV4ZVwiLFxuICAgIFwiQnVkZ2V0IGfDqW7DqXJhbFwiLFxuICAgIFwiQ29tcHRlIGRlIGNvbmNvdXJzIGZpbmFuY2llclwiLFxuICAgIFwiQ29tcHRlIHNww6ljaWFsXCIsXG4gICAgXCJQcmVtacOocmUgcGFydGllXCIsXG4gIF0sXG4gIFR5cGVNaXNzaW9uOiBbXG4gICAgXCJtaXNzaW9uIHByaW5jaXBhbGVcIixcbiAgICBcIm1pc3Npb24gc2Vjb25kYWlyZVwiLFxuICAgIFwicGFydGllIGRlIG1pc3Npb25cIixcbiAgXSxcbiAgUXVhbGl0ZTogW1xuICAgIFwiYXV0ZXVyXCIsXG4gICAgXCJyYXBwb3J0ZXVyXCIsXG4gICAgXCJyYXBwb3J0ZXVyIGfDqW7DqXJhbFwiLFxuICAgIFwicmFwcG9ydGV1ciBwb3VyIGF2aXNcIixcbiAgICBcInJhcHBvcnRldXIgc3DDqWNpYWxcIixcbiAgXSxcbiAgVHlwZUFjdGVMZWdpc2xhdGlmOiBbXG4gICAgXCJBZG9wdGlvbl9FdXJvcGVfVHlwZVwiLFxuICAgIFwiQ29uY2x1c2lvbkV0YXBlQ0NfVHlwZVwiLFxuICAgIFwiQ3JlYXRpb25PcmdhbmVUZW1wb3JhaXJlX1R5cGVcIixcbiAgICBcIkRlY2lzaW9uTW90aW9uQ2Vuc3VyZV9UeXBlXCIsXG4gICAgXCJEZWNpc2lvblJlY2V2YWJpbGl0ZUJ1cmVhdV9UeXBlXCIsXG4gICAgXCJEZWNpc2lvbl9UeXBlXCIsXG4gICAgXCJEZWNsYXJhdGlvbkdvdXZlcm5lbWVudF9UeXBlXCIsXG4gICAgXCJEZXBvdEFjY29yZEludGVybmF0aW9uYWxfVHlwZVwiLFxuICAgIFwiRGVwb3RBdmlzQ29uc2VpbEV0YXRfVHlwZVwiLFxuICAgIFwiRGVwb3RJbml0aWF0aXZlTmF2ZXR0ZV9UeXBlXCIsXG4gICAgXCJEZXBvdEluaXRpYXRpdmVfVHlwZVwiLFxuICAgIFwiRGVwb3RMZXR0cmVSZWN0aWZpY2F0aXZlX1R5cGVcIixcbiAgICBcIkRlcG90TW90aW9uQ2Vuc3VyZV9UeXBlXCIsXG4gICAgXCJEZXBvdE1vdGlvblJlZmVyZW5kYWlyZV9UeXBlXCIsXG4gICAgXCJEZXBvdFJhcHBvcnRfVHlwZVwiLFxuICAgIFwiRGlzY3Vzc2lvbkNvbW1pc3Npb25fVHlwZVwiLFxuICAgIFwiRGlzY3Vzc2lvblNlYW5jZVB1YmxpcXVlX1R5cGVcIixcbiAgICBcIkV0YXBlX1R5cGVcIixcbiAgICBcIkV0dWRlSW1wYWN0X1R5cGVcIixcbiAgICBcIk1vdGlvblByb2NlZHVyZV9UeXBlXCIsXG4gICAgXCJOb21pblJhcHBvcnRldXJzX1R5cGVcIixcbiAgICBcIlByb2NlZHVyZUFjY2VsZXJlX1R5cGVcIixcbiAgICBcIlByb211bGdhdGlvbl9UeXBlXCIsXG4gICAgXCJSZW52b2lDTVBfVHlwZVwiLFxuICAgIFwiUmVudm9pUHJlYWxhYmxlX1R5cGVcIixcbiAgICBcIlJldHJhaXRJbml0aWF0aXZlX1R5cGVcIixcbiAgICBcIlNhaXNpZUNvbUF2aXNfVHlwZVwiLFxuICAgIFwiU2Fpc2llQ29tRm9uZF9UeXBlXCIsXG4gICAgXCJTYWlzaW5lQ29uc2VpbENvbnN0aXRfVHlwZVwiLFxuICBdLFxuICBDb2RlQWN0ZU5pdmVhdTA6IE9iamVjdC52YWx1ZXMoQ29kZUFjdGVOaXZlYXUwKSxcbiAgQ29kZUFjdGVOaXZlYXUxOiBPYmplY3QudmFsdWVzKENvZGVBY3RlTml2ZWF1MSksXG4gIENvZGVBY3RlTml2ZWF1MjogT2JqZWN0LnZhbHVlcyhDb2RlQWN0ZU5pdmVhdTIpLFxuICBDb2RlQWN0ZU5pdmVhdTM6IE9iamVjdC52YWx1ZXMoQ29kZUFjdGVOaXZlYXUzKSxcbiAgVHlwZVRleHRlOiBbXCJCVEFcIiwgXCJUQVBcIl0sXG4gIE1vdGlmOiBbXCJFbiBhcHBsaWNhdGlvbiBkZSBsJ2FydGljbGUgNjHCpzIgZGUgbGEgQ29uc3RpdHV0aW9uXCJdLFxuICBUeXBlSm86IFtcIkpPX0xPSV9ERUNSRVRcIl0sXG4gIENhdXNlOiBbXCJEb3NzaWVyIGFic29yYsOpXCIsIFwiRXhhbWVuIGNvbW11blwiXSxcbiAgVHlwZURvY3VtZW50OiBbXG4gICAgXCJhY2NvcmRJbnRlcm5hdGlvbmFsX1R5cGVcIixcbiAgICBcImF2aXNDb25zZWlsRXRhdF9UeXBlXCIsXG4gICAgXCJkb2N1bWVudEV0dWRlSW1wYWN0X1R5cGVcIixcbiAgICBcInJhcHBvcnRQYXJsZW1lbnRhaXJlX1R5cGVcIixcbiAgICBcInRleHRlTG9pX1R5cGVcIixcbiAgXSxcbiAgU3RhdHV0QWRvcHRpb246IFtcIkFET1BUQ09NXCIsIFwiQURPUFRTRUFOQ0VcIiwgXCJSRUpFVFNFQU5DRVwiXSxcbiAgVHlwZUNvcnJlY3Rpb246IFtcIlJlY3RpZmnDqVwiXSxcbiAgRG9jdW1lbnREZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGU6IFtcbiAgICBcIkFsbG9jdXRpb25cIixcbiAgICBcIkF2aXNcIixcbiAgICBcIkTDqWNsYXJhdGlvblwiLFxuICAgIFwiTGV0dHJlXCIsXG4gICAgXCJNZXNzYWdlXCIsXG4gICAgXCJQcm9qZXQgZGUgbG9pXCIsXG4gICAgXCJQcm9wb3NpdGlvbiBkZSBsb2lcIixcbiAgICBcIlByb3Bvc2l0aW9uIGRlIHLDqXNvbHV0aW9uXCIsXG4gICAgXCJSYXBwb3J0XCIsXG4gICAgXCJSYXBwb3J0IGQnaW5mb3JtYXRpb25cIixcbiAgICBcIlLDqXNvbHV0aW9uXCIsXG4gIF0sXG4gIFByb3ZlbmFuY2U6IFtcIkNvbW1pc3Npb25cIiwgXCJTw6lhbmNlXCIsIFwiVGV4dGUgRMOpcG9zw6lcIl0sXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBY0E7Ozs7Ozs7Ozs7SUEyQllBLDJCOzs7V0FBQUEsMkI7RUFBQUEsMkI7RUFBQUEsMkI7RUFBQUEsMkI7RUFBQUEsMkI7RUFBQUEsMkI7RUFBQUEsMkI7R0FBQUEsMkIsMkNBQUFBLDJCOztJQTJCQUMsVTs7O1dBQUFBLFU7RUFBQUEsVTtFQUFBQSxVO0VBQUFBLFU7RUFBQUEsVTtFQUFBQSxVO0dBQUFBLFUsMEJBQUFBLFU7O0lBUUFDLFc7OztXQUFBQSxXO0VBQUFBLFc7RUFBQUEsVztFQUFBQSxXO0dBQUFBLFcsMkJBQUFBLFc7O0lBTUFDLE87OztXQUFBQSxPO0VBQUFBLE87RUFBQUEsTztFQUFBQSxPO0VBQUFBLE87RUFBQUEsTztHQUFBQSxPLHVCQUFBQSxPOztJQVFBQyxrQjs7O1dBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0VBQUFBLGtCO0dBQUFBLGtCLGtDQUFBQSxrQjs7SUE4R0FDLFM7OztXQUFBQSxTO0VBQUFBLFM7RUFBQUEsUztHQUFBQSxTLHlCQUFBQSxTOztJQXNCQUMsSzs7O1dBQUFBLEs7RUFBQUEsSztHQUFBQSxLLHFCQUFBQSxLOztJQWlCQUMsTTs7O1dBQUFBLE07RUFBQUEsTTtHQUFBQSxNLHNCQUFBQSxNOztJQWVBQyxLOzs7V0FBQUEsSztFQUFBQSxLO0VBQUFBLEs7R0FBQUEsSyxxQkFBQUEsSzs7SUEyREFDLFk7OztXQUFBQSxZO0VBQUFBLFk7RUFBQUEsWTtFQUFBQSxZO0VBQUFBLFk7RUFBQUEsWTtHQUFBQSxZLDRCQUFBQSxZOztJQXVDQUMsYzs7O1dBQUFBLGM7RUFBQUEsYztFQUFBQSxjO0VBQUFBLGM7R0FBQUEsYyw4QkFBQUEsYzs7SUF3QkFDLGM7OztXQUFBQSxjO0VBQUFBLGM7R0FBQUEsYyw4QkFBQUEsYzs7SUFlQUMsZ0M7OztXQUFBQSxnQztFQUFBQSxnQztFQUFBQSxnQztFQUFBQSxnQztFQUFBQSxn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
1120
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEb3NzaWVyUGFybGVtZW50YWlyZVhzaVR5cGUiLCJUeXBlQnVkZ2V0IiwiVHlwZU1pc3Npb24iLCJRdWFsaXRlIiwiVHlwZUFjdGVMZWdpc2xhdGlmIiwiVHlwZVRleHRlIiwiTW90aWYiLCJUeXBlSm8iLCJDYXVzZSIsIlR5cGVEb2N1bWVudCIsIlN0YXR1dEFkb3B0aW9uIiwiVHlwZUNvcnJlY3Rpb24iLCJEb2N1bWVudERlbm9taW5hdGlvblN0cnVjdHVyZWxsZSIsIlByb3ZlbmFuY2UiLCJDb252ZXJ0IiwianNvbiIsImNhc3QiLCJKU09OIiwicGFyc2UiLCJyIiwidmFsdWUiLCJzdHJpbmdpZnkiLCJ1bmNhc3QiLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJFcnJvciIsImpzb25Ub0pTUHJvcHMiLCJqc29uVG9KUyIsInVuZGVmaW5lZCIsIm1hcCIsInByb3BzIiwiZm9yRWFjaCIsInAiLCJqcyIsImpzVG9KU09OUHJvcHMiLCJqc1RvSlNPTiIsInRyYW5zZm9ybSIsImdldFByb3BzIiwidHJhbnNmb3JtUHJpbWl0aXZlIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImxlbmd0aCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiQXJyYXkiLCJpc0FycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwicmVmIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJhIiwidSIsIm8iLCJuYW1lIiwiRG9zc2llcnNMZWdpc2xhdGlmcyIsIkRvc3NpZXJQYXJsZW1lbnRhaXJlIiwiRXR1ZGVQbGYiLCJNaXNzaW9uTWluZWZpIiwiQWN0ZUxlZ2lzbGF0aWYiLCJMaWJlbGxlQWN0ZSIsIlJhcHBvcnRldXIiLCJUeXBlRGVjbGFyYXRpb24iLCJUZXh0ZUFzc29jaWUiLCJDb250cmlidXRpb25JbnRlcm5hdXRlIiwiSW5mb0pvY2UiLCJJbml0aWF0ZXVyQWN0ZXVyIiwiVGV4dGVFdXJvcGVlbiIsIkluZm9KbyIsIkZ1c2lvbkRvc3NpZXIiLCJJbmRleGF0aW9uIiwiVGhlbWVzIiwiVGhlbWUiLCJJbml0aWF0ZXVyIiwiUHJvY2VkdXJlUGFybGVtZW50YWlyZSIsIlRpdHJlRG9zc2llciIsIkRvY3VtZW50IiwiQXV0ZXVyIiwiQXV0ZXVyQWN0ZXVyIiwiQ2xhc3NpZmljYXRpb24iLCJGYW1pbGxlIiwiU291c1R5cGUiLCJDb1NpZ25hdGFpcmVFbGVtZW50IiwiQ29TaWduYXRhaXJlT3JnYW5lIiwiQ29ycmVjdGlvbiIsIkN5Y2xlRGVWaWUiLCJDaHJvbm8iLCJEZXBvdEFtZW5kZW1lbnRzIiwiQW1lbmRlbWVudHNDb21taXNzaW9uIiwiQW1lbmRlbWVudHNTZWFuY2UiLCJEaXZpc2lvbiIsIkltcHJpbWVyaWUiLCJOb3RpY2UiLCJUaXRyZXMiLCJDb2RlQWN0ZU5pdmVhdTAiLCJ2YWx1ZXMiLCJDb2RlQWN0ZU5pdmVhdTEiLCJDb2RlQWN0ZU5pdmVhdTIiLCJDb2RlQWN0ZU5pdmVhdTMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvZG9zc2llcnNfbGVnaXNsYXRpZnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVG8gcGFyc2UgdGhpcyBkYXRhOlxuLy9cbi8vICAgaW1wb3J0IHsgQ29udmVydCwgRG9jdW1lbnQsIERvc3NpZXJQYXJsZW1lbnRhaXJlLCBEb3NzaWVyc0xlZ2lzbGF0aWZzIH0gZnJvbSBcIi4vZmlsZVwiO1xuLy9cbi8vICAgY29uc3QgZG9jdW1lbnQgPSBDb252ZXJ0LnRvRG9jdW1lbnQoanNvbik7XG4vLyAgIGNvbnN0IGRvc3NpZXJQYXJsZW1lbnRhaXJlID0gQ29udmVydC50b0Rvc3NpZXJQYXJsZW1lbnRhaXJlKGpzb24pO1xuLy8gICBjb25zdCBkb3NzaWVyc0xlZ2lzbGF0aWZzID0gQ29udmVydC50b0Rvc3NpZXJzTGVnaXNsYXRpZnMoanNvbik7XG4vL1xuLy8gVGhlc2UgZnVuY3Rpb25zIHdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIEpTT04gZG9lc24ndFxuLy8gbWF0Y2ggdGhlIGV4cGVjdGVkIGludGVyZmFjZSwgZXZlbiBpZiB0aGUgSlNPTiBpcyB2YWxpZC5cblxuaW1wb3J0IHsgQWN0ZXVyLCBNYW5kYXQsIE9yZ2FuZSB9IGZyb20gXCIuL2FjdGV1cnNfZXRfb3JnYW5lc1wiXG5pbXBvcnQgeyBQb2ludE9kaiwgUmV1bmlvbiB9IGZyb20gXCIuL2FnZW5kYXNcIlxuaW1wb3J0IHsgU2NydXRpbiB9IGZyb20gXCIuL3NjcnV0aW5zXCJcbmltcG9ydCB7XG4gIENvZGVBY3RlLFxuICBDb2RlQWN0ZU5pdmVhdTAsXG4gIENvZGVBY3RlTml2ZWF1MSxcbiAgQ29kZUFjdGVOaXZlYXUyLFxuICBDb2RlQWN0ZU5pdmVhdTMsXG59IGZyb20gXCIuLi9zaGFyZWRfdHlwZXMvY29kZXNfYWN0ZXNcIlxuXG5leHBvcnQgaW50ZXJmYWNlIERvc3NpZXJzTGVnaXNsYXRpZnMge1xuICB0ZXh0ZXNMZWdpc2xhdGlmczogRG9jdW1lbnRbXVxuICBkb3NzaWVyc1BhcmxlbWVudGFpcmVzOiBEb3NzaWVyUGFybGVtZW50YWlyZVtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9zc2llclBhcmxlbWVudGFpcmUge1xuICBzY2hlbWFWZXJzaW9uPzogc3RyaW5nXG4gIHhzaVR5cGU/OiBEb3NzaWVyUGFybGVtZW50YWlyZVhzaVR5cGVcbiAgdWlkOiBzdHJpbmdcbiAgbGVnaXNsYXR1cmU6IHN0cmluZ1xuICB0aXRyZURvc3NpZXI6IFRpdHJlRG9zc2llclxuICBwcm9jZWR1cmVQYXJsZW1lbnRhaXJlOiBQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXG4gIGluaXRpYXRldXI/OiBJbml0aWF0ZXVyXG4gIGFjdGVzTGVnaXNsYXRpZnM/OiBBY3RlTGVnaXNsYXRpZltdXG4gIGZ1c2lvbkRvc3NpZXI/OiBGdXNpb25Eb3NzaWVyXG4gIGluZGV4YXRpb24/OiBJbmRleGF0aW9uXG4gIHBsZj86IEV0dWRlUGxmW11cbn1cblxuZXhwb3J0IGVudW0gRG9zc2llclBhcmxlbWVudGFpcmVYc2lUeXBlIHtcbiAgRG9zc2llckNvbW1pc3Npb25FbnF1ZXRlVHlwZSA9IFwiRG9zc2llckNvbW1pc3Npb25FbnF1ZXRlX1R5cGVcIixcbiAgRG9zc2llckluaWF0aXZlRXhlY3V0aWZUeXBlID0gXCJEb3NzaWVySW5pYXRpdmVFeGVjdXRpZl9UeXBlXCIsXG4gIERvc3NpZXJMZWdpc2xhdGlmVHlwZSA9IFwiRG9zc2llckxlZ2lzbGF0aWZfVHlwZVwiLFxuICBEb3NzaWVyTWlzc2lvbkNvbnRyb2xlVHlwZSA9IFwiRG9zc2llck1pc3Npb25Db250cm9sZV9UeXBlXCIsXG4gIERvc3NpZXJNaXNzaW9uSW5mb3JtYXRpb25UeXBlID0gXCJEb3NzaWVyTWlzc2lvbkluZm9ybWF0aW9uX1R5cGVcIixcbiAgRG9zc2llclJlc29sdXRpb25BbiA9IFwiRG9zc2llclJlc29sdXRpb25BTlwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV0dWRlUGxmIHtcbiAgdWlkOiBzdHJpbmdcbiAgb3JnYW5lUmVmOiBzdHJpbmdcbiAgdGV4dGVBc3NvY2llPzogc3RyaW5nXG4gIHJhcHBvcnRldXJzPzogUmFwcG9ydGV1cltdXG4gIG1pc3Npb25NaW5lZmk/OiBNaXNzaW9uTWluZWZpXG4gIG9yZHJlRGlxczogc3RyaW5nXG4gIG9yZHJlQ29tbWlzc2lvbjogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWlzc2lvbk1pbmVmaSB7XG4gIHR5cGVNaXNzaW9uOiBUeXBlTWlzc2lvblxuICBsaWJlbGxlTG9uZzogc3RyaW5nXG4gIGxpYmVsbGVDb3VydDogc3RyaW5nXG4gIHR5cGVCdWRnZXQ6IFR5cGVCdWRnZXRcbiAgbWlzc2lvbnM/OiBNaXNzaW9uTWluZWZpW11cbn1cblxuZXhwb3J0IGVudW0gVHlwZUJ1ZGdldCB7XG4gIEJ1ZGdldEFubmV4ZSA9IFwiQnVkZ2V0IGFubmV4ZVwiLFxuICBCdWRnZXRHw6luw6lyYWwgPSBcIkJ1ZGdldCBnw6luw6lyYWxcIixcbiAgQ29tcHRlRGVDb25jb3Vyc0ZpbmFuY2llciA9IFwiQ29tcHRlIGRlIGNvbmNvdXJzIGZpbmFuY2llclwiLFxuICBDb21wdGVTcMOpY2lhbCA9IFwiQ29tcHRlIHNww6ljaWFsXCIsXG4gIFByZW1pw6hyZVBhcnRpZSA9IFwiUHJlbWnDqHJlIHBhcnRpZVwiLFxufVxuXG5leHBvcnQgZW51bSBUeXBlTWlzc2lvbiB7XG4gIE1pc3Npb25QcmluY2lwYWxlID0gXCJtaXNzaW9uIHByaW5jaXBhbGVcIixcbiAgTWlzc2lvblNlY29uZGFpcmUgPSBcIm1pc3Npb24gc2Vjb25kYWlyZVwiLFxuICBQYXJ0aWVEZU1pc3Npb24gPSBcInBhcnRpZSBkZSBtaXNzaW9uXCIsXG59XG5cbmV4cG9ydCBlbnVtIFF1YWxpdGUge1xuICBBdXRldXIgPSBcImF1dGV1clwiLFxuICBSYXBwb3J0ZXVyID0gXCJyYXBwb3J0ZXVyXCIsXG4gIFJhcHBvcnRldXJHw6luw6lyYWwgPSBcInJhcHBvcnRldXIgZ8OpbsOpcmFsXCIsXG4gIFJhcHBvcnRldXJQb3VyQXZpcyA9IFwicmFwcG9ydGV1ciBwb3VyIGF2aXNcIixcbiAgUmFwcG9ydGV1clNww6ljaWFsID0gXCJyYXBwb3J0ZXVyIHNww6ljaWFsXCIsXG59XG5cbmV4cG9ydCBlbnVtIFR5cGVBY3RlTGVnaXNsYXRpZiB7XG4gIEFkb3B0aW9uRXVyb3BlVHlwZSA9IFwiQWRvcHRpb25fRXVyb3BlX1R5cGVcIixcbiAgQ29uY2x1c2lvbkV0YXBlQ2NUeXBlID0gXCJDb25jbHVzaW9uRXRhcGVDQ19UeXBlXCIsXG4gIENyZWF0aW9uT3JnYW5lVGVtcG9yYWlyZVR5cGUgPSBcIkNyZWF0aW9uT3JnYW5lVGVtcG9yYWlyZV9UeXBlXCIsXG4gIERlY2lzaW9uTW90aW9uQ2Vuc3VyZVR5cGUgPSBcIkRlY2lzaW9uTW90aW9uQ2Vuc3VyZV9UeXBlXCIsXG4gIERlY2lzaW9uUmVjZXZhYmlsaXRlQnVyZWF1VHlwZSA9IFwiRGVjaXNpb25SZWNldmFiaWxpdGVCdXJlYXVfVHlwZVwiLFxuICBEZWNpc2lvblR5cGUgPSBcIkRlY2lzaW9uX1R5cGVcIixcbiAgRGVjbGFyYXRpb25Hb3V2ZXJuZW1lbnRUeXBlID0gXCJEZWNsYXJhdGlvbkdvdXZlcm5lbWVudF9UeXBlXCIsXG4gIERlcG90QWNjb3JkSW50ZXJuYXRpb25hbFR5cGUgPSBcIkRlcG90QWNjb3JkSW50ZXJuYXRpb25hbF9UeXBlXCIsXG4gIERlcG90QXZpc0NvbnNlaWxFdGF0VHlwZSA9IFwiRGVwb3RBdmlzQ29uc2VpbEV0YXRfVHlwZVwiLFxuICBEZXBvdEluaXRpYXRpdmVOYXZldHRlVHlwZSA9IFwiRGVwb3RJbml0aWF0aXZlTmF2ZXR0ZV9UeXBlXCIsXG4gIERlcG90SW5pdGlhdGl2ZVR5cGUgPSBcIkRlcG90SW5pdGlhdGl2ZV9UeXBlXCIsXG4gIERlcG90TGV0dHJlUmVjdGlmaWNhdGl2ZVR5cGUgPSBcIkRlcG90TGV0dHJlUmVjdGlmaWNhdGl2ZV9UeXBlXCIsXG4gIERlcG90TW90aW9uQ2Vuc3VyZVR5cGUgPSBcIkRlcG90TW90aW9uQ2Vuc3VyZV9UeXBlXCIsXG4gIERlcG90TW90aW9uUmVmZXJlbmRhaXJlVHlwZSA9IFwiRGVwb3RNb3Rpb25SZWZlcmVuZGFpcmVfVHlwZVwiLFxuICBEZXBvdFJhcHBvcnRUeXBlID0gXCJEZXBvdFJhcHBvcnRfVHlwZVwiLFxuICBEaXNjdXNzaW9uQ29tbWlzc2lvblR5cGUgPSBcIkRpc2N1c3Npb25Db21taXNzaW9uX1R5cGVcIixcbiAgRGlzY3Vzc2lvblNlYW5jZVB1YmxpcXVlVHlwZSA9IFwiRGlzY3Vzc2lvblNlYW5jZVB1YmxpcXVlX1R5cGVcIixcbiAgRXRhcGVUeXBlID0gXCJFdGFwZV9UeXBlXCIsXG4gIEV0dWRlSW1wYWN0VHlwZSA9IFwiRXR1ZGVJbXBhY3RfVHlwZVwiLFxuICBNb3Rpb25Qcm9jZWR1cmVUeXBlID0gXCJNb3Rpb25Qcm9jZWR1cmVfVHlwZVwiLFxuICBOb21pblJhcHBvcnRldXJzVHlwZSA9IFwiTm9taW5SYXBwb3J0ZXVyc19UeXBlXCIsXG4gIFByb2NlZHVyZUFjY2VsZXJlVHlwZSA9IFwiUHJvY2VkdXJlQWNjZWxlcmVfVHlwZVwiLFxuICBQcm9tdWxnYXRpb25UeXBlID0gXCJQcm9tdWxnYXRpb25fVHlwZVwiLFxuICBSZW52b2lDbXBUeXBlID0gXCJSZW52b2lDTVBfVHlwZVwiLFxuICBSZW52b2lQcmVhbGFibGVUeXBlID0gXCJSZW52b2lQcmVhbGFibGVfVHlwZVwiLFxuICBSZXRyYWl0SW5pdGlhdGl2ZVR5cGUgPSBcIlJldHJhaXRJbml0aWF0aXZlX1R5cGVcIixcbiAgU2Fpc2llQ29tQXZpc1R5cGUgPSBcIlNhaXNpZUNvbUF2aXNfVHlwZVwiLFxuICBTYWlzaWVDb21Gb25kVHlwZSA9IFwiU2Fpc2llQ29tRm9uZF9UeXBlXCIsXG4gIFNhaXNpbmVDb25zZWlsQ29uc3RpdFR5cGUgPSBcIlNhaXNpbmVDb25zZWlsQ29uc3RpdF9UeXBlXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0ZUxlZ2lzbGF0aWYge1xuICB4c2lUeXBlOiBUeXBlQWN0ZUxlZ2lzbGF0aWZcbiAgdWlkOiBzdHJpbmdcbiAgY29kZUFjdGU6IENvZGVBY3RlXG4gIGxpYmVsbGVBY3RlOiBMaWJlbGxlQWN0ZVxuICBvcmdhbmVSZWY/OiBzdHJpbmdcbiAgb3JnYW5lPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGRhdGVBY3RlPzogRGF0ZVxuICAvL1xuICBhbm5lZURlY2lzaW9uPzogc3RyaW5nXG4gIGF1dGV1ck1vdGlvbj86IHN0cmluZ1xuICBhdXRldXJzUmVmcz86IHN0cmluZ1tdXG4gIGNhc1NhaXNpbmU/OiBUeXBlRGVjbGFyYXRpb25cbiAgY29kZUxvaT86IHN0cmluZ1xuICBjb250cmlidXRpb25JbnRlcm5hdXRlPzogQ29udHJpYnV0aW9uSW50ZXJuYXV0ZVxuICBkZWNpc2lvbj86IFR5cGVEZWNsYXJhdGlvblxuICBkZXBvdEluaXRpYWxMZWN0dXJlRGVmaW5pdGl2ZVJlZj86IHN0cmluZ1xuICBkZXBvdEluaXRpYWxMZWN0dXJlRGVmaW5pdGl2ZT86IERvY3VtZW50IC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGZvcm11bGVEZWNpc2lvbj86IHN0cmluZ1xuICBpbmZvSm8/OiBJbmZvSm9cbiAgaW5mb0pvY2U/OiBJbmZvSm9jZVxuICBpbmZvSm9SZWN0PzogSW5mb0pvW11cbiAgaW5pdGlhdGV1cj86IEluaXRpYXRldXJcbiAgbW90aWY/OiBNb3RpZlxuICBudW1EZWNpc2lvbj86IHN0cmluZ1xuICBvZGpSZWY/OiBzdHJpbmdcbiAgb2RqPzogUG9pbnRPZGogLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgcHJvdmVuYW5jZVJlZj86IHN0cmluZ1xuICBwcm92ZW5hbmNlPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHJhcHBvcnRldXJzPzogUmFwcG9ydGV1cltdXG4gIHJlZmVyZW5jZU5vcj86IHN0cmluZ1xuICByZXVuaW9uUmVmPzogc3RyaW5nXG4gIHJldW5pb24/OiBSZXVuaW9uIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHN0YXR1dEFkb3B0aW9uPzogVHlwZURlY2xhcmF0aW9uXG4gIHN0YXR1dENvbmNsdXNpb24/OiBUeXBlRGVjbGFyYXRpb25cbiAgdGV4dGVBZG9wdGVSZWY/OiBzdHJpbmdcbiAgdGV4dGVBZG9wdGU/OiBEb2N1bWVudCAvLyBBZGRlZCBieSBUcmljb3RldXNlc1xuICB0ZXh0ZUFzc29jaWVSZWY/OiBzdHJpbmdcbiAgdGV4dGVBc3NvY2llPzogRG9jdW1lbnQgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgdGV4dGVFdXJvcGVlbj86IFRleHRlRXVyb3BlZW5cbiAgdGV4dGVMb2lSZWY/OiBzdHJpbmdcbiAgdGV4dGVzQXNzb2NpZXM/OiBUZXh0ZUFzc29jaWVbXVxuICB0aXRyZUxvaT86IHN0cmluZ1xuICB0eXBlRGVjbGFyYXRpb24/OiBUeXBlRGVjbGFyYXRpb25cbiAgdHlwZU1vdGlvbj86IFR5cGVEZWNsYXJhdGlvblxuICB0eXBlTW90aW9uQ2Vuc3VyZT86IFR5cGVEZWNsYXJhdGlvblxuICB1cmxDb25jbHVzaW9uPzogc3RyaW5nXG4gIHVybEVjaGVhbmNpZXJMb2k/OiBzdHJpbmdcbiAgdXJsTGVnaWZyYW5jZT86IHN0cmluZ1xuICB2b3RlUmVmcz86IHN0cmluZ1tdXG4gIHZvdGVzPzogU2NydXRpbltdIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIC8vXG4gIGFjdGVzTGVnaXNsYXRpZnM/OiBBY3RlTGVnaXNsYXRpZltdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGliZWxsZUFjdGUge1xuICBub21DYW5vbmlxdWU6IHN0cmluZ1xuICBsaWJlbGxlQ291cnQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSYXBwb3J0ZXVyIHtcbiAgYWN0ZXVyUmVmOiBzdHJpbmdcbiAgYWN0ZXVyPzogQWN0ZXVyIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHR5cGVSYXBwb3J0ZXVyOiBRdWFsaXRlXG4gIGV0dWRlUGxmUmVmPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZURlY2xhcmF0aW9uIHtcbiAgZmFtQ29kZTogc3RyaW5nXG4gIGxpYmVsbGU6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRlQXNzb2NpZSB7XG4gIHR5cGVUZXh0ZTogVHlwZVRleHRlXG4gIHRleHRlQXNzb2NpZVJlZjogc3RyaW5nXG4gIHRleHRlQXNzb2NpZT86IERvY3VtZW50IC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG59XG5cbmV4cG9ydCBlbnVtIFR5cGVUZXh0ZSB7XG4gIEJ0YSA9IFwiQlRBXCIsXG4gIFRhcCA9IFwiVEFQXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udHJpYnV0aW9uSW50ZXJuYXV0ZSB7XG4gIGRhdGVPdXZlcnR1cmU/OiBzdHJpbmdcbiAgZGF0ZUZlcm1ldHVyZT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZm9Kb2NlIHtcbiAgcmVmSm9jZTogc3RyaW5nXG4gIGRhdGVKb2NlOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbml0aWF0ZXVyQWN0ZXVyIHtcbiAgYWN0ZXVyUmVmOiBzdHJpbmdcbiAgYWN0ZXVyPzogQWN0ZXVyIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIG1hbmRhdFJlZj86IHN0cmluZ1xuICBtYW5kYXQ/OiBNYW5kYXQgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbn1cblxuZXhwb3J0IGVudW0gTW90aWYge1xuICBFbkFwcGxpY2F0aW9uRGVMQXJ0aWNsZTYxMkRlTGFDb25zdGl0dXRpb24gPSBcIkVuIGFwcGxpY2F0aW9uIGRlIGwnYXJ0aWNsZSA2McKnMiBkZSBsYSBDb25zdGl0dXRpb25cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZUV1cm9wZWVuIHtcbiAgdHlwZVRleHRlRXVyb3BlZW46IHN0cmluZ1xuICB0aXRyZVRleHRlRXVyb3BlZW46IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZm9KbyB7XG4gIHR5cGVKbzogVHlwZUpvXG4gIGRhdGVKbzogc3RyaW5nXG4gIG51bUpvOiBzdHJpbmdcbiAgdXJsTGVnaWZyYW5jZT86IHN0cmluZ1xuICByZWZlcmVuY2VOb3I/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gVHlwZUpvIHtcbiAgSm9Mb2lEZWNyZXQgPSBcIkpPX0xPSV9ERUNSRVRcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmZvSm9SZWN0RWxlbWVudCB7XG4gIHR5cGVKbzogVHlwZUpvXG4gIGRhdGVKbzogc3RyaW5nXG4gIG51bUpvOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGdXNpb25Eb3NzaWVyIHtcbiAgY2F1c2U6IENhdXNlXG4gIGRvc3NpZXJBYnNvcmJhbnRSZWY6IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBDYXVzZSB7XG4gIERvc3NpZXJBYnNvcmLDqSA9IFwiRG9zc2llciBhYnNvcmLDqVwiLFxuICBFeGFtZW5Db21tdW4gPSBcIkV4YW1lbiBjb21tdW5cIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmRleGF0aW9uIHtcbiAgdGhlbWVzOiBUaGVtZXNcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaGVtZXMge1xuICBcIkBuaXZlYXVcIjogc3RyaW5nXG4gIHRoZW1lOiBUaGVtZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRoZW1lIHtcbiAgbGliZWxsZVRoZW1lOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbml0aWF0ZXVyIHtcbiAgYWN0ZXVycz86IEluaXRpYXRldXJBY3RldXJbXVxuICBvcmdhbmVSZWY/OiBzdHJpbmdcbiAgb3JnYW5lPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvY2VkdXJlUGFybGVtZW50YWlyZSB7XG4gIGNvZGU6IHN0cmluZ1xuICBsaWJlbGxlOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaXRyZURvc3NpZXIge1xuICB0aXRyZTogc3RyaW5nXG4gIHRpdHJlQ2hlbWluPzogc3RyaW5nXG4gIHNlbmF0Q2hlbWluPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnQge1xuICBzY2hlbWFWZXJzaW9uPzogc3RyaW5nXG4gIHhzaVR5cGU6IFR5cGVEb2N1bWVudFxuICB1aWQ6IHN0cmluZ1xuICBsZWdpc2xhdHVyZT86IHN0cmluZ1xuICBjeWNsZURlVmllOiBDeWNsZURlVmllXG4gIGRlbm9taW5hdGlvblN0cnVjdHVyZWxsZTogRG9jdW1lbnREZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGVcbiAgcHJvdmVuYW5jZT86IFByb3ZlbmFuY2VcbiAgdGl0cmVzOiBUaXRyZXNcbiAgZGl2aXNpb25zPzogRGl2aXNpb25bXVxuICBkb3NzaWVyUmVmOiBzdHJpbmdcbiAgZG9zc2llcj86IERvc3NpZXJQYXJsZW1lbnRhaXJlIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIGNsYXNzaWZpY2F0aW9uOiBDbGFzc2lmaWNhdGlvblxuICBhdXRldXJzOiBBdXRldXJbXVxuICBjb3JyZWN0aW9uPzogQ29ycmVjdGlvblxuICBub3RpY2U6IE5vdGljZVxuICBpbmRleGF0aW9uPzogSW5kZXhhdGlvblxuICBpbXByaW1lcmllPzogSW1wcmltZXJpZVxuICBjb1NpZ25hdGFpcmVzPzogQ29TaWduYXRhaXJlRWxlbWVudFtdXG4gIGRlcG90QW1lbmRlbWVudHM/OiBEZXBvdEFtZW5kZW1lbnRzXG4gIG9yZ2FuZXNSZWZlcmVudHM/OiBzdHJpbmdbXVxuICByYXBwb3J0UHVibGllPzogYm9vbGVhblxufVxuXG5leHBvcnQgZW51bSBUeXBlRG9jdW1lbnQge1xuICBBY2NvcmRJbnRlcm5hdGlvbmFsVHlwZSA9IFwiYWNjb3JkSW50ZXJuYXRpb25hbF9UeXBlXCIsXG4gIEF2aXNDb25zZWlsRXRhdFR5cGUgPSBcImF2aXNDb25zZWlsRXRhdF9UeXBlXCIsXG4gIERvY3VtZW50RXR1ZGVJbXBhY3RUeXBlID0gXCJkb2N1bWVudEV0dWRlSW1wYWN0X1R5cGVcIixcbiAgUmFwcG9ydFBhcmxlbWVudGFpcmVUeXBlID0gXCJyYXBwb3J0UGFybGVtZW50YWlyZV9UeXBlXCIsXG4gIFRleHRlTG9pVHlwZSA9IFwidGV4dGVMb2lfVHlwZVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGV1ciB7XG4gIGFjdGV1cj86IEF1dGV1ckFjdGV1clxuICBvcmdhbmVSZWY/OiBzdHJpbmdcbiAgb3JnYW5lPzogT3JnYW5lIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0ZXVyQWN0ZXVyIHtcbiAgYWN0ZXVyUmVmOiBzdHJpbmdcbiAgYWN0ZXVyPzogQWN0ZXVyIC8vIEFkZGVkIGJ5IFRyaWNvdGV1c2VzXG4gIHF1YWxpdGU6IFF1YWxpdGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbGFzc2lmaWNhdGlvbiB7XG4gIGZhbWlsbGU/OiBGYW1pbGxlXG4gIHR5cGU6IFByb2NlZHVyZVBhcmxlbWVudGFpcmVcbiAgc291c1R5cGU/OiBTb3VzVHlwZVxuICBzdGF0dXRBZG9wdGlvbj86IFN0YXR1dEFkb3B0aW9uXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmFtaWxsZSB7XG4gIGRlcG90OiBQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXG4gIGNsYXNzZTogUHJvY2VkdXJlUGFybGVtZW50YWlyZVxuICBlc3BlY2U/OiBQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU291c1R5cGUge1xuICBjb2RlOiBzdHJpbmdcbiAgbGliZWxsZT86IHN0cmluZ1xuICBsaWJlbGxlRWRpdGlvbj86IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBTdGF0dXRBZG9wdGlvbiB7XG4gIEFkb3B0Y29tID0gXCJBRE9QVENPTVwiLFxuICBBZG9wdHNlYW5jZSA9IFwiQURPUFRTRUFOQ0VcIixcbiAgUmVqZXRzZWFuY2UgPSBcIlJFSkVUU0VBTkNFXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29TaWduYXRhaXJlRWxlbWVudCB7XG4gIGFjdGV1clJlZj86IHN0cmluZ1xuICBkYXRlQ29zaWduYXR1cmU6IHN0cmluZ1xuICBkYXRlUmV0cmFpdENvc2lnbmF0dXJlPzogc3RyaW5nXG4gIGVkaXRlOiBib29sZWFuXG4gIG9yZ2FuZT86IENvU2lnbmF0YWlyZU9yZ2FuZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvU2lnbmF0YWlyZU9yZ2FuZSB7XG4gIG9yZ2FuZVJlZjogc3RyaW5nXG4gIGV0QXBwYXJlbnRlczogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvcnJlY3Rpb24ge1xuICB0eXBlQ29ycmVjdGlvbjogVHlwZUNvcnJlY3Rpb25cbiAgbml2ZWF1Q29ycmVjdGlvbj86IHN0cmluZ1xufVxuXG5leHBvcnQgZW51bSBUeXBlQ29ycmVjdGlvbiB7XG4gIFJlY3RpZmnDqSA9IFwiUmVjdGlmacOpXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3ljbGVEZVZpZSB7XG4gIGNocm9ubzogQ2hyb25vXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2hyb25vIHtcbiAgZGF0ZUNyZWF0aW9uOiBEYXRlXG4gIGRhdGVEZXBvdD86IERhdGVcbiAgZGF0ZVB1YmxpY2F0aW9uPzogRGF0ZVxuICBkYXRlUHVibGljYXRpb25XZWI/OiBEYXRlXG59XG5cbmV4cG9ydCBlbnVtIERvY3VtZW50RGVub21pbmF0aW9uU3RydWN0dXJlbGxlIHtcbiAgQWxsb2N1dGlvbiA9IFwiQWxsb2N1dGlvblwiLFxuICBBdmlzID0gXCJBdmlzXCIsXG4gIETDqWNsYXJhdGlvbiA9IFwiRMOpY2xhcmF0aW9uXCIsXG4gIExldHRyZSA9IFwiTGV0dHJlXCIsXG4gIE1lc3NhZ2UgPSBcIk1lc3NhZ2VcIixcbiAgUHJvamV0RGVMb2kgPSBcIlByb2pldCBkZSBsb2lcIixcbiAgUHJvcG9zaXRpb25EZUxvaSA9IFwiUHJvcG9zaXRpb24gZGUgbG9pXCIsXG4gIFByb3Bvc2l0aW9uRGVSw6lzb2x1dGlvbiA9IFwiUHJvcG9zaXRpb24gZGUgcsOpc29sdXRpb25cIixcbiAgUmFwcG9ydCA9IFwiUmFwcG9ydFwiLFxuICBSYXBwb3J0REluZm9ybWF0aW9uID0gXCJSYXBwb3J0IGQnaW5mb3JtYXRpb25cIixcbiAgUsOpc29sdXRpb24gPSBcIlLDqXNvbHV0aW9uXCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVwb3RBbWVuZGVtZW50cyB7XG4gIGFtZW5kZW1lbnRzU2VhbmNlOiBBbWVuZGVtZW50c1NlYW5jZVxuICBhbWVuZGVtZW50c0NvbW1pc3Npb24/OiBBbWVuZGVtZW50c0NvbW1pc3Npb25bXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzQ29tbWlzc2lvbiB7XG4gIG9yZ2FuZVJlZjogc3RyaW5nXG4gIGFtZW5kYWJsZTogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFtZW5kZW1lbnRzU2VhbmNlIHtcbiAgYW1lbmRhYmxlOiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGl2aXNpb24ge1xuICB4c2lUeXBlOiBUeXBlRG9jdW1lbnRcbiAgdWlkOiBzdHJpbmdcbiAgbGVnaXNsYXR1cmU/OiBzdHJpbmdcbiAgY3ljbGVEZVZpZTogQ3ljbGVEZVZpZVxuICBkZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGU6IHN0cmluZ1xuICB0aXRyZXM6IFRpdHJlc1xuICBkaXZpc2lvbnM/OiBEaXZpc2lvbltdXG4gIGRvc3NpZXJSZWY6IHN0cmluZ1xuICBkb3NzaWVyPzogRG9zc2llclBhcmxlbWVudGFpcmUgLy8gQWRkZWQgYnkgVHJpY290ZXVzZXNcbiAgY2xhc3NpZmljYXRpb246IENsYXNzaWZpY2F0aW9uXG4gIGF1dGV1cnM6IEF1dGV1cltdXG4gIG9yZ2FuZXNSZWZlcmVudHM/OiBzdHJpbmdbXVxuICBjb3JyZWN0aW9uPzogQ29ycmVjdGlvblxuICBub3RpY2U6IE5vdGljZVxuICBpbmRleGF0aW9uPzogSW5kZXhhdGlvblxuICBpbXByaW1lcmllPzogSW1wcmltZXJpZVxuICByYXBwb3J0UHVibGllPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEltcHJpbWVyaWUge1xuICBkaWFuPzogc3RyaW5nXG4gIGlzYm4/OiBzdHJpbmdcbiAgbmJQYWdlPzogc3RyaW5nXG4gIHByaXg/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb3RpY2Uge1xuICBudW1Ob3RpY2U/OiBzdHJpbmdcbiAgZm9ybXVsZT86IHN0cmluZ1xuICBhZG9wdGlvbkNvbmZvcm1lOiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGl0cmVzIHtcbiAgdGl0cmVQcmluY2lwYWw6IHN0cmluZ1xuICB0aXRyZVByaW5jaXBhbENvdXJ0OiBzdHJpbmdcbn1cblxuZXhwb3J0IGVudW0gUHJvdmVuYW5jZSB7XG4gIENvbW1pc3Npb24gPSBcIkNvbW1pc3Npb25cIixcbiAgU8OpYW5jZSA9IFwiU8OpYW5jZVwiLFxuICBUZXh0ZUTDqXBvc8OpID0gXCJUZXh0ZSBEw6lwb3PDqVwiLFxufVxuXG4vLyBDb252ZXJ0cyBKU09OIHN0cmluZ3MgdG8vZnJvbSB5b3VyIHR5cGVzXG4vLyBhbmQgYXNzZXJ0cyB0aGUgcmVzdWx0cyBvZiBKU09OLnBhcnNlIGF0IHJ1bnRpbWVcbmV4cG9ydCBjbGFzcyBDb252ZXJ0IHtcbiAgcHVibGljIHN0YXRpYyB0b0Rvc3NpZXJzTGVnaXNsYXRpZnMoanNvbjogc3RyaW5nKTogRG9zc2llcnNMZWdpc2xhdGlmcyB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkRvc3NpZXJzTGVnaXNsYXRpZnNcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGRvc3NpZXJzTGVnaXNsYXRpZnNUb0pzb24odmFsdWU6IERvc3NpZXJzTGVnaXNsYXRpZnMpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJEb3NzaWVyc0xlZ2lzbGF0aWZzXCIpKSwgbnVsbCwgMilcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdG9Eb2N1bWVudChqc29uOiBzdHJpbmcpOiBEb2N1bWVudCB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkRvY3VtZW50XCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBkb2N1bWVudFRvSnNvbih2YWx1ZTogRG9jdW1lbnQpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJEb2N1bWVudFwiKSksIG51bGwsIDIpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvRG9zc2llclBhcmxlbWVudGFpcmUoanNvbjogc3RyaW5nKTogRG9zc2llclBhcmxlbWVudGFpcmUge1xuICAgIHJldHVybiBjYXN0KEpTT04ucGFyc2UoanNvbiksIHIoXCJEb3NzaWVyUGFybGVtZW50YWlyZVwiKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZG9zc2llclBhcmxlbWVudGFpcmVUb0pzb24oXG4gICAgdmFsdWU6IERvc3NpZXJQYXJsZW1lbnRhaXJlLFxuICApOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJEb3NzaWVyUGFybGVtZW50YWlyZVwiKSksIG51bGwsIDIpXG4gIH1cbn1cblxuZnVuY3Rpb24gaW52YWxpZFZhbHVlKHR5cDogYW55LCB2YWw6IGFueSwga2V5OiBhbnkgPSBcIlwiKTogbmV2ZXIge1xuICBpZiAoa2V5KSB7XG4gICAgdGhyb3cgRXJyb3IoXG4gICAgICBgSW52YWxpZCB2YWx1ZSBmb3Iga2V5IFwiJHtrZXl9XCIuIEV4cGVjdGVkIHR5cGUgJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgdHlwLFxuICAgICAgKX0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KHZhbCl9YCxcbiAgICApXG4gIH1cbiAgdGhyb3cgRXJyb3IoXG4gICAgYEludmFsaWQgdmFsdWUgJHtKU09OLnN0cmluZ2lmeSh2YWwpfSBmb3IgdHlwZSAke0pTT04uc3RyaW5naWZ5KHR5cCl9YCxcbiAgKVxufVxuXG5mdW5jdGlvbiBqc29uVG9KU1Byb3BzKHR5cDogYW55KTogYW55IHtcbiAgaWYgKHR5cC5qc29uVG9KUyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgbWFwOiBhbnkgPSB7fVxuICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IChtYXBbcC5qc29uXSA9IHsga2V5OiBwLmpzLCB0eXA6IHAudHlwIH0pKVxuICAgIHR5cC5qc29uVG9KUyA9IG1hcFxuICB9XG4gIHJldHVybiB0eXAuanNvblRvSlNcbn1cblxuZnVuY3Rpb24ganNUb0pTT05Qcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gIGlmICh0eXAuanNUb0pTT04gPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1hcDogYW55ID0ge31cbiAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiAobWFwW3AuanNdID0geyBrZXk6IHAuanNvbiwgdHlwOiBwLnR5cCB9KSlcbiAgICB0eXAuanNUb0pTT04gPSBtYXBcbiAgfVxuICByZXR1cm4gdHlwLmpzVG9KU09OXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybSh2YWw6IGFueSwgdHlwOiBhbnksIGdldFByb3BzOiBhbnksIGtleTogYW55ID0gXCJcIik6IGFueSB7XG4gIGZ1bmN0aW9uIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXA6IHN0cmluZywgdmFsOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXBlb2YgdHlwID09PSB0eXBlb2YgdmFsKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5KVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtVW5pb24odHlwczogYW55W10sIHZhbDogYW55KTogYW55IHtcbiAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgIGNvbnN0IGwgPSB0eXBzLmxlbmd0aFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCB0eXAgPSB0eXBzW2ldXG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcylcbiAgICAgIH0gY2F0Y2ggKF8pIHt9XG4gICAgfVxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsKVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtRW51bShjYXNlczogc3RyaW5nW10sIHZhbDogYW55KTogYW55IHtcbiAgICBpZiAoY2FzZXMuaW5kZXhPZih2YWwpICE9PSAtMSkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUoY2FzZXMsIHZhbClcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybUFycmF5KHR5cDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgLy8gdmFsIG11c3QgYmUgYW4gYXJyYXkgd2l0aCBubyBpbnZhbGlkIGVsZW1lbnRzXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiBpbnZhbGlkVmFsdWUoXCJhcnJheVwiLCB2YWwpXG4gICAgcmV0dXJuIHZhbC5tYXAoKGVsKSA9PiB0cmFuc2Zvcm0oZWwsIHR5cCwgZ2V0UHJvcHMpKVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtRGF0ZSh2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gICAgY29uc3QgZCA9IG5ldyBEYXRlKHZhbClcbiAgICBpZiAoaXNOYU4oZC52YWx1ZU9mKCkpKSB7XG4gICAgICByZXR1cm4gaW52YWxpZFZhbHVlKFwiRGF0ZVwiLCB2YWwpXG4gICAgfVxuICAgIHJldHVybiBkXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1PYmplY3QoXG4gICAgcHJvcHM6IHsgW2s6IHN0cmluZ106IGFueSB9LFxuICAgIGFkZGl0aW9uYWw6IGFueSxcbiAgICB2YWw6IGFueSxcbiAgKTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsIHx8IHR5cGVvZiB2YWwgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICByZXR1cm4gaW52YWxpZFZhbHVlKFwib2JqZWN0XCIsIHZhbClcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0OiBhbnkgPSB7fVxuICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHByb3BzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGNvbnN0IHByb3AgPSBwcm9wc1trZXldXG4gICAgICBjb25zdCB2ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbCwga2V5KVxuICAgICAgICA/IHZhbFtrZXldXG4gICAgICAgIDogdW5kZWZpbmVkXG4gICAgICByZXN1bHRbcHJvcC5rZXldID0gdHJhbnNmb3JtKHYsIHByb3AudHlwLCBnZXRQcm9wcywgcHJvcC5rZXkpXG4gICAgfSlcbiAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh2YWwpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocHJvcHMsIGtleSkpIHtcbiAgICAgICAgcmVzdWx0W2tleV0gPSB0cmFuc2Zvcm0odmFsW2tleV0sIGFkZGl0aW9uYWwsIGdldFByb3BzLCBrZXkpXG4gICAgICB9XG4gICAgfSlcbiAgICByZXR1cm4gcmVzdWx0XG4gIH1cblxuICBpZiAodHlwID09PSBcImFueVwiKSByZXR1cm4gdmFsXG4gIGlmICh0eXAgPT09IG51bGwpIHtcbiAgICBpZiAodmFsID09PSBudWxsKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbClcbiAgfVxuICAvLyBpZiAodHlwID09PSBmYWxzZSkgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbClcbiAgd2hpbGUgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLnJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgdHlwID0gdHlwZU1hcFt0eXAucmVmXVxuICB9XG4gIGlmIChBcnJheS5pc0FycmF5KHR5cCkpIHJldHVybiB0cmFuc2Zvcm1FbnVtKHR5cCwgdmFsKVxuICBpZiAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIikge1xuICAgIHJldHVybiB0eXAuaGFzT3duUHJvcGVydHkoXCJ1bmlvbk1lbWJlcnNcIilcbiAgICAgID8gdHJhbnNmb3JtVW5pb24odHlwLnVuaW9uTWVtYmVycywgdmFsKVxuICAgICAgOiB0eXAuaGFzT3duUHJvcGVydHkoXCJhcnJheUl0ZW1zXCIpXG4gICAgICA/IHRyYW5zZm9ybUFycmF5KHR5cC5hcnJheUl0ZW1zLCB2YWwpXG4gICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcInByb3BzXCIpXG4gICAgICA/IHRyYW5zZm9ybU9iamVjdChnZXRQcm9wcyh0eXApLCB0eXAuYWRkaXRpb25hbCwgdmFsKVxuICAgICAgOiBpbnZhbGlkVmFsdWUodHlwLCB2YWwpXG4gIH1cbiAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgaWYgKHR5cCA9PT0gRGF0ZSAmJiB0eXBlb2YgdmFsICE9PSBcIm51bWJlclwiKSByZXR1cm4gdHJhbnNmb3JtRGF0ZSh2YWwpXG4gIHJldHVybiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwLCB2YWwpXG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzb25Ub0pTUHJvcHMpXG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNUb0pTT05Qcm9wcylcbn1cblxuZnVuY3Rpb24gYSh0eXA6IGFueSkge1xuICByZXR1cm4geyBhcnJheUl0ZW1zOiB0eXAgfVxufVxuXG5mdW5jdGlvbiB1KC4uLnR5cHM6IGFueVtdKSB7XG4gIHJldHVybiB7IHVuaW9uTWVtYmVyczogdHlwcyB9XG59XG5cbmZ1bmN0aW9uIG8ocHJvcHM6IGFueVtdLCBhZGRpdGlvbmFsOiBhbnkpIHtcbiAgcmV0dXJuIHsgcHJvcHMsIGFkZGl0aW9uYWwgfVxufVxuXG4vLyBmdW5jdGlvbiBtKGFkZGl0aW9uYWw6IGFueSkge1xuLy8gICAgIHJldHVybiB7IHByb3BzOiBbXSwgYWRkaXRpb25hbCB9O1xuLy8gfVxuXG5mdW5jdGlvbiByKG5hbWU6IHN0cmluZykge1xuICByZXR1cm4geyByZWY6IG5hbWUgfVxufVxuXG5jb25zdCB0eXBlTWFwOiBhbnkgPSB7XG4gIERvc3NpZXJzTGVnaXNsYXRpZnM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIGpzOiBcInRleHRlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIHR5cDogYShyKFwiRG9jdW1lbnRcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkb3NzaWVyc1BhcmxlbWVudGFpcmVzXCIsXG4gICAgICAgIGpzOiBcImRvc3NpZXJzUGFybGVtZW50YWlyZXNcIixcbiAgICAgICAgdHlwOiBhKHIoXCJEb3NzaWVyUGFybGVtZW50YWlyZVwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERvc3NpZXJQYXJsZW1lbnRhaXJlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJzY2hlbWFWZXJzaW9uXCIsIGpzOiBcInNjaGVtYVZlcnNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ4c2lUeXBlXCIsXG4gICAgICAgIGpzOiBcInhzaVR5cGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRvc3NpZXJQYXJsZW1lbnRhaXJlWHNpVHlwZVwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGVnaXNsYXR1cmVcIiwganM6IFwibGVnaXNsYXR1cmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidGl0cmVEb3NzaWVyXCIsIGpzOiBcInRpdHJlRG9zc2llclwiLCB0eXA6IHIoXCJUaXRyZURvc3NpZXJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwcm9jZWR1cmVQYXJsZW1lbnRhaXJlXCIsXG4gICAgICAgIGpzOiBcInByb2NlZHVyZVBhcmxlbWVudGFpcmVcIixcbiAgICAgICAgdHlwOiByKFwiUHJvY2VkdXJlUGFybGVtZW50YWlyZVwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiaW5pdGlhdGV1clwiLFxuICAgICAgICBqczogXCJpbml0aWF0ZXVyXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJJbml0aWF0ZXVyXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWN0ZXNMZWdpc2xhdGlmc1wiLFxuICAgICAgICBqczogXCJhY3Rlc0xlZ2lzbGF0aWZzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkFjdGVMZWdpc2xhdGlmXCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImZ1c2lvbkRvc3NpZXJcIixcbiAgICAgICAganM6IFwiZnVzaW9uRG9zc2llclwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiRnVzaW9uRG9zc2llclwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImluZGV4YXRpb25cIixcbiAgICAgICAganM6IFwiaW5kZXhhdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiSW5kZXhhdGlvblwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInBsZlwiLCBqczogXCJwbGZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiRXR1ZGVQbGZcIikpKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEV0dWRlUGxmOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm9yZ2FuZVJlZlwiLCBqczogXCJvcmdhbmVSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVBc3NvY2llXCIsIGpzOiBcInRleHRlQXNzb2NpZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInJhcHBvcnRldXJzXCIsXG4gICAgICAgIGpzOiBcInJhcHBvcnRldXJzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIlJhcHBvcnRldXJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibWlzc2lvbk1pbmVmaVwiLFxuICAgICAgICBqczogXCJtaXNzaW9uTWluZWZpXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJNaXNzaW9uTWluZWZpXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwib3JkcmVEaXFzXCIsIGpzOiBcIm9yZHJlRGlxc1wiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJvcmRyZUNvbW1pc3Npb25cIiwganM6IFwib3JkcmVDb21taXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIE1pc3Npb25NaW5lZmk6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInR5cGVNaXNzaW9uXCIsIGpzOiBcInR5cGVNaXNzaW9uXCIsIHR5cDogcihcIlR5cGVNaXNzaW9uXCIpIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZUxvbmdcIiwganM6IFwibGliZWxsZUxvbmdcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZUNvdXJ0XCIsIGpzOiBcImxpYmVsbGVDb3VydFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlQnVkZ2V0XCIsIGpzOiBcInR5cGVCdWRnZXRcIiwgdHlwOiByKFwiVHlwZUJ1ZGdldFwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm1pc3Npb25zXCIsXG4gICAgICAgIGpzOiBcIm1pc3Npb25zXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIk1pc3Npb25NaW5lZmlcIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQWN0ZUxlZ2lzbGF0aWY6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInhzaVR5cGVcIiwganM6IFwieHNpVHlwZVwiLCB0eXA6IHIoXCJUeXBlQWN0ZUxlZ2lzbGF0aWZcIikgfSxcbiAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNvZGVBY3RlXCIsXG4gICAgICAgIGpzOiBcImNvZGVBY3RlXCIsXG4gICAgICAgIHR5cDogdShcbiAgICAgICAgICByKFwiQ29kZUFjdGVOaXZlYXUwXCIpLFxuICAgICAgICAgIHUoXG4gICAgICAgICAgICByKFwiQ29kZUFjdGVOaXZlYXUxXCIpLFxuICAgICAgICAgICAgdShyKFwiQ29kZUFjdGVOaXZlYXUyXCIpLCByKFwiQ29kZUFjdGVOaXZlYXUzXCIpKSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlQWN0ZVwiLCBqczogXCJsaWJlbGxlQWN0ZVwiLCB0eXA6IHIoXCJMaWJlbGxlQWN0ZVwiKSB9LFxuICAgICAgeyBqc29uOiBcIm9yZ2FuZVJlZlwiLCBqczogXCJvcmdhbmVSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJkYXRlQWN0ZVwiLCBqczogXCJkYXRlQWN0ZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBEYXRlKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImFjdGVzTGVnaXNsYXRpZnNcIixcbiAgICAgICAganM6IFwiYWN0ZXNMZWdpc2xhdGlmc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJBY3RlTGVnaXNsYXRpZlwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhbm5lZURlY2lzaW9uXCIsIGpzOiBcImFubmVlRGVjaXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRldXJNb3Rpb25cIixcbiAgICAgICAganM6IFwiYXV0ZXVyTW90aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhdXRldXJzUmVmc1wiLFxuICAgICAgICBqczogXCJhdXRldXJzUmVmc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKFwiXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY2FzU2Fpc2luZVwiLFxuICAgICAgICBqczogXCJjYXNTYWlzaW5lXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlRGVjbGFyYXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjb2RlTG9pXCIsIGpzOiBcImNvZGVMb2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjb250cmlidXRpb25JbnRlcm5hdXRlXCIsXG4gICAgICAgIGpzOiBcImNvbnRyaWJ1dGlvbkludGVybmF1dGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvbnRyaWJ1dGlvbkludGVybmF1dGVcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkZWNpc2lvblwiLFxuICAgICAgICBqczogXCJkZWNpc2lvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiVHlwZURlY2xhcmF0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZGVwb3RJbml0aWFsTGVjdHVyZURlZmluaXRpdmVSZWZcIixcbiAgICAgICAganM6IFwiZGVwb3RJbml0aWFsTGVjdHVyZURlZmluaXRpdmVSZWZcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcImZvcm11bGVEZWNpc2lvblwiLCBqczogXCJmb3JtdWxlRGVjaXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpbmZvSm9cIiwganM6IFwiaW5mb0pvXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJJbmZvSm9cIikpIH0sXG4gICAgICB7IGpzb246IFwiaW5mb0pvY2VcIiwganM6IFwiaW5mb0pvY2VcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkluZm9Kb2NlXCIpKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImluZm9Kb1JlY3RcIixcbiAgICAgICAganM6IFwiaW5mb0pvUmVjdFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJJbmZvSm9cIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiaW5pdGlhdGV1clwiLFxuICAgICAgICBqczogXCJpbml0aWF0ZXVyXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJJbml0aWF0ZXVyXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibW90aWZcIiwganM6IFwibW90aWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIk1vdGlmXCIpKSB9LFxuICAgICAgeyBqc29uOiBcIm51bURlY2lzaW9uXCIsIGpzOiBcIm51bURlY2lzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwib2RqUmVmXCIsIGpzOiBcIm9kalJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInByb3ZlbmFuY2VSZWZcIiwganM6IFwicHJvdmVuYW5jZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInJhcHBvcnRldXJzXCIsXG4gICAgICAgIGpzOiBcInJhcHBvcnRldXJzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIlJhcHBvcnRldXJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwicmVmZXJlbmNlTm9yXCIsIGpzOiBcInJlZmVyZW5jZU5vclwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInJldW5pb25SZWZcIiwganM6IFwicmV1bmlvblJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInN0YXR1dEFkb3B0aW9uXCIsXG4gICAgICAgIGpzOiBcInN0YXR1dEFkb3B0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlRGVjbGFyYXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzdGF0dXRDb25jbHVzaW9uXCIsXG4gICAgICAgIGpzOiBcInN0YXR1dENvbmNsdXNpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlR5cGVEZWNsYXJhdGlvblwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInRleHRlQWRvcHRlUmVmXCIsXG4gICAgICAgIGpzOiBcInRleHRlQWRvcHRlUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0ZXh0ZUFzc29jaWVSZWZcIiwganM6IFwidGV4dGVBc3NvY2llUmVmXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwidGV4dGVFdXJvcGVlblwiLFxuICAgICAgICBqczogXCJ0ZXh0ZUV1cm9wZWVuXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUZXh0ZUV1cm9wZWVuXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVMb2lSZWZcIiwganM6IFwidGV4dGVMb2lSZWZcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0ZXh0ZXNBc3NvY2llc1wiLFxuICAgICAgICBqczogXCJ0ZXh0ZXNBc3NvY2llc1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJUZXh0ZUFzc29jaWVcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidGl0cmVMb2lcIiwganM6IFwidGl0cmVMb2lcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0eXBlRGVjbGFyYXRpb25cIixcbiAgICAgICAganM6IFwidHlwZURlY2xhcmF0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlRGVjbGFyYXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0eXBlTW90aW9uXCIsXG4gICAgICAgIGpzOiBcInR5cGVNb3Rpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlR5cGVEZWNsYXJhdGlvblwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInR5cGVNb3Rpb25DZW5zdXJlXCIsXG4gICAgICAgIGpzOiBcInR5cGVNb3Rpb25DZW5zdXJlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUeXBlRGVjbGFyYXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ1cmxDb25jbHVzaW9uXCIsIGpzOiBcInVybENvbmNsdXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ1cmxFY2hlYW5jaWVyTG9pXCIsXG4gICAgICAgIGpzOiBcInVybEVjaGVhbmNpZXJMb2lcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInVybExlZ2lmcmFuY2VcIixcbiAgICAgICAganM6IFwidXJsTGVnaWZyYW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwidm90ZVJlZnNcIixcbiAgICAgICAganM6IFwidm90ZVJlZnNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShcIlwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIExpYmVsbGVBY3RlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJub21DYW5vbmlxdWVcIiwganM6IFwibm9tQ2Fub25pcXVlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVDb3VydFwiLCBqczogXCJsaWJlbGxlQ291cnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBSYXBwb3J0ZXVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInR5cGVSYXBwb3J0ZXVyXCIsIGpzOiBcInR5cGVSYXBwb3J0ZXVyXCIsIHR5cDogcihcIlF1YWxpdGVcIikgfSxcbiAgICAgIHsganNvbjogXCJldHVkZVBsZlJlZlwiLCBqczogXCJldHVkZVBsZlJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFR5cGVEZWNsYXJhdGlvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiZmFtQ29kZVwiLCBqczogXCJmYW1Db2RlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxpYmVsbGVcIiwganM6IFwibGliZWxsZVwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUZXh0ZUFzc29jaWU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInR5cGVUZXh0ZVwiLCBqczogXCJ0eXBlVGV4dGVcIiwgdHlwOiByKFwiVHlwZVRleHRlXCIpIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVBc3NvY2llUmVmXCIsIGpzOiBcInRleHRlQXNzb2NpZVJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDb250cmlidXRpb25JbnRlcm5hdXRlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlT3V2ZXJ0dXJlXCIsIGpzOiBcImRhdGVPdXZlcnR1cmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJkYXRlRmVybWV0dXJlXCIsIGpzOiBcImRhdGVGZXJtZXR1cmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBJbmZvSm9jZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwicmVmSm9jZVwiLCBqczogXCJyZWZKb2NlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImRhdGVKb2NlXCIsIGpzOiBcImRhdGVKb2NlXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEluaXRpYXRldXJBY3RldXI6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImFjdGV1clJlZlwiLCBqczogXCJhY3RldXJSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibWFuZGF0UmVmXCIsIGpzOiBcIm1hbmRhdFJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFRleHRlRXVyb3BlZW46IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInR5cGVUZXh0ZUV1cm9wZWVuXCIsIGpzOiBcInR5cGVUZXh0ZUV1cm9wZWVuXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInRpdHJlVGV4dGVFdXJvcGVlblwiLCBqczogXCJ0aXRyZVRleHRlRXVyb3BlZW5cIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgSW5mb0pvOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0eXBlSm9cIiwganM6IFwidHlwZUpvXCIsIHR5cDogcihcIlR5cGVKb1wiKSB9LFxuICAgICAgeyBqc29uOiBcImRhdGVKb1wiLCBqczogXCJkYXRlSm9cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibnVtSm9cIiwganM6IFwibnVtSm9cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidXJsTGVnaWZyYW5jZVwiLCBqczogXCJ1cmxMZWdpZnJhbmNlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwicmVmZXJlbmNlTm9yXCIsIGpzOiBcInJlZmVyZW5jZU5vclwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEZ1c2lvbkRvc3NpZXI6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImNhdXNlXCIsIGpzOiBcImNhdXNlXCIsIHR5cDogcihcIkNhdXNlXCIpIH0sXG4gICAgICB7IGpzb246IFwiZG9zc2llckFic29yYmFudFJlZlwiLCBqczogXCJkb3NzaWVyQWJzb3JiYW50UmVmXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEluZGV4YXRpb246IG8oW3sganNvbjogXCJ0aGVtZXNcIiwganM6IFwidGhlbWVzXCIsIHR5cDogcihcIlRoZW1lc1wiKSB9XSwgZmFsc2UpLFxuICBUaGVtZXM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIkBuaXZlYXVcIiwganM6IFwiQG5pdmVhdVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0aGVtZVwiLCBqczogXCJ0aGVtZVwiLCB0eXA6IHIoXCJUaGVtZVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFRoZW1lOiBvKFt7IGpzb246IFwibGliZWxsZVRoZW1lXCIsIGpzOiBcImxpYmVsbGVUaGVtZVwiLCB0eXA6IFwiXCIgfV0sIGZhbHNlKSxcbiAgSW5pdGlhdGV1cjogbyhcbiAgICBbXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYWN0ZXVyc1wiLFxuICAgICAgICBqczogXCJhY3RldXJzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIkluaXRpYXRldXJBY3RldXJcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwib3JnYW5lUmVmXCIsIGpzOiBcIm9yZ2FuZVJlZlwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFByb2NlZHVyZVBhcmxlbWVudGFpcmU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImNvZGVcIiwganM6IFwiY29kZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJsaWJlbGxlXCIsIGpzOiBcImxpYmVsbGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGl0cmVEb3NzaWVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0aXRyZVwiLCBqczogXCJ0aXRyZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0aXRyZUNoZW1pblwiLCBqczogXCJ0aXRyZUNoZW1pblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNlbmF0Q2hlbWluXCIsIGpzOiBcInNlbmF0Q2hlbWluXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRG9jdW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInNjaGVtYVZlcnNpb25cIiwganM6IFwic2NoZW1hVmVyc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInhzaVR5cGVcIiwganM6IFwieHNpVHlwZVwiLCB0eXA6IHIoXCJUeXBlRG9jdW1lbnRcIikgfSxcbiAgICAgIHsganNvbjogXCJ1aWRcIiwganM6IFwidWlkXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxlZ2lzbGF0dXJlXCIsIGpzOiBcImxlZ2lzbGF0dXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiY3ljbGVEZVZpZVwiLCBqczogXCJjeWNsZURlVmllXCIsIHR5cDogcihcIkN5Y2xlRGVWaWVcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGVcIixcbiAgICAgICAganM6IFwiZGVub21pbmF0aW9uU3RydWN0dXJlbGxlXCIsXG4gICAgICAgIHR5cDogcihcIkRvY3VtZW50RGVub21pbmF0aW9uU3RydWN0dXJlbGxlXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwcm92ZW5hbmNlXCIsXG4gICAgICAgIGpzOiBcInByb3ZlbmFuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlByb3ZlbmFuY2VcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0aXRyZXNcIiwganM6IFwidGl0cmVzXCIsIHR5cDogcihcIlRpdHJlc1wiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpdmlzaW9uc1wiLFxuICAgICAgICBqczogXCJkaXZpc2lvbnNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiRGl2aXNpb25cIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZG9zc2llclJlZlwiLCBqczogXCJkb3NzaWVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNsYXNzaWZpY2F0aW9uXCIsXG4gICAgICAgIGpzOiBcImNsYXNzaWZpY2F0aW9uXCIsXG4gICAgICAgIHR5cDogcihcIkNsYXNzaWZpY2F0aW9uXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhdXRldXJzXCIsIGpzOiBcImF1dGV1cnNcIiwgdHlwOiBhKHIoXCJBdXRldXJcIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY29ycmVjdGlvblwiLFxuICAgICAgICBqczogXCJjb3JyZWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJDb3JyZWN0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibm90aWNlXCIsIGpzOiBcIm5vdGljZVwiLCB0eXA6IHIoXCJOb3RpY2VcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbmRleGF0aW9uXCIsXG4gICAgICAgIGpzOiBcImluZGV4YXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkluZGV4YXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbXByaW1lcmllXCIsXG4gICAgICAgIGpzOiBcImltcHJpbWVyaWVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkltcHJpbWVyaWVcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjb1NpZ25hdGFpcmVzXCIsXG4gICAgICAgIGpzOiBcImNvU2lnbmF0YWlyZXNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiQ29TaWduYXRhaXJlRWxlbWVudFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkZXBvdEFtZW5kZW1lbnRzXCIsXG4gICAgICAgIGpzOiBcImRlcG90QW1lbmRlbWVudHNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRlcG90QW1lbmRlbWVudHNcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJvcmdhbmVzUmVmZXJlbnRzXCIsIGpzOiBcIm9yZ2FuZXNSZWZlcmVudHNcIiwgdHlwOiB1KHVuZGVmaW5lZCwgYShcIlwiKSkgfSxcbiAgICAgIHsganNvbjogXCJyYXBwb3J0UHVibGllXCIsIGpzOiBcInJhcHBvcnRQdWJsaWVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgZmFsc2UpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQXV0ZXVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhY3RldXJcIiwganM6IFwiYWN0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJBdXRldXJBY3RldXJcIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3JnYW5lUmVmXCIsXG4gICAgICAgIGpzOiBcIm9yZ2FuZVJlZlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQXV0ZXVyQWN0ZXVyOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJhY3RldXJSZWZcIiwganM6IFwiYWN0ZXVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInF1YWxpdGVcIiwganM6IFwicXVhbGl0ZVwiLCB0eXA6IHIoXCJRdWFsaXRlXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ2xhc3NpZmljYXRpb246IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImZhbWlsbGVcIiwganM6IFwiZmFtaWxsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRmFtaWxsZVwiKSkgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlXCIsIGpzOiBcInR5cGVcIiwgdHlwOiByKFwiUHJvY2VkdXJlUGFybGVtZW50YWlyZVwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvdXNUeXBlXCIsIGpzOiBcInNvdXNUeXBlXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJTb3VzVHlwZVwiKSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzdGF0dXRBZG9wdGlvblwiLFxuICAgICAgICBqczogXCJzdGF0dXRBZG9wdGlvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiU3RhdHV0QWRvcHRpb25cIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBGYW1pbGxlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkZXBvdFwiLCBqczogXCJkZXBvdFwiLCB0eXA6IHIoXCJQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXCIpIH0sXG4gICAgICB7IGpzb246IFwiY2xhc3NlXCIsIGpzOiBcImNsYXNzZVwiLCB0eXA6IHIoXCJQcm9jZWR1cmVQYXJsZW1lbnRhaXJlXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiZXNwZWNlXCIsXG4gICAgICAgIGpzOiBcImVzcGVjZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiUHJvY2VkdXJlUGFybGVtZW50YWlyZVwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvdXNUeXBlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJjb2RlXCIsIGpzOiBcImNvZGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZVwiLCBqczogXCJsaWJlbGxlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwibGliZWxsZUVkaXRpb25cIiwganM6IFwibGliZWxsZUVkaXRpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDb1NpZ25hdGFpcmVFbGVtZW50OiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhY3RldXJSZWZcIixcbiAgICAgICAganM6IFwiYWN0ZXVyUmVmXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJkYXRlQ29zaWduYXR1cmVcIiwganM6IFwiZGF0ZUNvc2lnbmF0dXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRhdGVSZXRyYWl0Q29zaWduYXR1cmVcIixcbiAgICAgICAganM6IFwiZGF0ZVJldHJhaXRDb3NpZ25hdHVyZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZWRpdGVcIiwganM6IFwiZWRpdGVcIiwgdHlwOiBmYWxzZSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yZ2FuZVwiLFxuICAgICAgICBqczogXCJvcmdhbmVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkNvU2lnbmF0YWlyZU9yZ2FuZVwiKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIENvU2lnbmF0YWlyZU9yZ2FuZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwib3JnYW5lUmVmXCIsIGpzOiBcIm9yZ2FuZVJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJldEFwcGFyZW50ZXNcIiwganM6IFwiZXRBcHBhcmVudGVzXCIsIHR5cDogZmFsc2UgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDb3JyZWN0aW9uOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0eXBlQ29ycmVjdGlvblwiLFxuICAgICAgICBqczogXCJ0eXBlQ29ycmVjdGlvblwiLFxuICAgICAgICB0eXA6IHIoXCJUeXBlQ29ycmVjdGlvblwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwibml2ZWF1Q29ycmVjdGlvblwiLFxuICAgICAgICBqczogXCJuaXZlYXVDb3JyZWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDeWNsZURlVmllOiBvKFt7IGpzb246IFwiY2hyb25vXCIsIGpzOiBcImNocm9ub1wiLCB0eXA6IHIoXCJDaHJvbm9cIikgfV0sIGZhbHNlKSxcbiAgQ2hyb25vOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlQ3JlYXRpb25cIiwganM6IFwiZGF0ZUNyZWF0aW9uXCIsIHR5cDogRGF0ZSB9LFxuICAgICAgeyBqc29uOiBcImRhdGVEZXBvdFwiLCBqczogXCJkYXRlRGVwb3RcIiwgdHlwOiB1KHVuZGVmaW5lZCwgRGF0ZSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkYXRlUHVibGljYXRpb25cIixcbiAgICAgICAganM6IFwiZGF0ZVB1YmxpY2F0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIERhdGUpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJkYXRlUHVibGljYXRpb25XZWJcIixcbiAgICAgICAganM6IFwiZGF0ZVB1YmxpY2F0aW9uV2ViXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIERhdGUpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBEZXBvdEFtZW5kZW1lbnRzOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJhbWVuZGVtZW50c1NlYW5jZVwiLFxuICAgICAgICBqczogXCJhbWVuZGVtZW50c1NlYW5jZVwiLFxuICAgICAgICB0eXA6IHIoXCJBbWVuZGVtZW50c1NlYW5jZVwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiYW1lbmRlbWVudHNDb21taXNzaW9uXCIsXG4gICAgICAgIGpzOiBcImFtZW5kZW1lbnRzQ29tbWlzc2lvblwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBhKHIoXCJBbWVuZGVtZW50c0NvbW1pc3Npb25cIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQW1lbmRlbWVudHNDb21taXNzaW9uOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJvcmdhbmVSZWZcIiwganM6IFwib3JnYW5lUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImFtZW5kYWJsZVwiLCBqczogXCJhbWVuZGFibGVcIiwgdHlwOiBmYWxzZSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEFtZW5kZW1lbnRzU2VhbmNlOiBvKFxuICAgIFt7IGpzb246IFwiYW1lbmRhYmxlXCIsIGpzOiBcImFtZW5kYWJsZVwiLCB0eXA6IGZhbHNlIH1dLFxuICAgIGZhbHNlLFxuICApLFxuICBEaXZpc2lvbjogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwieHNpVHlwZVwiLCBqczogXCJ4c2lUeXBlXCIsIHR5cDogcihcIlR5cGVEb2N1bWVudFwiKSB9LFxuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGVnaXNsYXR1cmVcIiwganM6IFwibGVnaXNsYXR1cmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJjeWNsZURlVmllXCIsIGpzOiBcImN5Y2xlRGVWaWVcIiwgdHlwOiByKFwiQ3ljbGVEZVZpZVwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRlbm9taW5hdGlvblN0cnVjdHVyZWxsZVwiLFxuICAgICAgICBqczogXCJkZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGVcIixcbiAgICAgICAgdHlwOiBcIlwiLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0aXRyZXNcIiwganM6IFwidGl0cmVzXCIsIHR5cDogcihcIlRpdHJlc1wiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImRpdmlzaW9uc1wiLFxuICAgICAgICBqczogXCJkaXZpc2lvbnNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiRGl2aXNpb25cIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZG9zc2llclJlZlwiLCBqczogXCJkb3NzaWVyUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImNsYXNzaWZpY2F0aW9uXCIsXG4gICAgICAgIGpzOiBcImNsYXNzaWZpY2F0aW9uXCIsXG4gICAgICAgIHR5cDogcihcIkNsYXNzaWZpY2F0aW9uXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJhdXRldXJzXCIsIGpzOiBcImF1dGV1cnNcIiwgdHlwOiBhKHIoXCJBdXRldXJcIikpIH0sXG4gICAgICB7IGpzb246IFwib3JnYW5lc1JlZmVyZW50c1wiLCBqczogXCJvcmdhbmVzUmVmZXJlbnRzXCIsIHR5cDogdSh1bmRlZmluZWQsIGEoXCJcIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY29ycmVjdGlvblwiLFxuICAgICAgICBqczogXCJjb3JyZWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJDb3JyZWN0aW9uXCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibm90aWNlXCIsIGpzOiBcIm5vdGljZVwiLCB0eXA6IHIoXCJOb3RpY2VcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbmRleGF0aW9uXCIsXG4gICAgICAgIGpzOiBcImluZGV4YXRpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkluZGV4YXRpb25cIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbXByaW1lcmllXCIsXG4gICAgICAgIGpzOiBcImltcHJpbWVyaWVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkltcHJpbWVyaWVcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJyYXBwb3J0UHVibGllXCIsIGpzOiBcInJhcHBvcnRQdWJsaWVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgZmFsc2UpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgSW1wcmltZXJpZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiZGlhblwiLCBqczogXCJkaWFuXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaXNiblwiLCBqczogXCJpc2JuXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwibmJQYWdlXCIsIGpzOiBcIm5iUGFnZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInByaXhcIiwganM6IFwicHJpeFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIE5vdGljZTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibnVtTm90aWNlXCIsIGpzOiBcIm51bU5vdGljZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImZvcm11bGVcIiwganM6IFwiZm9ybXVsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImFkb3B0aW9uQ29uZm9ybWVcIiwganM6IFwiYWRvcHRpb25Db25mb3JtZVwiLCB0eXA6IGZhbHNlIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGl0cmVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ0aXRyZVByaW5jaXBhbFwiLCBqczogXCJ0aXRyZVByaW5jaXBhbFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0aXRyZVByaW5jaXBhbENvdXJ0XCIsIGpzOiBcInRpdHJlUHJpbmNpcGFsQ291cnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRG9zc2llclBhcmxlbWVudGFpcmVYc2lUeXBlOiBbXG4gICAgXCJEb3NzaWVyQ29tbWlzc2lvbkVucXVldGVfVHlwZVwiLFxuICAgIFwiRG9zc2llckluaWF0aXZlRXhlY3V0aWZfVHlwZVwiLFxuICAgIFwiRG9zc2llckxlZ2lzbGF0aWZfVHlwZVwiLFxuICAgIFwiRG9zc2llck1pc3Npb25Db250cm9sZV9UeXBlXCIsXG4gICAgXCJEb3NzaWVyTWlzc2lvbkluZm9ybWF0aW9uX1R5cGVcIixcbiAgICBcIkRvc3NpZXJSZXNvbHV0aW9uQU5cIixcbiAgXSxcbiAgVHlwZUJ1ZGdldDogW1xuICAgIFwiQnVkZ2V0IGFubmV4ZVwiLFxuICAgIFwiQnVkZ2V0IGfDqW7DqXJhbFwiLFxuICAgIFwiQ29tcHRlIGRlIGNvbmNvdXJzIGZpbmFuY2llclwiLFxuICAgIFwiQ29tcHRlIHNww6ljaWFsXCIsXG4gICAgXCJQcmVtacOocmUgcGFydGllXCIsXG4gIF0sXG4gIFR5cGVNaXNzaW9uOiBbXG4gICAgXCJtaXNzaW9uIHByaW5jaXBhbGVcIixcbiAgICBcIm1pc3Npb24gc2Vjb25kYWlyZVwiLFxuICAgIFwicGFydGllIGRlIG1pc3Npb25cIixcbiAgXSxcbiAgUXVhbGl0ZTogW1xuICAgIFwiYXV0ZXVyXCIsXG4gICAgXCJyYXBwb3J0ZXVyXCIsXG4gICAgXCJyYXBwb3J0ZXVyIGfDqW7DqXJhbFwiLFxuICAgIFwicmFwcG9ydGV1ciBwb3VyIGF2aXNcIixcbiAgICBcInJhcHBvcnRldXIgc3DDqWNpYWxcIixcbiAgXSxcbiAgVHlwZUFjdGVMZWdpc2xhdGlmOiBbXG4gICAgXCJBZG9wdGlvbl9FdXJvcGVfVHlwZVwiLFxuICAgIFwiQ29uY2x1c2lvbkV0YXBlQ0NfVHlwZVwiLFxuICAgIFwiQ3JlYXRpb25PcmdhbmVUZW1wb3JhaXJlX1R5cGVcIixcbiAgICBcIkRlY2lzaW9uTW90aW9uQ2Vuc3VyZV9UeXBlXCIsXG4gICAgXCJEZWNpc2lvblJlY2V2YWJpbGl0ZUJ1cmVhdV9UeXBlXCIsXG4gICAgXCJEZWNpc2lvbl9UeXBlXCIsXG4gICAgXCJEZWNsYXJhdGlvbkdvdXZlcm5lbWVudF9UeXBlXCIsXG4gICAgXCJEZXBvdEFjY29yZEludGVybmF0aW9uYWxfVHlwZVwiLFxuICAgIFwiRGVwb3RBdmlzQ29uc2VpbEV0YXRfVHlwZVwiLFxuICAgIFwiRGVwb3RJbml0aWF0aXZlTmF2ZXR0ZV9UeXBlXCIsXG4gICAgXCJEZXBvdEluaXRpYXRpdmVfVHlwZVwiLFxuICAgIFwiRGVwb3RMZXR0cmVSZWN0aWZpY2F0aXZlX1R5cGVcIixcbiAgICBcIkRlcG90TW90aW9uQ2Vuc3VyZV9UeXBlXCIsXG4gICAgXCJEZXBvdE1vdGlvblJlZmVyZW5kYWlyZV9UeXBlXCIsXG4gICAgXCJEZXBvdFJhcHBvcnRfVHlwZVwiLFxuICAgIFwiRGlzY3Vzc2lvbkNvbW1pc3Npb25fVHlwZVwiLFxuICAgIFwiRGlzY3Vzc2lvblNlYW5jZVB1YmxpcXVlX1R5cGVcIixcbiAgICBcIkV0YXBlX1R5cGVcIixcbiAgICBcIkV0dWRlSW1wYWN0X1R5cGVcIixcbiAgICBcIk1vdGlvblByb2NlZHVyZV9UeXBlXCIsXG4gICAgXCJOb21pblJhcHBvcnRldXJzX1R5cGVcIixcbiAgICBcIlByb2NlZHVyZUFjY2VsZXJlX1R5cGVcIixcbiAgICBcIlByb211bGdhdGlvbl9UeXBlXCIsXG4gICAgXCJSZW52b2lDTVBfVHlwZVwiLFxuICAgIFwiUmVudm9pUHJlYWxhYmxlX1R5cGVcIixcbiAgICBcIlJldHJhaXRJbml0aWF0aXZlX1R5cGVcIixcbiAgICBcIlNhaXNpZUNvbUF2aXNfVHlwZVwiLFxuICAgIFwiU2Fpc2llQ29tRm9uZF9UeXBlXCIsXG4gICAgXCJTYWlzaW5lQ29uc2VpbENvbnN0aXRfVHlwZVwiLFxuICBdLFxuICBDb2RlQWN0ZU5pdmVhdTA6IE9iamVjdC52YWx1ZXMoQ29kZUFjdGVOaXZlYXUwKSxcbiAgQ29kZUFjdGVOaXZlYXUxOiBPYmplY3QudmFsdWVzKENvZGVBY3RlTml2ZWF1MSksXG4gIENvZGVBY3RlTml2ZWF1MjogT2JqZWN0LnZhbHVlcyhDb2RlQWN0ZU5pdmVhdTIpLFxuICBDb2RlQWN0ZU5pdmVhdTM6IE9iamVjdC52YWx1ZXMoQ29kZUFjdGVOaXZlYXUzKSxcbiAgVHlwZVRleHRlOiBbXCJCVEFcIiwgXCJUQVBcIl0sXG4gIE1vdGlmOiBbXCJFbiBhcHBsaWNhdGlvbiBkZSBsJ2FydGljbGUgNjHCpzIgZGUgbGEgQ29uc3RpdHV0aW9uXCJdLFxuICBUeXBlSm86IFtcIkpPX0xPSV9ERUNSRVRcIl0sXG4gIENhdXNlOiBbXCJEb3NzaWVyIGFic29yYsOpXCIsIFwiRXhhbWVuIGNvbW11blwiXSxcbiAgVHlwZURvY3VtZW50OiBbXG4gICAgXCJhY2NvcmRJbnRlcm5hdGlvbmFsX1R5cGVcIixcbiAgICBcImF2aXNDb25zZWlsRXRhdF9UeXBlXCIsXG4gICAgXCJkb2N1bWVudEV0dWRlSW1wYWN0X1R5cGVcIixcbiAgICBcInJhcHBvcnRQYXJsZW1lbnRhaXJlX1R5cGVcIixcbiAgICBcInRleHRlTG9pX1R5cGVcIixcbiAgXSxcbiAgU3RhdHV0QWRvcHRpb246IFtcIkFET1BUQ09NXCIsIFwiQURPUFRTRUFOQ0VcIiwgXCJSRUpFVFNFQU5DRVwiXSxcbiAgVHlwZUNvcnJlY3Rpb246IFtcIlJlY3RpZmnDqVwiXSxcbiAgRG9jdW1lbnREZW5vbWluYXRpb25TdHJ1Y3R1cmVsbGU6IFtcbiAgICBcIkFsbG9jdXRpb25cIixcbiAgICBcIkF2aXNcIixcbiAgICBcIkTDqWNsYXJhdGlvblwiLFxuICAgIFwiTGV0dHJlXCIsXG4gICAgXCJNZXNzYWdlXCIsXG4gICAgXCJQcm9qZXQgZGUgbG9pXCIsXG4gICAgXCJQcm9wb3NpdGlvbiBkZSBsb2lcIixcbiAgICBcIlByb3Bvc2l0aW9uIGRlIHLDqXNvbHV0aW9uXCIsXG4gICAgXCJSYXBwb3J0XCIsXG4gICAgXCJSYXBwb3J0IGQnaW5mb3JtYXRpb25cIixcbiAgICBcIlLDqXNvbHV0aW9uXCIsXG4gIF0sXG4gIFByb3ZlbmFuY2U6IFtcIkNvbW1pc3Npb25cIiwgXCJTw6lhbmNlXCIsIFwiVGV4dGUgRMOpcG9zw6lcIl0sXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBY0E7QUFNb0M7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQXFCeEJBLDJCQUEyQjtBQUFBO0FBQUEsV0FBM0JBLDJCQUEyQjtFQUEzQkEsMkJBQTJCO0VBQTNCQSwyQkFBMkI7RUFBM0JBLDJCQUEyQjtFQUEzQkEsMkJBQTJCO0VBQTNCQSwyQkFBMkI7RUFBM0JBLDJCQUEyQjtBQUFBLEdBQTNCQSwyQkFBMkIs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