@tricoteuses/assemblee 1.9.12 → 1.10.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 (237) hide show
  1. package/README.md +0 -5
  2. package/lib/api.js +1 -1
  3. package/lib/api.mjs +1 -1
  4. package/lib/bugs/acteur-00010/plugin.test.js +5 -5
  5. package/lib/bugs/acteur-00010/plugin.test.mjs +1 -1
  6. package/lib/bugs/acteur-00010.js +17 -18
  7. package/lib/bugs/acteur-00010.mjs +1 -1
  8. package/lib/bugs/agenda-00002/plugin.test.js +6 -6
  9. package/lib/bugs/agenda-00002/plugin.test.mjs +1 -1
  10. package/lib/bugs/agenda-00002.js +31 -32
  11. package/lib/bugs/agenda-00002.mjs +3 -3
  12. package/lib/bugs/agenda-00008/plugin.test.js +5 -5
  13. package/lib/bugs/agenda-00008/plugin.test.mjs +1 -1
  14. package/lib/bugs/agenda-00008.js +17 -18
  15. package/lib/bugs/agenda-00008.mjs +1 -1
  16. package/lib/bugs/agenda-00011/plugin.test.js +10 -10
  17. package/lib/bugs/agenda-00011/plugin.test.mjs +1 -1
  18. package/lib/bugs/agenda-00011.js +28 -29
  19. package/lib/bugs/agenda-00011.mjs +3 -3
  20. package/lib/bugs.js +27 -29
  21. package/lib/bugs.mjs +3 -3
  22. package/lib/cleaners/actes_legislatifs.js +5 -5
  23. package/lib/cleaners/actes_legislatifs.mjs +1 -1
  24. package/lib/cleaners/acteurs.js +5 -5
  25. package/lib/cleaners/acteurs.mjs +1 -1
  26. package/lib/cleaners/amendements.js +5 -5
  27. package/lib/cleaners/amendements.mjs +1 -1
  28. package/lib/cleaners/debats.js +1 -1
  29. package/lib/cleaners/debats.mjs +1 -1
  30. package/lib/cleaners/documents.js +5 -5
  31. package/lib/cleaners/documents.mjs +1 -1
  32. package/lib/cleaners/dossiers_legislatifs.js +5 -5
  33. package/lib/cleaners/dossiers_legislatifs.mjs +1 -1
  34. package/lib/cleaners/index.d.ts +0 -1
  35. package/lib/cleaners/index.js +1 -8
  36. package/lib/cleaners/index.mjs +1 -2
  37. package/lib/cleaners/organes.js +2 -2
  38. package/lib/cleaners/organes.mjs +1 -1
  39. package/lib/cleaners/questions.js +1 -1
  40. package/lib/cleaners/questions.mjs +1 -1
  41. package/lib/cleaners/reunions.js +5 -5
  42. package/lib/cleaners/reunions.mjs +1 -1
  43. package/lib/cleaners/scrutins.js +8 -8
  44. package/lib/cleaners/scrutins.mjs +1 -1
  45. package/lib/cleaners/xml.js +8 -8
  46. package/lib/cleaners/xml.mjs +1 -1
  47. package/lib/datasets.d.ts +1 -13
  48. package/lib/datasets.js +10 -29
  49. package/lib/datasets.mjs +2 -21
  50. package/lib/dates.js +3 -4
  51. package/lib/dates.mjs +1 -1
  52. package/lib/dossiers_legislatifs.js +8 -8
  53. package/lib/dossiers_legislatifs.mjs +1 -1
  54. package/lib/file_systems.js +15 -14
  55. package/lib/file_systems.mjs +3 -3
  56. package/lib/git.js +5 -5
  57. package/lib/git.mjs +1 -1
  58. package/lib/index.d.ts +1 -0
  59. package/lib/index.js +8 -1
  60. package/lib/index.mjs +2 -1
  61. package/lib/inserters.js +4 -4
  62. package/lib/inserters.mjs +1 -1
  63. package/lib/loaders.d.ts +0 -5
  64. package/lib/loaders.js +255 -299
  65. package/lib/loaders.mjs +1 -13
  66. package/lib/logger.js +1 -1
  67. package/lib/logger.mjs +1 -1
  68. package/lib/organes.js +1 -1
  69. package/lib/organes.mjs +1 -1
  70. package/lib/parsers/documents.js +11 -11
  71. package/lib/parsers/documents.mjs +1 -1
  72. package/lib/parsers/index.d.ts +1 -0
  73. package/lib/parsers/index.js +8 -1
  74. package/lib/parsers/index.mjs +2 -1
  75. package/lib/parsers/recherche_amendements.js +17 -15
  76. package/lib/parsers/recherche_amendements.mjs +1 -1
  77. package/lib/parsers/textes_lois.d.ts +22 -15
  78. package/lib/parsers/textes_lois.js +264 -752
  79. package/lib/parsers/textes_lois.mjs +249 -597
  80. package/lib/raw_types/acteurs_et_organes.js +9 -9
  81. package/lib/raw_types/acteurs_et_organes.mjs +1 -1
  82. package/lib/raw_types/agendas.d.ts +1 -0
  83. package/lib/raw_types/agendas.js +11 -10
  84. package/lib/raw_types/agendas.mjs +3 -2
  85. package/lib/raw_types/amendements.js +9 -9
  86. package/lib/raw_types/amendements.mjs +1 -1
  87. package/lib/raw_types/debats.js +9 -9
  88. package/lib/raw_types/debats.mjs +1 -1
  89. package/lib/raw_types/dossiers_legislatifs.d.ts +1 -0
  90. package/lib/raw_types/dossiers_legislatifs.js +13 -9
  91. package/lib/raw_types/dossiers_legislatifs.mjs +5 -1
  92. package/lib/raw_types/questions.js +9 -9
  93. package/lib/raw_types/questions.mjs +1 -1
  94. package/lib/raw_types/scrutins.js +9 -9
  95. package/lib/raw_types/scrutins.mjs +1 -1
  96. package/lib/scripts/bugs_helper.js +25 -26
  97. package/lib/scripts/bugs_helper.mjs +3 -3
  98. package/lib/scripts/clean_reorganized_data.js +256 -245
  99. package/lib/scripts/clean_reorganized_data.mjs +18 -29
  100. package/lib/scripts/diff_amendements.js +9 -8
  101. package/lib/scripts/diff_amendements.mjs +1 -1
  102. package/lib/scripts/document_dossiers_legislatifs.js +24 -27
  103. package/lib/scripts/document_dossiers_legislatifs.mjs +3 -3
  104. package/lib/scripts/get_today_reunions.js +3 -2
  105. package/lib/scripts/get_today_reunions.mjs +1 -1
  106. package/lib/scripts/merge_scrutins.js +9 -8
  107. package/lib/scripts/merge_scrutins.mjs +1 -1
  108. package/lib/scripts/parse_textes_lois.js +6 -5
  109. package/lib/scripts/parse_textes_lois.mjs +1 -1
  110. package/lib/scripts/process_open_dataset.d.ts +0 -2
  111. package/lib/scripts/process_open_dataset.js +19 -19
  112. package/lib/scripts/process_open_dataset.mjs +3 -5
  113. package/lib/scripts/raw_types_from_amendements.d.ts +0 -1
  114. package/lib/scripts/raw_types_from_amendements.js +122 -198
  115. package/lib/scripts/raw_types_from_amendements.mjs +105 -60
  116. package/lib/scripts/reorganize_data.js +14 -15
  117. package/lib/scripts/reorganize_data.mjs +3 -3
  118. package/lib/scripts/retrieve_deputes_photos.js +40 -31
  119. package/lib/scripts/retrieve_deputes_photos.mjs +10 -2
  120. package/lib/scripts/retrieve_documents.d.ts +1 -1
  121. package/lib/scripts/retrieve_documents.js +230 -138
  122. package/lib/scripts/retrieve_documents.mjs +87 -38
  123. package/lib/scripts/retrieve_open_data.js +27 -30
  124. package/lib/scripts/retrieve_open_data.mjs +5 -8
  125. package/lib/scripts/retrieve_pending_amendments.js +14 -14
  126. package/lib/scripts/retrieve_pending_amendments.mjs +1 -1
  127. package/lib/scripts/retrieve_senateurs_photos.js +10 -10
  128. package/lib/scripts/retrieve_senateurs_photos.mjs +1 -1
  129. package/lib/scripts/retrieve_textes_lois.js +17 -15
  130. package/lib/scripts/retrieve_textes_lois.mjs +1 -1
  131. package/lib/scripts/shared/cli_helpers.d.ts +11 -0
  132. package/lib/scripts/shared/cli_helpers.js +13 -2
  133. package/lib/scripts/shared/cli_helpers.mjs +12 -1
  134. package/lib/scripts/test_iter_load.js +5 -19
  135. package/lib/scripts/test_iter_load.mjs +2 -9
  136. package/lib/scripts/test_load.js +2 -2
  137. package/lib/scripts/test_load.mjs +1 -1
  138. package/lib/scripts/test_load_big_files.js +2 -2
  139. package/lib/scripts/test_load_big_files.mjs +1 -1
  140. package/lib/scripts/validate_json.js +17 -18
  141. package/lib/scripts/validate_json.mjs +3 -3
  142. package/lib/shared_types/codes_actes.d.ts +2 -0
  143. package/lib/shared_types/codes_actes.js +3 -1
  144. package/lib/shared_types/codes_actes.mjs +3 -1
  145. package/lib/strings.js +1 -1
  146. package/lib/strings.mjs +1 -1
  147. package/lib/types/acteurs_et_organes.js +9 -9
  148. package/lib/types/acteurs_et_organes.mjs +1 -1
  149. package/lib/types/agendas.d.ts +1 -0
  150. package/lib/types/agendas.js +11 -10
  151. package/lib/types/agendas.mjs +3 -2
  152. package/lib/types/amendements.js +9 -9
  153. package/lib/types/amendements.mjs +1 -1
  154. package/lib/types/debats.js +9 -9
  155. package/lib/types/debats.mjs +1 -1
  156. package/lib/types/dossiers_legislatifs.d.ts +14 -0
  157. package/lib/types/dossiers_legislatifs.js +51 -9
  158. package/lib/types/dossiers_legislatifs.mjs +43 -1
  159. package/lib/types/legislatures.js +1 -1
  160. package/lib/types/legislatures.mjs +1 -1
  161. package/lib/types/questions.js +9 -9
  162. package/lib/types/questions.mjs +1 -1
  163. package/lib/types/scrutins.js +9 -9
  164. package/lib/types/scrutins.mjs +1 -1
  165. package/lib/urls.js +2 -2
  166. package/lib/urls.mjs +1 -1
  167. package/package.json +14 -20
  168. package/lib/cleaners/textes_loi.d.ts +0 -1
  169. package/lib/cleaners/textes_loi.js +0 -12
  170. package/lib/cleaners/textes_loi.mjs +0 -5
  171. package/lib/examples/PIONANR5L15B0020/input.d.ts +0 -2
  172. package/lib/examples/PIONANR5L15B0020/input.js +0 -10
  173. package/lib/examples/PIONANR5L15B0020/input.mjs +0 -193
  174. package/lib/examples/PIONANR5L15B0020/input.ts +0 -193
  175. package/lib/examples/PIONANR5L15B0020/loi.json +0 -26
  176. package/lib/examples/PIONANR5L15B0020/loi_populated.json +0 -29
  177. package/lib/examples/PIONANR5L15B0020/meta.json +0 -28
  178. package/lib/examples/PIONANR5L15B0020/motifs.json +0 -5
  179. package/lib/examples/PIONANR5L15B0020/motifs_populated.json +0 -6
  180. package/lib/examples/PIONANR5L15B0020/sommaire.json +0 -3
  181. package/lib/examples/PRJLANR5L16B0914/input.d.ts +0 -2
  182. package/lib/examples/PRJLANR5L16B0914/input.js +0 -10
  183. package/lib/examples/PRJLANR5L16B0914/input.mjs +0 -322
  184. package/lib/examples/PRJLANR5L16B0914/input.ts +0 -322
  185. package/lib/examples/PRJLANR5L16B0914/loi.json +0 -14
  186. package/lib/examples/PRJLANR5L16B0914/loi_populated.json +0 -20
  187. package/lib/examples/PRJLANR5L16B0914/meta.json +0 -35
  188. package/lib/examples/PRJLANR5L16B0914/motifs.json +0 -4
  189. package/lib/examples/PRJLANR5L16B0914/motifs_populated.json +0 -5
  190. package/lib/examples/PRJLANR5L16B0914/sommaire.json +0 -3
  191. package/lib/examples/PRJLANR5L16B2014/README.md +0 -2
  192. package/lib/examples/PRJLANR5L16B2014/input.d.ts +0 -2
  193. package/lib/examples/PRJLANR5L16B2014/input.js +0 -10
  194. package/lib/examples/PRJLANR5L16B2014/input.mjs +0 -577
  195. package/lib/examples/PRJLANR5L16B2014/input.ts +0 -577
  196. package/lib/examples/PRJLANR5L16B2014/loi.json +0 -369
  197. package/lib/examples/PRJLANR5L16B2014/meta.json +0 -31
  198. package/lib/examples/PRJLANR5L16B2014/motifs.json +0 -5
  199. package/lib/examples/PRJLANR5L16B2014/sommaire.json +0 -51
  200. package/lib/examples/PRJLANR5L16B2424/alineas.json +0 -44
  201. package/lib/examples/PRJLANR5L16B2424/input.d.ts +0 -2
  202. package/lib/examples/PRJLANR5L16B2424/input.js +0 -10
  203. package/lib/examples/PRJLANR5L16B2424/input.mjs +0 -322
  204. package/lib/examples/PRJLANR5L16B2424/input.ts +0 -322
  205. package/lib/examples/PRJLANR5L16B2424/loi.json +0 -74
  206. package/lib/examples/PRJLANR5L16B2424/loi_populated.json +0 -87
  207. package/lib/examples/PRJLANR5L16B2424/meta.json +0 -31
  208. package/lib/examples/PRJLANR5L16B2424/motifs.json +0 -4
  209. package/lib/examples/PRJLANR5L16B2424/motifs_populated.json +0 -5
  210. package/lib/examples/PRJLANR5L16B2424/sommaire.json +0 -3
  211. package/lib/examples/PRJLANR5L16B2462/input.d.ts +0 -2
  212. package/lib/examples/PRJLANR5L16B2462/input.js +0 -10
  213. package/lib/examples/PRJLANR5L16B2462/input.mjs +0 -1308
  214. package/lib/examples/PRJLANR5L16B2462/input.ts +0 -1308
  215. package/lib/examples/PRJLANR5L16B2462/loi.json +0 -74
  216. package/lib/examples/PRJLANR5L16B2462/loi_populated.json +0 -310
  217. package/lib/examples/PRJLANR5L16B2462/meta.json +0 -29
  218. package/lib/examples/PRJLANR5L16B2462/motifs.json +0 -6
  219. package/lib/examples/PRJLANR5L16B2462/motifs_populated.json +0 -6
  220. package/lib/examples/PRJLANR5L16B2462/sommaire.json +0 -50
  221. package/lib/examples/README.md +0 -3
  222. package/lib/raw_types/textes_loi.d.ts +0 -93
  223. package/lib/raw_types/textes_loi.js +0 -429
  224. package/lib/raw_types/textes_loi.mjs +0 -378
  225. package/lib/schemas/texte_loi/Alinea.json +0 -36
  226. package/lib/schemas/texte_loi/ExposeMotifs.json +0 -24
  227. package/lib/schemas/texte_loi/MetaDonnees.json +0 -126
  228. package/lib/schemas/texte_loi/ProjetLoi.json +0 -64
  229. package/lib/schemas/texte_loi/Sommaire.json +0 -48
  230. package/lib/schemas/texte_loi/TexteLoi.json +0 -225
  231. package/lib/schemas/texte_loi/TexteLoiPartiel.json +0 -237
  232. package/lib/scripts/process_textes_loi_dataset.d.ts +0 -7
  233. package/lib/scripts/process_textes_loi_dataset.js +0 -373
  234. package/lib/scripts/process_textes_loi_dataset.mjs +0 -239
  235. package/lib/types/textes_loi.d.ts +0 -94
  236. package/lib/types/textes_loi.js +0 -429
  237. package/lib/types/textes_loi.mjs +0 -378
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
3
5
  require("core-js/modules/es.symbol.iterator.js");
4
6
  require("core-js/modules/es.array.iterator.js");
5
7
  require("core-js/modules/es.object.define-property.js");
@@ -9,8 +11,6 @@ Object.defineProperty(exports, "__esModule", {
9
11
  value: true
10
12
  });
11
13
  exports.Decision = exports.Convert = void 0;
12
- require("core-js/modules/es.symbol.js");
13
- require("core-js/modules/es.symbol.description.js");
14
14
  require("core-js/modules/es.symbol.to-primitive.js");
15
15
  require("core-js/modules/es.array.concat.js");
16
16
  require("core-js/modules/es.array.for-each.js");
@@ -18,6 +18,7 @@ require("core-js/modules/es.array.index-of.js");
18
18
  require("core-js/modules/es.array.is-array.js");
19
19
  require("core-js/modules/es.array.join.js");
20
20
  require("core-js/modules/es.array.map.js");
21
+ require("core-js/modules/es.date.to-json.js");
21
22
  require("core-js/modules/es.date.to-primitive.js");
22
23
  require("core-js/modules/es.date.to-string.js");
23
24
  require("core-js/modules/es.number.constructor.js");
@@ -26,10 +27,10 @@ require("core-js/modules/es.object.keys.js");
26
27
  require("core-js/modules/es.object.to-string.js");
27
28
  require("core-js/modules/web.dom-collections.for-each.js");
28
29
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
29
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
30
- 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, _toPropertyKey(descriptor.key), descriptor); } }
31
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
32
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
30
+ function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
31
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
32
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
33
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
33
34
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
34
35
  // To parse this data:
35
36
  //
