@tricoteuses/assemblee 1.9.13 → 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.
- package/README.md +0 -5
- package/lib/api.js +1 -1
- package/lib/api.mjs +1 -1
- package/lib/bugs/acteur-00010/plugin.test.js +5 -5
- package/lib/bugs/acteur-00010/plugin.test.mjs +1 -1
- package/lib/bugs/acteur-00010.js +17 -18
- package/lib/bugs/acteur-00010.mjs +1 -1
- package/lib/bugs/agenda-00002/plugin.test.js +6 -6
- package/lib/bugs/agenda-00002/plugin.test.mjs +1 -1
- package/lib/bugs/agenda-00002.js +31 -32
- package/lib/bugs/agenda-00002.mjs +3 -3
- package/lib/bugs/agenda-00008/plugin.test.js +5 -5
- package/lib/bugs/agenda-00008/plugin.test.mjs +1 -1
- package/lib/bugs/agenda-00008.js +17 -18
- package/lib/bugs/agenda-00008.mjs +1 -1
- package/lib/bugs/agenda-00011/plugin.test.js +10 -10
- package/lib/bugs/agenda-00011/plugin.test.mjs +1 -1
- package/lib/bugs/agenda-00011.js +28 -29
- package/lib/bugs/agenda-00011.mjs +3 -3
- package/lib/bugs.js +27 -29
- package/lib/bugs.mjs +3 -3
- package/lib/cleaners/actes_legislatifs.js +5 -5
- package/lib/cleaners/actes_legislatifs.mjs +1 -1
- package/lib/cleaners/acteurs.js +5 -5
- package/lib/cleaners/acteurs.mjs +1 -1
- package/lib/cleaners/amendements.js +5 -5
- package/lib/cleaners/amendements.mjs +1 -1
- package/lib/cleaners/debats.js +1 -1
- package/lib/cleaners/debats.mjs +1 -1
- package/lib/cleaners/documents.js +5 -5
- package/lib/cleaners/documents.mjs +1 -1
- package/lib/cleaners/dossiers_legislatifs.js +5 -5
- package/lib/cleaners/dossiers_legislatifs.mjs +1 -1
- package/lib/cleaners/index.d.ts +0 -1
- package/lib/cleaners/index.js +1 -8
- package/lib/cleaners/index.mjs +1 -2
- package/lib/cleaners/organes.js +2 -2
- package/lib/cleaners/organes.mjs +1 -1
- package/lib/cleaners/questions.js +1 -1
- package/lib/cleaners/questions.mjs +1 -1
- package/lib/cleaners/reunions.js +5 -5
- package/lib/cleaners/reunions.mjs +1 -1
- package/lib/cleaners/scrutins.js +8 -8
- package/lib/cleaners/scrutins.mjs +1 -1
- package/lib/cleaners/xml.js +8 -8
- package/lib/cleaners/xml.mjs +1 -1
- package/lib/datasets.d.ts +1 -13
- package/lib/datasets.js +10 -29
- package/lib/datasets.mjs +2 -21
- package/lib/dates.js +3 -4
- package/lib/dates.mjs +1 -1
- package/lib/dossiers_legislatifs.js +8 -8
- package/lib/dossiers_legislatifs.mjs +1 -1
- package/lib/file_systems.js +15 -14
- package/lib/file_systems.mjs +3 -3
- package/lib/git.js +5 -5
- package/lib/git.mjs +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +8 -1
- package/lib/index.mjs +2 -1
- package/lib/inserters.js +4 -4
- package/lib/inserters.mjs +1 -1
- package/lib/loaders.d.ts +0 -5
- package/lib/loaders.js +255 -299
- package/lib/loaders.mjs +1 -13
- package/lib/logger.js +1 -1
- package/lib/logger.mjs +1 -1
- package/lib/organes.js +1 -1
- package/lib/organes.mjs +1 -1
- package/lib/parsers/documents.js +11 -11
- package/lib/parsers/documents.mjs +1 -1
- package/lib/parsers/index.d.ts +1 -0
- package/lib/parsers/index.js +8 -1
- package/lib/parsers/index.mjs +2 -1
- package/lib/parsers/recherche_amendements.js +17 -15
- package/lib/parsers/recherche_amendements.mjs +1 -1
- package/lib/parsers/textes_lois.d.ts +22 -15
- package/lib/parsers/textes_lois.js +264 -752
- package/lib/parsers/textes_lois.mjs +249 -597
- package/lib/raw_types/acteurs_et_organes.js +9 -9
- package/lib/raw_types/acteurs_et_organes.mjs +1 -1
- package/lib/raw_types/agendas.d.ts +1 -0
- package/lib/raw_types/agendas.js +11 -10
- package/lib/raw_types/agendas.mjs +3 -2
- package/lib/raw_types/amendements.js +9 -9
- package/lib/raw_types/amendements.mjs +1 -1
- package/lib/raw_types/debats.js +9 -9
- package/lib/raw_types/debats.mjs +1 -1
- package/lib/raw_types/dossiers_legislatifs.js +9 -9
- package/lib/raw_types/dossiers_legislatifs.mjs +1 -1
- package/lib/raw_types/questions.js +9 -9
- package/lib/raw_types/questions.mjs +1 -1
- package/lib/raw_types/scrutins.js +9 -9
- package/lib/raw_types/scrutins.mjs +1 -1
- package/lib/scripts/bugs_helper.js +25 -26
- package/lib/scripts/bugs_helper.mjs +3 -3
- package/lib/scripts/clean_reorganized_data.js +256 -245
- package/lib/scripts/clean_reorganized_data.mjs +18 -29
- package/lib/scripts/diff_amendements.js +9 -8
- package/lib/scripts/diff_amendements.mjs +1 -1
- package/lib/scripts/document_dossiers_legislatifs.js +24 -27
- package/lib/scripts/document_dossiers_legislatifs.mjs +3 -3
- package/lib/scripts/get_today_reunions.js +3 -2
- package/lib/scripts/get_today_reunions.mjs +1 -1
- package/lib/scripts/merge_scrutins.js +9 -8
- package/lib/scripts/merge_scrutins.mjs +1 -1
- package/lib/scripts/parse_textes_lois.js +6 -5
- package/lib/scripts/parse_textes_lois.mjs +1 -1
- package/lib/scripts/process_open_dataset.d.ts +0 -2
- package/lib/scripts/process_open_dataset.js +19 -19
- package/lib/scripts/process_open_dataset.mjs +3 -5
- package/lib/scripts/raw_types_from_amendements.d.ts +0 -1
- package/lib/scripts/raw_types_from_amendements.js +122 -198
- package/lib/scripts/raw_types_from_amendements.mjs +105 -60
- package/lib/scripts/reorganize_data.js +14 -15
- package/lib/scripts/reorganize_data.mjs +3 -3
- package/lib/scripts/retrieve_deputes_photos.js +40 -31
- package/lib/scripts/retrieve_deputes_photos.mjs +10 -2
- package/lib/scripts/retrieve_documents.d.ts +1 -1
- package/lib/scripts/retrieve_documents.js +230 -138
- package/lib/scripts/retrieve_documents.mjs +87 -38
- package/lib/scripts/retrieve_open_data.js +27 -30
- package/lib/scripts/retrieve_open_data.mjs +5 -8
- package/lib/scripts/retrieve_pending_amendments.js +14 -14
- package/lib/scripts/retrieve_pending_amendments.mjs +1 -1
- package/lib/scripts/retrieve_senateurs_photos.js +10 -10
- package/lib/scripts/retrieve_senateurs_photos.mjs +1 -1
- package/lib/scripts/retrieve_textes_lois.js +17 -15
- package/lib/scripts/retrieve_textes_lois.mjs +1 -1
- package/lib/scripts/shared/cli_helpers.d.ts +11 -0
- package/lib/scripts/shared/cli_helpers.js +13 -2
- package/lib/scripts/shared/cli_helpers.mjs +12 -1
- package/lib/scripts/test_iter_load.js +5 -19
- package/lib/scripts/test_iter_load.mjs +2 -9
- package/lib/scripts/test_load.js +2 -2
- package/lib/scripts/test_load.mjs +1 -1
- package/lib/scripts/test_load_big_files.js +2 -2
- package/lib/scripts/test_load_big_files.mjs +1 -1
- package/lib/scripts/validate_json.js +17 -18
- package/lib/scripts/validate_json.mjs +3 -3
- package/lib/shared_types/codes_actes.js +1 -1
- package/lib/shared_types/codes_actes.mjs +1 -1
- package/lib/strings.js +1 -1
- package/lib/strings.mjs +1 -1
- package/lib/types/acteurs_et_organes.js +9 -9
- package/lib/types/acteurs_et_organes.mjs +1 -1
- package/lib/types/agendas.d.ts +1 -0
- package/lib/types/agendas.js +11 -10
- package/lib/types/agendas.mjs +3 -2
- package/lib/types/amendements.js +9 -9
- package/lib/types/amendements.mjs +1 -1
- package/lib/types/debats.js +9 -9
- package/lib/types/debats.mjs +1 -1
- package/lib/types/dossiers_legislatifs.d.ts +13 -0
- package/lib/types/dossiers_legislatifs.js +47 -9
- package/lib/types/dossiers_legislatifs.mjs +39 -1
- package/lib/types/legislatures.js +1 -1
- package/lib/types/legislatures.mjs +1 -1
- package/lib/types/questions.js +9 -9
- package/lib/types/questions.mjs +1 -1
- package/lib/types/scrutins.js +9 -9
- package/lib/types/scrutins.mjs +1 -1
- package/lib/urls.js +2 -2
- package/lib/urls.mjs +1 -1
- package/package.json +14 -20
- package/lib/cleaners/textes_loi.d.ts +0 -1
- package/lib/cleaners/textes_loi.js +0 -12
- package/lib/cleaners/textes_loi.mjs +0 -5
- package/lib/examples/PIONANR5L15B0020/input.d.ts +0 -2
- package/lib/examples/PIONANR5L15B0020/input.js +0 -10
- package/lib/examples/PIONANR5L15B0020/input.mjs +0 -193
- package/lib/examples/PIONANR5L15B0020/input.ts +0 -193
- package/lib/examples/PIONANR5L15B0020/loi.json +0 -26
- package/lib/examples/PIONANR5L15B0020/loi_populated.json +0 -29
- package/lib/examples/PIONANR5L15B0020/meta.json +0 -28
- package/lib/examples/PIONANR5L15B0020/motifs.json +0 -5
- package/lib/examples/PIONANR5L15B0020/motifs_populated.json +0 -6
- package/lib/examples/PIONANR5L15B0020/sommaire.json +0 -3
- package/lib/examples/PRJLANR5L16B0914/input.d.ts +0 -2
- package/lib/examples/PRJLANR5L16B0914/input.js +0 -10
- package/lib/examples/PRJLANR5L16B0914/input.mjs +0 -322
- package/lib/examples/PRJLANR5L16B0914/input.ts +0 -322
- package/lib/examples/PRJLANR5L16B0914/loi.json +0 -14
- package/lib/examples/PRJLANR5L16B0914/loi_populated.json +0 -20
- package/lib/examples/PRJLANR5L16B0914/meta.json +0 -35
- package/lib/examples/PRJLANR5L16B0914/motifs.json +0 -4
- package/lib/examples/PRJLANR5L16B0914/motifs_populated.json +0 -5
- package/lib/examples/PRJLANR5L16B0914/sommaire.json +0 -3
- package/lib/examples/PRJLANR5L16B2014/README.md +0 -2
- package/lib/examples/PRJLANR5L16B2014/input.d.ts +0 -2
- package/lib/examples/PRJLANR5L16B2014/input.js +0 -10
- package/lib/examples/PRJLANR5L16B2014/input.mjs +0 -577
- package/lib/examples/PRJLANR5L16B2014/input.ts +0 -577
- package/lib/examples/PRJLANR5L16B2014/loi.json +0 -369
- package/lib/examples/PRJLANR5L16B2014/meta.json +0 -31
- package/lib/examples/PRJLANR5L16B2014/motifs.json +0 -5
- package/lib/examples/PRJLANR5L16B2014/sommaire.json +0 -51
- package/lib/examples/PRJLANR5L16B2424/alineas.json +0 -44
- package/lib/examples/PRJLANR5L16B2424/input.d.ts +0 -2
- package/lib/examples/PRJLANR5L16B2424/input.js +0 -10
- package/lib/examples/PRJLANR5L16B2424/input.mjs +0 -322
- package/lib/examples/PRJLANR5L16B2424/input.ts +0 -322
- package/lib/examples/PRJLANR5L16B2424/loi.json +0 -74
- package/lib/examples/PRJLANR5L16B2424/loi_populated.json +0 -87
- package/lib/examples/PRJLANR5L16B2424/meta.json +0 -31
- package/lib/examples/PRJLANR5L16B2424/motifs.json +0 -4
- package/lib/examples/PRJLANR5L16B2424/motifs_populated.json +0 -5
- package/lib/examples/PRJLANR5L16B2424/sommaire.json +0 -3
- package/lib/examples/PRJLANR5L16B2462/input.d.ts +0 -2
- package/lib/examples/PRJLANR5L16B2462/input.js +0 -10
- package/lib/examples/PRJLANR5L16B2462/input.mjs +0 -1308
- package/lib/examples/PRJLANR5L16B2462/input.ts +0 -1308
- package/lib/examples/PRJLANR5L16B2462/loi.json +0 -74
- package/lib/examples/PRJLANR5L16B2462/loi_populated.json +0 -310
- package/lib/examples/PRJLANR5L16B2462/meta.json +0 -29
- package/lib/examples/PRJLANR5L16B2462/motifs.json +0 -6
- package/lib/examples/PRJLANR5L16B2462/motifs_populated.json +0 -6
- package/lib/examples/PRJLANR5L16B2462/sommaire.json +0 -50
- package/lib/examples/README.md +0 -3
- package/lib/raw_types/textes_loi.d.ts +0 -93
- package/lib/raw_types/textes_loi.js +0 -429
- package/lib/raw_types/textes_loi.mjs +0 -378
- package/lib/schemas/texte_loi/Alinea.json +0 -36
- package/lib/schemas/texte_loi/ExposeMotifs.json +0 -24
- package/lib/schemas/texte_loi/MetaDonnees.json +0 -126
- package/lib/schemas/texte_loi/ProjetLoi.json +0 -64
- package/lib/schemas/texte_loi/Sommaire.json +0 -48
- package/lib/schemas/texte_loi/TexteLoi.json +0 -225
- package/lib/schemas/texte_loi/TexteLoiPartiel.json +0 -237
- package/lib/scripts/process_textes_loi_dataset.d.ts +0 -7
- package/lib/scripts/process_textes_loi_dataset.js +0 -373
- package/lib/scripts/process_textes_loi_dataset.mjs +0 -239
- package/lib/types/textes_loi.d.ts +0 -94
- package/lib/types/textes_loi.js +0 -429
- package/lib/types/textes_loi.mjs +0 -378
|
@@ -30,6 +30,7 @@ require("core-js/modules/es.array.iterator.js");
|
|
|
30
30
|
require("core-js/modules/es.array.join.js");
|
|
31
31
|
require("core-js/modules/es.array.map.js");
|
|
32
32
|
require("core-js/modules/es.array.slice.js");
|
|
33
|
+
require("core-js/modules/es.date.to-json.js");
|
|
33
34
|
require("core-js/modules/es.date.to-string.js");
|
|
34
35
|
require("core-js/modules/es.object.to-string.js");
|
|
35
36
|
require("core-js/modules/es.parse-int.js");
|
|
@@ -41,6 +42,7 @@ require("core-js/modules/es.string.iterator.js");
|
|
|
41
42
|
require("core-js/modules/es.string.replace.js");
|
|
42
43
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
43
44
|
require("core-js/modules/web.url.js");
|
|
45
|
+
require("core-js/modules/web.url.to-json.js");
|
|
44
46
|
require("core-js/modules/web.url-search-params.js");
|
|
45
47
|
var _assert = _interopRequireDefault(require("assert"));
|
|
46
48
|
var _formatISO = require("date-fns/formatISO");
|
|
@@ -54,24 +56,24 @@ var _nodeHtmlParser = require("node-html-parser");
|
|
|
54
56
|
var _path = _interopRequireDefault(require("path"));
|
|
55
57
|
var _cleaners = require("../cleaners");
|
|
56
58
|
var _amendements = require("../types/amendements");
|
|
57
|
-
function _interopRequireDefault(
|
|
58
|
-
function _toConsumableArray(
|
|
59
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
60
|
+
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
59
61
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
60
|
-
function _iterableToArray(
|
|
61
|
-
function _arrayWithoutHoles(
|
|
62
|
-
function _createForOfIteratorHelper(
|
|
63
|
-
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw
|
|
64
|
-
function _slicedToArray(
|
|
62
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
63
|
+
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
64
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
65
|
+
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
66
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
65
67
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
66
|
-
function _unsupportedIterableToArray(
|
|
67
|
-
function _arrayLikeToArray(
|
|
68
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
69
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
68
70
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
69
|
-
function _arrayWithHoles(
|
|
71
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
70
72
|
function _awaitAsyncGenerator(e) { return new _OverloadYield(e, 0); }
|
|
71
|
-
function _wrapAsyncGenerator(
|
|
72
|
-
function
|
|
73
|
-
|
|
74
|
-
function _OverloadYield(
|
|
73
|
+
function _wrapAsyncGenerator(e) { return function () { return new AsyncGenerator(e.apply(this, arguments)); }; }
|
|
74
|
+
function AsyncGenerator(e) { var r, t; function resume(r, t) { try { var n = e[r](t), o = n.value, u = o instanceof _OverloadYield; Promise.resolve(u ? o.v : o).then(function (t) { if (u) { var i = "return" === r ? "return" : "next"; if (!o.k || t.done) return resume(i, t); t = e[i](t).value; } settle(n.done ? "return" : "normal", t); }, function (e) { resume("throw", e); }); } catch (e) { settle("throw", e); } } function settle(e, n) { switch (e) { case "return": r.resolve({ value: n, done: !0 }); break; case "throw": r.reject(n); break; default: r.resolve({ value: n, done: !1 }); } (r = r.next) ? resume(r.key, r.arg) : t = null; } this._invoke = function (e, n) { return new Promise(function (o, u) { var i = { key: e, arg: n, resolve: o, reject: u, next: null }; t ? t = t.next = i : (r = t = i, resume(e, n)); }); }, "function" != typeof e["return"] && (this["return"] = void 0); }
|
|
75
|
+
AsyncGenerator.prototype["function" == typeof Symbol && Symbol.asyncIterator || "@@asyncIterator"] = function () { return this; }, AsyncGenerator.prototype.next = function (e) { return this._invoke("next", e); }, AsyncGenerator.prototype["throw"] = function (e) { return this._invoke("throw", e); }, AsyncGenerator.prototype["return"] = function (e) { return this._invoke("return", e); };
|
|
76
|
+
function _OverloadYield(e, d) { this.v = e, this.k = d; }
|
|
75
77
|
function _asyncIterator(r) { var n, t, o, e = 2; for ("undefined" != typeof Symbol && (t = Symbol.asyncIterator, o = Symbol.iterator); e--;) { if (t && null != (n = r[t])) return n.call(r); if (o && null != (n = r[o])) return new AsyncFromSyncIterator(n.call(r)); t = "@@asyncIterator", o = "@@iterator"; } throw new TypeError("Object is not async iterable"); }
|
|
76
78
|
function AsyncFromSyncIterator(r) { function AsyncFromSyncIteratorContinuation(r) { if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object.")); var n = r.done; return Promise.resolve(r.value).then(function (r) { return { value: r, done: n }; }); } return AsyncFromSyncIterator = function AsyncFromSyncIterator(r) { this.s = r, this.n = r.next; }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() { return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments)); }, "return": function _return(r) { var n = this.s["return"]; return void 0 === n ? Promise.resolve({ value: r, done: !0 }) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments)); }, "throw": function _throw(r) { var n = this.s["return"]; return void 0 === n ? Promise.reject(r) : AsyncFromSyncIteratorContinuation(n.apply(this.s, arguments)); } }, new AsyncFromSyncIterator(r); }
|
|
77
79
|
function iterRechercheAmendements(_x, _x2, _x3, _x4, _x5) {
|
|
@@ -398,4 +400,4 @@ function _iterRechercheRawAmendements() {
|
|
|
398
400
|
});
|
|
399
401
|
return _iterRechercheRawAmendements.apply(this, arguments);
|
|
400
402
|
}
|
|
401
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYXNzZXJ0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZm9ybWF0SVNPIiwiX2ZyIiwiX3BhcnNlIiwiX2RlZXBFcXVhbCIsIl9mc0V4dHJhIiwiX2Zyb250TWF0dGVyIiwiX2pzWWFtbCIsIl9ub2RlSHRtbFBhcnNlciIsIl9wYXRoIiwiX2NsZWFuZXJzIiwiX2FtZW5kZW1lbnRzIiwib2JqIiwiX19lc01vZHVsZSIsIl90b0NvbnN1bWFibGVBcnJheSIsImFyciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJUeXBlRXJyb3IiLCJpdGVyIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJBcnJheSIsImZyb20iLCJpc0FycmF5IiwiX2FycmF5TGlrZVRvQXJyYXkiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlciIsIm8iLCJhbGxvd0FycmF5TGlrZSIsIml0IiwibGVuZ3RoIiwiaSIsIkYiLCJzIiwibiIsImRvbmUiLCJ2YWx1ZSIsImUiLCJfZSIsImYiLCJub3JtYWxDb21wbGV0aW9uIiwiZGlkRXJyIiwiZXJyIiwiY2FsbCIsInN0ZXAiLCJuZXh0IiwiX2UyIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsInQiLCJyIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJkZWZpbmVQcm9wZXJ0eSIsImEiLCJjIiwiYXN5bmNJdGVyYXRvciIsInUiLCJ0b1N0cmluZ1RhZyIsImRlZmluZSIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIndyYXAiLCJHZW5lcmF0b3IiLCJjcmVhdGUiLCJDb250ZXh0IiwibWFrZUludm9rZU1ldGhvZCIsInRyeUNhdGNoIiwidHlwZSIsImFyZyIsImgiLCJsIiwieSIsIkdlbmVyYXRvckZ1bmN0aW9uIiwiR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUiLCJwIiwiZCIsImdldFByb3RvdHlwZU9mIiwidiIsInZhbHVlcyIsImciLCJkZWZpbmVJdGVyYXRvck1ldGhvZHMiLCJmb3JFYWNoIiwiX2ludm9rZSIsIkFzeW5jSXRlcmF0b3IiLCJpbnZva2UiLCJfdHlwZW9mIiwicmVzb2x2ZSIsIl9fYXdhaXQiLCJ0aGVuIiwiY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmciLCJFcnJvciIsIm1ldGhvZCIsImRlbGVnYXRlIiwibWF5YmVJbnZva2VEZWxlZ2F0ZSIsInNlbnQiLCJfc2VudCIsImRpc3BhdGNoRXhjZXB0aW9uIiwiYWJydXB0IiwicmVzdWx0TmFtZSIsIm5leHRMb2MiLCJwdXNoVHJ5RW50cnkiLCJ0cnlMb2MiLCJjYXRjaExvYyIsImZpbmFsbHlMb2MiLCJhZnRlckxvYyIsInRyeUVudHJpZXMiLCJwdXNoIiwicmVzZXRUcnlFbnRyeSIsImNvbXBsZXRpb24iLCJyZXNldCIsImlzTmFOIiwiZGlzcGxheU5hbWUiLCJpc0dlbmVyYXRvckZ1bmN0aW9uIiwiY29uc3RydWN0b3IiLCJuYW1lIiwibWFyayIsInNldFByb3RvdHlwZU9mIiwiX19wcm90b19fIiwiYXdyYXAiLCJhc3luYyIsIlByb21pc2UiLCJrZXlzIiwicmV2ZXJzZSIsInBvcCIsInByZXYiLCJjaGFyQXQiLCJzbGljZSIsInN0b3AiLCJydmFsIiwiaGFuZGxlIiwiY29tcGxldGUiLCJmaW5pc2giLCJfY2F0Y2giLCJkZWxlZ2F0ZVlpZWxkIiwiX3NsaWNlZFRvQXJyYXkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfaXRlcmFibGVUb0FycmF5TGltaXQiLCJfbm9uSXRlcmFibGVSZXN0IiwibWluTGVuIiwidG9TdHJpbmciLCJ0ZXN0IiwibGVuIiwiYXJyMiIsIl9hd2FpdEFzeW5jR2VuZXJhdG9yIiwiX092ZXJsb2FkWWllbGQiLCJfd3JhcEFzeW5jR2VuZXJhdG9yIiwiZm4iLCJfQXN5bmNHZW5lcmF0b3IiLCJhcHBseSIsImFyZ3VtZW50cyIsInJlc3VtZSIsImsiLCJzZXR0bGUiLCJyZWplY3QiLCJrZXkiLCJfYXN5bmNJdGVyYXRvciIsIkFzeW5jRnJvbVN5bmNJdGVyYXRvciIsIkFzeW5jRnJvbVN5bmNJdGVyYXRvckNvbnRpbnVhdGlvbiIsIl9yZXR1cm4iLCJfdGhyb3ciLCJpdGVyUmVjaGVyY2hlQW1lbmRlbWVudHMiLCJfeCIsIl94MiIsIl94MyIsIl94NCIsIl94NSIsIl9pdGVyUmVjaGVyY2hlQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyIiwidXJsIiwiaW5jcmVtZW50YWwiLCJtaW5EYXRlRGVwb3QiLCJtaW5EYXRlRXhhbWVuIiwib3B0aW9ucyIsInVuZGVmaW5lZCIsIl9jYWxsZWUiLCJfaXRlcmF0b3JBYnJ1cHRDb21wbGV0aW9uIiwiX2RpZEl0ZXJhdG9yRXJyb3IiLCJfaXRlcmF0b3JFcnJvciIsIl9pdGVyYXRvciIsIl9zdGVwIiwiX3N0ZXAkdmFsdWUiLCJhbWVuZGVtZW50VXJsUGF0aCIsImFtZW5kZW1lbnQiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwiaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzIiwiY2xlYW5BbWVuZGVtZW50IiwiQW1lbmRlbWVudHNDb252ZXJ0IiwidG9BbWVuZGVtZW50IiwiSlNPTiIsInN0cmluZ2lmeSIsInQwIiwiX3g2IiwiX3g3IiwiX3g4IiwiX3g5IiwiX3gxMCIsIl9pdGVyUmVjaGVyY2hlUmF3QW1lbmRlbWVudHMiLCJfY2FsbGVlMiIsImFtZW5kZW1lbnROdW1iZXIiLCJyZXNwb25zZSIsInBhZ2UiLCJodG1sIiwiYW1lbmRlbWVudHNDb3VudERpdiIsImFtZW5kZW1lbnRzQ291bnQiLCJhbWVuZGVtZW50c0RpdiIsImFtZW5kZW1lbnRzVGFibGUiLCJ0Zm9vdFRyIiwidGZvb3RUckNlbGxzIiwiYW1lbmRlbWVudHNUciIsIl9pdGVyYXRvcjIiLCJfc3RlcDIiLCJhbWVuZGVtZW50VHIiLCJhbWVuZGVtZW50VGRMaXN0IiwiZGF0ZURlcG90VGQiLCJkYXRlRGVwb3QiLCJkYXRlRXhhbWVuVGQiLCJkYXRlRXhhbWVuIiwiYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCIsImFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoIiwiZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUiLCJhbWVuZGVtZW50VHJPdXRlckh0bWwiLCJhbWVuZGVtZW50U2VhcmNoQ2FjaGUiLCJhbWVuZGVtZW50SHRtbFVybCIsImFtZW5kZW1lbnRIdG1sUmVzcG9uc2UiLCJhbWVuZGVtZW50SHRtbFBhZ2UiLCJhbWVuZGVtZW50SHRtbCIsImZvcm1hdHNMaSIsImpzb25MaSIsImpzb25BIiwiYW1lbmRlbWVudEpzb25VcmxQYXRoIiwiYW1lbmRlbWVudEpzb25VcmwiLCJhbWVuZGVtZW50SnNvblJlc3BvbnNlIiwicGFnaW5hdGlvbkEiLCJ1cmxQYXRoIiwiX2NhbGxlZTIkIiwiX2NvbnRleHQyIiwiZnMiLCJlbnN1cmVEaXIiLCJhc3NlcnQiLCJzdHJpY3RFcXVhbCIsImV4ZWMiLCJjb25jYXQiLCJub3RTdHJpY3RFcXVhbCIsImluY2x1ZGVzIiwidmVyYm9zZSIsImNvbnNvbGUiLCJsb2ciLCJmZXRjaCIsIm9rIiwic3RhdHVzIiwic3RhdHVzVGV4dCIsInRleHQiLCJwYXJzZUh0bWwiLCJxdWVyeVNlbGVjdG9yIiwicGFyc2VJbnQiLCJxdWVyeVNlbGVjdG9yQWxsIiwibWFwIiwiY2VsbCIsImRlZXBFcXVhbCIsIm91dGVySFRNTCIsImZvcm1hdElTTyIsInBhcnNlRGF0ZSIsIkRhdGUiLCJsb2NhbGUiLCJmckxvY2FsZSIsInJlcHJlc2VudGF0aW9uIiwiZ2V0QXR0cmlidXRlIiwic3BsaXQiLCJwYXRoIiwiam9pbiIsImRpcm5hbWUiLCJwYXRoRXhpc3RzIiwicmVhZEZpbGUiLCJqc1lhbWwiLCJkdW1wIiwicG9zaXRpb24iLCJzZWFyY2giLCJyZXBsYWNlIiwic29ydEtleXMiLCJmcm9udE1hdHRlciIsImJvZHkiLCJVUkwiLCJmaW5kIiwiZm9ybWF0TGkiLCJmb3JtYXRTcGFuIiwianNvbiIsIndyaXRlRmlsZSIsInQxIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhcnNlcnMvcmVjaGVyY2hlX2FtZW5kZW1lbnRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5pbXBvcnQgeyBmb3JtYXRJU08gfSBmcm9tIFwiZGF0ZS1mbnMvZm9ybWF0SVNPXCJcbmltcG9ydCB7IGZyIGFzIGZyTG9jYWxlIH0gZnJvbSBcImRhdGUtZm5zL2xvY2FsZS9mclwiXG5pbXBvcnQgeyBwYXJzZSBhcyBwYXJzZURhdGUgfSBmcm9tIFwiZGF0ZS1mbnMvcGFyc2VcIlxuaW1wb3J0IGRlZXBFcXVhbCBmcm9tIFwiZGVlcC1lcXVhbFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzLWV4dHJhXCJcbmltcG9ydCBmcm9udE1hdHRlciBmcm9tIFwiZnJvbnQtbWF0dGVyXCJcbmltcG9ydCBqc1lhbWwgZnJvbSBcImpzLXlhbWxcIlxuaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VIdG1sIH0gZnJvbSBcIm5vZGUtaHRtbC1wYXJzZXJcIlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuXG5pbXBvcnQgeyBjbGVhbkFtZW5kZW1lbnQgfSBmcm9tIFwiLi4vY2xlYW5lcnNcIlxuaW1wb3J0IHsgQW1lbmRlbWVudCBhcyBSYXdBbWVuZGVtZW50IH0gZnJvbSBcIi4uL3Jhd190eXBlcy9hbWVuZGVtZW50c1wiXG5pbXBvcnQgeyBBbWVuZGVtZW50LCBDb252ZXJ0IGFzIEFtZW5kZW1lbnRzQ29udmVydCB9IGZyb20gXCIuLi90eXBlcy9hbWVuZGVtZW50c1wiXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogaXRlclJlY2hlcmNoZUFtZW5kZW1lbnRzKFxuICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyOiBzdHJpbmcsXG4gIHVybDogc3RyaW5nLFxuICBpbmNyZW1lbnRhbDogYm9vbGVhbixcbiAgbWluRGF0ZURlcG90Pzogc3RyaW5nIHwgbnVsbCxcbiAgbWluRGF0ZUV4YW1lbj86IHN0cmluZyB8IG51bGwsXG4gIG9wdGlvbnM6IHsgc2lsZW50PzogYm9vbGVhbjsgdmVyYm9zZT86IGJvb2xlYW4gfSA9IHt9LFxuKTogQXN5bmNHZW5lcmF0b3I8W3N0cmluZywgQW1lbmRlbWVudF0sIHZvaWQsIHVua25vd24+IHtcbiAgZm9yIGF3YWl0IChjb25zdCBbXG4gICAgYW1lbmRlbWVudFVybFBhdGgsXG4gICAgYW1lbmRlbWVudCxcbiAgXSBvZiBpdGVyUmVjaGVyY2hlUmF3QW1lbmRlbWVudHMoXG4gICAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcixcbiAgICB1cmwsXG4gICAgaW5jcmVtZW50YWwsXG4gICAgbWluRGF0ZURlcG90LFxuICAgIG1pbkRhdGVFeGFtZW4sXG4gICAgb3B0aW9ucyxcbiAgKSkge1xuICAgIGNsZWFuQW1lbmRlbWVudChhbWVuZGVtZW50KVxuICAgIC8vIERvdWJsZSBjb252ZXJzaW9uLCB0byBjb252ZXJ0IHN0cmluZ3MgdG8gZGF0ZXMuXG4gICAgeWllbGQgW1xuICAgICAgYW1lbmRlbWVudFVybFBhdGgsXG4gICAgICBBbWVuZGVtZW50c0NvbnZlcnQudG9BbWVuZGVtZW50KEpTT04uc3RyaW5naWZ5KGFtZW5kZW1lbnQpKSxcbiAgICBdXG4gIH1cbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uKiBpdGVyUmVjaGVyY2hlUmF3QW1lbmRlbWVudHMoXG4gIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXI6IHN0cmluZyxcbiAgdXJsOiBzdHJpbmcsXG4gIGluY3JlbWVudGFsOiBib29sZWFuLFxuICBtaW5EYXRlRGVwb3Q/OiBzdHJpbmcgfCBudWxsLFxuICBtaW5EYXRlRXhhbWVuPzogc3RyaW5nIHwgbnVsbCxcbiAgb3B0aW9uczogeyBzaWxlbnQ/OiBib29sZWFuOyB2ZXJib3NlPzogYm9vbGVhbiB9ID0ge30sXG4pOiBBc3luY0dlbmVyYXRvcjxbc3RyaW5nLCBSYXdBbWVuZGVtZW50XSwgdm9pZCwgdW5rbm93bj4ge1xuICBhd2FpdCBmcy5lbnN1cmVEaXIoYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcilcblxuICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgL1s/Jl1kYXRlX2RlcG90PS8uZXhlYyh1cmwpLFxuICAgIG51bGwsXG4gICAgYFVSTCAke3VybH0gYWxyZWFkeSBjb250YWlucyBhIGRlcG9zaXQgZGF0ZWAsXG4gIClcbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdb3JkZXI9Ly5leGVjKHVybCksXG4gICAgbnVsbCxcbiAgICBgVVJMICR7dXJsfSBhbHJlYWR5IGNvbnRhaW5zIGEgc29ydCBvcmRlcmAsXG4gIClcbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdcGFnZT0vLmV4ZWModXJsKSxcbiAgICBudWxsLFxuICAgIGBVUkwgJHt1cmx9IGFscmVhZHkgY29udGFpbnMgYSBwYWdlIG51bWJlcmAsXG4gIClcbiAgaWYgKGluY3JlbWVudGFsKSB7XG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgL1s/Jl1ldGF0PS8uZXhlYyh1cmwpLFxuICAgICAgbnVsbCxcbiAgICAgIGBJbiBpbmNyZW1lbnRhbCBtb2RlLCBVUkwgJHt1cmx9IG11c3QgY29udGFpbiBhbiBcImV0YXRcIiBxdWVyeSBwYXJhbWV0ZXJgLFxuICAgIClcbiAgfVxuICB1cmwgKz0gKHVybC5pbmNsdWRlcyhcIj9cIikgPyBcIiZcIiA6IFwiP1wiKSArIFwib3JkZXI9ZGF0ZV9kZXBvdCxkZXNjJnBhZ2U9MVwiXG5cbiAgaWYgKG1pbkRhdGVEZXBvdCAhPSBudWxsKSB7XG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgL1xcZHs0fS1cXGR7Mn0tXFxkezJ9Ly5leGVjKG1pbkRhdGVEZXBvdCksXG4gICAgICBudWxsLFxuICAgICAgYEludmFsaWQgZm9ybWF0IGZvciBtaW5pbXVtIGRhdGU6ICR7bWluRGF0ZURlcG90fWAsXG4gICAgKVxuICB9XG5cbiAgbGV0IGFtZW5kZW1lbnROdW1iZXIgPSAwXG4gIGl0ZXJTZWFyY2hQYWdlczogd2hpbGUgKHRydWUpIHtcbiAgICBpZiAob3B0aW9ucy52ZXJib3NlKSB7XG4gICAgICBjb25zb2xlLmxvZyhgRmV0Y2hpbmcgYW1lbmRlbWVudHMgc2VhcmNoIHBhZ2UgYXQgJHt1cmx94oCmYClcbiAgICB9XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh1cmwpXG4gICAgYXNzZXJ0KFxuICAgICAgcmVzcG9uc2Uub2ssXG4gICAgICBgUmV0cmlldmFsIG9mIHNlYXJjaCBwYWdlIGF0ICR7dXJsfSBmYWlsZWQgd2l0aCBlcnJvcjogJHtyZXNwb25zZS5zdGF0dXN9ICR7cmVzcG9uc2Uuc3RhdHVzVGV4dH1gLFxuICAgIClcbiAgICBjb25zdCBwYWdlID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpXG4gICAgY29uc3QgaHRtbCA9IHBhcnNlSHRtbChwYWdlKVxuICAgIGlmIChodG1sLnF1ZXJ5U2VsZWN0b3IoXCJkaXYubm8tcmVzdWx0XCIpICE9PSBudWxsKSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgICBjb25zdCBhbWVuZGVtZW50c0NvdW50RGl2ID0gaHRtbC5xdWVyeVNlbGVjdG9yKFwiZGl2Lm1pcnJvci1jYXJkLXN1YnRpdGxlXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzQ291bnREaXYsIG51bGwpXG4gICAgY29uc3QgYW1lbmRlbWVudHNDb3VudCA9IHBhcnNlSW50KC9cXGQrLy5leGVjKGFtZW5kZW1lbnRzQ291bnREaXYhLnRleHQpIVswXSlcbiAgICBjb25zdCBhbWVuZGVtZW50c0RpdiA9IGh0bWwucXVlcnlTZWxlY3RvcihcbiAgICAgIFwiZGl2LmFtZW5kZW1lbnQtbGlzdC0tcmVzdWx0cy10YWJsZVwiLFxuICAgIClcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNEaXYsIG51bGwpXG4gICAgY29uc3QgYW1lbmRlbWVudHNUYWJsZSA9IGFtZW5kZW1lbnRzRGl2IS5xdWVyeVNlbGVjdG9yKFwidGFibGVcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNUYWJsZSwgbnVsbClcbiAgICBjb25zdCB0Zm9vdFRyID0gYW1lbmRlbWVudHNUYWJsZSEucXVlcnlTZWxlY3RvcihcInRmb290ID4gdHJcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwodGZvb3RUciwgbnVsbClcbiAgICBjb25zdCB0Zm9vdFRyQ2VsbHMgPSB0Zm9vdFRyIVxuICAgICAgLnF1ZXJ5U2VsZWN0b3JBbGwoXCJ0ZCwgdGhcIilcbiAgICAgIC5tYXAoKGNlbGwpID0+IGNlbGwudGV4dClcbiAgICBhc3NlcnQoXG4gICAgICBkZWVwRXF1YWwodGZvb3RUckNlbGxzLCBbXG4gICAgICAgIFwiXCIsXG4gICAgICAgIFwibsKwXCIsXG4gICAgICAgIFwiRG9zc2llciBsw6lnaXNsYXRpZlwiLFxuICAgICAgICBcIkVtcGxhY2VtZW50XCIsXG4gICAgICAgIFwiQXV0ZXVyXCIsXG4gICAgICAgIFwiw4l0YXRcIixcbiAgICAgICAgXCJTb3J0XCIsXG4gICAgICAgIFwiRGF0ZSBkJ2V4YW1lblwiLFxuICAgICAgICBcIkV4YW1pbsOpIHBhclwiLFxuICAgICAgICBcIlRleHRlIHZpc8OpXCIsXG4gICAgICAgIFwiRGF0ZSBkZSBkw6lww7R0XCIsXG4gICAgICBdKSxcbiAgICAgIGBVbmV4cGVjdGVkIGNvbHVtbnMgaW4gJHtKU09OLnN0cmluZ2lmeSh0Zm9vdFRyQ2VsbHMsIG51bGwsIDIpfWAsXG4gICAgKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzVHIgPSBhbWVuZGVtZW50c1RhYmxlIS5xdWVyeVNlbGVjdG9yQWxsKFwidGJvZHkgPiB0clwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50c1RyLmxlbmd0aCwgMClcbiAgICBmb3IgKGNvbnN0IGFtZW5kZW1lbnRUciBvZiBhbWVuZGVtZW50c1RyKSB7XG4gICAgICBhbWVuZGVtZW50TnVtYmVyKytcblxuICAgICAgaWYgKG1pbkRhdGVEZXBvdCAhPSBudWxsIHx8IG1pbkRhdGVFeGFtZW4gIT0gbnVsbCkge1xuICAgICAgICBjb25zdCBhbWVuZGVtZW50VGRMaXN0ID0gYW1lbmRlbWVudFRyLnF1ZXJ5U2VsZWN0b3JBbGwoXCJ0ZFwiKVxuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICAgICAgYW1lbmRlbWVudFRkTGlzdC5sZW5ndGgsXG4gICAgICAgICAgMTEsXG4gICAgICAgICAgYFVuZXhwZWN0ZWQgbnVtYmVyIG9mIGNvbHVtbnMgaW4gYW1lbmRtZW50IHJvdzogJHthbWVuZGVtZW50VHIub3V0ZXJIVE1MfWAsXG4gICAgICAgIClcbiAgICAgICAgaWYgKG1pbkRhdGVEZXBvdCAhPSBudWxsKSB7XG4gICAgICAgICAgY29uc3QgZGF0ZURlcG90VGQgPSBhbWVuZGVtZW50VGRMaXN0WzEwXVxuICAgICAgICAgIGNvbnN0IGRhdGVEZXBvdCA9IGZvcm1hdElTTyhcbiAgICAgICAgICAgIHBhcnNlRGF0ZShkYXRlRGVwb3RUZC50ZXh0LCBcImQgTU1NTSB5XCIsIG5ldyBEYXRlKCksIHtcbiAgICAgICAgICAgICAgbG9jYWxlOiBmckxvY2FsZSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgeyByZXByZXNlbnRhdGlvbjogXCJkYXRlXCIgfSxcbiAgICAgICAgICApXG4gICAgICAgICAgaWYgKGRhdGVEZXBvdCA8IG1pbkRhdGVEZXBvdCkge1xuICAgICAgICAgICAgLy8gU2luY2UgdGhlIGFtZW5kbWVudHMgYXJlIHNvcnRlZCBieSBkZXBvc2l0IGRhdGUsIG9uY2UgYW4gYW1lbmRtZW50XG4gICAgICAgICAgICAvLyB3aXRoIGFuIG9sZCBkZXBvc2l0IGRhdGUgaXMgZW5jb3VudGVyZWQsIHRoZSBmdWxsIHNlYXJjaCBjYW4gYmUgc3RvcHBlZC5cbiAgICAgICAgICAgIGJyZWFrIGl0ZXJTZWFyY2hQYWdlc1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAobWluRGF0ZUV4YW1lbiAhPSBudWxsKSB7XG4gICAgICAgICAgY29uc3QgZGF0ZUV4YW1lblRkID0gYW1lbmRlbWVudFRkTGlzdFs3XVxuICAgICAgICAgIGlmIChkYXRlRXhhbWVuVGQudGV4dCkge1xuICAgICAgICAgICAgY29uc3QgZGF0ZUV4YW1lbiA9IGZvcm1hdElTTyhcbiAgICAgICAgICAgICAgcGFyc2VEYXRlKGRhdGVFeGFtZW5UZC50ZXh0LCBcImQgTU1NTSB5XCIsIG5ldyBEYXRlKCksIHtcbiAgICAgICAgICAgICAgICBsb2NhbGU6IGZyTG9jYWxlLFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgeyByZXByZXNlbnRhdGlvbjogXCJkYXRlXCIgfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGlmIChkYXRlRXhhbWVuIDwgbWluRGF0ZUV4YW1lbikge1xuICAgICAgICAgICAgICAvLyBUaGlzIGFtZW5kbWVudCBoYXMgYmVlbiBkaXNjdXNzZWQgc2luY2UgYSBmZXcgZGF5cy5cbiAgICAgICAgICAgICAgLy8gPT4gSWdub3JlIGl0LCBiZWNhdXNlIGl0IHNob3VsZCBiZSBpbiBBc3NlbWJsw6llIG9wZW4gZGF0YS5cbiAgICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgYW1lbmRlbWVudFVybFBhdGggPSBhbWVuZGVtZW50VHIuZ2V0QXR0cmlidXRlKFwiZGF0YS1ocmVmXCIpXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudFVybFBhdGgsIHVuZGVmaW5lZClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRVcmxQYXRoU3BsaXR0ZWQgPSBhbWVuZGVtZW50VXJsUGF0aCEuc3BsaXQoXCIvXCIpXG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICAgIGFtZW5kZW1lbnRVcmxQYXRoU3BsaXR0ZWRbMF0sXG4gICAgICAgIFwiXCIsXG4gICAgICAgIGBVbmV4cGVjdGVkIFVSTCBwYXRoIGZvciBhbWVuZGVtZW50OiAke2FtZW5kZW1lbnRVcmxQYXRofWAsXG4gICAgICApXG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICAgIGFtZW5kZW1lbnRVcmxQYXRoU3BsaXR0ZWRbMV0sXG4gICAgICAgIFwiZHluXCIsXG4gICAgICAgIGBVbmV4cGVjdGVkIFVSTCBwYXRoIGZvciBhbWVuZGVtZW50OiAke2FtZW5kZW1lbnRVcmxQYXRofWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCA9XG4gICAgICAgIHBhdGguam9pbihcbiAgICAgICAgICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyLFxuICAgICAgICAgIC4uLmFtZW5kZW1lbnRVcmxQYXRoU3BsaXR0ZWQuc2xpY2UoMiksXG4gICAgICAgICkgKyBcIi5odG1sXCJcbiAgICAgIGF3YWl0IGZzLmVuc3VyZURpcihwYXRoLmRpcm5hbWUoYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgpKVxuICAgICAgY29uc3QgZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUgPSAoYXdhaXQgZnMucGF0aEV4aXN0cyhcbiAgICAgICAgYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgsXG4gICAgICApKVxuICAgICAgICA/IGF3YWl0IGZzLnJlYWRGaWxlKGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoLCBcInV0ZjhcIilcbiAgICAgICAgOiBudWxsXG4gICAgICBjb25zdCBhbWVuZGVtZW50VHJPdXRlckh0bWwgPSBhbWVuZGVtZW50VHIub3V0ZXJIVE1MXG4gICAgICBjb25zdCBhbWVuZGVtZW50U2VhcmNoQ2FjaGUgPSBgLS0tXFxuJHtqc1lhbWwuZHVtcChcbiAgICAgICAge1xuICAgICAgICAgIHBvc2l0aW9uOiBhbWVuZGVtZW50c0NvdW50IC0gYW1lbmRlbWVudE51bWJlcixcbiAgICAgICAgICBzZWFyY2g6IHVybC5yZXBsYWNlKC8mcGFnZT1bXFxkXSsvLCBcIlwiKSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHNvcnRLZXlzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgKX0tLS1cXG5cXG4ke2FtZW5kZW1lbnRUck91dGVySHRtbH1gXG4gICAgICBpZiAoYW1lbmRlbWVudFNlYXJjaENhY2hlID09PSBleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSkge1xuICAgICAgICBpZiAoaW5jcmVtZW50YWwpIHtcbiAgICAgICAgICAvLyBUaGUgc2FtZSA8dHI+IGlzIGFscmVhZHkgaW4gY2FjaGUgYW5kIGluIHRoZSBzYW1lIHBvc2l0aW9uLlxuICAgICAgICAgIC8vIEFzc3VtZSB0aGF0IGZvbGxvd2luZyBhbWVuZG1lbnRzIGFyZSBub3QgY2hhbmdlZCBhbmQgc3RvcCBsb29raW5nXG4gICAgICAgICAgLy8gZm9yIGFtZW5kbWVudHMgdG8gdXBzZXJ0LlxuICAgICAgICAgIGJyZWFrIGl0ZXJTZWFyY2hQYWdlc1xuICAgICAgICB9XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgIGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlICE9PSBudWxsICYmXG4gICAgICAgIGZyb250TWF0dGVyKGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlKS5ib2R5ID09PVxuICAgICAgICAgIGFtZW5kZW1lbnRUck91dGVySHRtbFxuICAgICAgKSB7XG4gICAgICAgIC8vIFRoZSBzYW1lIDx0cj4gaXMgYWxyZWFkeSBpbiBjYWNoZSwgYnV0IGluIGEgZGlmZmVyZW50IHBvc2l0aW9uLlxuICAgICAgICAvLyBBc3N1bWUgdGhlIGFtZW5kbWVudCBpcyB1bmNoYW5nZWQuXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBpZiAob3B0aW9ucy52ZXJib3NlKSB7XG4gICAgICAgIGlmIChleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSA9PT0gbnVsbCkge1xuICAgICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgYEFkZGluZyBhbWVuZGVtZW50IHNlYXJjaCBjYWNoZTogJHthbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aH3igKZgLFxuICAgICAgICAgIClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgIGBVcGRhdGluZyBhbWVuZGVtZW50IHNlYXJjaCBjYWNoZTogJHthbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aH3igKZgLFxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgYW1lbmRlbWVudEh0bWxVcmwgPSBuZXcgVVJMKFxuICAgICAgICBhbWVuZGVtZW50VXJsUGF0aCEsXG4gICAgICAgIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIixcbiAgICAgICkudG9TdHJpbmcoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEh0bWxSZXNwb25zZSA9IGF3YWl0IGZldGNoKGFtZW5kZW1lbnRIdG1sVXJsKVxuICAgICAgaWYgKGFtZW5kZW1lbnRIdG1sUmVzcG9uc2Uuc3RhdHVzID09PSA0MDQpIHtcbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgYEFtZW5kZW1lbnQgSFRNTCBwYWdlIG5vdCBmb3VuZCBhdCAke2FtZW5kZW1lbnRIdG1sVXJsfS4gU2tpcHBpbmcuYCxcbiAgICAgICAgKVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgYXNzZXJ0KFxuICAgICAgICBhbWVuZGVtZW50SHRtbFJlc3BvbnNlLm9rLFxuICAgICAgICBgUmV0cmlldmFsIG9mIGFtZW5kZW1lbnQgSFRNTCBwYWdlIGF0ICR7YW1lbmRlbWVudEh0bWxVcmx9IGZhaWxlZCB3aXRoIGVycm9yOiAke2FtZW5kZW1lbnRIdG1sUmVzcG9uc2Uuc3RhdHVzfSAke2FtZW5kZW1lbnRIdG1sUmVzcG9uc2Uuc3RhdHVzVGV4dH1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEh0bWxQYWdlID0gYXdhaXQgYW1lbmRlbWVudEh0bWxSZXNwb25zZS50ZXh0KClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sID0gcGFyc2VIdG1sKGFtZW5kZW1lbnRIdG1sUGFnZSlcbiAgICAgIGNvbnN0IGZvcm1hdHNMaSA9IGFtZW5kZW1lbnRIdG1sLnF1ZXJ5U2VsZWN0b3JBbGwoXG4gICAgICAgIFwibGkubWlycm9yLWNhcmQtaGVhZGVyLS1vcHRpb25zLS1jb250ZW50LS1pdGVtXCIsXG4gICAgICApXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoZm9ybWF0c0xpLmxlbmd0aCwgMClcbiAgICAgIGNvbnN0IGpzb25MaSA9IGZvcm1hdHNMaS5maW5kKChmb3JtYXRMaSkgPT4ge1xuICAgICAgICBjb25zdCBmb3JtYXRTcGFuID0gZm9ybWF0TGkucXVlcnlTZWxlY3RvcihcImEgPiBzcGFuXCIpXG4gICAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAgICBmb3JtYXRTcGFuLFxuICAgICAgICAgIG51bGwsXG4gICAgICAgICAgYE5vIDxzcGFuPiBpbiA8YT4gZm91bmQgaW4gJHtmb3JtYXRMaS50b1N0cmluZygpfWAsXG4gICAgICAgIClcbiAgICAgICAgcmV0dXJuIGZvcm1hdFNwYW4hLnRleHQgPT09IFwiVmVyc2lvbiBKU09OXCJcbiAgICAgIH0pXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgIGpzb25MaSxcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICBgTm8gSlNPTiB2ZXJzaW9uIGZvdW5kIGZvciBhbWVuZGVtZW50IGF0ICR7YW1lbmRlbWVudEh0bWxVcmx9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGpzb25BID0ganNvbkxpIS5xdWVyeVNlbGVjdG9yKFwiYVwiKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICBqc29uQSxcbiAgICAgICAgbnVsbCxcbiAgICAgICAgYE5vIDxhPiBmb3VuZCBpbiAke2pzb25MaSEudG9TdHJpbmcoKX1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEpzb25VcmxQYXRoID0ganNvbkEhLmdldEF0dHJpYnV0ZShcImhyZWZcIilcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudEpzb25VcmxQYXRoLFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIGBObyBVUkwgZm91bmQgZm9yIEpTT04gdmVyc2lvbiBvZiBhbWVuZGVtZW50OiAke2pzb25MaSEudG9TdHJpbmcoKX1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEpzb25VcmwgPSBuZXcgVVJMKFxuICAgICAgICBhbWVuZGVtZW50SnNvblVybFBhdGghLFxuICAgICAgICBcImh0dHBzOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvXCIsXG4gICAgICApLnRvU3RyaW5nKClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRKc29uUmVzcG9uc2UgPSBhd2FpdCBmZXRjaChhbWVuZGVtZW50SnNvblVybClcbiAgICAgIGFzc2VydChcbiAgICAgICAgYW1lbmRlbWVudEpzb25SZXNwb25zZS5vayxcbiAgICAgICAgYFJldHJpZXZhbCBvZiBhbWVuZGVtZW50IEpTT04gcGFnZSBhdCAke2FtZW5kZW1lbnRKc29uVXJsfSBmYWlsZWQgd2l0aCBlcnJvcjogJHthbWVuZGVtZW50SnNvblJlc3BvbnNlLnN0YXR1c30gJHthbWVuZGVtZW50SnNvblJlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnQgPSBhd2FpdCBhbWVuZGVtZW50SnNvblJlc3BvbnNlLmpzb24oKVxuICAgICAgeWllbGQgW2FtZW5kZW1lbnRVcmxQYXRoISwgYW1lbmRlbWVudF1cblxuICAgICAgLy8gU2VhcmNoQ2FjaGUgbXVzdCBiZSB3cml0dGVuIGF0IHRoZSBlbmQgdG8gZW5zdXJlIHRoYXQgZXZlcnl0aGluZyBpcyBpbiBhIGNvbnNpc3RlbnQgc3RhdGUsXG4gICAgICAvLyBldmVuIGlmIHNjcmlwdCBmYWlscyBhYnJ1cHRseS5cbiAgICAgIGF3YWl0IGZzLndyaXRlRmlsZShcbiAgICAgICAgYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgsXG4gICAgICAgIGFtZW5kZW1lbnRTZWFyY2hDYWNoZSxcbiAgICAgICAgXCJ1dGY4XCIsXG4gICAgICApXG4gICAgfVxuXG4gICAgY29uc3QgcGFnaW5hdGlvbkEgPSBodG1sLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcImRpdi5hbi1wYWdpbmF0aW9uLS1pdGVtID4gaS5hbi1pY29ucy1jaGV2cm9uLXJpZ2h0IH4gYVwiLFxuICAgIClcbiAgICBpZiAocGFnaW5hdGlvbkEgPT09IG51bGwpIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICAgIGNvbnN0IHVybFBhdGggPSBwYWdpbmF0aW9uQS5nZXRBdHRyaWJ1dGUoXCJocmVmXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHVybFBhdGgsIHVuZGVmaW5lZClcbiAgICB1cmwgPSBuZXcgVVJMKHVybFBhdGghLCBcImh0dHBzOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvXCIpLnRvU3RyaW5nKClcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLEdBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFVBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLFFBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQVAsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFPLE9BQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFR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
|
|
403
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYXNzZXJ0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZm9ybWF0SVNPIiwiX2ZyIiwiX3BhcnNlIiwiX2RlZXBFcXVhbCIsIl9mc0V4dHJhIiwiX2Zyb250TWF0dGVyIiwiX2pzWWFtbCIsIl9ub2RlSHRtbFBhcnNlciIsIl9wYXRoIiwiX2NsZWFuZXJzIiwiX2FtZW5kZW1lbnRzIiwiZSIsIl9fZXNNb2R1bGUiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJyIiwiX2FycmF5V2l0aG91dEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVNwcmVhZCIsIlR5cGVFcnJvciIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiQXJyYXkiLCJmcm9tIiwiaXNBcnJheSIsIl9hcnJheUxpa2VUb0FycmF5IiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJ0IiwibGVuZ3RoIiwiX24iLCJGIiwicyIsIm4iLCJkb25lIiwidmFsdWUiLCJmIiwibyIsImEiLCJ1IiwiY2FsbCIsIm5leHQiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJkZWZpbmVQcm9wZXJ0eSIsImkiLCJjIiwiYXN5bmNJdGVyYXRvciIsInRvU3RyaW5nVGFnIiwiZGVmaW5lIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwid3JhcCIsIkdlbmVyYXRvciIsImNyZWF0ZSIsIkNvbnRleHQiLCJtYWtlSW52b2tlTWV0aG9kIiwidHJ5Q2F0Y2giLCJ0eXBlIiwiYXJnIiwiaCIsImwiLCJ5IiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsInAiLCJkIiwiZ2V0UHJvdG90eXBlT2YiLCJ2IiwidmFsdWVzIiwiZyIsImRlZmluZUl0ZXJhdG9yTWV0aG9kcyIsImZvckVhY2giLCJfaW52b2tlIiwiQXN5bmNJdGVyYXRvciIsImludm9rZSIsIl90eXBlb2YiLCJyZXNvbHZlIiwiX19hd2FpdCIsInRoZW4iLCJjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZyIsIkVycm9yIiwibWV0aG9kIiwiZGVsZWdhdGUiLCJtYXliZUludm9rZURlbGVnYXRlIiwic2VudCIsIl9zZW50IiwiZGlzcGF0Y2hFeGNlcHRpb24iLCJhYnJ1cHQiLCJyZXN1bHROYW1lIiwibmV4dExvYyIsInB1c2hUcnlFbnRyeSIsInRyeUxvYyIsImNhdGNoTG9jIiwiZmluYWxseUxvYyIsImFmdGVyTG9jIiwidHJ5RW50cmllcyIsInB1c2giLCJyZXNldFRyeUVudHJ5IiwiY29tcGxldGlvbiIsInJlc2V0IiwiaXNOYU4iLCJkaXNwbGF5TmFtZSIsImlzR2VuZXJhdG9yRnVuY3Rpb24iLCJjb25zdHJ1Y3RvciIsIm5hbWUiLCJtYXJrIiwic2V0UHJvdG90eXBlT2YiLCJfX3Byb3RvX18iLCJhd3JhcCIsImFzeW5jIiwiUHJvbWlzZSIsImtleXMiLCJyZXZlcnNlIiwicG9wIiwicHJldiIsImNoYXJBdCIsInNsaWNlIiwic3RvcCIsInJ2YWwiLCJoYW5kbGUiLCJjb21wbGV0ZSIsImZpbmlzaCIsIl9jYXRjaCIsImRlbGVnYXRlWWllbGQiLCJfc2xpY2VkVG9BcnJheSIsIl9hcnJheVdpdGhIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXlMaW1pdCIsIl9ub25JdGVyYWJsZVJlc3QiLCJ0b1N0cmluZyIsInRlc3QiLCJfYXdhaXRBc3luY0dlbmVyYXRvciIsIl9PdmVybG9hZFlpZWxkIiwiX3dyYXBBc3luY0dlbmVyYXRvciIsIkFzeW5jR2VuZXJhdG9yIiwiYXBwbHkiLCJhcmd1bWVudHMiLCJyZXN1bWUiLCJrIiwic2V0dGxlIiwicmVqZWN0Iiwia2V5IiwiX2FzeW5jSXRlcmF0b3IiLCJBc3luY0Zyb21TeW5jSXRlcmF0b3IiLCJBc3luY0Zyb21TeW5jSXRlcmF0b3JDb250aW51YXRpb24iLCJfcmV0dXJuIiwiX3Rocm93IiwiaXRlclJlY2hlcmNoZUFtZW5kZW1lbnRzIiwiX3giLCJfeDIiLCJfeDMiLCJfeDQiLCJfeDUiLCJfaXRlclJlY2hlcmNoZUFtZW5kZW1lbnRzIiwiYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpciIsInVybCIsImluY3JlbWVudGFsIiwibWluRGF0ZURlcG90IiwibWluRGF0ZUV4YW1lbiIsIm9wdGlvbnMiLCJ1bmRlZmluZWQiLCJfY2FsbGVlIiwiX2l0ZXJhdG9yQWJydXB0Q29tcGxldGlvbiIsIl9kaWRJdGVyYXRvckVycm9yIiwiX2l0ZXJhdG9yRXJyb3IiLCJfaXRlcmF0b3IiLCJfc3RlcCIsIl9zdGVwJHZhbHVlIiwiYW1lbmRlbWVudFVybFBhdGgiLCJhbWVuZGVtZW50IiwiX2NhbGxlZSQiLCJfY29udGV4dCIsIml0ZXJSZWNoZXJjaGVSYXdBbWVuZGVtZW50cyIsImNsZWFuQW1lbmRlbWVudCIsIkFtZW5kZW1lbnRzQ29udmVydCIsInRvQW1lbmRlbWVudCIsIkpTT04iLCJzdHJpbmdpZnkiLCJ0MCIsIl94NiIsIl94NyIsIl94OCIsIl94OSIsIl94MTAiLCJfaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzIiwiX2NhbGxlZTIiLCJhbWVuZGVtZW50TnVtYmVyIiwicmVzcG9uc2UiLCJwYWdlIiwiaHRtbCIsImFtZW5kZW1lbnRzQ291bnREaXYiLCJhbWVuZGVtZW50c0NvdW50IiwiYW1lbmRlbWVudHNEaXYiLCJhbWVuZGVtZW50c1RhYmxlIiwidGZvb3RUciIsInRmb290VHJDZWxscyIsImFtZW5kZW1lbnRzVHIiLCJfaXRlcmF0b3IyIiwiX3N0ZXAyIiwiYW1lbmRlbWVudFRyIiwiYW1lbmRlbWVudFRkTGlzdCIsImRhdGVEZXBvdFRkIiwiZGF0ZURlcG90IiwiZGF0ZUV4YW1lblRkIiwiZGF0ZUV4YW1lbiIsImFtZW5kZW1lbnRVcmxQYXRoU3BsaXR0ZWQiLCJhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCIsImV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlIiwiYW1lbmRlbWVudFRyT3V0ZXJIdG1sIiwiYW1lbmRlbWVudFNlYXJjaENhY2hlIiwiYW1lbmRlbWVudEh0bWxVcmwiLCJhbWVuZGVtZW50SHRtbFJlc3BvbnNlIiwiYW1lbmRlbWVudEh0bWxQYWdlIiwiYW1lbmRlbWVudEh0bWwiLCJmb3JtYXRzTGkiLCJqc29uTGkiLCJqc29uQSIsImFtZW5kZW1lbnRKc29uVXJsUGF0aCIsImFtZW5kZW1lbnRKc29uVXJsIiwiYW1lbmRlbWVudEpzb25SZXNwb25zZSIsInBhZ2luYXRpb25BIiwidXJsUGF0aCIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsImZzIiwiZW5zdXJlRGlyIiwiYXNzZXJ0Iiwic3RyaWN0RXF1YWwiLCJleGVjIiwiY29uY2F0Iiwibm90U3RyaWN0RXF1YWwiLCJpbmNsdWRlcyIsInZlcmJvc2UiLCJjb25zb2xlIiwibG9nIiwiZmV0Y2giLCJvayIsInN0YXR1cyIsInN0YXR1c1RleHQiLCJ0ZXh0IiwicGFyc2VIdG1sIiwicXVlcnlTZWxlY3RvciIsInBhcnNlSW50IiwicXVlcnlTZWxlY3RvckFsbCIsIm1hcCIsImNlbGwiLCJkZWVwRXF1YWwiLCJvdXRlckhUTUwiLCJmb3JtYXRJU08iLCJwYXJzZURhdGUiLCJEYXRlIiwibG9jYWxlIiwiZnJMb2NhbGUiLCJyZXByZXNlbnRhdGlvbiIsImdldEF0dHJpYnV0ZSIsInNwbGl0IiwicGF0aCIsImpvaW4iLCJkaXJuYW1lIiwicGF0aEV4aXN0cyIsInJlYWRGaWxlIiwianNZYW1sIiwiZHVtcCIsInBvc2l0aW9uIiwic2VhcmNoIiwicmVwbGFjZSIsInNvcnRLZXlzIiwiZnJvbnRNYXR0ZXIiLCJib2R5IiwiVVJMIiwiZmluZCIsImZvcm1hdExpIiwiZm9ybWF0U3BhbiIsImpzb24iLCJ3cml0ZUZpbGUiLCJ0MSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYXJzZXJzL3JlY2hlcmNoZV9hbWVuZGVtZW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gXCJhc3NlcnRcIlxuaW1wb3J0IHsgZm9ybWF0SVNPIH0gZnJvbSBcImRhdGUtZm5zL2Zvcm1hdElTT1wiXG5pbXBvcnQgeyBmciBhcyBmckxvY2FsZSB9IGZyb20gXCJkYXRlLWZucy9sb2NhbGUvZnJcIlxuaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VEYXRlIH0gZnJvbSBcImRhdGUtZm5zL3BhcnNlXCJcbmltcG9ydCBkZWVwRXF1YWwgZnJvbSBcImRlZXAtZXF1YWxcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgZnJvbnRNYXR0ZXIgZnJvbSBcImZyb250LW1hdHRlclwiXG5pbXBvcnQganNZYW1sIGZyb20gXCJqcy15YW1sXCJcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlSHRtbCB9IGZyb20gXCJub2RlLWh0bWwtcGFyc2VyXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHsgY2xlYW5BbWVuZGVtZW50IH0gZnJvbSBcIi4uL2NsZWFuZXJzXCJcbmltcG9ydCB7IEFtZW5kZW1lbnQgYXMgUmF3QW1lbmRlbWVudCB9IGZyb20gXCIuLi9yYXdfdHlwZXMvYW1lbmRlbWVudHNcIlxuaW1wb3J0IHsgQW1lbmRlbWVudCwgQ29udmVydCBhcyBBbWVuZGVtZW50c0NvbnZlcnQgfSBmcm9tIFwiLi4vdHlwZXMvYW1lbmRlbWVudHNcIlxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGl0ZXJSZWNoZXJjaGVBbWVuZGVtZW50cyhcbiAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcjogc3RyaW5nLFxuICB1cmw6IHN0cmluZyxcbiAgaW5jcmVtZW50YWw6IGJvb2xlYW4sXG4gIG1pbkRhdGVEZXBvdD86IHN0cmluZyB8IG51bGwsXG4gIG1pbkRhdGVFeGFtZW4/OiBzdHJpbmcgfCBudWxsLFxuICBvcHRpb25zOiB7IHNpbGVudD86IGJvb2xlYW47IHZlcmJvc2U/OiBib29sZWFuIH0gPSB7fSxcbik6IEFzeW5jR2VuZXJhdG9yPFtzdHJpbmcsIEFtZW5kZW1lbnRdLCB2b2lkLCB1bmtub3duPiB7XG4gIGZvciBhd2FpdCAoY29uc3QgW1xuICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgIGFtZW5kZW1lbnQsXG4gIF0gb2YgaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgdXJsLFxuICAgIGluY3JlbWVudGFsLFxuICAgIG1pbkRhdGVEZXBvdCxcbiAgICBtaW5EYXRlRXhhbWVuLFxuICAgIG9wdGlvbnMsXG4gICkpIHtcbiAgICBjbGVhbkFtZW5kZW1lbnQoYW1lbmRlbWVudClcbiAgICAvLyBEb3VibGUgY29udmVyc2lvbiwgdG8gY29udmVydCBzdHJpbmdzIHRvIGRhdGVzLlxuICAgIHlpZWxkIFtcbiAgICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgICAgQW1lbmRlbWVudHNDb252ZXJ0LnRvQW1lbmRlbWVudChKU09OLnN0cmluZ2lmeShhbWVuZGVtZW50KSksXG4gICAgXVxuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyOiBzdHJpbmcsXG4gIHVybDogc3RyaW5nLFxuICBpbmNyZW1lbnRhbDogYm9vbGVhbixcbiAgbWluRGF0ZURlcG90Pzogc3RyaW5nIHwgbnVsbCxcbiAgbWluRGF0ZUV4YW1lbj86IHN0cmluZyB8IG51bGwsXG4gIG9wdGlvbnM6IHsgc2lsZW50PzogYm9vbGVhbjsgdmVyYm9zZT86IGJvb2xlYW4gfSA9IHt9LFxuKTogQXN5bmNHZW5lcmF0b3I8W3N0cmluZywgUmF3QW1lbmRlbWVudF0sIHZvaWQsIHVua25vd24+IHtcbiAgYXdhaXQgZnMuZW5zdXJlRGlyKGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIpXG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdZGF0ZV9kZXBvdD0vLmV4ZWModXJsKSxcbiAgICBudWxsLFxuICAgIGBVUkwgJHt1cmx9IGFscmVhZHkgY29udGFpbnMgYSBkZXBvc2l0IGRhdGVgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXW9yZGVyPS8uZXhlYyh1cmwpLFxuICAgIG51bGwsXG4gICAgYFVSTCAke3VybH0gYWxyZWFkeSBjb250YWlucyBhIHNvcnQgb3JkZXJgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXXBhZ2U9Ly5leGVjKHVybCksXG4gICAgbnVsbCxcbiAgICBgVVJMICR7dXJsfSBhbHJlYWR5IGNvbnRhaW5zIGEgcGFnZSBudW1iZXJgLFxuICApXG4gIGlmIChpbmNyZW1lbnRhbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9bPyZdZXRhdD0vLmV4ZWModXJsKSxcbiAgICAgIG51bGwsXG4gICAgICBgSW4gaW5jcmVtZW50YWwgbW9kZSwgVVJMICR7dXJsfSBtdXN0IGNvbnRhaW4gYW4gXCJldGF0XCIgcXVlcnkgcGFyYW1ldGVyYCxcbiAgICApXG4gIH1cbiAgdXJsICs9ICh1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIikgKyBcIm9yZGVyPWRhdGVfZGVwb3QsZGVzYyZwYWdlPTFcIlxuXG4gIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9cXGR7NH0tXFxkezJ9LVxcZHsyfS8uZXhlYyhtaW5EYXRlRGVwb3QpLFxuICAgICAgbnVsbCxcbiAgICAgIGBJbnZhbGlkIGZvcm1hdCBmb3IgbWluaW11bSBkYXRlOiAke21pbkRhdGVEZXBvdH1gLFxuICAgIClcbiAgfVxuXG4gIGxldCBhbWVuZGVtZW50TnVtYmVyID0gMFxuICBpdGVyU2VhcmNoUGFnZXM6IHdoaWxlICh0cnVlKSB7XG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coYEZldGNoaW5nIGFtZW5kZW1lbnRzIHNlYXJjaCBwYWdlIGF0ICR7dXJsfeKApmApXG4gICAgfVxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKVxuICAgIGFzc2VydChcbiAgICAgIHJlc3BvbnNlLm9rLFxuICAgICAgYFJldHJpZXZhbCBvZiBzZWFyY2ggcGFnZSBhdCAke3VybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICApXG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKVxuICAgIGNvbnN0IGh0bWwgPSBwYXJzZUh0bWwocGFnZSlcbiAgICBpZiAoaHRtbC5xdWVyeVNlbGVjdG9yKFwiZGl2Lm5vLXJlc3VsdFwiKSAhPT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgYW1lbmRlbWVudHNDb3VudERpdiA9IGh0bWwucXVlcnlTZWxlY3RvcihcImRpdi5taXJyb3ItY2FyZC1zdWJ0aXRsZVwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50c0NvdW50RGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzQ291bnQgPSBwYXJzZUludCgvXFxkKy8uZXhlYyhhbWVuZGVtZW50c0NvdW50RGl2IS50ZXh0KSFbMF0pXG4gICAgY29uc3QgYW1lbmRlbWVudHNEaXYgPSBodG1sLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcImRpdi5hbWVuZGVtZW50LWxpc3QtLXJlc3VsdHMtdGFibGVcIixcbiAgICApXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzRGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzVGFibGUgPSBhbWVuZGVtZW50c0RpdiEucXVlcnlTZWxlY3RvcihcInRhYmxlXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzVGFibGUsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUciA9IGFtZW5kZW1lbnRzVGFibGUhLnF1ZXJ5U2VsZWN0b3IoXCJ0Zm9vdCA+IHRyXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHRmb290VHIsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUckNlbGxzID0gdGZvb3RUciFcbiAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKFwidGQsIHRoXCIpXG4gICAgICAubWFwKChjZWxsKSA9PiBjZWxsLnRleHQpXG4gICAgYXNzZXJ0KFxuICAgICAgZGVlcEVxdWFsKHRmb290VHJDZWxscywgW1xuICAgICAgICBcIlwiLFxuICAgICAgICBcIm7CsFwiLFxuICAgICAgICBcIkRvc3NpZXIgbMOpZ2lzbGF0aWZcIixcbiAgICAgICAgXCJFbXBsYWNlbWVudFwiLFxuICAgICAgICBcIkF1dGV1clwiLFxuICAgICAgICBcIsOJdGF0XCIsXG4gICAgICAgIFwiU29ydFwiLFxuICAgICAgICBcIkRhdGUgZCdleGFtZW5cIixcbiAgICAgICAgXCJFeGFtaW7DqSBwYXJcIixcbiAgICAgICAgXCJUZXh0ZSB2aXPDqVwiLFxuICAgICAgICBcIkRhdGUgZGUgZMOpcMO0dFwiLFxuICAgICAgXSksXG4gICAgICBgVW5leHBlY3RlZCBjb2x1bW5zIGluICR7SlNPTi5zdHJpbmdpZnkodGZvb3RUckNlbGxzLCBudWxsLCAyKX1gLFxuICAgIClcbiAgICBjb25zdCBhbWVuZGVtZW50c1RyID0gYW1lbmRlbWVudHNUYWJsZSEucXVlcnlTZWxlY3RvckFsbChcInRib2R5ID4gdHJcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNUci5sZW5ndGgsIDApXG4gICAgZm9yIChjb25zdCBhbWVuZGVtZW50VHIgb2YgYW1lbmRlbWVudHNUcikge1xuICAgICAgYW1lbmRlbWVudE51bWJlcisrXG5cbiAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCB8fCBtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgY29uc3QgYW1lbmRlbWVudFRkTGlzdCA9IGFtZW5kZW1lbnRUci5xdWVyeVNlbGVjdG9yQWxsKFwidGRcIilcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICAgIGFtZW5kZW1lbnRUZExpc3QubGVuZ3RoLFxuICAgICAgICAgIDExLFxuICAgICAgICAgIGBVbmV4cGVjdGVkIG51bWJlciBvZiBjb2x1bW5zIGluIGFtZW5kbWVudCByb3c6ICR7YW1lbmRlbWVudFRyLm91dGVySFRNTH1gLFxuICAgICAgICApXG4gICAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVEZXBvdFRkID0gYW1lbmRlbWVudFRkTGlzdFsxMF1cbiAgICAgICAgICBjb25zdCBkYXRlRGVwb3QgPSBmb3JtYXRJU08oXG4gICAgICAgICAgICBwYXJzZURhdGUoZGF0ZURlcG90VGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7XG4gICAgICAgICAgICAgIGxvY2FsZTogZnJMb2NhbGUsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHsgcmVwcmVzZW50YXRpb246IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgKVxuICAgICAgICAgIGlmIChkYXRlRGVwb3QgPCBtaW5EYXRlRGVwb3QpIHtcbiAgICAgICAgICAgIC8vIFNpbmNlIHRoZSBhbWVuZG1lbnRzIGFyZSBzb3J0ZWQgYnkgZGVwb3NpdCBkYXRlLCBvbmNlIGFuIGFtZW5kbWVudFxuICAgICAgICAgICAgLy8gd2l0aCBhbiBvbGQgZGVwb3NpdCBkYXRlIGlzIGVuY291bnRlcmVkLCB0aGUgZnVsbCBzZWFyY2ggY2FuIGJlIHN0b3BwZWQuXG4gICAgICAgICAgICBicmVhayBpdGVyU2VhcmNoUGFnZXNcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1pbkRhdGVFeGFtZW4gIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVFeGFtZW5UZCA9IGFtZW5kZW1lbnRUZExpc3RbN11cbiAgICAgICAgICBpZiAoZGF0ZUV4YW1lblRkLnRleHQpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGVFeGFtZW4gPSBmb3JtYXRJU08oXG4gICAgICAgICAgICAgIHBhcnNlRGF0ZShkYXRlRXhhbWVuVGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7XG4gICAgICAgICAgICAgICAgbG9jYWxlOiBmckxvY2FsZSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIHsgcmVwcmVzZW50YXRpb246IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBpZiAoZGF0ZUV4YW1lbiA8IG1pbkRhdGVFeGFtZW4pIHtcbiAgICAgICAgICAgICAgLy8gVGhpcyBhbWVuZG1lbnQgaGFzIGJlZW4gZGlzY3Vzc2VkIHNpbmNlIGEgZmV3IGRheXMuXG4gICAgICAgICAgICAgIC8vID0+IElnbm9yZSBpdCwgYmVjYXVzZSBpdCBzaG91bGQgYmUgaW4gQXNzZW1ibMOpZSBvcGVuIGRhdGEuXG4gICAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRVcmxQYXRoID0gYW1lbmRlbWVudFRyLmdldEF0dHJpYnV0ZShcImRhdGEtaHJlZlwiKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRVcmxQYXRoLCB1bmRlZmluZWQpXG4gICAgICBjb25zdCBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkID0gYW1lbmRlbWVudFVybFBhdGghLnNwbGl0KFwiL1wiKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkWzBdLFxuICAgICAgICBcIlwiLFxuICAgICAgICBgVW5leHBlY3RlZCBVUkwgcGF0aCBmb3IgYW1lbmRlbWVudDogJHthbWVuZGVtZW50VXJsUGF0aH1gLFxuICAgICAgKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkWzFdLFxuICAgICAgICBcImR5blwiLFxuICAgICAgICBgVW5leHBlY3RlZCBVUkwgcGF0aCBmb3IgYW1lbmRlbWVudDogJHthbWVuZGVtZW50VXJsUGF0aH1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGggPVxuICAgICAgICBwYXRoLmpvaW4oXG4gICAgICAgICAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcixcbiAgICAgICAgICAuLi5hbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkLnNsaWNlKDIpLFxuICAgICAgICApICsgXCIuaHRtbFwiXG4gICAgICBhd2FpdCBmcy5lbnN1cmVEaXIocGF0aC5kaXJuYW1lKGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoKSlcbiAgICAgIGNvbnN0IGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlID0gKGF3YWl0IGZzLnBhdGhFeGlzdHMoXG4gICAgICAgIGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoLFxuICAgICAgKSlcbiAgICAgICAgPyBhd2FpdCBmcy5yZWFkRmlsZShhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCwgXCJ1dGY4XCIpXG4gICAgICAgIDogbnVsbFxuICAgICAgY29uc3QgYW1lbmRlbWVudFRyT3V0ZXJIdG1sID0gYW1lbmRlbWVudFRyLm91dGVySFRNTFxuICAgICAgY29uc3QgYW1lbmRlbWVudFNlYXJjaENhY2hlID0gYC0tLVxcbiR7anNZYW1sLmR1bXAoXG4gICAgICAgIHtcbiAgICAgICAgICBwb3NpdGlvbjogYW1lbmRlbWVudHNDb3VudCAtIGFtZW5kZW1lbnROdW1iZXIsXG4gICAgICAgICAgc2VhcmNoOiB1cmwucmVwbGFjZSgvJnBhZ2U9W1xcZF0rLywgXCJcIiksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzb3J0S2V5czogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICl9LS0tXFxuXFxuJHthbWVuZGVtZW50VHJPdXRlckh0bWx9YFxuICAgICAgaWYgKGFtZW5kZW1lbnRTZWFyY2hDYWNoZSA9PT0gZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUpIHtcbiAgICAgICAgaWYgKGluY3JlbWVudGFsKSB7XG4gICAgICAgICAgLy8gVGhlIHNhbWUgPHRyPiBpcyBhbHJlYWR5IGluIGNhY2hlIGFuZCBpbiB0aGUgc2FtZSBwb3NpdGlvbi5cbiAgICAgICAgICAvLyBBc3N1bWUgdGhhdCBmb2xsb3dpbmcgYW1lbmRtZW50cyBhcmUgbm90IGNoYW5nZWQgYW5kIHN0b3AgbG9va2luZ1xuICAgICAgICAgIC8vIGZvciBhbWVuZG1lbnRzIHRvIHVwc2VydC5cbiAgICAgICAgICBicmVhayBpdGVyU2VhcmNoUGFnZXNcbiAgICAgICAgfVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgaWYgKFxuICAgICAgICBleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSAhPT0gbnVsbCAmJlxuICAgICAgICBmcm9udE1hdHRlcihleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSkuYm9keSA9PT1cbiAgICAgICAgICBhbWVuZGVtZW50VHJPdXRlckh0bWxcbiAgICAgICkge1xuICAgICAgICAvLyBUaGUgc2FtZSA8dHI+IGlzIGFscmVhZHkgaW4gY2FjaGUsIGJ1dCBpbiBhIGRpZmZlcmVudCBwb3NpdGlvbi5cbiAgICAgICAgLy8gQXNzdW1lIHRoZSBhbWVuZG1lbnQgaXMgdW5jaGFuZ2VkLlxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgICBpZiAoZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUgPT09IG51bGwpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgIGBBZGRpbmcgYW1lbmRlbWVudCBzZWFyY2ggY2FjaGU6ICR7YW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGh94oCmYCxcbiAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICBgVXBkYXRpbmcgYW1lbmRlbWVudCBzZWFyY2ggY2FjaGU6ICR7YW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGh94oCmYCxcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sVXJsID0gbmV3IFVSTChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGghLFxuICAgICAgICBcImh0dHBzOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvXCIsXG4gICAgICApLnRvU3RyaW5nKClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sUmVzcG9uc2UgPSBhd2FpdCBmZXRjaChhbWVuZGVtZW50SHRtbFVybClcbiAgICAgIGlmIChhbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGBBbWVuZGVtZW50IEhUTUwgcGFnZSBub3QgZm91bmQgYXQgJHthbWVuZGVtZW50SHRtbFVybH0uIFNraXBwaW5nLmAsXG4gICAgICAgIClcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGFzc2VydChcbiAgICAgICAgYW1lbmRlbWVudEh0bWxSZXNwb25zZS5vayxcbiAgICAgICAgYFJldHJpZXZhbCBvZiBhbWVuZGVtZW50IEhUTUwgcGFnZSBhdCAke2FtZW5kZW1lbnRIdG1sVXJsfSBmYWlsZWQgd2l0aCBlcnJvcjogJHthbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1c30gJHthbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sUGFnZSA9IGF3YWl0IGFtZW5kZW1lbnRIdG1sUmVzcG9uc2UudGV4dCgpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbCA9IHBhcnNlSHRtbChhbWVuZGVtZW50SHRtbFBhZ2UpXG4gICAgICBjb25zdCBmb3JtYXRzTGkgPSBhbWVuZGVtZW50SHRtbC5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICBcImxpLm1pcnJvci1jYXJkLWhlYWRlci0tb3B0aW9ucy0tY29udGVudC0taXRlbVwiLFxuICAgICAgKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGZvcm1hdHNMaS5sZW5ndGgsIDApXG4gICAgICBjb25zdCBqc29uTGkgPSBmb3JtYXRzTGkuZmluZCgoZm9ybWF0TGkpID0+IHtcbiAgICAgICAgY29uc3QgZm9ybWF0U3BhbiA9IGZvcm1hdExpLnF1ZXJ5U2VsZWN0b3IoXCJhID4gc3BhblwiKVxuICAgICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgICAgZm9ybWF0U3BhbixcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIGBObyA8c3Bhbj4gaW4gPGE+IGZvdW5kIGluICR7Zm9ybWF0TGkudG9TdHJpbmcoKX1gLFxuICAgICAgICApXG4gICAgICAgIHJldHVybiBmb3JtYXRTcGFuIS50ZXh0ID09PSBcIlZlcnNpb24gSlNPTlwiXG4gICAgICB9KVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICBqc29uTGksXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgYE5vIEpTT04gdmVyc2lvbiBmb3VuZCBmb3IgYW1lbmRlbWVudCBhdCAke2FtZW5kZW1lbnRIdG1sVXJsfWAsXG4gICAgICApXG4gICAgICBjb25zdCBqc29uQSA9IGpzb25MaSEucXVlcnlTZWxlY3RvcihcImFcIilcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAganNvbkEsXG4gICAgICAgIG51bGwsXG4gICAgICAgIGBObyA8YT4gZm91bmQgaW4gJHtqc29uTGkhLnRvU3RyaW5nKCl9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRKc29uVXJsUGF0aCA9IGpzb25BIS5nZXRBdHRyaWJ1dGUoXCJocmVmXCIpXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uVXJsUGF0aCxcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICBgTm8gVVJMIGZvdW5kIGZvciBKU09OIHZlcnNpb24gb2YgYW1lbmRlbWVudDogJHtqc29uTGkhLnRvU3RyaW5nKCl9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRKc29uVXJsID0gbmV3IFVSTChcbiAgICAgICAgYW1lbmRlbWVudEpzb25VcmxQYXRoISxcbiAgICAgICAgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiLFxuICAgICAgKS50b1N0cmluZygpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYW1lbmRlbWVudEpzb25VcmwpXG4gICAgICBhc3NlcnQoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uUmVzcG9uc2Uub2ssXG4gICAgICAgIGBSZXRyaWV2YWwgb2YgYW1lbmRlbWVudCBKU09OIHBhZ2UgYXQgJHthbWVuZGVtZW50SnNvblVybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7YW1lbmRlbWVudEpzb25SZXNwb25zZS5zdGF0dXN9ICR7YW1lbmRlbWVudEpzb25SZXNwb25zZS5zdGF0dXNUZXh0fWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50ID0gYXdhaXQgYW1lbmRlbWVudEpzb25SZXNwb25zZS5qc29uKClcbiAgICAgIHlpZWxkIFthbWVuZGVtZW50VXJsUGF0aCEsIGFtZW5kZW1lbnRdXG5cbiAgICAgIC8vIFNlYXJjaENhY2hlIG11c3QgYmUgd3JpdHRlbiBhdCB0aGUgZW5kIHRvIGVuc3VyZSB0aGF0IGV2ZXJ5dGhpbmcgaXMgaW4gYSBjb25zaXN0ZW50IHN0YXRlLFxuICAgICAgLy8gZXZlbiBpZiBzY3JpcHQgZmFpbHMgYWJydXB0bHkuXG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUoXG4gICAgICAgIGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoLFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGUsXG4gICAgICAgIFwidXRmOFwiLFxuICAgICAgKVxuICAgIH1cblxuICAgIGNvbnN0IHBhZ2luYXRpb25BID0gaHRtbC5xdWVyeVNlbGVjdG9yKFxuICAgICAgXCJkaXYuYW4tcGFnaW5hdGlvbi0taXRlbSA+IGkuYW4taWNvbnMtY2hldnJvbi1yaWdodCB+IGFcIixcbiAgICApXG4gICAgaWYgKHBhZ2luYXRpb25BID09PSBudWxsKSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgICBjb25zdCB1cmxQYXRoID0gcGFnaW5hdGlvbkEuZ2V0QXR0cmlidXRlKFwiaHJlZlwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbCh1cmxQYXRoLCB1bmRlZmluZWQpXG4gICAgdXJsID0gbmV3IFVSTCh1cmxQYXRoISwgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiKS50b1N0cmluZygpXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLEdBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFVBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLFFBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQVAsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFPLE9BQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFRLGVBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLEtBQUEsR0FBQVYsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFVLFNBQUEsR0FBQVYsT0FBQTtBQUVBLElBQUFXLFlBQUEsR0FBQVgsT0FBQTtBQUFn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
|
|
@@ -164,4 +164,4 @@ export async function* iterRechercheRawAmendements(amendementsSearchCacheDir, ur
|
|
|
164
164
|
url = new URL(urlPath, "https://www.assemblee-nationale.fr/").toString();
|
|
165
165
|
}
|
|
166
166
|
}
|
|
167
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJmb3JtYXRJU08iLCJmciIsImZyTG9jYWxlIiwicGFyc2UiLCJwYXJzZURhdGUiLCJkZWVwRXF1YWwiLCJmcyIsImZyb250TWF0dGVyIiwianNZYW1sIiwicGFyc2VIdG1sIiwicGF0aCIsImNsZWFuQW1lbmRlbWVudCIsIkNvbnZlcnQiLCJBbWVuZGVtZW50c0NvbnZlcnQiLCJpdGVyUmVjaGVyY2hlQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyIiwidXJsIiwiaW5jcmVtZW50YWwiLCJtaW5EYXRlRGVwb3QiLCJtaW5EYXRlRXhhbWVuIiwib3B0aW9ucyIsImFtZW5kZW1lbnRVcmxQYXRoIiwiYW1lbmRlbWVudCIsIml0ZXJSZWNoZXJjaGVSYXdBbWVuZGVtZW50cyIsInRvQW1lbmRlbWVudCIsIkpTT04iLCJzdHJpbmdpZnkiLCJlbnN1cmVEaXIiLCJzdHJpY3RFcXVhbCIsImV4ZWMiLCJub3RTdHJpY3RFcXVhbCIsImluY2x1ZGVzIiwiYW1lbmRlbWVudE51bWJlciIsIml0ZXJTZWFyY2hQYWdlcyIsInZlcmJvc2UiLCJjb25zb2xlIiwibG9nIiwicmVzcG9uc2UiLCJmZXRjaCIsIm9rIiwic3RhdHVzIiwic3RhdHVzVGV4dCIsInBhZ2UiLCJ0ZXh0IiwiaHRtbCIsInF1ZXJ5U2VsZWN0b3IiLCJhbWVuZGVtZW50c0NvdW50RGl2IiwiYW1lbmRlbWVudHNDb3VudCIsInBhcnNlSW50IiwiYW1lbmRlbWVudHNEaXYiLCJhbWVuZGVtZW50c1RhYmxlIiwidGZvb3RUciIsInRmb290VHJDZWxscyIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJtYXAiLCJjZWxsIiwiYW1lbmRlbWVudHNUciIsImxlbmd0aCIsImFtZW5kZW1lbnRUciIsImFtZW5kZW1lbnRUZExpc3QiLCJvdXRlckhUTUwiLCJkYXRlRGVwb3RUZCIsImRhdGVEZXBvdCIsIkRhdGUiLCJsb2NhbGUiLCJyZXByZXNlbnRhdGlvbiIsImRhdGVFeGFtZW5UZCIsImRhdGVFeGFtZW4iLCJnZXRBdHRyaWJ1dGUiLCJ1bmRlZmluZWQiLCJhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkIiwic3BsaXQiLCJhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCIsImpvaW4iLCJzbGljZSIsImRpcm5hbWUiLCJleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSIsInBhdGhFeGlzdHMiLCJyZWFkRmlsZSIsImFtZW5kZW1lbnRUck91dGVySHRtbCIsImFtZW5kZW1lbnRTZWFyY2hDYWNoZSIsImR1bXAiLCJwb3NpdGlvbiIsInNlYXJjaCIsInJlcGxhY2UiLCJzb3J0S2V5cyIsImJvZHkiLCJhbWVuZGVtZW50SHRtbFVybCIsIlVSTCIsInRvU3RyaW5nIiwiYW1lbmRlbWVudEh0bWxSZXNwb25zZSIsImFtZW5kZW1lbnRIdG1sUGFnZSIsImFtZW5kZW1lbnRIdG1sIiwiZm9ybWF0c0xpIiwianNvbkxpIiwiZmluZCIsImZvcm1hdExpIiwiZm9ybWF0U3BhbiIsImpzb25BIiwiYW1lbmRlbWVudEpzb25VcmxQYXRoIiwiYW1lbmRlbWVudEpzb25VcmwiLCJhbWVuZGVtZW50SnNvblJlc3BvbnNlIiwianNvbiIsIndyaXRlRmlsZSIsInBhZ2luYXRpb25BIiwidXJsUGF0aCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYXJzZXJzL3JlY2hlcmNoZV9hbWVuZGVtZW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gXCJhc3NlcnRcIlxuaW1wb3J0IHsgZm9ybWF0SVNPIH0gZnJvbSBcImRhdGUtZm5zL2Zvcm1hdElTT1wiXG5pbXBvcnQgeyBmciBhcyBmckxvY2FsZSB9IGZyb20gXCJkYXRlLWZucy9sb2NhbGUvZnJcIlxuaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VEYXRlIH0gZnJvbSBcImRhdGUtZm5zL3BhcnNlXCJcbmltcG9ydCBkZWVwRXF1YWwgZnJvbSBcImRlZXAtZXF1YWxcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgZnJvbnRNYXR0ZXIgZnJvbSBcImZyb250LW1hdHRlclwiXG5pbXBvcnQganNZYW1sIGZyb20gXCJqcy15YW1sXCJcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlSHRtbCB9IGZyb20gXCJub2RlLWh0bWwtcGFyc2VyXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHsgY2xlYW5BbWVuZGVtZW50IH0gZnJvbSBcIi4uL2NsZWFuZXJzXCJcbmltcG9ydCB7IEFtZW5kZW1lbnQgYXMgUmF3QW1lbmRlbWVudCB9IGZyb20gXCIuLi9yYXdfdHlwZXMvYW1lbmRlbWVudHNcIlxuaW1wb3J0IHsgQW1lbmRlbWVudCwgQ29udmVydCBhcyBBbWVuZGVtZW50c0NvbnZlcnQgfSBmcm9tIFwiLi4vdHlwZXMvYW1lbmRlbWVudHNcIlxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGl0ZXJSZWNoZXJjaGVBbWVuZGVtZW50cyhcbiAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcjogc3RyaW5nLFxuICB1cmw6IHN0cmluZyxcbiAgaW5jcmVtZW50YWw6IGJvb2xlYW4sXG4gIG1pbkRhdGVEZXBvdD86IHN0cmluZyB8IG51bGwsXG4gIG1pbkRhdGVFeGFtZW4/OiBzdHJpbmcgfCBudWxsLFxuICBvcHRpb25zOiB7IHNpbGVudD86IGJvb2xlYW47IHZlcmJvc2U/OiBib29sZWFuIH0gPSB7fSxcbik6IEFzeW5jR2VuZXJhdG9yPFtzdHJpbmcsIEFtZW5kZW1lbnRdLCB2b2lkLCB1bmtub3duPiB7XG4gIGZvciBhd2FpdCAoY29uc3QgW1xuICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgIGFtZW5kZW1lbnQsXG4gIF0gb2YgaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgdXJsLFxuICAgIGluY3JlbWVudGFsLFxuICAgIG1pbkRhdGVEZXBvdCxcbiAgICBtaW5EYXRlRXhhbWVuLFxuICAgIG9wdGlvbnMsXG4gICkpIHtcbiAgICBjbGVhbkFtZW5kZW1lbnQoYW1lbmRlbWVudClcbiAgICAvLyBEb3VibGUgY29udmVyc2lvbiwgdG8gY29udmVydCBzdHJpbmdzIHRvIGRhdGVzLlxuICAgIHlpZWxkIFtcbiAgICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgICAgQW1lbmRlbWVudHNDb252ZXJ0LnRvQW1lbmRlbWVudChKU09OLnN0cmluZ2lmeShhbWVuZGVtZW50KSksXG4gICAgXVxuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyOiBzdHJpbmcsXG4gIHVybDogc3RyaW5nLFxuICBpbmNyZW1lbnRhbDogYm9vbGVhbixcbiAgbWluRGF0ZURlcG90Pzogc3RyaW5nIHwgbnVsbCxcbiAgbWluRGF0ZUV4YW1lbj86IHN0cmluZyB8IG51bGwsXG4gIG9wdGlvbnM6IHsgc2lsZW50PzogYm9vbGVhbjsgdmVyYm9zZT86IGJvb2xlYW4gfSA9IHt9LFxuKTogQXN5bmNHZW5lcmF0b3I8W3N0cmluZywgUmF3QW1lbmRlbWVudF0sIHZvaWQsIHVua25vd24+IHtcbiAgYXdhaXQgZnMuZW5zdXJlRGlyKGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIpXG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdZGF0ZV9kZXBvdD0vLmV4ZWModXJsKSxcbiAgICBudWxsLFxuICAgIGBVUkwgJHt1cmx9IGFscmVhZHkgY29udGFpbnMgYSBkZXBvc2l0IGRhdGVgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXW9yZGVyPS8uZXhlYyh1cmwpLFxuICAgIG51bGwsXG4gICAgYFVSTCAke3VybH0gYWxyZWFkeSBjb250YWlucyBhIHNvcnQgb3JkZXJgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXXBhZ2U9Ly5leGVjKHVybCksXG4gICAgbnVsbCxcbiAgICBgVVJMICR7dXJsfSBhbHJlYWR5IGNvbnRhaW5zIGEgcGFnZSBudW1iZXJgLFxuICApXG4gIGlmIChpbmNyZW1lbnRhbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9bPyZdZXRhdD0vLmV4ZWModXJsKSxcbiAgICAgIG51bGwsXG4gICAgICBgSW4gaW5jcmVtZW50YWwgbW9kZSwgVVJMICR7dXJsfSBtdXN0IGNvbnRhaW4gYW4gXCJldGF0XCIgcXVlcnkgcGFyYW1ldGVyYCxcbiAgICApXG4gIH1cbiAgdXJsICs9ICh1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIikgKyBcIm9yZGVyPWRhdGVfZGVwb3QsZGVzYyZwYWdlPTFcIlxuXG4gIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9cXGR7NH0tXFxkezJ9LVxcZHsyfS8uZXhlYyhtaW5EYXRlRGVwb3QpLFxuICAgICAgbnVsbCxcbiAgICAgIGBJbnZhbGlkIGZvcm1hdCBmb3IgbWluaW11bSBkYXRlOiAke21pbkRhdGVEZXBvdH1gLFxuICAgIClcbiAgfVxuXG4gIGxldCBhbWVuZGVtZW50TnVtYmVyID0gMFxuICBpdGVyU2VhcmNoUGFnZXM6IHdoaWxlICh0cnVlKSB7XG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coYEZldGNoaW5nIGFtZW5kZW1lbnRzIHNlYXJjaCBwYWdlIGF0ICR7dXJsfeKApmApXG4gICAgfVxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKVxuICAgIGFzc2VydChcbiAgICAgIHJlc3BvbnNlLm9rLFxuICAgICAgYFJldHJpZXZhbCBvZiBzZWFyY2ggcGFnZSBhdCAke3VybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICApXG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKVxuICAgIGNvbnN0IGh0bWwgPSBwYXJzZUh0bWwocGFnZSlcbiAgICBpZiAoaHRtbC5xdWVyeVNlbGVjdG9yKFwiZGl2Lm5vLXJlc3VsdFwiKSAhPT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgYW1lbmRlbWVudHNDb3VudERpdiA9IGh0bWwucXVlcnlTZWxlY3RvcihcImRpdi5taXJyb3ItY2FyZC1zdWJ0aXRsZVwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50c0NvdW50RGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzQ291bnQgPSBwYXJzZUludCgvXFxkKy8uZXhlYyhhbWVuZGVtZW50c0NvdW50RGl2IS50ZXh0KSFbMF0pXG4gICAgY29uc3QgYW1lbmRlbWVudHNEaXYgPSBodG1sLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcImRpdi5hbWVuZGVtZW50LWxpc3QtLXJlc3VsdHMtdGFibGVcIixcbiAgICApXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzRGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzVGFibGUgPSBhbWVuZGVtZW50c0RpdiEucXVlcnlTZWxlY3RvcihcInRhYmxlXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzVGFibGUsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUciA9IGFtZW5kZW1lbnRzVGFibGUhLnF1ZXJ5U2VsZWN0b3IoXCJ0Zm9vdCA+IHRyXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHRmb290VHIsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUckNlbGxzID0gdGZvb3RUciFcbiAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKFwidGQsIHRoXCIpXG4gICAgICAubWFwKChjZWxsKSA9PiBjZWxsLnRleHQpXG4gICAgYXNzZXJ0KFxuICAgICAgZGVlcEVxdWFsKHRmb290VHJDZWxscywgW1xuICAgICAgICBcIlwiLFxuICAgICAgICBcIm7CsFwiLFxuICAgICAgICBcIkRvc3NpZXIgbMOpZ2lzbGF0aWZcIixcbiAgICAgICAgXCJFbXBsYWNlbWVudFwiLFxuICAgICAgICBcIkF1dGV1clwiLFxuICAgICAgICBcIsOJdGF0XCIsXG4gICAgICAgIFwiU29ydFwiLFxuICAgICAgICBcIkRhdGUgZCdleGFtZW5cIixcbiAgICAgICAgXCJFeGFtaW7DqSBwYXJcIixcbiAgICAgICAgXCJUZXh0ZSB2aXPDqVwiLFxuICAgICAgICBcIkRhdGUgZGUgZMOpcMO0dFwiLFxuICAgICAgXSksXG4gICAgICBgVW5leHBlY3RlZCBjb2x1bW5zIGluICR7SlNPTi5zdHJpbmdpZnkodGZvb3RUckNlbGxzLCBudWxsLCAyKX1gLFxuICAgIClcbiAgICBjb25zdCBhbWVuZGVtZW50c1RyID0gYW1lbmRlbWVudHNUYWJsZSEucXVlcnlTZWxlY3RvckFsbChcInRib2R5ID4gdHJcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNUci5sZW5ndGgsIDApXG4gICAgZm9yIChjb25zdCBhbWVuZGVtZW50VHIgb2YgYW1lbmRlbWVudHNUcikge1xuICAgICAgYW1lbmRlbWVudE51bWJlcisrXG5cbiAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCB8fCBtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgY29uc3QgYW1lbmRlbWVudFRkTGlzdCA9IGFtZW5kZW1lbnRUci5xdWVyeVNlbGVjdG9yQWxsKFwidGRcIilcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICAgIGFtZW5kZW1lbnRUZExpc3QubGVuZ3RoLFxuICAgICAgICAgIDExLFxuICAgICAgICAgIGBVbmV4cGVjdGVkIG51bWJlciBvZiBjb2x1bW5zIGluIGFtZW5kbWVudCByb3c6ICR7YW1lbmRlbWVudFRyLm91dGVySFRNTH1gLFxuICAgICAgICApXG4gICAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVEZXBvdFRkID0gYW1lbmRlbWVudFRkTGlzdFsxMF1cbiAgICAgICAgICBjb25zdCBkYXRlRGVwb3QgPSBmb3JtYXRJU08oXG4gICAgICAgICAgICBwYXJzZURhdGUoZGF0ZURlcG90VGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7XG4gICAgICAgICAgICAgIGxvY2FsZTogZnJMb2NhbGUsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHsgcmVwcmVzZW50YXRpb246IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgKVxuICAgICAgICAgIGlmIChkYXRlRGVwb3QgPCBtaW5EYXRlRGVwb3QpIHtcbiAgICAgICAgICAgIC8vIFNpbmNlIHRoZSBhbWVuZG1lbnRzIGFyZSBzb3J0ZWQgYnkgZGVwb3NpdCBkYXRlLCBvbmNlIGFuIGFtZW5kbWVudFxuICAgICAgICAgICAgLy8gd2l0aCBhbiBvbGQgZGVwb3NpdCBkYXRlIGlzIGVuY291bnRlcmVkLCB0aGUgZnVsbCBzZWFyY2ggY2FuIGJlIHN0b3BwZWQuXG4gICAgICAgICAgICBicmVhayBpdGVyU2VhcmNoUGFnZXNcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1pbkRhdGVFeGFtZW4gIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVFeGFtZW5UZCA9IGFtZW5kZW1lbnRUZExpc3RbN11cbiAgICAgICAgICBpZiAoZGF0ZUV4YW1lblRkLnRleHQpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGVFeGFtZW4gPSBmb3JtYXRJU08oXG4gICAgICAgICAgICAgIHBhcnNlRGF0ZShkYXRlRXhhbWVuVGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7XG4gICAgICAgICAgICAgICAgbG9jYWxlOiBmckxvY2FsZSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIHsgcmVwcmVzZW50YXRpb246IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBpZiAoZGF0ZUV4YW1lbiA8IG1pbkRhdGVFeGFtZW4pIHtcbiAgICAgICAgICAgICAgLy8gVGhpcyBhbWVuZG1lbnQgaGFzIGJlZW4gZGlzY3Vzc2VkIHNpbmNlIGEgZmV3IGRheXMuXG4gICAgICAgICAgICAgIC8vID0+IElnbm9yZSBpdCwgYmVjYXVzZSBpdCBzaG91bGQgYmUgaW4gQXNzZW1ibMOpZSBvcGVuIGRhdGEuXG4gICAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRVcmxQYXRoID0gYW1lbmRlbWVudFRyLmdldEF0dHJpYnV0ZShcImRhdGEtaHJlZlwiKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRVcmxQYXRoLCB1bmRlZmluZWQpXG4gICAgICBjb25zdCBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkID0gYW1lbmRlbWVudFVybFBhdGghLnNwbGl0KFwiL1wiKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkWzBdLFxuICAgICAgICBcIlwiLFxuICAgICAgICBgVW5leHBlY3RlZCBVUkwgcGF0aCBmb3IgYW1lbmRlbWVudDogJHthbWVuZGVtZW50VXJsUGF0aH1gLFxuICAgICAgKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkWzFdLFxuICAgICAgICBcImR5blwiLFxuICAgICAgICBgVW5leHBlY3RlZCBVUkwgcGF0aCBmb3IgYW1lbmRlbWVudDogJHthbWVuZGVtZW50VXJsUGF0aH1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGggPVxuICAgICAgICBwYXRoLmpvaW4oXG4gICAgICAgICAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcixcbiAgICAgICAgICAuLi5hbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkLnNsaWNlKDIpLFxuICAgICAgICApICsgXCIuaHRtbFwiXG4gICAgICBhd2FpdCBmcy5lbnN1cmVEaXIocGF0aC5kaXJuYW1lKGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoKSlcbiAgICAgIGNvbnN0IGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlID0gKGF3YWl0IGZzLnBhdGhFeGlzdHMoXG4gICAgICAgIGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoLFxuICAgICAgKSlcbiAgICAgICAgPyBhd2FpdCBmcy5yZWFkRmlsZShhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCwgXCJ1dGY4XCIpXG4gICAgICAgIDogbnVsbFxuICAgICAgY29uc3QgYW1lbmRlbWVudFRyT3V0ZXJIdG1sID0gYW1lbmRlbWVudFRyLm91dGVySFRNTFxuICAgICAgY29uc3QgYW1lbmRlbWVudFNlYXJjaENhY2hlID0gYC0tLVxcbiR7anNZYW1sLmR1bXAoXG4gICAgICAgIHtcbiAgICAgICAgICBwb3NpdGlvbjogYW1lbmRlbWVudHNDb3VudCAtIGFtZW5kZW1lbnROdW1iZXIsXG4gICAgICAgICAgc2VhcmNoOiB1cmwucmVwbGFjZSgvJnBhZ2U9W1xcZF0rLywgXCJcIiksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzb3J0S2V5czogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICl9LS0tXFxuXFxuJHthbWVuZGVtZW50VHJPdXRlckh0bWx9YFxuICAgICAgaWYgKGFtZW5kZW1lbnRTZWFyY2hDYWNoZSA9PT0gZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUpIHtcbiAgICAgICAgaWYgKGluY3JlbWVudGFsKSB7XG4gICAgICAgICAgLy8gVGhlIHNhbWUgPHRyPiBpcyBhbHJlYWR5IGluIGNhY2hlIGFuZCBpbiB0aGUgc2FtZSBwb3NpdGlvbi5cbiAgICAgICAgICAvLyBBc3N1bWUgdGhhdCBmb2xsb3dpbmcgYW1lbmRtZW50cyBhcmUgbm90IGNoYW5nZWQgYW5kIHN0b3AgbG9va2luZ1xuICAgICAgICAgIC8vIGZvciBhbWVuZG1lbnRzIHRvIHVwc2VydC5cbiAgICAgICAgICBicmVhayBpdGVyU2VhcmNoUGFnZXNcbiAgICAgICAgfVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgaWYgKFxuICAgICAgICBleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSAhPT0gbnVsbCAmJlxuICAgICAgICBmcm9udE1hdHRlcihleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSkuYm9keSA9PT1cbiAgICAgICAgICBhbWVuZGVtZW50VHJPdXRlckh0bWxcbiAgICAgICkge1xuICAgICAgICAvLyBUaGUgc2FtZSA8dHI+IGlzIGFscmVhZHkgaW4gY2FjaGUsIGJ1dCBpbiBhIGRpZmZlcmVudCBwb3NpdGlvbi5cbiAgICAgICAgLy8gQXNzdW1lIHRoZSBhbWVuZG1lbnQgaXMgdW5jaGFuZ2VkLlxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgICBpZiAoZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUgPT09IG51bGwpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgIGBBZGRpbmcgYW1lbmRlbWVudCBzZWFyY2ggY2FjaGU6ICR7YW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGh94oCmYCxcbiAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICBgVXBkYXRpbmcgYW1lbmRlbWVudCBzZWFyY2ggY2FjaGU6ICR7YW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGh94oCmYCxcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sVXJsID0gbmV3IFVSTChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGghLFxuICAgICAgICBcImh0dHBzOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvXCIsXG4gICAgICApLnRvU3RyaW5nKClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sUmVzcG9uc2UgPSBhd2FpdCBmZXRjaChhbWVuZGVtZW50SHRtbFVybClcbiAgICAgIGlmIChhbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGBBbWVuZGVtZW50IEhUTUwgcGFnZSBub3QgZm91bmQgYXQgJHthbWVuZGVtZW50SHRtbFVybH0uIFNraXBwaW5nLmAsXG4gICAgICAgIClcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGFzc2VydChcbiAgICAgICAgYW1lbmRlbWVudEh0bWxSZXNwb25zZS5vayxcbiAgICAgICAgYFJldHJpZXZhbCBvZiBhbWVuZGVtZW50IEhUTUwgcGFnZSBhdCAke2FtZW5kZW1lbnRIdG1sVXJsfSBmYWlsZWQgd2l0aCBlcnJvcjogJHthbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1c30gJHthbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sUGFnZSA9IGF3YWl0IGFtZW5kZW1lbnRIdG1sUmVzcG9uc2UudGV4dCgpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbCA9IHBhcnNlSHRtbChhbWVuZGVtZW50SHRtbFBhZ2UpXG4gICAgICBjb25zdCBmb3JtYXRzTGkgPSBhbWVuZGVtZW50SHRtbC5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICBcImxpLm1pcnJvci1jYXJkLWhlYWRlci0tb3B0aW9ucy0tY29udGVudC0taXRlbVwiLFxuICAgICAgKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGZvcm1hdHNMaS5sZW5ndGgsIDApXG4gICAgICBjb25zdCBqc29uTGkgPSBmb3JtYXRzTGkuZmluZCgoZm9ybWF0TGkpID0+IHtcbiAgICAgICAgY29uc3QgZm9ybWF0U3BhbiA9IGZvcm1hdExpLnF1ZXJ5U2VsZWN0b3IoXCJhID4gc3BhblwiKVxuICAgICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgICAgZm9ybWF0U3BhbixcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIGBObyA8c3Bhbj4gaW4gPGE+IGZvdW5kIGluICR7Zm9ybWF0TGkudG9TdHJpbmcoKX1gLFxuICAgICAgICApXG4gICAgICAgIHJldHVybiBmb3JtYXRTcGFuIS50ZXh0ID09PSBcIlZlcnNpb24gSlNPTlwiXG4gICAgICB9KVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICBqc29uTGksXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgYE5vIEpTT04gdmVyc2lvbiBmb3VuZCBmb3IgYW1lbmRlbWVudCBhdCAke2FtZW5kZW1lbnRIdG1sVXJsfWAsXG4gICAgICApXG4gICAgICBjb25zdCBqc29uQSA9IGpzb25MaSEucXVlcnlTZWxlY3RvcihcImFcIilcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAganNvbkEsXG4gICAgICAgIG51bGwsXG4gICAgICAgIGBObyA8YT4gZm91bmQgaW4gJHtqc29uTGkhLnRvU3RyaW5nKCl9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRKc29uVXJsUGF0aCA9IGpzb25BIS5nZXRBdHRyaWJ1dGUoXCJocmVmXCIpXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uVXJsUGF0aCxcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICBgTm8gVVJMIGZvdW5kIGZvciBKU09OIHZlcnNpb24gb2YgYW1lbmRlbWVudDogJHtqc29uTGkhLnRvU3RyaW5nKCl9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRKc29uVXJsID0gbmV3IFVSTChcbiAgICAgICAgYW1lbmRlbWVudEpzb25VcmxQYXRoISxcbiAgICAgICAgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiLFxuICAgICAgKS50b1N0cmluZygpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYW1lbmRlbWVudEpzb25VcmwpXG4gICAgICBhc3NlcnQoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uUmVzcG9uc2Uub2ssXG4gICAgICAgIGBSZXRyaWV2YWwgb2YgYW1lbmRlbWVudCBKU09OIHBhZ2UgYXQgJHthbWVuZGVtZW50SnNvblVybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7YW1lbmRlbWVudEpzb25SZXNwb25zZS5zdGF0dXN9ICR7YW1lbmRlbWVudEpzb25SZXNwb25zZS5zdGF0dXNUZXh0fWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50ID0gYXdhaXQgYW1lbmRlbWVudEpzb25SZXNwb25zZS5qc29uKClcbiAgICAgIHlpZWxkIFthbWVuZGVtZW50VXJsUGF0aCEsIGFtZW5kZW1lbnRdXG5cbiAgICAgIC8vIFNlYXJjaENhY2hlIG11c3QgYmUgd3JpdHRlbiBhdCB0aGUgZW5kIHRvIGVuc3VyZSB0aGF0IGV2ZXJ5dGhpbmcgaXMgaW4gYSBjb25zaXN0ZW50IHN0YXRlLFxuICAgICAgLy8gZXZlbiBpZiBzY3JpcHQgZmFpbHMgYWJydXB0bHkuXG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUoXG4gICAgICAgIGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoLFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGUsXG4gICAgICAgIFwidXRmOFwiLFxuICAgICAgKVxuICAgIH1cblxuICAgIGNvbnN0IHBhZ2luYXRpb25BID0gaHRtbC5xdWVyeVNlbGVjdG9yKFxuICAgICAgXCJkaXYuYW4tcGFnaW5hdGlvbi0taXRlbSA+IGkuYW4taWNvbnMtY2hldnJvbi1yaWdodCB+IGFcIixcbiAgICApXG4gICAgaWYgKHBhZ2luYXRpb25BID09PSBudWxsKSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgICBjb25zdCB1cmxQYXRoID0gcGFnaW5hdGlvbkEuZ2V0QXR0cmlidXRlKFwiaHJlZlwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbCh1cmxQYXRoLCB1bmRlZmluZWQpXG4gICAgdXJsID0gbmV3IFVSTCh1cmxQYXRoISwgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiKS50b1N0cmluZygpXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsTUFBTSxNQUFNLFFBQVE7QUFDM0IsU0FBU0MsU0FBUyxRQUFRLG9CQUFvQjtBQUM5QyxTQUFTQyxFQUFFLElBQUlDLFFBQVEsUUFBUSxvQkFBb0I7QUFDbkQsU0FBU0MsS0FBSyxJQUFJQyxTQUFTLFFBQVEsZ0JBQWdCO0FBQ25ELE9BQU9DLFNBQVMsTUFBTSxZQUFZO0FBQ2xDLE9BQU9DLEVBQUUsTUFBTSxVQUFVO0FBQ3pCLE9BQU9DLFdBQVcsTUFBTSxjQUFjO0FBQ3RDLE9BQU9DLE1BQU0sTUFBTSxTQUFTO0FBQzVCLFNBQVNMLEtBQUssSUFBSU0sU0FBUyxRQUFRLGtCQUFrQjtBQUNyRCxPQUFPQyxJQUFJLE1BQU0sTUFBTTtBQUFBLFNBRWRDLGVBQWU7QUFBQSxTQUVIQyxPQUFPLElBQUlDLGtCQUFrQjtBQUVsRCxPQUFPLGdCQUFnQkMsd0JBQXdCQSxDQUM3Q0MseUJBQWlDLEVBQ2pDQyxHQUFXLEVBQ1hDLFdBQW9CLEVBQ3BCQyxZQUE0QixFQUM1QkMsYUFBNkIsRUFDN0JDLE9BQWdELEdBQUcsQ0FBQyxDQUFDLEVBQ0E7RUFDckQsV0FBVyxNQUFNLENBQ2ZDLGlCQUFpQixFQUNqQkMsVUFBVSxDQUNYLElBQUlDLDJCQUEyQixDQUM5QlIseUJBQXlCLEVBQ3pCQyxHQUFHLEVBQ0hDLFdBQVcsRUFDWEMsWUFBWSxFQUNaQyxhQUFhLEVBQ2JDLE9BQ0YsQ0FBQyxFQUFFO0lBQ0RULGVBQWUsQ0FBQ1csVUFBVSxDQUFDO0lBQzNCO0lBQ0EsTUFBTSxDQUNKRCxpQkFBaUIsRUFD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
|
|
167
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJmb3JtYXRJU08iLCJmciIsImZyTG9jYWxlIiwicGFyc2UiLCJwYXJzZURhdGUiLCJkZWVwRXF1YWwiLCJmcyIsImZyb250TWF0dGVyIiwianNZYW1sIiwicGFyc2VIdG1sIiwicGF0aCIsImNsZWFuQW1lbmRlbWVudCIsIkNvbnZlcnQiLCJBbWVuZGVtZW50c0NvbnZlcnQiLCJpdGVyUmVjaGVyY2hlQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyIiwidXJsIiwiaW5jcmVtZW50YWwiLCJtaW5EYXRlRGVwb3QiLCJtaW5EYXRlRXhhbWVuIiwib3B0aW9ucyIsImFtZW5kZW1lbnRVcmxQYXRoIiwiYW1lbmRlbWVudCIsIml0ZXJSZWNoZXJjaGVSYXdBbWVuZGVtZW50cyIsInRvQW1lbmRlbWVudCIsIkpTT04iLCJzdHJpbmdpZnkiLCJlbnN1cmVEaXIiLCJzdHJpY3RFcXVhbCIsImV4ZWMiLCJub3RTdHJpY3RFcXVhbCIsImluY2x1ZGVzIiwiYW1lbmRlbWVudE51bWJlciIsIml0ZXJTZWFyY2hQYWdlcyIsInZlcmJvc2UiLCJjb25zb2xlIiwibG9nIiwicmVzcG9uc2UiLCJmZXRjaCIsIm9rIiwic3RhdHVzIiwic3RhdHVzVGV4dCIsInBhZ2UiLCJ0ZXh0IiwiaHRtbCIsInF1ZXJ5U2VsZWN0b3IiLCJhbWVuZGVtZW50c0NvdW50RGl2IiwiYW1lbmRlbWVudHNDb3VudCIsInBhcnNlSW50IiwiYW1lbmRlbWVudHNEaXYiLCJhbWVuZGVtZW50c1RhYmxlIiwidGZvb3RUciIsInRmb290VHJDZWxscyIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJtYXAiLCJjZWxsIiwiYW1lbmRlbWVudHNUciIsImxlbmd0aCIsImFtZW5kZW1lbnRUciIsImFtZW5kZW1lbnRUZExpc3QiLCJvdXRlckhUTUwiLCJkYXRlRGVwb3RUZCIsImRhdGVEZXBvdCIsIkRhdGUiLCJsb2NhbGUiLCJyZXByZXNlbnRhdGlvbiIsImRhdGVFeGFtZW5UZCIsImRhdGVFeGFtZW4iLCJnZXRBdHRyaWJ1dGUiLCJ1bmRlZmluZWQiLCJhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkIiwic3BsaXQiLCJhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCIsImpvaW4iLCJzbGljZSIsImRpcm5hbWUiLCJleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSIsInBhdGhFeGlzdHMiLCJyZWFkRmlsZSIsImFtZW5kZW1lbnRUck91dGVySHRtbCIsImFtZW5kZW1lbnRTZWFyY2hDYWNoZSIsImR1bXAiLCJwb3NpdGlvbiIsInNlYXJjaCIsInJlcGxhY2UiLCJzb3J0S2V5cyIsImJvZHkiLCJhbWVuZGVtZW50SHRtbFVybCIsIlVSTCIsInRvU3RyaW5nIiwiYW1lbmRlbWVudEh0bWxSZXNwb25zZSIsImFtZW5kZW1lbnRIdG1sUGFnZSIsImFtZW5kZW1lbnRIdG1sIiwiZm9ybWF0c0xpIiwianNvbkxpIiwiZmluZCIsImZvcm1hdExpIiwiZm9ybWF0U3BhbiIsImpzb25BIiwiYW1lbmRlbWVudEpzb25VcmxQYXRoIiwiYW1lbmRlbWVudEpzb25VcmwiLCJhbWVuZGVtZW50SnNvblJlc3BvbnNlIiwianNvbiIsIndyaXRlRmlsZSIsInBhZ2luYXRpb25BIiwidXJsUGF0aCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYXJzZXJzL3JlY2hlcmNoZV9hbWVuZGVtZW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gXCJhc3NlcnRcIlxuaW1wb3J0IHsgZm9ybWF0SVNPIH0gZnJvbSBcImRhdGUtZm5zL2Zvcm1hdElTT1wiXG5pbXBvcnQgeyBmciBhcyBmckxvY2FsZSB9IGZyb20gXCJkYXRlLWZucy9sb2NhbGUvZnJcIlxuaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VEYXRlIH0gZnJvbSBcImRhdGUtZm5zL3BhcnNlXCJcbmltcG9ydCBkZWVwRXF1YWwgZnJvbSBcImRlZXAtZXF1YWxcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgZnJvbnRNYXR0ZXIgZnJvbSBcImZyb250LW1hdHRlclwiXG5pbXBvcnQganNZYW1sIGZyb20gXCJqcy15YW1sXCJcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlSHRtbCB9IGZyb20gXCJub2RlLWh0bWwtcGFyc2VyXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHsgY2xlYW5BbWVuZGVtZW50IH0gZnJvbSBcIi4uL2NsZWFuZXJzXCJcbmltcG9ydCB7IEFtZW5kZW1lbnQgYXMgUmF3QW1lbmRlbWVudCB9IGZyb20gXCIuLi9yYXdfdHlwZXMvYW1lbmRlbWVudHNcIlxuaW1wb3J0IHsgQW1lbmRlbWVudCwgQ29udmVydCBhcyBBbWVuZGVtZW50c0NvbnZlcnQgfSBmcm9tIFwiLi4vdHlwZXMvYW1lbmRlbWVudHNcIlxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGl0ZXJSZWNoZXJjaGVBbWVuZGVtZW50cyhcbiAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcjogc3RyaW5nLFxuICB1cmw6IHN0cmluZyxcbiAgaW5jcmVtZW50YWw6IGJvb2xlYW4sXG4gIG1pbkRhdGVEZXBvdD86IHN0cmluZyB8IG51bGwsXG4gIG1pbkRhdGVFeGFtZW4/OiBzdHJpbmcgfCBudWxsLFxuICBvcHRpb25zOiB7IHNpbGVudD86IGJvb2xlYW47IHZlcmJvc2U/OiBib29sZWFuIH0gPSB7fSxcbik6IEFzeW5jR2VuZXJhdG9yPFtzdHJpbmcsIEFtZW5kZW1lbnRdLCB2b2lkLCB1bmtub3duPiB7XG4gIGZvciBhd2FpdCAoY29uc3QgW1xuICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgIGFtZW5kZW1lbnQsXG4gIF0gb2YgaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgdXJsLFxuICAgIGluY3JlbWVudGFsLFxuICAgIG1pbkRhdGVEZXBvdCxcbiAgICBtaW5EYXRlRXhhbWVuLFxuICAgIG9wdGlvbnMsXG4gICkpIHtcbiAgICBjbGVhbkFtZW5kZW1lbnQoYW1lbmRlbWVudClcbiAgICAvLyBEb3VibGUgY29udmVyc2lvbiwgdG8gY29udmVydCBzdHJpbmdzIHRvIGRhdGVzLlxuICAgIHlpZWxkIFtcbiAgICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgICAgQW1lbmRlbWVudHNDb252ZXJ0LnRvQW1lbmRlbWVudChKU09OLnN0cmluZ2lmeShhbWVuZGVtZW50KSksXG4gICAgXVxuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyOiBzdHJpbmcsXG4gIHVybDogc3RyaW5nLFxuICBpbmNyZW1lbnRhbDogYm9vbGVhbixcbiAgbWluRGF0ZURlcG90Pzogc3RyaW5nIHwgbnVsbCxcbiAgbWluRGF0ZUV4YW1lbj86IHN0cmluZyB8IG51bGwsXG4gIG9wdGlvbnM6IHsgc2lsZW50PzogYm9vbGVhbjsgdmVyYm9zZT86IGJvb2xlYW4gfSA9IHt9LFxuKTogQXN5bmNHZW5lcmF0b3I8W3N0cmluZywgUmF3QW1lbmRlbWVudF0sIHZvaWQsIHVua25vd24+IHtcbiAgYXdhaXQgZnMuZW5zdXJlRGlyKGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIpXG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdZGF0ZV9kZXBvdD0vLmV4ZWModXJsKSxcbiAgICBudWxsLFxuICAgIGBVUkwgJHt1cmx9IGFscmVhZHkgY29udGFpbnMgYSBkZXBvc2l0IGRhdGVgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXW9yZGVyPS8uZXhlYyh1cmwpLFxuICAgIG51bGwsXG4gICAgYFVSTCAke3VybH0gYWxyZWFkeSBjb250YWlucyBhIHNvcnQgb3JkZXJgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXXBhZ2U9Ly5leGVjKHVybCksXG4gICAgbnVsbCxcbiAgICBgVVJMICR7dXJsfSBhbHJlYWR5IGNvbnRhaW5zIGEgcGFnZSBudW1iZXJgLFxuICApXG4gIGlmIChpbmNyZW1lbnRhbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9bPyZdZXRhdD0vLmV4ZWModXJsKSxcbiAgICAgIG51bGwsXG4gICAgICBgSW4gaW5jcmVtZW50YWwgbW9kZSwgVVJMICR7dXJsfSBtdXN0IGNvbnRhaW4gYW4gXCJldGF0XCIgcXVlcnkgcGFyYW1ldGVyYCxcbiAgICApXG4gIH1cbiAgdXJsICs9ICh1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIikgKyBcIm9yZGVyPWRhdGVfZGVwb3QsZGVzYyZwYWdlPTFcIlxuXG4gIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9cXGR7NH0tXFxkezJ9LVxcZHsyfS8uZXhlYyhtaW5EYXRlRGVwb3QpLFxuICAgICAgbnVsbCxcbiAgICAgIGBJbnZhbGlkIGZvcm1hdCBmb3IgbWluaW11bSBkYXRlOiAke21pbkRhdGVEZXBvdH1gLFxuICAgIClcbiAgfVxuXG4gIGxldCBhbWVuZGVtZW50TnVtYmVyID0gMFxuICBpdGVyU2VhcmNoUGFnZXM6IHdoaWxlICh0cnVlKSB7XG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coYEZldGNoaW5nIGFtZW5kZW1lbnRzIHNlYXJjaCBwYWdlIGF0ICR7dXJsfeKApmApXG4gICAgfVxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKVxuICAgIGFzc2VydChcbiAgICAgIHJlc3BvbnNlLm9rLFxuICAgICAgYFJldHJpZXZhbCBvZiBzZWFyY2ggcGFnZSBhdCAke3VybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICApXG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKVxuICAgIGNvbnN0IGh0bWwgPSBwYXJzZUh0bWwocGFnZSlcbiAgICBpZiAoaHRtbC5xdWVyeVNlbGVjdG9yKFwiZGl2Lm5vLXJlc3VsdFwiKSAhPT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgYW1lbmRlbWVudHNDb3VudERpdiA9IGh0bWwucXVlcnlTZWxlY3RvcihcImRpdi5taXJyb3ItY2FyZC1zdWJ0aXRsZVwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50c0NvdW50RGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzQ291bnQgPSBwYXJzZUludCgvXFxkKy8uZXhlYyhhbWVuZGVtZW50c0NvdW50RGl2IS50ZXh0KSFbMF0pXG4gICAgY29uc3QgYW1lbmRlbWVudHNEaXYgPSBodG1sLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcImRpdi5hbWVuZGVtZW50LWxpc3QtLXJlc3VsdHMtdGFibGVcIixcbiAgICApXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzRGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzVGFibGUgPSBhbWVuZGVtZW50c0RpdiEucXVlcnlTZWxlY3RvcihcInRhYmxlXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzVGFibGUsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUciA9IGFtZW5kZW1lbnRzVGFibGUhLnF1ZXJ5U2VsZWN0b3IoXCJ0Zm9vdCA+IHRyXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHRmb290VHIsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUckNlbGxzID0gdGZvb3RUciFcbiAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKFwidGQsIHRoXCIpXG4gICAgICAubWFwKChjZWxsKSA9PiBjZWxsLnRleHQpXG4gICAgYXNzZXJ0KFxuICAgICAgZGVlcEVxdWFsKHRmb290VHJDZWxscywgW1xuICAgICAgICBcIlwiLFxuICAgICAgICBcIm7CsFwiLFxuICAgICAgICBcIkRvc3NpZXIgbMOpZ2lzbGF0aWZcIixcbiAgICAgICAgXCJFbXBsYWNlbWVudFwiLFxuICAgICAgICBcIkF1dGV1clwiLFxuICAgICAgICBcIsOJdGF0XCIsXG4gICAgICAgIFwiU29ydFwiLFxuICAgICAgICBcIkRhdGUgZCdleGFtZW5cIixcbiAgICAgICAgXCJFeGFtaW7DqSBwYXJcIixcbiAgICAgICAgXCJUZXh0ZSB2aXPDqVwiLFxuICAgICAgICBcIkRhdGUgZGUgZMOpcMO0dFwiLFxuICAgICAgXSksXG4gICAgICBgVW5leHBlY3RlZCBjb2x1bW5zIGluICR7SlNPTi5zdHJpbmdpZnkodGZvb3RUckNlbGxzLCBudWxsLCAyKX1gLFxuICAgIClcbiAgICBjb25zdCBhbWVuZGVtZW50c1RyID0gYW1lbmRlbWVudHNUYWJsZSEucXVlcnlTZWxlY3RvckFsbChcInRib2R5ID4gdHJcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNUci5sZW5ndGgsIDApXG4gICAgZm9yIChjb25zdCBhbWVuZGVtZW50VHIgb2YgYW1lbmRlbWVudHNUcikge1xuICAgICAgYW1lbmRlbWVudE51bWJlcisrXG5cbiAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCB8fCBtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgY29uc3QgYW1lbmRlbWVudFRkTGlzdCA9IGFtZW5kZW1lbnRUci5xdWVyeVNlbGVjdG9yQWxsKFwidGRcIilcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICAgIGFtZW5kZW1lbnRUZExpc3QubGVuZ3RoLFxuICAgICAgICAgIDExLFxuICAgICAgICAgIGBVbmV4cGVjdGVkIG51bWJlciBvZiBjb2x1bW5zIGluIGFtZW5kbWVudCByb3c6ICR7YW1lbmRlbWVudFRyLm91dGVySFRNTH1gLFxuICAgICAgICApXG4gICAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVEZXBvdFRkID0gYW1lbmRlbWVudFRkTGlzdFsxMF1cbiAgICAgICAgICBjb25zdCBkYXRlRGVwb3QgPSBmb3JtYXRJU08oXG4gICAgICAgICAgICBwYXJzZURhdGUoZGF0ZURlcG90VGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7XG4gICAgICAgICAgICAgIGxvY2FsZTogZnJMb2NhbGUsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHsgcmVwcmVzZW50YXRpb246IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgKVxuICAgICAgICAgIGlmIChkYXRlRGVwb3QgPCBtaW5EYXRlRGVwb3QpIHtcbiAgICAgICAgICAgIC8vIFNpbmNlIHRoZSBhbWVuZG1lbnRzIGFyZSBzb3J0ZWQgYnkgZGVwb3NpdCBkYXRlLCBvbmNlIGFuIGFtZW5kbWVudFxuICAgICAgICAgICAgLy8gd2l0aCBhbiBvbGQgZGVwb3NpdCBkYXRlIGlzIGVuY291bnRlcmVkLCB0aGUgZnVsbCBzZWFyY2ggY2FuIGJlIHN0b3BwZWQuXG4gICAgICAgICAgICBicmVhayBpdGVyU2VhcmNoUGFnZXNcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1pbkRhdGVFeGFtZW4gIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVFeGFtZW5UZCA9IGFtZW5kZW1lbnRUZExpc3RbN11cbiAgICAgICAgICBpZiAoZGF0ZUV4YW1lblRkLnRleHQpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGVFeGFtZW4gPSBmb3JtYXRJU08oXG4gICAgICAgICAgICAgIHBhcnNlRGF0ZShkYXRlRXhhbWVuVGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7XG4gICAgICAgICAgICAgICAgbG9jYWxlOiBmckxvY2FsZSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIHsgcmVwcmVzZW50YXRpb246IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBpZiAoZGF0ZUV4YW1lbiA8IG1pbkRhdGVFeGFtZW4pIHtcbiAgICAgICAgICAgICAgLy8gVGhpcyBhbWVuZG1lbnQgaGFzIGJlZW4gZGlzY3Vzc2VkIHNpbmNlIGEgZmV3IGRheXMuXG4gICAgICAgICAgICAgIC8vID0+IElnbm9yZSBpdCwgYmVjYXVzZSBpdCBzaG91bGQgYmUgaW4gQXNzZW1ibMOpZSBvcGVuIGRhdGEuXG4gICAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRVcmxQYXRoID0gYW1lbmRlbWVudFRyLmdldEF0dHJpYnV0ZShcImRhdGEtaHJlZlwiKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRVcmxQYXRoLCB1bmRlZmluZWQpXG4gICAgICBjb25zdCBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkID0gYW1lbmRlbWVudFVybFBhdGghLnNwbGl0KFwiL1wiKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkWzBdLFxuICAgICAgICBcIlwiLFxuICAgICAgICBgVW5leHBlY3RlZCBVUkwgcGF0aCBmb3IgYW1lbmRlbWVudDogJHthbWVuZGVtZW50VXJsUGF0aH1gLFxuICAgICAgKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkWzFdLFxuICAgICAgICBcImR5blwiLFxuICAgICAgICBgVW5leHBlY3RlZCBVUkwgcGF0aCBmb3IgYW1lbmRlbWVudDogJHthbWVuZGVtZW50VXJsUGF0aH1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGggPVxuICAgICAgICBwYXRoLmpvaW4oXG4gICAgICAgICAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcixcbiAgICAgICAgICAuLi5hbWVuZGVtZW50VXJsUGF0aFNwbGl0dGVkLnNsaWNlKDIpLFxuICAgICAgICApICsgXCIuaHRtbFwiXG4gICAgICBhd2FpdCBmcy5lbnN1cmVEaXIocGF0aC5kaXJuYW1lKGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoKSlcbiAgICAgIGNvbnN0IGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlID0gKGF3YWl0IGZzLnBhdGhFeGlzdHMoXG4gICAgICAgIGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoLFxuICAgICAgKSlcbiAgICAgICAgPyBhd2FpdCBmcy5yZWFkRmlsZShhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCwgXCJ1dGY4XCIpXG4gICAgICAgIDogbnVsbFxuICAgICAgY29uc3QgYW1lbmRlbWVudFRyT3V0ZXJIdG1sID0gYW1lbmRlbWVudFRyLm91dGVySFRNTFxuICAgICAgY29uc3QgYW1lbmRlbWVudFNlYXJjaENhY2hlID0gYC0tLVxcbiR7anNZYW1sLmR1bXAoXG4gICAgICAgIHtcbiAgICAgICAgICBwb3NpdGlvbjogYW1lbmRlbWVudHNDb3VudCAtIGFtZW5kZW1lbnROdW1iZXIsXG4gICAgICAgICAgc2VhcmNoOiB1cmwucmVwbGFjZSgvJnBhZ2U9W1xcZF0rLywgXCJcIiksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzb3J0S2V5czogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICl9LS0tXFxuXFxuJHthbWVuZGVtZW50VHJPdXRlckh0bWx9YFxuICAgICAgaWYgKGFtZW5kZW1lbnRTZWFyY2hDYWNoZSA9PT0gZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUpIHtcbiAgICAgICAgaWYgKGluY3JlbWVudGFsKSB7XG4gICAgICAgICAgLy8gVGhlIHNhbWUgPHRyPiBpcyBhbHJlYWR5IGluIGNhY2hlIGFuZCBpbiB0aGUgc2FtZSBwb3NpdGlvbi5cbiAgICAgICAgICAvLyBBc3N1bWUgdGhhdCBmb2xsb3dpbmcgYW1lbmRtZW50cyBhcmUgbm90IGNoYW5nZWQgYW5kIHN0b3AgbG9va2luZ1xuICAgICAgICAgIC8vIGZvciBhbWVuZG1lbnRzIHRvIHVwc2VydC5cbiAgICAgICAgICBicmVhayBpdGVyU2VhcmNoUGFnZXNcbiAgICAgICAgfVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgaWYgKFxuICAgICAgICBleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSAhPT0gbnVsbCAmJlxuICAgICAgICBmcm9udE1hdHRlcihleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSkuYm9keSA9PT1cbiAgICAgICAgICBhbWVuZGVtZW50VHJPdXRlckh0bWxcbiAgICAgICkge1xuICAgICAgICAvLyBUaGUgc2FtZSA8dHI+IGlzIGFscmVhZHkgaW4gY2FjaGUsIGJ1dCBpbiBhIGRpZmZlcmVudCBwb3NpdGlvbi5cbiAgICAgICAgLy8gQXNzdW1lIHRoZSBhbWVuZG1lbnQgaXMgdW5jaGFuZ2VkLlxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgICBpZiAoZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUgPT09IG51bGwpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgIGBBZGRpbmcgYW1lbmRlbWVudCBzZWFyY2ggY2FjaGU6ICR7YW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGh94oCmYCxcbiAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICBgVXBkYXRpbmcgYW1lbmRlbWVudCBzZWFyY2ggY2FjaGU6ICR7YW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGh94oCmYCxcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sVXJsID0gbmV3IFVSTChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGghLFxuICAgICAgICBcImh0dHBzOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvXCIsXG4gICAgICApLnRvU3RyaW5nKClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sUmVzcG9uc2UgPSBhd2FpdCBmZXRjaChhbWVuZGVtZW50SHRtbFVybClcbiAgICAgIGlmIChhbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1cyA9PT0gNDA0KSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGBBbWVuZGVtZW50IEhUTUwgcGFnZSBub3QgZm91bmQgYXQgJHthbWVuZGVtZW50SHRtbFVybH0uIFNraXBwaW5nLmAsXG4gICAgICAgIClcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGFzc2VydChcbiAgICAgICAgYW1lbmRlbWVudEh0bWxSZXNwb25zZS5vayxcbiAgICAgICAgYFJldHJpZXZhbCBvZiBhbWVuZGVtZW50IEhUTUwgcGFnZSBhdCAke2FtZW5kZW1lbnRIdG1sVXJsfSBmYWlsZWQgd2l0aCBlcnJvcjogJHthbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1c30gJHthbWVuZGVtZW50SHRtbFJlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRIdG1sUGFnZSA9IGF3YWl0IGFtZW5kZW1lbnRIdG1sUmVzcG9uc2UudGV4dCgpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbCA9IHBhcnNlSHRtbChhbWVuZGVtZW50SHRtbFBhZ2UpXG4gICAgICBjb25zdCBmb3JtYXRzTGkgPSBhbWVuZGVtZW50SHRtbC5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICBcImxpLm1pcnJvci1jYXJkLWhlYWRlci0tb3B0aW9ucy0tY29udGVudC0taXRlbVwiLFxuICAgICAgKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGZvcm1hdHNMaS5sZW5ndGgsIDApXG4gICAgICBjb25zdCBqc29uTGkgPSBmb3JtYXRzTGkuZmluZCgoZm9ybWF0TGkpID0+IHtcbiAgICAgICAgY29uc3QgZm9ybWF0U3BhbiA9IGZvcm1hdExpLnF1ZXJ5U2VsZWN0b3IoXCJhID4gc3BhblwiKVxuICAgICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgICAgZm9ybWF0U3BhbixcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIGBObyA8c3Bhbj4gaW4gPGE+IGZvdW5kIGluICR7Zm9ybWF0TGkudG9TdHJpbmcoKX1gLFxuICAgICAgICApXG4gICAgICAgIHJldHVybiBmb3JtYXRTcGFuIS50ZXh0ID09PSBcIlZlcnNpb24gSlNPTlwiXG4gICAgICB9KVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICBqc29uTGksXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgYE5vIEpTT04gdmVyc2lvbiBmb3VuZCBmb3IgYW1lbmRlbWVudCBhdCAke2FtZW5kZW1lbnRIdG1sVXJsfWAsXG4gICAgICApXG4gICAgICBjb25zdCBqc29uQSA9IGpzb25MaSEucXVlcnlTZWxlY3RvcihcImFcIilcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAganNvbkEsXG4gICAgICAgIG51bGwsXG4gICAgICAgIGBObyA8YT4gZm91bmQgaW4gJHtqc29uTGkhLnRvU3RyaW5nKCl9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRKc29uVXJsUGF0aCA9IGpzb25BIS5nZXRBdHRyaWJ1dGUoXCJocmVmXCIpXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uVXJsUGF0aCxcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICBgTm8gVVJMIGZvdW5kIGZvciBKU09OIHZlcnNpb24gb2YgYW1lbmRlbWVudDogJHtqc29uTGkhLnRvU3RyaW5nKCl9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRKc29uVXJsID0gbmV3IFVSTChcbiAgICAgICAgYW1lbmRlbWVudEpzb25VcmxQYXRoISxcbiAgICAgICAgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiLFxuICAgICAgKS50b1N0cmluZygpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYW1lbmRlbWVudEpzb25VcmwpXG4gICAgICBhc3NlcnQoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uUmVzcG9uc2Uub2ssXG4gICAgICAgIGBSZXRyaWV2YWwgb2YgYW1lbmRlbWVudCBKU09OIHBhZ2UgYXQgJHthbWVuZGVtZW50SnNvblVybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7YW1lbmRlbWVudEpzb25SZXNwb25zZS5zdGF0dXN9ICR7YW1lbmRlbWVudEpzb25SZXNwb25zZS5zdGF0dXNUZXh0fWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50ID0gYXdhaXQgYW1lbmRlbWVudEpzb25SZXNwb25zZS5qc29uKClcbiAgICAgIHlpZWxkIFthbWVuZGVtZW50VXJsUGF0aCEsIGFtZW5kZW1lbnRdXG5cbiAgICAgIC8vIFNlYXJjaENhY2hlIG11c3QgYmUgd3JpdHRlbiBhdCB0aGUgZW5kIHRvIGVuc3VyZSB0aGF0IGV2ZXJ5dGhpbmcgaXMgaW4gYSBjb25zaXN0ZW50IHN0YXRlLFxuICAgICAgLy8gZXZlbiBpZiBzY3JpcHQgZmFpbHMgYWJydXB0bHkuXG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUoXG4gICAgICAgIGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoLFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGUsXG4gICAgICAgIFwidXRmOFwiLFxuICAgICAgKVxuICAgIH1cblxuICAgIGNvbnN0IHBhZ2luYXRpb25BID0gaHRtbC5xdWVyeVNlbGVjdG9yKFxuICAgICAgXCJkaXYuYW4tcGFnaW5hdGlvbi0taXRlbSA+IGkuYW4taWNvbnMtY2hldnJvbi1yaWdodCB+IGFcIixcbiAgICApXG4gICAgaWYgKHBhZ2luYXRpb25BID09PSBudWxsKSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgICBjb25zdCB1cmxQYXRoID0gcGFnaW5hdGlvbkEuZ2V0QXR0cmlidXRlKFwiaHJlZlwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbCh1cmxQYXRoLCB1bmRlZmluZWQpXG4gICAgdXJsID0gbmV3IFVSTCh1cmxQYXRoISwgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiKS50b1N0cmluZygpXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsTUFBTSxNQUFNLFFBQVE7QUFDM0IsU0FBU0MsU0FBUyxRQUFRLG9CQUFvQjtBQUM5QyxTQUFTQyxFQUFFLElBQUlDLFFBQVEsUUFBUSxvQkFBb0I7QUFDbkQsU0FBU0MsS0FBSyxJQUFJQyxTQUFTLFFBQVEsZ0JBQWdCO0FBQ25ELE9BQU9DLFNBQVMsTUFBTSxZQUFZO0FBQ2xDLE9BQU9DLEVBQUUsTUFBTSxVQUFVO0FBQ3pCLE9BQU9DLFdBQVcsTUFBTSxjQUFjO0FBQ3RDLE9BQU9DLE1BQU0sTUFBTSxTQUFTO0FBQzVCLFNBQVNMLEtBQUssSUFBSU0sU0FBUyxRQUFRLGtCQUFrQjtBQUNyRCxPQUFPQyxJQUFJLE1BQU0sTUFBTTtBQUFBLFNBRWRDLGVBQWU7QUFBQSxTQUVIQyxPQUFPLElBQUlDLGtCQUFrQjtBQUVsRCxPQUFPLGdCQUFnQkMsd0JBQXdCQSxDQUM3Q0MseUJBQWlDLEVBQ2pDQyxHQUFXLEVBQ1hDLFdBQW9CLEVBQ3BCQyxZQUE0QixFQUM1QkMsYUFBNkIsRUFDN0JDLE9BQWdELEdBQUcsQ0FBQyxDQUFDLEVBQ0E7RUFDckQsV0FBVyxNQUFNLENBQ2ZDLGlCQUFpQixFQUNqQkMsVUFBVSxDQUNYLElBQUlDLDJCQUEyQixDQUM5QlIseUJBQXlCLEVBQ3pCQyxHQUFHLEVBQ0hDLFdBQVcsRUFDWEMsWUFBWSxFQUNaQyxhQUFhLEVBQ2JDLE9BQ0YsQ0FBQyxFQUFFO0lBQ0RULGVBQWUsQ0FBQ1csVUFBVSxDQUFDO0lBQzNCO0lBQ0EsTUFBTSxDQUNKRCxpQkFBaUIsRUFD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
|
|
@@ -1,16 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
* @return {Promise<{partial: {sommaire: any, loi: any, motifs: any, meta: any}, completed: {sommaire: any, loi: any, motifs: any, meta: any}}>} - The parsed textes loi, including the partial and completed versions.
|
|
6
|
-
*/
|
|
7
|
-
export declare function parseTexteLoi(html: string, options?: {
|
|
8
|
-
silent: boolean;
|
|
9
|
-
}): Promise<{
|
|
10
|
-
sommaire: any;
|
|
11
|
-
loi: {
|
|
12
|
-
articles: Record<string, any>[];
|
|
1
|
+
export declare function parseTexte(assembleeUrl: string, page: string): {
|
|
2
|
+
error: {
|
|
3
|
+
code: number;
|
|
4
|
+
message: string;
|
|
13
5
|
};
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
html: string;
|
|
7
|
+
page: string;
|
|
8
|
+
subdivisions?: undefined;
|
|
9
|
+
url?: undefined;
|
|
10
|
+
} | {
|
|
11
|
+
error: null;
|
|
12
|
+
html: string;
|
|
13
|
+
page: string;
|
|
14
|
+
subdivisions: {
|
|
15
|
+
id: string;
|
|
16
|
+
type: string;
|
|
17
|
+
niveau: number;
|
|
18
|
+
niveauRelatif: number;
|
|
19
|
+
titres: object[];
|
|
20
|
+
alineas: object[];
|
|
21
|
+
}[];
|
|
22
|
+
url: string;
|
|
23
|
+
};
|