@tricoteuses/assemblee 1.1.3 → 1.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/lib/bugs/acteur-00010/plugin.test.js +53 -55
  2. package/lib/bugs/acteur-00010.js +26 -30
  3. package/lib/bugs/agenda-00002/plugin.test.js +78 -82
  4. package/lib/bugs/agenda-00002.js +206 -214
  5. package/lib/bugs/agenda-00008/plugin.test.js +54 -56
  6. package/lib/bugs/agenda-00008.js +38 -42
  7. package/lib/bugs/agenda-00011/plugin.test.js +204 -214
  8. package/lib/bugs/agenda-00011.js +117 -131
  9. package/lib/bugs.js +212 -232
  10. package/lib/cleaners/actes_legislatifs.js +1 -1
  11. package/lib/cleaners/acteurs.js +2 -2
  12. package/lib/cleaners/amendements.js +1 -1
  13. package/lib/cleaners/documents.js +1 -1
  14. package/lib/cleaners/dossiers_legislatifs.js +1 -1
  15. package/lib/cleaners/reunions.js +1 -1
  16. package/lib/cleaners/scrutins.js +1 -1
  17. package/lib/cleaners/xml.js +2 -2
  18. package/lib/datasets.js +2 -2
  19. package/lib/dossiers_legislatifs.js +1 -1
  20. package/lib/file_systems.js +48 -50
  21. package/lib/git.js +3 -3
  22. package/lib/git.mjs +2 -2
  23. package/lib/inserters.js +1 -1
  24. package/lib/loaders.js +1 -1
  25. package/lib/parsers/documents.js +29 -31
  26. package/lib/parsers/recherche_amendements.js +284 -288
  27. package/lib/parsers/recherche_amendements.mjs +1 -1
  28. package/lib/raw_types/acteurs_et_organes.d.ts +1 -0
  29. package/lib/raw_types/acteurs_et_organes.js +3 -2
  30. package/lib/raw_types/acteurs_et_organes.mjs +3 -2
  31. package/lib/scripts/bugs_helper.js +301 -317
  32. package/lib/scripts/clean_data.js +1 -1
  33. package/lib/scripts/clean_reorganized_data.js +13 -15
  34. package/lib/scripts/clean_reorganized_data.mjs +1 -1
  35. package/lib/scripts/diff_amendements.js +1 -1
  36. package/lib/scripts/document_dossiers_legislatifs.js +2 -2
  37. package/lib/scripts/merge_scrutins.js +1 -1
  38. package/lib/scripts/parse_textes_lois.js +3 -3
  39. package/lib/scripts/parse_textes_lois.mjs +2 -2
  40. package/lib/scripts/raw_types_from_amendements.js +133 -135
  41. package/lib/scripts/reorganize_data.js +14 -16
  42. package/lib/scripts/reorganize_data.mjs +2 -2
  43. package/lib/scripts/retrieve_deputes_photos.js +170 -172
  44. package/lib/scripts/retrieve_deputes_photos.mjs +2 -2
  45. package/lib/scripts/retrieve_documents.js +266 -278
  46. package/lib/scripts/retrieve_open_data.js +140 -144
  47. package/lib/scripts/retrieve_open_data.mjs +1 -1
  48. package/lib/scripts/retrieve_pending_amendments.js +118 -120
  49. package/lib/scripts/retrieve_senateurs_photos.js +168 -170
  50. package/lib/scripts/retrieve_senateurs_photos.mjs +2 -2
  51. package/lib/scripts/retrieve_textes_lois.js +130 -132
  52. package/lib/scripts/retrieve_textes_lois.mjs +2 -2
  53. package/lib/scripts/validate_json.js +87 -91
  54. package/lib/types/acteurs_et_organes.d.ts +1 -0
  55. package/lib/types/acteurs_et_organes.js +3 -2
  56. package/lib/types/acteurs_et_organes.mjs +3 -2
  57. package/lib/types/dossiers_legislatifs.js +1 -1
  58. package/lib/types/dossiers_legislatifs.mjs +1 -1
  59. package/package.json +6 -6