@@ -60,7 +61,7 @@ var Convert = exports.Convert = /*#__PURE__*/function () {
60
61
  function Convert() {
61
62
  _classCallCheck(this, Convert);
62
63
  }
63
- _createClass(Convert, null, [{
64
+ return _createClass(Convert, null, [{
64
65
  key: "toComptesRendus",
65
66
  value: function toComptesRendus(json) {
66
67
  return cast(JSON.parse(json), r("ComptesRendus"));
@@ -81,7 +82,6 @@ var Convert = exports.Convert = /*#__PURE__*/function () {
81
82
  return JSON.stringify(uncast(value, r("CompteRendu")), null, 2);
82
83
  }
83
84
  }]);
84
- return Convert;
85
85
  }();
86
86
  function invalidValue(typ, val, key) {
87
87
  var parent = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "";
@@ -616,4 +616,4 @@ var typeMap = {
616
616
  }], false),
617
617
  Decision: ["ADOPTION amendement (main levée) adt", "ADOPTION d’un article (vote à main levée)", "ADOPTION d’un sous-amendement (main levée) ss-adt", "ADOPTION de plusieurs amendements (main levée) adts", "ADOPTION de plusieurs sous-amendements (main levée) ss-adts", "", "REJET d’un amendement (main levée) adt", "REJET d’un article (vote à main levée)", "REJET d’un sous-amendement (main levée) ss-adt", "REJET de plusieurs amendements (main levée) adts", "REJET de plusieurs sous-amendements (main levée) ss-adts", "REJET motion de rejet préalable (main levée)"]
618
618
  };
619
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZWNpc2lvbiIsImV4cG9ydHMiLCJDb252ZXJ0IiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NyZWF0ZUNsYXNzIiwia2V5IiwidmFsdWUiLCJ0b0NvbXB0ZXNSZW5kdXMiLCJqc29uIiwiY2FzdCIsIkpTT04iLCJwYXJzZSIsInIiLCJjb21wdGVzUmVuZHVzVG9Kc29uIiwic3RyaW5naWZ5IiwidW5jYXN0IiwidG9Db21wdGVSZW5kdSIsImNvbXB0ZVJlbmR1VG9Kc29uIiwiaW52YWxpZFZhbHVlIiwidHlwIiwidmFsIiwicGFyZW50IiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwicHJldHR5VHlwIiwicHJldHR5VHlwZU5hbWUiLCJwYXJlbnRUZXh0IiwiY29uY2F0Iiwia2V5VGV4dCIsIkVycm9yIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwiYSIsImpvaW4iLCJfdHlwZW9mIiwibGl0ZXJhbCIsImpzb25Ub0pTUHJvcHMiLCJqc29uVG9KUyIsInByb3BzIiwiZm9yRWFjaCIsInAiLCJqcyIsImpzVG9KU09OUHJvcHMiLCJqc1RvSlNPTiIsInRyYW5zZm9ybSIsImdldFByb3BzIiwidHJhbnNmb3JtUHJpbWl0aXZlIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVmIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJ1IiwiX2xlbiIsIl9rZXkiLCJvIiwibmFtZSIsIkNvbXB0ZXNSZW5kdXMiLCJDb21wdGVSZW5kdSIsIkNvbnRlbnUiLCJGaW5TZWFuY2UiLCJPcmF0ZXVycyIsIk9yYXRldXJFbGVtZW50IiwiVGV4dGUiLCJQb2ludCIsIlF1YW50aWVtZXMiLCJNZXRhZG9ubmVlcyIsIlNvbW1haXJlIiwiU29tbWFpcmVFbGVtZW50IiwiVGl0cmVTdHJ1Y3QiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvZGViYXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IENvbnZlcnQsIENvbXB0ZXNSZW5kdXMgfSBmcm9tIFwiLi9maWxlXCI7XG4vL1xuLy8gICBjb25zdCBjb21wdGVSZW5kdSA9IENvbnZlcnQudG9Db21wdGVzUmVuZHVzKGpzb24pO1xuLy9cbi8vIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBKU09OIGRvZXNuJ3Rcbi8vIG1hdGNoIHRoZSBleHBlY3RlZCBpbnRlcmZhY2UsIGV2ZW4gaWYgdGhlIEpTT04gaXMgdmFsaWQuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcHRlc1JlbmR1cyB7XG4gIGNvbXB0ZXNSZW5kdXM6IENvbXB0ZVJlbmR1W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb21wdGVSZW5kdSB7XG4gIHNjaGVtYVZlcnNpb24/OiBzdHJpbmdcbiAgdWlkOiBzdHJpbmdcbiAgc2VhbmNlUmVmOiBzdHJpbmdcbiAgc2Vzc2lvblJlZjogc3RyaW5nXG4gIG1ldGFkb25uZWVzOiBNZXRhZG9ubmVlc1xuICBjb250ZW51OiBDb250ZW51XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudSB7XG4gIHF1YW50aWVtZXM6IFF1YW50aWVtZXNcbiAgb3V2ZXJ0dXJlU2VhbmNlOiBQb2ludFtdIHwgUG9pbnRcbiAgcG9pbnQ6IFBvaW50W10gfCBQb2ludFxuICBmaW5TZWFuY2U/OiBGaW5TZWFuY2VcbiAgcGFyYWdyYXBoZT86IFBvaW50W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaW5TZWFuY2Uge1xuICBwb2ludDogUG9pbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcmF0ZXVycyB7XG4gIG9yYXRldXI6IE9yYXRldXJFbGVtZW50W10gfCBPcmF0ZXVyRWxlbWVudFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9yYXRldXJFbGVtZW50IHtcbiAgbm9tOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZFxuICBxdWFsaXRlOiBzdHJpbmcgfCB1bmRlZmluZWRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZSB7XG4gIF8/OiBzdHJpbmdcbiAgaWRfc3ljZXJvbj86IHN0cmluZ1xuICBzdGltZT86IHN0cmluZ1xuICBzdXA/OiBzdHJpbmdcbiAgbGllbkFkdD86IFRleHRlW10gfCBUZXh0ZVxufVxuXG5leHBvcnQgZW51bSBEZWNpc2lvbiB7XG4gIEFkb3B0aW9uQW1lbmRlbWVudE1haW5MZXbDqWVBZHQgPSBcIkFET1BUSU9OIGFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBhZHRcIixcbiAgQWRvcHRpb25EVW5BcnRpY2xlVm90ZcOATWFpbkxldsOpZSA9IFwiQURPUFRJT04gZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gIEFkb3B0aW9uRFVuU291c0FtZW5kZW1lbnRNYWluTGV2w6llU3NBZHQgPSBcIkFET1BUSU9OIGTigJl1biBzb3VzLWFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBzcy1hZHRcIixcbiAgQWRvcHRpb25EZVBsdXNpZXVyc0FtZW5kZW1lbnRzTWFpbkxldsOpZUFkdHMgPSBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBhbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIGFkdHNcIixcbiAgQWRvcHRpb25EZVBsdXNpZXVyc1NvdXNBbWVuZGVtZW50c01haW5MZXbDqWVTc0FkdHMgPSBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBzb3VzLWFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgc3MtYWR0c1wiLFxuICBFbXB0eSA9IFwiXCIsXG4gIFJlamV0RFVuQW1lbmRlbWVudE1haW5MZXbDqWVBZHQgPSBcIlJFSkVUIGTigJl1biBhbWVuZGVtZW50IChtYWluIGxldsOpZSkgYWR0XCIsXG4gIFJlamV0RFVuQXJ0aWNsZVZvdGXDgE1haW5MZXbDqWUgPSBcIlJFSkVUIGTigJl1biBhcnRpY2xlICh2b3RlIMOgIG1haW4gbGV2w6llKVwiLFxuICBSZWpldERVblNvdXNBbWVuZGVtZW50TWFpbkxldsOpZVNzQWR0ID0gXCJSRUpFVCBk4oCZdW4gc291cy1hbWVuZGVtZW50IChtYWluIGxldsOpZSkgc3MtYWR0XCIsXG4gIFJlamV0RGVQbHVzaWV1cnNBbWVuZGVtZW50c01haW5MZXbDqWVBZHRzID0gXCJSRUpFVCBkZSBwbHVzaWV1cnMgYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBhZHRzXCIsXG4gIFJlamV0RGVQbHVzaWV1cnNTb3VzQW1lbmRlbWVudHNNYWluTGV2w6llU3NBZHRzID0gXCJSRUpFVCBkZSBwbHVzaWV1cnMgc291cy1hbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIHNzLWFkdHNcIixcbiAgUmVqZXRNb3Rpb25EZVJlamV0UHLDqWFsYWJsZU1haW5MZXbDqWUgPSBcIlJFSkVUIG1vdGlvbiBkZSByZWpldCBwcsOpYWxhYmxlIChtYWluIGxldsOpZSlcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2ludCB7XG4gIG5pdnBvaW50Pzogc3RyaW5nXG4gIHZhbGV1cl9wdHNvZGo/OiBzdHJpbmdcbiAgb3JkaW5hbF9wcmlzZT86IHN0cmluZ1xuICBpZF9wcmVwYXJhdGlvbj86IHN0cmluZ1xuICBvcmRyZV9hYnNvbHVfc2VhbmNlPzogc3RyaW5nXG4gIGNvZGVfZ3JhbW1haXJlPzogc3RyaW5nXG4gIGNvZGVfc3R5bGU/OiBzdHJpbmdcbiAgY29kZV9wYXJvbGU/OiBzdHJpbmdcbiAgc29tbWFpcmU/OiBzdHJpbmdcbiAgaWRfc3ljZXJvbj86IHN0cmluZ1xuICB2YWxldXI/OiBzdHJpbmdcbiAgb3JhdGV1cnM/OiBPcmF0ZXVycyB8IHN0cmluZ1xuICB0ZXh0ZT86IFRleHRlIHwgc3RyaW5nXG4gIHBhcmFncmFwaGU/OiBQb2ludFtdIHwgUG9pbnRcbiAgaW50ZXJFeHRyYWN0aW9uPzogUG9pbnRbXSB8IFBvaW50XG4gIHBvaW50PzogUG9pbnRbXSB8IFBvaW50XG4gIHN0cnVjdHVyZT86IHN0cmluZ1xuICBpZF9hY3RldXI/OiBzdHJpbmdcbiAgaWRfbWFuZGF0Pzogc3RyaW5nXG4gIGlkX25vbWluYXRpb25fb2U/OiBzdHJpbmdcbiAgaWRfbm9taW5hdGlvbl9vcD86IHN0cmluZ1xuICBvcmF0ZXVyPzogc3RyaW5nXG4gIGJpYmFyZD86IHN0cmluZ1xuICBhcnQ/OiBzdHJpbmdcbiAgYWR0Pzogc3RyaW5nXG4gIHNzYWR0Pzogc3RyaW5nXG4gIHJvbGVkZWJhdD86IHN0cmluZ1xuICBjaGFuZ2VtZW50UHJlc2lkZW5jZT86IFBvaW50XG4gIHR5cGVfZGViYXQ/OiBzdHJpbmdcbiAgZGVjaXNpb24/OiBEZWNpc2lvblxuICBvdXZlcnR1cmVTZWFuY2U/OiBQb2ludFxuICBub21fb3JhdGV1cj86IHN0cmluZ1xuICBxdWFsaXRlPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXVhbnRpZW1lcyB7XG4gIGpvdXJuZWU6IHN0cmluZ1xuICBzZXNzaW9uOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZXRhZG9ubmVlcyB7XG4gIGRhdGVTZWFuY2U6IHN0cmluZ1xuICBkYXRlU2VhbmNlSm91cjogc3RyaW5nXG4gIG51bVNlYW5jZUpvdXI6IHN0cmluZ1xuICBudW1TZWFuY2U6IHN0cmluZ1xuICB0eXBlQXNzZW1ibGVlOiBzdHJpbmdcbiAgbGVnaXNsYXR1cmU6IHN0cmluZ1xuICBzZXNzaW9uOiBzdHJpbmdcbiAgbm9tRmljaGllckpvOiBzdHJpbmdcbiAgdmFsaWRpdGU6IHN0cmluZ1xuICBldGF0OiBzdHJpbmdcbiAgZGlmZnVzaW9uOiBzdHJpbmdcbiAgdmVyc2lvbjogc3RyaW5nXG4gIGVudmlyb25uZW1lbnQ6IHN0cmluZ1xuICBoZXVyZUdlbmVyYXRpb246IERhdGVcbiAgc29tbWFpcmU6IFNvbW1haXJlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU29tbWFpcmUge1xuICBwcmVzaWRlbnRTZWFuY2U6IFRleHRlXG4gIHNvbW1haXJlMTogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgc29tbWFpcmUzPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgc29tbWFpcmUyPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgcGFyYT86IFRleHRlW10gfCBUZXh0ZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNvbW1haXJlRWxlbWVudCB7XG4gIHZhbGV1cl9wdHNfb2RqPzogc3RyaW5nXG4gIHRpdHJlU3RydWN0OiBUaXRyZVN0cnVjdFxuICBwYXJhPzogQXJyYXk8VGV4dGUgfCBzdHJpbmc+IHwgVGV4dGVcbiAgc29tbWFpcmUyPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgc29tbWFpcmUzPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgcHJlc2lkZW50U2VhbmNlPzogVGV4dGVbXSB8IFRleHRlXG4gIHR5cGVfZGViYXQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaXRyZVN0cnVjdCB7XG4gIGlkX3N5Y2Vyb246IHN0cmluZ1xuICBpbnRpdHVsZT86IHN0cmluZ1xuICBzb3VzSW50aXR1bGU/OiBzdHJpbmdcbiAgdHlwZV9kZWJhdD86IHN0cmluZ1xufVxuXG4vLyBDb252ZXJ0cyBKU09OIHN0cmluZ3MgdG8vZnJvbSB5b3VyIHR5cGVzXG4vLyBhbmQgYXNzZXJ0cyB0aGUgcmVzdWx0cyBvZiBKU09OLnBhcnNlIGF0IHJ1bnRpbWVcbmV4cG9ydCBjbGFzcyBDb252ZXJ0IHtcbiAgcHVibGljIHN0YXRpYyB0b0NvbXB0ZXNSZW5kdXMoanNvbjogc3RyaW5nKTogQ29tcHRlc1JlbmR1cyB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkNvbXB0ZXNSZW5kdXNcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGNvbXB0ZXNSZW5kdXNUb0pzb24odmFsdWU6IENvbXB0ZXNSZW5kdXMpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJDb21wdGVzUmVuZHVzXCIpKSwgbnVsbCwgMilcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdG9Db21wdGVSZW5kdShqc29uOiBzdHJpbmcpOiBDb21wdGVSZW5kdSB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkNvbXB0ZVJlbmR1XCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjb21wdGVSZW5kdVRvSnNvbih2YWx1ZTogQ29tcHRlUmVuZHUpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJDb21wdGVSZW5kdVwiKSksIG51bGwsIDIpXG4gIH1cbn1cblxuZnVuY3Rpb24gaW52YWxpZFZhbHVlKHR5cDogYW55LCB2YWw6IGFueSwga2V5OiBhbnksIHBhcmVudDogYW55ID0gXCJcIik6IG5ldmVyIHtcbiAgY29uc3QgcHJldHR5VHlwID0gcHJldHR5VHlwZU5hbWUodHlwKVxuICBjb25zdCBwYXJlbnRUZXh0ID0gcGFyZW50ID8gYCBvbiAke3BhcmVudH1gIDogXCJcIlxuICBjb25zdCBrZXlUZXh0ID0ga2V5ID8gYCBmb3Iga2V5IFwiJHtrZXl9XCJgIDogXCJcIlxuICB0aHJvdyBFcnJvcihcbiAgICBgSW52YWxpZCB2YWx1ZSR7a2V5VGV4dH0ke3BhcmVudFRleHR9LiBFeHBlY3RlZCAke3ByZXR0eVR5cH0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgdmFsLFxuICAgICl9YCxcbiAgKVxufVxuXG5mdW5jdGlvbiBwcmV0dHlUeXBlTmFtZSh0eXA6IGFueSk6IHN0cmluZyB7XG4gIGlmIChBcnJheS5pc0FycmF5KHR5cCkpIHtcbiAgICBpZiAodHlwLmxlbmd0aCA9PT0gMiAmJiB0eXBbMF0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGBhbiBvcHRpb25hbCAke3ByZXR0eVR5cGVOYW1lKHR5cFsxXSl9YFxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYG9uZSBvZiBbJHt0eXBcbiAgICAgICAgLm1hcCgoYSkgPT4ge1xuICAgICAgICAgIHJldHVybiBwcmV0dHlUeXBlTmFtZShhKVxuICAgICAgICB9KVxuICAgICAgICAuam9pbihcIiwgXCIpfV1gXG4gICAgfVxuICB9IGVsc2UgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLmxpdGVyYWwgIT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB0eXAubGl0ZXJhbFxuICB9IGVsc2Uge1xuICAgIHJldHVybiB0eXBlb2YgdHlwXG4gIH1cbn1cblxuZnVuY3Rpb24ganNvblRvSlNQcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gIGlmICh0eXAuanNvblRvSlMgPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1hcDogYW55ID0ge31cbiAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiAobWFwW3AuanNvbl0gPSB7IGtleTogcC5qcywgdHlwOiBwLnR5cCB9KSlcbiAgICB0eXAuanNvblRvSlMgPSBtYXBcbiAgfVxuICByZXR1cm4gdHlwLmpzb25Ub0pTXG59XG5cbmZ1bmN0aW9uIGpzVG9KU09OUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICBpZiAodHlwLmpzVG9KU09OID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBtYXA6IGFueSA9IHt9XG4gICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gKG1hcFtwLmpzXSA9IHsga2V5OiBwLmpzb24sIHR5cDogcC50eXAgfSkpXG4gICAgdHlwLmpzVG9KU09OID0gbWFwXG4gIH1cbiAgcmV0dXJuIHR5cC5qc1RvSlNPTlxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm0oXG4gIHZhbDogYW55LFxuICB0eXA6IGFueSxcbiAgZ2V0UHJvcHM6IGFueSxcbiAga2V5OiBhbnkgPSBcIlwiLFxuICBwYXJlbnQ6IGFueSA9IFwiXCIsXG4pOiBhbnkge1xuICBmdW5jdGlvbiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwOiBzdHJpbmcsIHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodHlwZW9mIHR5cCA9PT0gdHlwZW9mIHZhbCkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSwgcGFyZW50KVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtVW5pb24odHlwczogYW55W10sIHZhbDogYW55KTogYW55IHtcbiAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgIGNvbnN0IGwgPSB0eXBzLmxlbmd0aFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCB0eXAgPSB0eXBzW2ldXG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcylcbiAgICAgIH0gY2F0Y2ggKF8pIHt9XG4gICAgfVxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsLCBrZXksIHBhcmVudClcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybUVudW0oY2FzZXM6IHN0cmluZ1tdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKGNhc2VzLmluZGV4T2YodmFsKSAhPT0gLTEpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKFxuICAgICAgY2FzZXMubWFwKChhKSA9PiB7XG4gICAgICAgIHJldHVybiBsKGEpXG4gICAgICB9KSxcbiAgICAgIHZhbCxcbiAgICAgIGtleSxcbiAgICAgIHBhcmVudCxcbiAgICApXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1BcnJheSh0eXA6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IGJlIGFuIGFycmF5IHdpdGggbm8gaW52YWxpZCBlbGVtZW50c1xuICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWwpKSByZXR1cm4gaW52YWxpZFZhbHVlKGwoXCJhcnJheVwiKSwgdmFsLCBrZXksIHBhcmVudClcbiAgICByZXR1cm4gdmFsLm1hcCgoZWwpID0+IHRyYW5zZm9ybShlbCwgdHlwLCBnZXRQcm9wcykpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCBkID0gbmV3IERhdGUodmFsKVxuICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUobChcIkRhdGVcIiksIHZhbCwga2V5LCBwYXJlbnQpXG4gICAgfVxuICAgIHJldHVybiBkXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1PYmplY3QoXG4gICAgcHJvcHM6IHsgW2s6IHN0cmluZ106IGFueSB9LFxuICAgIGFkZGl0aW9uYWw6IGFueSxcbiAgICB2YWw6IGFueSxcbiAgKTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsIHx8IHR5cGVvZiB2YWwgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICByZXR1cm4gaW52YWxpZFZhbHVlKGwocmVmIHx8IFwib2JqZWN0XCIpLCB2YWwsIGtleSwgcGFyZW50KVxuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9XG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvcHMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV1cbiAgICAgIGNvbnN0IHYgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCBrZXkpXG4gICAgICAgID8gdmFsW2tleV1cbiAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgIHJlc3VsdFtwcm9wLmtleV0gPSB0cmFuc2Zvcm0odiwgcHJvcC50eXAsIGdldFByb3BzLCBrZXksIHJlZilcbiAgICB9KVxuICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcywga2V5KSkge1xuICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSwgcmVmKVxuICAgICAgfVxuICAgIH0pXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG5cbiAgaWYgKHR5cCA9PT0gXCJhbnlcIikgcmV0dXJuIHZhbFxuICBpZiAodHlwID09PSBudWxsKSB7XG4gICAgaWYgKHZhbCA9PT0gbnVsbCkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSwgcGFyZW50KVxuICB9XG4gIGlmICh0eXAgPT09IGZhbHNlKSByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXksIHBhcmVudClcbiAgbGV0IHJlZjogYW55ID0gdW5kZWZpbmVkXG4gIHdoaWxlICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiICYmIHR5cC5yZWYgIT09IHVuZGVmaW5lZCkge1xuICAgIHJlZiA9IHR5cC5yZWZcbiAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdXG4gIH1cbiAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkgcmV0dXJuIHRyYW5zZm9ybUVudW0odHlwLCB2YWwpXG4gIGlmICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKVxuICAgICAgPyB0cmFuc2Zvcm1Vbmlvbih0eXAudW5pb25NZW1iZXJzLCB2YWwpXG4gICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcImFycmF5SXRlbXNcIilcbiAgICAgICAgPyB0cmFuc2Zvcm1BcnJheSh0eXAuYXJyYXlJdGVtcywgdmFsKVxuICAgICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcInByb3BzXCIpXG4gICAgICAgICAgPyB0cmFuc2Zvcm1PYmplY3QoZ2V0UHJvcHModHlwKSwgdHlwLmFkZGl0aW9uYWwsIHZhbClcbiAgICAgICAgICA6IGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5LCBwYXJlbnQpXG4gIH1cbiAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgaWYgKHR5cCA9PT0gRGF0ZSAmJiB0eXBlb2YgdmFsICE9PSBcIm51bWJlclwiKSByZXR1cm4gdHJhbnNmb3JtRGF0ZSh2YWwpXG4gIHJldHVybiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwLCB2YWwpXG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzb25Ub0pTUHJvcHMpXG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNUb0pTT05Qcm9wcylcbn1cblxuZnVuY3Rpb24gbCh0eXA6IGFueSkge1xuICByZXR1cm4geyBsaXRlcmFsOiB0eXAgfVxufVxuXG5mdW5jdGlvbiBhKHR5cDogYW55KSB7XG4gIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9XG59XG5cbmZ1bmN0aW9uIHUoLi4udHlwczogYW55W10pIHtcbiAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH1cbn1cblxuZnVuY3Rpb24gbyhwcm9wczogYW55W10sIGFkZGl0aW9uYWw6IGFueSkge1xuICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9XG59XG5cbi8vIGZ1bmN0aW9uIG0oYWRkaXRpb25hbDogYW55KSB7XG4vLyAgICAgcmV0dXJuIHsgcHJvcHM6IFtdLCBhZGRpdGlvbmFsIH07XG4vLyB9XG5cbmZ1bmN0aW9uIHIobmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiB7IHJlZjogbmFtZSB9XG59XG5cbmNvbnN0IHR5cGVNYXA6IGFueSA9IHtcbiAgQ29tcHRlc1JlbmR1czogbyhcbiAgICBbeyBqc29uOiBcImNvbXB0ZXNSZW5kdXNcIiwganM6IFwiY29tcHRlc1JlbmR1c1wiLCB0eXA6IGEocihcIkNvbXB0ZVJlbmR1XCIpKSB9XSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29tcHRlUmVuZHU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInNjaGVtYVZlcnNpb25cIiwganM6IFwic2NoZW1hVmVyc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJzZWFuY2VSZWZcIiwganM6IFwic2VhbmNlUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInNlc3Npb25SZWZcIiwganM6IFwic2Vzc2lvblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJtZXRhZG9ubmVlc1wiLCBqczogXCJtZXRhZG9ubmVlc1wiLCB0eXA6IHIoXCJNZXRhZG9ubmVlc1wiKSB9LFxuICAgICAgeyBqc29uOiBcImNvbnRlbnVcIiwganM6IFwiY29udGVudVwiLCB0eXA6IHIoXCJDb250ZW51XCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29udGVudTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwicXVhbnRpZW1lc1wiLCBqczogXCJxdWFudGllbWVzXCIsIHR5cDogcihcIlF1YW50aWVtZXNcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJvdXZlcnR1cmVTZWFuY2VcIixcbiAgICAgICAganM6IFwib3V2ZXJ0dXJlU2VhbmNlXCIsXG4gICAgICAgIHR5cDogdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInBvaW50XCIsIGpzOiBcInBvaW50XCIsIHR5cDogdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSkgfSxcbiAgICAgIHsganNvbjogXCJmaW5TZWFuY2VcIiwganM6IFwiZmluU2VhbmNlXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJGaW5TZWFuY2VcIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicGFyYWdyYXBoZVwiLFxuICAgICAgICBqczogXCJwYXJhZ3JhcGhlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIlBvaW50XCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEZpblNlYW5jZTogbyhbeyBqc29uOiBcInBvaW50XCIsIGpzOiBcInBvaW50XCIsIHR5cDogcihcIlBvaW50XCIpIH1dLCBmYWxzZSksXG4gIE9yYXRldXJzOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJvcmF0ZXVyXCIsXG4gICAgICAgIGpzOiBcIm9yYXRldXJcIixcbiAgICAgICAgdHlwOiB1KGEocihcIk9yYXRldXJFbGVtZW50XCIpKSwgcihcIk9yYXRldXJFbGVtZW50XCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgT3JhdGV1ckVsZW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInF1YWxpdGVcIiwganM6IFwicXVhbGl0ZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFRleHRlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJfXCIsIGpzOiBcIl9cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9zeWNlcm9uXCIsIGpzOiBcImlkX3N5Y2Vyb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJzdGltZVwiLCBqczogXCJzdGltZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInN1cFwiLCBqczogXCJzdXBcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJsaWVuQWR0XCIsXG4gICAgICAgIGpzOiBcImxpZW5BZHRcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJUZXh0ZVwiKSksIHIoXCJUZXh0ZVwiKSkpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBQb2ludDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibml2cG9pbnRcIiwganM6IFwibml2cG9pbnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ2YWxldXJfcHRzb2RqXCIsIGpzOiBcInZhbGV1cl9wdHNvZGpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJvcmRpbmFsX3ByaXNlXCIsIGpzOiBcIm9yZGluYWxfcHJpc2VcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9wcmVwYXJhdGlvblwiLCBqczogXCJpZF9wcmVwYXJhdGlvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yZHJlX2Fic29sdV9zZWFuY2VcIixcbiAgICAgICAganM6IFwib3JkcmVfYWJzb2x1X3NlYW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiY29kZV9ncmFtbWFpcmVcIiwganM6IFwiY29kZV9ncmFtbWFpcmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX3N0eWxlXCIsIGpzOiBcImNvZGVfc3R5bGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX3Bhcm9sZVwiLCBqczogXCJjb2RlX3Bhcm9sZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvbW1haXJlXCIsIGpzOiBcInNvbW1haXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaWRfc3ljZXJvblwiLCBqczogXCJpZF9zeWNlcm9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwidmFsZXVyXCIsIGpzOiBcInZhbGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yYXRldXJzXCIsXG4gICAgICAgIGpzOiBcIm9yYXRldXJzXCIsXG4gICAgICAgIHR5cDogdShyKFwiT3JhdGV1cnNcIiksIHUoXCJcIiwgdW5kZWZpbmVkKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInRleHRlXCIsIGpzOiBcInRleHRlXCIsIHR5cDogdShyKFwiVGV4dGVcIiksIHUoXCJcIiwgdW5kZWZpbmVkKSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhZ3JhcGhlXCIsXG4gICAgICAgIGpzOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbnRlckV4dHJhY3Rpb25cIixcbiAgICAgICAganM6IFwiaW50ZXJFeHRyYWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiUG9pbnRcIikpLCByKFwiUG9pbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicG9pbnRcIixcbiAgICAgICAganM6IFwicG9pbnRcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJzdHJ1Y3R1cmVcIiwganM6IFwic3RydWN0dXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaWRfYWN0ZXVyXCIsIGpzOiBcImlkX2FjdGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkX21hbmRhdFwiLCBqczogXCJpZF9tYW5kYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpZF9ub21pbmF0aW9uX29lXCIsXG4gICAgICAgIGpzOiBcImlkX25vbWluYXRpb25fb2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImlkX25vbWluYXRpb25fb3BcIixcbiAgICAgICAganM6IFwiaWRfbm9taW5hdGlvbl9vcFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwib3JhdGV1clwiLCBqczogXCJvcmF0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiYmliYXJkXCIsIGpzOiBcImJpYmFyZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImFydFwiLCBqczogXCJhcnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJhZHRcIiwganM6IFwiYWR0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic3NhZHRcIiwganM6IFwic3NhZHRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJyb2xlZGViYXRcIiwganM6IFwicm9sZWRlYmF0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwidHlwZV9kZWJhdFwiLCBqczogXCJ0eXBlX2RlYmF0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY2hhbmdlbWVudFByZXNpZGVuY2VcIixcbiAgICAgICAganM6IFwiY2hhbmdlbWVudFByZXNpZGVuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlBvaW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZGVjaXNpb25cIiwganM6IFwiZGVjaXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRlY2lzaW9uXCIpKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm91dmVydHVyZVNlYW5jZVwiLFxuICAgICAgICBqczogXCJvdXZlcnR1cmVTZWFuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlBvaW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibm9tX29yYXRldXJcIiwganM6IFwibm9tX29yYXRldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJxdWFsaXRlXCIsIGpzOiBcInF1YWxpdGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBRdWFudGllbWVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJqb3VybmVlXCIsIGpzOiBcImpvdXJuZWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic2Vzc2lvblwiLCBqczogXCJzZXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIE1ldGFkb25uZWVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlU2VhbmNlXCIsIGpzOiBcImRhdGVTZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiZGF0ZVNlYW5jZUpvdXJcIiwganM6IFwiZGF0ZVNlYW5jZUpvdXJcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibnVtU2VhbmNlSm91clwiLCBqczogXCJudW1TZWFuY2VKb3VyXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm51bVNlYW5jZVwiLCBqczogXCJudW1TZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidHlwZUFzc2VtYmxlZVwiLCBqczogXCJ0eXBlQXNzZW1ibGVlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxlZ2lzbGF0dXJlXCIsIGpzOiBcImxlZ2lzbGF0dXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInNlc3Npb25cIiwganM6IFwic2Vzc2lvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJub21GaWNoaWVySm9cIiwganM6IFwibm9tRmljaGllckpvXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZhbGlkaXRlXCIsIGpzOiBcInZhbGlkaXRlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJkaWZmdXNpb25cIiwganM6IFwiZGlmZnVzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZlcnNpb25cIiwganM6IFwidmVyc2lvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJlbnZpcm9ubmVtZW50XCIsIGpzOiBcImVudmlyb25uZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiaGV1cmVHZW5lcmF0aW9uXCIsIGpzOiBcImhldXJlR2VuZXJhdGlvblwiLCB0eXA6IERhdGUgfSxcbiAgICAgIHsganNvbjogXCJzb21tYWlyZVwiLCBqczogXCJzb21tYWlyZVwiLCB0eXA6IHIoXCJTb21tYWlyZVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvbW1haXJlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJwcmVzaWRlbnRTZWFuY2VcIiwganM6IFwicHJlc2lkZW50U2VhbmNlXCIsIHR5cDogcihcIlRleHRlXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUxXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlMVwiLFxuICAgICAgICB0eXA6IHUoYShyKFwiU29tbWFpcmVFbGVtZW50XCIpKSwgcihcIlNvbW1haXJlRWxlbWVudFwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvbW1haXJlM1wiLFxuICAgICAgICBqczogXCJzb21tYWlyZTNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvbW1haXJlMlwiLFxuICAgICAgICBqczogXCJzb21tYWlyZTJcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBhcmFcIixcbiAgICAgICAganM6IFwicGFyYVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlRleHRlXCIpKSwgcihcIlRleHRlXCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvbW1haXJlRWxlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwidmFsZXVyX3B0c19vZGpcIiwganM6IFwidmFsZXVyX3B0c19vZGpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0aXRyZVN0cnVjdFwiLFxuICAgICAgICBqczogXCJ0aXRyZVN0cnVjdFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiVGl0cmVTdHJ1Y3RcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhXCIsXG4gICAgICAgIGpzOiBcInBhcmFcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHUocihcIlRleHRlXCIpLCBcIlwiKSksIHIoXCJUZXh0ZVwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzb21tYWlyZTJcIixcbiAgICAgICAganM6IFwic29tbWFpcmUyXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiU29tbWFpcmVFbGVtZW50XCIpKSwgcihcIlNvbW1haXJlRWxlbWVudFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzb21tYWlyZTNcIixcbiAgICAgICAganM6IFwic29tbWFpcmUzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiU29tbWFpcmVFbGVtZW50XCIpKSwgcihcIlNvbW1haXJlRWxlbWVudFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwcmVzaWRlbnRTZWFuY2VcIixcbiAgICAgICAganM6IFwicHJlc2lkZW50U2VhbmNlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiVGV4dGVcIikpLCByKFwiVGV4dGVcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidHlwZV9kZWJhdFwiLCBqczogXCJ0eXBlX2RlYmF0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGl0cmVTdHJ1Y3Q6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImlkX3N5Y2Vyb25cIiwganM6IFwiaWRfc3ljZXJvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJpbnRpdHVsZVwiLCBqczogXCJpbnRpdHVsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvdXNJbnRpdHVsZVwiLCBqczogXCJzb3VzSW50aXR1bGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlX2RlYmF0XCIsIGpzOiBcInR5cGVfZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBEZWNpc2lvbjogW1xuICAgIFwiQURPUFRJT04gYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIGFkdFwiLFxuICAgIFwiQURPUFRJT04gZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gICAgXCJBRE9QVElPTiBk4oCZdW4gc291cy1hbWVuZGVtZW50IChtYWluIGxldsOpZSkgc3MtYWR0XCIsXG4gICAgXCJBRE9QVElPTiBkZSBwbHVzaWV1cnMgYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBhZHRzXCIsXG4gICAgXCJBRE9QVElPTiBkZSBwbHVzaWV1cnMgc291cy1hbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIHNzLWFkdHNcIixcbiAgICBcIlwiLFxuICAgIFwiUkVKRVQgZOKAmXVuIGFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBhZHRcIixcbiAgICBcIlJFSkVUIGTigJl1biBhcnRpY2xlICh2b3RlIMOgIG1haW4gbGV2w6llKVwiLFxuICAgIFwiUkVKRVQgZOKAmXVuIHNvdXMtYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIHNzLWFkdFwiLFxuICAgIFwiUkVKRVQgZGUgcGx1c2lldXJzIGFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgYWR0c1wiLFxuICAgIFwiUkVKRVQgZGUgcGx1c2lldXJzIHNvdXMtYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBzcy1hZHRzXCIsXG4gICAgXCJSRUpFVCBtb3Rpb24gZGUgcmVqZXQgcHLDqWFsYWJsZSAobWFpbiBsZXbDqWUpXCIsXG4gIF0sXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQSxJQTZDWUEsUUFBUSxHQUFBQyxPQUFBLENBQUFELFFBQUEsMEJBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBQSxPQUFSQSxRQUFRO0FBQUE7QUFtR3BCO0FBQ0E7QUFBQSxJQUNhRSxPQUFPLEdBQUFELE9BQUEsQ0FBQUMsT0FBQTtFQUFBLFNBQUFBLFFBQUE7SUFBQUMsZUFBQSxPQUFBRCxPQUFBO0VBQUE7RUFBQUUsWUFBQSxDQUFBRixPQUFBO0lBQUFHLEdBQUE7SUFBQUMsS0FBQSxFQUNsQixTQUFBQyxnQkFBOEJDLElBQVksRUFBaUI7TUFDekQsT0FBT0MsSUFBSSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0gsSUFBSSxDQUFDLEVBQUVJLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNuRDtFQUFDO0lBQUFQLEdBQUE7SUFBQUMsS0FBQSxFQUVELFNBQUFPLG9CQUFr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
619
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZWNpc2lvbiIsImV4cG9ydHMiLCJDb252ZXJ0IiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NyZWF0ZUNsYXNzIiwia2V5IiwidmFsdWUiLCJ0b0NvbXB0ZXNSZW5kdXMiLCJqc29uIiwiY2FzdCIsIkpTT04iLCJwYXJzZSIsInIiLCJjb21wdGVzUmVuZHVzVG9Kc29uIiwic3RyaW5naWZ5IiwidW5jYXN0IiwidG9Db21wdGVSZW5kdSIsImNvbXB0ZVJlbmR1VG9Kc29uIiwiaW52YWxpZFZhbHVlIiwidHlwIiwidmFsIiwicGFyZW50IiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwicHJldHR5VHlwIiwicHJldHR5VHlwZU5hbWUiLCJwYXJlbnRUZXh0IiwiY29uY2F0Iiwia2V5VGV4dCIsIkVycm9yIiwiQXJyYXkiLCJpc0FycmF5IiwibWFwIiwiYSIsImpvaW4iLCJfdHlwZW9mIiwibGl0ZXJhbCIsImpzb25Ub0pTUHJvcHMiLCJqc29uVG9KUyIsInByb3BzIiwiZm9yRWFjaCIsInAiLCJqcyIsImpzVG9KU09OUHJvcHMiLCJqc1RvSlNPTiIsInRyYW5zZm9ybSIsImdldFByb3BzIiwidHJhbnNmb3JtUHJpbWl0aXZlIiwidHJhbnNmb3JtVW5pb24iLCJ0eXBzIiwibCIsImkiLCJfIiwidHJhbnNmb3JtRW51bSIsImNhc2VzIiwiaW5kZXhPZiIsInRyYW5zZm9ybUFycmF5IiwiZWwiLCJ0cmFuc2Zvcm1EYXRlIiwiZCIsIkRhdGUiLCJpc05hTiIsInZhbHVlT2YiLCJ0cmFuc2Zvcm1PYmplY3QiLCJhZGRpdGlvbmFsIiwicmVmIiwicmVzdWx0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlOYW1lcyIsInByb3AiLCJ2IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwidHlwZU1hcCIsInVuaW9uTWVtYmVycyIsImFycmF5SXRlbXMiLCJ1IiwiX2xlbiIsIl9rZXkiLCJvIiwibmFtZSIsIkNvbXB0ZXNSZW5kdXMiLCJDb21wdGVSZW5kdSIsIkNvbnRlbnUiLCJGaW5TZWFuY2UiLCJPcmF0ZXVycyIsIk9yYXRldXJFbGVtZW50IiwiVGV4dGUiLCJQb2ludCIsIlF1YW50aWVtZXMiLCJNZXRhZG9ubmVlcyIsIlNvbW1haXJlIiwiU29tbWFpcmVFbGVtZW50IiwiVGl0cmVTdHJ1Y3QiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvZGViYXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRvIHBhcnNlIHRoaXMgZGF0YTpcbi8vXG4vLyAgIGltcG9ydCB7IENvbnZlcnQsIENvbXB0ZXNSZW5kdXMgfSBmcm9tIFwiLi9maWxlXCI7XG4vL1xuLy8gICBjb25zdCBjb21wdGVSZW5kdSA9IENvbnZlcnQudG9Db21wdGVzUmVuZHVzKGpzb24pO1xuLy9cbi8vIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBKU09OIGRvZXNuJ3Rcbi8vIG1hdGNoIHRoZSBleHBlY3RlZCBpbnRlcmZhY2UsIGV2ZW4gaWYgdGhlIEpTT04gaXMgdmFsaWQuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcHRlc1JlbmR1cyB7XG4gIGNvbXB0ZXNSZW5kdXM6IENvbXB0ZVJlbmR1W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb21wdGVSZW5kdSB7XG4gIHNjaGVtYVZlcnNpb24/OiBzdHJpbmdcbiAgdWlkOiBzdHJpbmdcbiAgc2VhbmNlUmVmOiBzdHJpbmdcbiAgc2Vzc2lvblJlZjogc3RyaW5nXG4gIG1ldGFkb25uZWVzOiBNZXRhZG9ubmVlc1xuICBjb250ZW51OiBDb250ZW51XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudSB7XG4gIHF1YW50aWVtZXM6IFF1YW50aWVtZXNcbiAgb3V2ZXJ0dXJlU2VhbmNlOiBQb2ludFtdIHwgUG9pbnRcbiAgcG9pbnQ6IFBvaW50W10gfCBQb2ludFxuICBmaW5TZWFuY2U/OiBGaW5TZWFuY2VcbiAgcGFyYWdyYXBoZT86IFBvaW50W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaW5TZWFuY2Uge1xuICBwb2ludDogUG9pbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcmF0ZXVycyB7XG4gIG9yYXRldXI6IE9yYXRldXJFbGVtZW50W10gfCBPcmF0ZXVyRWxlbWVudFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9yYXRldXJFbGVtZW50IHtcbiAgbm9tOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZFxuICBxdWFsaXRlOiBzdHJpbmcgfCB1bmRlZmluZWRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXh0ZSB7XG4gIF8/OiBzdHJpbmdcbiAgaWRfc3ljZXJvbj86IHN0cmluZ1xuICBzdGltZT86IHN0cmluZ1xuICBzdXA/OiBzdHJpbmdcbiAgbGllbkFkdD86IFRleHRlW10gfCBUZXh0ZVxufVxuXG5leHBvcnQgZW51bSBEZWNpc2lvbiB7XG4gIEFkb3B0aW9uQW1lbmRlbWVudE1haW5MZXbDqWVBZHQgPSBcIkFET1BUSU9OIGFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBhZHRcIixcbiAgQWRvcHRpb25EVW5BcnRpY2xlVm90ZcOATWFpbkxldsOpZSA9IFwiQURPUFRJT04gZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gIEFkb3B0aW9uRFVuU291c0FtZW5kZW1lbnRNYWluTGV2w6llU3NBZHQgPSBcIkFET1BUSU9OIGTigJl1biBzb3VzLWFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBzcy1hZHRcIixcbiAgQWRvcHRpb25EZVBsdXNpZXVyc0FtZW5kZW1lbnRzTWFpbkxldsOpZUFkdHMgPSBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBhbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIGFkdHNcIixcbiAgQWRvcHRpb25EZVBsdXNpZXVyc1NvdXNBbWVuZGVtZW50c01haW5MZXbDqWVTc0FkdHMgPSBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBzb3VzLWFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgc3MtYWR0c1wiLFxuICBFbXB0eSA9IFwiXCIsXG4gIFJlamV0RFVuQW1lbmRlbWVudE1haW5MZXbDqWVBZHQgPSBcIlJFSkVUIGTigJl1biBhbWVuZGVtZW50IChtYWluIGxldsOpZSkgYWR0XCIsXG4gIFJlamV0RFVuQXJ0aWNsZVZvdGXDgE1haW5MZXbDqWUgPSBcIlJFSkVUIGTigJl1biBhcnRpY2xlICh2b3RlIMOgIG1haW4gbGV2w6llKVwiLFxuICBSZWpldERVblNvdXNBbWVuZGVtZW50TWFpbkxldsOpZVNzQWR0ID0gXCJSRUpFVCBk4oCZdW4gc291cy1hbWVuZGVtZW50IChtYWluIGxldsOpZSkgc3MtYWR0XCIsXG4gIFJlamV0RGVQbHVzaWV1cnNBbWVuZGVtZW50c01haW5MZXbDqWVBZHRzID0gXCJSRUpFVCBkZSBwbHVzaWV1cnMgYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBhZHRzXCIsXG4gIFJlamV0RGVQbHVzaWV1cnNTb3VzQW1lbmRlbWVudHNNYWluTGV2w6llU3NBZHRzID0gXCJSRUpFVCBkZSBwbHVzaWV1cnMgc291cy1hbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIHNzLWFkdHNcIixcbiAgUmVqZXRNb3Rpb25EZVJlamV0UHLDqWFsYWJsZU1haW5MZXbDqWUgPSBcIlJFSkVUIG1vdGlvbiBkZSByZWpldCBwcsOpYWxhYmxlIChtYWluIGxldsOpZSlcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2ludCB7XG4gIG5pdnBvaW50Pzogc3RyaW5nXG4gIHZhbGV1cl9wdHNvZGo/OiBzdHJpbmdcbiAgb3JkaW5hbF9wcmlzZT86IHN0cmluZ1xuICBpZF9wcmVwYXJhdGlvbj86IHN0cmluZ1xuICBvcmRyZV9hYnNvbHVfc2VhbmNlPzogc3RyaW5nXG4gIGNvZGVfZ3JhbW1haXJlPzogc3RyaW5nXG4gIGNvZGVfc3R5bGU/OiBzdHJpbmdcbiAgY29kZV9wYXJvbGU/OiBzdHJpbmdcbiAgc29tbWFpcmU/OiBzdHJpbmdcbiAgaWRfc3ljZXJvbj86IHN0cmluZ1xuICB2YWxldXI/OiBzdHJpbmdcbiAgb3JhdGV1cnM/OiBPcmF0ZXVycyB8IHN0cmluZ1xuICB0ZXh0ZT86IFRleHRlIHwgc3RyaW5nXG4gIHBhcmFncmFwaGU/OiBQb2ludFtdIHwgUG9pbnRcbiAgaW50ZXJFeHRyYWN0aW9uPzogUG9pbnRbXSB8IFBvaW50XG4gIHBvaW50PzogUG9pbnRbXSB8IFBvaW50XG4gIHN0cnVjdHVyZT86IHN0cmluZ1xuICBpZF9hY3RldXI/OiBzdHJpbmdcbiAgaWRfbWFuZGF0Pzogc3RyaW5nXG4gIGlkX25vbWluYXRpb25fb2U/OiBzdHJpbmdcbiAgaWRfbm9taW5hdGlvbl9vcD86IHN0cmluZ1xuICBvcmF0ZXVyPzogc3RyaW5nXG4gIGJpYmFyZD86IHN0cmluZ1xuICBhcnQ/OiBzdHJpbmdcbiAgYWR0Pzogc3RyaW5nXG4gIHNzYWR0Pzogc3RyaW5nXG4gIHJvbGVkZWJhdD86IHN0cmluZ1xuICBjaGFuZ2VtZW50UHJlc2lkZW5jZT86IFBvaW50XG4gIHR5cGVfZGViYXQ/OiBzdHJpbmdcbiAgZGVjaXNpb24/OiBEZWNpc2lvblxuICBvdXZlcnR1cmVTZWFuY2U/OiBQb2ludFxuICBub21fb3JhdGV1cj86IHN0cmluZ1xuICBxdWFsaXRlPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUXVhbnRpZW1lcyB7XG4gIGpvdXJuZWU6IHN0cmluZ1xuICBzZXNzaW9uOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZXRhZG9ubmVlcyB7XG4gIGRhdGVTZWFuY2U6IHN0cmluZ1xuICBkYXRlU2VhbmNlSm91cjogc3RyaW5nXG4gIG51bVNlYW5jZUpvdXI6IHN0cmluZ1xuICBudW1TZWFuY2U6IHN0cmluZ1xuICB0eXBlQXNzZW1ibGVlOiBzdHJpbmdcbiAgbGVnaXNsYXR1cmU6IHN0cmluZ1xuICBzZXNzaW9uOiBzdHJpbmdcbiAgbm9tRmljaGllckpvOiBzdHJpbmdcbiAgdmFsaWRpdGU6IHN0cmluZ1xuICBldGF0OiBzdHJpbmdcbiAgZGlmZnVzaW9uOiBzdHJpbmdcbiAgdmVyc2lvbjogc3RyaW5nXG4gIGVudmlyb25uZW1lbnQ6IHN0cmluZ1xuICBoZXVyZUdlbmVyYXRpb246IERhdGVcbiAgc29tbWFpcmU6IFNvbW1haXJlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU29tbWFpcmUge1xuICBwcmVzaWRlbnRTZWFuY2U6IFRleHRlXG4gIHNvbW1haXJlMTogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgc29tbWFpcmUzPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgc29tbWFpcmUyPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgcGFyYT86IFRleHRlW10gfCBUZXh0ZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNvbW1haXJlRWxlbWVudCB7XG4gIHZhbGV1cl9wdHNfb2RqPzogc3RyaW5nXG4gIHRpdHJlU3RydWN0OiBUaXRyZVN0cnVjdFxuICBwYXJhPzogQXJyYXk8VGV4dGUgfCBzdHJpbmc+IHwgVGV4dGVcbiAgc29tbWFpcmUyPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgc29tbWFpcmUzPzogU29tbWFpcmVFbGVtZW50W10gfCBTb21tYWlyZUVsZW1lbnRcbiAgcHJlc2lkZW50U2VhbmNlPzogVGV4dGVbXSB8IFRleHRlXG4gIHR5cGVfZGViYXQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUaXRyZVN0cnVjdCB7XG4gIGlkX3N5Y2Vyb246IHN0cmluZ1xuICBpbnRpdHVsZT86IHN0cmluZ1xuICBzb3VzSW50aXR1bGU/OiBzdHJpbmdcbiAgdHlwZV9kZWJhdD86IHN0cmluZ1xufVxuXG4vLyBDb252ZXJ0cyBKU09OIHN0cmluZ3MgdG8vZnJvbSB5b3VyIHR5cGVzXG4vLyBhbmQgYXNzZXJ0cyB0aGUgcmVzdWx0cyBvZiBKU09OLnBhcnNlIGF0IHJ1bnRpbWVcbmV4cG9ydCBjbGFzcyBDb252ZXJ0IHtcbiAgcHVibGljIHN0YXRpYyB0b0NvbXB0ZXNSZW5kdXMoanNvbjogc3RyaW5nKTogQ29tcHRlc1JlbmR1cyB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkNvbXB0ZXNSZW5kdXNcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGNvbXB0ZXNSZW5kdXNUb0pzb24odmFsdWU6IENvbXB0ZXNSZW5kdXMpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJDb21wdGVzUmVuZHVzXCIpKSwgbnVsbCwgMilcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdG9Db21wdGVSZW5kdShqc29uOiBzdHJpbmcpOiBDb21wdGVSZW5kdSB7XG4gICAgcmV0dXJuIGNhc3QoSlNPTi5wYXJzZShqc29uKSwgcihcIkNvbXB0ZVJlbmR1XCIpKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjb21wdGVSZW5kdVRvSnNvbih2YWx1ZTogQ29tcHRlUmVuZHUpOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh1bmNhc3QodmFsdWUsIHIoXCJDb21wdGVSZW5kdVwiKSksIG51bGwsIDIpXG4gIH1cbn1cblxuZnVuY3Rpb24gaW52YWxpZFZhbHVlKHR5cDogYW55LCB2YWw6IGFueSwga2V5OiBhbnksIHBhcmVudDogYW55ID0gXCJcIik6IG5ldmVyIHtcbiAgY29uc3QgcHJldHR5VHlwID0gcHJldHR5VHlwZU5hbWUodHlwKVxuICBjb25zdCBwYXJlbnRUZXh0ID0gcGFyZW50ID8gYCBvbiAke3BhcmVudH1gIDogXCJcIlxuICBjb25zdCBrZXlUZXh0ID0ga2V5ID8gYCBmb3Iga2V5IFwiJHtrZXl9XCJgIDogXCJcIlxuICB0aHJvdyBFcnJvcihcbiAgICBgSW52YWxpZCB2YWx1ZSR7a2V5VGV4dH0ke3BhcmVudFRleHR9LiBFeHBlY3RlZCAke3ByZXR0eVR5cH0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgdmFsLFxuICAgICl9YCxcbiAgKVxufVxuXG5mdW5jdGlvbiBwcmV0dHlUeXBlTmFtZSh0eXA6IGFueSk6IHN0cmluZyB7XG4gIGlmIChBcnJheS5pc0FycmF5KHR5cCkpIHtcbiAgICBpZiAodHlwLmxlbmd0aCA9PT0gMiAmJiB0eXBbMF0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGBhbiBvcHRpb25hbCAke3ByZXR0eVR5cGVOYW1lKHR5cFsxXSl9YFxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYG9uZSBvZiBbJHt0eXBcbiAgICAgICAgLm1hcCgoYSkgPT4ge1xuICAgICAgICAgIHJldHVybiBwcmV0dHlUeXBlTmFtZShhKVxuICAgICAgICB9KVxuICAgICAgICAuam9pbihcIiwgXCIpfV1gXG4gICAgfVxuICB9IGVsc2UgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLmxpdGVyYWwgIT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB0eXAubGl0ZXJhbFxuICB9IGVsc2Uge1xuICAgIHJldHVybiB0eXBlb2YgdHlwXG4gIH1cbn1cblxuZnVuY3Rpb24ganNvblRvSlNQcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gIGlmICh0eXAuanNvblRvSlMgPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1hcDogYW55ID0ge31cbiAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiAobWFwW3AuanNvbl0gPSB7IGtleTogcC5qcywgdHlwOiBwLnR5cCB9KSlcbiAgICB0eXAuanNvblRvSlMgPSBtYXBcbiAgfVxuICByZXR1cm4gdHlwLmpzb25Ub0pTXG59XG5cbmZ1bmN0aW9uIGpzVG9KU09OUHJvcHModHlwOiBhbnkpOiBhbnkge1xuICBpZiAodHlwLmpzVG9KU09OID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBtYXA6IGFueSA9IHt9XG4gICAgdHlwLnByb3BzLmZvckVhY2goKHA6IGFueSkgPT4gKG1hcFtwLmpzXSA9IHsga2V5OiBwLmpzb24sIHR5cDogcC50eXAgfSkpXG4gICAgdHlwLmpzVG9KU09OID0gbWFwXG4gIH1cbiAgcmV0dXJuIHR5cC5qc1RvSlNPTlxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm0oXG4gIHZhbDogYW55LFxuICB0eXA6IGFueSxcbiAgZ2V0UHJvcHM6IGFueSxcbiAga2V5OiBhbnkgPSBcIlwiLFxuICBwYXJlbnQ6IGFueSA9IFwiXCIsXG4pOiBhbnkge1xuICBmdW5jdGlvbiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwOiBzdHJpbmcsIHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodHlwZW9mIHR5cCA9PT0gdHlwZW9mIHZhbCkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSwgcGFyZW50KVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtVW5pb24odHlwczogYW55W10sIHZhbDogYW55KTogYW55IHtcbiAgICAvLyB2YWwgbXVzdCB2YWxpZGF0ZSBhZ2FpbnN0IG9uZSB0eXAgaW4gdHlwc1xuICAgIGNvbnN0IGwgPSB0eXBzLmxlbmd0aFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCB0eXAgPSB0eXBzW2ldXG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBnZXRQcm9wcylcbiAgICAgIH0gY2F0Y2ggKF8pIHt9XG4gICAgfVxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwcywgdmFsLCBrZXksIHBhcmVudClcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybUVudW0oY2FzZXM6IHN0cmluZ1tdLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKGNhc2VzLmluZGV4T2YodmFsKSAhPT0gLTEpIHJldHVybiB2YWxcbiAgICByZXR1cm4gaW52YWxpZFZhbHVlKFxuICAgICAgY2FzZXMubWFwKChhKSA9PiB7XG4gICAgICAgIHJldHVybiBsKGEpXG4gICAgICB9KSxcbiAgICAgIHZhbCxcbiAgICAgIGtleSxcbiAgICAgIHBhcmVudCxcbiAgICApXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1BcnJheSh0eXA6IGFueSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IGJlIGFuIGFycmF5IHdpdGggbm8gaW52YWxpZCBlbGVtZW50c1xuICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWwpKSByZXR1cm4gaW52YWxpZFZhbHVlKGwoXCJhcnJheVwiKSwgdmFsLCBrZXksIHBhcmVudClcbiAgICByZXR1cm4gdmFsLm1hcCgoZWwpID0+IHRyYW5zZm9ybShlbCwgdHlwLCBnZXRQcm9wcykpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1EYXRlKHZhbDogYW55KTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCBkID0gbmV3IERhdGUodmFsKVxuICAgIGlmIChpc05hTihkLnZhbHVlT2YoKSkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUobChcIkRhdGVcIiksIHZhbCwga2V5LCBwYXJlbnQpXG4gICAgfVxuICAgIHJldHVybiBkXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1PYmplY3QoXG4gICAgcHJvcHM6IHsgW2s6IHN0cmluZ106IGFueSB9LFxuICAgIGFkZGl0aW9uYWw6IGFueSxcbiAgICB2YWw6IGFueSxcbiAgKTogYW55IHtcbiAgICBpZiAodmFsID09PSBudWxsIHx8IHR5cGVvZiB2YWwgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICByZXR1cm4gaW52YWxpZFZhbHVlKGwocmVmIHx8IFwib2JqZWN0XCIpLCB2YWwsIGtleSwgcGFyZW50KVxuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9XG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocHJvcHMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgY29uc3QgcHJvcCA9IHByb3BzW2tleV1cbiAgICAgIGNvbnN0IHYgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCBrZXkpXG4gICAgICAgID8gdmFsW2tleV1cbiAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgIHJlc3VsdFtwcm9wLmtleV0gPSB0cmFuc2Zvcm0odiwgcHJvcC50eXAsIGdldFByb3BzLCBrZXksIHJlZilcbiAgICB9KVxuICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHZhbCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcywga2V5KSkge1xuICAgICAgICByZXN1bHRba2V5XSA9IHRyYW5zZm9ybSh2YWxba2V5XSwgYWRkaXRpb25hbCwgZ2V0UHJvcHMsIGtleSwgcmVmKVxuICAgICAgfVxuICAgIH0pXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG5cbiAgaWYgKHR5cCA9PT0gXCJhbnlcIikgcmV0dXJuIHZhbFxuICBpZiAodHlwID09PSBudWxsKSB7XG4gICAgaWYgKHZhbCA9PT0gbnVsbCkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSwgcGFyZW50KVxuICB9XG4gIGlmICh0eXAgPT09IGZhbHNlKSByZXR1cm4gaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXksIHBhcmVudClcbiAgbGV0IHJlZjogYW55ID0gdW5kZWZpbmVkXG4gIHdoaWxlICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiICYmIHR5cC5yZWYgIT09IHVuZGVmaW5lZCkge1xuICAgIHJlZiA9IHR5cC5yZWZcbiAgICB0eXAgPSB0eXBlTWFwW3R5cC5yZWZdXG4gIH1cbiAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkgcmV0dXJuIHRyYW5zZm9ybUVudW0odHlwLCB2YWwpXG4gIGlmICh0eXBlb2YgdHlwID09PSBcIm9iamVjdFwiKSB7XG4gICAgcmV0dXJuIHR5cC5oYXNPd25Qcm9wZXJ0eShcInVuaW9uTWVtYmVyc1wiKVxuICAgICAgPyB0cmFuc2Zvcm1Vbmlvbih0eXAudW5pb25NZW1iZXJzLCB2YWwpXG4gICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcImFycmF5SXRlbXNcIilcbiAgICAgICAgPyB0cmFuc2Zvcm1BcnJheSh0eXAuYXJyYXlJdGVtcywgdmFsKVxuICAgICAgICA6IHR5cC5oYXNPd25Qcm9wZXJ0eShcInByb3BzXCIpXG4gICAgICAgICAgPyB0cmFuc2Zvcm1PYmplY3QoZ2V0UHJvcHModHlwKSwgdHlwLmFkZGl0aW9uYWwsIHZhbClcbiAgICAgICAgICA6IGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5LCBwYXJlbnQpXG4gIH1cbiAgLy8gTnVtYmVycyBjYW4gYmUgcGFyc2VkIGJ5IERhdGUgYnV0IHNob3VsZG4ndCBiZS5cbiAgaWYgKHR5cCA9PT0gRGF0ZSAmJiB0eXBlb2YgdmFsICE9PSBcIm51bWJlclwiKSByZXR1cm4gdHJhbnNmb3JtRGF0ZSh2YWwpXG4gIHJldHVybiB0cmFuc2Zvcm1QcmltaXRpdmUodHlwLCB2YWwpXG59XG5cbmZ1bmN0aW9uIGNhc3Q8VD4odmFsOiBhbnksIHR5cDogYW55KTogVCB7XG4gIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGpzb25Ub0pTUHJvcHMpXG59XG5cbmZ1bmN0aW9uIHVuY2FzdDxUPih2YWw6IFQsIHR5cDogYW55KTogYW55IHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNUb0pTT05Qcm9wcylcbn1cblxuZnVuY3Rpb24gbCh0eXA6IGFueSkge1xuICByZXR1cm4geyBsaXRlcmFsOiB0eXAgfVxufVxuXG5mdW5jdGlvbiBhKHR5cDogYW55KSB7XG4gIHJldHVybiB7IGFycmF5SXRlbXM6IHR5cCB9XG59XG5cbmZ1bmN0aW9uIHUoLi4udHlwczogYW55W10pIHtcbiAgcmV0dXJuIHsgdW5pb25NZW1iZXJzOiB0eXBzIH1cbn1cblxuZnVuY3Rpb24gbyhwcm9wczogYW55W10sIGFkZGl0aW9uYWw6IGFueSkge1xuICByZXR1cm4geyBwcm9wcywgYWRkaXRpb25hbCB9XG59XG5cbi8vIGZ1bmN0aW9uIG0oYWRkaXRpb25hbDogYW55KSB7XG4vLyAgICAgcmV0dXJuIHsgcHJvcHM6IFtdLCBhZGRpdGlvbmFsIH07XG4vLyB9XG5cbmZ1bmN0aW9uIHIobmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiB7IHJlZjogbmFtZSB9XG59XG5cbmNvbnN0IHR5cGVNYXA6IGFueSA9IHtcbiAgQ29tcHRlc1JlbmR1czogbyhcbiAgICBbeyBqc29uOiBcImNvbXB0ZXNSZW5kdXNcIiwganM6IFwiY29tcHRlc1JlbmR1c1wiLCB0eXA6IGEocihcIkNvbXB0ZVJlbmR1XCIpKSB9XSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29tcHRlUmVuZHU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInNjaGVtYVZlcnNpb25cIiwganM6IFwic2NoZW1hVmVyc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInVpZFwiLCBqczogXCJ1aWRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJzZWFuY2VSZWZcIiwganM6IFwic2VhbmNlUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInNlc3Npb25SZWZcIiwganM6IFwic2Vzc2lvblJlZlwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJtZXRhZG9ubmVlc1wiLCBqczogXCJtZXRhZG9ubmVlc1wiLCB0eXA6IHIoXCJNZXRhZG9ubmVlc1wiKSB9LFxuICAgICAgeyBqc29uOiBcImNvbnRlbnVcIiwganM6IFwiY29udGVudVwiLCB0eXA6IHIoXCJDb250ZW51XCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgQ29udGVudTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwicXVhbnRpZW1lc1wiLCBqczogXCJxdWFudGllbWVzXCIsIHR5cDogcihcIlF1YW50aWVtZXNcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJvdXZlcnR1cmVTZWFuY2VcIixcbiAgICAgICAganM6IFwib3V2ZXJ0dXJlU2VhbmNlXCIsXG4gICAgICAgIHR5cDogdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInBvaW50XCIsIGpzOiBcInBvaW50XCIsIHR5cDogdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSkgfSxcbiAgICAgIHsganNvbjogXCJmaW5TZWFuY2VcIiwganM6IFwiZmluU2VhbmNlXCIsIHR5cDogdSh1bmRlZmluZWQsIHIoXCJGaW5TZWFuY2VcIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicGFyYWdyYXBoZVwiLFxuICAgICAgICBqczogXCJwYXJhZ3JhcGhlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIGEocihcIlBvaW50XCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIEZpblNlYW5jZTogbyhbeyBqc29uOiBcInBvaW50XCIsIGpzOiBcInBvaW50XCIsIHR5cDogcihcIlBvaW50XCIpIH1dLCBmYWxzZSksXG4gIE9yYXRldXJzOiBvKFxuICAgIFtcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJvcmF0ZXVyXCIsXG4gICAgICAgIGpzOiBcIm9yYXRldXJcIixcbiAgICAgICAgdHlwOiB1KGEocihcIk9yYXRldXJFbGVtZW50XCIpKSwgcihcIk9yYXRldXJFbGVtZW50XCIpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgT3JhdGV1ckVsZW1lbnQ6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIm5vbVwiLCBqczogXCJub21cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZFwiLCBqczogXCJpZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInF1YWxpdGVcIiwganM6IFwicXVhbGl0ZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFRleHRlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJfXCIsIGpzOiBcIl9cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9zeWNlcm9uXCIsIGpzOiBcImlkX3N5Y2Vyb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJzdGltZVwiLCBqczogXCJzdGltZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInN1cFwiLCBqczogXCJzdXBcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJsaWVuQWR0XCIsXG4gICAgICAgIGpzOiBcImxpZW5BZHRcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJUZXh0ZVwiKSksIHIoXCJUZXh0ZVwiKSkpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBQb2ludDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibml2cG9pbnRcIiwganM6IFwibml2cG9pbnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ2YWxldXJfcHRzb2RqXCIsIGpzOiBcInZhbGV1cl9wdHNvZGpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJvcmRpbmFsX3ByaXNlXCIsIGpzOiBcIm9yZGluYWxfcHJpc2VcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9wcmVwYXJhdGlvblwiLCBqczogXCJpZF9wcmVwYXJhdGlvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yZHJlX2Fic29sdV9zZWFuY2VcIixcbiAgICAgICAganM6IFwib3JkcmVfYWJzb2x1X3NlYW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiY29kZV9ncmFtbWFpcmVcIiwganM6IFwiY29kZV9ncmFtbWFpcmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX3N0eWxlXCIsIGpzOiBcImNvZGVfc3R5bGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX3Bhcm9sZVwiLCBqczogXCJjb2RlX3Bhcm9sZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvbW1haXJlXCIsIGpzOiBcInNvbW1haXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaWRfc3ljZXJvblwiLCBqczogXCJpZF9zeWNlcm9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwidmFsZXVyXCIsIGpzOiBcInZhbGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yYXRldXJzXCIsXG4gICAgICAgIGpzOiBcIm9yYXRldXJzXCIsXG4gICAgICAgIHR5cDogdShyKFwiT3JhdGV1cnNcIiksIHUoXCJcIiwgdW5kZWZpbmVkKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInRleHRlXCIsIGpzOiBcInRleHRlXCIsIHR5cDogdShyKFwiVGV4dGVcIiksIHUoXCJcIiwgdW5kZWZpbmVkKSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhZ3JhcGhlXCIsXG4gICAgICAgIGpzOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpbnRlckV4dHJhY3Rpb25cIixcbiAgICAgICAganM6IFwiaW50ZXJFeHRyYWN0aW9uXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiUG9pbnRcIikpLCByKFwiUG9pbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicG9pbnRcIixcbiAgICAgICAganM6IFwicG9pbnRcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJzdHJ1Y3R1cmVcIiwganM6IFwic3RydWN0dXJlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaWRfYWN0ZXVyXCIsIGpzOiBcImlkX2FjdGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkX21hbmRhdFwiLCBqczogXCJpZF9tYW5kYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJpZF9ub21pbmF0aW9uX29lXCIsXG4gICAgICAgIGpzOiBcImlkX25vbWluYXRpb25fb2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImlkX25vbWluYXRpb25fb3BcIixcbiAgICAgICAganM6IFwiaWRfbm9taW5hdGlvbl9vcFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwib3JhdGV1clwiLCBqczogXCJvcmF0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiYmliYXJkXCIsIGpzOiBcImJpYmFyZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImFydFwiLCBqczogXCJhcnRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJhZHRcIiwganM6IFwiYWR0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic3NhZHRcIiwganM6IFwic3NhZHRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJyb2xlZGViYXRcIiwganM6IFwicm9sZWRlYmF0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwidHlwZV9kZWJhdFwiLCBqczogXCJ0eXBlX2RlYmF0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiY2hhbmdlbWVudFByZXNpZGVuY2VcIixcbiAgICAgICAganM6IFwiY2hhbmdlbWVudFByZXNpZGVuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlBvaW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwiZGVjaXNpb25cIiwganM6IFwiZGVjaXNpb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkRlY2lzaW9uXCIpKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm91dmVydHVyZVNlYW5jZVwiLFxuICAgICAgICBqczogXCJvdXZlcnR1cmVTZWFuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgcihcIlBvaW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwibm9tX29yYXRldXJcIiwganM6IFwibm9tX29yYXRldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJxdWFsaXRlXCIsIGpzOiBcInF1YWxpdGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBRdWFudGllbWVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJqb3VybmVlXCIsIGpzOiBcImpvdXJuZWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic2Vzc2lvblwiLCBqczogXCJzZXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIE1ldGFkb25uZWVzOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJkYXRlU2VhbmNlXCIsIGpzOiBcImRhdGVTZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiZGF0ZVNlYW5jZUpvdXJcIiwganM6IFwiZGF0ZVNlYW5jZUpvdXJcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibnVtU2VhbmNlSm91clwiLCBqczogXCJudW1TZWFuY2VKb3VyXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm51bVNlYW5jZVwiLCBqczogXCJudW1TZWFuY2VcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidHlwZUFzc2VtYmxlZVwiLCBqczogXCJ0eXBlQXNzZW1ibGVlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImxlZ2lzbGF0dXJlXCIsIGpzOiBcImxlZ2lzbGF0dXJlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInNlc3Npb25cIiwganM6IFwic2Vzc2lvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJub21GaWNoaWVySm9cIiwganM6IFwibm9tRmljaGllckpvXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZhbGlkaXRlXCIsIGpzOiBcInZhbGlkaXRlXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImV0YXRcIiwganM6IFwiZXRhdFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJkaWZmdXNpb25cIiwganM6IFwiZGlmZnVzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcInZlcnNpb25cIiwganM6IFwidmVyc2lvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJlbnZpcm9ubmVtZW50XCIsIGpzOiBcImVudmlyb25uZW1lbnRcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiaGV1cmVHZW5lcmF0aW9uXCIsIGpzOiBcImhldXJlR2VuZXJhdGlvblwiLCB0eXA6IERhdGUgfSxcbiAgICAgIHsganNvbjogXCJzb21tYWlyZVwiLCBqczogXCJzb21tYWlyZVwiLCB0eXA6IHIoXCJTb21tYWlyZVwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvbW1haXJlOiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJwcmVzaWRlbnRTZWFuY2VcIiwganM6IFwicHJlc2lkZW50U2VhbmNlXCIsIHR5cDogcihcIlRleHRlXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUxXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlMVwiLFxuICAgICAgICB0eXA6IHUoYShyKFwiU29tbWFpcmVFbGVtZW50XCIpKSwgcihcIlNvbW1haXJlRWxlbWVudFwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvbW1haXJlM1wiLFxuICAgICAgICBqczogXCJzb21tYWlyZTNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvbW1haXJlMlwiLFxuICAgICAgICBqczogXCJzb21tYWlyZTJcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBhcmFcIixcbiAgICAgICAganM6IFwicGFyYVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlRleHRlXCIpKSwgcihcIlRleHRlXCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFNvbW1haXJlRWxlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwidmFsZXVyX3B0c19vZGpcIiwganM6IFwidmFsZXVyX3B0c19vZGpcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJ0aXRyZVN0cnVjdFwiLFxuICAgICAgICBqczogXCJ0aXRyZVN0cnVjdFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiVGl0cmVTdHJ1Y3RcIikpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhXCIsXG4gICAgICAgIGpzOiBcInBhcmFcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHUocihcIlRleHRlXCIpLCBcIlwiKSksIHIoXCJUZXh0ZVwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzb21tYWlyZTJcIixcbiAgICAgICAganM6IFwic29tbWFpcmUyXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiU29tbWFpcmVFbGVtZW50XCIpKSwgcihcIlNvbW1haXJlRWxlbWVudFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzb21tYWlyZTNcIixcbiAgICAgICAganM6IFwic29tbWFpcmUzXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiU29tbWFpcmVFbGVtZW50XCIpKSwgcihcIlNvbW1haXJlRWxlbWVudFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwcmVzaWRlbnRTZWFuY2VcIixcbiAgICAgICAganM6IFwicHJlc2lkZW50U2VhbmNlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiVGV4dGVcIikpLCByKFwiVGV4dGVcIikpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidHlwZV9kZWJhdFwiLCBqczogXCJ0eXBlX2RlYmF0XCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGl0cmVTdHJ1Y3Q6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImlkX3N5Y2Vyb25cIiwganM6IFwiaWRfc3ljZXJvblwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJpbnRpdHVsZVwiLCBqczogXCJpbnRpdHVsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNvdXNJbnRpdHVsZVwiLCBqczogXCJzb3VzSW50aXR1bGVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlX2RlYmF0XCIsIGpzOiBcInR5cGVfZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBEZWNpc2lvbjogW1xuICAgIFwiQURPUFRJT04gYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIGFkdFwiLFxuICAgIFwiQURPUFRJT04gZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gICAgXCJBRE9QVElPTiBk4oCZdW4gc291cy1hbWVuZGVtZW50IChtYWluIGxldsOpZSkgc3MtYWR0XCIsXG4gICAgXCJBRE9QVElPTiBkZSBwbHVzaWV1cnMgYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBhZHRzXCIsXG4gICAgXCJBRE9QVElPTiBkZSBwbHVzaWV1cnMgc291cy1hbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIHNzLWFkdHNcIixcbiAgICBcIlwiLFxuICAgIFwiUkVKRVQgZOKAmXVuIGFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBhZHRcIixcbiAgICBcIlJFSkVUIGTigJl1biBhcnRpY2xlICh2b3RlIMOgIG1haW4gbGV2w6llKVwiLFxuICAgIFwiUkVKRVQgZOKAmXVuIHNvdXMtYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIHNzLWFkdFwiLFxuICAgIFwiUkVKRVQgZGUgcGx1c2lldXJzIGFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgYWR0c1wiLFxuICAgIFwiUkVKRVQgZGUgcGx1c2lldXJzIHNvdXMtYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBzcy1hZHRzXCIsXG4gICAgXCJSRUpFVCBtb3Rpb24gZGUgcmVqZXQgcHLDqWFsYWJsZSAobWFpbiBsZXbDqWUpXCIsXG4gIF0sXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUEsSUE2Q1lBLFFBQVEsR0FBQUMsT0FBQSxDQUFBRCxRQUFBLDBCQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQUEsT0FBUkEsUUFBUTtBQUFBO0FBbUdwQjtBQUNBO0FBQUEsSUFDYUUsT0FBTyxHQUFBRCxPQUFBLENBQUFDLE9BQUE7RUFBQSxTQUFBQSxRQUFBO0lBQUFDLGVBQUEsT0FBQUQsT0FBQTtFQUFBO0VBQUEsT0FBQUUsWUFBQSxDQUFBRixPQUFBO0lBQUFHLEdBQUE7SUFBQUMsS0FBQSxFQUNsQixTQUFjQyxlQUFlQSxDQUFDQyxJQUFZLEVBQWlCO01BQ3pELE9BQU9DLElBQUksQ0FBQ0MsSUFBSSxDQUFDQyxLQUFLLENBQUNILElBQUksQ0FBQyxFQUFFSSxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbkQ7RUFBQztJQUFBUCxHQUFBO0lBQUFDLEtBQUEsRUFFRCxT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
@@ -559,4 +559,4 @@ const typeMap = {
559
559
  }], false),
