obsidian-dev-utils 3.36.1 → 3.36.3

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 (68) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/lib/@types.cjs +1 -16
  3. package/dist/lib/Async.cjs +1 -16
  4. package/dist/lib/Blob.cjs +1 -16
  5. package/dist/lib/DocumentFragment.cjs +1 -16
  6. package/dist/lib/Error.cjs +1 -16
  7. package/dist/lib/Function.cjs +1 -16
  8. package/dist/lib/Object.cjs +1 -11
  9. package/dist/lib/Path.cjs +2 -7
  10. package/dist/lib/RegExp.cjs +1 -16
  11. package/dist/lib/String.cjs +1 -16
  12. package/dist/lib/ValueProvider.cjs +1 -16
  13. package/dist/lib/index.cjs +1 -16
  14. package/dist/lib/obsidian/App.cjs +1 -16
  15. package/dist/lib/obsidian/AttachmentPath.cjs +1 -16
  16. package/dist/lib/obsidian/Backlink.cjs +1 -16
  17. package/dist/lib/obsidian/Callout.cjs +1 -16
  18. package/dist/lib/obsidian/ChainedPromise.cjs +1 -16
  19. package/dist/lib/obsidian/Dataview.cjs +1 -16
  20. package/dist/lib/obsidian/DataviewLink.cjs +1 -16
  21. package/dist/lib/obsidian/FileSystem.cjs +1 -16
  22. package/dist/lib/obsidian/FrontMatter.cjs +1 -11
  23. package/dist/lib/obsidian/Link.cjs +1 -16
  24. package/dist/lib/obsidian/Logger.cjs +1 -16
  25. package/dist/lib/obsidian/MarkdownCodeBlockProcessor.cjs +1 -11
  26. package/dist/lib/obsidian/MetadataCache.cjs +1 -11
  27. package/dist/lib/obsidian/Modal/Alert.cjs +1 -16
  28. package/dist/lib/obsidian/Modal/Confirm.cjs +1 -16
  29. package/dist/lib/obsidian/Modal/Prompt.cjs +1 -16
  30. package/dist/lib/obsidian/Modal/SelectItem.cjs +1 -16
  31. package/dist/lib/obsidian/Modal/index.cjs +1 -16
  32. package/dist/lib/obsidian/ObsidianSettings.cjs +1 -16
  33. package/dist/lib/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +1 -16
  34. package/dist/lib/obsidian/Plugin/Plugin.cjs +1 -16
  35. package/dist/lib/obsidian/Plugin/PluginBase.cjs +1 -11
  36. package/dist/lib/obsidian/Plugin/PluginSettings.cjs +1 -16
  37. package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.cjs +1 -16
  38. package/dist/lib/obsidian/Plugin/UIComponent.cjs +1 -16
  39. package/dist/lib/obsidian/Plugin/index.cjs +1 -16
  40. package/dist/lib/obsidian/RenameDeleteHandler.cjs +1 -11
  41. package/dist/lib/obsidian/ResourceUrl.cjs +1 -16
  42. package/dist/lib/obsidian/Vault.cjs +1 -11
  43. package/dist/lib/obsidian/index.cjs +1 -16
  44. package/dist/lib/scripts/CliUtils.cjs +1 -11
  45. package/dist/lib/scripts/CodeGenerator.cjs +1 -16
  46. package/dist/lib/scripts/ESLint/ESLint.cjs +2 -7
  47. package/dist/lib/scripts/ESLint/eslint.config.cjs +1 -16
  48. package/dist/lib/scripts/ESLint/index.cjs +1 -16
  49. package/dist/lib/scripts/Fs.cjs +1 -16
  50. package/dist/lib/scripts/JSON.cjs +1 -16
  51. package/dist/lib/scripts/NodeModules.cjs +1 -11
  52. package/dist/lib/scripts/Npm.cjs +1 -16
  53. package/dist/lib/scripts/ObsidianDevUtilsRepoPaths.cjs +1 -11
  54. package/dist/lib/scripts/Root.cjs +1 -11
  55. package/dist/lib/scripts/build.cjs +1 -11
  56. package/dist/lib/scripts/cli.cjs +2 -2
  57. package/dist/lib/scripts/esbuild/Dependency.cjs +2 -2
  58. package/dist/lib/scripts/esbuild/ObsidianPluginBuilder.cjs +1 -11
  59. package/dist/lib/scripts/esbuild/copyToObsidianPluginsFolderPlugin.cjs +1 -16
  60. package/dist/lib/scripts/esbuild/fixSourceMapsPlugin.cjs +1 -16
  61. package/dist/lib/scripts/esbuild/index.cjs +1 -11
  62. package/dist/lib/scripts/esbuild/preprocessPlugin.cjs +10 -6
  63. package/dist/lib/scripts/esbuild/renameToCjsPlugin.cjs +1 -11
  64. package/dist/lib/scripts/index.cjs +1 -16
  65. package/dist/lib/scripts/spellcheck.cjs +1 -16
  66. package/dist/lib/scripts/version.cjs +1 -11
  67. package/dist/lib/url.cjs +1 -16
  68. package/package.json +1 -1
@@ -34,16 +34,6 @@ var import_obsidian = require('obsidian');
34
34
  var import_Object = require('../Object.cjs');
35
35
  var import_FileSystem = require('./FileSystem.cjs');
36
36
  var import_Vault = require('./Vault.cjs');
37
- var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
38
- if (typeof require !== "undefined" && typeof module !== "undefined") {
39
- const url = require('node:url');
40
- return url.pathToFileURL(__filename).href;
41
- }
42
- if (typeof window !== "undefined") {
43
- return window.location.href;
44
- }
45
- return __import_meta_url;
46
- })();
47
37
  var __process = globalThis["process"] ?? {
48
38
  "cwd": () => "/",
49
39
  "env": {},
@@ -123,4 +113,4 @@ async function deleteAlias(app, pathOrFile, alias) {
123
113
  deleteAlias,
124
114
  processFrontMatter
125
115
  });
126
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL0Zyb250TWF0dGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19pbXBvcnRfbWV0YV91cmwgPSBnbG9iYWxUaGlzWydpbXBvcnQubWV0YS51cmwnXSA/PyAoKCk9PntpZih0eXBlb2YgcmVxdWlyZSE9PVwidW5kZWZpbmVkXCImJnR5cGVvZiBtb2R1bGUhPT1cInVuZGVmaW5lZFwiKXtjb25zdCB1cmw9cmVxdWlyZShcIm5vZGU6dXJsXCIpO3JldHVybiB1cmwucGF0aFRvRmlsZVVSTChfX2ZpbGVuYW1lKS5ocmVmfWlmKHR5cGVvZiB3aW5kb3chPT1cInVuZGVmaW5lZFwiKXtyZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWZ9cmV0dXJuIGltcG9ydC5tZXRhLnVybH0pKCk7XG52YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIEZyb250TWF0dGVyXG4gKiBUaGlzIG1vZHVsZSBwcm92aWRlcyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgcHJvY2Vzc2luZyBhbmQgbWFuYWdpbmcgWUFNTCBmcm9udCBtYXR0ZXIgaW4gT2JzaWRpYW4gbm90ZXMuXG4gKi9cblxuaW1wb3J0IHtcbiAgQXBwLFxuICBwYXJzZVlhbWwsXG4gIHN0cmluZ2lmeVlhbWxcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IE1heWJlUHJvbWlzZSB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IGRlZXBFcXVhbCB9IGZyb20gJy4uL09iamVjdC50cyc7XG5pbXBvcnQgdHlwZSB7IFBhdGhPckZpbGUgfSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuaW1wb3J0IHsgZ2V0RmlsZSB9IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgeyBwcm9jZXNzV2l0aFJldHJ5IH0gZnJvbSAnLi9WYXVsdC50cyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgZnJvbnQgbWF0dGVyIG9mIGFuIE9ic2lkaWFuIGZpbGUuXG4gKiBAc2VlIHtAbGluayBodHRwczovL2hlbHAub2JzaWRpYW4ubWQvRWRpdGluZythbmQrZm9ybWF0dGluZy9Qcm9wZXJ0aWVzI0RlZmF1bHQrcHJvcGVydGllc31cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPYnNpZGlhbkZyb250TWF0dGVyIHtcbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIGFsaWFzZXMgZm9yIHRoZSBub3RlLlxuICAgKi9cbiAgYWxpYXNlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBDU1MgY2xhc3NlcyB0byBhcHBseSB0byB0aGUgbm90ZS5cbiAgICovXG4gIGNzc2NsYXNzZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQW4gYXJyYXkgb2YgdGFncyBmb3IgdGhlIG5vdGUuXG4gICAqL1xuICB0YWdzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgZnJvbnQgbWF0dGVyIGZvciBwdWJsaXNoaW5nIGluIE9ic2lkaWFuLlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9oZWxwLm9ic2lkaWFuLm1kL0VkaXRpbmcrYW5kK2Zvcm1hdHRpbmcvUHJvcGVydGllcyNQcm9wZXJ0aWVzK2ZvcitPYnNpZGlhbitQdWJsaXNofVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE9ic2lkaWFuUHVibGlzaEZyb250TWF0dGVyIHtcbiAgLyoqXG4gICAqIFRoZSBjb3ZlciBpbWFnZSBmb3IgdGhlIG5vdGUuXG4gICAqL1xuICBjb3Zlcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgbm90ZS5cbiAgICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgaW1hZ2UgZm9yIHRoZSBub3RlLlxuICAgKi9cbiAgaW1hZ2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJtYW5lbnQgbGluayBmb3IgdGhlIG5vdGUuXG4gICAqL1xuICBwZXJtYWxpbms/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIG5vdGUgaXMgcHVibGlzaGVkLlxuICAgKi9cbiAgcHVibGlzaD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29tYmluZWQgZnJvbnQgbWF0dGVyIG9mIGEgZG9jdW1lbnQuXG4gKiBJdCBpcyBhIHVuaW9uIG9mIGN1c3RvbSBmcm9udCBtYXR0ZXIsIE9ic2lkaWFuIGZyb250IG1hdHRlciwgYW5kIGFkZGl0aW9uYWwgcHJvcGVydGllcy5cbiAqIEB0eXBlUGFyYW0gQ3VzdG9tRnJvbnRNYXR0ZXIgLSBUaGUgdHlwZSBvZiBjdXN0b20gZnJvbnQgbWF0dGVyLlxuICovXG5leHBvcnQgdHlwZSBDb21iaW5lZEZyb250TWF0dGVyPEN1c3RvbUZyb250TWF0dGVyPiA9IEN1c3RvbUZyb250TWF0dGVyICYgT2JzaWRpYW5Gcm9udE1hdHRlciAmIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG5jb25zdCBGUk9OVF9NQVRURVJfUkVHX0VYUCA9IC9eLS0tXFxyP1xcbigoPzoufFxccj9cXG4pKj8pXFxyP1xcbj8tLS0oPzpcXHI/XFxufCQpKCg/Oi58XFxyP1xcbikqKS87XG5cbi8qKlxuICogUHJvY2Vzc2VzIHRoZSBmcm9udCBtYXR0ZXIgb2YgYSBnaXZlbiBmaWxlLCBhbGxvd2luZyBtb2RpZmljYXRpb25zIHZpYSBhIHByb3ZpZGVkIGZ1bmN0aW9uLlxuICpcbiAqIEB0eXBlUGFyYW0gQ3VzdG9tRnJvbnRNYXR0ZXIgLSBUaGUgdHlwZSBvZiBjdXN0b20gZnJvbnQgbWF0dGVyLlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIFRGaWxlIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIG5vdGUuXG4gKiBAcGFyYW0gZnJvbnRNYXR0ZXJGbiAtIEEgZnVuY3Rpb24gdGhhdCBtb2RpZmllcyB0aGUgZnJvbnQgbWF0dGVyLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZnJvbnQgbWF0dGVyIGhhcyBiZWVuIHByb2Nlc3NlZCBhbmQgc2F2ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcm9jZXNzRnJvbnRNYXR0ZXI8Q3VzdG9tRnJvbnRNYXR0ZXIgPSB1bmtub3duPihhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgZnJvbnRNYXR0ZXJGbjogKGZyb250TWF0dGVyOiBDb21iaW5lZEZyb250TWF0dGVyPEN1c3RvbUZyb250TWF0dGVyPikgPT4gTWF5YmVQcm9taXNlPHZvaWQ+KTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aE9yRmlsZSk7XG5cbiAgYXdhaXQgcHJvY2Vzc1dpdGhSZXRyeShhcHAsIGZpbGUsIGFzeW5jIChjb250ZW50KSA9PiB7XG4gICAgY29uc3QgbWF0Y2ggPSBGUk9OVF9NQVRURVJfUkVHX0VYUC5leGVjKGNvbnRlbnQpO1xuICAgIGxldCBmcm9udE1hdHRlclN0cjogc3RyaW5nO1xuICAgIGxldCBtYWluQ29udGVudDogc3RyaW5nO1xuICAgIGlmIChtYXRjaCkge1xuICAgICAgZnJvbnRNYXR0ZXJTdHIgPSBtYXRjaFsxXT8udHJpbSgpID8/ICcnO1xuICAgICAgbWFpbkNvbnRlbnQgPSBtYXRjaFsyXT8udHJpbSgpID8/ICcnO1xuICAgIH0gZWxzZSB7XG4gICAgICBmcm9udE1hdHRlclN0ciA9ICcnO1xuICAgICAgbWFpbkNvbnRlbnQgPSBjb250ZW50LnRyaW0oKTtcbiAgICB9XG5cbiAgICBpZiAoIW1haW5Db250ZW50KSB7XG4gICAgICBtYWluQ29udGVudCA9ICdcXG4nO1xuICAgIH0gZWxzZSB7XG4gICAgICBtYWluQ29udGVudCA9IGBcXG4ke21haW5Db250ZW50fVxcbmA7XG4gICAgfVxuXG4gICAgY29uc3Qgb2xkRnJvbnRNYXR0ZXIgPSAocGFyc2VZYW1sKGZyb250TWF0dGVyU3RyKSA/PyB7fSkgYXMgQ29tYmluZWRGcm9udE1hdHRlcjxDdXN0b21Gcm9udE1hdHRlcj47XG4gICAgY29uc3QgbmV3RnJvbnRNYXR0ZXIgPSAocGFyc2VZYW1sKGZyb250TWF0dGVyU3RyKSA/PyB7fSkgYXMgQ29tYmluZWRGcm9udE1hdHRlcjxDdXN0b21Gcm9udE1hdHRlcj47XG4gICAgYXdhaXQgZnJvbnRNYXR0ZXJGbihuZXdGcm9udE1hdHRlcik7XG5cbiAgICBpZiAoZGVlcEVxdWFsKG9sZEZyb250TWF0dGVyLCBuZXdGcm9udE1hdHRlcikpIHtcbiAgICAgIHJldHVybiBjb250ZW50O1xuICAgIH1cblxuICAgIGxldCBuZXdGcm9udE1hdHRlclN0ciA9IHN0cmluZ2lmeVlhbWwobmV3RnJvbnRNYXR0ZXIpO1xuICAgIGlmIChuZXdGcm9udE1hdHRlclN0ciA9PT0gJ3t9XFxuJykge1xuICAgICAgbmV3RnJvbnRNYXR0ZXJTdHIgPSAnJztcbiAgICB9XG5cbiAgICBjb25zdCBuZXdDb250ZW50ID0gYC0tLVxcbiR7bmV3RnJvbnRNYXR0ZXJTdHJ9LS0tXFxuJHttYWluQ29udGVudH1gO1xuICAgIHJldHVybiBuZXdDb250ZW50O1xuICB9KTtcbn1cblxuLyoqXG4gKiBBZGRzIGFuIGFsaWFzIHRvIHRoZSBmcm9udCBtYXR0ZXIgb2YgYSBnaXZlbiBmaWxlIGlmIGl0IGRvZXMgbm90IGFscmVhZHkgZXhpc3QuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIFRGaWxlIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIG5vdGUuXG4gKiBAcGFyYW0gYWxpYXMgLSBUaGUgYWxpYXMgdG8gYWRkLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgYWxpYXMgaGFzIGJlZW4gYWRkZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhZGRBbGlhcyhhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgYWxpYXM/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCFhbGlhcykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aE9yRmlsZSk7XG4gIGlmIChhbGlhcyA9PT0gZmlsZS5iYXNlbmFtZSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGF3YWl0IHByb2Nlc3NGcm9udE1hdHRlcihhcHAsIHBhdGhPckZpbGUsIChmcm9udE1hdHRlcikgPT4ge1xuICAgIGlmICghZnJvbnRNYXR0ZXIuYWxpYXNlcykge1xuICAgICAgZnJvbnRNYXR0ZXIuYWxpYXNlcyA9IFtdO1xuICAgIH1cblxuICAgIGlmICghZnJvbnRNYXR0ZXIuYWxpYXNlcy5pbmNsdWRlcyhhbGlhcykpIHtcbiAgICAgIGZyb250TWF0dGVyLmFsaWFzZXMucHVzaChhbGlhcyk7XG4gICAgfVxuICB9KTtcbn1cblxuLyoqXG4gKiBEZWxldGVzIGFuIGFsaWFzIGZyb20gdGhlIGZyb250IG1hdHRlciBvZiBhIGdpdmVuIGZpbGUgaWYgaXQgZXhpc3RzLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBURmlsZSBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBub3RlLlxuICogQHBhcmFtIGFsaWFzIC0gVGhlIGFsaWFzIHRvIGRlbGV0ZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGFsaWFzIGhhcyBiZWVuIGRlbGV0ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWxldGVBbGlhcyhhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgYWxpYXM/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCFhbGlhcykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGF3YWl0IHByb2Nlc3NGcm9udE1hdHRlcihhcHAsIHBhdGhPckZpbGUsIChmcm9udE1hdHRlcikgPT4ge1xuICAgIGlmICghZnJvbnRNYXR0ZXIuYWxpYXNlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGZyb250TWF0dGVyLmFsaWFzZXMgPSBmcm9udE1hdHRlci5hbGlhc2VzLmZpbHRlcigoYSkgPT4gYSAhPSBhbGlhcyk7XG5cbiAgICBpZiAoZnJvbnRNYXR0ZXIuYWxpYXNlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIGRlbGV0ZSBmcm9udE1hdHRlci5hbGlhc2VzO1xuICAgIH1cbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQSxzQkFJTztBQUdQLG9CQUEwQjtBQUUxQix3QkFBd0I7QUFDeEIsbUJBQWlDO0FBckJqQyxJQUFJLG9CQUFvQixXQUFXLGlCQUFpQixNQUFNLE1BQUk7QUFBQyxNQUFHLE9BQU8sWUFBVSxlQUFhLE9BQU8sV0FBUyxhQUFZO0FBQUMsVUFBTSxNQUFJLFFBQVEsVUFBVTtBQUFFLFdBQU8sSUFBSSxjQUFjLFVBQVUsRUFBRTtBQUFBLEVBQUk7QUFBQyxNQUFHLE9BQU8sV0FBUyxhQUFZO0FBQUMsV0FBTyxPQUFPLFNBQVM7QUFBQSxFQUFJO0FBQUMsU0FBTztBQUFlLEdBQUc7QUFDMVIsSUFBSSxZQUFZLFdBQVcsU0FBUyxLQUFLO0FBQUEsRUFDdkMsT0FBTyxNQUFJO0FBQUEsRUFDWCxPQUFPLENBQUM7QUFBQSxFQUNSLFlBQVk7QUFDZDtBQTZFQSxNQUFNLHVCQUF1QjtBQVc3QixlQUFzQixtQkFBZ0QsS0FBVSxZQUF3QixlQUEyRztBQUNqTixRQUFNLFdBQU8sMkJBQVEsS0FBSyxVQUFVO0FBRXBDLFlBQU0sK0JBQWlCLEtBQUssTUFBTSxPQUFPLFlBQVk7QUFDbkQsVUFBTSxRQUFRLHFCQUFxQixLQUFLLE9BQU87QUFDL0MsUUFBSTtBQUNKLFFBQUk7QUFDSixRQUFJLE9BQU87QUFDVCx1QkFBaUIsTUFBTSxDQUFDLEdBQUcsS0FBSyxLQUFLO0FBQ3JDLG9CQUFjLE1BQU0sQ0FBQyxHQUFHLEtBQUssS0FBSztBQUFBLElBQ3BDLE9BQU87QUFDTCx1QkFBaUI7QUFDakIsb0JBQWMsUUFBUSxLQUFLO0FBQUEsSUFDN0I7QUFFQSxRQUFJLENBQUMsYUFBYTtBQUNoQixvQkFBYztBQUFBLElBQ2hCLE9BQU87QUFDTCxvQkFBYztBQUFBLEVBQUssV0FBVztBQUFBO0FBQUEsSUFDaEM7QUFFQSxVQUFNLHFCQUFrQiwyQkFBVSxjQUFjLEtBQUssQ0FBQztBQUN0RCxVQUFNLHFCQUFrQiwyQkFBVSxjQUFjLEtBQUssQ0FBQztBQUN0RCxVQUFNLGNBQWMsY0FBYztBQUVsQyxZQUFJLHlCQUFVLGdCQUFnQixjQUFjLEdBQUc7QUFDN0MsYUFBTztBQUFBLElBQ1Q7QUFFQSxRQUFJLHdCQUFvQiwrQkFBYyxjQUFjO0FBQ3BELFFBQUksc0JBQXNCLFFBQVE7QUFDaEMsMEJBQW9CO0FBQUEsSUFDdEI7QUFFQSxVQUFNLGFBQWE7QUFBQSxFQUFRLGlCQUFpQjtBQUFBLEVBQVEsV0FBVztBQUMvRCxXQUFPO0FBQUEsRUFDVCxDQUFDO0FBQ0g7QUFVQSxlQUFzQixTQUFTLEtBQVUsWUFBd0IsT0FBK0I7QUFDOUYsTUFBSSxDQUFDLE9BQU87QUFDVjtBQUFBLEVBQ0Y7QUFFQSxRQUFNLFdBQU8sMkJBQVEsS0FBSyxVQUFVO0FBQ3BDLE1BQUksVUFBVSxLQUFLLFVBQVU7QUFDM0I7QUFBQSxFQUNGO0FBRUEsUUFBTSxtQkFBbUIsS0FBSyxZQUFZLENBQUMsZ0JBQWdCO0FBQ3pELFFBQUksQ0FBQyxZQUFZLFNBQVM7QUFDeEIsa0JBQVksVUFBVSxDQUFDO0FBQUEsSUFDekI7QUFFQSxRQUFJLENBQUMsWUFBWSxRQUFRLFNBQVMsS0FBSyxHQUFHO0FBQ3hDLGtCQUFZLFFBQVEsS0FBSyxLQUFLO0FBQUEsSUFDaEM7QUFBQSxFQUNGLENBQUM7QUFDSDtBQVVBLGVBQXNCLFlBQVksS0FBVSxZQUF3QixPQUErQjtBQUNqRyxNQUFJLENBQUMsT0FBTztBQUNWO0FBQUEsRUFDRjtBQUVBLFFBQU0sbUJBQW1CLEtBQUssWUFBWSxDQUFDLGdCQUFnQjtBQUN6RCxRQUFJLENBQUMsWUFBWSxTQUFTO0FBQ3hCO0FBQUEsSUFDRjtBQUVBLGdCQUFZLFVBQVUsWUFBWSxRQUFRLE9BQU8sQ0FBQyxNQUFNLEtBQUssS0FBSztBQUVsRSxRQUFJLFlBQVksUUFBUSxXQUFXLEdBQUc7QUFDcEMsYUFBTyxZQUFZO0FBQUEsSUFDckI7QUFBQSxFQUNGLENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFtdCn0K
116
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL0Zyb250TWF0dGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIEZyb250TWF0dGVyXG4gKiBUaGlzIG1vZHVsZSBwcm92aWRlcyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgcHJvY2Vzc2luZyBhbmQgbWFuYWdpbmcgWUFNTCBmcm9udCBtYXR0ZXIgaW4gT2JzaWRpYW4gbm90ZXMuXG4gKi9cblxuaW1wb3J0IHtcbiAgQXBwLFxuICBwYXJzZVlhbWwsXG4gIHN0cmluZ2lmeVlhbWxcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IE1heWJlUHJvbWlzZSB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IGRlZXBFcXVhbCB9IGZyb20gJy4uL09iamVjdC50cyc7XG5pbXBvcnQgdHlwZSB7IFBhdGhPckZpbGUgfSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuaW1wb3J0IHsgZ2V0RmlsZSB9IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgeyBwcm9jZXNzV2l0aFJldHJ5IH0gZnJvbSAnLi9WYXVsdC50cyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgZnJvbnQgbWF0dGVyIG9mIGFuIE9ic2lkaWFuIGZpbGUuXG4gKiBAc2VlIHtAbGluayBodHRwczovL2hlbHAub2JzaWRpYW4ubWQvRWRpdGluZythbmQrZm9ybWF0dGluZy9Qcm9wZXJ0aWVzI0RlZmF1bHQrcHJvcGVydGllc31cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPYnNpZGlhbkZyb250TWF0dGVyIHtcbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIGFsaWFzZXMgZm9yIHRoZSBub3RlLlxuICAgKi9cbiAgYWxpYXNlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBDU1MgY2xhc3NlcyB0byBhcHBseSB0byB0aGUgbm90ZS5cbiAgICovXG4gIGNzc2NsYXNzZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQW4gYXJyYXkgb2YgdGFncyBmb3IgdGhlIG5vdGUuXG4gICAqL1xuICB0YWdzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgZnJvbnQgbWF0dGVyIGZvciBwdWJsaXNoaW5nIGluIE9ic2lkaWFuLlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9oZWxwLm9ic2lkaWFuLm1kL0VkaXRpbmcrYW5kK2Zvcm1hdHRpbmcvUHJvcGVydGllcyNQcm9wZXJ0aWVzK2ZvcitPYnNpZGlhbitQdWJsaXNofVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE9ic2lkaWFuUHVibGlzaEZyb250TWF0dGVyIHtcbiAgLyoqXG4gICAqIFRoZSBjb3ZlciBpbWFnZSBmb3IgdGhlIG5vdGUuXG4gICAqL1xuICBjb3Zlcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIGZvciB0aGUgbm90ZS5cbiAgICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgaW1hZ2UgZm9yIHRoZSBub3RlLlxuICAgKi9cbiAgaW1hZ2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJtYW5lbnQgbGluayBmb3IgdGhlIG5vdGUuXG4gICAqL1xuICBwZXJtYWxpbms/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIG5vdGUgaXMgcHVibGlzaGVkLlxuICAgKi9cbiAgcHVibGlzaD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29tYmluZWQgZnJvbnQgbWF0dGVyIG9mIGEgZG9jdW1lbnQuXG4gKiBJdCBpcyBhIHVuaW9uIG9mIGN1c3RvbSBmcm9udCBtYXR0ZXIsIE9ic2lkaWFuIGZyb250IG1hdHRlciwgYW5kIGFkZGl0aW9uYWwgcHJvcGVydGllcy5cbiAqIEB0eXBlUGFyYW0gQ3VzdG9tRnJvbnRNYXR0ZXIgLSBUaGUgdHlwZSBvZiBjdXN0b20gZnJvbnQgbWF0dGVyLlxuICovXG5leHBvcnQgdHlwZSBDb21iaW5lZEZyb250TWF0dGVyPEN1c3RvbUZyb250TWF0dGVyPiA9IEN1c3RvbUZyb250TWF0dGVyICYgT2JzaWRpYW5Gcm9udE1hdHRlciAmIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG5jb25zdCBGUk9OVF9NQVRURVJfUkVHX0VYUCA9IC9eLS0tXFxyP1xcbigoPzoufFxccj9cXG4pKj8pXFxyP1xcbj8tLS0oPzpcXHI/XFxufCQpKCg/Oi58XFxyP1xcbikqKS87XG5cbi8qKlxuICogUHJvY2Vzc2VzIHRoZSBmcm9udCBtYXR0ZXIgb2YgYSBnaXZlbiBmaWxlLCBhbGxvd2luZyBtb2RpZmljYXRpb25zIHZpYSBhIHByb3ZpZGVkIGZ1bmN0aW9uLlxuICpcbiAqIEB0eXBlUGFyYW0gQ3VzdG9tRnJvbnRNYXR0ZXIgLSBUaGUgdHlwZSBvZiBjdXN0b20gZnJvbnQgbWF0dGVyLlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIFRGaWxlIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIG5vdGUuXG4gKiBAcGFyYW0gZnJvbnRNYXR0ZXJGbiAtIEEgZnVuY3Rpb24gdGhhdCBtb2RpZmllcyB0aGUgZnJvbnQgbWF0dGVyLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZnJvbnQgbWF0dGVyIGhhcyBiZWVuIHByb2Nlc3NlZCBhbmQgc2F2ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcm9jZXNzRnJvbnRNYXR0ZXI8Q3VzdG9tRnJvbnRNYXR0ZXIgPSB1bmtub3duPihhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgZnJvbnRNYXR0ZXJGbjogKGZyb250TWF0dGVyOiBDb21iaW5lZEZyb250TWF0dGVyPEN1c3RvbUZyb250TWF0dGVyPikgPT4gTWF5YmVQcm9taXNlPHZvaWQ+KTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aE9yRmlsZSk7XG5cbiAgYXdhaXQgcHJvY2Vzc1dpdGhSZXRyeShhcHAsIGZpbGUsIGFzeW5jIChjb250ZW50KSA9PiB7XG4gICAgY29uc3QgbWF0Y2ggPSBGUk9OVF9NQVRURVJfUkVHX0VYUC5leGVjKGNvbnRlbnQpO1xuICAgIGxldCBmcm9udE1hdHRlclN0cjogc3RyaW5nO1xuICAgIGxldCBtYWluQ29udGVudDogc3RyaW5nO1xuICAgIGlmIChtYXRjaCkge1xuICAgICAgZnJvbnRNYXR0ZXJTdHIgPSBtYXRjaFsxXT8udHJpbSgpID8/ICcnO1xuICAgICAgbWFpbkNvbnRlbnQgPSBtYXRjaFsyXT8udHJpbSgpID8/ICcnO1xuICAgIH0gZWxzZSB7XG4gICAgICBmcm9udE1hdHRlclN0ciA9ICcnO1xuICAgICAgbWFpbkNvbnRlbnQgPSBjb250ZW50LnRyaW0oKTtcbiAgICB9XG5cbiAgICBpZiAoIW1haW5Db250ZW50KSB7XG4gICAgICBtYWluQ29udGVudCA9ICdcXG4nO1xuICAgIH0gZWxzZSB7XG4gICAgICBtYWluQ29udGVudCA9IGBcXG4ke21haW5Db250ZW50fVxcbmA7XG4gICAgfVxuXG4gICAgY29uc3Qgb2xkRnJvbnRNYXR0ZXIgPSAocGFyc2VZYW1sKGZyb250TWF0dGVyU3RyKSA/PyB7fSkgYXMgQ29tYmluZWRGcm9udE1hdHRlcjxDdXN0b21Gcm9udE1hdHRlcj47XG4gICAgY29uc3QgbmV3RnJvbnRNYXR0ZXIgPSAocGFyc2VZYW1sKGZyb250TWF0dGVyU3RyKSA/PyB7fSkgYXMgQ29tYmluZWRGcm9udE1hdHRlcjxDdXN0b21Gcm9udE1hdHRlcj47XG4gICAgYXdhaXQgZnJvbnRNYXR0ZXJGbihuZXdGcm9udE1hdHRlcik7XG5cbiAgICBpZiAoZGVlcEVxdWFsKG9sZEZyb250TWF0dGVyLCBuZXdGcm9udE1hdHRlcikpIHtcbiAgICAgIHJldHVybiBjb250ZW50O1xuICAgIH1cblxuICAgIGxldCBuZXdGcm9udE1hdHRlclN0ciA9IHN0cmluZ2lmeVlhbWwobmV3RnJvbnRNYXR0ZXIpO1xuICAgIGlmIChuZXdGcm9udE1hdHRlclN0ciA9PT0gJ3t9XFxuJykge1xuICAgICAgbmV3RnJvbnRNYXR0ZXJTdHIgPSAnJztcbiAgICB9XG5cbiAgICBjb25zdCBuZXdDb250ZW50ID0gYC0tLVxcbiR7bmV3RnJvbnRNYXR0ZXJTdHJ9LS0tXFxuJHttYWluQ29udGVudH1gO1xuICAgIHJldHVybiBuZXdDb250ZW50O1xuICB9KTtcbn1cblxuLyoqXG4gKiBBZGRzIGFuIGFsaWFzIHRvIHRoZSBmcm9udCBtYXR0ZXIgb2YgYSBnaXZlbiBmaWxlIGlmIGl0IGRvZXMgbm90IGFscmVhZHkgZXhpc3QuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIFRGaWxlIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIG5vdGUuXG4gKiBAcGFyYW0gYWxpYXMgLSBUaGUgYWxpYXMgdG8gYWRkLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgYWxpYXMgaGFzIGJlZW4gYWRkZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhZGRBbGlhcyhhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgYWxpYXM/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCFhbGlhcykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aE9yRmlsZSk7XG4gIGlmIChhbGlhcyA9PT0gZmlsZS5iYXNlbmFtZSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGF3YWl0IHByb2Nlc3NGcm9udE1hdHRlcihhcHAsIHBhdGhPckZpbGUsIChmcm9udE1hdHRlcikgPT4ge1xuICAgIGlmICghZnJvbnRNYXR0ZXIuYWxpYXNlcykge1xuICAgICAgZnJvbnRNYXR0ZXIuYWxpYXNlcyA9IFtdO1xuICAgIH1cblxuICAgIGlmICghZnJvbnRNYXR0ZXIuYWxpYXNlcy5pbmNsdWRlcyhhbGlhcykpIHtcbiAgICAgIGZyb250TWF0dGVyLmFsaWFzZXMucHVzaChhbGlhcyk7XG4gICAgfVxuICB9KTtcbn1cblxuLyoqXG4gKiBEZWxldGVzIGFuIGFsaWFzIGZyb20gdGhlIGZyb250IG1hdHRlciBvZiBhIGdpdmVuIGZpbGUgaWYgaXQgZXhpc3RzLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBURmlsZSBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBub3RlLlxuICogQHBhcmFtIGFsaWFzIC0gVGhlIGFsaWFzIHRvIGRlbGV0ZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGFsaWFzIGhhcyBiZWVuIGRlbGV0ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWxldGVBbGlhcyhhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgYWxpYXM/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCFhbGlhcykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGF3YWl0IHByb2Nlc3NGcm9udE1hdHRlcihhcHAsIHBhdGhPckZpbGUsIChmcm9udE1hdHRlcikgPT4ge1xuICAgIGlmICghZnJvbnRNYXR0ZXIuYWxpYXNlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGZyb250TWF0dGVyLmFsaWFzZXMgPSBmcm9udE1hdHRlci5hbGlhc2VzLmZpbHRlcigoYSkgPT4gYSAhPSBhbGlhcyk7XG5cbiAgICBpZiAoZnJvbnRNYXR0ZXIuYWxpYXNlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIGRlbGV0ZSBmcm9udE1hdHRlci5hbGlhc2VzO1xuICAgIH1cbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFVQSxzQkFJTztBQUdQLG9CQUEwQjtBQUUxQix3QkFBd0I7QUFDeEIsbUJBQWlDO0FBcEJqQyxJQUFJLFlBQVksV0FBVyxTQUFTLEtBQUs7QUFBQSxFQUN2QyxPQUFPLE1BQUk7QUFBQSxFQUNYLE9BQU8sQ0FBQztBQUFBLEVBQ1IsWUFBWTtBQUNkO0FBNkVBLE1BQU0sdUJBQXVCO0FBVzdCLGVBQXNCLG1CQUFnRCxLQUFVLFlBQXdCLGVBQTJHO0FBQ2pOLFFBQU0sV0FBTywyQkFBUSxLQUFLLFVBQVU7QUFFcEMsWUFBTSwrQkFBaUIsS0FBSyxNQUFNLE9BQU8sWUFBWTtBQUNuRCxVQUFNLFFBQVEscUJBQXFCLEtBQUssT0FBTztBQUMvQyxRQUFJO0FBQ0osUUFBSTtBQUNKLFFBQUksT0FBTztBQUNULHVCQUFpQixNQUFNLENBQUMsR0FBRyxLQUFLLEtBQUs7QUFDckMsb0JBQWMsTUFBTSxDQUFDLEdBQUcsS0FBSyxLQUFLO0FBQUEsSUFDcEMsT0FBTztBQUNMLHVCQUFpQjtBQUNqQixvQkFBYyxRQUFRLEtBQUs7QUFBQSxJQUM3QjtBQUVBLFFBQUksQ0FBQyxhQUFhO0FBQ2hCLG9CQUFjO0FBQUEsSUFDaEIsT0FBTztBQUNMLG9CQUFjO0FBQUEsRUFBSyxXQUFXO0FBQUE7QUFBQSxJQUNoQztBQUVBLFVBQU0scUJBQWtCLDJCQUFVLGNBQWMsS0FBSyxDQUFDO0FBQ3RELFVBQU0scUJBQWtCLDJCQUFVLGNBQWMsS0FBSyxDQUFDO0FBQ3RELFVBQU0sY0FBYyxjQUFjO0FBRWxDLFlBQUkseUJBQVUsZ0JBQWdCLGNBQWMsR0FBRztBQUM3QyxhQUFPO0FBQUEsSUFDVDtBQUVBLFFBQUksd0JBQW9CLCtCQUFjLGNBQWM7QUFDcEQsUUFBSSxzQkFBc0IsUUFBUTtBQUNoQywwQkFBb0I7QUFBQSxJQUN0QjtBQUVBLFVBQU0sYUFBYTtBQUFBLEVBQVEsaUJBQWlCO0FBQUEsRUFBUSxXQUFXO0FBQy9ELFdBQU87QUFBQSxFQUNULENBQUM7QUFDSDtBQVVBLGVBQXNCLFNBQVMsS0FBVSxZQUF3QixPQUErQjtBQUM5RixNQUFJLENBQUMsT0FBTztBQUNWO0FBQUEsRUFDRjtBQUVBLFFBQU0sV0FBTywyQkFBUSxLQUFLLFVBQVU7QUFDcEMsTUFBSSxVQUFVLEtBQUssVUFBVTtBQUMzQjtBQUFBLEVBQ0Y7QUFFQSxRQUFNLG1CQUFtQixLQUFLLFlBQVksQ0FBQyxnQkFBZ0I7QUFDekQsUUFBSSxDQUFDLFlBQVksU0FBUztBQUN4QixrQkFBWSxVQUFVLENBQUM7QUFBQSxJQUN6QjtBQUVBLFFBQUksQ0FBQyxZQUFZLFFBQVEsU0FBUyxLQUFLLEdBQUc7QUFDeEMsa0JBQVksUUFBUSxLQUFLLEtBQUs7QUFBQSxJQUNoQztBQUFBLEVBQ0YsQ0FBQztBQUNIO0FBVUEsZUFBc0IsWUFBWSxLQUFVLFlBQXdCLE9BQStCO0FBQ2pHLE1BQUksQ0FBQyxPQUFPO0FBQ1Y7QUFBQSxFQUNGO0FBRUEsUUFBTSxtQkFBbUIsS0FBSyxZQUFZLENBQUMsZ0JBQWdCO0FBQ3pELFFBQUksQ0FBQyxZQUFZLFNBQVM7QUFDeEI7QUFBQSxJQUNGO0FBRUEsZ0JBQVksVUFBVSxZQUFZLFFBQVEsT0FBTyxDQUFDLE1BQU0sS0FBSyxLQUFLO0FBRWxFLFFBQUksWUFBWSxRQUFRLFdBQVcsR0FBRztBQUNwQyxhQUFPLFlBQVk7QUFBQSxJQUNyQjtBQUFBLEVBQ0YsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -46,21 +46,6 @@ var import_FileSystem = require('./FileSystem.cjs');
46
46
  var import_MetadataCache = require('./MetadataCache.cjs');