@@ -28,7 +28,7 @@ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symb
28
28
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
29
29
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, 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 normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
30
30
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
31
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
31
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
32
32
  var optionsDefinitions = [{
33
33
  alias: "s",
34
34
  help: "don't log anything",
@@ -24,7 +24,7 @@ var _documents = require("../parsers/documents");
24
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
25
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, 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 normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
26
26
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
27
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
28
28
  // import { Document, TypeDocument } from "../types/dossiers_legislatifs"
29
29
  // import { DocumentUrlFormat, urlFromDocument } from "../urls"
30
30
 
@@ -77,7 +77,7 @@ var options = (0, _commandLineArgs["default"])(optionsDefinitions);
77
77
  // stdio: ["ignore", "ignore", "pipe"],
78
78
  // })
79
79
  // try {
80
- // execSync('git commit -m "Nouvelle moisson"', {
80
+ // execSync('git commit -m "Nouvelle moisson" --quiet', {
81
81
  // cwd: repositoryDir,
82
82
  // env: process.env,
83
83
  // encoding: "utf-8",
@@ -237,4 +237,4 @@ function parseTextesLois() {
237
237
  }
238
238
  }
239
239
  parseTextesLois();
240
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcHRpb25zRGVmaW5pdGlvbnMiLCJhbGlhcyIsImhlbHAiLCJuYW1lIiwidHlwZSIsIkJvb2xlYW4iLCJTdHJpbmciLCJkZWZhdWx0VmFsdWUiLCJtdWx0aXBsZSIsImRlZmF1bHRPcHRpb24iLCJvcHRpb25zIiwiY29tbWFuZExpbmVBcmdzIiwicGFyc2VUZXh0ZXNMb2lzIiwiYXNzZXJ0IiwiY29tbWl0IiwiZmlsZW5hbWUiLCJkYXRhRGlyIiwidGV4dGVzTG9pc0RpciIsInBhdGgiLCJqb2luIiwibGVnaXNsYXR1cmUiLCJmcyIsInJlYWRkaXJTeW5jIiwiZW5kc1dpdGgiLCJzdGFydHNXaXRoIiwidGV4dGVMb2lQYXRoIiwic2lsZW50IiwiY29uc29sZSIsImxvZyIsInRleHRlTG9pUGFnZSIsInJlYWRGaWxlU3luYyIsImVuY29kaW5nIiwidGV4dGVMb2lVcmwiLCJ0ZXh0ZUxvaVBhcnNlZCIsInBhcnNlVGV4dGVMb2kiLCJ2ZXJib3NlIiwiSlNPTiIsInN0cmluZ2lmeSIsInN1YmRpdmlzaW9ucyIsImVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcGFyc2VfdGV4dGVzX2xvaXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbi8vIGltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcImNoaWxkX3Byb2Nlc3NcIlxuaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5cbi8vIGltcG9ydCB7IEVuYWJsZWREYXRhc2V0cyB9IGZyb20gXCIuLi9kYXRhc2V0c1wiXG4vLyBpbXBvcnQgeyBsb2FkQXNzZW1ibGVlRGF0YSB9IGZyb20gXCIuLi9sb2FkZXJzXCJcbmltcG9ydCB7IHBhcnNlVGV4dGVMb2kgfSBmcm9tIFwiLi4vcGFyc2Vycy9kb2N1bWVudHNcIlxuLy8gaW1wb3J0IHsgRG9jdW1lbnQsIFR5cGVEb2N1bWVudCB9IGZyb20gXCIuLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG4vLyBpbXBvcnQgeyBEb2N1bWVudFVybEZvcm1hdCwgdXJsRnJvbURvY3VtZW50IH0gZnJvbSBcIi4uL3VybHNcIlxuXG5jb25zdCBvcHRpb25zRGVmaW5pdGlvbnMgPSBbXG4gIHtcbiAgICBhbGlhczogXCJjXCIsXG4gICAgaGVscDogXCJjb21taXQgc3BsaXQgZmlsZXNcIixcbiAgICBuYW1lOiBcImNvbW1pdFwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJmXCIsXG4gICAgaGVscDogXCJGaWxlbmFtZSBvZiBBc3NlbWJsw6llJ3MgZG9jdW1lbnQgdG8gcGFyc2VcIixcbiAgICBuYW1lOiBcImZpbGVuYW1lXCIsXG4gICAgdHlwZTogU3RyaW5nLFxuICB9LFxuICB7XG4gICAgYWxpYXM6IFwibFwiLFxuICAgIGRlZmF1bHRWYWx1ZTogXCIxNlwiLFxuICAgIG5hbWU6IFwibGVnaXNsYXR1cmVcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJyXCIsXG4gICAgaGVscDogXCJwdXNoIGNvbW1pdCB0byBnaXZlbiByZW1vdGVcIixcbiAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICBuYW1lOiBcInJlbW90ZVwiLFxuICAgIHR5cGU6IFN0cmluZyxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcInNcIixcbiAgICBoZWxwOiBcImRvbid0IGxvZyBhbnl0aGluZ1wiLFxuICAgIG5hbWU6IFwic2lsZW50XCIsXG4gICAgdHlwZTogQm9vbGVhbixcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcInZcIixcbiAgICBoZWxwOiBcInZlcmJvc2UgbG9nc1wiLFxuICAgIG5hbWU6IFwidmVyYm9zZVwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBkZWZhdWx0T3B0aW9uOiB0cnVlLFxuICAgIGhlbHA6IFwiZGlyZWN0b3J5IGNvbnRhaW5pbmcgQXNzZW1ibMOpZSBvcGVuIGRhdGEgZmlsZXNcIixcbiAgICBuYW1lOiBcImRhdGFEaXJcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG5dXG5jb25zdCBvcHRpb25zID0gY29tbWFuZExpbmVBcmdzKG9wdGlvbnNEZWZpbml0aW9ucylcblxuLy8gZnVuY3Rpb24gY29tbWl0QW5kUHVzaChyZXBvc2l0b3J5RGlyOiBzdHJpbmcsIGNvbW1pdDogYm9vbGVhbiwgcmVtb3Rlcz86IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4vLyAgIGxldCBlcnJvciA9IGZhbHNlXG4vLyAgIGlmIChjb21taXQpIHtcbi8vICAgICBleGVjU3luYyhgZ2l0IGFkZCAuYCwge1xuLy8gICAgICAgY3dkOiByZXBvc2l0b3J5RGlyLFxuLy8gICAgICAgZW52OiBwcm9jZXNzLmVudixcbi8vICAgICAgIGVuY29kaW5nOiBcInV0Zi04XCIsXG4vLyAgICAgICBzdGRpbzogW1wiaWdub3JlXCIsIFwiaWdub3JlXCIsIFwicGlwZVwiXSxcbi8vICAgICB9KVxuLy8gICAgIHRyeSB7XG4vLyAgICAgICBleGVjU3luYygnZ2l0IGNvbW1pdCAtbSBcIk5vdXZlbGxlIG1vaXNzb25cIicsIHtcbi8vICAgICAgICAgY3dkOiByZXBvc2l0b3J5RGlyLFxuLy8gICAgICAgICBlbnY6IHByb2Nlc3MuZW52LFxuLy8gICAgICAgICBlbmNvZGluZzogXCJ1dGYtOFwiLFxuLy8gICAgICAgfSlcbi8vICAgICB9IGNhdGNoIChjaGlsZFByb2Nlc3MpIHtcbi8vICAgICAgIGlmIChcbi8vICAgICAgICAgKGNoaWxkUHJvY2VzcyBhcyBDaGlsZFByb2Nlc3MpLnN0ZGVyciA9PT0gbnVsbCB8fFxuLy8gICAgICAgICAhL25vdGhpbmcgdG8gY29tbWl0Ly50ZXN0KChjaGlsZFByb2Nlc3MgYXMgYW55KS5zdGRvdXQpXG4vLyAgICAgICApIHtcbi8vICAgICAgICAgY29uc29sZS5lcnJvcigoY2hpbGRQcm9jZXNzIGFzIGFueSkub3V0cHV0KVxuLy8gICAgICAgICB0aHJvdyBjaGlsZFByb2Nlc3Ncbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgZm9yIChjb25zdCByZW1vdGUgb2YgcmVtb3RlcyB8fCBbXSkge1xuLy8gICAgICAgdHJ5IHtcbi8vICAgICAgICAgZXhlY1N5bmMoYGdpdCBwdXNoICR7cmVtb3RlfSBtYXN0ZXJgLCB7XG4vLyAgICAgICAgICAgY3dkOiByZXBvc2l0b3J5RGlyLFxuLy8gICAgICAgICAgIGVudjogcHJvY2Vzcy5lbnYsXG4vLyAgICAgICAgICAgZW5jb2Rpbmc6IFwidXRmLThcIixcbi8vICAgICAgICAgICBzdGRpbzogW1wiaWdub3JlXCIsIFwiaWdub3JlXCIsIFwicGlwZVwiXSxcbi8vICAgICAgICAgfSlcbi8vICAgICAgIH0gY2F0Y2ggKGNoaWxkUHJvY2Vzcykge1xuLy8gICAgICAgICAvLyBEb24ndCBzdG9wIHdoZW4gcHVzaCBmYWlscy5cbi8vICAgICAgICAgY29uc29sZS5lcnJvcigoY2hpbGRQcm9jZXNzIGFzIGFueSkub3V0cHV0KVxuLy8gICAgICAgICBlcnJvciA9IHRydWVcbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vICAgcmV0dXJuIGVycm9yXG4vLyB9XG5cbmZ1bmN0aW9uIHBhcnNlVGV4dGVzTG9pcygpOiB2b2lkIHtcbiAgYXNzZXJ0KFxuICAgICFvcHRpb25zLmNvbW1pdCB8fCBvcHRpb25zLmZpbGVuYW1lLFxuICAgICdPcHRpb25zIFwiY29tbWl0XCIgJiBcImZpbGVuYW1lXCIgYXJlIGluY29tcGF0aWJsZScsXG4gIClcblxuICBjb25zdCBkYXRhRGlyID0gb3B0aW9ucy5kYXRhRGlyXG4gIC8vIGNvbnN0IHsgZG9jdW1lbnRCeVVpZCB9ID0gbG9hZEFzc2VtYmxlZURhdGEoXG4gIC8vICAgZGF0YURpcixcbiAgLy8gICBFbmFibGVkRGF0YXNldHMuRG9zc2llcnNMZWdpc2xhdGlmcyxcbiAgLy8gICBvcHRpb25zLmxlZ2lzbGF0dXJlLFxuICAvLyApXG5cbiAgY29uc3QgdGV4dGVzTG9pc0RpciA9IHBhdGguam9pbihcbiAgICBkYXRhRGlyLFxuICAgIFwid3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnJcIixcbiAgICBvcHRpb25zLmxlZ2lzbGF0dXJlLFxuICAgIFwidGV4dGVzXCIsXG4gIClcbiAgZm9yIChjb25zdCBmaWxlbmFtZSBvZiBmcy5yZWFkZGlyU3luYyh0ZXh0ZXNMb2lzRGlyKSkge1xuICAgIGlmIChmaWxlbmFtZVswXSA9PT0gXCIuXCIpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIGlmICghZmlsZW5hbWUuZW5kc1dpdGgoXCIuYXNwXCIpKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBpZiAob3B0aW9ucy5maWxlbmFtZSAmJiAhZmlsZW5hbWUuc3RhcnRzV2l0aChvcHRpb25zLmZpbGVuYW1lKSkge1xuICAgICAgY29udGludWVcbiAgICB9XG4gICAgY29uc3QgdGV4dGVMb2lQYXRoID0gcGF0aC5qb2luKHRleHRlc0xvaXNEaXIsIGZpbGVuYW1lKVxuICAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgIGNvbnNvbGUubG9nKGBQYXJzaW5nIFwidGV4dGUgZGUgbG9pXCIgJHt0ZXh0ZUxvaVBhdGh94oCmYClcbiAgICB9XG4gICAgY29uc3QgdGV4dGVMb2lQYWdlID0gZnMucmVhZEZpbGVTeW5jKHRleHRlTG9pUGF0aCwgeyBlbmNvZGluZzogXCJ1dGYtOFwiIH0pXG4gICAgY29uc3QgdGV4dGVMb2lVcmwgPSBgaHR0cDovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyLyR7b3B0aW9ucy5sZWdpc2xhdHVyZX0vdGV4dGVzLyR7ZmlsZW5hbWV9YFxuICAgIGNvbnN0IHRleHRlTG9pUGFyc2VkID0gcGFyc2VUZXh0ZUxvaSh0ZXh0ZUxvaVVybCwgdGV4dGVMb2lQYWdlKVxuICAgIGlmIChvcHRpb25zLmZpbGVuYW1lICYmIG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkodGV4dGVMb2lQYXJzZWQuc3ViZGl2aXNpb25zLCBudWxsLCAyKSlcbiAgICB9XG4gICAgY29uc3QgeyBlcnJvciB9ID0gdGV4dGVMb2lQYXJzZWRcbiAgICBpZiAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgIGAgIEVycm9yIHdoaWxlIHBhcnNpbmcgcGFnZSBcIiR7dGV4dGVMb2lQYXRofVwiOlxcblxcbkVycm9yOlxcbiR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgZXJyb3IsXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICAyLFxuICAgICAgICApfWAsXG4gICAgICApXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgfVxuXG4gIC8vIGZzLmVuc3VyZURpclN5bmModGV4dGVzTG9pc0RpcilcbiAgLy8gaWYgKCFvcHRpb25zLnVpZCkge1xuICAvLyAgIGZvciAoY29uc3QgZmlsZW5hbWUgb2YgZnMucmVhZGRpclN5bmModGV4dGVzTG9pc0RpcikpIHtcbiAgLy8gICAgIGlmIChmaWxlbmFtZVswXSA9PT0gXCIuXCIpIHtcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICAgIGZzLnJlbW92ZVN5bmMocGF0aC5qb2luKHRleHRlc0xvaXNEaXIsIGZpbGVuYW1lKSlcbiAgLy8gICB9XG4gIC8vIH1cblxuICAvLyBjb25zdCB0ZXh0ZXNMb2lzID0gT2JqZWN0LnZhbHVlcyhkb2N1bWVudEJ5VWlkKVxuICAvLyAgIC5maWx0ZXIoZG9jdW1lbnQgPT4gZG9jdW1lbnQueHNpVHlwZSA9PT0gVHlwZURvY3VtZW50LlRleHRlTG9pVHlwZSlcbiAgLy8gICAuZmlsdGVyKFxuICAvLyAgICAgZG9jdW1lbnQgPT4gZG9jdW1lbnQudWlkLnN0YXJ0c1dpdGgoXCJQSU9OQU5cIikgfHwgZG9jdW1lbnQudWlkLnN0YXJ0c1dpdGgoXCJQUkpMQU5cIiksXG4gIC8vICAgKVxuICAvLyAgIC5tYXAoZG9jdW1lbnQgPT4ge1xuICAvLyAgICAgcmV0dXJuIHtcbiAgLy8gICAgICAgLi4uZG9jdW1lbnQsXG4gIC8vICAgICAgIHJhd0RvY3VtZW50QXNzZW1ibGVlVXJsOiB1cmxGcm9tRG9jdW1lbnQoZG9jdW1lbnQsIERvY3VtZW50VXJsRm9ybWF0LlJhd0h0bWwpLFxuICAvLyAgICAgfVxuICAvLyAgIH0pXG4gIC8vICAgLnNvcnQoKGEsIGIpID0+XG4gIC8vICAgICBhLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsID09PSBudWxsXG4gIC8vICAgICAgID8gLTFcbiAgLy8gICAgICAgOiBiLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsID09PSBudWxsXG4gIC8vICAgICAgID8gMVxuICAvLyAgICAgICA6IGEucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwubG9jYWxlQ29tcGFyZShiLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsKSxcbiAgLy8gICApXG5cbiAgLy8gY29uc3QgZmlyc3RVaWQgPSBvcHRpb25zLnVpZFxuICAvLyBsZXQgc2tpcCA9ICEhZmlyc3RVaWRcbiAgLy8gZm9yIChjb25zdCB0ZXh0ZUxvaSBvZiB0ZXh0ZXNMb2lzKSB7XG4gIC8vICAgaWYgKHNraXApIHtcbiAgLy8gICAgIGlmICh0ZXh0ZUxvaS51aWQgPT09IGZpcnN0VWlkKSB7XG4gIC8vICAgICAgIHNraXAgPSBmYWxzZVxuICAvLyAgICAgfSBlbHNlIHtcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICB9XG4gIC8vICAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAvLyAgICAgY29uc29sZS5sb2coXG4gIC8vICAgICAgIGBSZXRyaWV2aW5nIGJpbGwgJHt0ZXh0ZUxvaS51aWR9IGF0ICR7dGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmx9YCxcbiAgLy8gICAgIClcbiAgLy8gICB9XG4gIC8vICAgaWYgKHRleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsID09PSBudWxsKSB7XG4gIC8vICAgICBjb250aW51ZVxuICAvLyAgIH1cbiAgLy8gICBjb25zdCB1cmwgPSBuZXcgVVJMKHRleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsKVxuICAvLyAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKGRhdGFEaXIsIHVybC5ob3N0bmFtZSwgLi4udXJsLnBhdGhuYW1lLnNwbGl0KFwiL1wiKSlcbiAgLy8gICBhc3NlcnQuc3RyaWN0RXF1YWwodGV4dGVzTG9pc0RpciwgcGF0aC5kaXJuYW1lKGZpbGVQYXRoKSlcblxuICAvLyAgIGxldCBwYWdlID0gdW5kZWZpbmVkXG4gIC8vICAgdHJ5IHtcbiAgLy8gICAgIHBhZ2UgPSBmcy5yZWFkRmlsZVN5bmMoZmlsZVBhdGgsIHsgZW5jb2Rpbmc6IFwidXRmLThcIiB9KVxuICAvLyAgIH0gY2F0Y2ggKGUpIHtcbiAgLy8gICAgIGlmIChlLmNvZGUgPT09IFwiRU5PRU5UXCIpIHtcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICAgIHRocm93IGVcbiAgLy8gICB9XG5cbiAgLy8gICBpZiAob3B0aW9ucy5wYXJzZSkge1xuICAvLyAgICAgY29uc3QgdGV4dGVMb2lQYXJzZWQgPSBwYXJzZVRleHRlTG9pKHRleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsLCBwYWdlKVxuICAvLyAgICAgY29uc3QgeyBlcnJvciB9ID0gdGV4dGVMb2lQYXJzZWRcbiAgLy8gICAgIGlmIChlcnJvcikge1xuICAvLyAgICAgICBjb25zb2xlLmVycm9yKFxuICAvLyAgICAgICAgIGBFcnJvciB3aGlsZSBwYXJzaW5nIHBhZ2UgXCIke3RleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsfVwiICh1aWQ6ICR7XG4gIC8vICAgICAgICAgICB0ZXh0ZUxvaS51aWRcbiAgLy8gICAgICAgICB9KTpcXG5cXG5FcnJvcjpcXG4ke0pTT04uc3RyaW5naWZ5KGVycm9yLCBudWxsLCAyKX1gLFxuICAvLyAgICAgICApXG4gIC8vICAgICAgIGNvbnRpbnVlXG4gIC8vICAgICB9XG4gIC8vICAgfVxuICAvLyB9XG4gIC8vIGlmIGNvbW1pdEFuZFB1c2godGV4dGVzTG9pc0Rpciwgb3B0aW9ucy5jb21taXQsIG9wdGlvbnMucmVtb3RlKSB7XG4gIC8vICAgcHJvY2Vzcy5leGl0KDEpXG4gIC8vIH1cbiAgLy8gcmV0dXJuIHRleHRlc0xvaXNcbn1cblxucGFyc2VUZXh0ZXNMb2lzKClcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFFQTtBQUNBO0FBQ0E7QUFJQTtBQUFvRDtBQUFBO0FBQUE7QUFBQTtBQUNwRDtBQUNBOztBQUVBLElBQU1BLGtCQUFrQixHQUFHLENBQ3pCO0VBQ0VDLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSxvQkFBb0I7RUFDMUJDLElBQUksRUFBRSxRQUFRO0VBQ2RDLElBQUksRUFBRUM7QUFDUixDQUFDLEVBQ0Q7RUFDRUosS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLDJDQUEyQztFQUNqREMsSUFBSSxFQUFFLFVBQVU7RUFDaEJDLElBQUksRUFBRUU7QUFDUixDQUFDLEVBQ0Q7RUFDRUwsS0FBSyxFQUFFLEdBQUc7RUFDVk0sWUFBWSxFQUFFLElBQUk7RUFDbEJKLElBQUksRUFBRSxhQUFhO0VBQ25CQyxJQUFJLEVBQUVFO0FBQ1IsQ0FBQyxFQUNEO0VBQ0VMLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSw2QkFBNkI7RUFDbkNNLFFBQVEsRUFBRSxJQUFJO0VBQ2RMLElBQUksRUFBRSxRQUFRO0VBQ2RDLElBQUksRUFBRUU7QUFDUixDQUFDLEVBQ0Q7RUFDRUwsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLG9CQUFvQjtFQUMxQkMsSUFBSSxFQUFFLFFBQVE7RUFDZEMsSUFBSSxFQUFFQztBQUNSLENBQUMsRUFDRDtFQUNFSixLQUFLLEVBQUUsR0FBRztFQUNWQyxJQUFJLEVBQUUsY0FBYztFQUNwQkMsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFQztBQUNSLENBQUMsRUFDRDtFQUNFSSxhQUFhLEVBQUUsSUFBSTtFQUNuQlAsSUFBSSxFQUFFLGdEQUFnRDtFQUN0REMsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFRTtBQUNSLENBQUMsQ0FDRjtBQUNELElBQU1JLE9BQU8sR0FBRyxJQUFBQywyQkFBZSxFQUFDWCxrQkFBa0IsQ0FBQzs7QUFFbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxTQUFTWSxlQUFlLEdBQVM7RUFDL0IsSUFBQUMsa0JBQU0sRUFDSixDQUFDSCxPQUFPLENBQUNJLE1BQU0sSUFBSUosT0FBTyxDQUFDSyxRQUFRLEVBQ25DLGdEQUFnRCxDQUNqRDtFQUVELElBQU1DLE9BQU8sR0FBR04sT0FBTyxDQUFDTSxPQUFPO0VBQy9CO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0VBRUEsSUFBTUMsYUFBYSxHQUFHQyxnQkFBSSxDQUFDQyxJQUFJLENBQzdCSCxPQUFPLEVBQ1AsNEJBQTRCLEVBQzVCTixPQUFPLENBQUNVLFdBQVcsRUFDbkIsUUFBUSxDQUNUO0VBQUEsMkNBQ3NCQyxtQkFBRSxDQUFDQyxXQUFXLENBQUNMLGFBQWEsQ0FBQztJQUFBO0VBQUE7SUFBcEQsb0RBQXNEO01BQUEsSUFBM0NGLFFBQVE7TUFDakIsSUFBSUEsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRTtRQUN2QjtNQUNGO01BQ0EsSUFBSSxDQUFDQSxRQUFRLENBQUNRLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUM5QjtNQUNGO01BQ0EsSUFBSWIsT0FBTyxDQUFDSyxRQUFRLElBQUksQ0FBQ0EsUUFBUSxDQUFDUyxVQUFVLENBQUNkLE9BQU8sQ0FBQ0ssUUFBUSxDQUFDLEVBQUU7UUFDOUQ7TUFDRjtNQUNBLElBQU1VLFlBQVksR0FBR1AsZ0JBQUksQ0FBQ0MsSUFBSSxDQUFDRixhQUFhLEVBQUVGLFFBQVEsQ0FBQztNQUN2RCxJQUFJLENBQUNMLE9BQU8sQ0FBQ2dCLE1BQU0sRUFBRTtRQUNuQkMsT0FBTyxDQUFDQyxHQUFHLG9DQUEyQkgsWUFBWSxZQUFJO01BQ3hEO01BQ0EsSUFBTUksWUFBWSxHQUFHUixtQkFBRSxDQUFDUyxZQUFZLENBQUNMLFlBQVksRUFBRTtRQUFFTSxRQUFRLEVBQUU7TUFBUSxDQUFDLENBQUM7TUFDekUsSUFBTUMsV0FBVywrQ0FBd0N0QixPQUFPLENBQUNVLFdBQVcscUJBQVdMLFFBQVEsQ0FBRTtNQUNqRyxJQUFNa0IsY0FBYyxHQUFHLElBQUFDLHdCQUFhLEVBQUNGLFdBQVcsRUFBRUgsWUFBWSxDQUFDO01BQy9ELElBQUluQixPQUFPLENBQUNLLFFBQVEsSUFBSUwsT0FBTyxDQUFDeUIsT0FBTyxFQUFFO1FBQ3ZDUixPQUFPLENBQUNDLEdBQUcsQ0FBQ1EsSUFBSSxDQUFDQyxTQUFTLENBQUNKLGNBQWMsQ0FBQ0ssWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztNQUNuRTtNQUNBLElBQVFDLEtBQUssR0FBS04sY0FBYyxDQUF4Qk0sS0FBSztNQUNiLElBQUlBLEtBQUssRUFBRTtRQUNUWixPQUFPLENBQUNZLEtBQUssd0NBQ29CZCxZQUFZLDRCQUFpQlcsSUFBSSxDQUFDQyxTQUFTLENBQ3hFRSxLQUFLLEVBQ0wsSUFBSSxFQUNKLENBQUMsQ0FDRixFQUNGO1FBQ0Q7TUFDRjtJQUNGOztJQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7SUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0lBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztJQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7SUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VBQUE7SUFBQTtFQUFBO0lBQUE7RUFBQTtBQUNGO0FBRUEzQixlQUFlLEVBQUUifQ==
240
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcHRpb25zRGVmaW5pdGlvbnMiLCJhbGlhcyIsImhlbHAiLCJuYW1lIiwidHlwZSIsIkJvb2xlYW4iLCJTdHJpbmciLCJkZWZhdWx0VmFsdWUiLCJtdWx0aXBsZSIsImRlZmF1bHRPcHRpb24iLCJvcHRpb25zIiwiY29tbWFuZExpbmVBcmdzIiwicGFyc2VUZXh0ZXNMb2lzIiwiYXNzZXJ0IiwiY29tbWl0IiwiZmlsZW5hbWUiLCJkYXRhRGlyIiwidGV4dGVzTG9pc0RpciIsInBhdGgiLCJqb2luIiwibGVnaXNsYXR1cmUiLCJmcyIsInJlYWRkaXJTeW5jIiwiZW5kc1dpdGgiLCJzdGFydHNXaXRoIiwidGV4dGVMb2lQYXRoIiwic2lsZW50IiwiY29uc29sZSIsImxvZyIsInRleHRlTG9pUGFnZSIsInJlYWRGaWxlU3luYyIsImVuY29kaW5nIiwidGV4dGVMb2lVcmwiLCJ0ZXh0ZUxvaVBhcnNlZCIsInBhcnNlVGV4dGVMb2kiLCJ2ZXJib3NlIiwiSlNPTiIsInN0cmluZ2lmeSIsInN1YmRpdmlzaW9ucyIsImVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcGFyc2VfdGV4dGVzX2xvaXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbi8vIGltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcImNoaWxkX3Byb2Nlc3NcIlxuaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5cbi8vIGltcG9ydCB7IEVuYWJsZWREYXRhc2V0cyB9IGZyb20gXCIuLi9kYXRhc2V0c1wiXG4vLyBpbXBvcnQgeyBsb2FkQXNzZW1ibGVlRGF0YSB9IGZyb20gXCIuLi9sb2FkZXJzXCJcbmltcG9ydCB7IHBhcnNlVGV4dGVMb2kgfSBmcm9tIFwiLi4vcGFyc2Vycy9kb2N1bWVudHNcIlxuLy8gaW1wb3J0IHsgRG9jdW1lbnQsIFR5cGVEb2N1bWVudCB9IGZyb20gXCIuLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG4vLyBpbXBvcnQgeyBEb2N1bWVudFVybEZvcm1hdCwgdXJsRnJvbURvY3VtZW50IH0gZnJvbSBcIi4uL3VybHNcIlxuXG5jb25zdCBvcHRpb25zRGVmaW5pdGlvbnMgPSBbXG4gIHtcbiAgICBhbGlhczogXCJjXCIsXG4gICAgaGVscDogXCJjb21taXQgc3BsaXQgZmlsZXNcIixcbiAgICBuYW1lOiBcImNvbW1pdFwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJmXCIsXG4gICAgaGVscDogXCJGaWxlbmFtZSBvZiBBc3NlbWJsw6llJ3MgZG9jdW1lbnQgdG8gcGFyc2VcIixcbiAgICBuYW1lOiBcImZpbGVuYW1lXCIsXG4gICAgdHlwZTogU3RyaW5nLFxuICB9LFxuICB7XG4gICAgYWxpYXM6IFwibFwiLFxuICAgIGRlZmF1bHRWYWx1ZTogXCIxNlwiLFxuICAgIG5hbWU6IFwibGVnaXNsYXR1cmVcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJyXCIsXG4gICAgaGVscDogXCJwdXNoIGNvbW1pdCB0byBnaXZlbiByZW1vdGVcIixcbiAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICBuYW1lOiBcInJlbW90ZVwiLFxuICAgIHR5cGU6IFN0cmluZyxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcInNcIixcbiAgICBoZWxwOiBcImRvbid0IGxvZyBhbnl0aGluZ1wiLFxuICAgIG5hbWU6IFwic2lsZW50XCIsXG4gICAgdHlwZTogQm9vbGVhbixcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcInZcIixcbiAgICBoZWxwOiBcInZlcmJvc2UgbG9nc1wiLFxuICAgIG5hbWU6IFwidmVyYm9zZVwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBkZWZhdWx0T3B0aW9uOiB0cnVlLFxuICAgIGhlbHA6IFwiZGlyZWN0b3J5IGNvbnRhaW5pbmcgQXNzZW1ibMOpZSBvcGVuIGRhdGEgZmlsZXNcIixcbiAgICBuYW1lOiBcImRhdGFEaXJcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG5dXG5jb25zdCBvcHRpb25zID0gY29tbWFuZExpbmVBcmdzKG9wdGlvbnNEZWZpbml0aW9ucylcblxuLy8gZnVuY3Rpb24gY29tbWl0QW5kUHVzaChyZXBvc2l0b3J5RGlyOiBzdHJpbmcsIGNvbW1pdDogYm9vbGVhbiwgcmVtb3Rlcz86IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4vLyAgIGxldCBlcnJvciA9IGZhbHNlXG4vLyAgIGlmIChjb21taXQpIHtcbi8vICAgICBleGVjU3luYyhgZ2l0IGFkZCAuYCwge1xuLy8gICAgICAgY3dkOiByZXBvc2l0b3J5RGlyLFxuLy8gICAgICAgZW52OiBwcm9jZXNzLmVudixcbi8vICAgICAgIGVuY29kaW5nOiBcInV0Zi04XCIsXG4vLyAgICAgICBzdGRpbzogW1wiaWdub3JlXCIsIFwiaWdub3JlXCIsIFwicGlwZVwiXSxcbi8vICAgICB9KVxuLy8gICAgIHRyeSB7XG4vLyAgICAgICBleGVjU3luYygnZ2l0IGNvbW1pdCAtbSBcIk5vdXZlbGxlIG1vaXNzb25cIiAtLXF1aWV0Jywge1xuLy8gICAgICAgICBjd2Q6IHJlcG9zaXRvcnlEaXIsXG4vLyAgICAgICAgIGVudjogcHJvY2Vzcy5lbnYsXG4vLyAgICAgICAgIGVuY29kaW5nOiBcInV0Zi04XCIsXG4vLyAgICAgICB9KVxuLy8gICAgIH0gY2F0Y2ggKGNoaWxkUHJvY2Vzcykge1xuLy8gICAgICAgaWYgKFxuLy8gICAgICAgICAoY2hpbGRQcm9jZXNzIGFzIENoaWxkUHJvY2Vzcykuc3RkZXJyID09PSBudWxsIHx8XG4vLyAgICAgICAgICEvbm90aGluZyB0byBjb21taXQvLnRlc3QoKGNoaWxkUHJvY2VzcyBhcyBhbnkpLnN0ZG91dClcbi8vICAgICAgICkge1xuLy8gICAgICAgICBjb25zb2xlLmVycm9yKChjaGlsZFByb2Nlc3MgYXMgYW55KS5vdXRwdXQpXG4vLyAgICAgICAgIHRocm93IGNoaWxkUHJvY2Vzc1xuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgICBmb3IgKGNvbnN0IHJlbW90ZSBvZiByZW1vdGVzIHx8IFtdKSB7XG4vLyAgICAgICB0cnkge1xuLy8gICAgICAgICBleGVjU3luYyhgZ2l0IHB1c2ggJHtyZW1vdGV9IG1hc3RlcmAsIHtcbi8vICAgICAgICAgICBjd2Q6IHJlcG9zaXRvcnlEaXIsXG4vLyAgICAgICAgICAgZW52OiBwcm9jZXNzLmVudixcbi8vICAgICAgICAgICBlbmNvZGluZzogXCJ1dGYtOFwiLFxuLy8gICAgICAgICAgIHN0ZGlvOiBbXCJpZ25vcmVcIiwgXCJpZ25vcmVcIiwgXCJwaXBlXCJdLFxuLy8gICAgICAgICB9KVxuLy8gICAgICAgfSBjYXRjaCAoY2hpbGRQcm9jZXNzKSB7XG4vLyAgICAgICAgIC8vIERvbid0IHN0b3Agd2hlbiBwdXNoIGZhaWxzLlxuLy8gICAgICAgICBjb25zb2xlLmVycm9yKChjaGlsZFByb2Nlc3MgYXMgYW55KS5vdXRwdXQpXG4vLyAgICAgICAgIGVycm9yID0gdHJ1ZVxuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgfVxuLy8gICByZXR1cm4gZXJyb3Jcbi8vIH1cblxuZnVuY3Rpb24gcGFyc2VUZXh0ZXNMb2lzKCk6IHZvaWQge1xuICBhc3NlcnQoXG4gICAgIW9wdGlvbnMuY29tbWl0IHx8IG9wdGlvbnMuZmlsZW5hbWUsXG4gICAgJ09wdGlvbnMgXCJjb21taXRcIiAmIFwiZmlsZW5hbWVcIiBhcmUgaW5jb21wYXRpYmxlJyxcbiAgKVxuXG4gIGNvbnN0IGRhdGFEaXIgPSBvcHRpb25zLmRhdGFEaXJcbiAgLy8gY29uc3QgeyBkb2N1bWVudEJ5VWlkIH0gPSBsb2FkQXNzZW1ibGVlRGF0YShcbiAgLy8gICBkYXRhRGlyLFxuICAvLyAgIEVuYWJsZWREYXRhc2V0cy5Eb3NzaWVyc0xlZ2lzbGF0aWZzLFxuICAvLyAgIG9wdGlvbnMubGVnaXNsYXR1cmUsXG4gIC8vIClcblxuICBjb25zdCB0ZXh0ZXNMb2lzRGlyID0gcGF0aC5qb2luKFxuICAgIGRhdGFEaXIsXG4gICAgXCJ3d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mclwiLFxuICAgIG9wdGlvbnMubGVnaXNsYXR1cmUsXG4gICAgXCJ0ZXh0ZXNcIixcbiAgKVxuICBmb3IgKGNvbnN0IGZpbGVuYW1lIG9mIGZzLnJlYWRkaXJTeW5jKHRleHRlc0xvaXNEaXIpKSB7XG4gICAgaWYgKGZpbGVuYW1lWzBdID09PSBcIi5cIikge1xuICAgICAgY29udGludWVcbiAgICB9XG4gICAgaWYgKCFmaWxlbmFtZS5lbmRzV2l0aChcIi5hc3BcIikpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIGlmIChvcHRpb25zLmZpbGVuYW1lICYmICFmaWxlbmFtZS5zdGFydHNXaXRoKG9wdGlvbnMuZmlsZW5hbWUpKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBjb25zdCB0ZXh0ZUxvaVBhdGggPSBwYXRoLmpvaW4odGV4dGVzTG9pc0RpciwgZmlsZW5hbWUpXG4gICAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAgICAgY29uc29sZS5sb2coYFBhcnNpbmcgXCJ0ZXh0ZSBkZSBsb2lcIiAke3RleHRlTG9pUGF0aH3igKZgKVxuICAgIH1cbiAgICBjb25zdCB0ZXh0ZUxvaVBhZ2UgPSBmcy5yZWFkRmlsZVN5bmModGV4dGVMb2lQYXRoLCB7IGVuY29kaW5nOiBcInV0Zi04XCIgfSlcbiAgICBjb25zdCB0ZXh0ZUxvaVVybCA9IGBodHRwOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvJHtvcHRpb25zLmxlZ2lzbGF0dXJlfS90ZXh0ZXMvJHtmaWxlbmFtZX1gXG4gICAgY29uc3QgdGV4dGVMb2lQYXJzZWQgPSBwYXJzZVRleHRlTG9pKHRleHRlTG9pVXJsLCB0ZXh0ZUxvaVBhZ2UpXG4gICAgaWYgKG9wdGlvbnMuZmlsZW5hbWUgJiYgb3B0aW9ucy52ZXJib3NlKSB7XG4gICAgICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeSh0ZXh0ZUxvaVBhcnNlZC5zdWJkaXZpc2lvbnMsIG51bGwsIDIpKVxuICAgIH1cbiAgICBjb25zdCB7IGVycm9yIH0gPSB0ZXh0ZUxvaVBhcnNlZFxuICAgIGlmIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYCAgRXJyb3Igd2hpbGUgcGFyc2luZyBwYWdlIFwiJHt0ZXh0ZUxvaVBhdGh9XCI6XFxuXFxuRXJyb3I6XFxuJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICBlcnJvcixcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIDIsXG4gICAgICAgICl9YCxcbiAgICAgIClcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICB9XG5cbiAgLy8gZnMuZW5zdXJlRGlyU3luYyh0ZXh0ZXNMb2lzRGlyKVxuICAvLyBpZiAoIW9wdGlvbnMudWlkKSB7XG4gIC8vICAgZm9yIChjb25zdCBmaWxlbmFtZSBvZiBmcy5yZWFkZGlyU3luYyh0ZXh0ZXNMb2lzRGlyKSkge1xuICAvLyAgICAgaWYgKGZpbGVuYW1lWzBdID09PSBcIi5cIikge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgICAgZnMucmVtb3ZlU3luYyhwYXRoLmpvaW4odGV4dGVzTG9pc0RpciwgZmlsZW5hbWUpKVxuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC8vIGNvbnN0IHRleHRlc0xvaXMgPSBPYmplY3QudmFsdWVzKGRvY3VtZW50QnlVaWQpXG4gIC8vICAgLmZpbHRlcihkb2N1bWVudCA9PiBkb2N1bWVudC54c2lUeXBlID09PSBUeXBlRG9jdW1lbnQuVGV4dGVMb2lUeXBlKVxuICAvLyAgIC5maWx0ZXIoXG4gIC8vICAgICBkb2N1bWVudCA9PiBkb2N1bWVudC51aWQuc3RhcnRzV2l0aChcIlBJT05BTlwiKSB8fCBkb2N1bWVudC51aWQuc3RhcnRzV2l0aChcIlBSSkxBTlwiKSxcbiAgLy8gICApXG4gIC8vICAgLm1hcChkb2N1bWVudCA9PiB7XG4gIC8vICAgICByZXR1cm4ge1xuICAvLyAgICAgICAuLi5kb2N1bWVudCxcbiAgLy8gICAgICAgcmF3RG9jdW1lbnRBc3NlbWJsZWVVcmw6IHVybEZyb21Eb2N1bWVudChkb2N1bWVudCwgRG9jdW1lbnRVcmxGb3JtYXQuUmF3SHRtbCksXG4gIC8vICAgICB9XG4gIC8vICAgfSlcbiAgLy8gICAuc29ydCgoYSwgYikgPT5cbiAgLy8gICAgIGEucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGxcbiAgLy8gICAgICAgPyAtMVxuICAvLyAgICAgICA6IGIucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGxcbiAgLy8gICAgICAgPyAxXG4gIC8vICAgICAgIDogYS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybC5sb2NhbGVDb21wYXJlKGIucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwpLFxuICAvLyAgIClcblxuICAvLyBjb25zdCBmaXJzdFVpZCA9IG9wdGlvbnMudWlkXG4gIC8vIGxldCBza2lwID0gISFmaXJzdFVpZFxuICAvLyBmb3IgKGNvbnN0IHRleHRlTG9pIG9mIHRleHRlc0xvaXMpIHtcbiAgLy8gICBpZiAoc2tpcCkge1xuICAvLyAgICAgaWYgKHRleHRlTG9pLnVpZCA9PT0gZmlyc3RVaWQpIHtcbiAgLy8gICAgICAgc2tpcCA9IGZhbHNlXG4gIC8vICAgICB9IGVsc2Uge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgIH1cbiAgLy8gICBpZiAoIW9wdGlvbnMuc2lsZW50KSB7XG4gIC8vICAgICBjb25zb2xlLmxvZyhcbiAgLy8gICAgICAgYFJldHJpZXZpbmcgYmlsbCAke3RleHRlTG9pLnVpZH0gYXQgJHt0ZXh0ZUxvaS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybH1gLFxuICAvLyAgICAgKVxuICAvLyAgIH1cbiAgLy8gICBpZiAodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGwpIHtcbiAgLy8gICAgIGNvbnRpbnVlXG4gIC8vICAgfVxuICAvLyAgIGNvbnN0IHVybCA9IG5ldyBVUkwodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwpXG4gIC8vICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZGF0YURpciwgdXJsLmhvc3RuYW1lLCAuLi51cmwucGF0aG5hbWUuc3BsaXQoXCIvXCIpKVxuICAvLyAgIGFzc2VydC5zdHJpY3RFcXVhbCh0ZXh0ZXNMb2lzRGlyLCBwYXRoLmRpcm5hbWUoZmlsZVBhdGgpKVxuXG4gIC8vICAgbGV0IHBhZ2UgPSB1bmRlZmluZWRcbiAgLy8gICB0cnkge1xuICAvLyAgICAgcGFnZSA9IGZzLnJlYWRGaWxlU3luYyhmaWxlUGF0aCwgeyBlbmNvZGluZzogXCJ1dGYtOFwiIH0pXG4gIC8vICAgfSBjYXRjaCAoZSkge1xuICAvLyAgICAgaWYgKGUuY29kZSA9PT0gXCJFTk9FTlRcIikge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgICAgdGhyb3cgZVxuICAvLyAgIH1cblxuICAvLyAgIGlmIChvcHRpb25zLnBhcnNlKSB7XG4gIC8vICAgICBjb25zdCB0ZXh0ZUxvaVBhcnNlZCA9IHBhcnNlVGV4dGVMb2kodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwsIHBhZ2UpXG4gIC8vICAgICBjb25zdCB7IGVycm9yIH0gPSB0ZXh0ZUxvaVBhcnNlZFxuICAvLyAgICAgaWYgKGVycm9yKSB7XG4gIC8vICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gIC8vICAgICAgICAgYEVycm9yIHdoaWxlIHBhcnNpbmcgcGFnZSBcIiR7dGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmx9XCIgKHVpZDogJHtcbiAgLy8gICAgICAgICAgIHRleHRlTG9pLnVpZFxuICAvLyAgICAgICAgIH0pOlxcblxcbkVycm9yOlxcbiR7SlNPTi5zdHJpbmdpZnkoZXJyb3IsIG51bGwsIDIpfWAsXG4gIC8vICAgICAgIClcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICB9XG4gIC8vIH1cbiAgLy8gaWYgY29tbWl0QW5kUHVzaCh0ZXh0ZXNMb2lzRGlyLCBvcHRpb25zLmNvbW1pdCwgb3B0aW9ucy5yZW1vdGUpIHtcbiAgLy8gICBwcm9jZXNzLmV4aXQoMSlcbiAgLy8gfVxuICAvLyByZXR1cm4gdGV4dGVzTG9pc1xufVxuXG5wYXJzZVRleHRlc0xvaXMoKVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUVBO0FBQ0E7QUFDQTtBQUlBO0FBQW9EO0FBQUE7QUFBQTtBQUFBO0FBQ3BEO0FBQ0E7O0FBRUEsSUFBTUEsa0JBQWtCLEdBQUcsQ0FDekI7RUFDRUMsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLG9CQUFvQjtFQUMxQkMsSUFBSSxFQUFFLFFBQVE7RUFDZEMsSUFBSSxFQUFFQztBQUNSLENBQUMsRUFDRDtFQUNFSixLQUFLLEVBQUUsR0FBRztFQUNWQyxJQUFJLEVBQUUsMkNBQTJDO0VBQ2pEQyxJQUFJLEVBQUUsVUFBVTtFQUNoQkMsSUFBSSxFQUFFRTtBQUNSLENBQUMsRUFDRDtFQUNFTCxLQUFLLEVBQUUsR0FBRztFQUNWTSxZQUFZLEVBQUUsSUFBSTtFQUNsQkosSUFBSSxFQUFFLGFBQWE7RUFDbkJDLElBQUksRUFBRUU7QUFDUixDQUFDLEVBQ0Q7RUFDRUwsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLDZCQUE2QjtFQUNuQ00sUUFBUSxFQUFFLElBQUk7RUFDZEwsSUFBSSxFQUFFLFFBQVE7RUFDZEMsSUFBSSxFQUFFRTtBQUNSLENBQUMsRUFDRDtFQUNFTCxLQUFLLEVBQUUsR0FBRztFQUNWQyxJQUFJLEVBQUUsb0JBQW9CO0VBQzFCQyxJQUFJLEVBQUUsUUFBUTtFQUNkQyxJQUFJLEVBQUVDO0FBQ1IsQ0FBQyxFQUNEO0VBQ0VKLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSxjQUFjO0VBQ3BCQyxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUVDO0FBQ1IsQ0FBQyxFQUNEO0VBQ0VJLGFBQWEsRUFBRSxJQUFJO0VBQ25CUCxJQUFJLEVBQUUsZ0RBQWdEO0VBQ3REQyxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUVFO0FBQ1IsQ0FBQyxDQUNGO0FBQ0QsSUFBTUksT0FBTyxHQUFHLElBQUFDLDJCQUFlLEVBQUNYLGtCQUFrQixDQUFDOztBQUVuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVNZLGVBQWUsR0FBUztFQUMvQixJQUFBQyxrQkFBTSxFQUNKLENBQUNILE9BQU8sQ0FBQ0ksTUFBTSxJQUFJSixPQUFPLENBQUNLLFFBQVEsRUFDbkMsZ0RBQWdELENBQ2pEO0VBRUQsSUFBTUMsT0FBTyxHQUFHTixPQUFPLENBQUNNLE9BQU87RUFDL0I7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7RUFFQSxJQUFNQyxhQUFhLEdBQUdDLGdCQUFJLENBQUNDLElBQUksQ0FDN0JILE9BQU8sRUFDUCw0QkFBNEIsRUFDNUJOLE9BQU8sQ0FBQ1UsV0FBVyxFQUNuQixRQUFRLENBQ1Q7RUFBQSwyQ0FDc0JDLG1CQUFFLENBQUNDLFdBQVcsQ0FBQ0wsYUFBYSxDQUFDO0lBQUE7RUFBQTtJQUFwRCxvREFBc0Q7TUFBQSxJQUEzQ0YsUUFBUTtNQUNqQixJQUFJQSxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFO1FBQ3ZCO01BQ0Y7TUFDQSxJQUFJLENBQUNBLFFBQVEsQ0FBQ1EsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQzlCO01BQ0Y7TUFDQSxJQUFJYixPQUFPLENBQUNLLFFBQVEsSUFBSSxDQUFDQSxRQUFRLENBQUNTLFVBQVUsQ0FBQ2QsT0FBTyxDQUFDSyxRQUFRLENBQUMsRUFBRTtRQUM5RDtNQUNGO01BQ0EsSUFBTVUsWUFBWSxHQUFHUCxnQkFBSSxDQUFDQyxJQUFJLENBQUNGLGFBQWEsRUFBRUYsUUFBUSxDQUFDO01BQ3ZELElBQUksQ0FBQ0wsT0FBTyxDQUFDZ0IsTUFBTSxFQUFFO1FBQ25CQyxPQUFPLENBQUNDLEdBQUcsb0NBQTJCSCxZQUFZLFlBQUk7TUFDeEQ7TUFDQSxJQUFNSSxZQUFZLEdBQUdSLG1CQUFFLENBQUNTLFlBQVksQ0FBQ0wsWUFBWSxFQUFFO1FBQUVNLFFBQVEsRUFBRTtNQUFRLENBQUMsQ0FBQztNQUN6RSxJQUFNQyxXQUFXLCtDQUF3Q3RCLE9BQU8sQ0FBQ1UsV0FBVyxxQkFBV0wsUUFBUSxDQUFFO01BQ2pHLElBQU1rQixjQUFjLEdBQUcsSUFBQUMsd0JBQWEsRUFBQ0YsV0FBVyxFQUFFSCxZQUFZLENBQUM7TUFDL0QsSUFBSW5CLE9BQU8sQ0FBQ0ssUUFBUSxJQUFJTCxPQUFPLENBQUN5QixPQUFPLEVBQUU7UUFDdkNSLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDUSxJQUFJLENBQUNDLFNBQVMsQ0FBQ0osY0FBYyxDQUFDSyxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO01BQ25FO01BQ0EsSUFBUUMsS0FBSyxHQUFLTixjQUFjLENBQXhCTSxLQUFLO01BQ2IsSUFBSUEsS0FBSyxFQUFFO1FBQ1RaLE9BQU8sQ0FBQ1ksS0FBSyx3Q0FDb0JkLFlBQVksNEJBQWlCVyxJQUFJLENBQUNDLFNBQVMsQ0FDeEVFLEtBQUssRUFDTCxJQUFJLEVBQ0osQ0FBQyxDQUNGLEVBQ0Y7UUFDRDtNQUNGO0lBQ0Y7O0lBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztJQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7SUFFQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0lBRUE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztJQUVBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFBQTtJQUFBO0VBQUE7SUFBQTtFQUFBO0FBQ0Y7QUFFQTNCLGVBQWUsRUFBRSJ9
@@ -57,7 +57,7 @@ const options = commandLineArgs(optionsDefinitions);
57
57
  // stdio: ["ignore", "ignore", "pipe"],
58
58
  // })
59
59
  // try {
60
- // execSync('git commit -m "Nouvelle moisson"', {
60
+ // execSync('git commit -m "Nouvelle moisson" --quiet', {
61
61
  // cwd: repositoryDir,
62
62
  // env: process.env,
63
63
  // encoding: "utf-8",
@@ -211,4 +211,4 @@ function parseTextesLois() {
211
211
  }
212
212
 
213
213
  parseTextesLois();
214
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJjb21tYW5kTGluZUFyZ3MiLCJmcyIsInBhdGgiLCJwYXJzZVRleHRlTG9pIiwib3B0aW9uc0RlZmluaXRpb25zIiwiYWxpYXMiLCJoZWxwIiwibmFtZSIsInR5cGUiLCJCb29sZWFuIiwiU3RyaW5nIiwiZGVmYXVsdFZhbHVlIiwibXVsdGlwbGUiLCJkZWZhdWx0T3B0aW9uIiwib3B0aW9ucyIsInBhcnNlVGV4dGVzTG9pcyIsImNvbW1pdCIsImZpbGVuYW1lIiwiZGF0YURpciIsInRleHRlc0xvaXNEaXIiLCJqb2luIiwibGVnaXNsYXR1cmUiLCJyZWFkZGlyU3luYyIsImVuZHNXaXRoIiwic3RhcnRzV2l0aCIsInRleHRlTG9pUGF0aCIsInNpbGVudCIsImNvbnNvbGUiLCJsb2ciLCJ0ZXh0ZUxvaVBhZ2UiLCJyZWFkRmlsZVN5bmMiLCJlbmNvZGluZyIsInRleHRlTG9pVXJsIiwidGV4dGVMb2lQYXJzZWQiLCJ2ZXJib3NlIiwiSlNPTiIsInN0cmluZ2lmeSIsInN1YmRpdmlzaW9ucyIsImVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcGFyc2VfdGV4dGVzX2xvaXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbi8vIGltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcImNoaWxkX3Byb2Nlc3NcIlxuaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5cbi8vIGltcG9ydCB7IEVuYWJsZWREYXRhc2V0cyB9IGZyb20gXCIuLi9kYXRhc2V0c1wiXG4vLyBpbXBvcnQgeyBsb2FkQXNzZW1ibGVlRGF0YSB9IGZyb20gXCIuLi9sb2FkZXJzXCJcbmltcG9ydCB7IHBhcnNlVGV4dGVMb2kgfSBmcm9tIFwiLi4vcGFyc2Vycy9kb2N1bWVudHNcIlxuLy8gaW1wb3J0IHsgRG9jdW1lbnQsIFR5cGVEb2N1bWVudCB9IGZyb20gXCIuLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG4vLyBpbXBvcnQgeyBEb2N1bWVudFVybEZvcm1hdCwgdXJsRnJvbURvY3VtZW50IH0gZnJvbSBcIi4uL3VybHNcIlxuXG5jb25zdCBvcHRpb25zRGVmaW5pdGlvbnMgPSBbXG4gIHtcbiAgICBhbGlhczogXCJjXCIsXG4gICAgaGVscDogXCJjb21taXQgc3BsaXQgZmlsZXNcIixcbiAgICBuYW1lOiBcImNvbW1pdFwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJmXCIsXG4gICAgaGVscDogXCJGaWxlbmFtZSBvZiBBc3NlbWJsw6llJ3MgZG9jdW1lbnQgdG8gcGFyc2VcIixcbiAgICBuYW1lOiBcImZpbGVuYW1lXCIsXG4gICAgdHlwZTogU3RyaW5nLFxuICB9LFxuICB7XG4gICAgYWxpYXM6IFwibFwiLFxuICAgIGRlZmF1bHRWYWx1ZTogXCIxNlwiLFxuICAgIG5hbWU6IFwibGVnaXNsYXR1cmVcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJyXCIsXG4gICAgaGVscDogXCJwdXNoIGNvbW1pdCB0byBnaXZlbiByZW1vdGVcIixcbiAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICBuYW1lOiBcInJlbW90ZVwiLFxuICAgIHR5cGU6IFN0cmluZyxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcInNcIixcbiAgICBoZWxwOiBcImRvbid0IGxvZyBhbnl0aGluZ1wiLFxuICAgIG5hbWU6IFwic2lsZW50XCIsXG4gICAgdHlwZTogQm9vbGVhbixcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcInZcIixcbiAgICBoZWxwOiBcInZlcmJvc2UgbG9nc1wiLFxuICAgIG5hbWU6IFwidmVyYm9zZVwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBkZWZhdWx0T3B0aW9uOiB0cnVlLFxuICAgIGhlbHA6IFwiZGlyZWN0b3J5IGNvbnRhaW5pbmcgQXNzZW1ibMOpZSBvcGVuIGRhdGEgZmlsZXNcIixcbiAgICBuYW1lOiBcImRhdGFEaXJcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG5dXG5jb25zdCBvcHRpb25zID0gY29tbWFuZExpbmVBcmdzKG9wdGlvbnNEZWZpbml0aW9ucylcblxuLy8gZnVuY3Rpb24gY29tbWl0QW5kUHVzaChyZXBvc2l0b3J5RGlyOiBzdHJpbmcsIGNvbW1pdDogYm9vbGVhbiwgcmVtb3Rlcz86IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4vLyAgIGxldCBlcnJvciA9IGZhbHNlXG4vLyAgIGlmIChjb21taXQpIHtcbi8vICAgICBleGVjU3luYyhgZ2l0IGFkZCAuYCwge1xuLy8gICAgICAgY3dkOiByZXBvc2l0b3J5RGlyLFxuLy8gICAgICAgZW52OiBwcm9jZXNzLmVudixcbi8vICAgICAgIGVuY29kaW5nOiBcInV0Zi04XCIsXG4vLyAgICAgICBzdGRpbzogW1wiaWdub3JlXCIsIFwiaWdub3JlXCIsIFwicGlwZVwiXSxcbi8vICAgICB9KVxuLy8gICAgIHRyeSB7XG4vLyAgICAgICBleGVjU3luYygnZ2l0IGNvbW1pdCAtbSBcIk5vdXZlbGxlIG1vaXNzb25cIicsIHtcbi8vICAgICAgICAgY3dkOiByZXBvc2l0b3J5RGlyLFxuLy8gICAgICAgICBlbnY6IHByb2Nlc3MuZW52LFxuLy8gICAgICAgICBlbmNvZGluZzogXCJ1dGYtOFwiLFxuLy8gICAgICAgfSlcbi8vICAgICB9IGNhdGNoIChjaGlsZFByb2Nlc3MpIHtcbi8vICAgICAgIGlmIChcbi8vICAgICAgICAgKGNoaWxkUHJvY2VzcyBhcyBDaGlsZFByb2Nlc3MpLnN0ZGVyciA9PT0gbnVsbCB8fFxuLy8gICAgICAgICAhL25vdGhpbmcgdG8gY29tbWl0Ly50ZXN0KChjaGlsZFByb2Nlc3MgYXMgYW55KS5zdGRvdXQpXG4vLyAgICAgICApIHtcbi8vICAgICAgICAgY29uc29sZS5lcnJvcigoY2hpbGRQcm9jZXNzIGFzIGFueSkub3V0cHV0KVxuLy8gICAgICAgICB0aHJvdyBjaGlsZFByb2Nlc3Ncbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgZm9yIChjb25zdCByZW1vdGUgb2YgcmVtb3RlcyB8fCBbXSkge1xuLy8gICAgICAgdHJ5IHtcbi8vICAgICAgICAgZXhlY1N5bmMoYGdpdCBwdXNoICR7cmVtb3RlfSBtYXN0ZXJgLCB7XG4vLyAgICAgICAgICAgY3dkOiByZXBvc2l0b3J5RGlyLFxuLy8gICAgICAgICAgIGVudjogcHJvY2Vzcy5lbnYsXG4vLyAgICAgICAgICAgZW5jb2Rpbmc6IFwidXRmLThcIixcbi8vICAgICAgICAgICBzdGRpbzogW1wiaWdub3JlXCIsIFwiaWdub3JlXCIsIFwicGlwZVwiXSxcbi8vICAgICAgICAgfSlcbi8vICAgICAgIH0gY2F0Y2ggKGNoaWxkUHJvY2Vzcykge1xuLy8gICAgICAgICAvLyBEb24ndCBzdG9wIHdoZW4gcHVzaCBmYWlscy5cbi8vICAgICAgICAgY29uc29sZS5lcnJvcigoY2hpbGRQcm9jZXNzIGFzIGFueSkub3V0cHV0KVxuLy8gICAgICAgICBlcnJvciA9IHRydWVcbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vICAgcmV0dXJuIGVycm9yXG4vLyB9XG5cbmZ1bmN0aW9uIHBhcnNlVGV4dGVzTG9pcygpOiB2b2lkIHtcbiAgYXNzZXJ0KFxuICAgICFvcHRpb25zLmNvbW1pdCB8fCBvcHRpb25zLmZpbGVuYW1lLFxuICAgICdPcHRpb25zIFwiY29tbWl0XCIgJiBcImZpbGVuYW1lXCIgYXJlIGluY29tcGF0aWJsZScsXG4gIClcblxuICBjb25zdCBkYXRhRGlyID0gb3B0aW9ucy5kYXRhRGlyXG4gIC8vIGNvbnN0IHsgZG9jdW1lbnRCeVVpZCB9ID0gbG9hZEFzc2VtYmxlZURhdGEoXG4gIC8vICAgZGF0YURpcixcbiAgLy8gICBFbmFibGVkRGF0YXNldHMuRG9zc2llcnNMZWdpc2xhdGlmcyxcbiAgLy8gICBvcHRpb25zLmxlZ2lzbGF0dXJlLFxuICAvLyApXG5cbiAgY29uc3QgdGV4dGVzTG9pc0RpciA9IHBhdGguam9pbihcbiAgICBkYXRhRGlyLFxuICAgIFwid3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnJcIixcbiAgICBvcHRpb25zLmxlZ2lzbGF0dXJlLFxuICAgIFwidGV4dGVzXCIsXG4gIClcbiAgZm9yIChjb25zdCBmaWxlbmFtZSBvZiBmcy5yZWFkZGlyU3luYyh0ZXh0ZXNMb2lzRGlyKSkge1xuICAgIGlmIChmaWxlbmFtZVswXSA9PT0gXCIuXCIpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIGlmICghZmlsZW5hbWUuZW5kc1dpdGgoXCIuYXNwXCIpKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBpZiAob3B0aW9ucy5maWxlbmFtZSAmJiAhZmlsZW5hbWUuc3RhcnRzV2l0aChvcHRpb25zLmZpbGVuYW1lKSkge1xuICAgICAgY29udGludWVcbiAgICB9XG4gICAgY29uc3QgdGV4dGVMb2lQYXRoID0gcGF0aC5qb2luKHRleHRlc0xvaXNEaXIsIGZpbGVuYW1lKVxuICAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgIGNvbnNvbGUubG9nKGBQYXJzaW5nIFwidGV4dGUgZGUgbG9pXCIgJHt0ZXh0ZUxvaVBhdGh94oCmYClcbiAgICB9XG4gICAgY29uc3QgdGV4dGVMb2lQYWdlID0gZnMucmVhZEZpbGVTeW5jKHRleHRlTG9pUGF0aCwgeyBlbmNvZGluZzogXCJ1dGYtOFwiIH0pXG4gICAgY29uc3QgdGV4dGVMb2lVcmwgPSBgaHR0cDovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyLyR7b3B0aW9ucy5sZWdpc2xhdHVyZX0vdGV4dGVzLyR7ZmlsZW5hbWV9YFxuICAgIGNvbnN0IHRleHRlTG9pUGFyc2VkID0gcGFyc2VUZXh0ZUxvaSh0ZXh0ZUxvaVVybCwgdGV4dGVMb2lQYWdlKVxuICAgIGlmIChvcHRpb25zLmZpbGVuYW1lICYmIG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkodGV4dGVMb2lQYXJzZWQuc3ViZGl2aXNpb25zLCBudWxsLCAyKSlcbiAgICB9XG4gICAgY29uc3QgeyBlcnJvciB9ID0gdGV4dGVMb2lQYXJzZWRcbiAgICBpZiAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgIGAgIEVycm9yIHdoaWxlIHBhcnNpbmcgcGFnZSBcIiR7dGV4dGVMb2lQYXRofVwiOlxcblxcbkVycm9yOlxcbiR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgZXJyb3IsXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICAyLFxuICAgICAgICApfWAsXG4gICAgICApXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgfVxuXG4gIC8vIGZzLmVuc3VyZURpclN5bmModGV4dGVzTG9pc0RpcilcbiAgLy8gaWYgKCFvcHRpb25zLnVpZCkge1xuICAvLyAgIGZvciAoY29uc3QgZmlsZW5hbWUgb2YgZnMucmVhZGRpclN5bmModGV4dGVzTG9pc0RpcikpIHtcbiAgLy8gICAgIGlmIChmaWxlbmFtZVswXSA9PT0gXCIuXCIpIHtcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICAgIGZzLnJlbW92ZVN5bmMocGF0aC5qb2luKHRleHRlc0xvaXNEaXIsIGZpbGVuYW1lKSlcbiAgLy8gICB9XG4gIC8vIH1cblxuICAvLyBjb25zdCB0ZXh0ZXNMb2lzID0gT2JqZWN0LnZhbHVlcyhkb2N1bWVudEJ5VWlkKVxuICAvLyAgIC5maWx0ZXIoZG9jdW1lbnQgPT4gZG9jdW1lbnQueHNpVHlwZSA9PT0gVHlwZURvY3VtZW50LlRleHRlTG9pVHlwZSlcbiAgLy8gICAuZmlsdGVyKFxuICAvLyAgICAgZG9jdW1lbnQgPT4gZG9jdW1lbnQudWlkLnN0YXJ0c1dpdGgoXCJQSU9OQU5cIikgfHwgZG9jdW1lbnQudWlkLnN0YXJ0c1dpdGgoXCJQUkpMQU5cIiksXG4gIC8vICAgKVxuICAvLyAgIC5tYXAoZG9jdW1lbnQgPT4ge1xuICAvLyAgICAgcmV0dXJuIHtcbiAgLy8gICAgICAgLi4uZG9jdW1lbnQsXG4gIC8vICAgICAgIHJhd0RvY3VtZW50QXNzZW1ibGVlVXJsOiB1cmxGcm9tRG9jdW1lbnQoZG9jdW1lbnQsIERvY3VtZW50VXJsRm9ybWF0LlJhd0h0bWwpLFxuICAvLyAgICAgfVxuICAvLyAgIH0pXG4gIC8vICAgLnNvcnQoKGEsIGIpID0+XG4gIC8vICAgICBhLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsID09PSBudWxsXG4gIC8vICAgICAgID8gLTFcbiAgLy8gICAgICAgOiBiLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsID09PSBudWxsXG4gIC8vICAgICAgID8gMVxuICAvLyAgICAgICA6IGEucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwubG9jYWxlQ29tcGFyZShiLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsKSxcbiAgLy8gICApXG5cbiAgLy8gY29uc3QgZmlyc3RVaWQgPSBvcHRpb25zLnVpZFxuICAvLyBsZXQgc2tpcCA9ICEhZmlyc3RVaWRcbiAgLy8gZm9yIChjb25zdCB0ZXh0ZUxvaSBvZiB0ZXh0ZXNMb2lzKSB7XG4gIC8vICAgaWYgKHNraXApIHtcbiAgLy8gICAgIGlmICh0ZXh0ZUxvaS51aWQgPT09IGZpcnN0VWlkKSB7XG4gIC8vICAgICAgIHNraXAgPSBmYWxzZVxuICAvLyAgICAgfSBlbHNlIHtcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICB9XG4gIC8vICAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAvLyAgICAgY29uc29sZS5sb2coXG4gIC8vICAgICAgIGBSZXRyaWV2aW5nIGJpbGwgJHt0ZXh0ZUxvaS51aWR9IGF0ICR7dGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmx9YCxcbiAgLy8gICAgIClcbiAgLy8gICB9XG4gIC8vICAgaWYgKHRleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsID09PSBudWxsKSB7XG4gIC8vICAgICBjb250aW51ZVxuICAvLyAgIH1cbiAgLy8gICBjb25zdCB1cmwgPSBuZXcgVVJMKHRleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsKVxuICAvLyAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKGRhdGFEaXIsIHVybC5ob3N0bmFtZSwgLi4udXJsLnBhdGhuYW1lLnNwbGl0KFwiL1wiKSlcbiAgLy8gICBhc3NlcnQuc3RyaWN0RXF1YWwodGV4dGVzTG9pc0RpciwgcGF0aC5kaXJuYW1lKGZpbGVQYXRoKSlcblxuICAvLyAgIGxldCBwYWdlID0gdW5kZWZpbmVkXG4gIC8vICAgdHJ5IHtcbiAgLy8gICAgIHBhZ2UgPSBmcy5yZWFkRmlsZVN5bmMoZmlsZVBhdGgsIHsgZW5jb2Rpbmc6IFwidXRmLThcIiB9KVxuICAvLyAgIH0gY2F0Y2ggKGUpIHtcbiAgLy8gICAgIGlmIChlLmNvZGUgPT09IFwiRU5PRU5UXCIpIHtcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICAgIHRocm93IGVcbiAgLy8gICB9XG5cbiAgLy8gICBpZiAob3B0aW9ucy5wYXJzZSkge1xuICAvLyAgICAgY29uc3QgdGV4dGVMb2lQYXJzZWQgPSBwYXJzZVRleHRlTG9pKHRleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsLCBwYWdlKVxuICAvLyAgICAgY29uc3QgeyBlcnJvciB9ID0gdGV4dGVMb2lQYXJzZWRcbiAgLy8gICAgIGlmIChlcnJvcikge1xuICAvLyAgICAgICBjb25zb2xlLmVycm9yKFxuICAvLyAgICAgICAgIGBFcnJvciB3aGlsZSBwYXJzaW5nIHBhZ2UgXCIke3RleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsfVwiICh1aWQ6ICR7XG4gIC8vICAgICAgICAgICB0ZXh0ZUxvaS51aWRcbiAgLy8gICAgICAgICB9KTpcXG5cXG5FcnJvcjpcXG4ke0pTT04uc3RyaW5naWZ5KGVycm9yLCBudWxsLCAyKX1gLFxuICAvLyAgICAgICApXG4gIC8vICAgICAgIGNvbnRpbnVlXG4gIC8vICAgICB9XG4gIC8vICAgfVxuICAvLyB9XG4gIC8vIGlmIGNvbW1pdEFuZFB1c2godGV4dGVzTG9pc0Rpciwgb3B0aW9ucy5jb21taXQsIG9wdGlvbnMucmVtb3RlKSB7XG4gIC8vICAgcHJvY2Vzcy5leGl0KDEpXG4gIC8vIH1cbiAgLy8gcmV0dXJuIHRleHRlc0xvaXNcbn1cblxucGFyc2VUZXh0ZXNMb2lzKClcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsTUFBTSxNQUFNLFFBQVE7QUFDM0I7QUFDQSxPQUFPQyxlQUFlLE1BQU0sbUJBQW1CO0FBQy9DLE9BQU9DLEVBQUUsTUFBTSxVQUFVO0FBQ3pCLE9BQU9DLElBQUksTUFBTSxNQUFNOztBQUV2QjtBQUNBO0FBQUEsU0FDU0MsYUFBYSxvQ0FDdEI7QUFDQTtBQUVBLE1BQU1DLGtCQUFrQixHQUFHLENBQ3pCO0VBQ0VDLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSxvQkFBb0I7RUFDMUJDLElBQUksRUFBRSxRQUFRO0VBQ2RDLElBQUksRUFBRUM7QUFDUixDQUFDLEVBQ0Q7RUFDRUosS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLDJDQUEyQztFQUNqREMsSUFBSSxFQUFFLFVBQVU7RUFDaEJDLElBQUksRUFBRUU7QUFDUixDQUFDLEVBQ0Q7RUFDRUwsS0FBSyxFQUFFLEdBQUc7RUFDVk0sWUFBWSxFQUFFLElBQUk7RUFDbEJKLElBQUksRUFBRSxhQUFhO0VBQ25CQyxJQUFJLEVBQUVFO0FBQ1IsQ0FBQyxFQUNEO0VBQ0VMLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSw2QkFBNkI7RUFDbkNNLFFBQVEsRUFBRSxJQUFJO0VBQ2RMLElBQUksRUFBRSxRQUFRO0VBQ2RDLElBQUksRUFBRUU7QUFDUixDQUFDLEVBQ0Q7RUFDRUwsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLG9CQUFvQjtFQUMxQkMsSUFBSSxFQUFFLFFBQVE7RUFDZEMsSUFBSSxFQUFFQztBQUNSLENBQUMsRUFDRDtFQUNFSixLQUFLLEVBQUUsR0FBRztFQUNWQyxJQUFJLEVBQUUsY0FBYztFQUNwQkMsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFQztBQUNSLENBQUMsRUFDRDtFQUNFSSxhQUFhLEVBQUUsSUFBSTtFQUNuQlAsSUFBSSxFQUFFLGdEQUFnRDtFQUN0REMsSUFBSSxFQUFFLFNBQVM7RUFDZkMsSUFBSSxFQUFFRTtBQUNSLENBQUMsQ0FDRjtBQUNELE1BQU1JLE9BQU8sR0FBR2QsZUFBZSxDQUFDSSxrQkFBa0IsQ0FBQzs7QUFFbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxTQUFTVyxlQUFlLEdBQVM7RUFDL0JoQixNQUFNLENBQ0osQ0FBQ2UsT0FBTyxDQUFDRSxNQUFNLElBQUlGLE9BQU8sQ0FBQ0csUUFBUSxFQUNuQyxnREFBZ0QsQ0FDakQ7RUFFRCxNQUFNQyxPQUFPLEdBQUdKLE9BQU8sQ0FBQ0ksT0FBTztFQUMvQjtFQUNBO0VBQ0E7RUFDQTtFQUNBOztFQUVBLE1BQU1DLGFBQWEsR0FBR2pCLElBQUksQ0FBQ2tCLElBQUksQ0FDN0JGLE9BQU8sRUFDUCw0QkFBNEIsRUFDNUJKLE9BQU8sQ0FBQ08sV0FBVyxFQUNuQixRQUFRLENBQ1Q7RUFDRCxLQUFLLE1BQU1KLFFBQVEsSUFBSWhCLEVBQUUsQ0FBQ3FCLFdBQVcsQ0FBQ0gsYUFBYSxDQUFDLEVBQUU7SUFDcEQsSUFBSUYsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRTtNQUN2QjtJQUNGO0lBQ0EsSUFBSSxDQUFDQSxRQUFRLENBQUNNLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtNQUM5QjtJQUNGO0lBQ0EsSUFBSVQsT0FBTyxDQUFDRyxRQUFRLElBQUksQ0FBQ0EsUUFBUSxDQUFDTyxVQUFVLENBQUNWLE9BQU8sQ0FBQ0csUUFBUSxDQUFDLEVBQUU7TUFDOUQ7SUFDRjtJQUNBLE1BQU1RLFlBQVksR0FBR3ZCLElBQUksQ0FBQ2tCLElBQUksQ0FBQ0QsYUFBYSxFQUFFRixRQUFRLENBQUM7SUFDdkQsSUFBSSxDQUFDSCxPQUFPLENBQUNZLE1BQU0sRUFBRTtNQUNuQkMsT0FBTyxDQUFDQyxHQUFHLENBQUUsMEJBQXlCSCxZQUFhLEdBQUUsQ0FBQztJQUN4RDtJQUNBLE1BQU1JLFlBQVksR0FBRzVCLEVBQUUsQ0FBQzZCLFlBQVksQ0FBQ0wsWUFBWSxFQUFFO01BQUVNLFFBQVEsRUFBRTtJQUFRLENBQUMsQ0FBQztJQUN6RSxNQUFNQyxXQUFXLEdBQUkscUNBQW9DbEIsT0FBTyxDQUFDTyxXQUFZLFdBQVVKLFFBQVMsRUFBQztJQUNqRyxNQUFNZ0IsY0FBYyxHQUFHOUIsYUFBYSxDQUFDNkIsV0FBVyxFQUFFSCxZQUFZLENBQUM7SUFDL0QsSUFBSWYsT0FBTyxDQUFDRyxRQUFRLElBQUlILE9BQU8sQ0FBQ29CLE9BQU8sRUFBRTtNQUN2Q1AsT0FBTyxDQUFDQyxHQUFHLENBQUNPLElBQUksQ0FBQ0MsU0FBUyxDQUFDSCxjQUFjLENBQUNJLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbkU7SUFDQSxNQUFNO01BQUVDO0lBQU0sQ0FBQyxHQUFHTCxjQUFjO0lBQ2hDLElBQUlLLEtBQUssRUFBRTtNQUNUWCxPQUFPLENBQUNXLEtBQUssQ0FDViwrQkFBOEJiLFlBQWEsaUJBQWdCVSxJQUFJLENBQUNDLFNBQVMsQ0FDeEVFLEtBQUssRUFDTCxJQUFJLEVBQ0osQ0FBQyxDQUNELEVBQUMsQ0FDSjtNQUNEO0lBQ0Y7RUFDRjs7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQUNGOztBQUVBdkIsZUFBZSxFQUFFIn0=
214
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJjb21tYW5kTGluZUFyZ3MiLCJmcyIsInBhdGgiLCJwYXJzZVRleHRlTG9pIiwib3B0aW9uc0RlZmluaXRpb25zIiwiYWxpYXMiLCJoZWxwIiwibmFtZSIsInR5cGUiLCJCb29sZWFuIiwiU3RyaW5nIiwiZGVmYXVsdFZhbHVlIiwibXVsdGlwbGUiLCJkZWZhdWx0T3B0aW9uIiwib3B0aW9ucyIsInBhcnNlVGV4dGVzTG9pcyIsImNvbW1pdCIsImZpbGVuYW1lIiwiZGF0YURpciIsInRleHRlc0xvaXNEaXIiLCJqb2luIiwibGVnaXNsYXR1cmUiLCJyZWFkZGlyU3luYyIsImVuZHNXaXRoIiwic3RhcnRzV2l0aCIsInRleHRlTG9pUGF0aCIsInNpbGVudCIsImNvbnNvbGUiLCJsb2ciLCJ0ZXh0ZUxvaVBhZ2UiLCJyZWFkRmlsZVN5bmMiLCJlbmNvZGluZyIsInRleHRlTG9pVXJsIiwidGV4dGVMb2lQYXJzZWQiLCJ2ZXJib3NlIiwiSlNPTiIsInN0cmluZ2lmeSIsInN1YmRpdmlzaW9ucyIsImVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcGFyc2VfdGV4dGVzX2xvaXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbi8vIGltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcImNoaWxkX3Byb2Nlc3NcIlxuaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5cbi8vIGltcG9ydCB7IEVuYWJsZWREYXRhc2V0cyB9IGZyb20gXCIuLi9kYXRhc2V0c1wiXG4vLyBpbXBvcnQgeyBsb2FkQXNzZW1ibGVlRGF0YSB9IGZyb20gXCIuLi9sb2FkZXJzXCJcbmltcG9ydCB7IHBhcnNlVGV4dGVMb2kgfSBmcm9tIFwiLi4vcGFyc2Vycy9kb2N1bWVudHNcIlxuLy8gaW1wb3J0IHsgRG9jdW1lbnQsIFR5cGVEb2N1bWVudCB9IGZyb20gXCIuLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG4vLyBpbXBvcnQgeyBEb2N1bWVudFVybEZvcm1hdCwgdXJsRnJvbURvY3VtZW50IH0gZnJvbSBcIi4uL3VybHNcIlxuXG5jb25zdCBvcHRpb25zRGVmaW5pdGlvbnMgPSBbXG4gIHtcbiAgICBhbGlhczogXCJjXCIsXG4gICAgaGVscDogXCJjb21taXQgc3BsaXQgZmlsZXNcIixcbiAgICBuYW1lOiBcImNvbW1pdFwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJmXCIsXG4gICAgaGVscDogXCJGaWxlbmFtZSBvZiBBc3NlbWJsw6llJ3MgZG9jdW1lbnQgdG8gcGFyc2VcIixcbiAgICBuYW1lOiBcImZpbGVuYW1lXCIsXG4gICAgdHlwZTogU3RyaW5nLFxuICB9LFxuICB7XG4gICAgYWxpYXM6IFwibFwiLFxuICAgIGRlZmF1bHRWYWx1ZTogXCIxNlwiLFxuICAgIG5hbWU6IFwibGVnaXNsYXR1cmVcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogXCJyXCIsXG4gICAgaGVscDogXCJwdXNoIGNvbW1pdCB0byBnaXZlbiByZW1vdGVcIixcbiAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICBuYW1lOiBcInJlbW90ZVwiLFxuICAgIHR5cGU6IFN0cmluZyxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcInNcIixcbiAgICBoZWxwOiBcImRvbid0IGxvZyBhbnl0aGluZ1wiLFxuICAgIG5hbWU6IFwic2lsZW50XCIsXG4gICAgdHlwZTogQm9vbGVhbixcbiAgfSxcbiAge1xuICAgIGFsaWFzOiBcInZcIixcbiAgICBoZWxwOiBcInZlcmJvc2UgbG9nc1wiLFxuICAgIG5hbWU6IFwidmVyYm9zZVwiLFxuICAgIHR5cGU6IEJvb2xlYW4sXG4gIH0sXG4gIHtcbiAgICBkZWZhdWx0T3B0aW9uOiB0cnVlLFxuICAgIGhlbHA6IFwiZGlyZWN0b3J5IGNvbnRhaW5pbmcgQXNzZW1ibMOpZSBvcGVuIGRhdGEgZmlsZXNcIixcbiAgICBuYW1lOiBcImRhdGFEaXJcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG5dXG5jb25zdCBvcHRpb25zID0gY29tbWFuZExpbmVBcmdzKG9wdGlvbnNEZWZpbml0aW9ucylcblxuLy8gZnVuY3Rpb24gY29tbWl0QW5kUHVzaChyZXBvc2l0b3J5RGlyOiBzdHJpbmcsIGNvbW1pdDogYm9vbGVhbiwgcmVtb3Rlcz86IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4vLyAgIGxldCBlcnJvciA9IGZhbHNlXG4vLyAgIGlmIChjb21taXQpIHtcbi8vICAgICBleGVjU3luYyhgZ2l0IGFkZCAuYCwge1xuLy8gICAgICAgY3dkOiByZXBvc2l0b3J5RGlyLFxuLy8gICAgICAgZW52OiBwcm9jZXNzLmVudixcbi8vICAgICAgIGVuY29kaW5nOiBcInV0Zi04XCIsXG4vLyAgICAgICBzdGRpbzogW1wiaWdub3JlXCIsIFwiaWdub3JlXCIsIFwicGlwZVwiXSxcbi8vICAgICB9KVxuLy8gICAgIHRyeSB7XG4vLyAgICAgICBleGVjU3luYygnZ2l0IGNvbW1pdCAtbSBcIk5vdXZlbGxlIG1vaXNzb25cIiAtLXF1aWV0Jywge1xuLy8gICAgICAgICBjd2Q6IHJlcG9zaXRvcnlEaXIsXG4vLyAgICAgICAgIGVudjogcHJvY2Vzcy5lbnYsXG4vLyAgICAgICAgIGVuY29kaW5nOiBcInV0Zi04XCIsXG4vLyAgICAgICB9KVxuLy8gICAgIH0gY2F0Y2ggKGNoaWxkUHJvY2Vzcykge1xuLy8gICAgICAgaWYgKFxuLy8gICAgICAgICAoY2hpbGRQcm9jZXNzIGFzIENoaWxkUHJvY2Vzcykuc3RkZXJyID09PSBudWxsIHx8XG4vLyAgICAgICAgICEvbm90aGluZyB0byBjb21taXQvLnRlc3QoKGNoaWxkUHJvY2VzcyBhcyBhbnkpLnN0ZG91dClcbi8vICAgICAgICkge1xuLy8gICAgICAgICBjb25zb2xlLmVycm9yKChjaGlsZFByb2Nlc3MgYXMgYW55KS5vdXRwdXQpXG4vLyAgICAgICAgIHRocm93IGNoaWxkUHJvY2Vzc1xuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgICBmb3IgKGNvbnN0IHJlbW90ZSBvZiByZW1vdGVzIHx8IFtdKSB7XG4vLyAgICAgICB0cnkge1xuLy8gICAgICAgICBleGVjU3luYyhgZ2l0IHB1c2ggJHtyZW1vdGV9IG1hc3RlcmAsIHtcbi8vICAgICAgICAgICBjd2Q6IHJlcG9zaXRvcnlEaXIsXG4vLyAgICAgICAgICAgZW52OiBwcm9jZXNzLmVudixcbi8vICAgICAgICAgICBlbmNvZGluZzogXCJ1dGYtOFwiLFxuLy8gICAgICAgICAgIHN0ZGlvOiBbXCJpZ25vcmVcIiwgXCJpZ25vcmVcIiwgXCJwaXBlXCJdLFxuLy8gICAgICAgICB9KVxuLy8gICAgICAgfSBjYXRjaCAoY2hpbGRQcm9jZXNzKSB7XG4vLyAgICAgICAgIC8vIERvbid0IHN0b3Agd2hlbiBwdXNoIGZhaWxzLlxuLy8gICAgICAgICBjb25zb2xlLmVycm9yKChjaGlsZFByb2Nlc3MgYXMgYW55KS5vdXRwdXQpXG4vLyAgICAgICAgIGVycm9yID0gdHJ1ZVxuLy8gICAgICAgfVxuLy8gICAgIH1cbi8vICAgfVxuLy8gICByZXR1cm4gZXJyb3Jcbi8vIH1cblxuZnVuY3Rpb24gcGFyc2VUZXh0ZXNMb2lzKCk6IHZvaWQge1xuICBhc3NlcnQoXG4gICAgIW9wdGlvbnMuY29tbWl0IHx8IG9wdGlvbnMuZmlsZW5hbWUsXG4gICAgJ09wdGlvbnMgXCJjb21taXRcIiAmIFwiZmlsZW5hbWVcIiBhcmUgaW5jb21wYXRpYmxlJyxcbiAgKVxuXG4gIGNvbnN0IGRhdGFEaXIgPSBvcHRpb25zLmRhdGFEaXJcbiAgLy8gY29uc3QgeyBkb2N1bWVudEJ5VWlkIH0gPSBsb2FkQXNzZW1ibGVlRGF0YShcbiAgLy8gICBkYXRhRGlyLFxuICAvLyAgIEVuYWJsZWREYXRhc2V0cy5Eb3NzaWVyc0xlZ2lzbGF0aWZzLFxuICAvLyAgIG9wdGlvbnMubGVnaXNsYXR1cmUsXG4gIC8vIClcblxuICBjb25zdCB0ZXh0ZXNMb2lzRGlyID0gcGF0aC5qb2luKFxuICAgIGRhdGFEaXIsXG4gICAgXCJ3d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mclwiLFxuICAgIG9wdGlvbnMubGVnaXNsYXR1cmUsXG4gICAgXCJ0ZXh0ZXNcIixcbiAgKVxuICBmb3IgKGNvbnN0IGZpbGVuYW1lIG9mIGZzLnJlYWRkaXJTeW5jKHRleHRlc0xvaXNEaXIpKSB7XG4gICAgaWYgKGZpbGVuYW1lWzBdID09PSBcIi5cIikge1xuICAgICAgY29udGludWVcbiAgICB9XG4gICAgaWYgKCFmaWxlbmFtZS5lbmRzV2l0aChcIi5hc3BcIikpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIGlmIChvcHRpb25zLmZpbGVuYW1lICYmICFmaWxlbmFtZS5zdGFydHNXaXRoKG9wdGlvbnMuZmlsZW5hbWUpKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBjb25zdCB0ZXh0ZUxvaVBhdGggPSBwYXRoLmpvaW4odGV4dGVzTG9pc0RpciwgZmlsZW5hbWUpXG4gICAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAgICAgY29uc29sZS5sb2coYFBhcnNpbmcgXCJ0ZXh0ZSBkZSBsb2lcIiAke3RleHRlTG9pUGF0aH3igKZgKVxuICAgIH1cbiAgICBjb25zdCB0ZXh0ZUxvaVBhZ2UgPSBmcy5yZWFkRmlsZVN5bmModGV4dGVMb2lQYXRoLCB7IGVuY29kaW5nOiBcInV0Zi04XCIgfSlcbiAgICBjb25zdCB0ZXh0ZUxvaVVybCA9IGBodHRwOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvJHtvcHRpb25zLmxlZ2lzbGF0dXJlfS90ZXh0ZXMvJHtmaWxlbmFtZX1gXG4gICAgY29uc3QgdGV4dGVMb2lQYXJzZWQgPSBwYXJzZVRleHRlTG9pKHRleHRlTG9pVXJsLCB0ZXh0ZUxvaVBhZ2UpXG4gICAgaWYgKG9wdGlvbnMuZmlsZW5hbWUgJiYgb3B0aW9ucy52ZXJib3NlKSB7XG4gICAgICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeSh0ZXh0ZUxvaVBhcnNlZC5zdWJkaXZpc2lvbnMsIG51bGwsIDIpKVxuICAgIH1cbiAgICBjb25zdCB7IGVycm9yIH0gPSB0ZXh0ZUxvaVBhcnNlZFxuICAgIGlmIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYCAgRXJyb3Igd2hpbGUgcGFyc2luZyBwYWdlIFwiJHt0ZXh0ZUxvaVBhdGh9XCI6XFxuXFxuRXJyb3I6XFxuJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICBlcnJvcixcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIDIsXG4gICAgICAgICl9YCxcbiAgICAgIClcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICB9XG5cbiAgLy8gZnMuZW5zdXJlRGlyU3luYyh0ZXh0ZXNMb2lzRGlyKVxuICAvLyBpZiAoIW9wdGlvbnMudWlkKSB7XG4gIC8vICAgZm9yIChjb25zdCBmaWxlbmFtZSBvZiBmcy5yZWFkZGlyU3luYyh0ZXh0ZXNMb2lzRGlyKSkge1xuICAvLyAgICAgaWYgKGZpbGVuYW1lWzBdID09PSBcIi5cIikge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgICAgZnMucmVtb3ZlU3luYyhwYXRoLmpvaW4odGV4dGVzTG9pc0RpciwgZmlsZW5hbWUpKVxuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC8vIGNvbnN0IHRleHRlc0xvaXMgPSBPYmplY3QudmFsdWVzKGRvY3VtZW50QnlVaWQpXG4gIC8vICAgLmZpbHRlcihkb2N1bWVudCA9PiBkb2N1bWVudC54c2lUeXBlID09PSBUeXBlRG9jdW1lbnQuVGV4dGVMb2lUeXBlKVxuICAvLyAgIC5maWx0ZXIoXG4gIC8vICAgICBkb2N1bWVudCA9PiBkb2N1bWVudC51aWQuc3RhcnRzV2l0aChcIlBJT05BTlwiKSB8fCBkb2N1bWVudC51aWQuc3RhcnRzV2l0aChcIlBSSkxBTlwiKSxcbiAgLy8gICApXG4gIC8vICAgLm1hcChkb2N1bWVudCA9PiB7XG4gIC8vICAgICByZXR1cm4ge1xuICAvLyAgICAgICAuLi5kb2N1bWVudCxcbiAgLy8gICAgICAgcmF3RG9jdW1lbnRBc3NlbWJsZWVVcmw6IHVybEZyb21Eb2N1bWVudChkb2N1bWVudCwgRG9jdW1lbnRVcmxGb3JtYXQuUmF3SHRtbCksXG4gIC8vICAgICB9XG4gIC8vICAgfSlcbiAgLy8gICAuc29ydCgoYSwgYikgPT5cbiAgLy8gICAgIGEucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGxcbiAgLy8gICAgICAgPyAtMVxuICAvLyAgICAgICA6IGIucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGxcbiAgLy8gICAgICAgPyAxXG4gIC8vICAgICAgIDogYS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybC5sb2NhbGVDb21wYXJlKGIucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwpLFxuICAvLyAgIClcblxuICAvLyBjb25zdCBmaXJzdFVpZCA9IG9wdGlvbnMudWlkXG4gIC8vIGxldCBza2lwID0gISFmaXJzdFVpZFxuICAvLyBmb3IgKGNvbnN0IHRleHRlTG9pIG9mIHRleHRlc0xvaXMpIHtcbiAgLy8gICBpZiAoc2tpcCkge1xuICAvLyAgICAgaWYgKHRleHRlTG9pLnVpZCA9PT0gZmlyc3RVaWQpIHtcbiAgLy8gICAgICAgc2tpcCA9IGZhbHNlXG4gIC8vICAgICB9IGVsc2Uge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgIH1cbiAgLy8gICBpZiAoIW9wdGlvbnMuc2lsZW50KSB7XG4gIC8vICAgICBjb25zb2xlLmxvZyhcbiAgLy8gICAgICAgYFJldHJpZXZpbmcgYmlsbCAke3RleHRlTG9pLnVpZH0gYXQgJHt0ZXh0ZUxvaS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybH1gLFxuICAvLyAgICAgKVxuICAvLyAgIH1cbiAgLy8gICBpZiAodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGwpIHtcbiAgLy8gICAgIGNvbnRpbnVlXG4gIC8vICAgfVxuICAvLyAgIGNvbnN0IHVybCA9IG5ldyBVUkwodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwpXG4gIC8vICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZGF0YURpciwgdXJsLmhvc3RuYW1lLCAuLi51cmwucGF0aG5hbWUuc3BsaXQoXCIvXCIpKVxuICAvLyAgIGFzc2VydC5zdHJpY3RFcXVhbCh0ZXh0ZXNMb2lzRGlyLCBwYXRoLmRpcm5hbWUoZmlsZVBhdGgpKVxuXG4gIC8vICAgbGV0IHBhZ2UgPSB1bmRlZmluZWRcbiAgLy8gICB0cnkge1xuICAvLyAgICAgcGFnZSA9IGZzLnJlYWRGaWxlU3luYyhmaWxlUGF0aCwgeyBlbmNvZGluZzogXCJ1dGYtOFwiIH0pXG4gIC8vICAgfSBjYXRjaCAoZSkge1xuICAvLyAgICAgaWYgKGUuY29kZSA9PT0gXCJFTk9FTlRcIikge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgICAgdGhyb3cgZVxuICAvLyAgIH1cblxuICAvLyAgIGlmIChvcHRpb25zLnBhcnNlKSB7XG4gIC8vICAgICBjb25zdCB0ZXh0ZUxvaVBhcnNlZCA9IHBhcnNlVGV4dGVMb2kodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwsIHBhZ2UpXG4gIC8vICAgICBjb25zdCB7IGVycm9yIH0gPSB0ZXh0ZUxvaVBhcnNlZFxuICAvLyAgICAgaWYgKGVycm9yKSB7XG4gIC8vICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gIC8vICAgICAgICAgYEVycm9yIHdoaWxlIHBhcnNpbmcgcGFnZSBcIiR7dGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmx9XCIgKHVpZDogJHtcbiAgLy8gICAgICAgICAgIHRleHRlTG9pLnVpZFxuICAvLyAgICAgICAgIH0pOlxcblxcbkVycm9yOlxcbiR7SlNPTi5zdHJpbmdpZnkoZXJyb3IsIG51bGwsIDIpfWAsXG4gIC8vICAgICAgIClcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICB9XG4gIC8vIH1cbiAgLy8gaWYgY29tbWl0QW5kUHVzaCh0ZXh0ZXNMb2lzRGlyLCBvcHRpb25zLmNvbW1pdCwgb3B0aW9ucy5yZW1vdGUpIHtcbiAgLy8gICBwcm9jZXNzLmV4aXQoMSlcbiAgLy8gfVxuICAvLyByZXR1cm4gdGV4dGVzTG9pc1xufVxuXG5wYXJzZVRleHRlc0xvaXMoKVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFNLE1BQU0sUUFBUTtBQUMzQjtBQUNBLE9BQU9DLGVBQWUsTUFBTSxtQkFBbUI7QUFDL0MsT0FBT0MsRUFBRSxNQUFNLFVBQVU7QUFDekIsT0FBT0MsSUFBSSxNQUFNLE1BQU07O0FBRXZCO0FBQ0E7QUFBQSxTQUNTQyxhQUFhLG9DQUN0QjtBQUNBO0FBRUEsTUFBTUMsa0JBQWtCLEdBQUcsQ0FDekI7RUFDRUMsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLG9CQUFvQjtFQUMxQkMsSUFBSSxFQUFFLFFBQVE7RUFDZEMsSUFBSSxFQUFFQztBQUNSLENBQUMsRUFDRDtFQUNFSixLQUFLLEVBQUUsR0FBRztFQUNWQyxJQUFJLEVBQUUsMkNBQTJDO0VBQ2pEQyxJQUFJLEVBQUUsVUFBVTtFQUNoQkMsSUFBSSxFQUFFRTtBQUNSLENBQUMsRUFDRDtFQUNFTCxLQUFLLEVBQUUsR0FBRztFQUNWTSxZQUFZLEVBQUUsSUFBSTtFQUNsQkosSUFBSSxFQUFFLGFBQWE7RUFDbkJDLElBQUksRUFBRUU7QUFDUixDQUFDLEVBQ0Q7RUFDRUwsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLDZCQUE2QjtFQUNuQ00sUUFBUSxFQUFFLElBQUk7RUFDZEwsSUFBSSxFQUFFLFFBQVE7RUFDZEMsSUFBSSxFQUFFRTtBQUNSLENBQUMsRUFDRDtFQUNFTCxLQUFLLEVBQUUsR0FBRztFQUNWQyxJQUFJLEVBQUUsb0JBQW9CO0VBQzFCQyxJQUFJLEVBQUUsUUFBUTtFQUNkQyxJQUFJLEVBQUVDO0FBQ1IsQ0FBQyxFQUNEO0VBQ0VKLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLElBQUksRUFBRSxjQUFjO0VBQ3BCQyxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUVDO0FBQ1IsQ0FBQyxFQUNEO0VBQ0VJLGFBQWEsRUFBRSxJQUFJO0VBQ25CUCxJQUFJLEVBQUUsZ0RBQWdEO0VBQ3REQyxJQUFJLEVBQUUsU0FBUztFQUNmQyxJQUFJLEVBQUVFO0FBQ1IsQ0FBQyxDQUNGO0FBQ0QsTUFBTUksT0FBTyxHQUFHZCxlQUFlLENBQUNJLGtCQUFrQixDQUFDOztBQUVuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVNXLGVBQWUsR0FBUztFQUMvQmhCLE1BQU0sQ0FDSixDQUFDZSxPQUFPLENBQUNFLE1BQU0sSUFBSUYsT0FBTyxDQUFDRyxRQUFRLEVBQ25DLGdEQUFnRCxDQUNqRDtFQUVELE1BQU1DLE9BQU8sR0FBR0osT0FBTyxDQUFDSSxPQUFPO0VBQy9CO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0VBRUEsTUFBTUMsYUFBYSxHQUFHakIsSUFBSSxDQUFDa0IsSUFBSSxDQUM3QkYsT0FBTyxFQUNQLDRCQUE0QixFQUM1QkosT0FBTyxDQUFDTyxXQUFXLEVBQ25CLFFBQVEsQ0FDVDtFQUNELEtBQUssTUFBTUosUUFBUSxJQUFJaEIsRUFBRSxDQUFDcUIsV0FBVyxDQUFDSCxhQUFhLENBQUMsRUFBRTtJQUNwRCxJQUFJRixRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFO01BQ3ZCO0lBQ0Y7SUFDQSxJQUFJLENBQUNBLFFBQVEsQ0FBQ00sUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO01BQzlCO0lBQ0Y7SUFDQSxJQUFJVCxPQUFPLENBQUNHLFFBQVEsSUFBSSxDQUFDQSxRQUFRLENBQUNPLFVBQVUsQ0FBQ1YsT0FBTyxDQUFDRyxRQUFRLENBQUMsRUFBRTtNQUM5RDtJQUNGO0lBQ0EsTUFBTVEsWUFBWSxHQUFHdkIsSUFBSSxDQUFDa0IsSUFBSSxDQUFDRCxhQUFhLEVBQUVGLFFBQVEsQ0FBQztJQUN2RCxJQUFJLENBQUNILE9BQU8sQ0FBQ1ksTUFBTSxFQUFFO01BQ25CQyxPQUFPLENBQUNDLEdBQUcsQ0FBRSwwQkFBeUJILFlBQWEsR0FBRSxDQUFDO0lBQ3hEO0lBQ0EsTUFBTUksWUFBWSxHQUFHNUIsRUFBRSxDQUFDNkIsWUFBWSxDQUFDTCxZQUFZLEVBQUU7TUFBRU0sUUFBUSxFQUFFO0lBQVEsQ0FBQyxDQUFDO0lBQ3pFLE1BQU1DLFdBQVcsR0FBSSxxQ0FBb0NsQixPQUFPLENBQUNPLFdBQVksV0FBVUosUUFBUyxFQUFDO0lBQ2pHLE1BQU1nQixjQUFjLEdBQUc5QixhQUFhLENBQUM2QixXQUFXLEVBQUVILFlBQVksQ0FBQztJQUMvRCxJQUFJZixPQUFPLENBQUNHLFFBQVEsSUFBSUgsT0FBTyxDQUFDb0IsT0FBTyxFQUFFO01BQ3ZDUCxPQUFPLENBQUNDLEdBQUcsQ0FBQ08sSUFBSSxDQUFDQyxTQUFTLENBQUNILGNBQWMsQ0FBQ0ksWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuRTtJQUNBLE1BQU07TUFBRUM7SUFBTSxDQUFDLEdBQUdMLGNBQWM7SUFDaEMsSUFBSUssS0FBSyxFQUFFO01BQ1RYLE9BQU8sQ0FBQ1csS0FBSyxDQUNWLCtCQUE4QmIsWUFBYSxpQkFBZ0JVLElBQUksQ0FBQ0MsU0FBUyxDQUN4RUUsS0FBSyxFQUNMLElBQUksRUFDSixDQUFDLENBQ0QsRUFBQyxDQUNKO01BQ0Q7SUFDRjtFQUNGOztFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0Y7O0FBRUF2QixlQUFlLEVBQUUifQ==
@@ -37,14 +37,14 @@ var _quicktypeCore = require("quicktype-core");
37
37
  var _datasets = require("../datasets");
38
38
  var _file_systems = require("../file_systems");
39
39
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40
- 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 exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
40
+ 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 exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
41
41
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
42
42
  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."); }
43
43
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
44
44
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
45
45
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, 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 normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
46
46
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
47
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
47
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
48
48
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
49
49
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
50
50
  var optionsDefinitions = [{
@@ -71,146 +71,144 @@ function _generateRawTypesFromAmendements() {
71
71
  _generateRawTypesFromAmendements = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(dataDir) {
72
72
  var _iterator, _step, dataset, originalJsonDir, amendementsOriginalFilesPathsByUidTextLegislatif, _iterator2, _step2, amendementSplitPath, amendementFilename, _uidTexteLegislatif, _amendementsOriginalFilesPaths, _amendementOriginalFilePath, uidsTextesLegislatifs, textesLegislatifsSamples, _i, _uidsTextesLegislatif, uidTexteLegislatif, amendementsOriginalFilesPaths, amendements, _iterator3, _step3, amendementOriginalFilePath, amendementOriginalJson, amendementOriginal, amendement, texteLegislatif, jsonInput, inputData, _yield$quicktype, lines, amendementsRawTypesFilePath;
73
73
  return _regeneratorRuntime().wrap(function _callee$(_context) {
74
- while (1) {
75
- switch (_context.prev = _context.next) {
76
- case 0:
77
- _iterator = _createForOfIteratorHelper(_datasets.datasets.amendements);
78
- _context.prev = 1;
79
- _iterator.s();
80
- case 3:
81
- if ((_step = _iterator.n()).done) {
82
- _context.next = 52;
83
- break;
84
- }
85
- dataset = _step.value;
86
- _context.t0 = dataset.structure;
87
- _context.next = _context.t0 === _datasets.DatasetStructure.SegmentedFiles ? 8 : 50;
74
+ while (1) switch (_context.prev = _context.next) {
75
+ case 0:
76
+ _iterator = _createForOfIteratorHelper(_datasets.datasets.amendements);
77
+ _context.prev = 1;
78
+ _iterator.s();
79
+ case 3:
80
+ if ((_step = _iterator.n()).done) {
81
+ _context.next = 52;
88
82
  break;
89
- case 8:
90
- originalJsonDir = _path["default"].join(dataDir, dataset.filename);
91
- if (!options.silent) {
92
- console.log("Generating raw types from ".concat(originalJsonDir, "\u2026"));
93
- }
94
- amendementsOriginalFilesPathsByUidTextLegislatif = {};
95
- _iterator2 = _createForOfIteratorHelper((0, _file_systems.walkDir)(originalJsonDir));
96
- _context.prev = 12;
97
- _iterator2.s();
98
- case 14:
99
- if ((_step2 = _iterator2.n()).done) {
100
- _context.next = 26;
101
- break;
102
- }
103
- amendementSplitPath = _step2.value;
104
- amendementFilename = amendementSplitPath[amendementSplitPath.length - 1];
105
- if (amendementFilename.endsWith(".json")) {
106
- _context.next = 19;
107
- break;
108
- }
109
- return _context.abrupt("continue", 24);
110
- case 19:
111
- _uidTexteLegislatif = amendementSplitPath[amendementSplitPath.length - 2];
112
- _amendementsOriginalFilesPaths = amendementsOriginalFilesPathsByUidTextLegislatif[_uidTexteLegislatif];
113
- if (_amendementsOriginalFilesPaths === undefined) {
114
- _amendementsOriginalFilesPaths = amendementsOriginalFilesPathsByUidTextLegislatif[_uidTexteLegislatif] = [];
115
- }
116
- _amendementOriginalFilePath = _path["default"].join.apply(_path["default"], [originalJsonDir].concat(_toConsumableArray(amendementSplitPath)));
117
- _amendementsOriginalFilesPaths.push(_amendementOriginalFilePath);
118
- case 24:
119
- _context.next = 14;
83
+ }
84
+ dataset = _step.value;
85
+ _context.t0 = dataset.structure;
86
+ _context.next = _context.t0 === _datasets.DatasetStructure.SegmentedFiles ? 8 : 50;
87
+ break;
88
+ case 8:
89
+ originalJsonDir = _path["default"].join(dataDir, dataset.filename);
90
+ if (!options.silent) {
91
+ console.log("Generating raw types from ".concat(originalJsonDir, "\u2026"));
92
+ }
93
+ amendementsOriginalFilesPathsByUidTextLegislatif = {};
94
+ _iterator2 = _createForOfIteratorHelper((0, _file_systems.walkDir)(originalJsonDir));
95
+ _context.prev = 12;
96
+ _iterator2.s();
97
+ case 14:
98
+ if ((_step2 = _iterator2.n()).done) {
99
+ _context.next = 26;
120
100
  break;
121
- case 26:
122
- _context.next = 31;
101
+ }
102
+ amendementSplitPath = _step2.value;
103
+ amendementFilename = amendementSplitPath[amendementSplitPath.length - 1];
104
+ if (amendementFilename.endsWith(".json")) {
105
+ _context.next = 19;
123
106
  break;
124
- case 28:
125
- _context.prev = 28;
126
- _context.t1 = _context["catch"](12);
127
- _iterator2.e(_context.t1);
128
- case 31:
129
- _context.prev = 31;
130
- _iterator2.f();
131
- return _context.finish(31);
132
- case 34:
133
- uidsTextesLegislatifs = Object.keys(amendementsOriginalFilesPathsByUidTextLegislatif);
134
- uidsTextesLegislatifs.sort(function (a, b) {
107
+ }
108
+ return _context.abrupt("continue", 24);
109
+ case 19:
110
+ _uidTexteLegislatif = amendementSplitPath[amendementSplitPath.length - 2];
111
+ _amendementsOriginalFilesPaths = amendementsOriginalFilesPathsByUidTextLegislatif[_uidTexteLegislatif];
112
+ if (_amendementsOriginalFilesPaths === undefined) {
113
+ _amendementsOriginalFilesPaths = amendementsOriginalFilesPathsByUidTextLegislatif[_uidTexteLegislatif] = [];
114
+ }
115
+ _amendementOriginalFilePath = _path["default"].join.apply(_path["default"], [originalJsonDir].concat(_toConsumableArray(amendementSplitPath)));
116
+ _amendementsOriginalFilesPaths.push(_amendementOriginalFilePath);
117
+ case 24:
118
+ _context.next = 14;
119
+ break;
120
+ case 26:
121
+ _context.next = 31;
122
+ break;
123
+ case 28:
124
+ _context.prev = 28;
125
+ _context.t1 = _context["catch"](12);
126
+ _iterator2.e(_context.t1);
127
+ case 31:
128
+ _context.prev = 31;
129
+ _iterator2.f();
130
+ return _context.finish(31);
131
+ case 34:
132
+ uidsTextesLegislatifs = Object.keys(amendementsOriginalFilesPathsByUidTextLegislatif);
133
+ uidsTextesLegislatifs.sort(function (a, b) {
134
+ return a.length === b.length ? a.localeCompare(b) : a.length - b.length;
135
+ });
136
+ textesLegislatifsSamples = [];
137
+ for (_i = 0, _uidsTextesLegislatif = uidsTextesLegislatifs; _i < _uidsTextesLegislatif.length; _i++) {
138
+ uidTexteLegislatif = _uidsTextesLegislatif[_i];
139
+ if (options.verbose) {
140
+ console.log(" Reading \"amendements du texte l\xE9gislatif\": ".concat(uidTexteLegislatif, "\u2026"));
141
+ }
142
+ amendementsOriginalFilesPaths = amendementsOriginalFilesPathsByUidTextLegislatif[uidTexteLegislatif];
143
+ amendementsOriginalFilesPaths.sort(function (a, b) {
135
144
  return a.length === b.length ? a.localeCompare(b) : a.length - b.length;
136
145
  });
137
- textesLegislatifsSamples = [];
138
- for (_i = 0, _uidsTextesLegislatif = uidsTextesLegislatifs; _i < _uidsTextesLegislatif.length; _i++) {
139
- uidTexteLegislatif = _uidsTextesLegislatif[_i];
140
- if (options.verbose) {
141
- console.log(" Reading \"amendements du texte l\xE9gislatif\": ".concat(uidTexteLegislatif, "\u2026"));
146
+ amendements = [];
147
+ _iterator3 = _createForOfIteratorHelper(amendementsOriginalFilesPaths);
148
+ try {
149
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
150
+ amendementOriginalFilePath = _step3.value;
151
+ amendementOriginalJson = _fsExtra["default"].readFileSync(amendementOriginalFilePath, {
152
+ encoding: "utf8"
153
+ });
154
+ amendementOriginal = JSON.parse(amendementOriginalJson);
155
+ amendement = amendementOriginal.amendement;
156
+ amendements.push(amendement);
142
157
  }
143
- amendementsOriginalFilesPaths = amendementsOriginalFilesPathsByUidTextLegislatif[uidTexteLegislatif];
144
- amendementsOriginalFilesPaths.sort(function (a, b) {
145
- return a.length === b.length ? a.localeCompare(b) : a.length - b.length;
146
- });
147
- amendements = [];
148
- _iterator3 = _createForOfIteratorHelper(amendementsOriginalFilesPaths);
149
- try {
150
- for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
151
- amendementOriginalFilePath = _step3.value;
152
- amendementOriginalJson = _fsExtra["default"].readFileSync(amendementOriginalFilePath, {
153
- encoding: "utf8"
154
- });
155
- amendementOriginal = JSON.parse(amendementOriginalJson);
156
- amendement = amendementOriginal.amendement;
157
- amendements.push(amendement);
158
- }
159
- } catch (err) {
160
- _iterator3.e(err);
161
- } finally {
162
- _iterator3.f();
163
- }
164
- texteLegislatif = {
165
- "@xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance",
166
- refTexteLegislatif: uidTexteLegislatif,
167
- amendements: {
168
- amendement: amendements
169
- }
170
- };
171
- textesLegislatifsSamples.push(JSON.stringify(texteLegislatif));
158
+ } catch (err) {
159
+ _iterator3.e(err);
160
+ } finally {
161
+ _iterator3.f();
172
162
  }
173
- jsonInput = (0, _quicktypeCore.jsonInputForTargetLanguage)("typescript");
174
- _context.next = 41;
175
- return jsonInput.addSource({
176
- name: "TexteLegislatif",
177
- samples: textesLegislatifsSamples
178
- });
179
- case 41:
180
- inputData = new _quicktypeCore.InputData();
181
- inputData.addInput(jsonInput);
182
- _context.next = 45;
183
- return (0, _quicktypeCore.quicktype)({
184
- inputData: inputData,
185
- lang: "typescript",
186
- rendererOptions: {
187
- acronymStyle: "camel"
163
+ texteLegislatif = {
164
+ "@xmlns:xsi": "http://www.w3.org/2001/XMLSchema-instance",
165
+ refTexteLegislatif: uidTexteLegislatif,
166
+ amendements: {
167
+ amendement: amendements
188
168
  }
189
- });
190
- case 45:
191
- _yield$quicktype = _context.sent;
192
- lines = _yield$quicktype.lines;
193
- amendementsRawTypesFilePath = _path["default"].join("src", "raw_types", "amendements.ts");
194
- _fsExtra["default"].writeFileSync(amendementsRawTypesFilePath, lines.join("\n"));
195
- return _context.abrupt("break", 50);
196
- case 50:
197
- _context.next = 3;
198
- break;
199
- case 52:
200
- _context.next = 57;
201
- break;
202
- case 54:
203
- _context.prev = 54;
204
- _context.t2 = _context["catch"](1);
205
- _iterator.e(_context.t2);
206
- case 57:
207
- _context.prev = 57;
208
- _iterator.f();
209
- return _context.finish(57);
210
- case 60:
211
- case "end":
212
- return _context.stop();
213
- }
169
+ };
170
+ textesLegislatifsSamples.push(JSON.stringify(texteLegislatif));
171
+ }
172
+ jsonInput = (0, _quicktypeCore.jsonInputForTargetLanguage)("typescript");
173
+ _context.next = 41;
174
+ return jsonInput.addSource({
175
+ name: "TexteLegislatif",
176
+ samples: textesLegislatifsSamples
177
+ });
178
+ case 41:
179
+ inputData = new _quicktypeCore.InputData();
180
+ inputData.addInput(jsonInput);
181
+ _context.next = 45;
182
+ return (0, _quicktypeCore.quicktype)({
183
+ inputData: inputData,
184
+ lang: "typescript",
185
+ rendererOptions: {
186
+ acronymStyle: "camel"
187
+ }
188
+ });
189
+ case 45:
190
+ _yield$quicktype = _context.sent;
191
+ lines = _yield$quicktype.lines;
192
+ amendementsRawTypesFilePath = _path["default"].join("src", "raw_types", "amendements.ts");
193
+ _fsExtra["default"].writeFileSync(amendementsRawTypesFilePath, lines.join("\n"));
194
+ return _context.abrupt("break", 50);
195
+ case 50:
196
+ _context.next = 3;
197
+ break;
198
+ case 52:
199
+ _context.next = 57;
200
+ break;
201
+ case 54:
202
+ _context.prev = 54;
203
+ _context.t2 = _context["catch"](1);
204
+ _iterator.e(_context.t2);
205
+ case 57:
206
+ _context.prev = 57;
207
+ _iterator.f();
208
+ return _context.finish(57);
209
+ case 60:
210
+ case "end":
211
+ return _context.stop();
214
212
  }
215
213
  }, _callee, null, [[1, 54, 57, 60], [12, 28, 31, 34]]);
216
214
  }));
@@ -222,4 +220,4 @@ generateRawTypesFromAmendements(options.dataDir).then(function () {
222
220
  console.error(error);
223
221
  process.exit(1);
224
222
  });
225
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcHRpb25zRGVmaW5pdGlvbnMiLCJhbGlhcyIsImhlbHAiLCJuYW1lIiwidHlwZSIsIkJvb2xlYW4iLCJkZWZhdWx0T3B0aW9uIiwiU3RyaW5nIiwib3B0aW9ucyIsImNvbW1hbmRMaW5lQXJncyIsImdlbmVyYXRlUmF3VHlwZXNGcm9tQW1lbmRlbWVudHMiLCJkYXRhRGlyIiwiZGF0YXNldHMiLCJhbWVuZGVtZW50cyIsImRhdGFzZXQiLCJzdHJ1Y3R1cmUiLCJEYXRhc2V0U3RydWN0dXJlIiwiU2VnbWVudGVkRmlsZXMiLCJvcmlnaW5hbEpzb25EaXIiLCJwYXRoIiwiam9pbiIsImZpbGVuYW1lIiwic2lsZW50IiwiY29uc29sZSIsImxvZyIsImFtZW5kZW1lbnRzT3JpZ2luYWxGaWxlc1BhdGhzQnlVaWRUZXh0TGVnaXNsYXRpZiIsIndhbGtEaXIiLCJhbWVuZGVtZW50U3BsaXRQYXRoIiwiYW1lbmRlbWVudEZpbGVuYW1lIiwibGVuZ3RoIiwiZW5kc1dpdGgiLCJ1aWRUZXh0ZUxlZ2lzbGF0aWYiLCJhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRocyIsInVuZGVmaW5lZCIsImFtZW5kZW1lbnRPcmlnaW5hbEZpbGVQYXRoIiwicHVzaCIsInVpZHNUZXh0ZXNMZWdpc2xhdGlmcyIsIk9iamVjdCIsImtleXMiLCJzb3J0IiwiYSIsImIiLCJsb2NhbGVDb21wYXJlIiwidGV4dGVzTGVnaXNsYXRpZnNTYW1wbGVzIiwidmVyYm9zZSIsImFtZW5kZW1lbnRPcmlnaW5hbEpzb24iLCJmcyIsInJlYWRGaWxlU3luYyIsImVuY29kaW5nIiwiYW1lbmRlbWVudE9yaWdpbmFsIiwiSlNPTiIsInBhcnNlIiwiYW1lbmRlbWVudCIsInRleHRlTGVnaXNsYXRpZiIsInJlZlRleHRlTGVnaXNsYXRpZiIsInN0cmluZ2lmeSIsImpzb25JbnB1dCIsImpzb25JbnB1dEZvclRhcmdldExhbmd1YWdlIiwiYWRkU291cmNlIiwic2FtcGxlcyIsImlucHV0RGF0YSIsIklucHV0RGF0YSIsImFkZElucHV0IiwicXVpY2t0eXBlIiwibGFuZyIsInJlbmRlcmVyT3B0aW9ucyIsImFjcm9ueW1TdHlsZSIsImxpbmVzIiwiYW1lbmRlbWVudHNSYXdUeXBlc0ZpbGVQYXRoIiwid3JpdGVGaWxlU3luYyIsInRoZW4iLCJwcm9jZXNzIiwiZXhpdCIsImVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcmF3X3R5cGVzX2Zyb21fYW1lbmRlbWVudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQge1xuICBxdWlja3R5cGUsXG4gIElucHV0RGF0YSxcbiAganNvbklucHV0Rm9yVGFyZ2V0TGFuZ3VhZ2UsXG59IGZyb20gXCJxdWlja3R5cGUtY29yZVwiXG5cbmltcG9ydCB7IGRhdGFzZXRzLCBEYXRhc2V0U3RydWN0dXJlIH0gZnJvbSBcIi4uL2RhdGFzZXRzXCJcbmltcG9ydCB7IHdhbGtEaXIgfSBmcm9tIFwiLi4vZmlsZV9zeXN0ZW1zXCJcblxuY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW1xuICB7XG4gICAgYWxpYXM6IFwic1wiLFxuICAgIGhlbHA6IFwiZG9uJ3QgbG9nIGFueXRoaW5nXCIsXG4gICAgbmFtZTogXCJzaWxlbnRcIixcbiAgICB0eXBlOiBCb29sZWFuLFxuICB9LFxuICB7XG4gICAgYWxpYXM6IFwidlwiLFxuICAgIGhlbHA6IFwidmVyYm9zZSBsb2dzXCIsXG4gICAgbmFtZTogXCJ2ZXJib3NlXCIsXG4gICAgdHlwZTogQm9vbGVhbixcbiAgfSxcbiAge1xuICAgIGRlZmF1bHRPcHRpb246IHRydWUsXG4gICAgaGVscDogXCJkaXJlY3RvcnkgY29udGFpbmluZyBBc3NlbWJsw6llIG9wZW4gZGF0YSBmaWxlc1wiLFxuICAgIG5hbWU6IFwiZGF0YURpclwiLFxuICAgIHR5cGU6IFN0cmluZyxcbiAgfSxcbl1cbmNvbnN0IG9wdGlvbnMgPSBjb21tYW5kTGluZUFyZ3Mob3B0aW9uc0RlZmluaXRpb25zKVxuXG5hc3luYyBmdW5jdGlvbiBnZW5lcmF0ZVJhd1R5cGVzRnJvbUFtZW5kZW1lbnRzKGRhdGFEaXI6IHN0cmluZykge1xuICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgZGF0YXNldHMuYW1lbmRlbWVudHMpIHtcbiAgICBzd2l0Y2ggKGRhdGFzZXQuc3RydWN0dXJlKSB7XG4gICAgICBjYXNlIERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXM6XG4gICAgICAgIHtcbiAgICAgICAgICBjb25zdCBvcmlnaW5hbEpzb25EaXI6IHN0cmluZyA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBHZW5lcmF0aW5nIHJhdyB0eXBlcyBmcm9tICR7b3JpZ2luYWxKc29uRGlyfeKApmApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYW1lbmRlbWVudHNPcmlnaW5hbEZpbGVzUGF0aHNCeVVpZFRleHRMZWdpc2xhdGlmOiB7XG4gICAgICAgICAgICBbdWlkOiBzdHJpbmddOiBzdHJpbmdbXVxuICAgICAgICAgIH0gPSB7fVxuICAgICAgICAgIGZvciAoY29uc3QgYW1lbmRlbWVudFNwbGl0UGF0aCBvZiB3YWxrRGlyKG9yaWdpbmFsSnNvbkRpcikpIHtcbiAgICAgICAgICAgIGNvbnN0IGFtZW5kZW1lbnRGaWxlbmFtZSA9XG4gICAgICAgICAgICAgIGFtZW5kZW1lbnRTcGxpdFBhdGhbYW1lbmRlbWVudFNwbGl0UGF0aC5sZW5ndGggLSAxXVxuICAgICAgICAgICAgaWYgKCFhbWVuZGVtZW50RmlsZW5hbWUuZW5kc1dpdGgoXCIuanNvblwiKSkge1xuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdWlkVGV4dGVMZWdpc2xhdGlmID1cbiAgICAgICAgICAgICAgYW1lbmRlbWVudFNwbGl0UGF0aFthbWVuZGVtZW50U3BsaXRQYXRoLmxlbmd0aCAtIDJdXG4gICAgICAgICAgICBsZXQgYW1lbmRlbWVudHNPcmlnaW5hbEZpbGVzUGF0aHMgPVxuICAgICAgICAgICAgICBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRoc0J5VWlkVGV4dExlZ2lzbGF0aWZbXG4gICAgICAgICAgICAgICAgdWlkVGV4dGVMZWdpc2xhdGlmXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIGlmIChhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRocyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIGFtZW5kZW1lbnRzT3JpZ2luYWxGaWxlc1BhdGhzID1cbiAgICAgICAgICAgICAgICBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRoc0J5VWlkVGV4dExlZ2lzbGF0aWZbXG4gICAgICAgICAgICAgICAgICB1aWRUZXh0ZUxlZ2lzbGF0aWZcbiAgICAgICAgICAgICAgICBdID0gW11cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGFtZW5kZW1lbnRPcmlnaW5hbEZpbGVQYXRoID0gcGF0aC5qb2luKFxuICAgICAgICAgICAgICBvcmlnaW5hbEpzb25EaXIsXG4gICAgICAgICAgICAgIC4uLmFtZW5kZW1lbnRTcGxpdFBhdGgsXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRocy5wdXNoKGFtZW5kZW1lbnRPcmlnaW5hbEZpbGVQYXRoKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IHVpZHNUZXh0ZXNMZWdpc2xhdGlmcyA9IE9iamVjdC5rZXlzKFxuICAgICAgICAgICAgYW1lbmRlbWVudHNPcmlnaW5hbEZpbGVzUGF0aHNCeVVpZFRleHRMZWdpc2xhdGlmLFxuICAgICAgICAgIClcbiAgICAgICAgICB1aWRzVGV4dGVzTGVnaXNsYXRpZnMuc29ydCgoYTogc3RyaW5nLCBiOiBzdHJpbmcpID0+XG4gICAgICAgICAgICBhLmxlbmd0aCA9PT0gYi5sZW5ndGggPyBhLmxvY2FsZUNvbXBhcmUoYikgOiBhLmxlbmd0aCAtIGIubGVuZ3RoLFxuICAgICAgICAgIClcbiAgICAgICAgICBjb25zdCB0ZXh0ZXNMZWdpc2xhdGlmc1NhbXBsZXMgPSBbXVxuICAgICAgICAgIGZvciAoY29uc3QgdWlkVGV4dGVMZWdpc2xhdGlmIG9mIHVpZHNUZXh0ZXNMZWdpc2xhdGlmcykge1xuICAgICAgICAgICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgICAgICBgICBSZWFkaW5nIFwiYW1lbmRlbWVudHMgZHUgdGV4dGUgbMOpZ2lzbGF0aWZcIjogJHt1aWRUZXh0ZUxlZ2lzbGF0aWZ94oCmYCxcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgYW1lbmRlbWVudHNPcmlnaW5hbEZpbGVzUGF0aHMgPVxuICAgICAgICAgICAgICBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRoc0J5VWlkVGV4dExlZ2lzbGF0aWZbXG4gICAgICAgICAgICAgICAgdWlkVGV4dGVMZWdpc2xhdGlmXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIGFtZW5kZW1lbnRzT3JpZ2luYWxGaWxlc1BhdGhzLnNvcnQoKGE6IHN0cmluZywgYjogc3RyaW5nKSA9PlxuICAgICAgICAgICAgICBhLmxlbmd0aCA9PT0gYi5sZW5ndGggPyBhLmxvY2FsZUNvbXBhcmUoYikgOiBhLmxlbmd0aCAtIGIubGVuZ3RoLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgY29uc3QgYW1lbmRlbWVudHMgPSBbXVxuICAgICAgICAgICAgZm9yIChjb25zdCBhbWVuZGVtZW50T3JpZ2luYWxGaWxlUGF0aCBvZiBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRocykge1xuICAgICAgICAgICAgICBjb25zdCBhbWVuZGVtZW50T3JpZ2luYWxKc29uOiBzdHJpbmcgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgICAgICAgICAgICAgYW1lbmRlbWVudE9yaWdpbmFsRmlsZVBhdGgsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgZW5jb2Rpbmc6IFwidXRmOFwiLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgY29uc3QgYW1lbmRlbWVudE9yaWdpbmFsOiBhbnkgPSBKU09OLnBhcnNlKGFtZW5kZW1lbnRPcmlnaW5hbEpzb24pXG4gICAgICAgICAgICAgIGNvbnN0IGFtZW5kZW1lbnQgPSBhbWVuZGVtZW50T3JpZ2luYWwuYW1lbmRlbWVudFxuICAgICAgICAgICAgICBhbWVuZGVtZW50cy5wdXNoKGFtZW5kZW1lbnQpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB0ZXh0ZUxlZ2lzbGF0aWYgPSB7XG4gICAgICAgICAgICAgIFwiQHhtbG5zOnhzaVwiOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlXCIsXG4gICAgICAgICAgICAgIHJlZlRleHRlTGVnaXNsYXRpZjogdWlkVGV4dGVMZWdpc2xhdGlmLFxuICAgICAgICAgICAgICBhbWVuZGVtZW50czogeyBhbWVuZGVtZW50OiBhbWVuZGVtZW50cyB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGV4dGVzTGVnaXNsYXRpZnNTYW1wbGVzLnB1c2goSlNPTi5zdHJpbmdpZnkodGV4dGVMZWdpc2xhdGlmKSlcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBqc29uSW5wdXQgPSBqc29uSW5wdXRGb3JUYXJnZXRMYW5ndWFnZShcInR5cGVzY3JpcHRcIilcbiAgICAgICAgICBhd2FpdCBqc29uSW5wdXQuYWRkU291cmNlKHtcbiAgICAgICAgICAgIG5hbWU6IFwiVGV4dGVMZWdpc2xhdGlmXCIsXG4gICAgICAgICAgICBzYW1wbGVzOiB0ZXh0ZXNMZWdpc2xhdGlmc1NhbXBsZXMsXG4gICAgICAgICAgfSlcbiAgICAgICAgICBjb25zdCBpbnB1dERhdGEgPSBuZXcgSW5wdXREYXRhKClcbiAgICAgICAgICBpbnB1dERhdGEuYWRkSW5wdXQoanNvbklucHV0KVxuICAgICAgICAgIGNvbnN0IHsgbGluZXMgfSA9IGF3YWl0IHF1aWNrdHlwZSh7XG4gICAgICAgICAgICBpbnB1dERhdGEsXG4gICAgICAgICAgICBsYW5nOiBcInR5cGVzY3JpcHRcIixcbiAgICAgICAgICAgIHJlbmRlcmVyT3B0aW9uczogeyBhY3JvbnltU3R5bGU6IFwiY2FtZWxcIiB9LFxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICBjb25zdCBhbWVuZGVtZW50c1Jhd1R5cGVzRmlsZVBhdGggPSBwYXRoLmpvaW4oXG4gICAgICAgICAgICBcInNyY1wiLFxuICAgICAgICAgICAgXCJyYXdfdHlwZXNcIixcbiAgICAgICAgICAgIFwiYW1lbmRlbWVudHMudHNcIixcbiAgICAgICAgICApXG4gICAgICAgICAgZnMud3JpdGVGaWxlU3luYyhhbWVuZGVtZW50c1Jhd1R5cGVzRmlsZVBhdGgsIGxpbmVzLmpvaW4oXCJcXG5cIikpXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICB9XG4gIH1cbn1cblxuZ2VuZXJhdGVSYXdUeXBlc0Zyb21BbWVuZGVtZW50cyhvcHRpb25zLmRhdGFEaXIpXG4gIC50aGVuKCgpID0+IHtcbiAgICBwcm9jZXNzLmV4aXQoMClcbiAgfSlcbiAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpXG4gICAgcHJvY2Vzcy5leGl0KDEpXG4gIH0pXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFNQTtBQUNBO0FBQXlDO0FBQUEsK0NBVHpDO0FBQUE7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
223
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcHRpb25zRGVmaW5pdGlvbnMiLCJhbGlhcyIsImhlbHAiLCJuYW1lIiwidHlwZSIsIkJvb2xlYW4iLCJkZWZhdWx0T3B0aW9uIiwiU3RyaW5nIiwib3B0aW9ucyIsImNvbW1hbmRMaW5lQXJncyIsImdlbmVyYXRlUmF3VHlwZXNGcm9tQW1lbmRlbWVudHMiLCJkYXRhRGlyIiwiZGF0YXNldHMiLCJhbWVuZGVtZW50cyIsImRhdGFzZXQiLCJzdHJ1Y3R1cmUiLCJEYXRhc2V0U3RydWN0dXJlIiwiU2VnbWVudGVkRmlsZXMiLCJvcmlnaW5hbEpzb25EaXIiLCJwYXRoIiwiam9pbiIsImZpbGVuYW1lIiwic2lsZW50IiwiY29uc29sZSIsImxvZyIsImFtZW5kZW1lbnRzT3JpZ2luYWxGaWxlc1BhdGhzQnlVaWRUZXh0TGVnaXNsYXRpZiIsIndhbGtEaXIiLCJhbWVuZGVtZW50U3BsaXRQYXRoIiwiYW1lbmRlbWVudEZpbGVuYW1lIiwibGVuZ3RoIiwiZW5kc1dpdGgiLCJ1aWRUZXh0ZUxlZ2lzbGF0aWYiLCJhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRocyIsInVuZGVmaW5lZCIsImFtZW5kZW1lbnRPcmlnaW5hbEZpbGVQYXRoIiwicHVzaCIsInVpZHNUZXh0ZXNMZWdpc2xhdGlmcyIsIk9iamVjdCIsImtleXMiLCJzb3J0IiwiYSIsImIiLCJsb2NhbGVDb21wYXJlIiwidGV4dGVzTGVnaXNsYXRpZnNTYW1wbGVzIiwidmVyYm9zZSIsImFtZW5kZW1lbnRPcmlnaW5hbEpzb24iLCJmcyIsInJlYWRGaWxlU3luYyIsImVuY29kaW5nIiwiYW1lbmRlbWVudE9yaWdpbmFsIiwiSlNPTiIsInBhcnNlIiwiYW1lbmRlbWVudCIsInRleHRlTGVnaXNsYXRpZiIsInJlZlRleHRlTGVnaXNsYXRpZiIsInN0cmluZ2lmeSIsImpzb25JbnB1dCIsImpzb25JbnB1dEZvclRhcmdldExhbmd1YWdlIiwiYWRkU291cmNlIiwic2FtcGxlcyIsImlucHV0RGF0YSIsIklucHV0RGF0YSIsImFkZElucHV0IiwicXVpY2t0eXBlIiwibGFuZyIsInJlbmRlcmVyT3B0aW9ucyIsImFjcm9ueW1TdHlsZSIsImxpbmVzIiwiYW1lbmRlbWVudHNSYXdUeXBlc0ZpbGVQYXRoIiwid3JpdGVGaWxlU3luYyIsInRoZW4iLCJwcm9jZXNzIiwiZXhpdCIsImVycm9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcmF3X3R5cGVzX2Zyb21fYW1lbmRlbWVudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQge1xuICBxdWlja3R5cGUsXG4gIElucHV0RGF0YSxcbiAganNvbklucHV0Rm9yVGFyZ2V0TGFuZ3VhZ2UsXG59IGZyb20gXCJxdWlja3R5cGUtY29yZVwiXG5cbmltcG9ydCB7IGRhdGFzZXRzLCBEYXRhc2V0U3RydWN0dXJlIH0gZnJvbSBcIi4uL2RhdGFzZXRzXCJcbmltcG9ydCB7IHdhbGtEaXIgfSBmcm9tIFwiLi4vZmlsZV9zeXN0ZW1zXCJcblxuY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW1xuICB7XG4gICAgYWxpYXM6IFwic1wiLFxuICAgIGhlbHA6IFwiZG9uJ3QgbG9nIGFueXRoaW5nXCIsXG4gICAgbmFtZTogXCJzaWxlbnRcIixcbiAgICB0eXBlOiBCb29sZWFuLFxuICB9LFxuICB7XG4gICAgYWxpYXM6IFwidlwiLFxuICAgIGhlbHA6IFwidmVyYm9zZSBsb2dzXCIsXG4gICAgbmFtZTogXCJ2ZXJib3NlXCIsXG4gICAgdHlwZTogQm9vbGVhbixcbiAgfSxcbiAge1xuICAgIGRlZmF1bHRPcHRpb246IHRydWUsXG4gICAgaGVscDogXCJkaXJlY3RvcnkgY29udGFpbmluZyBBc3NlbWJsw6llIG9wZW4gZGF0YSBmaWxlc1wiLFxuICAgIG5hbWU6IFwiZGF0YURpclwiLFxuICAgIHR5cGU6IFN0cmluZyxcbiAgfSxcbl1cbmNvbnN0IG9wdGlvbnMgPSBjb21tYW5kTGluZUFyZ3Mob3B0aW9uc0RlZmluaXRpb25zKVxuXG5hc3luYyBmdW5jdGlvbiBnZW5lcmF0ZVJhd1R5cGVzRnJvbUFtZW5kZW1lbnRzKGRhdGFEaXI6IHN0cmluZykge1xuICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgZGF0YXNldHMuYW1lbmRlbWVudHMpIHtcbiAgICBzd2l0Y2ggKGRhdGFzZXQuc3RydWN0dXJlKSB7XG4gICAgICBjYXNlIERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXM6XG4gICAgICAgIHtcbiAgICAgICAgICBjb25zdCBvcmlnaW5hbEpzb25EaXI6IHN0cmluZyA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBHZW5lcmF0aW5nIHJhdyB0eXBlcyBmcm9tICR7b3JpZ2luYWxKc29uRGlyfeKApmApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYW1lbmRlbWVudHNPcmlnaW5hbEZpbGVzUGF0aHNCeVVpZFRleHRMZWdpc2xhdGlmOiB7XG4gICAgICAgICAgICBbdWlkOiBzdHJpbmddOiBzdHJpbmdbXVxuICAgICAgICAgIH0gPSB7fVxuICAgICAgICAgIGZvciAoY29uc3QgYW1lbmRlbWVudFNwbGl0UGF0aCBvZiB3YWxrRGlyKG9yaWdpbmFsSnNvbkRpcikpIHtcbiAgICAgICAgICAgIGNvbnN0IGFtZW5kZW1lbnRGaWxlbmFtZSA9XG4gICAgICAgICAgICAgIGFtZW5kZW1lbnRTcGxpdFBhdGhbYW1lbmRlbWVudFNwbGl0UGF0aC5sZW5ndGggLSAxXVxuICAgICAgICAgICAgaWYgKCFhbWVuZGVtZW50RmlsZW5hbWUuZW5kc1dpdGgoXCIuanNvblwiKSkge1xuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdWlkVGV4dGVMZWdpc2xhdGlmID1cbiAgICAgICAgICAgICAgYW1lbmRlbWVudFNwbGl0UGF0aFthbWVuZGVtZW50U3BsaXRQYXRoLmxlbmd0aCAtIDJdXG4gICAgICAgICAgICBsZXQgYW1lbmRlbWVudHNPcmlnaW5hbEZpbGVzUGF0aHMgPVxuICAgICAgICAgICAgICBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRoc0J5VWlkVGV4dExlZ2lzbGF0aWZbXG4gICAgICAgICAgICAgICAgdWlkVGV4dGVMZWdpc2xhdGlmXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIGlmIChhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRocyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIGFtZW5kZW1lbnRzT3JpZ2luYWxGaWxlc1BhdGhzID1cbiAgICAgICAgICAgICAgICBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRoc0J5VWlkVGV4dExlZ2lzbGF0aWZbXG4gICAgICAgICAgICAgICAgICB1aWRUZXh0ZUxlZ2lzbGF0aWZcbiAgICAgICAgICAgICAgICBdID0gW11cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGFtZW5kZW1lbnRPcmlnaW5hbEZpbGVQYXRoID0gcGF0aC5qb2luKFxuICAgICAgICAgICAgICBvcmlnaW5hbEpzb25EaXIsXG4gICAgICAgICAgICAgIC4uLmFtZW5kZW1lbnRTcGxpdFBhdGgsXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRocy5wdXNoKGFtZW5kZW1lbnRPcmlnaW5hbEZpbGVQYXRoKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IHVpZHNUZXh0ZXNMZWdpc2xhdGlmcyA9IE9iamVjdC5rZXlzKFxuICAgICAgICAgICAgYW1lbmRlbWVudHNPcmlnaW5hbEZpbGVzUGF0aHNCeVVpZFRleHRMZWdpc2xhdGlmLFxuICAgICAgICAgIClcbiAgICAgICAgICB1aWRzVGV4dGVzTGVnaXNsYXRpZnMuc29ydCgoYTogc3RyaW5nLCBiOiBzdHJpbmcpID0+XG4gICAgICAgICAgICBhLmxlbmd0aCA9PT0gYi5sZW5ndGggPyBhLmxvY2FsZUNvbXBhcmUoYikgOiBhLmxlbmd0aCAtIGIubGVuZ3RoLFxuICAgICAgICAgIClcbiAgICAgICAgICBjb25zdCB0ZXh0ZXNMZWdpc2xhdGlmc1NhbXBsZXMgPSBbXVxuICAgICAgICAgIGZvciAoY29uc3QgdWlkVGV4dGVMZWdpc2xhdGlmIG9mIHVpZHNUZXh0ZXNMZWdpc2xhdGlmcykge1xuICAgICAgICAgICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgICAgICBgICBSZWFkaW5nIFwiYW1lbmRlbWVudHMgZHUgdGV4dGUgbMOpZ2lzbGF0aWZcIjogJHt1aWRUZXh0ZUxlZ2lzbGF0aWZ94oCmYCxcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgYW1lbmRlbWVudHNPcmlnaW5hbEZpbGVzUGF0aHMgPVxuICAgICAgICAgICAgICBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRoc0J5VWlkVGV4dExlZ2lzbGF0aWZbXG4gICAgICAgICAgICAgICAgdWlkVGV4dGVMZWdpc2xhdGlmXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIGFtZW5kZW1lbnRzT3JpZ2luYWxGaWxlc1BhdGhzLnNvcnQoKGE6IHN0cmluZywgYjogc3RyaW5nKSA9PlxuICAgICAgICAgICAgICBhLmxlbmd0aCA9PT0gYi5sZW5ndGggPyBhLmxvY2FsZUNvbXBhcmUoYikgOiBhLmxlbmd0aCAtIGIubGVuZ3RoLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgY29uc3QgYW1lbmRlbWVudHMgPSBbXVxuICAgICAgICAgICAgZm9yIChjb25zdCBhbWVuZGVtZW50T3JpZ2luYWxGaWxlUGF0aCBvZiBhbWVuZGVtZW50c09yaWdpbmFsRmlsZXNQYXRocykge1xuICAgICAgICAgICAgICBjb25zdCBhbWVuZGVtZW50T3JpZ2luYWxKc29uOiBzdHJpbmcgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgICAgICAgICAgICAgYW1lbmRlbWVudE9yaWdpbmFsRmlsZVBhdGgsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgZW5jb2Rpbmc6IFwidXRmOFwiLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgY29uc3QgYW1lbmRlbWVudE9yaWdpbmFsOiBhbnkgPSBKU09OLnBhcnNlKGFtZW5kZW1lbnRPcmlnaW5hbEpzb24pXG4gICAgICAgICAgICAgIGNvbnN0IGFtZW5kZW1lbnQgPSBhbWVuZGVtZW50T3JpZ2luYWwuYW1lbmRlbWVudFxuICAgICAgICAgICAgICBhbWVuZGVtZW50cy5wdXNoKGFtZW5kZW1lbnQpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB0ZXh0ZUxlZ2lzbGF0aWYgPSB7XG4gICAgICAgICAgICAgIFwiQHhtbG5zOnhzaVwiOiBcImh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlXCIsXG4gICAgICAgICAgICAgIHJlZlRleHRlTGVnaXNsYXRpZjogdWlkVGV4dGVMZWdpc2xhdGlmLFxuICAgICAgICAgICAgICBhbWVuZGVtZW50czogeyBhbWVuZGVtZW50OiBhbWVuZGVtZW50cyB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGV4dGVzTGVnaXNsYXRpZnNTYW1wbGVzLnB1c2goSlNPTi5zdHJpbmdpZnkodGV4dGVMZWdpc2xhdGlmKSlcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBqc29uSW5wdXQgPSBqc29uSW5wdXRGb3JUYXJnZXRMYW5ndWFnZShcInR5cGVzY3JpcHRcIilcbiAgICAgICAgICBhd2FpdCBqc29uSW5wdXQuYWRkU291cmNlKHtcbiAgICAgICAgICAgIG5hbWU6IFwiVGV4dGVMZWdpc2xhdGlmXCIsXG4gICAgICAgICAgICBzYW1wbGVzOiB0ZXh0ZXNMZWdpc2xhdGlmc1NhbXBsZXMsXG4gICAgICAgICAgfSlcbiAgICAgICAgICBjb25zdCBpbnB1dERhdGEgPSBuZXcgSW5wdXREYXRhKClcbiAgICAgICAgICBpbnB1dERhdGEuYWRkSW5wdXQoanNvbklucHV0KVxuICAgICAgICAgIGNvbnN0IHsgbGluZXMgfSA9IGF3YWl0IHF1aWNrdHlwZSh7XG4gICAgICAgICAgICBpbnB1dERhdGEsXG4gICAgICAgICAgICBsYW5nOiBcInR5cGVzY3JpcHRcIixcbiAgICAgICAgICAgIHJlbmRlcmVyT3B0aW9uczogeyBhY3JvbnltU3R5bGU6IFwiY2FtZWxcIiB9LFxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICBjb25zdCBhbWVuZGVtZW50c1Jhd1R5cGVzRmlsZVBhdGggPSBwYXRoLmpvaW4oXG4gICAgICAgICAgICBcInNyY1wiLFxuICAgICAgICAgICAgXCJyYXdfdHlwZXNcIixcbiAgICAgICAgICAgIFwiYW1lbmRlbWVudHMudHNcIixcbiAgICAgICAgICApXG4gICAgICAgICAgZnMud3JpdGVGaWxlU3luYyhhbWVuZGVtZW50c1Jhd1R5cGVzRmlsZVBhdGgsIGxpbmVzLmpvaW4oXCJcXG5cIikpXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICB9XG4gIH1cbn1cblxuZ2VuZXJhdGVSYXdUeXBlc0Zyb21BbWVuZGVtZW50cyhvcHRpb25zLmRhdGFEaXIpXG4gIC50aGVuKCgpID0+IHtcbiAgICBwcm9jZXNzLmV4aXQoMClcbiAgfSlcbiAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpXG4gICAgcHJvY2Vzcy5leGl0KDEpXG4gIH0pXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFNQTtBQUNBO0FBQXlDO0FBQUEsK0NBVHpDO0FBQUE7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