560
560
  Decision: ["ADOPTION amendement (main levée) adt", "ADOPTION d’un article (vote à main levée)", "ADOPTION d’un sous-amendement (main levée) ss-adt", "ADOPTION de plusieurs amendements (main levée) adts", "ADOPTION de plusieurs sous-amendements (main levée) ss-adts", "", "REJET d’un amendement (main levée) adt", "REJET d’un article (vote à main levée)", "REJET d’un sous-amendement (main levée) ss-adt", "REJET de plusieurs amendements (main levée) adts", "REJET de plusieurs sous-amendements (main levée) ss-adts", "REJET motion de rejet préalable (main levée)"]
561
561
  };
562
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZWNpc2lvbiIsIkNvbnZlcnQiLCJ0b0NvbXB0ZXNSZW5kdXMiLCJqc29uIiwiY2FzdCIsIkpTT04iLCJwYXJzZSIsInIiLCJjb21wdGVzUmVuZHVzVG9Kc29uIiwidmFsdWUiLCJzdHJpbmdpZnkiLCJ1bmNhc3QiLCJ0b0NvbXB0ZVJlbmR1IiwiY29tcHRlUmVuZHVUb0pzb24iLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJwYXJlbnQiLCJwcmV0dHlUeXAiLCJwcmV0dHlUeXBlTmFtZSIsInBhcmVudFRleHQiLCJrZXlUZXh0IiwiRXJyb3IiLCJBcnJheSIsImlzQXJyYXkiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJtYXAiLCJhIiwiam9pbiIsImxpdGVyYWwiLCJqc29uVG9KU1Byb3BzIiwianNvblRvSlMiLCJwcm9wcyIsImZvckVhY2giLCJwIiwianMiLCJqc1RvSlNPTlByb3BzIiwianNUb0pTT04iLCJ0cmFuc2Zvcm0iLCJnZXRQcm9wcyIsInRyYW5zZm9ybVByaW1pdGl2ZSIsInRyYW5zZm9ybVVuaW9uIiwidHlwcyIsImwiLCJpIiwiXyIsInRyYW5zZm9ybUVudW0iLCJjYXNlcyIsImluZGV4T2YiLCJ0cmFuc2Zvcm1BcnJheSIsImVsIiwidHJhbnNmb3JtRGF0ZSIsImQiLCJEYXRlIiwiaXNOYU4iLCJ2YWx1ZU9mIiwidHJhbnNmb3JtT2JqZWN0IiwiYWRkaXRpb25hbCIsInJlZiIsInJlc3VsdCIsIk9iamVjdCIsImdldE93blByb3BlcnR5TmFtZXMiLCJwcm9wIiwidiIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInR5cGVNYXAiLCJ1bmlvbk1lbWJlcnMiLCJhcnJheUl0ZW1zIiwidSIsIm8iLCJuYW1lIiwiQ29tcHRlc1JlbmR1cyIsIkNvbXB0ZVJlbmR1IiwiQ29udGVudSIsIkZpblNlYW5jZSIsIk9yYXRldXJzIiwiT3JhdGV1ckVsZW1lbnQiLCJUZXh0ZSIsIlBvaW50IiwiUXVhbnRpZW1lcyIsIk1ldGFkb25uZWVzIiwiU29tbWFpcmUiLCJTb21tYWlyZUVsZW1lbnQiLCJUaXRyZVN0cnVjdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9kZWJhdHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVG8gcGFyc2UgdGhpcyBkYXRhOlxuLy9cbi8vICAgaW1wb3J0IHsgQ29udmVydCwgQ29tcHRlc1JlbmR1cyB9IGZyb20gXCIuL2ZpbGVcIjtcbi8vXG4vLyAgIGNvbnN0IGNvbXB0ZVJlbmR1ID0gQ29udmVydC50b0NvbXB0ZXNSZW5kdXMoanNvbik7XG4vL1xuLy8gVGhlc2UgZnVuY3Rpb25zIHdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIEpTT04gZG9lc24ndFxuLy8gbWF0Y2ggdGhlIGV4cGVjdGVkIGludGVyZmFjZSwgZXZlbiBpZiB0aGUgSlNPTiBpcyB2YWxpZC5cblxuZXhwb3J0IGludGVyZmFjZSBDb21wdGVzUmVuZHVzIHtcbiAgY29tcHRlc1JlbmR1czogQ29tcHRlUmVuZHVbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbXB0ZVJlbmR1IHtcbiAgc2NoZW1hVmVyc2lvbj86IHN0cmluZ1xuICB1aWQ6IHN0cmluZ1xuICBzZWFuY2VSZWY6IHN0cmluZ1xuICBzZXNzaW9uUmVmOiBzdHJpbmdcbiAgbWV0YWRvbm5lZXM6IE1ldGFkb25uZWVzXG4gIGNvbnRlbnU6IENvbnRlbnVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW51IHtcbiAgcXVhbnRpZW1lczogUXVhbnRpZW1lc1xuICBvdXZlcnR1cmVTZWFuY2U6IFBvaW50W10gfCBQb2ludFxuICBwb2ludDogUG9pbnRbXSB8IFBvaW50XG4gIGZpblNlYW5jZT86IEZpblNlYW5jZVxuICBwYXJhZ3JhcGhlPzogUG9pbnRbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpblNlYW5jZSB7XG4gIHBvaW50OiBQb2ludFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9yYXRldXJzIHtcbiAgb3JhdGV1cjogT3JhdGV1ckVsZW1lbnRbXSB8IE9yYXRldXJFbGVtZW50XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3JhdGV1ckVsZW1lbnQge1xuICBub206IHN0cmluZyB8IHVuZGVmaW5lZFxuICBpZDogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIHF1YWxpdGU6IHN0cmluZyB8IHVuZGVmaW5lZFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRlIHtcbiAgXz86IHN0cmluZ1xuICBpZF9zeWNlcm9uPzogc3RyaW5nXG4gIHN0aW1lPzogc3RyaW5nXG4gIHN1cD86IHN0cmluZ1xuICBsaWVuQWR0PzogVGV4dGVbXSB8IFRleHRlXG59XG5cbmV4cG9ydCBlbnVtIERlY2lzaW9uIHtcbiAgQWRvcHRpb25BbWVuZGVtZW50TWFpbkxldsOpZUFkdCA9IFwiQURPUFRJT04gYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIGFkdFwiLFxuICBBZG9wdGlvbkRVbkFydGljbGVWb3Rlw4BNYWluTGV2w6llID0gXCJBRE9QVElPTiBk4oCZdW4gYXJ0aWNsZSAodm90ZSDDoCBtYWluIGxldsOpZSlcIixcbiAgQWRvcHRpb25EVW5Tb3VzQW1lbmRlbWVudE1haW5MZXbDqWVTc0FkdCA9IFwiQURPUFRJT04gZOKAmXVuIHNvdXMtYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIHNzLWFkdFwiLFxuICBBZG9wdGlvbkRlUGx1c2lldXJzQW1lbmRlbWVudHNNYWluTGV2w6llQWR0cyA9IFwiQURPUFRJT04gZGUgcGx1c2lldXJzIGFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgYWR0c1wiLFxuICBBZG9wdGlvbkRlUGx1c2lldXJzU291c0FtZW5kZW1lbnRzTWFpbkxldsOpZVNzQWR0cyA9IFwiQURPUFRJT04gZGUgcGx1c2lldXJzIHNvdXMtYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBzcy1hZHRzXCIsXG4gIEVtcHR5ID0gXCJcIixcbiAgUmVqZXREVW5BbWVuZGVtZW50TWFpbkxldsOpZUFkdCA9IFwiUkVKRVQgZOKAmXVuIGFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBhZHRcIixcbiAgUmVqZXREVW5BcnRpY2xlVm90ZcOATWFpbkxldsOpZSA9IFwiUkVKRVQgZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gIFJlamV0RFVuU291c0FtZW5kZW1lbnRNYWluTGV2w6llU3NBZHQgPSBcIlJFSkVUIGTigJl1biBzb3VzLWFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBzcy1hZHRcIixcbiAgUmVqZXREZVBsdXNpZXVyc0FtZW5kZW1lbnRzTWFpbkxldsOpZUFkdHMgPSBcIlJFSkVUIGRlIHBsdXNpZXVycyBhbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIGFkdHNcIixcbiAgUmVqZXREZVBsdXNpZXVyc1NvdXNBbWVuZGVtZW50c01haW5MZXbDqWVTc0FkdHMgPSBcIlJFSkVUIGRlIHBsdXNpZXVycyBzb3VzLWFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgc3MtYWR0c1wiLFxuICBSZWpldE1vdGlvbkRlUmVqZXRQcsOpYWxhYmxlTWFpbkxldsOpZSA9IFwiUkVKRVQgbW90aW9uIGRlIHJlamV0IHByw6lhbGFibGUgKG1haW4gbGV2w6llKVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvaW50IHtcbiAgbml2cG9pbnQ/OiBzdHJpbmdcbiAgdmFsZXVyX3B0c29kaj86IHN0cmluZ1xuICBvcmRpbmFsX3ByaXNlPzogc3RyaW5nXG4gIGlkX3ByZXBhcmF0aW9uPzogc3RyaW5nXG4gIG9yZHJlX2Fic29sdV9zZWFuY2U/OiBzdHJpbmdcbiAgY29kZV9ncmFtbWFpcmU/OiBzdHJpbmdcbiAgY29kZV9zdHlsZT86IHN0cmluZ1xuICBjb2RlX3Bhcm9sZT86IHN0cmluZ1xuICBzb21tYWlyZT86IHN0cmluZ1xuICBpZF9zeWNlcm9uPzogc3RyaW5nXG4gIHZhbGV1cj86IHN0cmluZ1xuICBvcmF0ZXVycz86IE9yYXRldXJzIHwgc3RyaW5nXG4gIHRleHRlPzogVGV4dGUgfCBzdHJpbmdcbiAgcGFyYWdyYXBoZT86IFBvaW50W10gfCBQb2ludFxuICBpbnRlckV4dHJhY3Rpb24/OiBQb2ludFtdIHwgUG9pbnRcbiAgcG9pbnQ/OiBQb2ludFtdIHwgUG9pbnRcbiAgc3RydWN0dXJlPzogc3RyaW5nXG4gIGlkX2FjdGV1cj86IHN0cmluZ1xuICBpZF9tYW5kYXQ/OiBzdHJpbmdcbiAgaWRfbm9taW5hdGlvbl9vZT86IHN0cmluZ1xuICBpZF9ub21pbmF0aW9uX29wPzogc3RyaW5nXG4gIG9yYXRldXI/OiBzdHJpbmdcbiAgYmliYXJkPzogc3RyaW5nXG4gIGFydD86IHN0cmluZ1xuICBhZHQ/OiBzdHJpbmdcbiAgc3NhZHQ/OiBzdHJpbmdcbiAgcm9sZWRlYmF0Pzogc3RyaW5nXG4gIGNoYW5nZW1lbnRQcmVzaWRlbmNlPzogUG9pbnRcbiAgdHlwZV9kZWJhdD86IHN0cmluZ1xuICBkZWNpc2lvbj86IERlY2lzaW9uXG4gIG91dmVydHVyZVNlYW5jZT86IFBvaW50XG4gIG5vbV9vcmF0ZXVyPzogc3RyaW5nXG4gIHF1YWxpdGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWFudGllbWVzIHtcbiAgam91cm5lZTogc3RyaW5nXG4gIHNlc3Npb246IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1ldGFkb25uZWVzIHtcbiAgZGF0ZVNlYW5jZTogc3RyaW5nXG4gIGRhdGVTZWFuY2VKb3VyOiBzdHJpbmdcbiAgbnVtU2VhbmNlSm91cjogc3RyaW5nXG4gIG51bVNlYW5jZTogc3RyaW5nXG4gIHR5cGVBc3NlbWJsZWU6IHN0cmluZ1xuICBsZWdpc2xhdHVyZTogc3RyaW5nXG4gIHNlc3Npb246IHN0cmluZ1xuICBub21GaWNoaWVySm86IHN0cmluZ1xuICB2YWxpZGl0ZTogc3RyaW5nXG4gIGV0YXQ6IHN0cmluZ1xuICBkaWZmdXNpb246IHN0cmluZ1xuICB2ZXJzaW9uOiBzdHJpbmdcbiAgZW52aXJvbm5lbWVudDogc3RyaW5nXG4gIGhldXJlR2VuZXJhdGlvbjogRGF0ZVxuICBzb21tYWlyZTogU29tbWFpcmVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTb21tYWlyZSB7XG4gIHByZXNpZGVudFNlYW5jZTogVGV4dGVcbiAgc29tbWFpcmUxOiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBzb21tYWlyZTM/OiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBzb21tYWlyZTI/OiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBwYXJhPzogVGV4dGVbXSB8IFRleHRlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU29tbWFpcmVFbGVtZW50IHtcbiAgdmFsZXVyX3B0c19vZGo/OiBzdHJpbmdcbiAgdGl0cmVTdHJ1Y3Q6IFRpdHJlU3RydWN0XG4gIHBhcmE/OiBBcnJheTxUZXh0ZSB8IHN0cmluZz4gfCBUZXh0ZVxuICBzb21tYWlyZTI/OiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBzb21tYWlyZTM/OiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBwcmVzaWRlbnRTZWFuY2U/OiBUZXh0ZVtdIHwgVGV4dGVcbiAgdHlwZV9kZWJhdD86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRpdHJlU3RydWN0IHtcbiAgaWRfc3ljZXJvbjogc3RyaW5nXG4gIGludGl0dWxlPzogc3RyaW5nXG4gIHNvdXNJbnRpdHVsZT86IHN0cmluZ1xuICB0eXBlX2RlYmF0Pzogc3RyaW5nXG59XG5cbi8vIENvbnZlcnRzIEpTT04gc3RyaW5ncyB0by9mcm9tIHlvdXIgdHlwZXNcbi8vIGFuZCBhc3NlcnRzIHRoZSByZXN1bHRzIG9mIEpTT04ucGFyc2UgYXQgcnVudGltZVxuZXhwb3J0IGNsYXNzIENvbnZlcnQge1xuICBwdWJsaWMgc3RhdGljIHRvQ29tcHRlc1JlbmR1cyhqc29uOiBzdHJpbmcpOiBDb21wdGVzUmVuZHVzIHtcbiAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiQ29tcHRlc1JlbmR1c1wiKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgY29tcHRlc1JlbmR1c1RvSnNvbih2YWx1ZTogQ29tcHRlc1JlbmR1cyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIkNvbXB0ZXNSZW5kdXNcIikpLCBudWxsLCAyKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b0NvbXB0ZVJlbmR1KGpzb246IHN0cmluZyk6IENvbXB0ZVJlbmR1IHtcbiAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiQ29tcHRlUmVuZHVcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGNvbXB0ZVJlbmR1VG9Kc29uKHZhbHVlOiBDb21wdGVSZW5kdSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIkNvbXB0ZVJlbmR1XCIpKSwgbnVsbCwgMilcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSwgcGFyZW50OiBhbnkgPSBcIlwiKTogbmV2ZXIge1xuICBjb25zdCBwcmV0dHlUeXAgPSBwcmV0dHlUeXBlTmFtZSh0eXApXG4gIGNvbnN0IHBhcmVudFRleHQgPSBwYXJlbnQgPyBgIG9uICR7cGFyZW50fWAgOiBcIlwiXG4gIGNvbnN0IGtleVRleHQgPSBrZXkgPyBgIGZvciBrZXkgXCIke2tleX1cImAgOiBcIlwiXG4gIHRocm93IEVycm9yKFxuICAgIGBJbnZhbGlkIHZhbHVlJHtrZXlUZXh0fSR7cGFyZW50VGV4dH0uIEV4cGVjdGVkICR7cHJldHR5VHlwfSBidXQgZ290ICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICB2YWwsXG4gICAgKX1gLFxuICApXG59XG5cbmZ1bmN0aW9uIHByZXR0eVR5cGVOYW1lKHR5cDogYW55KTogc3RyaW5nIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkge1xuICAgIGlmICh0eXAubGVuZ3RoID09PSAyICYmIHR5cFswXSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gYGFuIG9wdGlvbmFsICR7cHJldHR5VHlwZU5hbWUodHlwWzFdKX1gXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBgb25lIG9mIFske3R5cFxuICAgICAgICAubWFwKChhKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHByZXR0eVR5cGVOYW1lKGEpXG4gICAgICAgIH0pXG4gICAgICAgIC5qb2luKFwiLCBcIil9XWBcbiAgICB9XG4gIH0gZWxzZSBpZiAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIiAmJiB0eXAubGl0ZXJhbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHR5cC5saXRlcmFsXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHR5cGVvZiB0eXBcbiAgfVxufVxuXG5mdW5jdGlvbiBqc29uVG9KU1Byb3BzKHR5cDogYW55KTogYW55IHtcbiAgaWYgKHR5cC5qc29uVG9KUyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgbWFwOiBhbnkgPSB7fVxuICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IChtYXBbcC5qc29uXSA9IHsga2V5OiBwLmpzLCB0eXA6IHAudHlwIH0pKVxuICAgIHR5cC5qc29uVG9KUyA9IG1hcFxuICB9XG4gIHJldHVybiB0eXAuanNvblRvSlNcbn1cblxuZnVuY3Rpb24ganNUb0pTT05Qcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gIGlmICh0eXAuanNUb0pTT04gPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1hcDogYW55ID0ge31cbiAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiAobWFwW3AuanNdID0geyBrZXk6IHAuanNvbiwgdHlwOiBwLnR5cCB9KSlcbiAgICB0eXAuanNUb0pTT04gPSBtYXBcbiAgfVxuICByZXR1cm4gdHlwLmpzVG9KU09OXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybShcbiAgdmFsOiBhbnksXG4gIHR5cDogYW55LFxuICBnZXRQcm9wczogYW55LFxuICBrZXk6IGFueSA9IFwiXCIsXG4gIHBhcmVudDogYW55ID0gXCJcIixcbik6IGFueSB7XG4gIGZ1bmN0aW9uIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXA6IHN0cmluZywgdmFsOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXBlb2YgdHlwID09PSB0eXBlb2YgdmFsKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5LCBwYXJlbnQpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IHZhbGlkYXRlIGFnYWluc3Qgb25lIHR5cCBpbiB0eXBzXG4gICAgY29uc3QgbCA9IHR5cHMubGVuZ3RoXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgIGNvbnN0IHR5cCA9IHR5cHNbaV1cbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGdldFByb3BzKVxuICAgICAgfSBjYXRjaCAoXykge31cbiAgICB9XG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXBzLCB2YWwsIGtleSwgcGFyZW50KVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtRW51bShjYXNlczogc3RyaW5nW10sIHZhbDogYW55KTogYW55IHtcbiAgICBpZiAoY2FzZXMuaW5kZXhPZih2YWwpICE9PSAtMSkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXG4gICAgICBjYXNlcy5tYXAoKGEpID0+IHtcbiAgICAgICAgcmV0dXJuIGwoYSlcbiAgICAgIH0pLFxuICAgICAgdmFsLFxuICAgICAga2V5LFxuICAgICAgcGFyZW50LFxuICAgIClcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybUFycmF5KHR5cDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgLy8gdmFsIG11c3QgYmUgYW4gYXJyYXkgd2l0aCBubyBpbnZhbGlkIGVsZW1lbnRzXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiBpbnZhbGlkVmFsdWUobChcImFycmF5XCIpLCB2YWwsIGtleSwgcGFyZW50KVxuICAgIHJldHVybiB2YWwubWFwKChlbCkgPT4gdHJhbnNmb3JtKGVsLCB0eXAsIGdldFByb3BzKSlcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybURhdGUodmFsOiBhbnkpOiBhbnkge1xuICAgIGlmICh2YWwgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIGNvbnN0IGQgPSBuZXcgRGF0ZSh2YWwpXG4gICAgaWYgKGlzTmFOKGQudmFsdWVPZigpKSkge1xuICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShsKFwiRGF0ZVwiKSwgdmFsLCBrZXksIHBhcmVudClcbiAgICB9XG4gICAgcmV0dXJuIGRcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybU9iamVjdChcbiAgICBwcm9wczogeyBbazogc3RyaW5nXTogYW55IH0sXG4gICAgYWRkaXRpb25hbDogYW55LFxuICAgIHZhbDogYW55LFxuICApOiBhbnkge1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUobChyZWYgfHwgXCJvYmplY3RcIiksIHZhbCwga2V5LCBwYXJlbnQpXG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdDogYW55ID0ge31cbiAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwcm9wcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBjb25zdCBwcm9wID0gcHJvcHNba2V5XVxuICAgICAgY29uc3QgdiA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2YWwsIGtleSlcbiAgICAgICAgPyB2YWxba2V5XVxuICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgcmVzdWx0W3Byb3Aua2V5XSA9IHRyYW5zZm9ybSh2LCBwcm9wLnR5cCwgZ2V0UHJvcHMsIGtleSwgcmVmKVxuICAgIH0pXG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHByb3BzLCBrZXkpKSB7XG4gICAgICAgIHJlc3VsdFtrZXldID0gdHJhbnNmb3JtKHZhbFtrZXldLCBhZGRpdGlvbmFsLCBnZXRQcm9wcywga2V5LCByZWYpXG4gICAgICB9XG4gICAgfSlcbiAgICByZXR1cm4gcmVzdWx0XG4gIH1cblxuICBpZiAodHlwID09PSBcImFueVwiKSByZXR1cm4gdmFsXG4gIGlmICh0eXAgPT09IG51bGwpIHtcbiAgICBpZiAodmFsID09PSBudWxsKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5LCBwYXJlbnQpXG4gIH1cbiAgaWYgKHR5cCA9PT0gZmFsc2UpIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSwgcGFyZW50KVxuICBsZXQgcmVmOiBhbnkgPSB1bmRlZmluZWRcbiAgd2hpbGUgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLnJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmVmID0gdHlwLnJlZlxuICAgIHR5cCA9IHR5cGVNYXBbdHlwLnJlZl1cbiAgfVxuICBpZiAoQXJyYXkuaXNBcnJheSh0eXApKSByZXR1cm4gdHJhbnNmb3JtRW51bSh0eXAsIHZhbClcbiAgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIpIHtcbiAgICByZXR1cm4gdHlwLmhhc093blByb3BlcnR5KFwidW5pb25NZW1iZXJzXCIpXG4gICAgICA/IHRyYW5zZm9ybVVuaW9uKHR5cC51bmlvbk1lbWJlcnMsIHZhbClcbiAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwiYXJyYXlJdGVtc1wiKVxuICAgICAgICA/IHRyYW5zZm9ybUFycmF5KHR5cC5hcnJheUl0ZW1zLCB2YWwpXG4gICAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwicHJvcHNcIilcbiAgICAgICAgICA/IHRyYW5zZm9ybU9iamVjdChnZXRQcm9wcyh0eXApLCB0eXAuYWRkaXRpb25hbCwgdmFsKVxuICAgICAgICAgIDogaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXksIHBhcmVudClcbiAgfVxuICAvLyBOdW1iZXJzIGNhbiBiZSBwYXJzZWQgYnkgRGF0ZSBidXQgc2hvdWxkbid0IGJlLlxuICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbClcbiAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbClcbn1cblxuZnVuY3Rpb24gY2FzdDxUPih2YWw6IGFueSwgdHlwOiBhbnkpOiBUIHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcylcbn1cblxuZnVuY3Rpb24gdW5jYXN0PFQ+KHZhbDogVCwgdHlwOiBhbnkpOiBhbnkge1xuICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKVxufVxuXG5mdW5jdGlvbiBsKHR5cDogYW55KSB7XG4gIHJldHVybiB7IGxpdGVyYWw6IHR5cCB9XG59XG5cbmZ1bmN0aW9uIGEodHlwOiBhbnkpIHtcbiAgcmV0dXJuIHsgYXJyYXlJdGVtczogdHlwIH1cbn1cblxuZnVuY3Rpb24gdSguLi50eXBzOiBhbnlbXSkge1xuICByZXR1cm4geyB1bmlvbk1lbWJlcnM6IHR5cHMgfVxufVxuXG5mdW5jdGlvbiBvKHByb3BzOiBhbnlbXSwgYWRkaXRpb25hbDogYW55KSB7XG4gIHJldHVybiB7IHByb3BzLCBhZGRpdGlvbmFsIH1cbn1cblxuLy8gZnVuY3Rpb24gbShhZGRpdGlvbmFsOiBhbnkpIHtcbi8vICAgICByZXR1cm4geyBwcm9wczogW10sIGFkZGl0aW9uYWwgfTtcbi8vIH1cblxuZnVuY3Rpb24gcihuYW1lOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHsgcmVmOiBuYW1lIH1cbn1cblxuY29uc3QgdHlwZU1hcDogYW55ID0ge1xuICBDb21wdGVzUmVuZHVzOiBvKFxuICAgIFt7IGpzb246IFwiY29tcHRlc1JlbmR1c1wiLCBqczogXCJjb21wdGVzUmVuZHVzXCIsIHR5cDogYShyKFwiQ29tcHRlUmVuZHVcIikpIH1dLFxuICAgIGZhbHNlLFxuICApLFxuICBDb21wdGVSZW5kdTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwic2NoZW1hVmVyc2lvblwiLCBqczogXCJzY2hlbWFWZXJzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNlYW5jZVJlZlwiLCBqczogXCJzZWFuY2VSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic2Vzc2lvblJlZlwiLCBqczogXCJzZXNzaW9uUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm1ldGFkb25uZWVzXCIsIGpzOiBcIm1ldGFkb25uZWVzXCIsIHR5cDogcihcIk1ldGFkb25uZWVzXCIpIH0sXG4gICAgICB7IGpzb246IFwiY29udGVudVwiLCBqczogXCJjb250ZW51XCIsIHR5cDogcihcIkNvbnRlbnVcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDb250ZW51OiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJxdWFudGllbWVzXCIsIGpzOiBcInF1YW50aWVtZXNcIiwgdHlwOiByKFwiUXVhbnRpZW1lc1wiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm91dmVydHVyZVNlYW5jZVwiLFxuICAgICAgICBqczogXCJvdXZlcnR1cmVTZWFuY2VcIixcbiAgICAgICAgdHlwOiB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwicG9pbnRcIiwganM6IFwicG9pbnRcIiwgdHlwOiB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSB9LFxuICAgICAgeyBqc29uOiBcImZpblNlYW5jZVwiLCBqczogXCJmaW5TZWFuY2VcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkZpblNlYW5jZVwiKSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhZ3JhcGhlXCIsXG4gICAgICAgIGpzOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiUG9pbnRcIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRmluU2VhbmNlOiBvKFt7IGpzb246IFwicG9pbnRcIiwganM6IFwicG9pbnRcIiwgdHlwOiByKFwiUG9pbnRcIikgfV0sIGZhbHNlKSxcbiAgT3JhdGV1cnM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yYXRldXJcIixcbiAgICAgICAganM6IFwib3JhdGV1clwiLFxuICAgICAgICB0eXA6IHUoYShyKFwiT3JhdGV1ckVsZW1lbnRcIikpLCByKFwiT3JhdGV1ckVsZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBPcmF0ZXVyRWxlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibm9tXCIsIGpzOiBcIm5vbVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkXCIsIGpzOiBcImlkXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwicXVhbGl0ZVwiLCBqczogXCJxdWFsaXRlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGV4dGU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIl9cIiwganM6IFwiX1wiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkX3N5Y2Vyb25cIiwganM6IFwiaWRfc3ljZXJvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInN0aW1lXCIsIGpzOiBcInN0aW1lXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic3VwXCIsIGpzOiBcInN1cFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImxpZW5BZHRcIixcbiAgICAgICAganM6IFwibGllbkFkdFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlRleHRlXCIpKSwgcihcIlRleHRlXCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFBvaW50OiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJuaXZwb2ludFwiLCBqczogXCJuaXZwb2ludFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInZhbGV1cl9wdHNvZGpcIiwganM6IFwidmFsZXVyX3B0c29kalwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcIm9yZGluYWxfcHJpc2VcIiwganM6IFwib3JkaW5hbF9wcmlzZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkX3ByZXBhcmF0aW9uXCIsIGpzOiBcImlkX3ByZXBhcmF0aW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3JkcmVfYWJzb2x1X3NlYW5jZVwiLFxuICAgICAgICBqczogXCJvcmRyZV9hYnNvbHVfc2VhbmNlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX2dyYW1tYWlyZVwiLCBqczogXCJjb2RlX2dyYW1tYWlyZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImNvZGVfc3R5bGVcIiwganM6IFwiY29kZV9zdHlsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImNvZGVfcGFyb2xlXCIsIGpzOiBcImNvZGVfcGFyb2xlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic29tbWFpcmVcIiwganM6IFwic29tbWFpcmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9zeWNlcm9uXCIsIGpzOiBcImlkX3N5Y2Vyb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ2YWxldXJcIiwganM6IFwidmFsZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3JhdGV1cnNcIixcbiAgICAgICAganM6IFwib3JhdGV1cnNcIixcbiAgICAgICAgdHlwOiB1KHIoXCJPcmF0ZXVyc1wiKSwgdShcIlwiLCB1bmRlZmluZWQpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVcIiwganM6IFwidGV4dGVcIiwgdHlwOiB1KHIoXCJUZXh0ZVwiKSwgdShcIlwiLCB1bmRlZmluZWQpKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAganM6IFwicGFyYWdyYXBoZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImludGVyRXh0cmFjdGlvblwiLFxuICAgICAgICBqczogXCJpbnRlckV4dHJhY3Rpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwb2ludFwiLFxuICAgICAgICBqczogXCJwb2ludFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInN0cnVjdHVyZVwiLCBqczogXCJzdHJ1Y3R1cmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9hY3RldXJcIiwganM6IFwiaWRfYWN0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaWRfbWFuZGF0XCIsIGpzOiBcImlkX21hbmRhdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImlkX25vbWluYXRpb25fb2VcIixcbiAgICAgICAganM6IFwiaWRfbm9taW5hdGlvbl9vZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiaWRfbm9taW5hdGlvbl9vcFwiLFxuICAgICAgICBqczogXCJpZF9ub21pbmF0aW9uX29wXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJvcmF0ZXVyXCIsIGpzOiBcIm9yYXRldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJiaWJhcmRcIiwganM6IFwiYmliYXJkXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiYXJ0XCIsIGpzOiBcImFydFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImFkdFwiLCBqczogXCJhZHRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJzc2FkdFwiLCBqczogXCJzc2FkdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInJvbGVkZWJhdFwiLCBqczogXCJyb2xlZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlX2RlYmF0XCIsIGpzOiBcInR5cGVfZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjaGFuZ2VtZW50UHJlc2lkZW5jZVwiLFxuICAgICAgICBqczogXCJjaGFuZ2VtZW50UHJlc2lkZW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiUG9pbnRcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJkZWNpc2lvblwiLCBqczogXCJkZWNpc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGVjaXNpb25cIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3V2ZXJ0dXJlU2VhbmNlXCIsXG4gICAgICAgIGpzOiBcIm91dmVydHVyZVNlYW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiUG9pbnRcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJub21fb3JhdGV1clwiLCBqczogXCJub21fb3JhdGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInF1YWxpdGVcIiwganM6IFwicXVhbGl0ZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFF1YW50aWVtZXM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImpvdXJuZWVcIiwganM6IFwiam91cm5lZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJzZXNzaW9uXCIsIGpzOiBcInNlc3Npb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTWV0YWRvbm5lZXM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImRhdGVTZWFuY2VcIiwganM6IFwiZGF0ZVNlYW5jZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJkYXRlU2VhbmNlSm91clwiLCBqczogXCJkYXRlU2VhbmNlSm91clwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJudW1TZWFuY2VKb3VyXCIsIGpzOiBcIm51bVNlYW5jZUpvdXJcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibnVtU2VhbmNlXCIsIGpzOiBcIm51bVNlYW5jZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlQXNzZW1ibGVlXCIsIGpzOiBcInR5cGVBc3NlbWJsZWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGVnaXNsYXR1cmVcIiwganM6IFwibGVnaXNsYXR1cmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic2Vzc2lvblwiLCBqczogXCJzZXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm5vbUZpY2hpZXJKb1wiLCBqczogXCJub21GaWNoaWVySm9cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidmFsaWRpdGVcIiwganM6IFwidmFsaWRpdGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiZXRhdFwiLCBqczogXCJldGF0XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImRpZmZ1c2lvblwiLCBqczogXCJkaWZmdXNpb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidmVyc2lvblwiLCBqczogXCJ2ZXJzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImVudmlyb25uZW1lbnRcIiwganM6IFwiZW52aXJvbm5lbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJoZXVyZUdlbmVyYXRpb25cIiwganM6IFwiaGV1cmVHZW5lcmF0aW9uXCIsIHR5cDogRGF0ZSB9LFxuICAgICAgeyBqc29uOiBcInNvbW1haXJlXCIsIGpzOiBcInNvbW1haXJlXCIsIHR5cDogcihcIlNvbW1haXJlXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgU29tbWFpcmU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInByZXNpZGVudFNlYW5jZVwiLCBqczogXCJwcmVzaWRlbnRTZWFuY2VcIiwgdHlwOiByKFwiVGV4dGVcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzb21tYWlyZTFcIixcbiAgICAgICAganM6IFwic29tbWFpcmUxXCIsXG4gICAgICAgIHR5cDogdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUzXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlM1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlNvbW1haXJlRWxlbWVudFwiKSksIHIoXCJTb21tYWlyZUVsZW1lbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUyXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlMlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlNvbW1haXJlRWxlbWVudFwiKSksIHIoXCJTb21tYWlyZUVsZW1lbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicGFyYVwiLFxuICAgICAgICBqczogXCJwYXJhXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiVGV4dGVcIikpLCByKFwiVGV4dGVcIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgU29tbWFpcmVFbGVtZW50OiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ2YWxldXJfcHRzX29kalwiLCBqczogXCJ2YWxldXJfcHRzX29kalwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInRpdHJlU3RydWN0XCIsXG4gICAgICAgIGpzOiBcInRpdHJlU3RydWN0XCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUaXRyZVN0cnVjdFwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBhcmFcIixcbiAgICAgICAganM6IFwicGFyYVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEodShyKFwiVGV4dGVcIiksIFwiXCIpKSwgcihcIlRleHRlXCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvbW1haXJlMlwiLFxuICAgICAgICBqczogXCJzb21tYWlyZTJcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvbW1haXJlM1wiLFxuICAgICAgICBqczogXCJzb21tYWlyZTNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInByZXNpZGVudFNlYW5jZVwiLFxuICAgICAgICBqczogXCJwcmVzaWRlbnRTZWFuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJUZXh0ZVwiKSksIHIoXCJUZXh0ZVwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlX2RlYmF0XCIsIGpzOiBcInR5cGVfZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUaXRyZVN0cnVjdDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiaWRfc3ljZXJvblwiLCBqczogXCJpZF9zeWNlcm9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImludGl0dWxlXCIsIGpzOiBcImludGl0dWxlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic291c0ludGl0dWxlXCIsIGpzOiBcInNvdXNJbnRpdHVsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInR5cGVfZGViYXRcIiwganM6IFwidHlwZV9kZWJhdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERlY2lzaW9uOiBbXG4gICAgXCJBRE9QVElPTiBhbWVuZGVtZW50IChtYWluIGxldsOpZSkgYWR0XCIsXG4gICAgXCJBRE9QVElPTiBk4oCZdW4gYXJ0aWNsZSAodm90ZSDDoCBtYWluIGxldsOpZSlcIixcbiAgICBcIkFET1BUSU9OIGTigJl1biBzb3VzLWFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBzcy1hZHRcIixcbiAgICBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBhbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIGFkdHNcIixcbiAgICBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBzb3VzLWFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgc3MtYWR0c1wiLFxuICAgIFwiXCIsXG4gICAgXCJSRUpFVCBk4oCZdW4gYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIGFkdFwiLFxuICAgIFwiUkVKRVQgZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gICAgXCJSRUpFVCBk4oCZdW4gc291cy1hbWVuZGVtZW50IChtYWluIGxldsOpZSkgc3MtYWR0XCIsXG4gICAgXCJSRUpFVCBkZSBwbHVzaWV1cnMgYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBhZHRzXCIsXG4gICAgXCJSRUpFVCBkZSBwbHVzaWV1cnMgc291cy1hbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIHNzLWFkdHNcIixcbiAgICBcIlJFSkVUIG1vdGlvbiBkZSByZWpldCBwcsOpYWxhYmxlIChtYWluIGxldsOpZSlcIixcbiAgXSxcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUE2Q0EsV0FBWUEsUUFBUSwwQkFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFBLE9BQVJBLFFBQVE7QUFBQTtBQW1HcEI7QUFDQTtBQUNBLE9BQU8sTUFBTUMsT0FBTyxDQUFDO0VBQ25CLE9BQWNDLGVBQWVBLENBQUNDLElBQVksRUFBaUI7SUFDekQsT0FBT0MsSUFBSSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0gsSUFBSSxDQUFDLEVBQUVJLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQztFQUNuRDtFQUVBLE9BQWNDLG1CQUFtQkEsQ0FBQ0MsS0FBb0IsRUFBVTtJQUM5RCxPQUFPSixJQUFJLENBQUNLLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDRixLQUFLLEVBQUVGLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7RUFDbkU7RUFFQSxPQUFjSyxhQUFhQSxDQUFDVCxJQUFZLEVBQWU7SUFDckQsT0FBT0MsSUFBSSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0gsSUFBSSxDQUFDLEVBQUVJLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQztFQUNqRDtFQUVBLE9B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
562
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEZWNpc2lvbiIsIkNvbnZlcnQiLCJ0b0NvbXB0ZXNSZW5kdXMiLCJqc29uIiwiY2FzdCIsIkpTT04iLCJwYXJzZSIsInIiLCJjb21wdGVzUmVuZHVzVG9Kc29uIiwidmFsdWUiLCJzdHJpbmdpZnkiLCJ1bmNhc3QiLCJ0b0NvbXB0ZVJlbmR1IiwiY29tcHRlUmVuZHVUb0pzb24iLCJpbnZhbGlkVmFsdWUiLCJ0eXAiLCJ2YWwiLCJrZXkiLCJwYXJlbnQiLCJwcmV0dHlUeXAiLCJwcmV0dHlUeXBlTmFtZSIsInBhcmVudFRleHQiLCJrZXlUZXh0IiwiRXJyb3IiLCJBcnJheSIsImlzQXJyYXkiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJtYXAiLCJhIiwiam9pbiIsImxpdGVyYWwiLCJqc29uVG9KU1Byb3BzIiwianNvblRvSlMiLCJwcm9wcyIsImZvckVhY2giLCJwIiwianMiLCJqc1RvSlNPTlByb3BzIiwianNUb0pTT04iLCJ0cmFuc2Zvcm0iLCJnZXRQcm9wcyIsInRyYW5zZm9ybVByaW1pdGl2ZSIsInRyYW5zZm9ybVVuaW9uIiwidHlwcyIsImwiLCJpIiwiXyIsInRyYW5zZm9ybUVudW0iLCJjYXNlcyIsImluZGV4T2YiLCJ0cmFuc2Zvcm1BcnJheSIsImVsIiwidHJhbnNmb3JtRGF0ZSIsImQiLCJEYXRlIiwiaXNOYU4iLCJ2YWx1ZU9mIiwidHJhbnNmb3JtT2JqZWN0IiwiYWRkaXRpb25hbCIsInJlZiIsInJlc3VsdCIsIk9iamVjdCIsImdldE93blByb3BlcnR5TmFtZXMiLCJwcm9wIiwidiIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInR5cGVNYXAiLCJ1bmlvbk1lbWJlcnMiLCJhcnJheUl0ZW1zIiwidSIsIm8iLCJuYW1lIiwiQ29tcHRlc1JlbmR1cyIsIkNvbXB0ZVJlbmR1IiwiQ29udGVudSIsIkZpblNlYW5jZSIsIk9yYXRldXJzIiwiT3JhdGV1ckVsZW1lbnQiLCJUZXh0ZSIsIlBvaW50IiwiUXVhbnRpZW1lcyIsIk1ldGFkb25uZWVzIiwiU29tbWFpcmUiLCJTb21tYWlyZUVsZW1lbnQiLCJUaXRyZVN0cnVjdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9kZWJhdHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVG8gcGFyc2UgdGhpcyBkYXRhOlxuLy9cbi8vICAgaW1wb3J0IHsgQ29udmVydCwgQ29tcHRlc1JlbmR1cyB9IGZyb20gXCIuL2ZpbGVcIjtcbi8vXG4vLyAgIGNvbnN0IGNvbXB0ZVJlbmR1ID0gQ29udmVydC50b0NvbXB0ZXNSZW5kdXMoanNvbik7XG4vL1xuLy8gVGhlc2UgZnVuY3Rpb25zIHdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIEpTT04gZG9lc24ndFxuLy8gbWF0Y2ggdGhlIGV4cGVjdGVkIGludGVyZmFjZSwgZXZlbiBpZiB0aGUgSlNPTiBpcyB2YWxpZC5cblxuZXhwb3J0IGludGVyZmFjZSBDb21wdGVzUmVuZHVzIHtcbiAgY29tcHRlc1JlbmR1czogQ29tcHRlUmVuZHVbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbXB0ZVJlbmR1IHtcbiAgc2NoZW1hVmVyc2lvbj86IHN0cmluZ1xuICB1aWQ6IHN0cmluZ1xuICBzZWFuY2VSZWY6IHN0cmluZ1xuICBzZXNzaW9uUmVmOiBzdHJpbmdcbiAgbWV0YWRvbm5lZXM6IE1ldGFkb25uZWVzXG4gIGNvbnRlbnU6IENvbnRlbnVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW51IHtcbiAgcXVhbnRpZW1lczogUXVhbnRpZW1lc1xuICBvdXZlcnR1cmVTZWFuY2U6IFBvaW50W10gfCBQb2ludFxuICBwb2ludDogUG9pbnRbXSB8IFBvaW50XG4gIGZpblNlYW5jZT86IEZpblNlYW5jZVxuICBwYXJhZ3JhcGhlPzogUG9pbnRbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpblNlYW5jZSB7XG4gIHBvaW50OiBQb2ludFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9yYXRldXJzIHtcbiAgb3JhdGV1cjogT3JhdGV1ckVsZW1lbnRbXSB8IE9yYXRldXJFbGVtZW50XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3JhdGV1ckVsZW1lbnQge1xuICBub206IHN0cmluZyB8IHVuZGVmaW5lZFxuICBpZDogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIHF1YWxpdGU6IHN0cmluZyB8IHVuZGVmaW5lZFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRleHRlIHtcbiAgXz86IHN0cmluZ1xuICBpZF9zeWNlcm9uPzogc3RyaW5nXG4gIHN0aW1lPzogc3RyaW5nXG4gIHN1cD86IHN0cmluZ1xuICBsaWVuQWR0PzogVGV4dGVbXSB8IFRleHRlXG59XG5cbmV4cG9ydCBlbnVtIERlY2lzaW9uIHtcbiAgQWRvcHRpb25BbWVuZGVtZW50TWFpbkxldsOpZUFkdCA9IFwiQURPUFRJT04gYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIGFkdFwiLFxuICBBZG9wdGlvbkRVbkFydGljbGVWb3Rlw4BNYWluTGV2w6llID0gXCJBRE9QVElPTiBk4oCZdW4gYXJ0aWNsZSAodm90ZSDDoCBtYWluIGxldsOpZSlcIixcbiAgQWRvcHRpb25EVW5Tb3VzQW1lbmRlbWVudE1haW5MZXbDqWVTc0FkdCA9IFwiQURPUFRJT04gZOKAmXVuIHNvdXMtYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIHNzLWFkdFwiLFxuICBBZG9wdGlvbkRlUGx1c2lldXJzQW1lbmRlbWVudHNNYWluTGV2w6llQWR0cyA9IFwiQURPUFRJT04gZGUgcGx1c2lldXJzIGFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgYWR0c1wiLFxuICBBZG9wdGlvbkRlUGx1c2lldXJzU291c0FtZW5kZW1lbnRzTWFpbkxldsOpZVNzQWR0cyA9IFwiQURPUFRJT04gZGUgcGx1c2lldXJzIHNvdXMtYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBzcy1hZHRzXCIsXG4gIEVtcHR5ID0gXCJcIixcbiAgUmVqZXREVW5BbWVuZGVtZW50TWFpbkxldsOpZUFkdCA9IFwiUkVKRVQgZOKAmXVuIGFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBhZHRcIixcbiAgUmVqZXREVW5BcnRpY2xlVm90ZcOATWFpbkxldsOpZSA9IFwiUkVKRVQgZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gIFJlamV0RFVuU291c0FtZW5kZW1lbnRNYWluTGV2w6llU3NBZHQgPSBcIlJFSkVUIGTigJl1biBzb3VzLWFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBzcy1hZHRcIixcbiAgUmVqZXREZVBsdXNpZXVyc0FtZW5kZW1lbnRzTWFpbkxldsOpZUFkdHMgPSBcIlJFSkVUIGRlIHBsdXNpZXVycyBhbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIGFkdHNcIixcbiAgUmVqZXREZVBsdXNpZXVyc1NvdXNBbWVuZGVtZW50c01haW5MZXbDqWVTc0FkdHMgPSBcIlJFSkVUIGRlIHBsdXNpZXVycyBzb3VzLWFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgc3MtYWR0c1wiLFxuICBSZWpldE1vdGlvbkRlUmVqZXRQcsOpYWxhYmxlTWFpbkxldsOpZSA9IFwiUkVKRVQgbW90aW9uIGRlIHJlamV0IHByw6lhbGFibGUgKG1haW4gbGV2w6llKVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvaW50IHtcbiAgbml2cG9pbnQ/OiBzdHJpbmdcbiAgdmFsZXVyX3B0c29kaj86IHN0cmluZ1xuICBvcmRpbmFsX3ByaXNlPzogc3RyaW5nXG4gIGlkX3ByZXBhcmF0aW9uPzogc3RyaW5nXG4gIG9yZHJlX2Fic29sdV9zZWFuY2U/OiBzdHJpbmdcbiAgY29kZV9ncmFtbWFpcmU/OiBzdHJpbmdcbiAgY29kZV9zdHlsZT86IHN0cmluZ1xuICBjb2RlX3Bhcm9sZT86IHN0cmluZ1xuICBzb21tYWlyZT86IHN0cmluZ1xuICBpZF9zeWNlcm9uPzogc3RyaW5nXG4gIHZhbGV1cj86IHN0cmluZ1xuICBvcmF0ZXVycz86IE9yYXRldXJzIHwgc3RyaW5nXG4gIHRleHRlPzogVGV4dGUgfCBzdHJpbmdcbiAgcGFyYWdyYXBoZT86IFBvaW50W10gfCBQb2ludFxuICBpbnRlckV4dHJhY3Rpb24/OiBQb2ludFtdIHwgUG9pbnRcbiAgcG9pbnQ/OiBQb2ludFtdIHwgUG9pbnRcbiAgc3RydWN0dXJlPzogc3RyaW5nXG4gIGlkX2FjdGV1cj86IHN0cmluZ1xuICBpZF9tYW5kYXQ/OiBzdHJpbmdcbiAgaWRfbm9taW5hdGlvbl9vZT86IHN0cmluZ1xuICBpZF9ub21pbmF0aW9uX29wPzogc3RyaW5nXG4gIG9yYXRldXI/OiBzdHJpbmdcbiAgYmliYXJkPzogc3RyaW5nXG4gIGFydD86IHN0cmluZ1xuICBhZHQ/OiBzdHJpbmdcbiAgc3NhZHQ/OiBzdHJpbmdcbiAgcm9sZWRlYmF0Pzogc3RyaW5nXG4gIGNoYW5nZW1lbnRQcmVzaWRlbmNlPzogUG9pbnRcbiAgdHlwZV9kZWJhdD86IHN0cmluZ1xuICBkZWNpc2lvbj86IERlY2lzaW9uXG4gIG91dmVydHVyZVNlYW5jZT86IFBvaW50XG4gIG5vbV9vcmF0ZXVyPzogc3RyaW5nXG4gIHF1YWxpdGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWFudGllbWVzIHtcbiAgam91cm5lZTogc3RyaW5nXG4gIHNlc3Npb246IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1ldGFkb25uZWVzIHtcbiAgZGF0ZVNlYW5jZTogc3RyaW5nXG4gIGRhdGVTZWFuY2VKb3VyOiBzdHJpbmdcbiAgbnVtU2VhbmNlSm91cjogc3RyaW5nXG4gIG51bVNlYW5jZTogc3RyaW5nXG4gIHR5cGVBc3NlbWJsZWU6IHN0cmluZ1xuICBsZWdpc2xhdHVyZTogc3RyaW5nXG4gIHNlc3Npb246IHN0cmluZ1xuICBub21GaWNoaWVySm86IHN0cmluZ1xuICB2YWxpZGl0ZTogc3RyaW5nXG4gIGV0YXQ6IHN0cmluZ1xuICBkaWZmdXNpb246IHN0cmluZ1xuICB2ZXJzaW9uOiBzdHJpbmdcbiAgZW52aXJvbm5lbWVudDogc3RyaW5nXG4gIGhldXJlR2VuZXJhdGlvbjogRGF0ZVxuICBzb21tYWlyZTogU29tbWFpcmVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTb21tYWlyZSB7XG4gIHByZXNpZGVudFNlYW5jZTogVGV4dGVcbiAgc29tbWFpcmUxOiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBzb21tYWlyZTM/OiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBzb21tYWlyZTI/OiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBwYXJhPzogVGV4dGVbXSB8IFRleHRlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU29tbWFpcmVFbGVtZW50IHtcbiAgdmFsZXVyX3B0c19vZGo/OiBzdHJpbmdcbiAgdGl0cmVTdHJ1Y3Q6IFRpdHJlU3RydWN0XG4gIHBhcmE/OiBBcnJheTxUZXh0ZSB8IHN0cmluZz4gfCBUZXh0ZVxuICBzb21tYWlyZTI/OiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBzb21tYWlyZTM/OiBTb21tYWlyZUVsZW1lbnRbXSB8IFNvbW1haXJlRWxlbWVudFxuICBwcmVzaWRlbnRTZWFuY2U/OiBUZXh0ZVtdIHwgVGV4dGVcbiAgdHlwZV9kZWJhdD86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRpdHJlU3RydWN0IHtcbiAgaWRfc3ljZXJvbjogc3RyaW5nXG4gIGludGl0dWxlPzogc3RyaW5nXG4gIHNvdXNJbnRpdHVsZT86IHN0cmluZ1xuICB0eXBlX2RlYmF0Pzogc3RyaW5nXG59XG5cbi8vIENvbnZlcnRzIEpTT04gc3RyaW5ncyB0by9mcm9tIHlvdXIgdHlwZXNcbi8vIGFuZCBhc3NlcnRzIHRoZSByZXN1bHRzIG9mIEpTT04ucGFyc2UgYXQgcnVudGltZVxuZXhwb3J0IGNsYXNzIENvbnZlcnQge1xuICBwdWJsaWMgc3RhdGljIHRvQ29tcHRlc1JlbmR1cyhqc29uOiBzdHJpbmcpOiBDb21wdGVzUmVuZHVzIHtcbiAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiQ29tcHRlc1JlbmR1c1wiKSlcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgY29tcHRlc1JlbmR1c1RvSnNvbih2YWx1ZTogQ29tcHRlc1JlbmR1cyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIkNvbXB0ZXNSZW5kdXNcIikpLCBudWxsLCAyKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b0NvbXB0ZVJlbmR1KGpzb246IHN0cmluZyk6IENvbXB0ZVJlbmR1IHtcbiAgICByZXR1cm4gY2FzdChKU09OLnBhcnNlKGpzb24pLCByKFwiQ29tcHRlUmVuZHVcIikpXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGNvbXB0ZVJlbmR1VG9Kc29uKHZhbHVlOiBDb21wdGVSZW5kdSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHVuY2FzdCh2YWx1ZSwgcihcIkNvbXB0ZVJlbmR1XCIpKSwgbnVsbCwgMilcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnZhbGlkVmFsdWUodHlwOiBhbnksIHZhbDogYW55LCBrZXk6IGFueSwgcGFyZW50OiBhbnkgPSBcIlwiKTogbmV2ZXIge1xuICBjb25zdCBwcmV0dHlUeXAgPSBwcmV0dHlUeXBlTmFtZSh0eXApXG4gIGNvbnN0IHBhcmVudFRleHQgPSBwYXJlbnQgPyBgIG9uICR7cGFyZW50fWAgOiBcIlwiXG4gIGNvbnN0IGtleVRleHQgPSBrZXkgPyBgIGZvciBrZXkgXCIke2tleX1cImAgOiBcIlwiXG4gIHRocm93IEVycm9yKFxuICAgIGBJbnZhbGlkIHZhbHVlJHtrZXlUZXh0fSR7cGFyZW50VGV4dH0uIEV4cGVjdGVkICR7cHJldHR5VHlwfSBidXQgZ290ICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICB2YWwsXG4gICAgKX1gLFxuICApXG59XG5cbmZ1bmN0aW9uIHByZXR0eVR5cGVOYW1lKHR5cDogYW55KTogc3RyaW5nIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkodHlwKSkge1xuICAgIGlmICh0eXAubGVuZ3RoID09PSAyICYmIHR5cFswXSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gYGFuIG9wdGlvbmFsICR7cHJldHR5VHlwZU5hbWUodHlwWzFdKX1gXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBgb25lIG9mIFske3R5cFxuICAgICAgICAubWFwKChhKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHByZXR0eVR5cGVOYW1lKGEpXG4gICAgICAgIH0pXG4gICAgICAgIC5qb2luKFwiLCBcIil9XWBcbiAgICB9XG4gIH0gZWxzZSBpZiAodHlwZW9mIHR5cCA9PT0gXCJvYmplY3RcIiAmJiB0eXAubGl0ZXJhbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHR5cC5saXRlcmFsXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHR5cGVvZiB0eXBcbiAgfVxufVxuXG5mdW5jdGlvbiBqc29uVG9KU1Byb3BzKHR5cDogYW55KTogYW55IHtcbiAgaWYgKHR5cC5qc29uVG9KUyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgbWFwOiBhbnkgPSB7fVxuICAgIHR5cC5wcm9wcy5mb3JFYWNoKChwOiBhbnkpID0+IChtYXBbcC5qc29uXSA9IHsga2V5OiBwLmpzLCB0eXA6IHAudHlwIH0pKVxuICAgIHR5cC5qc29uVG9KUyA9IG1hcFxuICB9XG4gIHJldHVybiB0eXAuanNvblRvSlNcbn1cblxuZnVuY3Rpb24ganNUb0pTT05Qcm9wcyh0eXA6IGFueSk6IGFueSB7XG4gIGlmICh0eXAuanNUb0pTT04gPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1hcDogYW55ID0ge31cbiAgICB0eXAucHJvcHMuZm9yRWFjaCgocDogYW55KSA9PiAobWFwW3AuanNdID0geyBrZXk6IHAuanNvbiwgdHlwOiBwLnR5cCB9KSlcbiAgICB0eXAuanNUb0pTT04gPSBtYXBcbiAgfVxuICByZXR1cm4gdHlwLmpzVG9KU09OXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybShcbiAgdmFsOiBhbnksXG4gIHR5cDogYW55LFxuICBnZXRQcm9wczogYW55LFxuICBrZXk6IGFueSA9IFwiXCIsXG4gIHBhcmVudDogYW55ID0gXCJcIixcbik6IGFueSB7XG4gIGZ1bmN0aW9uIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXA6IHN0cmluZywgdmFsOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXBlb2YgdHlwID09PSB0eXBlb2YgdmFsKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5LCBwYXJlbnQpXG4gIH1cblxuICBmdW5jdGlvbiB0cmFuc2Zvcm1Vbmlvbih0eXBzOiBhbnlbXSwgdmFsOiBhbnkpOiBhbnkge1xuICAgIC8vIHZhbCBtdXN0IHZhbGlkYXRlIGFnYWluc3Qgb25lIHR5cCBpbiB0eXBzXG4gICAgY29uc3QgbCA9IHR5cHMubGVuZ3RoXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgIGNvbnN0IHR5cCA9IHR5cHNbaV1cbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiB0cmFuc2Zvcm0odmFsLCB0eXAsIGdldFByb3BzKVxuICAgICAgfSBjYXRjaCAoXykge31cbiAgICB9XG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXBzLCB2YWwsIGtleSwgcGFyZW50KVxuICB9XG5cbiAgZnVuY3Rpb24gdHJhbnNmb3JtRW51bShjYXNlczogc3RyaW5nW10sIHZhbDogYW55KTogYW55IHtcbiAgICBpZiAoY2FzZXMuaW5kZXhPZih2YWwpICE9PSAtMSkgcmV0dXJuIHZhbFxuICAgIHJldHVybiBpbnZhbGlkVmFsdWUoXG4gICAgICBjYXNlcy5tYXAoKGEpID0+IHtcbiAgICAgICAgcmV0dXJuIGwoYSlcbiAgICAgIH0pLFxuICAgICAgdmFsLFxuICAgICAga2V5LFxuICAgICAgcGFyZW50LFxuICAgIClcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybUFycmF5KHR5cDogYW55LCB2YWw6IGFueSk6IGFueSB7XG4gICAgLy8gdmFsIG11c3QgYmUgYW4gYXJyYXkgd2l0aCBubyBpbnZhbGlkIGVsZW1lbnRzXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiBpbnZhbGlkVmFsdWUobChcImFycmF5XCIpLCB2YWwsIGtleSwgcGFyZW50KVxuICAgIHJldHVybiB2YWwubWFwKChlbCkgPT4gdHJhbnNmb3JtKGVsLCB0eXAsIGdldFByb3BzKSlcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybURhdGUodmFsOiBhbnkpOiBhbnkge1xuICAgIGlmICh2YWwgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIGNvbnN0IGQgPSBuZXcgRGF0ZSh2YWwpXG4gICAgaWYgKGlzTmFOKGQudmFsdWVPZigpKSkge1xuICAgICAgcmV0dXJuIGludmFsaWRWYWx1ZShsKFwiRGF0ZVwiKSwgdmFsLCBrZXksIHBhcmVudClcbiAgICB9XG4gICAgcmV0dXJuIGRcbiAgfVxuXG4gIGZ1bmN0aW9uIHRyYW5zZm9ybU9iamVjdChcbiAgICBwcm9wczogeyBbazogc3RyaW5nXTogYW55IH0sXG4gICAgYWRkaXRpb25hbDogYW55LFxuICAgIHZhbDogYW55LFxuICApOiBhbnkge1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdHlwZW9mIHZhbCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgIHJldHVybiBpbnZhbGlkVmFsdWUobChyZWYgfHwgXCJvYmplY3RcIiksIHZhbCwga2V5LCBwYXJlbnQpXG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdDogYW55ID0ge31cbiAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwcm9wcykuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBjb25zdCBwcm9wID0gcHJvcHNba2V5XVxuICAgICAgY29uc3QgdiA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2YWwsIGtleSlcbiAgICAgICAgPyB2YWxba2V5XVxuICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgcmVzdWx0W3Byb3Aua2V5XSA9IHRyYW5zZm9ybSh2LCBwcm9wLnR5cCwgZ2V0UHJvcHMsIGtleSwgcmVmKVxuICAgIH0pXG4gICAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModmFsKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHByb3BzLCBrZXkpKSB7XG4gICAgICAgIHJlc3VsdFtrZXldID0gdHJhbnNmb3JtKHZhbFtrZXldLCBhZGRpdGlvbmFsLCBnZXRQcm9wcywga2V5LCByZWYpXG4gICAgICB9XG4gICAgfSlcbiAgICByZXR1cm4gcmVzdWx0XG4gIH1cblxuICBpZiAodHlwID09PSBcImFueVwiKSByZXR1cm4gdmFsXG4gIGlmICh0eXAgPT09IG51bGwpIHtcbiAgICBpZiAodmFsID09PSBudWxsKSByZXR1cm4gdmFsXG4gICAgcmV0dXJuIGludmFsaWRWYWx1ZSh0eXAsIHZhbCwga2V5LCBwYXJlbnQpXG4gIH1cbiAgaWYgKHR5cCA9PT0gZmFsc2UpIHJldHVybiBpbnZhbGlkVmFsdWUodHlwLCB2YWwsIGtleSwgcGFyZW50KVxuICBsZXQgcmVmOiBhbnkgPSB1bmRlZmluZWRcbiAgd2hpbGUgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIgJiYgdHlwLnJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmVmID0gdHlwLnJlZlxuICAgIHR5cCA9IHR5cGVNYXBbdHlwLnJlZl1cbiAgfVxuICBpZiAoQXJyYXkuaXNBcnJheSh0eXApKSByZXR1cm4gdHJhbnNmb3JtRW51bSh0eXAsIHZhbClcbiAgaWYgKHR5cGVvZiB0eXAgPT09IFwib2JqZWN0XCIpIHtcbiAgICByZXR1cm4gdHlwLmhhc093blByb3BlcnR5KFwidW5pb25NZW1iZXJzXCIpXG4gICAgICA/IHRyYW5zZm9ybVVuaW9uKHR5cC51bmlvbk1lbWJlcnMsIHZhbClcbiAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwiYXJyYXlJdGVtc1wiKVxuICAgICAgICA/IHRyYW5zZm9ybUFycmF5KHR5cC5hcnJheUl0ZW1zLCB2YWwpXG4gICAgICAgIDogdHlwLmhhc093blByb3BlcnR5KFwicHJvcHNcIilcbiAgICAgICAgICA/IHRyYW5zZm9ybU9iamVjdChnZXRQcm9wcyh0eXApLCB0eXAuYWRkaXRpb25hbCwgdmFsKVxuICAgICAgICAgIDogaW52YWxpZFZhbHVlKHR5cCwgdmFsLCBrZXksIHBhcmVudClcbiAgfVxuICAvLyBOdW1iZXJzIGNhbiBiZSBwYXJzZWQgYnkgRGF0ZSBidXQgc2hvdWxkbid0IGJlLlxuICBpZiAodHlwID09PSBEYXRlICYmIHR5cGVvZiB2YWwgIT09IFwibnVtYmVyXCIpIHJldHVybiB0cmFuc2Zvcm1EYXRlKHZhbClcbiAgcmV0dXJuIHRyYW5zZm9ybVByaW1pdGl2ZSh0eXAsIHZhbClcbn1cblxuZnVuY3Rpb24gY2FzdDxUPih2YWw6IGFueSwgdHlwOiBhbnkpOiBUIHtcbiAgcmV0dXJuIHRyYW5zZm9ybSh2YWwsIHR5cCwganNvblRvSlNQcm9wcylcbn1cblxuZnVuY3Rpb24gdW5jYXN0PFQ+KHZhbDogVCwgdHlwOiBhbnkpOiBhbnkge1xuICByZXR1cm4gdHJhbnNmb3JtKHZhbCwgdHlwLCBqc1RvSlNPTlByb3BzKVxufVxuXG5mdW5jdGlvbiBsKHR5cDogYW55KSB7XG4gIHJldHVybiB7IGxpdGVyYWw6IHR5cCB9XG59XG5cbmZ1bmN0aW9uIGEodHlwOiBhbnkpIHtcbiAgcmV0dXJuIHsgYXJyYXlJdGVtczogdHlwIH1cbn1cblxuZnVuY3Rpb24gdSguLi50eXBzOiBhbnlbXSkge1xuICByZXR1cm4geyB1bmlvbk1lbWJlcnM6IHR5cHMgfVxufVxuXG5mdW5jdGlvbiBvKHByb3BzOiBhbnlbXSwgYWRkaXRpb25hbDogYW55KSB7XG4gIHJldHVybiB7IHByb3BzLCBhZGRpdGlvbmFsIH1cbn1cblxuLy8gZnVuY3Rpb24gbShhZGRpdGlvbmFsOiBhbnkpIHtcbi8vICAgICByZXR1cm4geyBwcm9wczogW10sIGFkZGl0aW9uYWwgfTtcbi8vIH1cblxuZnVuY3Rpb24gcihuYW1lOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHsgcmVmOiBuYW1lIH1cbn1cblxuY29uc3QgdHlwZU1hcDogYW55ID0ge1xuICBDb21wdGVzUmVuZHVzOiBvKFxuICAgIFt7IGpzb246IFwiY29tcHRlc1JlbmR1c1wiLCBqczogXCJjb21wdGVzUmVuZHVzXCIsIHR5cDogYShyKFwiQ29tcHRlUmVuZHVcIikpIH1dLFxuICAgIGZhbHNlLFxuICApLFxuICBDb21wdGVSZW5kdTogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwic2NoZW1hVmVyc2lvblwiLCBqczogXCJzY2hlbWFWZXJzaW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwidWlkXCIsIGpzOiBcInVpZFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInNlYW5jZVJlZlwiLCBqczogXCJzZWFuY2VSZWZcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic2Vzc2lvblJlZlwiLCBqczogXCJzZXNzaW9uUmVmXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm1ldGFkb25uZWVzXCIsIGpzOiBcIm1ldGFkb25uZWVzXCIsIHR5cDogcihcIk1ldGFkb25uZWVzXCIpIH0sXG4gICAgICB7IGpzb246IFwiY29udGVudVwiLCBqczogXCJjb250ZW51XCIsIHR5cDogcihcIkNvbnRlbnVcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBDb250ZW51OiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJxdWFudGllbWVzXCIsIGpzOiBcInF1YW50aWVtZXNcIiwgdHlwOiByKFwiUXVhbnRpZW1lc1wiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcIm91dmVydHVyZVNlYW5jZVwiLFxuICAgICAgICBqczogXCJvdXZlcnR1cmVTZWFuY2VcIixcbiAgICAgICAgdHlwOiB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwicG9pbnRcIiwganM6IFwicG9pbnRcIiwgdHlwOiB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSB9LFxuICAgICAgeyBqc29uOiBcImZpblNlYW5jZVwiLCBqczogXCJmaW5TZWFuY2VcIiwgdHlwOiB1KHVuZGVmaW5lZCwgcihcIkZpblNlYW5jZVwiKSkgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwYXJhZ3JhcGhlXCIsXG4gICAgICAgIGpzOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgYShyKFwiUG9pbnRcIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgRmluU2VhbmNlOiBvKFt7IGpzb246IFwicG9pbnRcIiwganM6IFwicG9pbnRcIiwgdHlwOiByKFwiUG9pbnRcIikgfV0sIGZhbHNlKSxcbiAgT3JhdGV1cnM6IG8oXG4gICAgW1xuICAgICAge1xuICAgICAgICBqc29uOiBcIm9yYXRldXJcIixcbiAgICAgICAganM6IFwib3JhdGV1clwiLFxuICAgICAgICB0eXA6IHUoYShyKFwiT3JhdGV1ckVsZW1lbnRcIikpLCByKFwiT3JhdGV1ckVsZW1lbnRcIikpLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBPcmF0ZXVyRWxlbWVudDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwibm9tXCIsIGpzOiBcIm5vbVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkXCIsIGpzOiBcImlkXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwicXVhbGl0ZVwiLCBqczogXCJxdWFsaXRlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgVGV4dGU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcIl9cIiwganM6IFwiX1wiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkX3N5Y2Vyb25cIiwganM6IFwiaWRfc3ljZXJvblwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInN0aW1lXCIsIGpzOiBcInN0aW1lXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic3VwXCIsIGpzOiBcInN1cFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImxpZW5BZHRcIixcbiAgICAgICAganM6IFwibGllbkFkdFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlRleHRlXCIpKSwgcihcIlRleHRlXCIpKSksXG4gICAgICB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFBvaW50OiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJuaXZwb2ludFwiLCBqczogXCJuaXZwb2ludFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInZhbGV1cl9wdHNvZGpcIiwganM6IFwidmFsZXVyX3B0c29kalwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcIm9yZGluYWxfcHJpc2VcIiwganM6IFwib3JkaW5hbF9wcmlzZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImlkX3ByZXBhcmF0aW9uXCIsIGpzOiBcImlkX3ByZXBhcmF0aW9uXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3JkcmVfYWJzb2x1X3NlYW5jZVwiLFxuICAgICAgICBqczogXCJvcmRyZV9hYnNvbHVfc2VhbmNlXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJjb2RlX2dyYW1tYWlyZVwiLCBqczogXCJjb2RlX2dyYW1tYWlyZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImNvZGVfc3R5bGVcIiwganM6IFwiY29kZV9zdHlsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImNvZGVfcGFyb2xlXCIsIGpzOiBcImNvZGVfcGFyb2xlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic29tbWFpcmVcIiwganM6IFwic29tbWFpcmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9zeWNlcm9uXCIsIGpzOiBcImlkX3N5Y2Vyb25cIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ2YWxldXJcIiwganM6IFwidmFsZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3JhdGV1cnNcIixcbiAgICAgICAganM6IFwib3JhdGV1cnNcIixcbiAgICAgICAgdHlwOiB1KHIoXCJPcmF0ZXVyc1wiKSwgdShcIlwiLCB1bmRlZmluZWQpKSxcbiAgICAgIH0sXG4gICAgICB7IGpzb246IFwidGV4dGVcIiwganM6IFwidGV4dGVcIiwgdHlwOiB1KHIoXCJUZXh0ZVwiKSwgdShcIlwiLCB1bmRlZmluZWQpKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBhcmFncmFwaGVcIixcbiAgICAgICAganM6IFwicGFyYWdyYXBoZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImludGVyRXh0cmFjdGlvblwiLFxuICAgICAgICBqczogXCJpbnRlckV4dHJhY3Rpb25cIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJQb2ludFwiKSksIHIoXCJQb2ludFwiKSkpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJwb2ludFwiLFxuICAgICAgICBqczogXCJwb2ludFwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlBvaW50XCIpKSwgcihcIlBvaW50XCIpKSksXG4gICAgICB9LFxuICAgICAgeyBqc29uOiBcInN0cnVjdHVyZVwiLCBqczogXCJzdHJ1Y3R1cmVcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJpZF9hY3RldXJcIiwganM6IFwiaWRfYWN0ZXVyXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiaWRfbWFuZGF0XCIsIGpzOiBcImlkX21hbmRhdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcImlkX25vbWluYXRpb25fb2VcIixcbiAgICAgICAganM6IFwiaWRfbm9taW5hdGlvbl9vZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwiaWRfbm9taW5hdGlvbl9vcFwiLFxuICAgICAgICBqczogXCJpZF9ub21pbmF0aW9uX29wXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJvcmF0ZXVyXCIsIGpzOiBcIm9yYXRldXJcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJiaWJhcmRcIiwganM6IFwiYmliYXJkXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwiYXJ0XCIsIGpzOiBcImFydFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcImFkdFwiLCBqczogXCJhZHRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJzc2FkdFwiLCBqczogXCJzc2FkdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInJvbGVkZWJhdFwiLCBqczogXCJyb2xlZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlX2RlYmF0XCIsIGpzOiBcInR5cGVfZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJjaGFuZ2VtZW50UHJlc2lkZW5jZVwiLFxuICAgICAgICBqczogXCJjaGFuZ2VtZW50UHJlc2lkZW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiUG9pbnRcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJkZWNpc2lvblwiLCBqczogXCJkZWNpc2lvblwiLCB0eXA6IHUodW5kZWZpbmVkLCByKFwiRGVjaXNpb25cIikpIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwib3V2ZXJ0dXJlU2VhbmNlXCIsXG4gICAgICAgIGpzOiBcIm91dmVydHVyZVNlYW5jZVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCByKFwiUG9pbnRcIikpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJub21fb3JhdGV1clwiLCBqczogXCJub21fb3JhdGV1clwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInF1YWxpdGVcIiwganM6IFwicXVhbGl0ZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIFF1YW50aWVtZXM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImpvdXJuZWVcIiwganM6IFwiam91cm5lZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJzZXNzaW9uXCIsIGpzOiBcInNlc3Npb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgTWV0YWRvbm5lZXM6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcImRhdGVTZWFuY2VcIiwganM6IFwiZGF0ZVNlYW5jZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJkYXRlU2VhbmNlSm91clwiLCBqczogXCJkYXRlU2VhbmNlSm91clwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJudW1TZWFuY2VKb3VyXCIsIGpzOiBcIm51bVNlYW5jZUpvdXJcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibnVtU2VhbmNlXCIsIGpzOiBcIm51bVNlYW5jZVwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlQXNzZW1ibGVlXCIsIGpzOiBcInR5cGVBc3NlbWJsZWVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwibGVnaXNsYXR1cmVcIiwganM6IFwibGVnaXNsYXR1cmVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwic2Vzc2lvblwiLCBqczogXCJzZXNzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcIm5vbUZpY2hpZXJKb1wiLCBqczogXCJub21GaWNoaWVySm9cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidmFsaWRpdGVcIiwganM6IFwidmFsaWRpdGVcIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwiZXRhdFwiLCBqczogXCJldGF0XCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImRpZmZ1c2lvblwiLCBqczogXCJkaWZmdXNpb25cIiwgdHlwOiBcIlwiIH0sXG4gICAgICB7IGpzb246IFwidmVyc2lvblwiLCBqczogXCJ2ZXJzaW9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImVudmlyb25uZW1lbnRcIiwganM6IFwiZW52aXJvbm5lbWVudFwiLCB0eXA6IFwiXCIgfSxcbiAgICAgIHsganNvbjogXCJoZXVyZUdlbmVyYXRpb25cIiwganM6IFwiaGV1cmVHZW5lcmF0aW9uXCIsIHR5cDogRGF0ZSB9LFxuICAgICAgeyBqc29uOiBcInNvbW1haXJlXCIsIGpzOiBcInNvbW1haXJlXCIsIHR5cDogcihcIlNvbW1haXJlXCIpIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgU29tbWFpcmU6IG8oXG4gICAgW1xuICAgICAgeyBqc29uOiBcInByZXNpZGVudFNlYW5jZVwiLCBqczogXCJwcmVzaWRlbnRTZWFuY2VcIiwgdHlwOiByKFwiVGV4dGVcIikgfSxcbiAgICAgIHtcbiAgICAgICAganNvbjogXCJzb21tYWlyZTFcIixcbiAgICAgICAganM6IFwic29tbWFpcmUxXCIsXG4gICAgICAgIHR5cDogdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUzXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlM1wiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlNvbW1haXJlRWxlbWVudFwiKSksIHIoXCJTb21tYWlyZUVsZW1lbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwic29tbWFpcmUyXCIsXG4gICAgICAgIGpzOiBcInNvbW1haXJlMlwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEocihcIlNvbW1haXJlRWxlbWVudFwiKSksIHIoXCJTb21tYWlyZUVsZW1lbnRcIikpKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGpzb246IFwicGFyYVwiLFxuICAgICAgICBqczogXCJwYXJhXCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHUoYShyKFwiVGV4dGVcIikpLCByKFwiVGV4dGVcIikpKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBmYWxzZSxcbiAgKSxcbiAgU29tbWFpcmVFbGVtZW50OiBvKFxuICAgIFtcbiAgICAgIHsganNvbjogXCJ2YWxldXJfcHRzX29kalwiLCBqczogXCJ2YWxldXJfcHRzX29kalwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInRpdHJlU3RydWN0XCIsXG4gICAgICAgIGpzOiBcInRpdHJlU3RydWN0XCIsXG4gICAgICAgIHR5cDogdSh1bmRlZmluZWQsIHIoXCJUaXRyZVN0cnVjdFwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInBhcmFcIixcbiAgICAgICAganM6IFwicGFyYVwiLFxuICAgICAgICB0eXA6IHUodW5kZWZpbmVkLCB1KGEodShyKFwiVGV4dGVcIiksIFwiXCIpKSwgcihcIlRleHRlXCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvbW1haXJlMlwiLFxuICAgICAgICBqczogXCJzb21tYWlyZTJcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInNvbW1haXJlM1wiLFxuICAgICAgICBqczogXCJzb21tYWlyZTNcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJTb21tYWlyZUVsZW1lbnRcIikpLCByKFwiU29tbWFpcmVFbGVtZW50XCIpKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBqc29uOiBcInByZXNpZGVudFNlYW5jZVwiLFxuICAgICAgICBqczogXCJwcmVzaWRlbnRTZWFuY2VcIixcbiAgICAgICAgdHlwOiB1KHVuZGVmaW5lZCwgdShhKHIoXCJUZXh0ZVwiKSksIHIoXCJUZXh0ZVwiKSkpLFxuICAgICAgfSxcbiAgICAgIHsganNvbjogXCJ0eXBlX2RlYmF0XCIsIGpzOiBcInR5cGVfZGViYXRcIiwgdHlwOiB1KHVuZGVmaW5lZCwgXCJcIikgfSxcbiAgICBdLFxuICAgIGZhbHNlLFxuICApLFxuICBUaXRyZVN0cnVjdDogbyhcbiAgICBbXG4gICAgICB7IGpzb246IFwiaWRfc3ljZXJvblwiLCBqczogXCJpZF9zeWNlcm9uXCIsIHR5cDogXCJcIiB9LFxuICAgICAgeyBqc29uOiBcImludGl0dWxlXCIsIGpzOiBcImludGl0dWxlXCIsIHR5cDogdSh1bmRlZmluZWQsIFwiXCIpIH0sXG4gICAgICB7IGpzb246IFwic291c0ludGl0dWxlXCIsIGpzOiBcInNvdXNJbnRpdHVsZVwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgICAgeyBqc29uOiBcInR5cGVfZGViYXRcIiwganM6IFwidHlwZV9kZWJhdFwiLCB0eXA6IHUodW5kZWZpbmVkLCBcIlwiKSB9LFxuICAgIF0sXG4gICAgZmFsc2UsXG4gICksXG4gIERlY2lzaW9uOiBbXG4gICAgXCJBRE9QVElPTiBhbWVuZGVtZW50IChtYWluIGxldsOpZSkgYWR0XCIsXG4gICAgXCJBRE9QVElPTiBk4oCZdW4gYXJ0aWNsZSAodm90ZSDDoCBtYWluIGxldsOpZSlcIixcbiAgICBcIkFET1BUSU9OIGTigJl1biBzb3VzLWFtZW5kZW1lbnQgKG1haW4gbGV2w6llKSBzcy1hZHRcIixcbiAgICBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBhbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIGFkdHNcIixcbiAgICBcIkFET1BUSU9OIGRlIHBsdXNpZXVycyBzb3VzLWFtZW5kZW1lbnRzIChtYWluIGxldsOpZSkgc3MtYWR0c1wiLFxuICAgIFwiXCIsXG4gICAgXCJSRUpFVCBk4oCZdW4gYW1lbmRlbWVudCAobWFpbiBsZXbDqWUpIGFkdFwiLFxuICAgIFwiUkVKRVQgZOKAmXVuIGFydGljbGUgKHZvdGUgw6AgbWFpbiBsZXbDqWUpXCIsXG4gICAgXCJSRUpFVCBk4oCZdW4gc291cy1hbWVuZGVtZW50IChtYWluIGxldsOpZSkgc3MtYWR0XCIsXG4gICAgXCJSRUpFVCBkZSBwbHVzaWV1cnMgYW1lbmRlbWVudHMgKG1haW4gbGV2w6llKSBhZHRzXCIsXG4gICAgXCJSRUpFVCBkZSBwbHVzaWV1cnMgc291cy1hbWVuZGVtZW50cyAobWFpbiBsZXbDqWUpIHNzLWFkdHNcIixcbiAgICBcIlJFSkVUIG1vdGlvbiBkZSByZWpldCBwcsOpYWxhYmxlIChtYWluIGxldsOpZSlcIixcbiAgXSxcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUE2Q0EsV0FBWUEsUUFBUSwwQkFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFSQSxRQUFRO0VBQVJBLFFBQVE7RUFBUkEsUUFBUTtFQUFBLE9BQVJBLFFBQVE7QUFBQTtBQW1HcEI7QUFDQTtBQUNBLE9BQU8sTUFBTUMsT0FBTyxDQUFDO0VBQ25CLE9BQWNDLGVBQWVBLENBQUNDLElBQVksRUFBaUI7SUFDekQsT0FBT0MsSUFBSSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0gsSUFBSSxDQUFDLEVBQUVJLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQztFQUNuRDtFQUVBLE9BQWNDLG1CQUFtQkEsQ0FBQ0MsS0FBb0IsRUFBVTtJQUM5RCxPQUFPSixJQUFJLENBQUNLLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDRixLQUFLLEVBQUVGLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7RUFDbkU7RUFFQSxPQUFjSyxhQUFhQSxDQUFDVCxJQUFZLEVBQWU7SUFDckQsT0FBT0MsSUFBSSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0gsSUFBSSxDQUFDLEVBQUVJLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQztFQUNqRDtFQUVBLE9B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
@@ -38,6 +38,7 @@ export interface EtudePlf {
38
38
  }