47
47
  var import_ObsidianSettings = require('./ObsidianSettings.cjs');
48
48
  var import_Vault = require('./Vault.cjs');
49
- var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
50
- if (typeof require !== "undefined" && typeof module !== "undefined") {
51
- const url = require('node:url');
52
- return url.pathToFileURL(__filename).href;
53
- }
54
- if (typeof window !== "undefined") {
55
- return window.location.href;
56
- }
57
- return __import_meta_url;
58
- })();
59
- var __process = globalThis["process"] ?? {
60
- "cwd": () => "/",
61
- "env": {},
62
- "platform": "android"
63
- };
64
49
  const SPECIAL_LINK_SYMBOLS_REGEXP = /[\\\x00\x08\x0B\x0C\x0E-\x1F ]/g;
65
50
  const SPECIAL_MARKDOWN_LINK_SYMBOLS_REGEX = /[\\[\]<>_*~=`$]/g;
66
51
  function splitSubpath(link) {
@@ -298,4 +283,4 @@ function testAngleBrackets(link) {
298
283
  updateLink,
299
284
  updateLinksInFile
300
285
  });
301
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL0xpbmsudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbInZhciBfX2ltcG9ydF9tZXRhX3VybCA9IGdsb2JhbFRoaXNbJ2ltcG9ydC5tZXRhLnVybCddID8/ICgoKT0+e2lmKHR5cGVvZiByZXF1aXJlIT09XCJ1bmRlZmluZWRcIiYmdHlwZW9mIG1vZHVsZSE9PVwidW5kZWZpbmVkXCIpe2NvbnN0IHVybD1yZXF1aXJlKFwibm9kZTp1cmxcIik7cmV0dXJuIHVybC5wYXRoVG9GaWxlVVJMKF9fZmlsZW5hbWUpLmhyZWZ9aWYodHlwZW9mIHdpbmRvdyE9PVwidW5kZWZpbmVkXCIpe3JldHVybiB3aW5kb3cubG9jYXRpb24uaHJlZn1yZXR1cm4gaW1wb3J0Lm1ldGEudXJsfSkoKTtcbnZhciBfX3Byb2Nlc3MgPSBnbG9iYWxUaGlzWydwcm9jZXNzJ10gPz8ge1xuICBcImN3ZFwiOiAoKT0+XCIvXCIsXG4gIFwiZW52XCI6IHt9LFxuICBcInBsYXRmb3JtXCI6IFwiYW5kcm9pZFwiXG59O1xuLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gTGlua1xuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0aWVzIGZvciBoYW5kbGluZyBhbmQgdXBkYXRpbmcgbGlua3Mgd2l0aGluIE9ic2lkaWFuIHZhdWx0cy4gSXQgaW5jbHVkZXNcbiAqIGZ1bmN0aW9ucyB0byBzcGxpdCBwYXRocywgdXBkYXRlIGxpbmtzIGluIGZpbGVzLCBhbmQgZ2VuZXJhdGUgbWFya2Rvd24gbGlua3Mgd2l0aCB2YXJpb3VzIG9wdGlvbnMuXG4gKiBUaGUgZnVuY3Rpb25zIGludGVncmF0ZSB3aXRoIE9ic2lkaWFuJ3MgQVBJIHRvIGVuc3VyZSB0aGF0IGxpbmtzIGFyZSBtYW5hZ2VkIGNvcnJlY3RseSB3aXRoaW4gdGhlIHZhdWx0LlxuICoqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIEFwcCxcbiAgUmVmZXJlbmNlQ2FjaGUsXG4gIFRGaWxlXG59IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB7IG5vcm1hbGl6ZVBhdGggfSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHtcbiAgTWF5YmVQcm9taXNlLFxuICBSZXRyeU9wdGlvbnNcbn0gZnJvbSAnLi4vQXN5bmMudHMnO1xuaW1wb3J0IHtcbiAgYmFzZW5hbWUsXG4gIGRpcm5hbWUsXG4gIGV4dG5hbWUsXG4gIGpvaW4sXG4gIHJlbGF0aXZlXG59IGZyb20gJy4uL1BhdGgudHMnO1xuaW1wb3J0IHsgbm9ybWFsaXplIH0gZnJvbSAnLi4vU3RyaW5nLnRzJztcbmltcG9ydCB0eXBlIHsgUGF0aE9yRmlsZSB9IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQge1xuICBnZXRGaWxlLFxuICBnZXRQYXRoLFxuICBpc01hcmtkb3duRmlsZSxcbiAgdHJpbU1hcmtkb3duRXh0ZW5zaW9uXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQge1xuICBnZXRBbGxMaW5rcyxcbiAgZ2V0Q2FjaGVTYWZlLFxuICB0ZW1wUmVnaXN0ZXJGaWxlQW5kUnVuXG59IGZyb20gJy4vTWV0YWRhdGFDYWNoZS50cyc7XG5pbXBvcnQge1xuICBzaG91bGRVc2VSZWxhdGl2ZUxpbmtzLFxuICBzaG91bGRVc2VXaWtpbGlua3Ncbn0gZnJvbSAnLi9PYnNpZGlhblNldHRpbmdzLnRzJztcbmltcG9ydCB0eXBlIHsgRmlsZUNoYW5nZSB9IGZyb20gJy4vVmF1bHQudHMnO1xuaW1wb3J0IHsgYXBwbHlGaWxlQ2hhbmdlcyB9IGZyb20gJy4vVmF1bHQudHMnO1xuXG4vKipcbiAqIFJlZ3VsYXIgZXhwcmVzc2lvbiBmb3Igc3BlY2lhbCBsaW5rIHN5bWJvbHMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250cm9sLXJlZ2V4XG5jb25zdCBTUEVDSUFMX0xJTktfU1lNQk9MU19SRUdFWFAgPSAvW1xcXFxcXHgwMFxceDA4XFx4MEJcXHgwQ1xceDBFLVxceDFGIF0vZztcblxuLyoqXG4gKiBSZWd1bGFyIGV4cHJlc3Npb24gZm9yIHNwZWNpYWwgbWFya2Rvd24gbGluayBzeW1ib2xzLlxuICovXG5jb25zdCBTUEVDSUFMX01BUktET1dOX0xJTktfU1lNQk9MU19SRUdFWCA9IC9bXFxcXFtcXF08Pl8qfj1gJF0vZztcblxuLyoqXG4gKiBTcGxpdHMgYSBsaW5rIGludG8gaXRzIGxpbmsgcGF0aCBhbmQgc3VicGF0aC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTcGxpdFN1YnBhdGhSZXN1bHQge1xuICAvKipcbiAgICogVGhlIGxpbmsgcGF0aC5cbiAgICovXG4gIGxpbmtQYXRoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdWJwYXRoLlxuICAgKi9cbiAgc3VicGF0aDogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIFNwbGl0cyBhIGxpbmsgaW50byBpdHMgbGluayBwYXRoIGFuZCBzdWJwYXRoLlxuICpcbiAqIEBwYXJhbSBsaW5rIC0gVGhlIGxpbmsgdG8gc3BsaXQuXG4gKiBAcmV0dXJucyBBbiBvYmplY3QgY29udGFpbmluZyB0aGUgbGluayBwYXRoIGFuZCBzdWJwYXRoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc3BsaXRTdWJwYXRoKGxpbms6IHN0cmluZyk6IFNwbGl0U3VicGF0aFJlc3VsdCB7XG4gIGNvbnN0IFNVQlBBVEhfU0VQQVJBVE9SID0gJyMnO1xuICBjb25zdCBbbGlua1BhdGggPSAnJywgc3VicGF0aF0gPSBub3JtYWxpemUobGluaykuc3BsaXQoU1VCUEFUSF9TRVBBUkFUT1IpO1xuICByZXR1cm4ge1xuICAgIGxpbmtQYXRoLFxuICAgIHN1YnBhdGg6IHN1YnBhdGggPyBTVUJQQVRIX1NFUEFSQVRPUiArIHN1YnBhdGggOiB1bmRlZmluZWRcbiAgfTtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciB1cGRhdGluZyBsaW5rcyBpbiBhIGZpbGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlTGlua3NJbkZpbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBvYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIGZpbGUgdG8gdXBkYXRlIHRoZSBsaW5rcyBpbi5cbiAgICovXG4gIHBhdGhPckZpbGU6IFBhdGhPckZpbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBvbGQgcGF0aCBvZiB0aGUgZmlsZS5cbiAgICovXG4gIG9sZFBhdGhPckZpbGU/OiBQYXRoT3JGaWxlIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBBIG1hcCBvZiBvbGQgYW5kIG5ldyBwYXRocyBmb3IgcmVuYW1pbmcgbGlua3MuXG4gICAqL1xuICByZW5hbWVNYXA/OiBNYXA8c3RyaW5nLCBzdHJpbmc+IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGZvcmNlIHRoZSBsaW5rcyB0byBiZSBpbiBNYXJrZG93biBmb3JtYXQuXG4gICAqL1xuICBmb3JjZU1hcmtkb3duTGlua3M/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVwZGF0ZSBvbmx5IGVtYmVkZGVkIGxpbmtzLlxuICAgKi9cbiAgZW1iZWRPbmx5TGlua3M/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVwZGF0ZSBmaWxlbmFtZSBhbGlhcy4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhcz86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogVXBkYXRlcyB0aGUgbGlua3MgaW4gYSBmaWxlIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBwYXJhbWV0ZXJzLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHVwZGF0aW5nIHRoZSBsaW5rcy5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGxpbmtzIGFyZSB1cGRhdGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlTGlua3NJbkZpbGUob3B0aW9uczogVXBkYXRlTGlua3NJbkZpbGVPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHtcbiAgICBhcHAsXG4gICAgcGF0aE9yRmlsZSxcbiAgICBvbGRQYXRoT3JGaWxlLFxuICAgIHJlbmFtZU1hcCxcbiAgICBmb3JjZU1hcmtkb3duTGlua3MsXG4gICAgZW1iZWRPbmx5TGlua3MsXG4gICAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhc1xuICB9ID0gb3B0aW9ucztcbiAgYXdhaXQgZWRpdExpbmtzKGFwcCwgcGF0aE9yRmlsZSwgKGxpbmspID0+IHtcbiAgICBjb25zdCBpc0VtYmVkTGluayA9IHRlc3RFbWJlZChsaW5rLm9yaWdpbmFsKTtcbiAgICBpZiAoZW1iZWRPbmx5TGlua3MgIT09IHVuZGVmaW5lZCAmJiBlbWJlZE9ubHlMaW5rcyAhPT0gaXNFbWJlZExpbmspIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgcmV0dXJuIGNvbnZlcnRMaW5rKHtcbiAgICAgIGFwcCxcbiAgICAgIGxpbmssXG4gICAgICBzb3VyY2VQYXRoT3JGaWxlOiBwYXRoT3JGaWxlLFxuICAgICAgb2xkUGF0aE9yRmlsZSxcbiAgICAgIHJlbmFtZU1hcCxcbiAgICAgIGZvcmNlTWFya2Rvd25MaW5rcyxcbiAgICAgIHNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXNcbiAgICB9KTtcbiAgfSk7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY29udmVydGluZyBhIGxpbmsuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udmVydExpbmtPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIHJlZmVyZW5jZSBjYWNoZSBmb3IgdGhlIGxpbmsuXG4gICAqL1xuICBsaW5rOiBSZWZlcmVuY2VDYWNoZTtcblxuICAvKipcbiAgICogVGhlIHNvdXJjZSBmaWxlIGNvbnRhaW5pbmcgdGhlIGxpbmsuXG4gICAqL1xuICBzb3VyY2VQYXRoT3JGaWxlOiBQYXRoT3JGaWxlO1xuXG4gIC8qKlxuICAgKiBUaGUgb2xkIHBhdGggb2YgdGhlIGxpbmsuXG4gICAqL1xuICBvbGRQYXRoT3JGaWxlPzogUGF0aE9yRmlsZSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQSBtYXAgb2Ygb2xkIGFuZCBuZXcgZmlsZSBwYXRocy5cbiAgICovXG4gIHJlbmFtZU1hcD86IE1hcDxzdHJpbmcsIHN0cmluZz4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZm9yY2UgbWFya2Rvd24gbGlua3MuXG4gICAqL1xuICBmb3JjZU1hcmtkb3duTGlua3M/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVwZGF0ZSBmaWxlbmFtZSBhbGlhcy4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhcz86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQ29udmVydHMgYSBsaW5rIHRvIGEgbmV3IHBhdGguXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgY29udmVydGluZyB0aGUgbGluay5cbiAqIEByZXR1cm5zIFRoZSBjb252ZXJ0ZWQgbGluay5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRMaW5rKG9wdGlvbnM6IENvbnZlcnRMaW5rT3B0aW9ucyk6IHN0cmluZyB7XG4gIHJldHVybiB1cGRhdGVMaW5rKHtcbiAgICBhcHA6IG9wdGlvbnMuYXBwLFxuICAgIGxpbms6IG9wdGlvbnMubGluayxcbiAgICBwYXRoT3JGaWxlOiBleHRyYWN0TGlua0ZpbGUob3B0aW9ucy5hcHAsIG9wdGlvbnMubGluaywgb3B0aW9ucy5zb3VyY2VQYXRoT3JGaWxlKSxcbiAgICBvbGRQYXRoT3JGaWxlOiBvcHRpb25zLm9sZFBhdGhPckZpbGUsXG4gICAgc291cmNlUGF0aE9yRmlsZTogb3B0aW9ucy5zb3VyY2VQYXRoT3JGaWxlLFxuICAgIHJlbmFtZU1hcDogb3B0aW9ucy5yZW5hbWVNYXAsXG4gICAgZm9yY2VNYXJrZG93bkxpbmtzOiBvcHRpb25zLmZvcmNlTWFya2Rvd25MaW5rcyxcbiAgICBzaG91bGRVcGRhdGVGaWxlbmFtZUFsaWFzOiBvcHRpb25zLnNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXNcbiAgfSk7XG59XG5cbi8qKlxuICogRXh0cmFjdHMgdGhlIGZpbGUgYXNzb2NpYXRlZCB3aXRoIGEgbGluay5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIGxpbmsgLSBUaGUgcmVmZXJlbmNlIGNhY2hlIGZvciB0aGUgbGluay5cbiAqIEBwYXJhbSBub3RlUGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgb2YgdGhlIG5vdGUgY29udGFpbmluZyB0aGUgbGluay5cbiAqIEByZXR1cm5zIFRoZSBmaWxlIGFzc29jaWF0ZWQgd2l0aCB0aGUgbGluaywgb3IgbnVsbCBpZiBub3QgZm91bmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleHRyYWN0TGlua0ZpbGUoYXBwOiBBcHAsIGxpbms6IFJlZmVyZW5jZUNhY2hlLCBub3RlUGF0aE9yRmlsZTogUGF0aE9yRmlsZSk6IFRGaWxlIHwgbnVsbCB7XG4gIGNvbnN0IHsgbGlua1BhdGggfSA9IHNwbGl0U3VicGF0aChsaW5rLmxpbmspO1xuICByZXR1cm4gYXBwLm1ldGFkYXRhQ2FjaGUuZ2V0Rmlyc3RMaW5rcGF0aERlc3QobGlua1BhdGgsIGdldFBhdGgobm90ZVBhdGhPckZpbGUpKTtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciB1cGRhdGluZyBhIGxpbmsuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlTGlua09wdGlvbnMge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVmZXJlbmNlIGNhY2hlIGZvciB0aGUgbGluay5cbiAgICovXG4gIGxpbms6IFJlZmVyZW5jZUNhY2hlO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsZSBhc3NvY2lhdGVkIHdpdGggdGhlIGxpbmsuXG4gICAqL1xuICBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlIHwgbnVsbDtcblxuICAvKipcbiAgICogVGhlIG9sZCBwYXRoIG9mIHRoZSBmaWxlLlxuICAgKi9cbiAgb2xkUGF0aE9yRmlsZT86IFBhdGhPckZpbGUgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBzb3VyY2UgZmlsZSBjb250YWluaW5nIHRoZSBsaW5rLlxuICAgKi9cbiAgc291cmNlUGF0aE9yRmlsZTogUGF0aE9yRmlsZTtcblxuICAvKipcbiAgICogQSBtYXAgb2Ygb2xkIGFuZCBuZXcgZmlsZSBwYXRocy5cbiAgICovXG4gIHJlbmFtZU1hcD86IE1hcDxzdHJpbmcsIHN0cmluZz4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZm9yY2UgbWFya2Rvd24gbGlua3MuXG4gICAqL1xuICBmb3JjZU1hcmtkb3duTGlua3M/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVwZGF0ZSBmaWxlbmFtZSBhbGlhcy4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhcz86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogVXBkYXRlcyBhIGxpbmsgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHBhcmFtZXRlcnMuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdXBkYXRpbmcgdGhlIGxpbmsuXG4gKiBAcmV0dXJucyBUaGUgdXBkYXRlZCBsaW5rLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlTGluayhvcHRpb25zOiBVcGRhdGVMaW5rT3B0aW9ucyk6IHN0cmluZyB7XG4gIGNvbnN0IHtcbiAgICBhcHAsXG4gICAgbGluayxcbiAgICBwYXRoT3JGaWxlLFxuICAgIG9sZFBhdGhPckZpbGUsXG4gICAgc291cmNlUGF0aE9yRmlsZSxcbiAgICByZW5hbWVNYXAsXG4gICAgZm9yY2VNYXJrZG93bkxpbmtzLFxuICAgIHNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXNcbiAgfSA9IG9wdGlvbnM7XG4gIGlmICghcGF0aE9yRmlsZSkge1xuICAgIHJldHVybiBsaW5rLm9yaWdpbmFsO1xuICB9XG4gIGxldCBmaWxlID0gZ2V0RmlsZShhcHAsIHBhdGhPckZpbGUpO1xuICBjb25zdCBvbGRQYXRoID0gZ2V0UGF0aChvbGRQYXRoT3JGaWxlID8/IHNvdXJjZVBhdGhPckZpbGUpO1xuICBjb25zdCBpc1dpa2lsaW5rID0gdGVzdFdpa2lsaW5rKGxpbmsub3JpZ2luYWwpICYmIGZvcmNlTWFya2Rvd25MaW5rcyAhPT0gdHJ1ZTtcbiAgY29uc3QgeyBzdWJwYXRoIH0gPSBzcGxpdFN1YnBhdGgobGluay5saW5rKTtcblxuICBjb25zdCBuZXdQYXRoID0gcmVuYW1lTWFwPy5nZXQoZmlsZS5wYXRoKTtcbiAgbGV0IGFsaWFzID0gc2hvdWxkUmVzZXRBbGlhcyh7XG4gICAgYXBwLFxuICAgIGRpc3BsYXlUZXh0OiBsaW5rLmRpc3BsYXlUZXh0LFxuICAgIHBhdGhPckZpbGUsXG4gICAgb3RoZXJQYXRoT3JGaWxlczogW29sZFBhdGgsIG5ld1BhdGhdLFxuICAgIHNvdXJjZVBhdGhPckZpbGUsXG4gICAgaXNXaWtpbGlua1xuICB9KVxuICAgID8gdW5kZWZpbmVkXG4gICAgOiBsaW5rLmRpc3BsYXlUZXh0O1xuXG4gIGlmIChzaG91bGRVcGRhdGVGaWxlbmFtZUFsaWFzID8/IHRydWUpIHtcbiAgICBpZiAoYWxpYXM/LnRvTG93ZXJDYXNlKCkgPT09IGJhc2VuYW1lKG9sZFBhdGgsIGV4dG5hbWUob2xkUGF0aCkpLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgIGFsaWFzID0gZmlsZS5iYXNlbmFtZTtcbiAgICB9IGVsc2UgaWYgKGFsaWFzPy50b0xvd2VyQ2FzZSgpID09PSBiYXNlbmFtZShvbGRQYXRoKS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICBhbGlhcyA9IGZpbGUubmFtZTtcbiAgICB9XG4gIH1cblxuICBpZiAobmV3UGF0aCkge1xuICAgIGZpbGUgPSBnZXRGaWxlKGFwcCwgbmV3UGF0aCwgdHJ1ZSk7XG4gIH1cblxuICBjb25zdCBuZXdMaW5rID0gZ2VuZXJhdGVNYXJrZG93bkxpbmsoe1xuICAgIGFwcCxcbiAgICBwYXRoT3JGaWxlOiBmaWxlLFxuICAgIHNvdXJjZVBhdGhPckZpbGUsXG4gICAgc3VicGF0aCxcbiAgICBhbGlhcyxcbiAgICBpc1dpa2lsaW5rOiBmb3JjZU1hcmtkb3duTGlua3MgPyBmYWxzZSA6IHVuZGVmaW5lZCxcbiAgICBvcmlnaW5hbExpbms6IGxpbmsub3JpZ2luYWxcbiAgfSk7XG4gIHJldHVybiBuZXdMaW5rO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGRldGVybWluaW5nIGlmIHRoZSBhbGlhcyBvZiBhIGxpbmsgc2hvdWxkIGJlIHJlc2V0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNob3VsZFJlc2V0QWxpYXNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIGRpc3BsYXkgdGV4dCBvZiB0aGUgbGluay5cbiAgICovXG4gIGRpc3BsYXlUZXh0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIG9yIGZpbGUgb2YgdGhlIGxpbmsuXG4gICAqL1xuICBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlO1xuXG4gIC8qKlxuICAgKiBPdGhlciBwYXRocyBhc3NvY2lhdGVkIHdpdGggdGhlIGxpbmsuXG4gICAqL1xuICBvdGhlclBhdGhPckZpbGVzOiAoUGF0aE9yRmlsZSB8IHVuZGVmaW5lZClbXTtcblxuICAvKipcbiAgICogVGhlIHNvdXJjZSBwYXRoIG9mIHRoZSBsaW5rLlxuICAgKi9cbiAgc291cmNlUGF0aE9yRmlsZTogUGF0aE9yRmlsZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBsaW5rIGlzIGEgd2lraWxpbmsuXG4gICAqL1xuICBpc1dpa2lsaW5rPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIGlmIHRoZSBhbGlhcyBvZiBhIGxpbmsgc2hvdWxkIGJlIHJlc2V0LlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIGRldGVybWluaW5nIGlmIHRoZSBhbGlhcyBzaG91bGQgYmUgcmVzZXQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhbGlhcyBzaG91bGQgYmUgcmVzZXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzaG91bGRSZXNldEFsaWFzKG9wdGlvbnM6IFNob3VsZFJlc2V0QWxpYXNPcHRpb25zKTogYm9vbGVhbiB7XG4gIGNvbnN0IHtcbiAgICBhcHAsXG4gICAgZGlzcGxheVRleHQsXG4gICAgcGF0aE9yRmlsZSxcbiAgICBvdGhlclBhdGhPckZpbGVzLFxuICAgIHNvdXJjZVBhdGhPckZpbGUsXG4gICAgaXNXaWtpbGlua1xuICB9ID0gb3B0aW9ucztcbiAgaWYgKGlzV2lraWxpbmsgPT09IGZhbHNlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgZmlsZSA9IGdldEZpbGUoYXBwLCBwYXRoT3JGaWxlKTtcblxuICBpZiAoIWRpc3BsYXlUZXh0KSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjb25zdCBzb3VyY2VQYXRoID0gZ2V0UGF0aChzb3VyY2VQYXRoT3JGaWxlKTtcbiAgY29uc3Qgc291cmNlRGlyID0gZGlybmFtZShzb3VyY2VQYXRoKTtcblxuICBjb25zdCBhbGlhc2VzVG9SZXNldCA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG4gIGZvciAoY29uc3QgcGF0aE9yRmlsZSBvZiBbZmlsZS5wYXRoLCAuLi5vdGhlclBhdGhPckZpbGVzXSkge1xuICAgIGlmICghcGF0aE9yRmlsZSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgY29uc3QgcGF0aCA9IGdldFBhdGgocGF0aE9yRmlsZSk7XG4gICAgYWxpYXNlc1RvUmVzZXQuYWRkKHBhdGgpO1xuICAgIGFsaWFzZXNUb1Jlc2V0LmFkZChiYXNlbmFtZShwYXRoKSk7XG4gICAgYWxpYXNlc1RvUmVzZXQuYWRkKHJlbGF0aXZlKHNvdXJjZURpciwgcGF0aCkpO1xuICB9XG5cbiAgYWxpYXNlc1RvUmVzZXQuYWRkKGFwcC5tZXRhZGF0YUNhY2hlLmZpbGVUb0xpbmt0ZXh0KGZpbGUsIHNvdXJjZVBhdGgsIGZhbHNlKSk7XG5cbiAgY29uc3QgY2xlYW5EaXNwbGF5VGV4dCA9IG5vcm1hbGl6ZVBhdGgoZGlzcGxheVRleHQuc3BsaXQoJyA+ICcpWzBdID8/ICcnKS5yZXBsYWNlKC9eXFwuXFwvLywgJycpLnRvTG93ZXJDYXNlKCk7XG5cbiAgZm9yIChjb25zdCBhbGlhcyBvZiBhbGlhc2VzVG9SZXNldCkge1xuICAgIGlmIChhbGlhcy50b0xvd2VyQ2FzZSgpID09PSBjbGVhbkRpc3BsYXlUZXh0KSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBjb25zdCBkaXIgPSBkaXJuYW1lKGFsaWFzKTtcbiAgICBjb25zdCBiYXNlID0gYmFzZW5hbWUoYWxpYXMsIGV4dG5hbWUoYWxpYXMpKTtcbiAgICBpZiAoam9pbihkaXIsIGJhc2UpLnRvTG93ZXJDYXNlKCkgPT09IGNsZWFuRGlzcGxheVRleHQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn1cblxuLyoqXG4gKiBXcmFwcGVyIGZvciBkZWZhdWx0IG9wdGlvbnMgZm9yIGdlbmVyYXRpbmcgbWFya2Rvd24gbGlua3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2VuZXJhdGVNYXJrZG93bkxpbmtEZWZhdWx0T3B0aW9uc1dyYXBwZXIge1xuICAvKipcbiAgICogVGhlIGRlZmF1bHQgb3B0aW9ucyBmb3IgZ2VuZXJhdGluZyBtYXJrZG93biBsaW5rcy5cbiAgICovXG4gIGRlZmF1bHRPcHRpb25zRm46ICgpID0+IFBhcnRpYWw8R2VuZXJhdGVNYXJrZG93bkxpbmtPcHRpb25zPjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBnZW5lcmF0aW5nIGEgbWFya2Rvd24gbGluay5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHZW5lcmF0ZU1hcmtkb3duTGlua09wdGlvbnMge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsZSB0byBsaW5rIHRvLlxuICAgKi9cbiAgcGF0aE9yRmlsZTogUGF0aE9yRmlsZTtcblxuICAvKipcbiAgICogVGhlIHNvdXJjZSBwYXRoIG9mIHRoZSBsaW5rLlxuICAgKi9cbiAgc291cmNlUGF0aE9yRmlsZTogUGF0aE9yRmlsZTtcblxuICAvKipcbiAgICogVGhlIHN1YnBhdGggb2YgdGhlIGxpbmsuXG4gICAqL1xuICBzdWJwYXRoPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgYWxpYXMgZm9yIHRoZSBsaW5rLlxuICAgKi9cbiAgYWxpYXM/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgbGluayBzaG91bGQgYmUgZW1iZWRkZWQuIElmIG5vdCBwcm92aWRlZCwgaXQgd2lsbCBiZSBpbmZlcnJlZCBiYXNlZCBvbiB0aGUgZmlsZSB0eXBlLlxuICAgKi9cbiAgaXNFbWJlZD86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgbGluayBzaG91bGQgYmUgYSB3aWtpbGluay4gSWYgbm90IHByb3ZpZGVkLCBpdCB3aWxsIGJlIGluZmVycmVkIGJhc2VkIG9uIHRoZSBPYnNpZGlhbiBzZXR0aW5ncy5cbiAgICovXG4gIGlzV2lraWxpbms/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGxpbmsgc2hvdWxkIGJlIHJlbGF0aXZlLiBJZiBub3QgcHJvdmlkZWQgb3IgYGZhbHNlYCwgaXQgd2lsbCBiZSBpbmZlcnJlZCBiYXNlZCBvbiB0aGUgT2JzaWRpYW4gc2V0dGluZ3MuXG4gICAqL1xuICBmb3JjZVJlbGF0aXZlUGF0aD86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgbGluayBzaG91bGQgdXNlIGEgbGVhZGluZyBkb3QuIERlZmF1bHRzIHRvIGBmYWxzZWAuIEhhcyBubyBlZmZlY3QgaWYgYGlzV2lraWxpbmtgIGlzIGB0cnVlYCBvciBgaXNSZWxhdGl2ZWAgaXMgYGZhbHNlYC5cbiAgICovXG4gIHVzZUxlYWRpbmdEb3Q/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGxpbmsgc2hvdWxkIHVzZSBhbmdsZSBicmFja2V0cy4gRGVmYXVsdHMgdG8gYGZhbHNlYC4gSGFzIG5vIGVmZmVjdCBpZiBgaXNXaWtpbGlua2AgaXMgYHRydWVgXG4gICAqL1xuICB1c2VBbmdsZUJyYWNrZXRzPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICAqIFRoZSBvcmlnaW5hbCBsaW5rIHRleHQuIElmIHByb3ZpZGVkLCBpdCB3aWxsIGJlIHVzZWQgdG8gaW5mZXIgdGhlIHZhbHVlcyBvZiBgaXNFbWJlZGAsIGBpc1dpa2lsaW5rYCwgYHVzZUxlYWRpbmdEb3RgLCBhbmQgYHVzZUFuZ2xlQnJhY2tldHNgLlxuICAgICogVGhlc2UgaW5mZXJyZWQgdmFsdWVzIHdpbGwgYmUgb3ZlcnJpZGRlbiBieSBjb3JyZXNwb25kaW5nIHNldHRpbmdzIGlmIHNwZWNpZmllZC5cbiAgICAqL1xuICBvcmlnaW5hbExpbms/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYWxsb3cgbm9uLWV4aXN0aW5nIGZpbGVzLiBJZiBgZmFsc2VgIGFuZCBgcGF0aE9yRmlsZWAgaXMgYSBub24tZXhpc3RpbmcgZmlsZSwgYW4gZXJyb3Igd2lsbCBiZSB0aHJvd24uIERlZmF1bHRzIHRvIGBmYWxzZWAuXG4gICAqL1xuICBhbGxvd05vbkV4aXN0aW5nRmlsZT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYWxsb3cgYW4gZW1wdHkgYWxpYXMgZm9yIGVtYmVkcy4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgYWxsb3dFbXB0eUVtYmVkQWxpYXM/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGluY2x1ZGUgdGhlIGF0dGFjaG1lbnQgZXh0ZW5zaW9uIGluIHRoZSBlbWJlZCBhbGlhcy4gSGFzIG5vIGVmZmVjdCBpZiBgYWxsb3dFbXB0eUVtYmVkQWxpYXNgIGlzIGB0cnVlYC4gRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIGluY2x1ZGVBdHRhY2htZW50RXh0ZW5zaW9uVG9FbWJlZEFsaWFzPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBHZW5lcmF0ZXMgYSBtYXJrZG93biBsaW5rIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBwYXJhbWV0ZXJzLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIGdlbmVyYXRpbmcgdGhlIG1hcmtkb3duIGxpbmsuXG4gKiBAcmV0dXJucyBUaGUgZ2VuZXJhdGVkIG1hcmtkb3duIGxpbmsuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZU1hcmtkb3duTGluayhvcHRpb25zOiBHZW5lcmF0ZU1hcmtkb3duTGlua09wdGlvbnMpOiBzdHJpbmcge1xuICBjb25zdCB7IGFwcCB9ID0gb3B0aW9ucztcblxuICBjb25zdCBjb25maWd1cmFibGVEZWZhdWx0T3B0aW9uc0ZuID0gKGFwcC5maWxlTWFuYWdlci5nZW5lcmF0ZU1hcmtkb3duTGluayBhcyBQYXJ0aWFsPEdlbmVyYXRlTWFya2Rvd25MaW5rRGVmYXVsdE9wdGlvbnNXcmFwcGVyPikuZGVmYXVsdE9wdGlvbnNGbiA/PyAoKCk6IFBhcnRpYWw8R2VuZXJhdGVNYXJrZG93bkxpbmtPcHRpb25zPiA9PiAoe30pKTtcbiAgY29uc3QgY29uZmlndXJhYmxlRGVmYXVsdE9wdGlvbnMgPSBjb25maWd1cmFibGVEZWZhdWx0T3B0aW9uc0ZuKCk7XG5cbiAgY29uc3QgREVGQVVMVF9PUFRJT05TOiBQYXJ0aWFsPEdlbmVyYXRlTWFya2Rvd25MaW5rT3B0aW9ucz4gPSB7XG4gICAgYWxsb3dFbXB0eUVtYmVkQWxpYXM6IHRydWVcbiAgfTtcblxuICBvcHRpb25zID0geyAuLi5ERUZBVUxUX09QVElPTlMsIC4uLmNvbmZpZ3VyYWJsZURlZmF1bHRPcHRpb25zLCAuLi5vcHRpb25zIH07XG5cbiAgY29uc3QgZmlsZSA9IGdldEZpbGUoYXBwLCBvcHRpb25zLnBhdGhPckZpbGUsIG9wdGlvbnMuYWxsb3dOb25FeGlzdGluZ0ZpbGUpO1xuXG4gIHJldHVybiB0ZW1wUmVnaXN0ZXJGaWxlQW5kUnVuKGFwcCwgZmlsZSwgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZVBhdGggPSBnZXRQYXRoKG9wdGlvbnMuc291cmNlUGF0aE9yRmlsZSk7XG4gICAgY29uc3Qgc3VicGF0aCA9IG9wdGlvbnMuc3VicGF0aCA/PyAnJztcbiAgICBsZXQgYWxpYXMgPSBvcHRpb25zLmFsaWFzID8/ICcnO1xuICAgIGNvbnN0IGlzRW1iZWQgPSBvcHRpb25zLmlzRW1iZWQgPz8gKG9wdGlvbnMub3JpZ2luYWxMaW5rID8gdGVzdEVtYmVkKG9wdGlvbnMub3JpZ2luYWxMaW5rKSA6IHVuZGVmaW5lZCkgPz8gIWlzTWFya2Rvd25GaWxlKGZpbGUpO1xuICAgIGNvbnN0IGlzV2lraWxpbmsgPSBvcHRpb25zLmlzV2lraWxpbmsgPz8gKG9wdGlvbnMub3JpZ2luYWxMaW5rID8gdGVzdFdpa2lsaW5rKG9wdGlvbnMub3JpZ2luYWxMaW5rKSA6IHVuZGVmaW5lZCkgPz8gc2hvdWxkVXNlV2lraWxpbmtzKGFwcCk7XG4gICAgY29uc3QgZm9yY2VSZWxhdGl2ZVBhdGggPSBvcHRpb25zLmZvcmNlUmVsYXRpdmVQYXRoID8/IHNob3VsZFVzZVJlbGF0aXZlTGlua3MoYXBwKTtcbiAgICBjb25zdCB1c2VMZWFkaW5nRG90ID0gb3B0aW9ucy51c2VMZWFkaW5nRG90ID8/IChvcHRpb25zLm9yaWdpbmFsTGluayA/IHRlc3RMZWFkaW5nRG90KG9wdGlvbnMub3JpZ2luYWxMaW5rKSA6IHVuZGVmaW5lZCkgPz8gZmFsc2U7XG4gICAgY29uc3QgdXNlQW5nbGVCcmFja2V0cyA9IG9wdGlvbnMudXNlQW5nbGVCcmFja2V0cyA/PyAob3B0aW9ucy5vcmlnaW5hbExpbmsgPyB0ZXN0QW5nbGVCcmFja2V0cyhvcHRpb25zLm9yaWdpbmFsTGluaykgOiB1bmRlZmluZWQpID8/IGZhbHNlO1xuXG4gICAgbGV0IGxpbmtUZXh0ID0gZmlsZS5wYXRoID09PSBzb3VyY2VQYXRoICYmIHN1YnBhdGhcbiAgICAgID8gc3VicGF0aFxuICAgICAgOiBmb3JjZVJlbGF0aXZlUGF0aFxuICAgICAgICA/IHJlbGF0aXZlKGRpcm5hbWUoc291cmNlUGF0aCksIGlzV2lraWxpbmsgPyB0cmltTWFya2Rvd25FeHRlbnNpb24oZmlsZSkgOiBmaWxlLnBhdGgpICsgc3VicGF0aFxuICAgICAgICA6IGFwcC5tZXRhZGF0YUNhY2hlLmZpbGVUb0xpbmt0ZXh0KGZpbGUsIHNvdXJjZVBhdGgsIGlzV2lraWxpbmspICsgc3VicGF0aDtcblxuICAgIGlmIChmb3JjZVJlbGF0aXZlUGF0aCAmJiB1c2VMZWFkaW5nRG90ICYmICFsaW5rVGV4dC5zdGFydHNXaXRoKCcuJykgJiYgIWxpbmtUZXh0LnN0YXJ0c1dpdGgoJyMnKSkge1xuICAgICAgbGlua1RleHQgPSAnLi8nICsgbGlua1RleHQ7XG4gICAgfVxuXG4gICAgY29uc3QgZW1iZWRQcmVmaXggPSBpc0VtYmVkID8gJyEnIDogJyc7XG5cbiAgICBpZiAoIWlzV2lraWxpbmspIHtcbiAgICAgIGlmICh1c2VBbmdsZUJyYWNrZXRzKSB7XG4gICAgICAgIGxpbmtUZXh0ID0gYDwke2xpbmtUZXh0fT5gO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGlua1RleHQgPSBsaW5rVGV4dC5yZXBsYWNlKFNQRUNJQUxfTElOS19TWU1CT0xTX1JFR0VYUCwgZnVuY3Rpb24gKHNwZWNpYWxMaW5rU3ltYm9sKSB7XG4gICAgICAgICAgcmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChzcGVjaWFsTGlua1N5bWJvbCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWFsaWFzICYmICghaXNFbWJlZCB8fCAhb3B0aW9ucy5hbGxvd0VtcHR5RW1iZWRBbGlhcykpIHtcbiAgICAgICAgYWxpYXMgPSAhb3B0aW9ucy5pbmNsdWRlQXR0YWNobWVudEV4dGVuc2lvblRvRW1iZWRBbGlhcyB8fCBpc01hcmtkb3duRmlsZShmaWxlKSA/IGZpbGUuYmFzZW5hbWUgOiBmaWxlLm5hbWU7XG4gICAgICB9XG5cbiAgICAgIGFsaWFzID0gYWxpYXMucmVwbGFjZShTUEVDSUFMX01BUktET1dOX0xJTktfU1lNQk9MU19SRUdFWCwgJ1xcXFwkJicpO1xuXG4gICAgICByZXR1cm4gYCR7ZW1iZWRQcmVmaXh9WyR7YWxpYXN9XSgke2xpbmtUZXh0fSlgO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoYWxpYXMgJiYgYWxpYXMudG9Mb3dlckNhc2UoKSA9PT0gbGlua1RleHQudG9Mb3dlckNhc2UoKSkge1xuICAgICAgICBsaW5rVGV4dCA9IGFsaWFzO1xuICAgICAgICBhbGlhcyA9ICcnO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBhbGlhc1BhcnQgPSBhbGlhcyA/IGB8JHthbGlhc31gIDogJyc7XG4gICAgICByZXR1cm4gYCR7ZW1iZWRQcmVmaXh9W1ske2xpbmtUZXh0fSR7YWxpYXNQYXJ0fV1dYDtcbiAgICB9XG4gIH0pO1xufVxuXG4vKipcbiAqIEVkaXRzIHRoZSBsaW5rcyBpbiB0aGUgc3BlY2lmaWVkIGZpbGUgb3IgcGF0aCB1c2luZyB0aGUgcHJvdmlkZWQgbGluayBjb252ZXJ0ZXIgZnVuY3Rpb24uXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgZmlsZSB0byBlZGl0IHRoZSBsaW5rcyBpbi5cbiAqIEBwYXJhbSBsaW5rQ29udmVydGVyIC0gVGhlIGZ1bmN0aW9uIHRoYXQgY29udmVydHMgZWFjaCBsaW5rLlxuICogQHBhcmFtIHJldHJ5T3B0aW9ucyAtIE9wdGlvbmFsIG9wdGlvbnMgZm9yIHJldHJ5aW5nIHRoZSBvcGVyYXRpb24uXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBsaW5rcyBoYXZlIGJlZW4gZWRpdGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZWRpdExpbmtzKFxuICBhcHA6IEFwcCxcbiAgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1pbnZhbGlkLXZvaWQtdHlwZVxuICBsaW5rQ29udmVydGVyOiAobGluazogUmVmZXJlbmNlQ2FjaGUpID0+IE1heWJlUHJvbWlzZTxzdHJpbmcgfCB2b2lkPixcbiAgcmV0cnlPcHRpb25zOiBQYXJ0aWFsPFJldHJ5T3B0aW9ucz4gPSB7fSk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBhcHBseUZpbGVDaGFuZ2VzKGFwcCwgcGF0aE9yRmlsZSwgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGNhY2hlID0gYXdhaXQgZ2V0Q2FjaGVTYWZlKGFwcCwgcGF0aE9yRmlsZSk7XG4gICAgaWYgKCFjYWNoZSkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIGNvbnN0IGNoYW5nZXM6IEZpbGVDaGFuZ2VbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBsaW5rIG9mIGdldEFsbExpbmtzKGNhY2hlKSkge1xuICAgICAgY29uc3QgbmV3Q29udGVudCA9IGF3YWl0IGxpbmtDb252ZXJ0ZXIobGluayk7XG4gICAgICBpZiAobmV3Q29udGVudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBjaGFuZ2VzLnB1c2goe1xuICAgICAgICBzdGFydEluZGV4OiBsaW5rLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldCxcbiAgICAgICAgZW5kSW5kZXg6IGxpbmsucG9zaXRpb24uZW5kLm9mZnNldCxcbiAgICAgICAgb2xkQ29udGVudDogbGluay5vcmlnaW5hbCxcbiAgICAgICAgbmV3Q29udGVudFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNoYW5nZXM7XG4gIH0sIHJldHJ5T3B0aW9ucyk7XG59XG5cbi8qKlxuICogVGVzdHMgd2hldGhlciBhIGxpbmsgaXMgYW4gZW1iZWQgbGluazpcbiAqIGAhW1tsaW5rXV1gLCBgIVt0aXRsZV0obGluaylgLlxuICpcbiAqIEBwYXJhbSBsaW5rIC0gTGluayB0byB0ZXN0XG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBsaW5rIGlzIGFuIGVtYmVkIGxpbmtcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRlc3RFbWJlZChsaW5rOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIGxpbmsuc3RhcnRzV2l0aCgnIVsnKTtcbn1cblxuLyoqXG4gKiBUZXN0cyB3aGV0aGVyIGEgbGluayBpcyBhIHdpa2lsaW5rLCBwb3NzaWJseSBlbWJlZDpcbiAqIGBbW2xpbmtdXWAsIGAhW1tsaW5rXV1gLlxuICpcbiAqIEBwYXJhbSBsaW5rIC0gTGluayB0byB0ZXN0XG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBsaW5rIGlzIGEgd2lraWxpbmtcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRlc3RXaWtpbGluayhsaW5rOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIGxpbmsuaW5jbHVkZXMoJ1tbJyk7XG59XG5cbi8qKlxuICogVGVzdHMgd2hldGhlciBhIGxpbmsgaGFzIGEgbGVhZGluZyBkb3QsIHBvc3NpYmx5IGVtYmVkOlxuICogYFtbLi9saW5rXV1gLCBgW3RpdGxlXSguL2xpbmspYCwgYFt0aXRsZV0oPC4vbGluaz4pYCxcbiAqIGAhW1suL2xpbmtdXWAsIGAhW3RpdGxlXSguL2xpbmspYCwgYCFbdGl0bGVdKDwuL2xpbms+KWAuXG4gKlxuICogQHBhcmFtIGxpbmsgLSBMaW5rIHRvIHRlc3RcbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGxpbmsgaGFzIGEgbGVhZGluZyBkb3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRlc3RMZWFkaW5nRG90KGxpbms6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gbGluay5pbmNsdWRlcygnW1suLycpIHx8IGxpbmsuaW5jbHVkZXMoJ10oLi8nKSB8fCBsaW5rLmluY2x1ZGVzKCddKDwuLycpO1xufVxuXG4vKipcbiAqIFRlc3RzIHdoZXRoZXIgYSBsaW5rIHVzZXMgYW5nbGUgYnJhY2tldHMsIHBvc3NpYmx5IGVtYmVkOlxuICogYFt0aXRsZV0oPGxpbms+KWAsIGAhW3RpdGxlXSg8bGluaz4pYC5cbiAqXG4gKiBAcGFyYW0gbGluayAtIExpbmsgdG8gdGVzdFxuICogQHJldHVybnMgV2hldGhlciB0aGUgbGluayB1c2VzIGFuZ2xlIGJyYWNrZXRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0ZXN0QW5nbGVCcmFja2V0cyhsaW5rOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIGxpbmsuaW5jbHVkZXMoJ10oPCcpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7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QkFBdUI7QUFDekQsZ0JBQVEsQ0FBQyxRQUFRLDhDQUEwQyxrQ0FBZSxJQUFJLElBQUksS0FBSyxXQUFXLEtBQUs7QUFBQSxNQUN6RztBQUVBLGNBQVEsTUFBTSxRQUFRLHFDQUFxQyxNQUFNO0FBRWpFLGFBQU8sR0FBRyxXQUFXLElBQUksS0FBSyxLQUFLLFFBQVE7QUFBQSxJQUM3QyxPQUFPO0FBQ0wsVUFBSSxTQUFTLE1BQU0sWUFBWSxNQUFNLFNBQVMsWUFBWSxHQUFHO0FBQzNELG1CQUFXO0FBQ1gsZ0JBQVE7QUFBQSxNQUNWO0FBRUEsWUFBTSxZQUFZLFFBQVEsSUFBSSxLQUFLLEtBQUs7QUFDeEMsYUFBTyxHQUFHLFdBQVcsS0FBSyxRQUFRLEdBQUcsU0FBUztBQUFBLElBQ2hEO0FBQUEsRUFDRixDQUFDO0FBQ0g7QUFXQSxlQUFzQixVQUNwQixLQUNBLFlBRUEsZUFDQSxlQUFzQyxDQUFDLEdBQWtCO0FBQ3pELFlBQU0sK0JBQWlCLEtBQUssWUFBWSxZQUFZO0FBQ2xELFVBQU0sUUFBUSxVQUFNLG1DQUFhLEtBQUssVUFBVTtBQUNoRCxRQUFJLENBQUMsT0FBTztBQUNWLGFBQU8sQ0FBQztBQUFBLElBQ1Y7QUFFQSxVQUFNLFVBQXdCLENBQUM7QUFFL0IsZUFBVyxZQUFRLGtDQUFZLEtBQUssR0FBRztBQUNyQyxZQUFNLGFBQWEsTUFBTSxjQUFjLElBQUk7QUFDM0MsVUFBSSxlQUFlLFFBQVc7QUFDNUI7QUFBQSxNQUNGO0FBRUEsY0FBUSxLQUFLO0FBQUEsUUFDWCxZQUFZLEtBQUssU0FBUyxNQUFNO0FBQUEsUUFDaEMsVUFBVSxLQUFLLFNBQVMsSUFBSTtBQUFBLFFBQzVCLFlBQVksS0FBSztBQUFBLFFBQ2pCO0FBQUEsTUFDRixDQUFDO0FBQUEsSUFDSDtBQUVBLFdBQU87QUFBQSxFQUNULEdBQUcsWUFBWTtBQUNqQjtBQVNPLFNBQVMsVUFBVSxNQUF1QjtBQUMvQyxTQUFPLEtBQUssV0FBVyxJQUFJO0FBQzdCO0FBU08sU0FBUyxhQUFhLE1BQXVCO0FBQ2xELFNBQU8sS0FBSyxTQUFTLElBQUk7QUFDM0I7QUFVTyxTQUFTLGVBQWUsTUFBdUI7QUFDcEQsU0FBTyxLQUFLLFNBQVMsTUFBTSxLQUFLLEtBQUssU0FBUyxNQUFNLEtBQUssS0FBSyxTQUFTLE9BQU87QUFDaEY7QUFTTyxTQUFTLGtCQUFrQixNQUF1QjtBQUN2RCxTQUFPLEtBQUssU0FBUyxLQUFLO0FBQzVCOyIsCiAgIm5hbWVzIjogWyJwYXRoT3JGaWxlIl0KfQo=
286
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL0xpbmsudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIExpbmtcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIHV0aWxpdGllcyBmb3IgaGFuZGxpbmcgYW5kIHVwZGF0aW5nIGxpbmtzIHdpdGhpbiBPYnNpZGlhbiB2YXVsdHMuIEl0IGluY2x1ZGVzXG4gKiBmdW5jdGlvbnMgdG8gc3BsaXQgcGF0aHMsIHVwZGF0ZSBsaW5rcyBpbiBmaWxlcywgYW5kIGdlbmVyYXRlIG1hcmtkb3duIGxpbmtzIHdpdGggdmFyaW91cyBvcHRpb25zLlxuICogVGhlIGZ1bmN0aW9ucyBpbnRlZ3JhdGUgd2l0aCBPYnNpZGlhbidzIEFQSSB0byBlbnN1cmUgdGhhdCBsaW5rcyBhcmUgbWFuYWdlZCBjb3JyZWN0bHkgd2l0aGluIHRoZSB2YXVsdC5cbiAqKi9cblxuaW1wb3J0IHR5cGUge1xuICBBcHAsXG4gIFJlZmVyZW5jZUNhY2hlLFxuICBURmlsZVxufSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQgeyBub3JtYWxpemVQYXRoIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7XG4gIE1heWJlUHJvbWlzZSxcbiAgUmV0cnlPcHRpb25zXG59IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB7XG4gIGJhc2VuYW1lLFxuICBkaXJuYW1lLFxuICBleHRuYW1lLFxuICBqb2luLFxuICByZWxhdGl2ZVxufSBmcm9tICcuLi9QYXRoLnRzJztcbmltcG9ydCB7IG5vcm1hbGl6ZSB9IGZyb20gJy4uL1N0cmluZy50cyc7XG5pbXBvcnQgdHlwZSB7IFBhdGhPckZpbGUgfSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuaW1wb3J0IHtcbiAgZ2V0RmlsZSxcbiAgZ2V0UGF0aCxcbiAgaXNNYXJrZG93bkZpbGUsXG4gIHRyaW1NYXJrZG93bkV4dGVuc2lvblxufSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuaW1wb3J0IHtcbiAgZ2V0QWxsTGlua3MsXG4gIGdldENhY2hlU2FmZSxcbiAgdGVtcFJlZ2lzdGVyRmlsZUFuZFJ1blxufSBmcm9tICcuL01ldGFkYXRhQ2FjaGUudHMnO1xuaW1wb3J0IHtcbiAgc2hvdWxkVXNlUmVsYXRpdmVMaW5rcyxcbiAgc2hvdWxkVXNlV2lraWxpbmtzXG59IGZyb20gJy4vT2JzaWRpYW5TZXR0aW5ncy50cyc7XG5pbXBvcnQgdHlwZSB7IEZpbGVDaGFuZ2UgfSBmcm9tICcuL1ZhdWx0LnRzJztcbmltcG9ydCB7IGFwcGx5RmlsZUNoYW5nZXMgfSBmcm9tICcuL1ZhdWx0LnRzJztcblxuLyoqXG4gKiBSZWd1bGFyIGV4cHJlc3Npb24gZm9yIHNwZWNpYWwgbGluayBzeW1ib2xzLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29udHJvbC1yZWdleFxuY29uc3QgU1BFQ0lBTF9MSU5LX1NZTUJPTFNfUkVHRVhQID0gL1tcXFxcXFx4MDBcXHgwOFxceDBCXFx4MENcXHgwRS1cXHgxRiBdL2c7XG5cbi8qKlxuICogUmVndWxhciBleHByZXNzaW9uIGZvciBzcGVjaWFsIG1hcmtkb3duIGxpbmsgc3ltYm9scy5cbiAqL1xuY29uc3QgU1BFQ0lBTF9NQVJLRE9XTl9MSU5LX1NZTUJPTFNfUkVHRVggPSAvW1xcXFxbXFxdPD5fKn49YCRdL2c7XG5cbi8qKlxuICogU3BsaXRzIGEgbGluayBpbnRvIGl0cyBsaW5rIHBhdGggYW5kIHN1YnBhdGguXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3BsaXRTdWJwYXRoUmVzdWx0IHtcbiAgLyoqXG4gICAqIFRoZSBsaW5rIHBhdGguXG4gICAqL1xuICBsaW5rUGF0aDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3VicGF0aC5cbiAgICovXG4gIHN1YnBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBTcGxpdHMgYSBsaW5rIGludG8gaXRzIGxpbmsgcGF0aCBhbmQgc3VicGF0aC5cbiAqXG4gKiBAcGFyYW0gbGluayAtIFRoZSBsaW5rIHRvIHNwbGl0LlxuICogQHJldHVybnMgQW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGxpbmsgcGF0aCBhbmQgc3VicGF0aC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNwbGl0U3VicGF0aChsaW5rOiBzdHJpbmcpOiBTcGxpdFN1YnBhdGhSZXN1bHQge1xuICBjb25zdCBTVUJQQVRIX1NFUEFSQVRPUiA9ICcjJztcbiAgY29uc3QgW2xpbmtQYXRoID0gJycsIHN1YnBhdGhdID0gbm9ybWFsaXplKGxpbmspLnNwbGl0KFNVQlBBVEhfU0VQQVJBVE9SKTtcbiAgcmV0dXJuIHtcbiAgICBsaW5rUGF0aCxcbiAgICBzdWJwYXRoOiBzdWJwYXRoID8gU1VCUEFUSF9TRVBBUkFUT1IgKyBzdWJwYXRoIDogdW5kZWZpbmVkXG4gIH07XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgdXBkYXRpbmcgbGlua3MgaW4gYSBmaWxlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUxpbmtzSW5GaWxlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgb2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICAgKi9cbiAgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIFRoZSBmaWxlIHRvIHVwZGF0ZSB0aGUgbGlua3MgaW4uXG4gICAqL1xuICBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlO1xuXG4gIC8qKlxuICAgKiBUaGUgb2xkIHBhdGggb2YgdGhlIGZpbGUuXG4gICAqL1xuICBvbGRQYXRoT3JGaWxlPzogUGF0aE9yRmlsZSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQSBtYXAgb2Ygb2xkIGFuZCBuZXcgcGF0aHMgZm9yIHJlbmFtaW5nIGxpbmtzLlxuICAgKi9cbiAgcmVuYW1lTWFwPzogTWFwPHN0cmluZywgc3RyaW5nPiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byBmb3JjZSB0aGUgbGlua3MgdG8gYmUgaW4gTWFya2Rvd24gZm9ybWF0LlxuICAgKi9cbiAgZm9yY2VNYXJrZG93bkxpbmtzPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byB1cGRhdGUgb25seSBlbWJlZGRlZCBsaW5rcy5cbiAgICovXG4gIGVtYmVkT25seUxpbmtzPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byB1cGRhdGUgZmlsZW5hbWUgYWxpYXMuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXM/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIFVwZGF0ZXMgdGhlIGxpbmtzIGluIGEgZmlsZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgcGFyYW1ldGVycy5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB1cGRhdGluZyB0aGUgbGlua3MuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBsaW5rcyBhcmUgdXBkYXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZUxpbmtzSW5GaWxlKG9wdGlvbnM6IFVwZGF0ZUxpbmtzSW5GaWxlT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCB7XG4gICAgYXBwLFxuICAgIHBhdGhPckZpbGUsXG4gICAgb2xkUGF0aE9yRmlsZSxcbiAgICByZW5hbWVNYXAsXG4gICAgZm9yY2VNYXJrZG93bkxpbmtzLFxuICAgIGVtYmVkT25seUxpbmtzLFxuICAgIHNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXNcbiAgfSA9IG9wdGlvbnM7XG4gIGF3YWl0IGVkaXRMaW5rcyhhcHAsIHBhdGhPckZpbGUsIChsaW5rKSA9PiB7XG4gICAgY29uc3QgaXNFbWJlZExpbmsgPSB0ZXN0RW1iZWQobGluay5vcmlnaW5hbCk7XG4gICAgaWYgKGVtYmVkT25seUxpbmtzICE9PSB1bmRlZmluZWQgJiYgZW1iZWRPbmx5TGlua3MgIT09IGlzRW1iZWRMaW5rKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHJldHVybiBjb252ZXJ0TGluayh7XG4gICAgICBhcHAsXG4gICAgICBsaW5rLFxuICAgICAgc291cmNlUGF0aE9yRmlsZTogcGF0aE9yRmlsZSxcbiAgICAgIG9sZFBhdGhPckZpbGUsXG4gICAgICByZW5hbWVNYXAsXG4gICAgICBmb3JjZU1hcmtkb3duTGlua3MsXG4gICAgICBzaG91bGRVcGRhdGVGaWxlbmFtZUFsaWFzXG4gICAgfSk7XG4gIH0pO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNvbnZlcnRpbmcgYSBsaW5rLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnZlcnRMaW5rT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICAgKi9cbiAgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIFRoZSByZWZlcmVuY2UgY2FjaGUgZm9yIHRoZSBsaW5rLlxuICAgKi9cbiAgbGluazogUmVmZXJlbmNlQ2FjaGU7XG5cbiAgLyoqXG4gICAqIFRoZSBzb3VyY2UgZmlsZSBjb250YWluaW5nIHRoZSBsaW5rLlxuICAgKi9cbiAgc291cmNlUGF0aE9yRmlsZTogUGF0aE9yRmlsZTtcblxuICAvKipcbiAgICogVGhlIG9sZCBwYXRoIG9mIHRoZSBsaW5rLlxuICAgKi9cbiAgb2xkUGF0aE9yRmlsZT86IFBhdGhPckZpbGUgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEEgbWFwIG9mIG9sZCBhbmQgbmV3IGZpbGUgcGF0aHMuXG4gICAqL1xuICByZW5hbWVNYXA/OiBNYXA8c3RyaW5nLCBzdHJpbmc+IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGZvcmNlIG1hcmtkb3duIGxpbmtzLlxuICAgKi9cbiAgZm9yY2VNYXJrZG93bkxpbmtzPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byB1cGRhdGUgZmlsZW5hbWUgYWxpYXMuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXM/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgbGluayB0byBhIG5ldyBwYXRoLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIGNvbnZlcnRpbmcgdGhlIGxpbmsuXG4gKiBAcmV0dXJucyBUaGUgY29udmVydGVkIGxpbmsuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0TGluayhvcHRpb25zOiBDb252ZXJ0TGlua09wdGlvbnMpOiBzdHJpbmcge1xuICByZXR1cm4gdXBkYXRlTGluayh7XG4gICAgYXBwOiBvcHRpb25zLmFwcCxcbiAgICBsaW5rOiBvcHRpb25zLmxpbmssXG4gICAgcGF0aE9yRmlsZTogZXh0cmFjdExpbmtGaWxlKG9wdGlvbnMuYXBwLCBvcHRpb25zLmxpbmssIG9wdGlvbnMuc291cmNlUGF0aE9yRmlsZSksXG4gICAgb2xkUGF0aE9yRmlsZTogb3B0aW9ucy5vbGRQYXRoT3JGaWxlLFxuICAgIHNvdXJjZVBhdGhPckZpbGU6IG9wdGlvbnMuc291cmNlUGF0aE9yRmlsZSxcbiAgICByZW5hbWVNYXA6IG9wdGlvbnMucmVuYW1lTWFwLFxuICAgIGZvcmNlTWFya2Rvd25MaW5rczogb3B0aW9ucy5mb3JjZU1hcmtkb3duTGlua3MsXG4gICAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhczogb3B0aW9ucy5zaG91bGRVcGRhdGVGaWxlbmFtZUFsaWFzXG4gIH0pO1xufVxuXG4vKipcbiAqIEV4dHJhY3RzIHRoZSBmaWxlIGFzc29jaWF0ZWQgd2l0aCBhIGxpbmsuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBsaW5rIC0gVGhlIHJlZmVyZW5jZSBjYWNoZSBmb3IgdGhlIGxpbmsuXG4gKiBAcGFyYW0gbm90ZVBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIG9mIHRoZSBub3RlIGNvbnRhaW5pbmcgdGhlIGxpbmsuXG4gKiBAcmV0dXJucyBUaGUgZmlsZSBhc3NvY2lhdGVkIHdpdGggdGhlIGxpbmssIG9yIG51bGwgaWYgbm90IGZvdW5kLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdExpbmtGaWxlKGFwcDogQXBwLCBsaW5rOiBSZWZlcmVuY2VDYWNoZSwgbm90ZVBhdGhPckZpbGU6IFBhdGhPckZpbGUpOiBURmlsZSB8IG51bGwge1xuICBjb25zdCB7IGxpbmtQYXRoIH0gPSBzcGxpdFN1YnBhdGgobGluay5saW5rKTtcbiAgcmV0dXJuIGFwcC5tZXRhZGF0YUNhY2hlLmdldEZpcnN0TGlua3BhdGhEZXN0KGxpbmtQYXRoLCBnZXRQYXRoKG5vdGVQYXRoT3JGaWxlKSk7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgdXBkYXRpbmcgYSBsaW5rLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUxpbmtPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIHJlZmVyZW5jZSBjYWNoZSBmb3IgdGhlIGxpbmsuXG4gICAqL1xuICBsaW5rOiBSZWZlcmVuY2VDYWNoZTtcblxuICAvKipcbiAgICogVGhlIGZpbGUgYXNzb2NpYXRlZCB3aXRoIHRoZSBsaW5rLlxuICAgKi9cbiAgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSB8IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBvbGQgcGF0aCBvZiB0aGUgZmlsZS5cbiAgICovXG4gIG9sZFBhdGhPckZpbGU/OiBQYXRoT3JGaWxlIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgc291cmNlIGZpbGUgY29udGFpbmluZyB0aGUgbGluay5cbiAgICovXG4gIHNvdXJjZVBhdGhPckZpbGU6IFBhdGhPckZpbGU7XG5cbiAgLyoqXG4gICAqIEEgbWFwIG9mIG9sZCBhbmQgbmV3IGZpbGUgcGF0aHMuXG4gICAqL1xuICByZW5hbWVNYXA/OiBNYXA8c3RyaW5nLCBzdHJpbmc+IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGZvcmNlIG1hcmtkb3duIGxpbmtzLlxuICAgKi9cbiAgZm9yY2VNYXJrZG93bkxpbmtzPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byB1cGRhdGUgZmlsZW5hbWUgYWxpYXMuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIHNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXM/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIFVwZGF0ZXMgYSBsaW5rIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBwYXJhbWV0ZXJzLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHVwZGF0aW5nIHRoZSBsaW5rLlxuICogQHJldHVybnMgVGhlIHVwZGF0ZWQgbGluay5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZUxpbmsob3B0aW9uczogVXBkYXRlTGlua09wdGlvbnMpOiBzdHJpbmcge1xuICBjb25zdCB7XG4gICAgYXBwLFxuICAgIGxpbmssXG4gICAgcGF0aE9yRmlsZSxcbiAgICBvbGRQYXRoT3JGaWxlLFxuICAgIHNvdXJjZVBhdGhPckZpbGUsXG4gICAgcmVuYW1lTWFwLFxuICAgIGZvcmNlTWFya2Rvd25MaW5rcyxcbiAgICBzaG91bGRVcGRhdGVGaWxlbmFtZUFsaWFzXG4gIH0gPSBvcHRpb25zO1xuICBpZiAoIXBhdGhPckZpbGUpIHtcbiAgICByZXR1cm4gbGluay5vcmlnaW5hbDtcbiAgfVxuICBsZXQgZmlsZSA9IGdldEZpbGUoYXBwLCBwYXRoT3JGaWxlKTtcbiAgY29uc3Qgb2xkUGF0aCA9IGdldFBhdGgob2xkUGF0aE9yRmlsZSA/PyBzb3VyY2VQYXRoT3JGaWxlKTtcbiAgY29uc3QgaXNXaWtpbGluayA9IHRlc3RXaWtpbGluayhsaW5rLm9yaWdpbmFsKSAmJiBmb3JjZU1hcmtkb3duTGlua3MgIT09IHRydWU7XG4gIGNvbnN0IHsgc3VicGF0aCB9ID0gc3BsaXRTdWJwYXRoKGxpbmsubGluayk7XG5cbiAgY29uc3QgbmV3UGF0aCA9IHJlbmFtZU1hcD8uZ2V0KGZpbGUucGF0aCk7XG4gIGxldCBhbGlhcyA9IHNob3VsZFJlc2V0QWxpYXMoe1xuICAgIGFwcCxcbiAgICBkaXNwbGF5VGV4dDogbGluay5kaXNwbGF5VGV4dCxcbiAgICBwYXRoT3JGaWxlLFxuICAgIG90aGVyUGF0aE9yRmlsZXM6IFtvbGRQYXRoLCBuZXdQYXRoXSxcbiAgICBzb3VyY2VQYXRoT3JGaWxlLFxuICAgIGlzV2lraWxpbmtcbiAgfSlcbiAgICA/IHVuZGVmaW5lZFxuICAgIDogbGluay5kaXNwbGF5VGV4dDtcblxuICBpZiAoc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhcyA/PyB0cnVlKSB7XG4gICAgaWYgKGFsaWFzPy50b0xvd2VyQ2FzZSgpID09PSBiYXNlbmFtZShvbGRQYXRoLCBleHRuYW1lKG9sZFBhdGgpKS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICBhbGlhcyA9IGZpbGUuYmFzZW5hbWU7XG4gICAgfSBlbHNlIGlmIChhbGlhcz8udG9Mb3dlckNhc2UoKSA9PT0gYmFzZW5hbWUob2xkUGF0aCkudG9Mb3dlckNhc2UoKSkge1xuICAgICAgYWxpYXMgPSBmaWxlLm5hbWU7XG4gICAgfVxuICB9XG5cbiAgaWYgKG5ld1BhdGgpIHtcbiAgICBmaWxlID0gZ2V0RmlsZShhcHAsIG5ld1BhdGgsIHRydWUpO1xuICB9XG5cbiAgY29uc3QgbmV3TGluayA9IGdlbmVyYXRlTWFya2Rvd25MaW5rKHtcbiAgICBhcHAsXG4gICAgcGF0aE9yRmlsZTogZmlsZSxcbiAgICBzb3VyY2VQYXRoT3JGaWxlLFxuICAgIHN1YnBhdGgsXG4gICAgYWxpYXMsXG4gICAgaXNXaWtpbGluazogZm9yY2VNYXJrZG93bkxpbmtzID8gZmFsc2UgOiB1bmRlZmluZWQsXG4gICAgb3JpZ2luYWxMaW5rOiBsaW5rLm9yaWdpbmFsXG4gIH0pO1xuICByZXR1cm4gbmV3TGluaztcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBkZXRlcm1pbmluZyBpZiB0aGUgYWxpYXMgb2YgYSBsaW5rIHNob3VsZCBiZSByZXNldC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaG91bGRSZXNldEFsaWFzT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICAgKi9cbiAgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIFRoZSBkaXNwbGF5IHRleHQgb2YgdGhlIGxpbmsuXG4gICAqL1xuICBkaXNwbGF5VGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCBvciBmaWxlIG9mIHRoZSBsaW5rLlxuICAgKi9cbiAgcGF0aE9yRmlsZTogUGF0aE9yRmlsZTtcblxuICAvKipcbiAgICogT3RoZXIgcGF0aHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBsaW5rLlxuICAgKi9cbiAgb3RoZXJQYXRoT3JGaWxlczogKFBhdGhPckZpbGUgfCB1bmRlZmluZWQpW107XG5cbiAgLyoqXG4gICAqIFRoZSBzb3VyY2UgcGF0aCBvZiB0aGUgbGluay5cbiAgICovXG4gIHNvdXJjZVBhdGhPckZpbGU6IFBhdGhPckZpbGU7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgbGluayBpcyBhIHdpa2lsaW5rLlxuICAgKi9cbiAgaXNXaWtpbGluaz86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyBpZiB0aGUgYWxpYXMgb2YgYSBsaW5rIHNob3VsZCBiZSByZXNldC5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciBkZXRlcm1pbmluZyBpZiB0aGUgYWxpYXMgc2hvdWxkIGJlIHJlc2V0LlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYWxpYXMgc2hvdWxkIGJlIHJlc2V0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2hvdWxkUmVzZXRBbGlhcyhvcHRpb25zOiBTaG91bGRSZXNldEFsaWFzT3B0aW9ucyk6IGJvb2xlYW4ge1xuICBjb25zdCB7XG4gICAgYXBwLFxuICAgIGRpc3BsYXlUZXh0LFxuICAgIHBhdGhPckZpbGUsXG4gICAgb3RoZXJQYXRoT3JGaWxlcyxcbiAgICBzb3VyY2VQYXRoT3JGaWxlLFxuICAgIGlzV2lraWxpbmtcbiAgfSA9IG9wdGlvbnM7XG4gIGlmIChpc1dpa2lsaW5rID09PSBmYWxzZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aE9yRmlsZSk7XG5cbiAgaWYgKCFkaXNwbGF5VGV4dCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY29uc3Qgc291cmNlUGF0aCA9IGdldFBhdGgoc291cmNlUGF0aE9yRmlsZSk7XG4gIGNvbnN0IHNvdXJjZURpciA9IGRpcm5hbWUoc291cmNlUGF0aCk7XG5cbiAgY29uc3QgYWxpYXNlc1RvUmVzZXQgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICBmb3IgKGNvbnN0IHBhdGhPckZpbGUgb2YgW2ZpbGUucGF0aCwgLi4ub3RoZXJQYXRoT3JGaWxlc10pIHtcbiAgICBpZiAoIXBhdGhPckZpbGUpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGNvbnN0IHBhdGggPSBnZXRQYXRoKHBhdGhPckZpbGUpO1xuICAgIGFsaWFzZXNUb1Jlc2V0LmFkZChwYXRoKTtcbiAgICBhbGlhc2VzVG9SZXNldC5hZGQoYmFzZW5hbWUocGF0aCkpO1xuICAgIGFsaWFzZXNUb1Jlc2V0LmFkZChyZWxhdGl2ZShzb3VyY2VEaXIsIHBhdGgpKTtcbiAgfVxuXG4gIGFsaWFzZXNUb1Jlc2V0LmFkZChhcHAubWV0YWRhdGFDYWNoZS5maWxlVG9MaW5rdGV4dChmaWxlLCBzb3VyY2VQYXRoLCBmYWxzZSkpO1xuXG4gIGNvbnN0IGNsZWFuRGlzcGxheVRleHQgPSBub3JtYWxpemVQYXRoKGRpc3BsYXlUZXh0LnNwbGl0KCcgPiAnKVswXSA/PyAnJykucmVwbGFjZSgvXlxcLlxcLy8sICcnKS50b0xvd2VyQ2FzZSgpO1xuXG4gIGZvciAoY29uc3QgYWxpYXMgb2YgYWxpYXNlc1RvUmVzZXQpIHtcbiAgICBpZiAoYWxpYXMudG9Mb3dlckNhc2UoKSA9PT0gY2xlYW5EaXNwbGF5VGV4dCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgZGlyID0gZGlybmFtZShhbGlhcyk7XG4gICAgY29uc3QgYmFzZSA9IGJhc2VuYW1lKGFsaWFzLCBleHRuYW1lKGFsaWFzKSk7XG4gICAgaWYgKGpvaW4oZGlyLCBiYXNlKS50b0xvd2VyQ2FzZSgpID09PSBjbGVhbkRpc3BsYXlUZXh0KSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbi8qKlxuICogV3JhcHBlciBmb3IgZGVmYXVsdCBvcHRpb25zIGZvciBnZW5lcmF0aW5nIG1hcmtkb3duIGxpbmtzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdlbmVyYXRlTWFya2Rvd25MaW5rRGVmYXVsdE9wdGlvbnNXcmFwcGVyIHtcbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IG9wdGlvbnMgZm9yIGdlbmVyYXRpbmcgbWFya2Rvd24gbGlua3MuXG4gICAqL1xuICBkZWZhdWx0T3B0aW9uc0ZuOiAoKSA9PiBQYXJ0aWFsPEdlbmVyYXRlTWFya2Rvd25MaW5rT3B0aW9ucz47XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgZ2VuZXJhdGluZyBhIG1hcmtkb3duIGxpbmsuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2VuZXJhdGVNYXJrZG93bkxpbmtPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIGZpbGUgdG8gbGluayB0by5cbiAgICovXG4gIHBhdGhPckZpbGU6IFBhdGhPckZpbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBzb3VyY2UgcGF0aCBvZiB0aGUgbGluay5cbiAgICovXG4gIHNvdXJjZVBhdGhPckZpbGU6IFBhdGhPckZpbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBzdWJwYXRoIG9mIHRoZSBsaW5rLlxuICAgKi9cbiAgc3VicGF0aD86IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIGFsaWFzIGZvciB0aGUgbGluay5cbiAgICovXG4gIGFsaWFzPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGxpbmsgc2hvdWxkIGJlIGVtYmVkZGVkLiBJZiBub3QgcHJvdmlkZWQsIGl0IHdpbGwgYmUgaW5mZXJyZWQgYmFzZWQgb24gdGhlIGZpbGUgdHlwZS5cbiAgICovXG4gIGlzRW1iZWQ/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGxpbmsgc2hvdWxkIGJlIGEgd2lraWxpbmsuIElmIG5vdCBwcm92aWRlZCwgaXQgd2lsbCBiZSBpbmZlcnJlZCBiYXNlZCBvbiB0aGUgT2JzaWRpYW4gc2V0dGluZ3MuXG4gICAqL1xuICBpc1dpa2lsaW5rPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBsaW5rIHNob3VsZCBiZSByZWxhdGl2ZS4gSWYgbm90IHByb3ZpZGVkIG9yIGBmYWxzZWAsIGl0IHdpbGwgYmUgaW5mZXJyZWQgYmFzZWQgb24gdGhlIE9ic2lkaWFuIHNldHRpbmdzLlxuICAgKi9cbiAgZm9yY2VSZWxhdGl2ZVBhdGg/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGxpbmsgc2hvdWxkIHVzZSBhIGxlYWRpbmcgZG90LiBEZWZhdWx0cyB0byBgZmFsc2VgLiBIYXMgbm8gZWZmZWN0IGlmIGBpc1dpa2lsaW5rYCBpcyBgdHJ1ZWAgb3IgYGlzUmVsYXRpdmVgIGlzIGBmYWxzZWAuXG4gICAqL1xuICB1c2VMZWFkaW5nRG90PzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBsaW5rIHNob3VsZCB1c2UgYW5nbGUgYnJhY2tldHMuIERlZmF1bHRzIHRvIGBmYWxzZWAuIEhhcyBubyBlZmZlY3QgaWYgYGlzV2lraWxpbmtgIGlzIGB0cnVlYFxuICAgKi9cbiAgdXNlQW5nbGVCcmFja2V0cz86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAgKiBUaGUgb3JpZ2luYWwgbGluayB0ZXh0LiBJZiBwcm92aWRlZCwgaXQgd2lsbCBiZSB1c2VkIHRvIGluZmVyIHRoZSB2YWx1ZXMgb2YgYGlzRW1iZWRgLCBgaXNXaWtpbGlua2AsIGB1c2VMZWFkaW5nRG90YCwgYW5kIGB1c2VBbmdsZUJyYWNrZXRzYC5cbiAgICAqIFRoZXNlIGluZmVycmVkIHZhbHVlcyB3aWxsIGJlIG92ZXJyaWRkZW4gYnkgY29ycmVzcG9uZGluZyBzZXR0aW5ncyBpZiBzcGVjaWZpZWQuXG4gICAgKi9cbiAgb3JpZ2luYWxMaW5rPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGFsbG93IG5vbi1leGlzdGluZyBmaWxlcy4gSWYgYGZhbHNlYCBhbmQgYHBhdGhPckZpbGVgIGlzIGEgbm9uLWV4aXN0aW5nIGZpbGUsIGFuIGVycm9yIHdpbGwgYmUgdGhyb3duLiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgYWxsb3dOb25FeGlzdGluZ0ZpbGU/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGFsbG93IGFuIGVtcHR5IGFsaWFzIGZvciBlbWJlZHMuIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIGFsbG93RW1wdHlFbWJlZEFsaWFzPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byBpbmNsdWRlIHRoZSBhdHRhY2htZW50IGV4dGVuc2lvbiBpbiB0aGUgZW1iZWQgYWxpYXMuIEhhcyBubyBlZmZlY3QgaWYgYGFsbG93RW1wdHlFbWJlZEFsaWFzYCBpcyBgdHJ1ZWAuIERlZmF1bHRzIHRvIGBmYWxzZWAuXG4gICAqL1xuICBpbmNsdWRlQXR0YWNobWVudEV4dGVuc2lvblRvRW1iZWRBbGlhcz86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGEgbWFya2Rvd24gbGluayBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgcGFyYW1ldGVycy5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciBnZW5lcmF0aW5nIHRoZSBtYXJrZG93biBsaW5rLlxuICogQHJldHVybnMgVGhlIGdlbmVyYXRlZCBtYXJrZG93biBsaW5rLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVNYXJrZG93bkxpbmsob3B0aW9uczogR2VuZXJhdGVNYXJrZG93bkxpbmtPcHRpb25zKTogc3RyaW5nIHtcbiAgY29uc3QgeyBhcHAgfSA9IG9wdGlvbnM7XG5cbiAgY29uc3QgY29uZmlndXJhYmxlRGVmYXVsdE9wdGlvbnNGbiA9IChhcHAuZmlsZU1hbmFnZXIuZ2VuZXJhdGVNYXJrZG93bkxpbmsgYXMgUGFydGlhbDxHZW5lcmF0ZU1hcmtkb3duTGlua0RlZmF1bHRPcHRpb25zV3JhcHBlcj4pLmRlZmF1bHRPcHRpb25zRm4gPz8gKCgpOiBQYXJ0aWFsPEdlbmVyYXRlTWFya2Rvd25MaW5rT3B0aW9ucz4gPT4gKHt9KSk7XG4gIGNvbnN0IGNvbmZpZ3VyYWJsZURlZmF1bHRPcHRpb25zID0gY29uZmlndXJhYmxlRGVmYXVsdE9wdGlvbnNGbigpO1xuXG4gIGNvbnN0IERFRkFVTFRfT1BUSU9OUzogUGFydGlhbDxHZW5lcmF0ZU1hcmtkb3duTGlua09wdGlvbnM+ID0ge1xuICAgIGFsbG93RW1wdHlFbWJlZEFsaWFzOiB0cnVlXG4gIH07XG5cbiAgb3B0aW9ucyA9IHsgLi4uREVGQVVMVF9PUFRJT05TLCAuLi5jb25maWd1cmFibGVEZWZhdWx0T3B0aW9ucywgLi4ub3B0aW9ucyB9O1xuXG4gIGNvbnN0IGZpbGUgPSBnZXRGaWxlKGFwcCwgb3B0aW9ucy5wYXRoT3JGaWxlLCBvcHRpb25zLmFsbG93Tm9uRXhpc3RpbmdGaWxlKTtcblxuICByZXR1cm4gdGVtcFJlZ2lzdGVyRmlsZUFuZFJ1bihhcHAsIGZpbGUsICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2VQYXRoID0gZ2V0UGF0aChvcHRpb25zLnNvdXJjZVBhdGhPckZpbGUpO1xuICAgIGNvbnN0IHN1YnBhdGggPSBvcHRpb25zLnN1YnBhdGggPz8gJyc7XG4gICAgbGV0IGFsaWFzID0gb3B0aW9ucy5hbGlhcyA/PyAnJztcbiAgICBjb25zdCBpc0VtYmVkID0gb3B0aW9ucy5pc0VtYmVkID8/IChvcHRpb25zLm9yaWdpbmFsTGluayA/IHRlc3RFbWJlZChvcHRpb25zLm9yaWdpbmFsTGluaykgOiB1bmRlZmluZWQpID8/ICFpc01hcmtkb3duRmlsZShmaWxlKTtcbiAgICBjb25zdCBpc1dpa2lsaW5rID0gb3B0aW9ucy5pc1dpa2lsaW5rID8/IChvcHRpb25zLm9yaWdpbmFsTGluayA/IHRlc3RXaWtpbGluayhvcHRpb25zLm9yaWdpbmFsTGluaykgOiB1bmRlZmluZWQpID8/IHNob3VsZFVzZVdpa2lsaW5rcyhhcHApO1xuICAgIGNvbnN0IGZvcmNlUmVsYXRpdmVQYXRoID0gb3B0aW9ucy5mb3JjZVJlbGF0aXZlUGF0aCA/PyBzaG91bGRVc2VSZWxhdGl2ZUxpbmtzKGFwcCk7XG4gICAgY29uc3QgdXNlTGVhZGluZ0RvdCA9IG9wdGlvbnMudXNlTGVhZGluZ0RvdCA/PyAob3B0aW9ucy5vcmlnaW5hbExpbmsgPyB0ZXN0TGVhZGluZ0RvdChvcHRpb25zLm9yaWdpbmFsTGluaykgOiB1bmRlZmluZWQpID8/IGZhbHNlO1xuICAgIGNvbnN0IHVzZUFuZ2xlQnJhY2tldHMgPSBvcHRpb25zLnVzZUFuZ2xlQnJhY2tldHMgPz8gKG9wdGlvbnMub3JpZ2luYWxMaW5rID8gdGVzdEFuZ2xlQnJhY2tldHMob3B0aW9ucy5vcmlnaW5hbExpbmspIDogdW5kZWZpbmVkKSA/PyBmYWxzZTtcblxuICAgIGxldCBsaW5rVGV4dCA9IGZpbGUucGF0aCA9PT0gc291cmNlUGF0aCAmJiBzdWJwYXRoXG4gICAgICA/IHN1YnBhdGhcbiAgICAgIDogZm9yY2VSZWxhdGl2ZVBhdGhcbiAgICAgICAgPyByZWxhdGl2ZShkaXJuYW1lKHNvdXJjZVBhdGgpLCBpc1dpa2lsaW5rID8gdHJpbU1hcmtkb3duRXh0ZW5zaW9uKGZpbGUpIDogZmlsZS5wYXRoKSArIHN1YnBhdGhcbiAgICAgICAgOiBhcHAubWV0YWRhdGFDYWNoZS5maWxlVG9MaW5rdGV4dChmaWxlLCBzb3VyY2VQYXRoLCBpc1dpa2lsaW5rKSArIHN1YnBhdGg7XG5cbiAgICBpZiAoZm9yY2VSZWxhdGl2ZVBhdGggJiYgdXNlTGVhZGluZ0RvdCAmJiAhbGlua1RleHQuc3RhcnRzV2l0aCgnLicpICYmICFsaW5rVGV4dC5zdGFydHNXaXRoKCcjJykpIHtcbiAgICAgIGxpbmtUZXh0ID0gJy4vJyArIGxpbmtUZXh0O1xuICAgIH1cblxuICAgIGNvbnN0IGVtYmVkUHJlZml4ID0gaXNFbWJlZCA/ICchJyA6ICcnO1xuXG4gICAgaWYgKCFpc1dpa2lsaW5rKSB7XG4gICAgICBpZiAodXNlQW5nbGVCcmFja2V0cykge1xuICAgICAgICBsaW5rVGV4dCA9IGA8JHtsaW5rVGV4dH0+YDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxpbmtUZXh0ID0gbGlua1RleHQucmVwbGFjZShTUEVDSUFMX0xJTktfU1lNQk9MU19SRUdFWFAsIGZ1bmN0aW9uIChzcGVjaWFsTGlua1N5bWJvbCkge1xuICAgICAgICAgIHJldHVybiBlbmNvZGVVUklDb21wb25lbnQoc3BlY2lhbExpbmtTeW1ib2wpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFhbGlhcyAmJiAoIWlzRW1iZWQgfHwgIW9wdGlvbnMuYWxsb3dFbXB0eUVtYmVkQWxpYXMpKSB7XG4gICAgICAgIGFsaWFzID0gIW9wdGlvbnMuaW5jbHVkZUF0dGFjaG1lbnRFeHRlbnNpb25Ub0VtYmVkQWxpYXMgfHwgaXNNYXJrZG93bkZpbGUoZmlsZSkgPyBmaWxlLmJhc2VuYW1lIDogZmlsZS5uYW1lO1xuICAgICAgfVxuXG4gICAgICBhbGlhcyA9IGFsaWFzLnJlcGxhY2UoU1BFQ0lBTF9NQVJLRE9XTl9MSU5LX1NZTUJPTFNfUkVHRVgsICdcXFxcJCYnKTtcblxuICAgICAgcmV0dXJuIGAke2VtYmVkUHJlZml4fVske2FsaWFzfV0oJHtsaW5rVGV4dH0pYDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGFsaWFzICYmIGFsaWFzLnRvTG93ZXJDYXNlKCkgPT09IGxpbmtUZXh0LnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgbGlua1RleHQgPSBhbGlhcztcbiAgICAgICAgYWxpYXMgPSAnJztcbiAgICAgIH1cblxuICAgICAgY29uc3QgYWxpYXNQYXJ0ID0gYWxpYXMgPyBgfCR7YWxpYXN9YCA6ICcnO1xuICAgICAgcmV0dXJuIGAke2VtYmVkUHJlZml4fVtbJHtsaW5rVGV4dH0ke2FsaWFzUGFydH1dXWA7XG4gICAgfVxuICB9KTtcbn1cblxuLyoqXG4gKiBFZGl0cyB0aGUgbGlua3MgaW4gdGhlIHNwZWNpZmllZCBmaWxlIG9yIHBhdGggdXNpbmcgdGhlIHByb3ZpZGVkIGxpbmsgY29udmVydGVyIGZ1bmN0aW9uLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gZWRpdCB0aGUgbGlua3MgaW4uXG4gKiBAcGFyYW0gbGlua0NvbnZlcnRlciAtIFRoZSBmdW5jdGlvbiB0aGF0IGNvbnZlcnRzIGVhY2ggbGluay5cbiAqIEBwYXJhbSByZXRyeU9wdGlvbnMgLSBPcHRpb25hbCBvcHRpb25zIGZvciByZXRyeWluZyB0aGUgb3BlcmF0aW9uLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgbGlua3MgaGF2ZSBiZWVuIGVkaXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVkaXRMaW5rcyhcbiAgYXBwOiBBcHAsXG4gIHBhdGhPckZpbGU6IFBhdGhPckZpbGUsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8taW52YWxpZC12b2lkLXR5cGVcbiAgbGlua0NvbnZlcnRlcjogKGxpbms6IFJlZmVyZW5jZUNhY2hlKSA9PiBNYXliZVByb21pc2U8c3RyaW5nIHwgdm9pZD4sXG4gIHJldHJ5T3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgYXBwbHlGaWxlQ2hhbmdlcyhhcHAsIHBhdGhPckZpbGUsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBjYWNoZSA9IGF3YWl0IGdldENhY2hlU2FmZShhcHAsIHBhdGhPckZpbGUpO1xuICAgIGlmICghY2FjaGUpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBjaGFuZ2VzOiBGaWxlQ2hhbmdlW10gPSBbXTtcblxuICAgIGZvciAoY29uc3QgbGluayBvZiBnZXRBbGxMaW5rcyhjYWNoZSkpIHtcbiAgICAgIGNvbnN0IG5ld0NvbnRlbnQgPSBhd2FpdCBsaW5rQ29udmVydGVyKGxpbmspO1xuICAgICAgaWYgKG5ld0NvbnRlbnQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY2hhbmdlcy5wdXNoKHtcbiAgICAgICAgc3RhcnRJbmRleDogbGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQsXG4gICAgICAgIGVuZEluZGV4OiBsaW5rLnBvc2l0aW9uLmVuZC5vZmZzZXQsXG4gICAgICAgIG9sZENvbnRlbnQ6IGxpbmsub3JpZ2luYWwsXG4gICAgICAgIG5ld0NvbnRlbnRcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjaGFuZ2VzO1xuICB9LCByZXRyeU9wdGlvbnMpO1xufVxuXG4vKipcbiAqIFRlc3RzIHdoZXRoZXIgYSBsaW5rIGlzIGFuIGVtYmVkIGxpbms6XG4gKiBgIVtbbGlua11dYCwgYCFbdGl0bGVdKGxpbmspYC5cbiAqXG4gKiBAcGFyYW0gbGluayAtIExpbmsgdG8gdGVzdFxuICogQHJldHVybnMgV2hldGhlciB0aGUgbGluayBpcyBhbiBlbWJlZCBsaW5rXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0ZXN0RW1iZWQobGluazogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiBsaW5rLnN0YXJ0c1dpdGgoJyFbJyk7XG59XG5cbi8qKlxuICogVGVzdHMgd2hldGhlciBhIGxpbmsgaXMgYSB3aWtpbGluaywgcG9zc2libHkgZW1iZWQ6XG4gKiBgW1tsaW5rXV1gLCBgIVtbbGlua11dYC5cbiAqXG4gKiBAcGFyYW0gbGluayAtIExpbmsgdG8gdGVzdFxuICogQHJldHVybnMgV2hldGhlciB0aGUgbGluayBpcyBhIHdpa2lsaW5rXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0ZXN0V2lraWxpbmsobGluazogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiBsaW5rLmluY2x1ZGVzKCdbWycpO1xufVxuXG4vKipcbiAqIFRlc3RzIHdoZXRoZXIgYSBsaW5rIGhhcyBhIGxlYWRpbmcgZG90LCBwb3NzaWJseSBlbWJlZDpcbiAqIGBbWy4vbGlua11dYCwgYFt0aXRsZV0oLi9saW5rKWAsIGBbdGl0bGVdKDwuL2xpbms+KWAsXG4gKiBgIVtbLi9saW5rXV1gLCBgIVt0aXRsZV0oLi9saW5rKWAsIGAhW3RpdGxlXSg8Li9saW5rPilgLlxuICpcbiAqIEBwYXJhbSBsaW5rIC0gTGluayB0byB0ZXN0XG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBsaW5rIGhhcyBhIGxlYWRpbmcgZG90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0ZXN0TGVhZGluZ0RvdChsaW5rOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIGxpbmsuaW5jbHVkZXMoJ1tbLi8nKSB8fCBsaW5rLmluY2x1ZGVzKCddKC4vJykgfHwgbGluay5pbmNsdWRlcygnXSg8Li8nKTtcbn1cblxuLyoqXG4gKiBUZXN0cyB3aGV0aGVyIGEgbGluayB1c2VzIGFuZ2xlIGJyYWNrZXRzLCBwb3NzaWJseSBlbWJlZDpcbiAqIGBbdGl0bGVdKDxsaW5rPilgLCBgIVt0aXRsZV0oPGxpbms+KWAuXG4gKlxuICogQHBhcmFtIGxpbmsgLSBMaW5rIHRvIHRlc3RcbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGxpbmsgdXNlcyBhbmdsZSBicmFja2V0c1xuICovXG5leHBvcnQgZnVuY3Rpb24gdGVzdEFuZ2xlQnJhY2tldHMobGluazogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiBsaW5rLmluY2x1ZGVzKCddKDwnKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVlBLHNCQUE4QjtBQU05QixrQkFNTztBQUNQLG9CQUEwQjtBQUUxQix3QkFLTztBQUNQLDJCQUlPO0FBQ1AsOEJBR087QUFFUCxtQkFBaUM7QUFNakMsTUFBTSw4QkFBOEI7QUFLcEMsTUFBTSxzQ0FBc0M7QUF1QnJDLFNBQVMsYUFBYSxNQUFrQztBQUM3RCxRQUFNLG9CQUFvQjtBQUMxQixRQUFNLENBQUMsV0FBVyxJQUFJLE9BQU8sUUFBSSx5QkFBVSxJQUFJLEVBQUUsTUFBTSxpQkFBaUI7QUFDeEUsU0FBTztBQUFBLElBQ0w7QUFBQSxJQUNBLFNBQVMsVUFBVSxvQkFBb0IsVUFBVTtBQUFBLEVBQ25EO0FBQ0Y7QUFnREEsZUFBc0Isa0JBQWtC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
@@ -29,21 +29,6 @@ __export(Logger_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(Logger_exports);
31
31
  var import_Error = require('../Error.cjs');
32
- var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
33
- if (typeof require !== "undefined" && typeof module !== "undefined") {
34
- const url = require('node:url');
35
- return url.pathToFileURL(__filename).href;
36
- }
37
- if (typeof window !== "undefined") {
38
- return window.location.href;
39
- }
40
- return __import_meta_url;
41
- })();
42
- var __process = globalThis["process"] ?? {
43
- "cwd": () => "/",
44
- "env": {},
45
- "platform": "android"
46
- };
47
32
  async function invokeAsyncAndLog(title, fn, stackTrace) {
48
33
  const timestampStart = Date.now();
49
34
  if (stackTrace === void 0) {
@@ -77,4 +62,4 @@ async function invokeAsyncAndLog(title, fn, stackTrace) {
77
62
  0 && (module.exports = {
78
63
  invokeAsyncAndLog
79
64
  });
80
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL0xvZ2dlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsidmFyIF9faW1wb3J0X21ldGFfdXJsID0gZ2xvYmFsVGhpc1snaW1wb3J0Lm1ldGEudXJsJ10gPz8gKCgpPT57aWYodHlwZW9mIHJlcXVpcmUhPT1cInVuZGVmaW5lZFwiJiZ0eXBlb2YgbW9kdWxlIT09XCJ1bmRlZmluZWRcIil7Y29uc3QgdXJsPXJlcXVpcmUoXCJub2RlOnVybFwiKTtyZXR1cm4gdXJsLnBhdGhUb0ZpbGVVUkwoX19maWxlbmFtZSkuaHJlZn1pZih0eXBlb2Ygd2luZG93IT09XCJ1bmRlZmluZWRcIil7cmV0dXJuIHdpbmRvdy5sb2NhdGlvbi5ocmVmfXJldHVybiBpbXBvcnQubWV0YS51cmx9KSgpO1xudmFyIF9fcHJvY2VzcyA9IGdsb2JhbFRoaXNbJ3Byb2Nlc3MnXSA/PyB7XG4gIFwiY3dkXCI6ICgpPT5cIi9cIixcbiAgXCJlbnZcIjoge30sXG4gIFwicGxhdGZvcm1cIjogXCJhbmRyb2lkXCJcbn07XG5pbXBvcnQgdHlwZSB7IE1heWJlUHJvbWlzZSB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IGdldFN0YWNrVHJhY2UgfSBmcm9tICcuLi9FcnJvci50cyc7XG5cbi8qKlxuICogSW52b2tlcyBhIGZ1bmN0aW9uIGFuZCBsb2dzIHRoZSBzdGFydCwgZW5kLCBhbmQgZHVyYXRpb24gb2YgdGhlIGludm9jYXRpb24uXG4gKlxuICogQHBhcmFtIHRpdGxlIC0gVGhlIHRpdGxlIG9mIHRoZSBsb2cuXG4gKiBAcGFyYW0gZm4gLSBUaGUgZnVuY3Rpb24gdG8gaW52b2tlLlxuICogQHBhcmFtIHN0YWNrVHJhY2UgLSBPcHRpb25hbCBzdGFjayB0cmFjZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGludm9rZUFzeW5jQW5kTG9nKHRpdGxlOiBzdHJpbmcsIGZuOiAoKSA9PiBNYXliZVByb21pc2U8dm9pZD4sIHN0YWNrVHJhY2U/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgdGltZXN0YW1wU3RhcnQgPSBEYXRlLm5vdygpO1xuICBpZiAoc3RhY2tUcmFjZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgc3RhY2tUcmFjZSA9IGdldFN0YWNrVHJhY2UoKS5zcGxpdCgnXFxuJykuc2xpY2UoMSkuam9pbignXFxuJyk7XG4gIH1cbiAgY29uc29sZS5kZWJ1ZyhgJHt0aXRsZX06c3RhcnRgLCB7XG4gICAgdGltZXN0YW1wU3RhcnQsXG4gICAgZm4sXG4gICAgc3RhY2tUcmFjZVxuICB9KTtcbiAgdHJ5IHtcbiAgICBhd2FpdCBmbigpO1xuICAgIGNvbnN0IHRpbWVzdGFtcEVuZCA9IERhdGUubm93KCk7XG4gICAgY29uc29sZS5kZWJ1ZyhgJHt0aXRsZX06ZW5kYCwge1xuICAgICAgdGltZXN0YW1wU3RhcnQsXG4gICAgICB0aW1lc3RhbXBFbmQsXG4gICAgICBkdXJhdGlvbjogdGltZXN0YW1wRW5kIC0gdGltZXN0YW1wU3RhcnRcbiAgICB9KTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zdCB0aW1lc3RhbXBFbmQgPSBEYXRlLm5vdygpO1xuICAgIGNvbnNvbGUuZGVidWcoYCR7dGl0bGV9OmVycm9yYCwge1xuICAgICAgdGltZXN0YW1wU3RhcnQsXG4gICAgICB0aW1lc3RhbXBFbmQ6IERhdGUubm93KCksXG4gICAgICBkdXJhdGlvbjogdGltZXN0YW1wRW5kIC0gdGltZXN0YW1wU3RhcnQsXG4gICAgICBlcnJvclxuICAgIH0pO1xuXG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0EsbUJBQThCO0FBUDlCLElBQUksb0JBQW9CLFdBQVcsaUJBQWlCLE1BQU0sTUFBSTtBQUFDLE1BQUcsT0FBTyxZQUFVLGVBQWEsT0FBTyxXQUFTLGFBQVk7QUFBQyxVQUFNLE1BQUksUUFBUSxVQUFVO0FBQUUsV0FBTyxJQUFJLGNBQWMsVUFBVSxFQUFFO0FBQUEsRUFBSTtBQUFDLE1BQUcsT0FBTyxXQUFTLGFBQVk7QUFBQyxXQUFPLE9BQU8sU0FBUztBQUFBLEVBQUk7QUFBQyxTQUFPO0FBQWUsR0FBRztBQUMxUixJQUFJLFlBQVksV0FBVyxTQUFTLEtBQUs7QUFBQSxFQUN2QyxPQUFPLE1BQUk7QUFBQSxFQUNYLE9BQU8sQ0FBQztBQUFBLEVBQ1IsWUFBWTtBQUNkO0FBV0EsZUFBc0Isa0JBQWtCLE9BQWUsSUFBOEIsWUFBb0M7QUFDdkgsUUFBTSxpQkFBaUIsS0FBSyxJQUFJO0FBQ2hDLE1BQUksZUFBZSxRQUFXO0FBQzVCLHFCQUFhLDRCQUFjLEVBQUUsTUFBTSxJQUFJLEVBQUUsTUFBTSxDQUFDLEVBQUUsS0FBSyxJQUFJO0FBQUEsRUFDN0Q7QUFDQSxVQUFRLE1BQU0sR0FBRyxLQUFLLFVBQVU7QUFBQSxJQUM5QjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsRUFDRixDQUFDO0FBQ0QsTUFBSTtBQUNGLFVBQU0sR0FBRztBQUNULFVBQU0sZUFBZSxLQUFLLElBQUk7QUFDOUIsWUFBUSxNQUFNLEdBQUcsS0FBSyxRQUFRO0FBQUEsTUFDNUI7QUFBQSxNQUNBO0FBQUEsTUFDQSxVQUFVLGVBQWU7QUFBQSxJQUMzQixDQUFDO0FBQUEsRUFDSCxTQUFTLE9BQU87QUFDZCxVQUFNLGVBQWUsS0FBSyxJQUFJO0FBQzlCLFlBQVEsTUFBTSxHQUFHLEtBQUssVUFBVTtBQUFBLE1BQzlCO0FBQUEsTUFDQSxjQUFjLEtBQUssSUFBSTtBQUFBLE1BQ3ZCLFVBQVUsZUFBZTtBQUFBLE1BQ3pCO0FBQUEsSUFDRixDQUFDO0FBRUQsVUFBTTtBQUFBLEVBQ1I7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
65
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL0xvZ2dlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHR5cGUgeyBNYXliZVByb21pc2UgfSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgeyBnZXRTdGFja1RyYWNlIH0gZnJvbSAnLi4vRXJyb3IudHMnO1xuXG4vKipcbiAqIEludm9rZXMgYSBmdW5jdGlvbiBhbmQgbG9ncyB0aGUgc3RhcnQsIGVuZCwgYW5kIGR1cmF0aW9uIG9mIHRoZSBpbnZvY2F0aW9uLlxuICpcbiAqIEBwYXJhbSB0aXRsZSAtIFRoZSB0aXRsZSBvZiB0aGUgbG9nLlxuICogQHBhcmFtIGZuIC0gVGhlIGZ1bmN0aW9uIHRvIGludm9rZS5cbiAqIEBwYXJhbSBzdGFja1RyYWNlIC0gT3B0aW9uYWwgc3RhY2sgdHJhY2UuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbnZva2VBc3luY0FuZExvZyh0aXRsZTogc3RyaW5nLCBmbjogKCkgPT4gTWF5YmVQcm9taXNlPHZvaWQ+LCBzdGFja1RyYWNlPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHRpbWVzdGFtcFN0YXJ0ID0gRGF0ZS5ub3coKTtcbiAgaWYgKHN0YWNrVHJhY2UgPT09IHVuZGVmaW5lZCkge1xuICAgIHN0YWNrVHJhY2UgPSBnZXRTdGFja1RyYWNlKCkuc3BsaXQoJ1xcbicpLnNsaWNlKDEpLmpvaW4oJ1xcbicpO1xuICB9XG4gIGNvbnNvbGUuZGVidWcoYCR7dGl0bGV9OnN0YXJ0YCwge1xuICAgIHRpbWVzdGFtcFN0YXJ0LFxuICAgIGZuLFxuICAgIHN0YWNrVHJhY2VcbiAgfSk7XG4gIHRyeSB7XG4gICAgYXdhaXQgZm4oKTtcbiAgICBjb25zdCB0aW1lc3RhbXBFbmQgPSBEYXRlLm5vdygpO1xuICAgIGNvbnNvbGUuZGVidWcoYCR7dGl0bGV9OmVuZGAsIHtcbiAgICAgIHRpbWVzdGFtcFN0YXJ0LFxuICAgICAgdGltZXN0YW1wRW5kLFxuICAgICAgZHVyYXRpb246IHRpbWVzdGFtcEVuZCAtIHRpbWVzdGFtcFN0YXJ0XG4gICAgfSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc3QgdGltZXN0YW1wRW5kID0gRGF0ZS5ub3coKTtcbiAgICBjb25zb2xlLmRlYnVnKGAke3RpdGxlfTplcnJvcmAsIHtcbiAgICAgIHRpbWVzdGFtcFN0YXJ0LFxuICAgICAgdGltZXN0YW1wRW5kOiBEYXRlLm5vdygpLFxuICAgICAgZHVyYXRpb246IHRpbWVzdGFtcEVuZCAtIHRpbWVzdGFtcFN0YXJ0LFxuICAgICAgZXJyb3JcbiAgICB9KTtcblxuICAgIHRocm93IGVycm9yO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBLG1CQUE4QjtBQVM5QixlQUFzQixrQkFBa0IsT0FBZSxJQUE4QixZQUFvQztBQUN2SCxRQUFNLGlCQUFpQixLQUFLLElBQUk7QUFDaEMsTUFBSSxlQUFlLFFBQVc7QUFDNUIscUJBQWEsNEJBQWMsRUFBRSxNQUFNLElBQUksRUFBRSxNQUFNLENBQUMsRUFBRSxLQUFLLElBQUk7QUFBQSxFQUM3RDtBQUNBLFVBQVEsTUFBTSxHQUFHLEtBQUssVUFBVTtBQUFBLElBQzlCO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxFQUNGLENBQUM7QUFDRCxNQUFJO0FBQ0YsVUFBTSxHQUFHO0FBQ1QsVUFBTSxlQUFlLEtBQUssSUFBSTtBQUM5QixZQUFRLE1BQU0sR0FBRyxLQUFLLFFBQVE7QUFBQSxNQUM1QjtBQUFBLE1BQ0E7QUFBQSxNQUNBLFVBQVUsZUFBZTtBQUFBLElBQzNCLENBQUM7QUFBQSxFQUNILFNBQVMsT0FBTztBQUNkLFVBQU0sZUFBZSxLQUFLLElBQUk7QUFDOUIsWUFBUSxNQUFNLEdBQUcsS0FBSyxVQUFVO0FBQUEsTUFDOUI7QUFBQSxNQUNBLGNBQWMsS0FBSyxJQUFJO0FBQUEsTUFDdkIsVUFBVSxlQUFlO0FBQUEsTUFDekI7QUFBQSxJQUNGLENBQUM7QUFFRCxVQUFNO0FBQUEsRUFDUjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -29,16 +29,6 @@ __export(MarkdownCodeBlockProcessor_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(MarkdownCodeBlockProcessor_exports);
31
31
  var import_Error = require('../Error.cjs');
32
- var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
33
- if (typeof require !== "undefined" && typeof module !== "undefined") {
34
- const url = require('node:url');
35
- return url.pathToFileURL(__filename).href;
36
- }
37
- if (typeof window !== "undefined") {
38
- return window.location.href;
39
- }
40
- return __import_meta_url;
41
- })();
42
32
  var __process = globalThis["process"] ?? {
43
33
  "cwd": () => "/",
44
34
  "env": {},
@@ -61,4 +51,4 @@ function getCodeBlockArgument(ctx, el) {
61
51
  0 && (module.exports = {
62
52
  getCodeBlockArgument
63
53
  });
64
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL01hcmtkb3duQ29kZUJsb2NrUHJvY2Vzc29yLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19pbXBvcnRfbWV0YV91cmwgPSBnbG9iYWxUaGlzWydpbXBvcnQubWV0YS51cmwnXSA/PyAoKCk9PntpZih0eXBlb2YgcmVxdWlyZSE9PVwidW5kZWZpbmVkXCImJnR5cGVvZiBtb2R1bGUhPT1cInVuZGVmaW5lZFwiKXtjb25zdCB1cmw9cmVxdWlyZShcIm5vZGU6dXJsXCIpO3JldHVybiB1cmwucGF0aFRvRmlsZVVSTChfX2ZpbGVuYW1lKS5ocmVmfWlmKHR5cGVvZiB3aW5kb3chPT1cInVuZGVmaW5lZFwiKXtyZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWZ9cmV0dXJuIGltcG9ydC5tZXRhLnVybH0pKCk7XG52YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIE1hcmtkb3duQ29kZUJsb2NrUHJvY2Vzc29yXG4gKiBUaGlzIG1vZHVsZSBwcm92aWRlcyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgcHJvY2Vzc2luZyBjb2RlIGJsb2NrcyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IE1hcmtkb3duUG9zdFByb2Nlc3NvckNvbnRleHQgfSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB7IHRocm93RXhwcmVzc2lvbiB9IGZyb20gJy4uL0Vycm9yLnRzJztcblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIGFyZ3VtZW50IG9mIGEgY29kZSBibG9jayBmcm9tIHRoZSBnaXZlbiBNYXJrZG93blBvc3RQcm9jZXNzb3JDb250ZXh0IGFuZCBIVE1MRWxlbWVudC5cbiAqXG4gKiBAcGFyYW0gY3R4IC0gVGhlIE1hcmtkb3duUG9zdFByb2Nlc3NvckNvbnRleHQgb2JqZWN0LlxuICogQHBhcmFtIGVsIC0gVGhlIEhUTUxFbGVtZW50IHJlcHJlc2VudGluZyB0aGUgY29kZSBibG9jay5cbiAqIEByZXR1cm5zIFRoZSBhcmd1bWVudCBvZiB0aGUgY29kZSBibG9jayBhcyBhIHN0cmluZywgb3IgbnVsbCBpZiBubyBhcmd1bWVudCBpcyBmb3VuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENvZGVCbG9ja0FyZ3VtZW50KGN0eDogTWFya2Rvd25Qb3N0UHJvY2Vzc29yQ29udGV4dCwgZWw6IEhUTUxFbGVtZW50KTogc3RyaW5nIHwgbnVsbCB7XG4gIGNvbnN0IHNlY3Rpb25JbmZvID0gY3R4LmdldFNlY3Rpb25JbmZvKGVsKTtcbiAgaWYgKCFzZWN0aW9uSW5mbykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGNvbnN0IGxpbmVzID0gc2VjdGlvbkluZm8udGV4dC5zcGxpdCgnXFxuJyk7XG4gIGNvbnN0IGNvZGVCbG9ja0hlYWRlciA9IGxpbmVzW3NlY3Rpb25JbmZvLmxpbmVTdGFydF0gPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignQ29kZSBibG9jayBoZWFkZXIgbm90IGZvdW5kJykpO1xuICBjb25zdCBtYXRjaCA9IC9eYHszLH1cXFMrXFxzKyguKikkLy5leGVjKGNvZGVCbG9ja0hlYWRlcik7XG4gIGlmICghbWF0Y2gpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4gbWF0Y2hbMV0/LnRyaW0oKSA/PyBudWxsO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFhQSxtQkFBZ0M7QUFiaEMsSUFBSSxvQkFBb0IsV0FBVyxpQkFBaUIsTUFBTSxNQUFJO0FBQUMsTUFBRyxPQUFPLFlBQVUsZUFBYSxPQUFPLFdBQVMsYUFBWTtBQUFDLFVBQU0sTUFBSSxRQUFRLFVBQVU7QUFBRSxXQUFPLElBQUksY0FBYyxVQUFVLEVBQUU7QUFBQSxFQUFJO0FBQUMsTUFBRyxPQUFPLFdBQVMsYUFBWTtBQUFDLFdBQU8sT0FBTyxTQUFTO0FBQUEsRUFBSTtBQUFDLFNBQU87QUFBZSxHQUFHO0FBQzFSLElBQUksWUFBWSxXQUFXLFNBQVMsS0FBSztBQUFBLEVBQ3ZDLE9BQU8sTUFBSTtBQUFBLEVBQ1gsT0FBTyxDQUFDO0FBQUEsRUFDUixZQUFZO0FBQ2Q7QUFpQk8sU0FBUyxxQkFBcUIsS0FBbUMsSUFBZ0M7QUFDdEcsUUFBTSxjQUFjLElBQUksZUFBZSxFQUFFO0FBQ3pDLE1BQUksQ0FBQyxhQUFhO0FBQ2hCLFdBQU87QUFBQSxFQUNUO0FBQ0EsUUFBTSxRQUFRLFlBQVksS0FBSyxNQUFNLElBQUk7QUFDekMsUUFBTSxrQkFBa0IsTUFBTSxZQUFZLFNBQVMsU0FBSyw4QkFBZ0IsSUFBSSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hILFFBQU0sUUFBUSxvQkFBb0IsS0FBSyxlQUFlO0FBQ3RELE1BQUksQ0FBQyxPQUFPO0FBQ1YsV0FBTztBQUFBLEVBQ1Q7QUFDQSxTQUFPLE1BQU0sQ0FBQyxHQUFHLEtBQUssS0FBSztBQUM3QjsiLAogICJuYW1lcyI6IFtdCn0K
54
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL01hcmtkb3duQ29kZUJsb2NrUHJvY2Vzc29yLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIE1hcmtkb3duQ29kZUJsb2NrUHJvY2Vzc29yXG4gKiBUaGlzIG1vZHVsZSBwcm92aWRlcyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgcHJvY2Vzc2luZyBjb2RlIGJsb2NrcyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IE1hcmtkb3duUG9zdFByb2Nlc3NvckNvbnRleHQgfSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB7IHRocm93RXhwcmVzc2lvbiB9IGZyb20gJy4uL0Vycm9yLnRzJztcblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIGFyZ3VtZW50IG9mIGEgY29kZSBibG9jayBmcm9tIHRoZSBnaXZlbiBNYXJrZG93blBvc3RQcm9jZXNzb3JDb250ZXh0IGFuZCBIVE1MRWxlbWVudC5cbiAqXG4gKiBAcGFyYW0gY3R4IC0gVGhlIE1hcmtkb3duUG9zdFByb2Nlc3NvckNvbnRleHQgb2JqZWN0LlxuICogQHBhcmFtIGVsIC0gVGhlIEhUTUxFbGVtZW50IHJlcHJlc2VudGluZyB0aGUgY29kZSBibG9jay5cbiAqIEByZXR1cm5zIFRoZSBhcmd1bWVudCBvZiB0aGUgY29kZSBibG9jayBhcyBhIHN0cmluZywgb3IgbnVsbCBpZiBubyBhcmd1bWVudCBpcyBmb3VuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENvZGVCbG9ja0FyZ3VtZW50KGN0eDogTWFya2Rvd25Qb3N0UHJvY2Vzc29yQ29udGV4dCwgZWw6IEhUTUxFbGVtZW50KTogc3RyaW5nIHwgbnVsbCB7XG4gIGNvbnN0IHNlY3Rpb25JbmZvID0gY3R4LmdldFNlY3Rpb25JbmZvKGVsKTtcbiAgaWYgKCFzZWN0aW9uSW5mbykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGNvbnN0IGxpbmVzID0gc2VjdGlvbkluZm8udGV4dC5zcGxpdCgnXFxuJyk7XG4gIGNvbnN0IGNvZGVCbG9ja0hlYWRlciA9IGxpbmVzW3NlY3Rpb25JbmZvLmxpbmVTdGFydF0gPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignQ29kZSBibG9jayBoZWFkZXIgbm90IGZvdW5kJykpO1xuICBjb25zdCBtYXRjaCA9IC9eYHszLH1cXFMrXFxzKyguKikkLy5leGVjKGNvZGVCbG9ja0hlYWRlcik7XG4gIGlmICghbWF0Y2gpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4gbWF0Y2hbMV0/LnRyaW0oKSA/PyBudWxsO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFZQSxtQkFBZ0M7QUFaaEMsSUFBSSxZQUFZLFdBQVcsU0FBUyxLQUFLO0FBQUEsRUFDdkMsT0FBTyxNQUFJO0FBQUEsRUFDWCxPQUFPLENBQUM7QUFBQSxFQUNSLFlBQVk7QUFDZDtBQWlCTyxTQUFTLHFCQUFxQixLQUFtQyxJQUFnQztBQUN0RyxRQUFNLGNBQWMsSUFBSSxlQUFlLEVBQUU7QUFDekMsTUFBSSxDQUFDLGFBQWE7QUFDaEIsV0FBTztBQUFBLEVBQ1Q7QUFDQSxRQUFNLFFBQVEsWUFBWSxLQUFLLE1BQU0sSUFBSTtBQUN6QyxRQUFNLGtCQUFrQixNQUFNLFlBQVksU0FBUyxTQUFLLDhCQUFnQixJQUFJLE1BQU0sNkJBQTZCLENBQUM7QUFDaEgsUUFBTSxRQUFRLG9CQUFvQixLQUFLLGVBQWU7QUFDdEQsTUFBSSxDQUFDLE9BQU87QUFDVixXQUFPO0FBQUEsRUFDVDtBQUNBLFNBQU8sTUFBTSxDQUFDLEdBQUcsS0FBSyxLQUFLO0FBQzdCOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -39,16 +39,6 @@ var import_implementations = require('obsidian-typings/implementations');
39
39
  var import_Async = require('../Async.cjs');
40
40
  var import_Error = require('../Error.cjs');
41
41
  var import_FileSystem = require('./FileSystem.cjs');
42
- var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
43
- if (typeof require !== "undefined" && typeof module !== "undefined") {
44
- const url = require('node:url');
45
- return url.pathToFileURL(__filename).href;
46
- }
47
- if (typeof window !== "undefined") {
48
- return window.location.href;
49
- }
50
- return __import_meta_url;
51
- })();
52
42
  var __process = globalThis["process"] ?? {
53
43
  "cwd": () => "/",
54
44
  "env": {},
@@ -224,4 +214,4 @@ async function ensureMetadataCacheReady(app) {
224
214
  registerFile,
225
215
  tempRegisterFileAndRun
226
216
  });
227
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL01ldGFkYXRhQ2FjaGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbInZhciBfX2ltcG9ydF9tZXRhX3VybCA9IGdsb2JhbFRoaXNbJ2ltcG9ydC5tZXRhLnVybCddID8/ICgoKT0+e2lmKHR5cGVvZiByZXF1aXJlIT09XCJ1bmRlZmluZWRcIiYmdHlwZW9mIG1vZHVsZSE9PVwidW5kZWZpbmVkXCIpe2NvbnN0IHVybD1yZXF1aXJlKFwibm9kZTp1cmxcIik7cmV0dXJuIHVybC5wYXRoVG9GaWxlVVJMKF9fZmlsZW5hbWUpLmhyZWZ9aWYodHlwZW9mIHdpbmRvdyE9PVwidW5kZWZpbmVkXCIpe3JldHVybiB3aW5kb3cubG9jYXRpb24uaHJlZn1yZXR1cm4gaW1wb3J0Lm1ldGEudXJsfSkoKTtcbnZhciBfX3Byb2Nlc3MgPSBnbG9iYWxUaGlzWydwcm9jZXNzJ10gPz8ge1xuICBcImN3ZFwiOiAoKT0+XCIvXCIsXG4gIFwiZW52XCI6IHt9LFxuICBcInBsYXRmb3JtXCI6IFwiYW5kcm9pZFwiXG59O1xuLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gTWV0YWRhdGFDYWNoZVxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCB0aGUgbWV0YWRhdGEgY2FjaGUgaW4gT2JzaWRpYW4uXG4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBBcHAsXG4gIENhY2hlZE1ldGFkYXRhLFxuICBNYXJrZG93blZpZXcsXG4gIFJlZmVyZW5jZUNhY2hlLFxuICBUQWJzdHJhY3RGaWxlXG59IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB0eXBlIHsgQ3VzdG9tQXJyYXlEaWN0IH0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncyc7XG5pbXBvcnQgeyBwYXJlbnRGb2xkZXJQYXRoIH0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncy9pbXBsZW1lbnRhdGlvbnMnO1xuXG5pbXBvcnQgdHlwZSB7IFJldHJ5T3B0aW9ucyB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IHJldHJ5V2l0aFRpbWVvdXQgfSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgdHlwZSB7IFBhdGhPckZpbGUgfSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuaW1wb3J0IHtcbiAgZ2V0RmlsZSxcbiAgZ2V0RmlsZU9yTnVsbCxcbiAgZ2V0Rm9sZGVyLFxuICBnZXRQYXRoLFxuICBpc0ZpbGUsXG4gIGlzTWFya2Rvd25GaWxlXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgdHlwZSB7IENvbWJpbmVkRnJvbnRNYXR0ZXIgfSBmcm9tICcuL0Zyb250TWF0dGVyLnRzJztcblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIGNhY2hlZCBtZXRhZGF0YSBmb3IgYSBnaXZlbiBmaWxlIG9yIHBhdGguXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZmlsZU9yUGF0aCAtIFRoZSBmaWxlIG9yIHBhdGggdG8gcmV0cmlldmUgdGhlIG1ldGFkYXRhIGZvci5cbiAqIEBwYXJhbSByZXRyeU9wdGlvbnMgLSBPcHRpb25hbCByZXRyeSBvcHRpb25zIGZvciB0aGUgcmV0cmlldmFsIHByb2Nlc3MuXG4gKiBAcmV0dXJucyBUaGUgY2FjaGVkIG1ldGFkYXRhIGZvciB0aGUgZmlsZSwgb3IgbnVsbCBpZiBpdCBkb2Vzbid0IGV4aXN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q2FjaGVTYWZlKGFwcDogQXBwLCBmaWxlT3JQYXRoOiBQYXRoT3JGaWxlLCByZXRyeU9wdGlvbnM6IFBhcnRpYWw8UmV0cnlPcHRpb25zPiA9IHt9KTogUHJvbWlzZTxDYWNoZWRNZXRhZGF0YSB8IG51bGw+IHtcbiAgY29uc3QgREVGQVVMVF9SRVRSWV9PUFRJT05TOiBQYXJ0aWFsPFJldHJ5T3B0aW9ucz4gPSB7IHRpbWVvdXRJbk1pbGxpc2Vjb25kczogNjAwMDAgfTtcbiAgY29uc3Qgb3ZlcnJpZGRlbk9wdGlvbnM6IFBhcnRpYWw8UmV0cnlPcHRpb25zPiA9IHsgLi4uREVGQVVMVF9SRVRSWV9PUFRJT05TLCAuLi5yZXRyeU9wdGlvbnMgfTtcbiAgbGV0IGNhY2hlOiBDYWNoZWRNZXRhZGF0YSB8IG51bGwgPSBudWxsO1xuXG4gIGF3YWl0IHJldHJ5V2l0aFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgZmlsZU9yUGF0aCk7XG5cbiAgICBpZiAoIWZpbGUgfHwgZmlsZS5kZWxldGVkKSB7XG4gICAgICBjYWNoZSA9IG51bGw7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBhd2FpdCBzYXZlTm90ZShhcHAsIGZpbGUpO1xuXG4gICAgY29uc3QgZmlsZUluZm8gPSBhcHAubWV0YWRhdGFDYWNoZS5nZXRGaWxlSW5mbyhmaWxlLnBhdGgpO1xuICAgIGNvbnN0IHN0YXQgPSBhd2FpdCBhcHAudmF1bHQuYWRhcHRlci5zdGF0KGZpbGUucGF0aCk7XG5cbiAgICBpZiAoIWZpbGVJbmZvKSB7XG4gICAgICBjb25zb2xlLmRlYnVnKGBGaWxlIGNhY2hlIGluZm8gZm9yICR7ZmlsZS5wYXRofSBpcyBtaXNzaW5nYCk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIGlmICghc3RhdCkge1xuICAgICAgY29uc29sZS5kZWJ1ZyhgRmlsZSBzdGF0IGZvciAke2ZpbGUucGF0aH0gaXMgbWlzc2luZ2ApO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0gZWxzZSBpZiAoZmlsZS5zdGF0Lm10aW1lIDwgc3RhdC5tdGltZSkge1xuICAgICAgYXBwLnZhdWx0Lm9uQ2hhbmdlKCdtb2RpZmllZCcsIGZpbGUucGF0aCwgdW5kZWZpbmVkLCBzdGF0KTtcbiAgICAgIGNvbnNvbGUuZGVidWcoYENhY2hlZCB0aW1lc3RhbXAgZm9yICR7ZmlsZS5wYXRofSBpcyBmcm9tICR7bmV3IERhdGUoZmlsZS5zdGF0Lm10aW1lKS50b1N0cmluZygpfSB3aGljaCBpcyBvbGRlciB0aGFuIHRoZSBmaWxlIHN5c3RlbSBtb2RpZmljYXRpb24gdGltZXN0YW1wICR7bmV3IERhdGUoc3RhdC5tdGltZSkudG9TdHJpbmcoKX1gKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9IGVsc2UgaWYgKGZpbGVJbmZvLm10aW1lIDwgc3RhdC5tdGltZSkge1xuICAgICAgY29uc29sZS5kZWJ1ZyhgRmlsZSBjYWNoZSBpbmZvIGZvciAke2ZpbGUucGF0aH0gaXMgZnJvbSAke25ldyBEYXRlKGZpbGVJbmZvLm10aW1lKS50b1N0cmluZygpfSB3aGljaCBpcyBvbGRlciB0aGFuIHRoZSBmaWxlIG1vZGlmaWNhdGlvbiB0aW1lc3RhbXAgJHtuZXcgRGF0ZShzdGF0Lm10aW1lKS50b1N0cmluZygpfWApO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjYWNoZSA9IGFwcC5tZXRhZGF0YUNhY2hlLmdldEZpbGVDYWNoZShmaWxlKTtcbiAgICAgIGlmICghY2FjaGUpIHtcbiAgICAgICAgY29uc29sZS5kZWJ1ZyhgRmlsZSBjYWNoZSBmb3IgJHtmaWxlLnBhdGh9IGlzIG1pc3NpbmdgKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9LCBvdmVycmlkZGVuT3B0aW9ucyk7XG5cbiAgcmV0dXJuIGNhY2hlO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyBhbGwgbGlua3MgZnJvbSB0aGUgcHJvdmlkZWQgY2FjaGUuXG4gKlxuICogQHBhcmFtIGNhY2hlIC0gVGhlIGNhY2hlZCBtZXRhZGF0YS5cbiAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHJlZmVyZW5jZSBjYWNoZXMgcmVwcmVzZW50aW5nIHRoZSBsaW5rcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFsbExpbmtzKGNhY2hlOiBDYWNoZWRNZXRhZGF0YSk6IFJlZmVyZW5jZUNhY2hlW10ge1xuICBsZXQgbGlua3M6IFJlZmVyZW5jZUNhY2hlW10gPSBbXTtcblxuICBpZiAoY2FjaGUubGlua3MpIHtcbiAgICBsaW5rcy5wdXNoKC4uLmNhY2hlLmxpbmtzKTtcbiAgfVxuXG4gIGlmIChjYWNoZS5lbWJlZHMpIHtcbiAgICBsaW5rcy5wdXNoKC4uLmNhY2hlLmVtYmVkcyk7XG4gIH1cblxuICBsaW5rcy5zb3J0KChhLCBiKSA9PiBhLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldCAtIGIucG9zaXRpb24uc3RhcnQub2Zmc2V0KTtcblxuICAvLyBCVUc6IGh0dHBzOi8vZm9ydW0ub2JzaWRpYW4ubWQvdC9idWctZHVwbGljYXRlZC1saW5rcy1pbi1tZXRhZGF0YWNhY2hlLWluc2lkZS1mb290bm90ZXMvODU1NTFcbiAgbGlua3MgPSBsaW5rcy5maWx0ZXIoKGxpbmssIGluZGV4KSA9PiB7XG4gICAgaWYgKGluZGV4ID09PSAwKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3QgcHJldmlvdXNMaW5rID0gbGlua3NbaW5kZXggLSAxXSA/PyB0aHJvd0V4cHJlc3Npb24obmV3IEVycm9yKCdQcmV2aW91cyBsaW5rIG5vdCBmb3VuZCcpKTtcbiAgICByZXR1cm4gbGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQgIT09IHByZXZpb3VzTGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQ7XG4gIH0pO1xuXG4gIHJldHVybiBsaW5rcztcbn1cblxuLyoqXG4gKiBXcmFwcGVyIGZvciB0aGUgZ2V0QmFja2xpbmtzRm9yRmlsZSBtZXRob2QgdGhhdCBwcm92aWRlcyBhIHNhZmUgb3ZlcmxvYWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0QmFja2xpbmtzRm9yRmlsZVNhZmVXcmFwcGVyIHtcbiAgLyoqXG4gICAqIFJldHJpZXZlcyB0aGUgYmFja2xpbmtzIGZvciBhIGZpbGUgc2FmZWx5LlxuICAgKlxuICAgKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgb2JqZWN0LlxuICAgKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhbiBhcnJheSBkaWN0aW9uYXJ5IG9mIGJhY2tsaW5rcy5cbiAgICovXG4gIHNhZmUocGF0aE9yRmlsZTogUGF0aE9yRmlsZSk6IFByb21pc2U8Q3VzdG9tQXJyYXlEaWN0PFJlZmVyZW5jZUNhY2hlPj47XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBiYWNrbGlua3MgZm9yIGEgZmlsZSBzYWZlbHkuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgZmlsZSBvYmplY3QuXG4gKiBAcGFyYW0gcmV0cnlPcHRpb25zIC0gT3B0aW9uYWwgcmV0cnkgb3B0aW9ucy5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGFuIGFycmF5IGRpY3Rpb25hcnkgb2YgYmFja2xpbmtzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0QmFja2xpbmtzRm9yRmlsZVNhZmUoYXBwOiBBcHAsIHBhdGhPckZpbGU6IFBhdGhPckZpbGUsIHJldHJ5T3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0ge30pOiBQcm9taXNlPEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2VDYWNoZT4+IHtcbiAgY29uc3Qgc2FmZU92ZXJsb2FkID0gKGFwcC5tZXRhZGF0YUNhY2hlLmdldEJhY2tsaW5rc0ZvckZpbGUgYXMgUGFydGlhbDxHZXRCYWNrbGlua3NGb3JGaWxlU2FmZVdyYXBwZXI+KS5zYWZlO1xuICBpZiAoc2FmZU92ZXJsb2FkKSB7XG4gICAgcmV0dXJuIHNhZmVPdmVybG9hZChwYXRoT3JGaWxlKTtcbiAgfVxuICBjb25zdCBERUZBVUxUX1JFVFJZX09QVElPTlM6IFBhcnRpYWw8UmV0cnlPcHRpb25zPiA9IHsgdGltZW91dEluTWlsbGlzZWNvbmRzOiA2MDAwMCB9O1xuICBjb25zdCBvdmVycmlkZGVuT3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0geyAuLi5ERUZBVUxUX1JFVFJZX09QVElPTlMsIC4uLnJldHJ5T3B0aW9ucyB9O1xuICBsZXQgYmFja2xpbmtzOiBDdXN0b21BcnJheURpY3Q8UmVmZXJlbmNlQ2FjaGU+ID0gbnVsbCBhcyB1bmtub3duIGFzIEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2VDYWNoZT47XG4gIGF3YWl0IHJldHJ5V2l0aFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aE9yRmlsZSk7XG4gICAgYXdhaXQgZW5zdXJlTWV0YWRhdGFDYWNoZVJlYWR5KGFwcCk7XG4gICAgYmFja2xpbmtzID0gdGVtcFJlZ2lzdGVyRmlsZUFuZFJ1bihhcHAsIGZpbGUsICgpID0+IGFwcC5tZXRhZGF0YUNhY2hlLmdldEJhY2tsaW5rc0ZvckZpbGUoZmlsZSkpO1xuICAgIGZvciAoY29uc3Qgbm90ZVBhdGggb2YgYmFja2xpbmtzLmtleXMoKSkge1xuICAgICAgY29uc3Qgbm90ZSA9IGdldEZpbGVPck51bGwoYXBwLCBub3RlUGF0aCk7XG4gICAgICBpZiAoIW5vdGUpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBhd2FpdCBzYXZlTm90ZShhcHAsIG5vdGUpO1xuXG4gICAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgYXBwLnZhdWx0LnJlYWQobm90ZSk7XG4gICAgICBjb25zdCBsaW5rcyA9IGJhY2tsaW5rcy5nZXQobm90ZVBhdGgpID8/IHRocm93RXhwcmVzc2lvbihuZXcgRXJyb3IoJ0JhY2tsaW5rcyBub3QgZm91bmQnKSk7XG4gICAgICBmb3IgKGNvbnN0IGxpbmsgb2YgbGlua3MpIHtcbiAgICAgICAgY29uc3QgYWN0dWFsTGluayA9IGNvbnRlbnQuc2xpY2UobGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQsIGxpbmsucG9zaXRpb24uZW5kLm9mZnNldCk7XG4gICAgICAgIGlmIChhY3R1YWxMaW5rICE9PSBsaW5rLm9yaWdpbmFsKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH0sIG92ZXJyaWRkZW5PcHRpb25zKTtcblxuICByZXR1cm4gYmFja2xpbmtzO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIGJhY2tsaW5rcyBtYXAgZm9yIHRoZSBzcGVjaWZpZWQgZmlsZXMuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZXMgLSBUaGUgcGF0aHMgb3IgZmlsZXMgdG8gZ2V0IHRoZSBiYWNrbGlua3MgZm9yLlxuICogQHBhcmFtIHJldHJ5T3B0aW9ucyAtIE9wdGlvbmFsIHJldHJ5IG9wdGlvbnMuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIG1hcCBvZiBiYWNrbGlua3MuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRCYWNrbGlua3NNYXAoYXBwOiBBcHAsIHBhdGhPckZpbGVzOiBQYXRoT3JGaWxlW10sIHJldHJ5T3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0ge30pOiBQcm9taXNlPE1hcDxzdHJpbmcsIFJlZmVyZW5jZUNhY2hlW10+PiB7XG4gIGNvbnN0IG1hcCA9IG5ldyBNYXA8c3RyaW5nLCBSZWZlcmVuY2VDYWNoZVtdPigpO1xuICBmb3IgKGNvbnN0IHBhdGhPckZpbGUgb2YgcGF0aE9yRmlsZXMpIHtcbiAgICBjb25zdCBjdXN0b21BcnJheURpY3QgPSBhd2FpdCBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZShhcHAsIHBhdGhPckZpbGUsIHJldHJ5T3B0aW9ucyk7XG4gICAgZm9yIChjb25zdCBwYXRoIG9mIGN1c3RvbUFycmF5RGljdC5rZXlzKCkpIHtcbiAgICAgIGNvbnN0IG1hcExpbmtzID0gbWFwLmdldChwYXRoKSA/PyBbXTtcbiAgICAgIGNvbnN0IHBhdGhMaW5rcyA9IGN1c3RvbUFycmF5RGljdC5nZXQocGF0aCkgPz8gW107XG4gICAgICBtYXBMaW5rcy5wdXNoKC4uLnBhdGhMaW5rcyk7XG4gICAgICBtYXAuc2V0KHBhdGgsIG1hcExpbmtzKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG1hcDtcbn1cblxuLyoqXG4gKiBTYXZlcyB0aGUgc3BlY2lmaWVkIG5vdGUgaW4gdGhlIE9ic2lkaWFuIGFwcC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIG5vdGUgdG8gYmUgc2F2ZWQuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBub3RlIGlzIHNhdmVkLlxuICovXG5hc3luYyBmdW5jdGlvbiBzYXZlTm90ZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSk6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoIWlzTWFya2Rvd25GaWxlKHBhdGhPckZpbGUpKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcGF0aCA9IGdldFBhdGgocGF0aE9yRmlsZSk7XG5cbiAgZm9yIChjb25zdCBsZWFmIG9mIGFwcC53b3Jrc3BhY2UuZ2V0TGVhdmVzT2ZUeXBlKCdtYXJrZG93bicpKSB7XG4gICAgY29uc3QgdmlldyA9IGxlYWYudmlldyBhcyBNYXJrZG93blZpZXc7XG4gICAgaWYgKHZpZXcuZmlsZT8ucGF0aCA9PT0gcGF0aCkge1xuICAgICAgYXdhaXQgdmlldy5zYXZlKCk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBmcm9udCBtYXR0ZXIgZnJvbSB0aGUgbWV0YWRhdGEgY2FjaGUgc2FmZWx5LlxuICpcbiAqIEB0eXBlUGFyYW0gQ3VzdG9tRnJvbnRNYXR0ZXIgLSBUaGUgdHlwZSBvZiBjdXN0b20gZnJvbnQgbWF0dGVyLlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gcmV0cmlldmUgdGhlIGZyb250IG1hdHRlciBmcm9tLlxuICogQHJldHVybnMgVGhlIGNvbWJpbmVkIGZyb250IG1hdHRlci5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEZyb250TWF0dGVyU2FmZTxDdXN0b21Gcm9udE1hdHRlciA9IHVua25vd24+KGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlKTogUHJvbWlzZTxDb21iaW5lZEZyb250TWF0dGVyPEN1c3RvbUZyb250TWF0dGVyPj4ge1xuICBjb25zdCBjYWNoZSA9IGF3YWl0IGdldENhY2hlU2FmZShhcHAsIHBhdGhPckZpbGUpO1xuICByZXR1cm4gKGNhY2hlPy5mcm9udG1hdHRlciA/PyB7fSkgYXMgQ29tYmluZWRGcm9udE1hdHRlcjxDdXN0b21Gcm9udE1hdHRlcj47XG59XG5cbi8qKlxuICogVGVtcG9yYXJpbHkgcmVnaXN0ZXJzIGEgZmlsZSBhbmQgcnVucyBhIGZ1bmN0aW9uLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHBhcmFtIGZpbGUgLSBUaGUgZmlsZSB0byB0ZW1wb3JhcmlseSByZWdpc3Rlci5cbiAqIEBwYXJhbSBmbiAtIFRoZSBmdW5jdGlvbiB0byBydW4uXG4gKiBAcmV0dXJucyBUaGUgcmVzdWx0IG9mIHRoZSBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRlbXBSZWdpc3RlckZpbGVBbmRSdW48VD4oYXBwOiBBcHAsIGZpbGU6IFRBYnN0cmFjdEZpbGUsIGZuOiAoKSA9PiBUKTogVCB7XG4gIGNvbnN0IHVucmVnaXN0ZXIgPSByZWdpc3RlckZpbGUoYXBwLCBmaWxlKTtcblxuICB0cnkge1xuICAgIHJldHVybiBmbigpO1xuICB9IGZpbmFsbHkge1xuICAgIHVucmVnaXN0ZXIoKTtcbiAgfVxufVxuXG4vKioqXG4gKiBSZWdpc3RlcnMgYSBmaWxlIGluIHRoZSBPYnNpZGlhbiBhcHAuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZmlsZSAtIFRoZSBmaWxlIHRvIHJlZ2lzdGVyLlxuICogQHJldHVybnMgQSBmdW5jdGlvbiB0aGF0IHVucmVnaXN0ZXJzIHRoZSBmaWxlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJGaWxlKGFwcDogQXBwLCBmaWxlOiBUQWJzdHJhY3RGaWxlKTogKCkgPT4gdm9pZCB7XG4gIGlmICghZmlsZS5kZWxldGVkKSB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9O1xuICB9XG5cbiAgY29uc3QgZGVsZXRlZFBhdGhzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIGxldCBkZWxldGVkRmlsZTogVEFic3RyYWN0RmlsZSA9IGZpbGU7XG5cbiAgd2hpbGUgKGRlbGV0ZWRGaWxlLmRlbGV0ZWQpIHtcbiAgICBkZWxldGVkUGF0aHMucHVzaChkZWxldGVkRmlsZS5wYXRoKTtcbiAgICBhcHAudmF1bHQuZmlsZU1hcFtkZWxldGVkRmlsZS5wYXRoXSA9IGRlbGV0ZWRGaWxlO1xuICAgIGRlbGV0ZWRGaWxlID0gZGVsZXRlZEZpbGUucGFyZW50ID8/IGdldEZvbGRlcihhcHAsIHBhcmVudEZvbGRlclBhdGgoZGVsZXRlZEZpbGUucGF0aCksIHRydWUpO1xuICB9XG5cbiAgaWYgKGlzRmlsZShmaWxlKSkge1xuICAgIGFwcC5tZXRhZGF0YUNhY2hlLnVuaXF1ZUZpbGVMb29rdXAuYWRkKGZpbGUubmFtZS50b0xvd2VyQ2FzZSgpLCBmaWxlKTtcbiAgfVxuXG4gIHJldHVybiAoKSA9PiB7XG4gICAgZm9yIChjb25zdCBwYXRoIG9mIGRlbGV0ZWRQYXRocykge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1keW5hbWljLWRlbGV0ZVxuICAgICAgZGVsZXRlIGFwcC52YXVsdC5maWxlTWFwW3BhdGhdO1xuICAgIH1cblxuICAgIGlmIChpc0ZpbGUoZmlsZSkpIHtcbiAgICAgIGFwcC5tZXRhZGF0YUNhY2hlLnVuaXF1ZUZpbGVMb29rdXAucmVtb3ZlKGZpbGUubmFtZS50b0xvd2VyQ2FzZSgpLCBmaWxlKTtcbiAgICB9XG4gIH07XG59XG5cbi8qKlxuICogRW5zdXJlcyB0aGF0IHRoZSBtZXRhZGF0YSBjYWNoZSBpcyByZWFkeSBmb3IgYWxsIGZpbGVzLlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBtZXRhZGF0YSBjYWNoZSBpcyByZWFkeS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVuc3VyZU1ldGFkYXRhQ2FjaGVSZWFkeShhcHA6IEFwcCk6IFByb21pc2U8dm9pZD4ge1xuICBmb3IgKGNvbnN0IFtwYXRoLCBjYWNoZV0gb2YgT2JqZWN0LmVudHJpZXMoYXBwLm1ldGFkYXRhQ2FjaGUuZmlsZUNhY2hlKSkge1xuICAgIGlmICghY2FjaGUuaGFzaCkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKGFwcC5tZXRhZGF0YUNhY2hlLm1ldGFkYXRhQ2FjaGVbY2FjaGUuaGFzaF0pIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGF3YWl0IGdldENhY2hlU2FmZShhcHAsIHBhdGgpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBbUJBLDZCQUFpQztBQUdqQyxtQkFBaUM7QUFDakMsbUJBQWdDO0FBRWhDLHdC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
217
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL01ldGFkYXRhQ2FjaGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbInZhciBfX3Byb2Nlc3MgPSBnbG9iYWxUaGlzWydwcm9jZXNzJ10gPz8ge1xuICBcImN3ZFwiOiAoKT0+XCIvXCIsXG4gIFwiZW52XCI6IHt9LFxuICBcInBsYXRmb3JtXCI6IFwiYW5kcm9pZFwiXG59O1xuLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gTWV0YWRhdGFDYWNoZVxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCB0aGUgbWV0YWRhdGEgY2FjaGUgaW4gT2JzaWRpYW4uXG4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBBcHAsXG4gIENhY2hlZE1ldGFkYXRhLFxuICBNYXJrZG93blZpZXcsXG4gIFJlZmVyZW5jZUNhY2hlLFxuICBUQWJzdHJhY3RGaWxlXG59IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB0eXBlIHsgQ3VzdG9tQXJyYXlEaWN0IH0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncyc7XG5pbXBvcnQgeyBwYXJlbnRGb2xkZXJQYXRoIH0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncy9pbXBsZW1lbnRhdGlvbnMnO1xuXG5pbXBvcnQgdHlwZSB7IFJldHJ5T3B0aW9ucyB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IHJldHJ5V2l0aFRpbWVvdXQgfSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgdHlwZSB7IFBhdGhPckZpbGUgfSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuaW1wb3J0IHtcbiAgZ2V0RmlsZSxcbiAgZ2V0RmlsZU9yTnVsbCxcbiAgZ2V0Rm9sZGVyLFxuICBnZXRQYXRoLFxuICBpc0ZpbGUsXG4gIGlzTWFya2Rvd25GaWxlXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgdHlwZSB7IENvbWJpbmVkRnJvbnRNYXR0ZXIgfSBmcm9tICcuL0Zyb250TWF0dGVyLnRzJztcblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIGNhY2hlZCBtZXRhZGF0YSBmb3IgYSBnaXZlbiBmaWxlIG9yIHBhdGguXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZmlsZU9yUGF0aCAtIFRoZSBmaWxlIG9yIHBhdGggdG8gcmV0cmlldmUgdGhlIG1ldGFkYXRhIGZvci5cbiAqIEBwYXJhbSByZXRyeU9wdGlvbnMgLSBPcHRpb25hbCByZXRyeSBvcHRpb25zIGZvciB0aGUgcmV0cmlldmFsIHByb2Nlc3MuXG4gKiBAcmV0dXJucyBUaGUgY2FjaGVkIG1ldGFkYXRhIGZvciB0aGUgZmlsZSwgb3IgbnVsbCBpZiBpdCBkb2Vzbid0IGV4aXN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q2FjaGVTYWZlKGFwcDogQXBwLCBmaWxlT3JQYXRoOiBQYXRoT3JGaWxlLCByZXRyeU9wdGlvbnM6IFBhcnRpYWw8UmV0cnlPcHRpb25zPiA9IHt9KTogUHJvbWlzZTxDYWNoZWRNZXRhZGF0YSB8IG51bGw+IHtcbiAgY29uc3QgREVGQVVMVF9SRVRSWV9PUFRJT05TOiBQYXJ0aWFsPFJldHJ5T3B0aW9ucz4gPSB7IHRpbWVvdXRJbk1pbGxpc2Vjb25kczogNjAwMDAgfTtcbiAgY29uc3Qgb3ZlcnJpZGRlbk9wdGlvbnM6IFBhcnRpYWw8UmV0cnlPcHRpb25zPiA9IHsgLi4uREVGQVVMVF9SRVRSWV9PUFRJT05TLCAuLi5yZXRyeU9wdGlvbnMgfTtcbiAgbGV0IGNhY2hlOiBDYWNoZWRNZXRhZGF0YSB8IG51bGwgPSBudWxsO1xuXG4gIGF3YWl0IHJldHJ5V2l0aFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgZmlsZU9yUGF0aCk7XG5cbiAgICBpZiAoIWZpbGUgfHwgZmlsZS5kZWxldGVkKSB7XG4gICAgICBjYWNoZSA9IG51bGw7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBhd2FpdCBzYXZlTm90ZShhcHAsIGZpbGUpO1xuXG4gICAgY29uc3QgZmlsZUluZm8gPSBhcHAubWV0YWRhdGFDYWNoZS5nZXRGaWxlSW5mbyhmaWxlLnBhdGgpO1xuICAgIGNvbnN0IHN0YXQgPSBhd2FpdCBhcHAudmF1bHQuYWRhcHRlci5zdGF0KGZpbGUucGF0aCk7XG5cbiAgICBpZiAoIWZpbGVJbmZvKSB7XG4gICAgICBjb25zb2xlLmRlYnVnKGBGaWxlIGNhY2hlIGluZm8gZm9yICR7ZmlsZS5wYXRofSBpcyBtaXNzaW5nYCk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIGlmICghc3RhdCkge1xuICAgICAgY29uc29sZS5kZWJ1ZyhgRmlsZSBzdGF0IGZvciAke2ZpbGUucGF0aH0gaXMgbWlzc2luZ2ApO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0gZWxzZSBpZiAoZmlsZS5zdGF0Lm10aW1lIDwgc3RhdC5tdGltZSkge1xuICAgICAgYXBwLnZhdWx0Lm9uQ2hhbmdlKCdtb2RpZmllZCcsIGZpbGUucGF0aCwgdW5kZWZpbmVkLCBzdGF0KTtcbiAgICAgIGNvbnNvbGUuZGVidWcoYENhY2hlZCB0aW1lc3RhbXAgZm9yICR7ZmlsZS5wYXRofSBpcyBmcm9tICR7bmV3IERhdGUoZmlsZS5zdGF0Lm10aW1lKS50b1N0cmluZygpfSB3aGljaCBpcyBvbGRlciB0aGFuIHRoZSBmaWxlIHN5c3RlbSBtb2RpZmljYXRpb24gdGltZXN0YW1wICR7bmV3IERhdGUoc3RhdC5tdGltZSkudG9TdHJpbmcoKX1gKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9IGVsc2UgaWYgKGZpbGVJbmZvLm10aW1lIDwgc3RhdC5tdGltZSkge1xuICAgICAgY29uc29sZS5kZWJ1ZyhgRmlsZSBjYWNoZSBpbmZvIGZvciAke2ZpbGUucGF0aH0gaXMgZnJvbSAke25ldyBEYXRlKGZpbGVJbmZvLm10aW1lKS50b1N0cmluZygpfSB3aGljaCBpcyBvbGRlciB0aGFuIHRoZSBmaWxlIG1vZGlmaWNhdGlvbiB0aW1lc3RhbXAgJHtuZXcgRGF0ZShzdGF0Lm10aW1lKS50b1N0cmluZygpfWApO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjYWNoZSA9IGFwcC5tZXRhZGF0YUNhY2hlLmdldEZpbGVDYWNoZShmaWxlKTtcbiAgICAgIGlmICghY2FjaGUpIHtcbiAgICAgICAgY29uc29sZS5kZWJ1ZyhgRmlsZSBjYWNoZSBmb3IgJHtmaWxlLnBhdGh9IGlzIG1pc3NpbmdgKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9LCBvdmVycmlkZGVuT3B0aW9ucyk7XG5cbiAgcmV0dXJuIGNhY2hlO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyBhbGwgbGlua3MgZnJvbSB0aGUgcHJvdmlkZWQgY2FjaGUuXG4gKlxuICogQHBhcmFtIGNhY2hlIC0gVGhlIGNhY2hlZCBtZXRhZGF0YS5cbiAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHJlZmVyZW5jZSBjYWNoZXMgcmVwcmVzZW50aW5nIHRoZSBsaW5rcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFsbExpbmtzKGNhY2hlOiBDYWNoZWRNZXRhZGF0YSk6IFJlZmVyZW5jZUNhY2hlW10ge1xuICBsZXQgbGlua3M6IFJlZmVyZW5jZUNhY2hlW10gPSBbXTtcblxuICBpZiAoY2FjaGUubGlua3MpIHtcbiAgICBsaW5rcy5wdXNoKC4uLmNhY2hlLmxpbmtzKTtcbiAgfVxuXG4gIGlmIChjYWNoZS5lbWJlZHMpIHtcbiAgICBsaW5rcy5wdXNoKC4uLmNhY2hlLmVtYmVkcyk7XG4gIH1cblxuICBsaW5rcy5zb3J0KChhLCBiKSA9PiBhLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldCAtIGIucG9zaXRpb24uc3RhcnQub2Zmc2V0KTtcblxuICAvLyBCVUc6IGh0dHBzOi8vZm9ydW0ub2JzaWRpYW4ubWQvdC9idWctZHVwbGljYXRlZC1saW5rcy1pbi1tZXRhZGF0YWNhY2hlLWluc2lkZS1mb290bm90ZXMvODU1NTFcbiAgbGlua3MgPSBsaW5rcy5maWx0ZXIoKGxpbmssIGluZGV4KSA9PiB7XG4gICAgaWYgKGluZGV4ID09PSAwKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3QgcHJldmlvdXNMaW5rID0gbGlua3NbaW5kZXggLSAxXSA/PyB0aHJvd0V4cHJlc3Npb24obmV3IEVycm9yKCdQcmV2aW91cyBsaW5rIG5vdCBmb3VuZCcpKTtcbiAgICByZXR1cm4gbGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQgIT09IHByZXZpb3VzTGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQ7XG4gIH0pO1xuXG4gIHJldHVybiBsaW5rcztcbn1cblxuLyoqXG4gKiBXcmFwcGVyIGZvciB0aGUgZ2V0QmFja2xpbmtzRm9yRmlsZSBtZXRob2QgdGhhdCBwcm92aWRlcyBhIHNhZmUgb3ZlcmxvYWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0QmFja2xpbmtzRm9yRmlsZVNhZmVXcmFwcGVyIHtcbiAgLyoqXG4gICAqIFJldHJpZXZlcyB0aGUgYmFja2xpbmtzIGZvciBhIGZpbGUgc2FmZWx5LlxuICAgKlxuICAgKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgb2JqZWN0LlxuICAgKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhbiBhcnJheSBkaWN0aW9uYXJ5IG9mIGJhY2tsaW5rcy5cbiAgICovXG4gIHNhZmUocGF0aE9yRmlsZTogUGF0aE9yRmlsZSk6IFByb21pc2U8Q3VzdG9tQXJyYXlEaWN0PFJlZmVyZW5jZUNhY2hlPj47XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBiYWNrbGlua3MgZm9yIGEgZmlsZSBzYWZlbHkuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgZmlsZSBvYmplY3QuXG4gKiBAcGFyYW0gcmV0cnlPcHRpb25zIC0gT3B0aW9uYWwgcmV0cnkgb3B0aW9ucy5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGFuIGFycmF5IGRpY3Rpb25hcnkgb2YgYmFja2xpbmtzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0QmFja2xpbmtzRm9yRmlsZVNhZmUoYXBwOiBBcHAsIHBhdGhPckZpbGU6IFBhdGhPckZpbGUsIHJldHJ5T3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0ge30pOiBQcm9taXNlPEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2VDYWNoZT4+IHtcbiAgY29uc3Qgc2FmZU92ZXJsb2FkID0gKGFwcC5tZXRhZGF0YUNhY2hlLmdldEJhY2tsaW5rc0ZvckZpbGUgYXMgUGFydGlhbDxHZXRCYWNrbGlua3NGb3JGaWxlU2FmZVdyYXBwZXI+KS5zYWZlO1xuICBpZiAoc2FmZU92ZXJsb2FkKSB7XG4gICAgcmV0dXJuIHNhZmVPdmVybG9hZChwYXRoT3JGaWxlKTtcbiAgfVxuICBjb25zdCBERUZBVUxUX1JFVFJZX09QVElPTlM6IFBhcnRpYWw8UmV0cnlPcHRpb25zPiA9IHsgdGltZW91dEluTWlsbGlzZWNvbmRzOiA2MDAwMCB9O1xuICBjb25zdCBvdmVycmlkZGVuT3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0geyAuLi5ERUZBVUxUX1JFVFJZX09QVElPTlMsIC4uLnJldHJ5T3B0aW9ucyB9O1xuICBsZXQgYmFja2xpbmtzOiBDdXN0b21BcnJheURpY3Q8UmVmZXJlbmNlQ2FjaGU+ID0gbnVsbCBhcyB1bmtub3duIGFzIEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2VDYWNoZT47XG4gIGF3YWl0IHJldHJ5V2l0aFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aE9yRmlsZSk7XG4gICAgYXdhaXQgZW5zdXJlTWV0YWRhdGFDYWNoZVJlYWR5KGFwcCk7XG4gICAgYmFja2xpbmtzID0gdGVtcFJlZ2lzdGVyRmlsZUFuZFJ1bihhcHAsIGZpbGUsICgpID0+IGFwcC5tZXRhZGF0YUNhY2hlLmdldEJhY2tsaW5rc0ZvckZpbGUoZmlsZSkpO1xuICAgIGZvciAoY29uc3Qgbm90ZVBhdGggb2YgYmFja2xpbmtzLmtleXMoKSkge1xuICAgICAgY29uc3Qgbm90ZSA9IGdldEZpbGVPck51bGwoYXBwLCBub3RlUGF0aCk7XG4gICAgICBpZiAoIW5vdGUpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBhd2FpdCBzYXZlTm90ZShhcHAsIG5vdGUpO1xuXG4gICAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgYXBwLnZhdWx0LnJlYWQobm90ZSk7XG4gICAgICBjb25zdCBsaW5rcyA9IGJhY2tsaW5rcy5nZXQobm90ZVBhdGgpID8/IHRocm93RXhwcmVzc2lvbihuZXcgRXJyb3IoJ0JhY2tsaW5rcyBub3QgZm91bmQnKSk7XG4gICAgICBmb3IgKGNvbnN0IGxpbmsgb2YgbGlua3MpIHtcbiAgICAgICAgY29uc3QgYWN0dWFsTGluayA9IGNvbnRlbnQuc2xpY2UobGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQsIGxpbmsucG9zaXRpb24uZW5kLm9mZnNldCk7XG4gICAgICAgIGlmIChhY3R1YWxMaW5rICE9PSBsaW5rLm9yaWdpbmFsKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH0sIG92ZXJyaWRkZW5PcHRpb25zKTtcblxuICByZXR1cm4gYmFja2xpbmtzO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIGJhY2tsaW5rcyBtYXAgZm9yIHRoZSBzcGVjaWZpZWQgZmlsZXMuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZXMgLSBUaGUgcGF0aHMgb3IgZmlsZXMgdG8gZ2V0IHRoZSBiYWNrbGlua3MgZm9yLlxuICogQHBhcmFtIHJldHJ5T3B0aW9ucyAtIE9wdGlvbmFsIHJldHJ5IG9wdGlvbnMuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIG1hcCBvZiBiYWNrbGlua3MuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRCYWNrbGlua3NNYXAoYXBwOiBBcHAsIHBhdGhPckZpbGVzOiBQYXRoT3JGaWxlW10sIHJldHJ5T3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0ge30pOiBQcm9taXNlPE1hcDxzdHJpbmcsIFJlZmVyZW5jZUNhY2hlW10+PiB7XG4gIGNvbnN0IG1hcCA9IG5ldyBNYXA8c3RyaW5nLCBSZWZlcmVuY2VDYWNoZVtdPigpO1xuICBmb3IgKGNvbnN0IHBhdGhPckZpbGUgb2YgcGF0aE9yRmlsZXMpIHtcbiAgICBjb25zdCBjdXN0b21BcnJheURpY3QgPSBhd2FpdCBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZShhcHAsIHBhdGhPckZpbGUsIHJldHJ5T3B0aW9ucyk7XG4gICAgZm9yIChjb25zdCBwYXRoIG9mIGN1c3RvbUFycmF5RGljdC5rZXlzKCkpIHtcbiAgICAgIGNvbnN0IG1hcExpbmtzID0gbWFwLmdldChwYXRoKSA/PyBbXTtcbiAgICAgIGNvbnN0IHBhdGhMaW5rcyA9IGN1c3RvbUFycmF5RGljdC5nZXQocGF0aCkgPz8gW107XG4gICAgICBtYXBMaW5rcy5wdXNoKC4uLnBhdGhMaW5rcyk7XG4gICAgICBtYXAuc2V0KHBhdGgsIG1hcExpbmtzKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG1hcDtcbn1cblxuLyoqXG4gKiBTYXZlcyB0aGUgc3BlY2lmaWVkIG5vdGUgaW4gdGhlIE9ic2lkaWFuIGFwcC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIG5vdGUgdG8gYmUgc2F2ZWQuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBub3RlIGlzIHNhdmVkLlxuICovXG5hc3luYyBmdW5jdGlvbiBzYXZlTm90ZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSk6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoIWlzTWFya2Rvd25GaWxlKHBhdGhPckZpbGUpKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcGF0aCA9IGdldFBhdGgocGF0aE9yRmlsZSk7XG5cbiAgZm9yIChjb25zdCBsZWFmIG9mIGFwcC53b3Jrc3BhY2UuZ2V0TGVhdmVzT2ZUeXBlKCdtYXJrZG93bicpKSB7XG4gICAgY29uc3QgdmlldyA9IGxlYWYudmlldyBhcyBNYXJrZG93blZpZXc7XG4gICAgaWYgKHZpZXcuZmlsZT8ucGF0aCA9PT0gcGF0aCkge1xuICAgICAgYXdhaXQgdmlldy5zYXZlKCk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBmcm9udCBtYXR0ZXIgZnJvbSB0aGUgbWV0YWRhdGEgY2FjaGUgc2FmZWx5LlxuICpcbiAqIEB0eXBlUGFyYW0gQ3VzdG9tRnJvbnRNYXR0ZXIgLSBUaGUgdHlwZSBvZiBjdXN0b20gZnJvbnQgbWF0dGVyLlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gcmV0cmlldmUgdGhlIGZyb250IG1hdHRlciBmcm9tLlxuICogQHJldHVybnMgVGhlIGNvbWJpbmVkIGZyb250IG1hdHRlci5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEZyb250TWF0dGVyU2FmZTxDdXN0b21Gcm9udE1hdHRlciA9IHVua25vd24+KGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlKTogUHJvbWlzZTxDb21iaW5lZEZyb250TWF0dGVyPEN1c3RvbUZyb250TWF0dGVyPj4ge1xuICBjb25zdCBjYWNoZSA9IGF3YWl0IGdldENhY2hlU2FmZShhcHAsIHBhdGhPckZpbGUpO1xuICByZXR1cm4gKGNhY2hlPy5mcm9udG1hdHRlciA/PyB7fSkgYXMgQ29tYmluZWRGcm9udE1hdHRlcjxDdXN0b21Gcm9udE1hdHRlcj47XG59XG5cbi8qKlxuICogVGVtcG9yYXJpbHkgcmVnaXN0ZXJzIGEgZmlsZSBhbmQgcnVucyBhIGZ1bmN0aW9uLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHBhcmFtIGZpbGUgLSBUaGUgZmlsZSB0byB0ZW1wb3JhcmlseSByZWdpc3Rlci5cbiAqIEBwYXJhbSBmbiAtIFRoZSBmdW5jdGlvbiB0byBydW4uXG4gKiBAcmV0dXJucyBUaGUgcmVzdWx0IG9mIHRoZSBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRlbXBSZWdpc3RlckZpbGVBbmRSdW48VD4oYXBwOiBBcHAsIGZpbGU6IFRBYnN0cmFjdEZpbGUsIGZuOiAoKSA9PiBUKTogVCB7XG4gIGNvbnN0IHVucmVnaXN0ZXIgPSByZWdpc3RlckZpbGUoYXBwLCBmaWxlKTtcblxuICB0cnkge1xuICAgIHJldHVybiBmbigpO1xuICB9IGZpbmFsbHkge1xuICAgIHVucmVnaXN0ZXIoKTtcbiAgfVxufVxuXG4vKioqXG4gKiBSZWdpc3RlcnMgYSBmaWxlIGluIHRoZSBPYnNpZGlhbiBhcHAuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZmlsZSAtIFRoZSBmaWxlIHRvIHJlZ2lzdGVyLlxuICogQHJldHVybnMgQSBmdW5jdGlvbiB0aGF0IHVucmVnaXN0ZXJzIHRoZSBmaWxlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJGaWxlKGFwcDogQXBwLCBmaWxlOiBUQWJzdHJhY3RGaWxlKTogKCkgPT4gdm9pZCB7XG4gIGlmICghZmlsZS5kZWxldGVkKSB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9O1xuICB9XG5cbiAgY29uc3QgZGVsZXRlZFBhdGhzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIGxldCBkZWxldGVkRmlsZTogVEFic3RyYWN0RmlsZSA9IGZpbGU7XG5cbiAgd2hpbGUgKGRlbGV0ZWRGaWxlLmRlbGV0ZWQpIHtcbiAgICBkZWxldGVkUGF0aHMucHVzaChkZWxldGVkRmlsZS5wYXRoKTtcbiAgICBhcHAudmF1bHQuZmlsZU1hcFtkZWxldGVkRmlsZS5wYXRoXSA9IGRlbGV0ZWRGaWxlO1xuICAgIGRlbGV0ZWRGaWxlID0gZGVsZXRlZEZpbGUucGFyZW50ID8/IGdldEZvbGRlcihhcHAsIHBhcmVudEZvbGRlclBhdGgoZGVsZXRlZEZpbGUucGF0aCksIHRydWUpO1xuICB9XG5cbiAgaWYgKGlzRmlsZShmaWxlKSkge1xuICAgIGFwcC5tZXRhZGF0YUNhY2hlLnVuaXF1ZUZpbGVMb29rdXAuYWRkKGZpbGUubmFtZS50b0xvd2VyQ2FzZSgpLCBmaWxlKTtcbiAgfVxuXG4gIHJldHVybiAoKSA9PiB7XG4gICAgZm9yIChjb25zdCBwYXRoIG9mIGRlbGV0ZWRQYXRocykge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1keW5hbWljLWRlbGV0ZVxuICAgICAgZGVsZXRlIGFwcC52YXVsdC5maWxlTWFwW3BhdGhdO1xuICAgIH1cblxuICAgIGlmIChpc0ZpbGUoZmlsZSkpIHtcbiAgICAgIGFwcC5tZXRhZGF0YUNhY2hlLnVuaXF1ZUZpbGVMb29rdXAucmVtb3ZlKGZpbGUubmFtZS50b0xvd2VyQ2FzZSgpLCBmaWxlKTtcbiAgICB9XG4gIH07XG59XG5cbi8qKlxuICogRW5zdXJlcyB0aGF0IHRoZSBtZXRhZGF0YSBjYWNoZSBpcyByZWFkeSBmb3IgYWxsIGZpbGVzLlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBtZXRhZGF0YSBjYWNoZSBpcyByZWFkeS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGVuc3VyZU1ldGFkYXRhQ2FjaGVSZWFkeShhcHA6IEFwcCk6IFByb21pc2U8dm9pZD4ge1xuICBmb3IgKGNvbnN0IFtwYXRoLCBjYWNoZV0gb2YgT2JqZWN0LmVudHJpZXMoYXBwLm1ldGFkYXRhQ2FjaGUuZmlsZUNhY2hlKSkge1xuICAgIGlmICghY2FjaGUuaGFzaCkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKGFwcC5tZXRhZGF0YUNhY2hlLm1ldGFkYXRhQ2FjaGVbY2FjaGUuaGFzaF0pIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGF3YWl0IGdldENhY2hlU2FmZShhcHAsIHBhdGgpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBa0JBLDZCQUFpQztBQUdqQyxtQkFBaUM7QUFDakMsbUJBQWdDO0FBRWhDLHdCQU9PO0FBL0JQLElBQUksWUFBWSxXQUFXLFNBQVMsS0FBSztBQUFBLEVBQ3ZDLE9BQU8sTUFBSTtBQUFBLEVBQ1gsT0FBTyxDQUFDO0FBQUEsRUFDUixZQUFZO0FBQ2Q7QUFzQ0EsZUFBc0IsYUFBYSxLQUFVLFlBQXdCLGVBQXNDLENBQUMsR0FBbUM7QUFDN0ksUUFBTSx3QkFBK0MsRUFBRSx1QkFBdUIsSUFBTTtBQUNwRixRQUFNLG9CQUEyQyxFQUFFLEdBQUcsdUJBQXVCLEdBQUcsYUFBYTtBQUM3RixNQUFJLFFBQStCO0FBRW5DLFlBQU0sK0JBQWlCLFlBQVk7QUFDakMsVUFBTSxXQUFPLGlDQUFjLEtBQUssVUFBVTtB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TUFBTTtBQUM1QixZQUFNLEtBQUssS0FBSztBQUFBLElBQ2xCO0FBQUEsRUFDRjtBQUNGO0FBVUEsZUFBc0IsbUJBQWdELEtBQVUsWUFBeUU7QUFDdkosUUFBTSxRQUFRLE1BQU0sYUFBYSxLQUFLLFVBQVU7QUFDaEQsU0FBUSxPQUFPLGVBQWUsQ0FBQztBQUNqQztBQVVPLFNBQVMsdUJBQTBCLEtBQVUsTUFBcUIsSUFBZ0I7QUFDdkYsUUFBTSxhQUFhLGFBQWEsS0FBSyxJQUFJO0FBRXpDLE1BQUk7QUFDRixXQUFPLEdBQUc7QUFBQSxFQUNaLFVBQUU7QUFDQSxlQUFXO0FBQUEsRUFDYjtBQUNGO0FBU08sU0FBUyxhQUFhLEtBQVUsTUFBaUM7QUFDdEUsTUFBSSxDQUFDLEtBQUssU0FBUztBQUNqQixXQUFPLE1BQU07QUFBQSxJQUViO0FBQUEsRUFDRjtBQUVBLFFBQU0sZUFBeUIsQ0FBQztBQUVoQyxNQUFJLGNBQTZCO0FBRWpDLFNBQU8sWUFBWSxTQUFTO0FBQzFCLGlCQUFhLEtBQUssWUFBWSxJQUFJO0FBQ2xDLFFBQUksTUFBTSxRQUFRLFlBQVksSUFBSSxJQUFJO0FBQ3RDLGtCQUFjLFlBQVksY0FBVSw2QkFBVSxTQUFLLHlDQUFpQixZQUFZLElBQUksR0FBRyxJQUFJO0FBQUEsRUFDN0Y7QUFFQSxVQUFJLDBCQUFPLElBQUksR0FBRztBQUNoQixRQUFJLGNBQWMsaUJBQWlCLElBQUksS0FBSyxLQUFLLFlBQVksR0FBRyxJQUFJO0FBQUEsRUFDdEU7QUFFQSxTQUFPLE1BQU07QUFDWCxlQUFXLFFBQVEsY0FBYztBQUUvQixhQUFPLElBQUksTUFBTSxRQUFRLElBQUk7QUFBQSxJQUMvQjtBQUVBLFlBQUksMEJBQU8sSUFBSSxHQUFHO0FBQ2hCLFVBQUksY0FBYyxpQkFBaUIsT0FBTyxLQUFLLEtBQUssWUFBWSxHQUFHLElBQUk7QUFBQSxJQUN6RTtBQUFBLEVBQ0Y7QUFDRjtBQU9BLGVBQXNCLHlCQUF5QixLQUF5QjtBQUN0RSxhQUFXLENBQUMsTUFBTSxLQUFLLEtBQUssT0FBTyxRQUFRLElBQUksY0FBYyxTQUFTLEdBQUc7QUFDdkUsUUFBSSxDQUFDLE1BQU0sTUFBTTtBQUNmO0FBQUEsSUFDRjtBQUVBLFFBQUksSUFBSSxjQUFjLGNBQWMsTUFBTSxJQUFJLEdBQUc7QUFDL0M7QUFBQSxJQUNGO0FBRUEsVUFBTSxhQUFhLEtBQUssSUFBSTtBQUFBLEVBQzlCO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -29,21 +29,6 @@ __export(Alert_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(Alert_exports);
31
31
  var import_obsidian = require('obsidian');
32
- var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
33
- if (typeof require !== "undefined" && typeof module !== "undefined") {
34
- const url = require('node:url');
35
- return url.pathToFileURL(__filename).href;
36
- }
37
- if (typeof window !== "undefined") {
38
- return window.location.href;
39
- }
40
- return __import_meta_url;
41
- })();
42
- var __process = globalThis["process"] ?? {
43
- "cwd": () => "/",
44
- "env": {},
45
- "platform": "android"
46
- };
47
32
  async function alert(options) {
48
33
  return new Promise((resolve) => {
49
34
  const modal = new AlertModal(options, resolve);
@@ -82,4 +67,4 @@ class AlertModal extends import_obsidian.Modal {
82
67
  0 && (module.exports = {
83
68
  alert
84
69
  });
85
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFsL0FsZXJ0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19pbXBvcnRfbWV0YV91cmwgPSBnbG9iYWxUaGlzWydpbXBvcnQubWV0YS51cmwnXSA/PyAoKCk9PntpZih0eXBlb2YgcmVxdWlyZSE9PVwidW5kZWZpbmVkXCImJnR5cGVvZiBtb2R1bGUhPT1cInVuZGVmaW5lZFwiKXtjb25zdCB1cmw9cmVxdWlyZShcIm5vZGU6dXJsXCIpO3JldHVybiB1cmwucGF0aFRvRmlsZVVSTChfX2ZpbGVuYW1lKS5ocmVmfWlmKHR5cGVvZiB3aW5kb3chPT1cInVuZGVmaW5lZFwiKXtyZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWZ9cmV0dXJuIGltcG9ydC5tZXRhLnVybH0pKCk7XG52YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIEFsZXJ0XG4gKiBVdGlsaXR5IGZvciBkaXNwbGF5aW5nIGFsZXJ0IG1vZGFscyBpbiBPYnNpZGlhbi5cbiAqXG4gKiBUaGlzIG1vZHVsZSBleHBvcnRzIGEgZnVuY3Rpb24gdG8gZGlzcGxheSBhIG1vZGFsIHdpdGggYSBtZXNzYWdlIGluIE9ic2lkaWFuLiBUaGUgbW9kYWwgaW5jbHVkZXMgYW4gXCJPS1wiIGJ1dHRvbiB0byBjbG9zZSBpdC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB7XG4gIEJ1dHRvbkNvbXBvbmVudCxcbiAgTW9kYWxcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIGZvciB0aGUgYWxlcnQgbW9kYWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWxlcnRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIHRpdGxlIG9mIHRoZSBtb2RhbC5cbiAgICovXG4gIHRpdGxlPzogc3RyaW5nIHwgRG9jdW1lbnRGcmFnbWVudDtcblxuICAvKipcbiAgICogVGhlIG1lc3NhZ2UgdG8gZGlzcGxheSBpbiB0aGUgbW9kYWwuXG4gICAqL1xuICBtZXNzYWdlOiBzdHJpbmcgfCBEb2N1bWVudEZyYWdtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgdGV4dCBmb3IgdGhlIFwiT0tcIiBidXR0b24uXG4gICAqL1xuICBva0J1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdHlsZXMgdG8gYXBwbHkgdG8gdGhlIFwiT0tcIiBidXR0b24uXG4gICAqL1xuICBva0J1dHRvblN0eWxlcz86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG59XG5cbi8qKlxuICogRGlzcGxheXMgYW4gYWxlcnQgbW9kYWwgaW4gT2JzaWRpYW4gd2l0aCBhIHNwZWNpZmllZCBtZXNzYWdlLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSBhbGVydCBtb2RhbC5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIG1vZGFsIGlzIGNsb3NlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFsZXJ0KG9wdGlvbnM6IEFsZXJ0T3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHtcbiAgICBjb25zdCBtb2RhbCA9IG5ldyBBbGVydE1vZGFsKG9wdGlvbnMsIHJlc29sdmUpO1xuICAgIG1vZGFsLm9wZW4oKTtcbiAgfSk7XG59XG5cbmNsYXNzIEFsZXJ0TW9kYWwgZXh0ZW5kcyBNb2RhbCB7XG4gIHByaXZhdGUgb3B0aW9uczogUmVxdWlyZWQ8QWxlcnRPcHRpb25zPjtcblxuICBwdWJsaWMgY29uc3RydWN0b3Iob3B0aW9uczogQWxlcnRPcHRpb25zLCBwcml2YXRlIHJlc29sdmU6ICgpID0+IHZvaWQpIHtcbiAgICBzdXBlcihvcHRpb25zLmFwcCk7XG4gICAgY29uc3QgREVGQVVMVF9PUFRJT05TOiBSZXF1aXJlZDxBbGVydE9wdGlvbnM+ID0ge1xuICAgICAgYXBwOiBvcHRpb25zLmFwcCxcbiAgICAgIHRpdGxlOiAnJyxcbiAgICAgIG1lc3NhZ2U6ICcnLFxuICAgICAgb2tCdXR0b25UZXh0OiAnT0snLFxuICAgICAgb2tCdXR0b25TdHlsZXM6IHt9XG4gICAgfTtcbiAgICB0aGlzLm9wdGlvbnMgPSB7IC4uLkRFRkFVTFRfT1BUSU9OUywgLi4ub3B0aW9ucyB9O1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uT3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLnRpdGxlRWwuc2V0VGV4dCh0aGlzLm9wdGlvbnMudGl0bGUpO1xuICAgIGNvbnN0IHBhcmFncmFwaCA9IHRoaXMuY29udGVudEVsLmNyZWF0ZUVsKCdwJyk7XG4gICAgcGFyYWdyYXBoLnNldFRleHQodGhpcy5vcHRpb25zLm1lc3NhZ2UpO1xuICAgIGNvbnN0IG9rQnV0dG9uID0gbmV3IEJ1dHRvbkNvbXBvbmVudCh0aGlzLmNvbnRlbnRFbCk7XG4gICAgb2tCdXR0b24uc2V0QnV0dG9uVGV4dCh0aGlzLm9wdGlvbnMub2tCdXR0b25UZXh0KTtcbiAgICBva0J1dHRvbi5zZXRDdGEoKTtcbiAgICBva0J1dHRvbi5vbkNsaWNrKHRoaXMuY2xvc2UuYmluZCh0aGlzKSk7XG4gICAgT2JqZWN0LmFzc2lnbihva0J1dHRvbi5idXR0b25FbC5zdHlsZSwgdGhpcy5vcHRpb25zLm9rQnV0dG9uU3R5bGVzKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMucmVzb2x2ZSgpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWNBLHNCQUdPO0FBakJQLElBQUksb0JBQW9CLFdBQVcsaUJBQWlCLE1BQU0sTUFBSTtBQUFDLE1BQUcsT0FBTyxZQUFVLGVBQWEsT0FBTyxXQUFTLGFBQVk7QUFBQyxVQUFNLE1BQUksUUFBUSxVQUFVO0FBQUUsV0FBTyxJQUFJLGNBQWMsVUFBVSxFQUFFO0FBQUEsRUFBSTtBQUFDLE1BQUcsT0FBTyxXQUFTLGFBQVk7QUFBQyxXQUFPLE9BQU8sU0FBUztBQUFBLEVBQUk7QUFBQyxTQUFPO0FBQWUsR0FBRztBQUMxUixJQUFJLFlBQVksV0FBVyxTQUFTLEtBQUs7QUFBQSxFQUN2QyxPQUFPLE1BQUk7QUFBQSxFQUNYLE9BQU8sQ0FBQztBQUFBLEVBQ1IsWUFBWTtBQUNkO0FBa0RBLGVBQXNCLE1BQU0sU0FBc0M7QUFDaEUsU0FBTyxJQUFJLFFBQWMsQ0FBQyxZQUFZO0FBQ3BDLFVBQU0sUUFBUSxJQUFJLFdBQVcsU0FBUyxPQUFPO0FBQzdDLFVBQU0sS0FBSztBQUFBLEVBQ2IsQ0FBQztBQUNIO0FBRUEsTUFBTSxtQkFBbUIsc0JBQU07QUFBQSxFQUd0QixZQUFZLFNBQStCLFNBQXFCO0FBQ3JFLFVBQU0sUUFBUSxHQUFHO0FBRCtCO0FBRWhELFVBQU0sa0JBQTBDO0FBQUEsTUFDOUMsS0FBSyxRQUFRO0FBQUEsTUFDYixPQUFPO0FBQUEsTUFDUCxTQUFTO0FBQUEsTUFDVCxjQUFjO0FBQUEsTUFDZCxnQkFBZ0IsQ0FBQztBQUFBLElBQ25CO0FBQ0EsU0FBSyxVQUFVLEVBQUUsR0FBRyxpQkFBaUIsR0FBRyxRQUFRO0FBQUEsRUFDbEQ7QUFBQSxFQVpRO0FBQUEsRUFjUSxTQUFlO0FBQzdCLFNBQUssUUFBUSxRQUFRLEtBQUssUUFBUSxLQUFLO0FBQ3ZDLFVBQU0sWUFBWSxLQUFLLFVBQVUsU0FBUyxHQUFHO0FBQzdDLGNBQVUsUUFBUSxLQUFLLFFBQVEsT0FBTztBQUN0QyxVQUFNLFdBQVcsSUFBSSxnQ0FBZ0IsS0FBSyxTQUFTO0FBQ25ELGFBQVMsY0FBYyxLQUFLLFFBQVEsWUFBWTtBQUNoRCxhQUFTLE9BQU87QUFDaEIsYUFBUyxRQUFRLEtBQUssTUFBTSxLQUFLLElBQUksQ0FBQztBQUN0QyxXQUFPLE9BQU8sU0FBUyxTQUFTLE9BQU8sS0FBSyxRQUFRLGNBQWM7QUFBQSxFQUNwRTtBQUFBLEVBRWdCLFVBQWdCO0FBQzlCLFNBQUssUUFBUTtBQUFBLEVBQ2Y7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
70
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFsL0FsZXJ0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBBbGVydFxuICogVXRpbGl0eSBmb3IgZGlzcGxheWluZyBhbGVydCBtb2RhbHMgaW4gT2JzaWRpYW4uXG4gKlxuICogVGhpcyBtb2R1bGUgZXhwb3J0cyBhIGZ1bmN0aW9uIHRvIGRpc3BsYXkgYSBtb2RhbCB3aXRoIGEgbWVzc2FnZSBpbiBPYnNpZGlhbi4gVGhlIG1vZGFsIGluY2x1ZGVzIGFuIFwiT0tcIiBidXR0b24gdG8gY2xvc2UgaXQuXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBBcHAgfSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQge1xuICBCdXR0b25Db21wb25lbnQsXG4gIE1vZGFsXG59IGZyb20gJ29ic2lkaWFuJztcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyBmb3IgdGhlIGFsZXJ0IG1vZGFsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFsZXJ0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICAgKi9cbiAgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIFRoZSB0aXRsZSBvZiB0aGUgbW9kYWwuXG4gICAqL1xuICB0aXRsZT86IHN0cmluZyB8IERvY3VtZW50RnJhZ21lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBtZXNzYWdlIHRvIGRpc3BsYXkgaW4gdGhlIG1vZGFsLlxuICAgKi9cbiAgbWVzc2FnZTogc3RyaW5nIHwgRG9jdW1lbnRGcmFnbWVudDtcblxuICAvKipcbiAgICogVGhlIHRleHQgZm9yIHRoZSBcIk9LXCIgYnV0dG9uLlxuICAgKi9cbiAgb2tCdXR0b25UZXh0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3R5bGVzIHRvIGFwcGx5IHRvIHRoZSBcIk9LXCIgYnV0dG9uLlxuICAgKi9cbiAgb2tCdXR0b25TdHlsZXM/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xufVxuXG4vKipcbiAqIERpc3BsYXlzIGFuIGFsZXJ0IG1vZGFsIGluIE9ic2lkaWFuIHdpdGggYSBzcGVjaWZpZWQgbWVzc2FnZS5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgYWxlcnQgbW9kYWwuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBtb2RhbCBpcyBjbG9zZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhbGVydChvcHRpb25zOiBBbGVydE9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlKSA9PiB7XG4gICAgY29uc3QgbW9kYWwgPSBuZXcgQWxlcnRNb2RhbChvcHRpb25zLCByZXNvbHZlKTtcbiAgICBtb2RhbC5vcGVuKCk7XG4gIH0pO1xufVxuXG5jbGFzcyBBbGVydE1vZGFsIGV4dGVuZHMgTW9kYWwge1xuICBwcml2YXRlIG9wdGlvbnM6IFJlcXVpcmVkPEFsZXJ0T3B0aW9ucz47XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEFsZXJ0T3B0aW9ucywgcHJpdmF0ZSByZXNvbHZlOiAoKSA9PiB2b2lkKSB7XG4gICAgc3VwZXIob3B0aW9ucy5hcHApO1xuICAgIGNvbnN0IERFRkFVTFRfT1BUSU9OUzogUmVxdWlyZWQ8QWxlcnRPcHRpb25zPiA9IHtcbiAgICAgIGFwcDogb3B0aW9ucy5hcHAsXG4gICAgICB0aXRsZTogJycsXG4gICAgICBtZXNzYWdlOiAnJyxcbiAgICAgIG9rQnV0dG9uVGV4dDogJ09LJyxcbiAgICAgIG9rQnV0dG9uU3R5bGVzOiB7fVxuICAgIH07XG4gICAgdGhpcy5vcHRpb25zID0geyAuLi5ERUZBVUxUX09QVElPTlMsIC4uLm9wdGlvbnMgfTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbk9wZW4oKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZUVsLnNldFRleHQodGhpcy5vcHRpb25zLnRpdGxlKTtcbiAgICBjb25zdCBwYXJhZ3JhcGggPSB0aGlzLmNvbnRlbnRFbC5jcmVhdGVFbCgncCcpO1xuICAgIHBhcmFncmFwaC5zZXRUZXh0KHRoaXMub3B0aW9ucy5tZXNzYWdlKTtcbiAgICBjb25zdCBva0J1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIG9rQnV0dG9uLnNldEJ1dHRvblRleHQodGhpcy5vcHRpb25zLm9rQnV0dG9uVGV4dCk7XG4gICAgb2tCdXR0b24uc2V0Q3RhKCk7XG4gICAgb2tCdXR0b24ub25DbGljayh0aGlzLmNsb3NlLmJpbmQodGhpcykpO1xuICAgIE9iamVjdC5hc3NpZ24ob2tCdXR0b24uYnV0dG9uRWwuc3R5bGUsIHRoaXMub3B0aW9ucy5va0J1dHRvblN0eWxlcyk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25DbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLnJlc29sdmUoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQSxzQkFHTztBQXNDUCxlQUFzQixNQUFNLFNBQXNDO0FBQ2hFLFNBQU8sSUFBSSxRQUFjLENBQUMsWUFBWTtBQUNwQyxVQUFNLFFBQVEsSUFBSSxXQUFXLFNBQVMsT0FBTztBQUM3QyxVQUFNLEtBQUs7QUFBQSxFQUNiLENBQUM7QUFDSDtBQUVBLE1BQU0sbUJBQW1CLHNCQUFNO0FBQUEsRUFHdEIsWUFBWSxTQUErQixTQUFxQjtBQUNyRSxVQUFNLFFBQVEsR0FBRztBQUQrQjtBQUVoRCxVQUFNLGtCQUEwQztBQUFBLE1BQzlDLEtBQUssUUFBUTtBQUFBLE1BQ2IsT0FBTztBQUFBLE1BQ1AsU0FBUztBQUFBLE1BQ1QsY0FBYztBQUFBLE1BQ2QsZ0JBQWdCLENBQUM7QUFBQSxJQUNuQjtBQUNBLFNBQUssVUFBVSxFQUFFLEdBQUcsaUJBQWlCLEdBQUcsUUFBUTtBQUFBLEVBQ2xEO0FBQUEsRUFaUTtBQUFBLEVBY1EsU0FBZTtBQUM3QixTQUFLLFFBQVEsUUFBUSxLQUFLLFFBQVEsS0FBSztBQUN2QyxVQUFNLFlBQVksS0FBSyxVQUFVLFNBQVMsR0FBRztBQUM3QyxjQUFVLFFBQVEsS0FBSyxRQUFRLE9BQU87QUFDdEMsVUFBTSxXQUFXLElBQUksZ0NBQWdCLEtBQUssU0FBUztBQUNuRCxhQUFTLGNBQWMsS0FBSyxRQUFRLFlBQVk7QUFDaEQsYUFBUyxPQUFPO0FBQ2hCLGFBQVMsUUFBUSxLQUFLLE1BQU0sS0FBSyxJQUFJLENBQUM7QUFDdEMsV0FBTyxPQUFPLFNBQVMsU0FBUyxPQUFPLEtBQUssUUFBUSxjQUFjO0FBQUEsRUFDcEU7QUFBQSxFQUVnQixVQUFnQjtBQUM5QixTQUFLLFFBQVE7QUFBQSxFQUNmO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -29,21 +29,6 @@ __export(Confirm_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(Confirm_exports);
31
31
  var import_obsidian = require('obsidian');
32
- var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
33
- if (typeof require !== "undefined" && typeof module !== "undefined") {
34
- const url = require('node:url');
35
- return url.pathToFileURL(__filename).href;
36
- }
37
- if (typeof window !== "undefined") {
38
- return window.location.href;
39
- }
40
- return __import_meta_url;
41
- })();
42
- var __process = globalThis["process"] ?? {
43
- "cwd": () => "/",
44
- "env": {},
45
- "platform": "android"
46
- };
47
32
  async function confirm(options) {
48
33
  return new Promise((resolve) => {
49
34
  const modal = new ConfirmModal(options, resolve);
@@ -95,4 +80,4 @@ class ConfirmModal extends import_obsidian.Modal {
95
80
  0 && (module.exports = {
96
81
  confirm
97
82
  });
98
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFsL0NvbmZpcm0udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbInZhciBfX2ltcG9ydF9tZXRhX3VybCA9IGdsb2JhbFRoaXNbJ2ltcG9ydC5tZXRhLnVybCddID8/ICgoKT0+e2lmKHR5cGVvZiByZXF1aXJlIT09XCJ1bmRlZmluZWRcIiYmdHlwZW9mIG1vZHVsZSE9PVwidW5kZWZpbmVkXCIpe2NvbnN0IHVybD1yZXF1aXJlKFwibm9kZTp1cmxcIik7cmV0dXJuIHVybC5wYXRoVG9GaWxlVVJMKF9fZmlsZW5hbWUpLmhyZWZ9aWYodHlwZW9mIHdpbmRvdyE9PVwidW5kZWZpbmVkXCIpe3JldHVybiB3aW5kb3cubG9jYXRpb24uaHJlZn1yZXR1cm4gaW1wb3J0Lm1ldGEudXJsfSkoKTtcbnZhciBfX3Byb2Nlc3MgPSBnbG9iYWxUaGlzWydwcm9jZXNzJ10gPz8ge1xuICBcImN3ZFwiOiAoKT0+XCIvXCIsXG4gIFwiZW52XCI6IHt9LFxuICBcInBsYXRmb3JtXCI6IFwiYW5kcm9pZFwiXG59O1xuLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gQ29uZmlybVxuICogVXRpbGl0eSBmb3IgZGlzcGxheWluZyBjb25maXJtIG1vZGFscyBpbiBPYnNpZGlhbi5cbiAqXG4gKiBUaGlzIG1vZHVsZSBleHBvcnRzIGEgZnVuY3Rpb24gdG8gZGlzcGxheSBhIG1vZGFsIHdpdGggYSBtZXNzYWdlIGluIE9ic2lkaWFuLiBUaGUgbW9kYWwgaW5jbHVkZXMgXCJPS1wiIGFuZCBcIkNhbmNlbFwiIGJ1dHRvbnMgdG8gY29uZmlybSBvciBjYW5jZWwgdGhlIGFjdGlvbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB7XG4gIEJ1dHRvbkNvbXBvbmVudCxcbiAgTW9kYWxcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vKipcbiAqIFRoZSBvcHRpb25zIGZvciB0aGUgY29uZmlybSBtb2RhbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25maXJtT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICAgKi9cbiAgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIFRoZSB0aXRsZSBvZiB0aGUgbW9kYWwuXG4gICAqL1xuICB0aXRsZT86IHN0cmluZyB8IERvY3VtZW50RnJhZ21lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBtZXNzYWdlIHRvIGRpc3BsYXkgaW4gdGhlIG1vZGFsLlxuICAgKi9cbiAgbWVzc2FnZTogc3RyaW5nIHwgRG9jdW1lbnRGcmFnbWVudDtcblxuICAvKipcbiAgICogVGhlIHRleHQgZm9yIHRoZSBcIk9LXCIgYnV0dG9uLlxuICAgKi9cbiAgb2tCdXR0b25UZXh0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdGV4dCBmb3IgdGhlIFwiQ2FuY2VsXCIgYnV0dG9uLlxuICAgKi9cbiAgY2FuY2VsQnV0dG9uVGV4dD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN0eWxlcyB0byBhcHBseSB0byB0aGUgXCJPS1wiIGJ1dHRvbi5cbiAgICovXG4gIG9rQnV0dG9uU3R5bGVzPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjtcblxuICAvKipcbiAgICogVGhlIHN0eWxlcyB0byBhcHBseSB0byB0aGUgXCJDYW5jZWxcIiBidXR0b24uXG4gICAqL1xuICBjYW5jZWxCdXR0b25TdHlsZXM/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xufVxuXG4vKipcbiAqIERpc3BsYXlzIGFuIGNvbmZpcm0gbW9kYWwgaW4gT2JzaWRpYW4gd2l0aCBhIHNwZWNpZmllZCBtZXNzYWdlLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSBjb25maXJtIG1vZGFsLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBcIk9LXCIgYnV0dG9uIHdhcyBjbGlja2VkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY29uZmlybShvcHRpb25zOiBDb25maXJtT3B0aW9ucyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICByZXR1cm4gbmV3IFByb21pc2U8Ym9vbGVhbj4oKHJlc29sdmUpID0+IHtcbiAgICBjb25zdCBtb2RhbCA9IG5ldyBDb25maXJtTW9kYWwob3B0aW9ucywgcmVzb2x2ZSk7XG4gICAgbW9kYWwub3BlbigpO1xuICB9KTtcbn1cblxuY2xhc3MgQ29uZmlybU1vZGFsIGV4dGVuZHMgTW9kYWwge1xuICBwcml2YXRlIG9wdGlvbnM6IFJlcXVpcmVkPENvbmZpcm1PcHRpb25zPjtcbiAgcHJpdmF0ZSBpc0NvbmZpcm1lZCA9IGZhbHNlO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBDb25maXJtT3B0aW9ucywgcHJpdmF0ZSByZXNvbHZlOiAodmFsdWU6IGJvb2xlYW4pID0+IHZvaWQpIHtcbiAgICBzdXBlcihvcHRpb25zLmFwcCk7XG4gICAgY29uc3QgREVGQVVMVF9PUFRJT05TOiBSZXF1aXJlZDxDb25maXJtT3B0aW9ucz4gPSB7XG4gICAgICBhcHA6IG9wdGlvbnMuYXBwLFxuICAgICAgdGl0bGU6ICcnLFxuICAgICAgbWVzc2FnZTogJycsXG4gICAgICBva0J1dHRvblRleHQ6ICdPSycsXG4gICAgICBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsJyxcbiAgICAgIG9rQnV0dG9uU3R5bGVzOiB7XG4gICAgICAgIG1hcmdpblRvcDogJzIwcHgnLFxuICAgICAgICBtYXJnaW5SaWdodDogJzEwcHgnXG4gICAgICB9LFxuICAgICAgY2FuY2VsQnV0dG9uU3R5bGVzOiB7fVxuICAgIH07XG4gICAgdGhpcy5vcHRpb25zID0geyAuLi5ERUZBVUxUX09QVElPTlMsIC4uLm9wdGlvbnMgfTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbk9wZW4oKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZUVsLnNldFRleHQodGhpcy5vcHRpb25zLnRpdGxlKTtcbiAgICBjb25zdCBwYXJhZ3JhcGggPSB0aGlzLmNvbnRlbnRFbC5jcmVhdGVFbCgncCcpO1xuICAgIHBhcmFncmFwaC5zZXRUZXh0KHRoaXMub3B0aW9ucy5tZXNzYWdlKTtcbiAgICBjb25zdCBva0J1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIG9rQnV0dG9uLnNldEJ1dHRvblRleHQodGhpcy5vcHRpb25zLm9rQnV0dG9uVGV4dCk7XG4gICAgb2tCdXR0b24uc2V0Q3RhKCk7XG4gICAgb2tCdXR0b24ub25DbGljaygoKSA9PiB7XG4gICAgICB0aGlzLmlzQ29uZmlybWVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9KTtcbiAgICBPYmplY3QuYXNzaWduKG9rQnV0dG9uLmJ1dHRvbkVsLnN0eWxlLCB0aGlzLm9wdGlvbnMub2tCdXR0b25TdHlsZXMpO1xuXG4gICAgY29uc3QgY2FuY2VsQnV0dG9uID0gbmV3IEJ1dHRvbkNvbXBvbmVudCh0aGlzLmNvbnRlbnRFbCk7XG4gICAgY2FuY2VsQnV0dG9uLnNldEJ1dHRvblRleHQodGhpcy5vcHRpb25zLmNhbmNlbEJ1dHRvblRleHQpO1xuICAgIGNhbmNlbEJ1dHRvbi5vbkNsaWNrKHRoaXMuY2xvc2UuYmluZCh0aGlzKSk7XG4gICAgT2JqZWN0LmFzc2lnbihva0J1dHRvbi5idXR0b25FbC5zdHlsZSwgdGhpcy5vcHRpb25zLm9rQnV0dG9uU3R5bGVzKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMucmVzb2x2ZSh0aGlzLmlzQ29uZmlybWVkKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFjQSxzQkFHTztBQWpCUCxJQUFJLG9CQUFvQixXQUFXLGlCQUFpQixNQUFNLE1BQUk7QUFBQyxNQUFHLE9BQU8sWUFBVSxlQUFhLE9BQU8sV0FBUyxhQUFZO0FBQUMsVUFBTSxNQUFJLFFBQVEsVUFBVTtBQUFFLFdBQU8sSUFBSSxjQUFjLFVBQVUsRUFBRTtBQUFBLEVBQUk7QUFBQyxNQUFHLE9BQU8sV0FBUyxhQUFZO0FBQUMsV0FBTyxPQUFPLFNBQVM7QUFBQSxFQUFJO0FBQUMsU0FBTztBQUFlLEdBQUc7QUFDMVIsSUFBSSxZQUFZLFdBQVcsU0FBUyxLQUFLO0FBQUEsRUFDdkMsT0FBTyxNQUFJO0FBQUEsRUFDWCxPQUFPLENBQUM7QUFBQSxFQUNSLFlBQVk7QUFDZDtBQTREQSxlQUFzQixRQUFRLFNBQTJDO0FBQ3ZFLFNBQU8sSUFBSSxRQUFpQixDQUFDLFlBQVk7QUFDdkMsVUFBTSxRQUFRLElBQUksYUFBYSxTQUFTLE9BQU87QUFDL0MsVUFBTSxLQUFLO0FBQUEsRUFDYixDQUFDO0FBQ0g7QUFFQSxNQUFNLHFCQUFxQixzQkFBTTtBQUFBLEVBSXhCLFlBQVksU0FBaUMsU0FBbUM7QUFDckYsVUFBTSxRQUFRLEdBQUc7QUFEaUM7QUFFbEQsVUFBTSxrQkFBNEM7QUFBQSxNQUNoRCxLQUFLLFFBQVE7QUFBQSxNQUNiLE9BQU87QUFBQSxNQUNQLFNBQVM7QUFBQSxNQUNULGNBQWM7QUFBQSxNQUNkLGtCQUFrQjtBQUFBLE1BQ2xCLGdCQUFnQjtBQUFBLFFBQ2QsV0FBVztBQUFBLFFBQ1gsYUFBYTtBQUFBLE1BQ2Y7QUFBQSxNQUNBLG9CQUFvQixDQUFDO0FBQUEsSUFDdkI7QUFDQSxTQUFLLFVBQVUsRUFBRSxHQUFHLGlCQUFpQixHQUFHLFFBQVE7QUFBQSxFQUNsRDtBQUFBLEVBbEJRO0FBQUEsRUFDQSxjQUFjO0FBQUEsRUFtQk4sU0FBZTtBQUM3QixTQUFLLFFBQVEsUUFBUSxLQUFLLFFBQVEsS0FBSztBQUN2QyxVQUFNLFlBQVksS0FBSyxVQUFVLFNBQVMsR0FBRztBQUM3QyxjQUFVLFFBQVEsS0FBSyxRQUFRLE9BQU87QUFDdEMsVUFBTSxXQUFXLElBQUksZ0NBQWdCLEtBQUssU0FBUztBQUNuRCxhQUFTLGNBQWMsS0FBSyxRQUFRLFlBQVk7QUFDaEQsYUFBUyxPQUFPO0FBQ2hCLGFBQVMsUUFBUSxNQUFNO0FBQ3JCLFdBQUssY0FBYztBQUNuQixXQUFLLE1BQU07QUFBQSxJQUNiLENBQUM7QUFDRCxXQUFPLE9BQU8sU0FBUyxTQUFTLE9BQU8sS0FBSyxRQUFRLGNBQWM7QUFFbEUsVUFBTSxlQUFlLElBQUksZ0NBQWdCLEtBQUssU0FBUztBQUN2RCxpQkFBYSxjQUFjLEtBQUssUUFBUSxnQkFBZ0I7QUFDeEQsaUJBQWEsUUFBUSxLQUFLLE1BQU0sS0FBSyxJQUFJLENBQUM7QUFDMUMsV0FBTyxPQUFPLFNBQVMsU0FBUyxPQUFPLEtBQUssUUFBUSxjQUFjO0FBQUEsRUFDcEU7QUFBQSxFQUVnQixVQUFnQjtBQUM5QixTQUFLLFFBQVEsS0FBSyxXQUFXO0FBQUEsRUFDL0I7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
83
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFsL0NvbmZpcm0udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIENvbmZpcm1cbiAqIFV0aWxpdHkgZm9yIGRpc3BsYXlpbmcgY29uZmlybSBtb2RhbHMgaW4gT2JzaWRpYW4uXG4gKlxuICogVGhpcyBtb2R1bGUgZXhwb3J0cyBhIGZ1bmN0aW9uIHRvIGRpc3BsYXkgYSBtb2RhbCB3aXRoIGEgbWVzc2FnZSBpbiBPYnNpZGlhbi4gVGhlIG1vZGFsIGluY2x1ZGVzIFwiT0tcIiBhbmQgXCJDYW5jZWxcIiBidXR0b25zIHRvIGNvbmZpcm0gb3IgY2FuY2VsIHRoZSBhY3Rpb24uXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBBcHAgfSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQge1xuICBCdXR0b25Db21wb25lbnQsXG4gIE1vZGFsXG59IGZyb20gJ29ic2lkaWFuJztcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyBmb3IgdGhlIGNvbmZpcm0gbW9kYWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybU9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgb2YgdGhlIG1vZGFsLlxuICAgKi9cbiAgdGl0bGU/OiBzdHJpbmcgfCBEb2N1bWVudEZyYWdtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSB0byBkaXNwbGF5IGluIHRoZSBtb2RhbC5cbiAgICovXG4gIG1lc3NhZ2U6IHN0cmluZyB8IERvY3VtZW50RnJhZ21lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZXh0IGZvciB0aGUgXCJPS1wiIGJ1dHRvbi5cbiAgICovXG4gIG9rQnV0dG9uVGV4dD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRleHQgZm9yIHRoZSBcIkNhbmNlbFwiIGJ1dHRvbi5cbiAgICovXG4gIGNhbmNlbEJ1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdHlsZXMgdG8gYXBwbHkgdG8gdGhlIFwiT0tcIiBidXR0b24uXG4gICAqL1xuICBva0J1dHRvblN0eWxlcz86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG5cbiAgLyoqXG4gICAqIFRoZSBzdHlsZXMgdG8gYXBwbHkgdG8gdGhlIFwiQ2FuY2VsXCIgYnV0dG9uLlxuICAgKi9cbiAgY2FuY2VsQnV0dG9uU3R5bGVzPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjtcbn1cblxuLyoqXG4gKiBEaXNwbGF5cyBhbiBjb25maXJtIG1vZGFsIGluIE9ic2lkaWFuIHdpdGggYSBzcGVjaWZpZWQgbWVzc2FnZS5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgY29uZmlybSBtb2RhbC5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgXCJPS1wiIGJ1dHRvbiB3YXMgY2xpY2tlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNvbmZpcm0ob3B0aW9uczogQ29uZmlybU9wdGlvbnMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KChyZXNvbHZlKSA9PiB7XG4gICAgY29uc3QgbW9kYWwgPSBuZXcgQ29uZmlybU1vZGFsKG9wdGlvbnMsIHJlc29sdmUpO1xuICAgIG1vZGFsLm9wZW4oKTtcbiAgfSk7XG59XG5cbmNsYXNzIENvbmZpcm1Nb2RhbCBleHRlbmRzIE1vZGFsIHtcbiAgcHJpdmF0ZSBvcHRpb25zOiBSZXF1aXJlZDxDb25maXJtT3B0aW9ucz47XG4gIHByaXZhdGUgaXNDb25maXJtZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgY29uc3RydWN0b3Iob3B0aW9uczogQ29uZmlybU9wdGlvbnMsIHByaXZhdGUgcmVzb2x2ZTogKHZhbHVlOiBib29sZWFuKSA9PiB2b2lkKSB7XG4gICAgc3VwZXIob3B0aW9ucy5hcHApO1xuICAgIGNvbnN0IERFRkFVTFRfT1BUSU9OUzogUmVxdWlyZWQ8Q29uZmlybU9wdGlvbnM+ID0ge1xuICAgICAgYXBwOiBvcHRpb25zLmFwcCxcbiAgICAgIHRpdGxlOiAnJyxcbiAgICAgIG1lc3NhZ2U6ICcnLFxuICAgICAgb2tCdXR0b25UZXh0OiAnT0snLFxuICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ0NhbmNlbCcsXG4gICAgICBva0J1dHRvblN0eWxlczoge1xuICAgICAgICBtYXJnaW5Ub3A6ICcyMHB4JyxcbiAgICAgICAgbWFyZ2luUmlnaHQ6ICcxMHB4J1xuICAgICAgfSxcbiAgICAgIGNhbmNlbEJ1dHRvblN0eWxlczoge31cbiAgICB9O1xuICAgIHRoaXMub3B0aW9ucyA9IHsgLi4uREVGQVVMVF9PUFRJT05TLCAuLi5vcHRpb25zIH07XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25PcGVuKCk6IHZvaWQge1xuICAgIHRoaXMudGl0bGVFbC5zZXRUZXh0KHRoaXMub3B0aW9ucy50aXRsZSk7XG4gICAgY29uc3QgcGFyYWdyYXBoID0gdGhpcy5jb250ZW50RWwuY3JlYXRlRWwoJ3AnKTtcbiAgICBwYXJhZ3JhcGguc2V0VGV4dCh0aGlzLm9wdGlvbnMubWVzc2FnZSk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSBuZXcgQnV0dG9uQ29tcG9uZW50KHRoaXMuY29udGVudEVsKTtcbiAgICBva0J1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub3B0aW9ucy5va0J1dHRvblRleHQpO1xuICAgIG9rQnV0dG9uLnNldEN0YSgpO1xuICAgIG9rQnV0dG9uLm9uQ2xpY2soKCkgPT4ge1xuICAgICAgdGhpcy5pc0NvbmZpcm1lZCA9IHRydWU7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfSk7XG4gICAgT2JqZWN0LmFzc2lnbihva0J1dHRvbi5idXR0b25FbC5zdHlsZSwgdGhpcy5vcHRpb25zLm9rQnV0dG9uU3R5bGVzKTtcblxuICAgIGNvbnN0IGNhbmNlbEJ1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIGNhbmNlbEJ1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub3B0aW9ucy5jYW5jZWxCdXR0b25UZXh0KTtcbiAgICBjYW5jZWxCdXR0b24ub25DbGljayh0aGlzLmNsb3NlLmJpbmQodGhpcykpO1xuICAgIE9iamVjdC5hc3NpZ24ob2tCdXR0b24uYnV0dG9uRWwuc3R5bGUsIHRoaXMub3B0aW9ucy5va0J1dHRvblN0eWxlcyk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25DbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLnJlc29sdmUodGhpcy5pc0NvbmZpcm1lZCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUUEsc0JBR087QUFnRFAsZUFBc0IsUUFBUSxTQUEyQztBQUN2RSxTQUFPLElBQUksUUFBaUIsQ0FBQyxZQUFZO0FBQ3ZDLFVBQU0sUUFBUSxJQUFJLGFBQWEsU0FBUyxPQUFPO0FBQy9DLFVBQU0sS0FBSztBQUFBLEVBQ2IsQ0FBQztBQUNIO0FBRUEsTUFBTSxxQkFBcUIsc0JBQU07QUFBQSxFQUl4QixZQUFZLFNBQWlDLFNBQW1DO0FBQ3JGLFVBQU0sUUFBUSxHQUFHO0FBRGlDO0FBRWxELFVBQU0sa0JBQTRDO0FBQUEsTUFDaEQsS0FBSyxRQUFRO0FBQUEsTUFDYixPQUFPO0FBQUEsTUFDUCxTQUFTO0FBQUEsTUFDVCxjQUFjO0FBQUEsTUFDZCxrQkFBa0I7QUFBQSxNQUNsQixnQkFBZ0I7QUFBQSxRQUNkLFdBQVc7QUFBQSxRQUNYLGFBQWE7QUFBQSxNQUNmO0FBQUEsTUFDQSxvQkFBb0IsQ0FBQztBQUFBLElBQ3ZCO0FBQ0EsU0FBSyxVQUFVLEVBQUUsR0FBRyxpQkFBaUIsR0FBRyxRQUFRO0FBQUEsRUFDbEQ7QUFBQSxFQWxCUTtBQUFBLEVBQ0EsY0FBYztBQUFBLEVBbUJOLFNBQWU7QUFDN0IsU0FBSyxRQUFRLFFBQVEsS0FBSyxRQUFRLEtBQUs7QUFDdkMsVUFBTSxZQUFZLEtBQUssVUFBVSxTQUFTLEdBQUc7QUFDN0MsY0FBVSxRQUFRLEtBQUssUUFBUSxPQUFPO0FBQ3RDLFVBQU0sV0FBVyxJQUFJLGdDQUFnQixLQUFLLFNBQVM7QUFDbkQsYUFBUyxjQUFjLEtBQUssUUFBUSxZQUFZO0FBQ2hELGFBQVMsT0FBTztBQUNoQixhQUFTLFFBQVEsTUFBTTtBQUNyQixXQUFLLGNBQWM7QUFDbkIsV0FBSyxNQUFNO0FBQUEsSUFDYixDQUFDO0FBQ0QsV0FBTyxPQUFPLFNBQVMsU0FBUyxPQUFPLEtBQUssUUFBUSxjQUFjO0FBRWxFLFVBQU0sZUFBZSxJQUFJLGdDQUFnQixLQUFLLFNBQVM7QUFDdkQsaUJBQWEsY0FBYyxLQUFLLFFBQVEsZ0JBQWdCO0FBQ3hELGlCQUFhLFFBQVEsS0FBSyxNQUFNLEtBQUssSUFBSSxDQUFDO0FBQzFDLFdBQU8sT0FBTyxTQUFTLFNBQVMsT0FBTyxLQUFLLFFBQVEsY0FBYztBQUFBLEVBQ3BFO0FBQUEsRUFFZ0IsVUFBZ0I7QUFDOUIsU0FBSyxRQUFRLEtBQUssV0FBVztBQUFBLEVBQy9CO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -29,21 +29,6 @@ __export(Prompt_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(Prompt_exports);
31
31
  var import_obsidian = require('obsidian');
32
- var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
33
- if (typeof require !== "undefined" && typeof module !== "undefined") {
34
- const url = require('node:url');
35
- return url.pathToFileURL(__filename).href;
36
- }
37
- if (typeof window !== "undefined") {
38
- return window.location.href;
39
- }
40
- return __import_meta_url;
41
- })();
42
- var __process = globalThis["process"] ?? {
43
- "cwd": () => "/",
44
- "env": {},
45
- "platform": "android"
46
- };
47
32
  async function prompt(options) {
48
33
  return new Promise((resolve) => {
49
34
  const modal = new PromptModal(options, resolve);
@@ -124,4 +109,4 @@ class PromptModal extends import_obsidian.Modal {
124
109
  0 && (module.exports = {
125
110
  prompt
126
111
  });
127
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFsL1Byb21wdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsidmFyIF9faW1wb3J0X21ldGFfdXJsID0gZ2xvYmFsVGhpc1snaW1wb3J0Lm1ldGEudXJsJ10gPz8gKCgpPT57aWYodHlwZW9mIHJlcXVpcmUhPT1cInVuZGVmaW5lZFwiJiZ0eXBlb2YgbW9kdWxlIT09XCJ1bmRlZmluZWRcIil7Y29uc3QgdXJsPXJlcXVpcmUoXCJub2RlOnVybFwiKTtyZXR1cm4gdXJsLnBhdGhUb0ZpbGVVUkwoX19maWxlbmFtZSkuaHJlZn1pZih0eXBlb2Ygd2luZG93IT09XCJ1bmRlZmluZWRcIil7cmV0dXJuIHdpbmRvdy5sb2NhdGlvbi5ocmVmfXJldHVybiBpbXBvcnQubWV0YS51cmx9KSgpO1xudmFyIF9fcHJvY2VzcyA9IGdsb2JhbFRoaXNbJ3Byb2Nlc3MnXSA/PyB7XG4gIFwiY3dkXCI6ICgpPT5cIi9cIixcbiAgXCJlbnZcIjoge30sXG4gIFwicGxhdGZvcm1cIjogXCJhbmRyb2lkXCJcbn07XG4vKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBQcm9tcHRcbiAqIFV0aWxpdHkgZm9yIGRpc3BsYXlpbmcgYSBwcm9tcHQgbW9kYWwgaW4gT2JzaWRpYW4uXG4gKlxuICogVGhpcyBtb2R1bGUgZXhwb3J0cyBhIGZ1bmN0aW9uIHRvIGRpc3BsYXkgYSBtb2RhbCB0aGF0IHByb21wdHMgdGhlIHVzZXIgZm9yIGlucHV0LiBUaGUgbW9kYWwgaW5jbHVkZXMgXCJPS1wiIGFuZCBcIkNhbmNlbFwiIGJ1dHRvbnMuXG4gKi9cblxuaW1wb3J0IHtcbiAgQXBwLFxuICBCdXR0b25Db21wb25lbnQsXG4gIE1vZGFsLFxuICBUZXh0Q29tcG9uZW50XG59IGZyb20gJ29ic2lkaWFuJztcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyBmb3IgdGhlIHByb21wdCBtb2RhbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9tcHRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIHRpdGxlIG9mIHRoZSBtb2RhbC5cbiAgICovXG4gIHRpdGxlPzogc3RyaW5nIHwgRG9jdW1lbnRGcmFnbWVudDtcblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgdmFsdWUgdG8gcHJlLWZpbGwgdGhlIGlucHV0IGZpZWxkLlxuICAgKi9cbiAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGZ1bmN0aW9uIHRvIHZhbGlkYXRlIHRoZSBpbnB1dCB2YWx1ZS5cbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGlucHV0IHZhbHVlIHRvIHZhbGlkYXRlLlxuICAgKiBAcmV0dXJucyBhbiBlcnJvciBtZXNzYWdlIGlmIHRoZSB2YWx1ZSBpcyBpbnZhbGlkLCBvciBudWxsIGlmIHRoZSB2YWx1ZSBpcyB2YWxpZC5cbiAgICovXG4gIHZhbHVlVmFsaWRhdG9yPzogKHZhbHVlOiBzdHJpbmcpID0+IHN0cmluZyB8IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZXh0IGZvciB0aGUgXCJPS1wiIGJ1dHRvbi5cbiAgICovXG4gIG9rQnV0dG9uVGV4dD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRleHQgZm9yIHRoZSBcIkNhbmNlbFwiIGJ1dHRvbi5cbiAgICovXG4gIGNhbmNlbEJ1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdHlsZXMgdG8gYXBwbHkgdG8gdGhlIGlucHV0IGZpZWxkLlxuICAgKi9cbiAgdGV4dEJveFN0eWxlcz86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG5cbiAgLyoqXG4gICAqIFRoZSBzdHlsZXMgdG8gYXBwbHkgdG8gdGhlIFwiT0tcIiBidXR0b24uXG4gICAqL1xuICBva0J1dHRvblN0eWxlcz86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG5cbiAgLyoqXG4gICAqIFRoZSBzdHlsZXMgdG8gYXBwbHkgdG8gdGhlIFwiQ2FuY2VsXCIgYnV0dG9uLlxuICAgKi9cbiAgY2FuY2VsQnV0dG9uU3R5bGVzPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjtcblxuICAvKipcbiAgICogVGhlIHBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dCBmaWVsZC5cbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIERpc3BsYXlzIGEgcHJvbXB0IG1vZGFsIGluIE9ic2lkaWFuIHRvIGdldCB1c2VyIGlucHV0LlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSBwcm9tcHQgbW9kYWwuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aXRoIHRoZSB1c2VyIGlucHV0IG9yIG51bGwgaWYgdGhlIHByb21wdCB3YXMgY2FuY2VsbGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJvbXB0KG9wdGlvbnM6IFByb21wdE9wdGlvbnMpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPHN0cmluZyB8IG51bGw+KChyZXNvbHZlKSA9PiB7XG4gICAgY29uc3QgbW9kYWwgPSBuZXcgUHJvbXB0TW9kYWwob3B0aW9ucywgcmVzb2x2ZSk7XG4gICAgbW9kYWwub3BlbigpO1xuICB9KTtcbn1cblxuY2xhc3MgUHJvbXB0TW9kYWwgZXh0ZW5kcyBNb2RhbCB7XG4gIHByaXZhdGUgdmFsdWU6IHN0cmluZztcbiAgcHJpdmF0ZSBpc09rQ2xpY2tlZCA9IGZhbHNlO1xuICBwcml2YXRlIG9wdGlvbnM6IFJlcXVpcmVkPFByb21wdE9wdGlvbnM+O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBQcm9tcHRPcHRpb25zLCBwcml2YXRlIHJlc29sdmU6ICh2YWx1ZTogc3RyaW5nIHwgbnVsbCkgPT4gdm9pZCkge1xuICAgIHN1cGVyKG9wdGlvbnMuYXBwKTtcbiAgICBjb25zdCBERUZBVUxUX09QVElPTlM6IFJlcXVpcmVkPFByb21wdE9wdGlvbnM+ID0ge1xuICAgICAgYXBwOiBvcHRpb25zLmFwcCxcbiAgICAgIHRpdGxlOiAnJyxcbiAgICAgIGRlZmF1bHRWYWx1ZTogJycsXG4gICAgICB2YWx1ZVZhbGlkYXRvcjogKCkgPT4gbnVsbCxcbiAgICAgIG9rQnV0dG9uVGV4dDogJ09LJyxcbiAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICdDYW5jZWwnLFxuICAgICAgdGV4dEJveFN0eWxlczoge1xuICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICB9LFxuICAgICAgb2tCdXR0b25TdHlsZXM6IHtcbiAgICAgICAgbWFyZ2luVG9wOiAnMjBweCcsXG4gICAgICAgIG1hcmdpblJpZ2h0OiAnMTBweCdcbiAgICAgIH0sXG4gICAgICBjYW5jZWxCdXR0b25TdHlsZXM6IHt9LFxuICAgICAgcGxhY2Vob2xkZXI6ICcnXG4gICAgfTtcbiAgICB0aGlzLm9wdGlvbnMgPSB7IC4uLkRFRkFVTFRfT1BUSU9OUywgLi4ub3B0aW9ucyB9O1xuICAgIHRoaXMudmFsdWUgPSBvcHRpb25zLmRlZmF1bHRWYWx1ZSA/PyAnJztcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbk9wZW4oKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZUVsLnNldFRleHQodGhpcy5vcHRpb25zLnRpdGxlKTtcbiAgICBjb25zdCB0ZXh0Q29tcG9uZW50ID0gbmV3IFRleHRDb21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIHRleHRDb21wb25lbnQuc2V0VmFsdWUodGhpcy52YWx1ZSk7XG4gICAgdGV4dENvbXBvbmVudC5zZXRQbGFjZWhvbGRlcih0aGlzLm9wdGlvbnMucGxhY2Vob2xkZXIpO1xuICAgIE9iamVjdC5hc3NpZ24odGV4dENvbXBvbmVudC5pbnB1dEVsLnN0eWxlLCB0aGlzLm9wdGlvbnMudGV4dEJveFN0eWxlcyk7XG4gICAgdGV4dENvbXBvbmVudC5vbkNoYW5nZSgobmV3VmFsdWUpID0+IHRoaXMudmFsdWUgPSBuZXdWYWx1ZSk7XG4gICAgdGV4dENvbXBvbmVudC5pbnB1dEVsLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgdGhpcy5oYW5kbGVPayhldmVudCwgdGV4dENvbXBvbmVudCk7XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRleHRDb21wb25lbnQuaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdpbnB1dCcsICgpID0+IHtcbiAgICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IHRoaXMub3B0aW9ucy52YWx1ZVZhbGlkYXRvcih0ZXh0Q29tcG9uZW50LmlucHV0RWwudmFsdWUpO1xuICAgICAgdGV4dENvbXBvbmVudC5pbnB1dEVsLnNldEN1c3RvbVZhbGlkaXR5KGVycm9yTWVzc2FnZSA/PyAnJyk7XG4gICAgICB0ZXh0Q29tcG9uZW50LmlucHV0RWwucmVwb3J0VmFsaWRpdHkoKTtcbiAgICB9KTtcbiAgICBjb25zdCBva0J1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIG9rQnV0dG9uLnNldEJ1dHRvblRleHQodGhpcy5vcHRpb25zLm9rQnV0dG9uVGV4dCk7XG4gICAgb2tCdXR0b24uc2V0Q3RhKCk7XG4gICAgb2tCdXR0b24ub25DbGljaygoZXZlbnQpID0+IHtcbiAgICAgIHRoaXMuaGFuZGxlT2soZXZlbnQsIHRleHRDb21wb25lbnQpO1xuICAgIH0pO1xuICAgIE9iamVjdC5hc3NpZ24ob2tCdXR0b24uYnV0dG9uRWwuc3R5bGUsIHRoaXMub3B0aW9ucy5va0J1dHRvblN0eWxlcyk7XG4gICAgY29uc3QgY2FuY2VsQnV0dG9uID0gbmV3IEJ1dHRvbkNvbXBvbmVudCh0aGlzLmNvbnRlbnRFbCk7XG4gICAgY2FuY2VsQnV0dG9uLnNldEJ1dHRvblRleHQodGhpcy5vcHRpb25zLmNhbmNlbEJ1dHRvblRleHQpO1xuICAgIGNhbmNlbEJ1dHRvbi5vbkNsaWNrKHRoaXMuY2xvc2UuYmluZCh0aGlzKSk7XG4gICAgT2JqZWN0LmFzc2lnbihjYW5jZWxCdXR0b24uYnV0dG9uRWwuc3R5bGUsIHRoaXMub3B0aW9ucy5jYW5jZWxCdXR0b25TdHlsZXMpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5yZXNvbHZlKHRoaXMuaXNPa0NsaWNrZWQgPyB0aGlzLnZhbHVlIDogbnVsbCk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZU9rKGV2ZW50OiBFdmVudCwgdGV4dENvbXBvbmVudDogVGV4dENvbXBvbmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKCF0ZXh0Q29tcG9uZW50LmlucHV0RWwuY2hlY2tWYWxpZGl0eSgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pc09rQ2xpY2tlZCA9IHRydWU7XG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWFBLHNCQUtPO0FBbEJQLElBQUksb0JBQW9CLFdBQVcsaUJBQWlCLE1BQU0sTUFBSTtBQUFDLE1BQUcsT0FBTyxZQUFVLGVBQWEsT0FBTyxXQUFTLGFBQVk7QUFBQyxVQUFNLE1BQUksUUFBUSxVQUFVO0FBQUUsV0FBTyxJQUFJLGNBQWMsVUFBVSxFQUFFO0FBQUEsRUFBSTtBQUFDLE1BQUcsT0FBTyxXQUFTLGFBQVk7QUFBQyxXQUFPLE9BQU8sU0FBUztBQUFBLEVBQUk7QUFBQyxTQUFPO0FBQWUsR0FBRztBQUMxUixJQUFJLFlBQVksV0FBVyxTQUFT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
112
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFsL1Byb21wdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gUHJvbXB0XG4gKiBVdGlsaXR5IGZvciBkaXNwbGF5aW5nIGEgcHJvbXB0IG1vZGFsIGluIE9ic2lkaWFuLlxuICpcbiAqIFRoaXMgbW9kdWxlIGV4cG9ydHMgYSBmdW5jdGlvbiB0byBkaXNwbGF5IGEgbW9kYWwgdGhhdCBwcm9tcHRzIHRoZSB1c2VyIGZvciBpbnB1dC4gVGhlIG1vZGFsIGluY2x1ZGVzIFwiT0tcIiBhbmQgXCJDYW5jZWxcIiBidXR0b25zLlxuICovXG5cbmltcG9ydCB7XG4gIEFwcCxcbiAgQnV0dG9uQ29tcG9uZW50LFxuICBNb2RhbCxcbiAgVGV4dENvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbi8qKlxuICogVGhlIG9wdGlvbnMgZm9yIHRoZSBwcm9tcHQgbW9kYWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvbXB0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICAgKi9cbiAgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIFRoZSB0aXRsZSBvZiB0aGUgbW9kYWwuXG4gICAqL1xuICB0aXRsZT86IHN0cmluZyB8IERvY3VtZW50RnJhZ21lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IHZhbHVlIHRvIHByZS1maWxsIHRoZSBpbnB1dCBmaWVsZC5cbiAgICovXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBmdW5jdGlvbiB0byB2YWxpZGF0ZSB0aGUgaW5wdXQgdmFsdWUuXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBpbnB1dCB2YWx1ZSB0byB2YWxpZGF0ZS5cbiAgICogQHJldHVybnMgYW4gZXJyb3IgbWVzc2FnZSBpZiB0aGUgdmFsdWUgaXMgaW52YWxpZCwgb3IgbnVsbCBpZiB0aGUgdmFsdWUgaXMgdmFsaWQuXG4gICAqL1xuICB2YWx1ZVZhbGlkYXRvcj86ICh2YWx1ZTogc3RyaW5nKSA9PiBzdHJpbmcgfCBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgdGV4dCBmb3IgdGhlIFwiT0tcIiBidXR0b24uXG4gICAqL1xuICBva0J1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZXh0IGZvciB0aGUgXCJDYW5jZWxcIiBidXR0b24uXG4gICAqL1xuICBjYW5jZWxCdXR0b25UZXh0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3R5bGVzIHRvIGFwcGx5IHRvIHRoZSBpbnB1dCBmaWVsZC5cbiAgICovXG4gIHRleHRCb3hTdHlsZXM/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xuXG4gIC8qKlxuICAgKiBUaGUgc3R5bGVzIHRvIGFwcGx5IHRvIHRoZSBcIk9LXCIgYnV0dG9uLlxuICAgKi9cbiAgb2tCdXR0b25TdHlsZXM/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xuXG4gIC8qKlxuICAgKiBUaGUgc3R5bGVzIHRvIGFwcGx5IHRvIHRoZSBcIkNhbmNlbFwiIGJ1dHRvbi5cbiAgICovXG4gIGNhbmNlbEJ1dHRvblN0eWxlcz86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBEaXNwbGF5cyBhIHByb21wdCBtb2RhbCBpbiBPYnNpZGlhbiB0byBnZXQgdXNlciBpbnB1dC5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgcHJvbXB0IG1vZGFsLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgdXNlciBpbnB1dCBvciBudWxsIGlmIHRoZSBwcm9tcHQgd2FzIGNhbmNlbGxlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByb21wdChvcHRpb25zOiBQcm9tcHRPcHRpb25zKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZTxzdHJpbmcgfCBudWxsPigocmVzb2x2ZSkgPT4ge1xuICAgIGNvbnN0IG1vZGFsID0gbmV3IFByb21wdE1vZGFsKG9wdGlvbnMsIHJlc29sdmUpO1xuICAgIG1vZGFsLm9wZW4oKTtcbiAgfSk7XG59XG5cbmNsYXNzIFByb21wdE1vZGFsIGV4dGVuZHMgTW9kYWwge1xuICBwcml2YXRlIHZhbHVlOiBzdHJpbmc7XG4gIHByaXZhdGUgaXNPa0NsaWNrZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBvcHRpb25zOiBSZXF1aXJlZDxQcm9tcHRPcHRpb25zPjtcblxuICBwdWJsaWMgY29uc3RydWN0b3Iob3B0aW9uczogUHJvbXB0T3B0aW9ucywgcHJpdmF0ZSByZXNvbHZlOiAodmFsdWU6IHN0cmluZyB8IG51bGwpID0+IHZvaWQpIHtcbiAgICBzdXBlcihvcHRpb25zLmFwcCk7XG4gICAgY29uc3QgREVGQVVMVF9PUFRJT05TOiBSZXF1aXJlZDxQcm9tcHRPcHRpb25zPiA9IHtcbiAgICAgIGFwcDogb3B0aW9ucy5hcHAsXG4gICAgICB0aXRsZTogJycsXG4gICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgdmFsdWVWYWxpZGF0b3I6ICgpID0+IG51bGwsXG4gICAgICBva0J1dHRvblRleHQ6ICdPSycsXG4gICAgICBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsJyxcbiAgICAgIHRleHRCb3hTdHlsZXM6IHtcbiAgICAgICAgd2lkdGg6ICcxMDAlJ1xuICAgICAgfSxcbiAgICAgIG9rQnV0dG9uU3R5bGVzOiB7XG4gICAgICAgIG1hcmdpblRvcDogJzIwcHgnLFxuICAgICAgICBtYXJnaW5SaWdodDogJzEwcHgnXG4gICAgICB9LFxuICAgICAgY2FuY2VsQnV0dG9uU3R5bGVzOiB7fSxcbiAgICAgIHBsYWNlaG9sZGVyOiAnJ1xuICAgIH07XG4gICAgdGhpcy5vcHRpb25zID0geyAuLi5ERUZBVUxUX09QVElPTlMsIC4uLm9wdGlvbnMgfTtcbiAgICB0aGlzLnZhbHVlID0gb3B0aW9ucy5kZWZhdWx0VmFsdWUgPz8gJyc7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25PcGVuKCk6IHZvaWQge1xuICAgIHRoaXMudGl0bGVFbC5zZXRUZXh0KHRoaXMub3B0aW9ucy50aXRsZSk7XG4gICAgY29uc3QgdGV4dENvbXBvbmVudCA9IG5ldyBUZXh0Q29tcG9uZW50KHRoaXMuY29udGVudEVsKTtcbiAgICB0ZXh0Q29tcG9uZW50LnNldFZhbHVlKHRoaXMudmFsdWUpO1xuICAgIHRleHRDb21wb25lbnQuc2V0UGxhY2Vob2xkZXIodGhpcy5vcHRpb25zLnBsYWNlaG9sZGVyKTtcbiAgICBPYmplY3QuYXNzaWduKHRleHRDb21wb25lbnQuaW5wdXRFbC5zdHlsZSwgdGhpcy5vcHRpb25zLnRleHRCb3hTdHlsZXMpO1xuICAgIHRleHRDb21wb25lbnQub25DaGFuZ2UoKG5ld1ZhbHVlKSA9PiB0aGlzLnZhbHVlID0gbmV3VmFsdWUpO1xuICAgIHRleHRDb21wb25lbnQuaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgIHRoaXMuaGFuZGxlT2soZXZlbnQsIHRleHRDb21wb25lbnQpO1xuICAgICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0ZXh0Q29tcG9uZW50LmlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCAoKSA9PiB7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSB0aGlzLm9wdGlvbnMudmFsdWVWYWxpZGF0b3IodGV4dENvbXBvbmVudC5pbnB1dEVsLnZhbHVlKTtcbiAgICAgIHRleHRDb21wb25lbnQuaW5wdXRFbC5zZXRDdXN0b21WYWxpZGl0eShlcnJvck1lc3NhZ2UgPz8gJycpO1xuICAgICAgdGV4dENvbXBvbmVudC5pbnB1dEVsLnJlcG9ydFZhbGlkaXR5KCk7XG4gICAgfSk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSBuZXcgQnV0dG9uQ29tcG9uZW50KHRoaXMuY29udGVudEVsKTtcbiAgICBva0J1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub3B0aW9ucy5va0J1dHRvblRleHQpO1xuICAgIG9rQnV0dG9uLnNldEN0YSgpO1xuICAgIG9rQnV0dG9uLm9uQ2xpY2soKGV2ZW50KSA9PiB7XG4gICAgICB0aGlzLmhhbmRsZU9rKGV2ZW50LCB0ZXh0Q29tcG9uZW50KTtcbiAgICB9KTtcbiAgICBPYmplY3QuYXNzaWduKG9rQnV0dG9uLmJ1dHRvbkVsLnN0eWxlLCB0aGlzLm9wdGlvbnMub2tCdXR0b25TdHlsZXMpO1xuICAgIGNvbnN0IGNhbmNlbEJ1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIGNhbmNlbEJ1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub3B0aW9ucy5jYW5jZWxCdXR0b25UZXh0KTtcbiAgICBjYW5jZWxCdXR0b24ub25DbGljayh0aGlzLmNsb3NlLmJpbmQodGhpcykpO1xuICAgIE9iamVjdC5hc3NpZ24oY2FuY2VsQnV0dG9uLmJ1dHRvbkVsLnN0eWxlLCB0aGlzLm9wdGlvbnMuY2FuY2VsQnV0dG9uU3R5bGVzKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMucmVzb2x2ZSh0aGlzLmlzT2tDbGlja2VkID8gdGhpcy52YWx1ZSA6IG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVPayhldmVudDogRXZlbnQsIHRleHRDb21wb25lbnQ6IFRleHRDb21wb25lbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmICghdGV4dENvbXBvbmVudC5pbnB1dEVsLmNoZWNrVmFsaWRpdHkoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaXNPa0NsaWNrZWQgPSB0cnVlO1xuICAgIHRoaXMuY2xvc2UoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQSxzQkFLTztBQWlFUCxlQUFzQixPQUFPLFNBQWdEO0FBQzNFLFNBQU8sSUFBSSxRQUF1QixDQUFDLFlBQVk7QUFDN0MsVUFBTSxRQUFRLElBQUksWUFBWSxTQUFTLE9BQU87QUFDOUMsVUFBTSxLQUFLO0FBQUEsRUFDYixDQUFDO0FBQ0g7QUFFQSxNQUFNLG9CQUFvQixzQkFBTTtBQUFBLEVBS3ZCLFlBQVksU0FBZ0MsU0FBeUM7QUFDMUYsVUFBTSxRQUFRLEdBQUc7QUFEZ0M7QUFFakQsVUFBTSxrQkFBMkM7QUFBQSxNQUMvQyxLQUFLLFFBQVE7QUFBQSxNQUNiLE9BQU87QUFBQSxNQUNQLGNBQWM7QUFBQSxNQUNkLGdCQUFnQixNQUFNO0FBQUEsTUFDdEIsY0FBYztBQUFBLE1BQ2Qsa0JBQWtCO0FBQUEsTUFDbEIsZUFBZTtBQUFBLFFBQ2IsT0FBTztBQUFBLE1BQ1Q7QUFBQSxNQUNBLGdCQUFnQjtBQUFBLFFBQ2QsV0FBVztBQUFBLFFBQ1gsYUFBYTtBQUFBLE1BQ2Y7QUFBQSxNQUNBLG9CQUFvQixDQUFDO0FBQUEsTUFDckIsYUFBYTtBQUFBLElBQ2Y7QUFDQSxTQUFLLFVBQVUsRUFBRSxHQUFHLGlCQUFpQixHQUFHLFFBQVE7QUFDaEQsU0FBSyxRQUFRLFFBQVEsZ0JBQWdCO0FBQUEsRUFDdkM7QUFBQSxFQXpCUTtBQUFBLEVBQ0EsY0FBYztBQUFBLEVBQ2Q7QUFBQSxFQXlCUSxTQUFlO0FBQzdCLFNBQUssUUFBUSxRQUFRLEtBQUssUUFBUSxLQUFLO0FBQ3ZDLFVBQU0sZ0JBQWdCLElBQUksOEJBQWMsS0FBSyxTQUFTO0FBQ3RELGtCQUFjLFNBQVMsS0FBSyxLQUFLO0FBQ2pDLGtCQUFjLGVBQWUsS0FBSyxRQUFRLFdBQVc7QUFDckQsV0FBTyxPQUFPLGNBQWMsUUFBUSxPQUFPLEtBQUssUUFBUSxhQUFhO0FBQ3JFLGtCQUFjLFNBQVMsQ0FBQyxhQUFhLEtBQUssUUFBUSxRQUFRO0FBQzFELGtCQUFjLFFBQVEsaUJBQWlCLFdBQVcsQ0FBQyxVQUF5QjtBQUMxRSxVQUFJLE1BQU0sUUFBUSxTQUFTO0FBQ3pCLGFBQUssU0FBUyxPQUFPLGFBQWE7QUFBQSxNQUNwQyxXQUFXLE1BQU0sUUFBUSxVQUFVO0FBQ2pDLGFBQUssTUFBTTtBQUFBLE1BQ2I7QUFBQSxJQUNGLENBQUM7QUFDRCxrQkFBYyxRQUFRLGlCQUFpQixTQUFTLE1BQU07QUFDcEQsWUFBTSxlQUFlLEtBQUssUUFBUSxlQUFlLGNBQWMsUUFBUSxLQUFLO0FBQzVFLG9CQUFjLFFBQVEsa0JBQWtCLGdCQUFnQixFQUFFO0FBQzFELG9CQUFjLFFBQVEsZUFBZTtBQUFBLElBQ3ZDLENBQUM7QUFDRCxVQUFNLFdBQVcsSUFBSSxnQ0FBZ0IsS0FBSyxTQUFTO0FBQ25ELGFBQVMsY0FBYyxLQUFLLFFBQVEsWUFBWTtBQUNoRCxhQUFTLE9BQU87QUFDaEIsYUFBUyxRQUFRLENBQUMsVUFBVTtBQUMxQixXQUFLLFNBQVMsT0FBTyxhQUFhO0FBQUEsSUFDcEMsQ0FBQztBQUNELFdBQU8sT0FBTyxTQUFTLFNBQVMsT0FBTyxLQUFLLFFBQVEsY0FBYztBQUNsRSxVQUFNLGVBQWUsSUFBSSxnQ0FBZ0IsS0FBSyxTQUFTO0FBQ3ZELGlCQUFhLGNBQWMsS0FBSyxRQUFRLGdCQUFnQjtBQUN4RCxpQkFBYSxRQUFRLEtBQUssTUFBTSxLQUFLLElBQUksQ0FBQztBQUMxQyxXQUFPLE9BQU8sYUFBYSxTQUFTLE9BQU8sS0FBSyxRQUFRLGtCQUFrQjtBQUFBLEVBQzVFO0FBQUEsRUFFZ0IsVUFBZ0I7QUFDOUIsU0FBSyxRQUFRLEtBQUssY0FBYyxLQUFLLFFBQVEsSUFBSTtBQUFBLEVBQ25EO0FBQUEsRUFFUSxTQUFTLE9BQWMsZUFBb0M7QUFDakUsVUFBTSxlQUFlO0FBQ3JCLFFBQUksQ0FBQyxjQUFjLFFBQVEsY0FBYyxHQUFHO0FBQzFDO0FBQUEsSUFDRjtBQUVBLFNBQUssY0FBYztBQUNuQixTQUFLLE1BQU07QUFBQSxFQUNiO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==