39
39
  export interface MissionMinefi {
40
40
  typeMission: TypeMission;
41
+ codeMission?: string;
41
42
  libelleLong: string;
42
43
  libelleCourt: string;
43
44
  typeBudget: TypeBudget;
@@ -270,6 +271,7 @@ export interface Document {
270
271
  depotAmendements?: DepotAmendements;
271
272
  organesReferents?: string[];
272
273
  rapportPublie?: boolean;
274
+ subdivisions?: Subdivision[] | null;
273
275
  }
274
276
  export declare enum TypeDocument {
275
277
  AccordInternationalType = "accordInternational_Type",
@@ -278,6 +280,18 @@ export declare enum TypeDocument {
278
280
  RapportParlementaireType = "rapportParlementaire_Type",
279
281
  TexteLoiType = "texteLoi_Type"
280
282
  }
283
+ export interface Subdivision {
284
+ id: string;
285
+ type?: string;
286
+ niveau: number;
287
+ niveauRelatif: number;
288
+ titres?: ContenuSubdivision[];
289
+ alineas?: ContenuSubdivision[];
290
+ }
291
+ export interface ContenuSubdivision {
292
+ texte?: string;
293
+ html?: string;
294
+ }
281
295
  export interface Auteur {
282
296
  acteur?: AuteurActeur;
283
297
  organeRef?: string;