obsidian-dev-utils 87.0.2 → 87.0.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 (71) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/demo-vault-helper/main.js +232 -0
  3. package/dist/demo-vault-helper/manifest.json +9 -0
  4. package/dist/dev/main.js +37464 -0
  5. package/dist/dev/manifest.json +9 -0
  6. package/dist/lib/cjs/__merged.cjs +13 -1
  7. package/dist/lib/cjs/__merged.d.cts +4 -2
  8. package/dist/lib/cjs/generated-during-build.cjs +1 -1
  9. package/dist/lib/cjs/obsidian/code-block-reg-exp.cjs +138 -0
  10. package/dist/lib/cjs/obsidian/code-block-reg-exp.d.cts +33 -0
  11. package/dist/lib/cjs/obsidian/command-handlers/open-demo-vault-command-handler.cjs +13 -6
  12. package/dist/lib/cjs/obsidian/command-handlers/open-demo-vault-command-handler.d.cts +13 -5
  13. package/dist/lib/cjs/obsidian/community-plugins.cjs +25 -1
  14. package/dist/lib/cjs/obsidian/community-plugins.d.cts +28 -0
  15. package/dist/lib/cjs/obsidian/demo-vault-helper.cjs +159 -0
  16. package/dist/lib/cjs/obsidian/demo-vault-helper.d.cts +40 -0
  17. package/dist/lib/cjs/obsidian/desktop-demo-vault-opener.cjs +17 -13
  18. package/dist/lib/cjs/obsidian/desktop-demo-vault-opener.d.cts +13 -5
  19. package/dist/lib/cjs/obsidian/index.cjs +7 -1
  20. package/dist/lib/cjs/obsidian/index.d.cts +2 -0
  21. package/dist/lib/cjs/obsidian/markdown-code-block-processor.cjs +12 -10
  22. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.cjs +2 -1
  23. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.d.cts +2 -0
  24. package/dist/lib/cjs/reg-exp.cjs +11 -1
  25. package/dist/lib/cjs/reg-exp.d.cts +34 -0
  26. package/dist/lib/cjs/script-utils/demo-vault-coverage.cjs +289 -0
  27. package/dist/lib/cjs/script-utils/demo-vault-coverage.d.cts +264 -0
  28. package/dist/lib/cjs/script-utils/demo-vault.cjs +36 -3
  29. package/dist/lib/cjs/script-utils/demo-vault.d.cts +5 -5
  30. package/dist/lib/cjs/script-utils/index.cjs +4 -1
  31. package/dist/lib/cjs/script-utils/index.d.cts +1 -0
  32. package/dist/lib/cjs/script-utils/linters/eslint-config.cjs +14 -1
  33. package/dist/lib/cjs/script-utils/linters/eslint-rules/require-method-template.cjs +4 -5
  34. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.cjs +2 -1
  35. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.d.cts +2 -0
  36. package/dist/lib/cjs/script-utils/version.cjs +2 -2
  37. package/dist/lib/esm/__merged.d.mts +4 -2
  38. package/dist/lib/esm/__merged.mjs +11 -1
  39. package/dist/lib/esm/generated-during-build.mjs +1 -1
  40. package/dist/lib/esm/obsidian/code-block-reg-exp.d.mts +33 -0
  41. package/dist/lib/esm/obsidian/code-block-reg-exp.mjs +30 -0
  42. package/dist/lib/esm/obsidian/command-handlers/open-demo-vault-command-handler.d.mts +13 -5
  43. package/dist/lib/esm/obsidian/command-handlers/open-demo-vault-command-handler.mjs +13 -6
  44. package/dist/lib/esm/obsidian/community-plugins.d.mts +28 -0
  45. package/dist/lib/esm/obsidian/community-plugins.mjs +24 -1
  46. package/dist/lib/esm/obsidian/demo-vault-helper.d.mts +40 -0
  47. package/dist/lib/esm/obsidian/demo-vault-helper.mjs +56 -0
  48. package/dist/lib/esm/obsidian/desktop-demo-vault-opener.d.mts +13 -5
  49. package/dist/lib/esm/obsidian/desktop-demo-vault-opener.mjs +17 -13
  50. package/dist/lib/esm/obsidian/index.d.mts +2 -0
  51. package/dist/lib/esm/obsidian/index.mjs +5 -1
  52. package/dist/lib/esm/obsidian/markdown-code-block-processor.mjs +15 -10
  53. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.d.mts +2 -0
  54. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.mjs +2 -1
  55. package/dist/lib/esm/reg-exp.d.mts +34 -0
  56. package/dist/lib/esm/reg-exp.mjs +11 -2
  57. package/dist/lib/esm/script-utils/demo-vault-coverage.d.mts +264 -0
  58. package/dist/lib/esm/script-utils/demo-vault-coverage.mjs +190 -0
  59. package/dist/lib/esm/script-utils/demo-vault.d.mts +5 -5
  60. package/dist/lib/esm/script-utils/demo-vault.mjs +31 -5
  61. package/dist/lib/esm/script-utils/index.d.mts +1 -0
  62. package/dist/lib/esm/script-utils/index.mjs +3 -1
  63. package/dist/lib/esm/script-utils/linters/eslint-config.mjs +14 -1
  64. package/dist/lib/esm/script-utils/linters/eslint-rules/require-method-template.mjs +4 -5
  65. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.d.mts +2 -0
  66. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.mjs +2 -1
  67. package/dist/lib/esm/script-utils/version.mjs +2 -2
  68. package/obsidian/code-block-reg-exp/package.json +6 -0
  69. package/obsidian/demo-vault-helper/package.json +6 -0
  70. package/package.json +6 -5
  71. package/script-utils/demo-vault-coverage/package.json +6 -0
@@ -0,0 +1,9 @@
1
+ {
2
+ "author": "mnaoumov",
3
+ "description": "Test harness plugin that exposes obsidian-dev-utils API for integration testing.",
4
+ "id": "obsidian-dev-utils-integration-test",
5
+ "isDesktopOnly": true,
6
+ "minAppVersion": "1.11.0",
7
+ "name": "Integration Test Harness",
8
+ "version": "0.0.0"
9
+ }
@@ -296,17 +296,20 @@ __export(merged_exports, {
296
296
  blobToArrayBuffer: () => import_blob.blobToArrayBuffer,
297
297
  blobToDataUrl: () => import_blob.blobToDataUrl,
298
298
  blobToJpegArrayBuffer: () => import_blob.blobToJpegArrayBuffer,
299
+ bootstrapDemoVault: () => import_demo_vault_helper.bootstrapDemoVault,
299
300
  bypassStrictProxy: () => import_strict_proxy.bypassStrictProxy,
300
301
  castTo: () => import_object_utils.castTo,
301
302
  chain: () => import_async.chain,
302
303
  checkExtension: () => import_file_system.checkExtension,
303
304
  cloneFunction: () => import_function.cloneFunction,
304
305
  cloneWithNonEnumerableProperties: () => import_object_utils.cloneWithNonEnumerableProperties,
306
+ configureCommunityPlugin: () => import_community_plugins.configureCommunityPlugin,
305
307
  confirm: () => import_confirm.confirm,
306
308
  convertAsyncToSync: () => import_async.convertAsyncToSync,
307
309
  convertLink: () => import_link.convertLink,
308
310
  convertSyncToAsync: () => import_async.convertSyncToAsync,
309
311
  copySafe: () => import_vault.copySafe,
312
+ createCodeBlockRegExp: () => import_code_block_reg_exp.createCodeBlockRegExp,
310
313
  createDivAsync: () => import_html_element.createDivAsync,
311
314
  createElAsync: () => import_html_element.createElAsync,
312
315
  createFolderSafe: () => import_vault.createFolderSafe,
@@ -403,12 +406,14 @@ __export(merged_exports, {
403
406
  getLfNormalizedOffsetToOriginalOffsetMapper: () => import_string.getLfNormalizedOffsetToOriginalOffsetMapper,
404
407
  getLibDebugger: () => import_debug.getLibDebugger,
405
408
  getLinks: () => import_metadata_cache.getLinks,
409
+ getMandatoryNamedGroup: () => import_reg_exp.getMandatoryNamedGroup,
406
410
  getMarkdownFiles: () => import_file_system.getMarkdownFiles,
407
411
  getMarkdownFilesSorted: () => import_vault.getMarkdownFilesSorted,
408
412
  getNestedPropertyValue: () => import_object_utils.getNestedPropertyValue,
409
413
  getNewLinkFormat: () => import_obsidian_settings.getNewLinkFormat,
410
414
  getNoteFilesSorted: () => import_vault.getNoteFilesSorted,
411
415
  getObsidianDevUtilsState: () => import_obsidian_dev_utils_state.getObsidianDevUtilsState,
416
+ getOptionalNamedGroup: () => import_reg_exp.getOptionalNamedGroup,
412
417
  getOrCreateAbstractFileSafe: () => import_vault.getOrCreateAbstractFileSafe,
413
418
  getOrCreateFile: () => import_file_system.getOrCreateFile,
414
419
  getOrCreateFileSafe: () => import_vault.getOrCreateFileSafe,
@@ -663,6 +668,7 @@ var import_backlink = require('./obsidian/backlink.cjs');
663
668
  var import_bases_view_registrar = require('./obsidian/bases-view-registrar.cjs');
664
669
  var import_callout = require('./obsidian/callout.cjs');
665
670
  var import_case_insensitive_file_index = require('./obsidian/case-insensitive-file-index.cjs');
671
+ var import_code_block_reg_exp = require('./obsidian/code-block-reg-exp.cjs');
666
672
  var import_abstract_file_command_handler = require('./obsidian/command-handlers/abstract-file-command-handler.cjs');
667
673
  var import_command_handler_component = require('./obsidian/command-handlers/command-handler-component.cjs');
668
674
  var import_command_handler = require('./obsidian/command-handlers/command-handler.cjs');
@@ -699,6 +705,7 @@ var import_css_class = require('./obsidian/css-class.cjs');
699
705
  var import_data_handler = require('./obsidian/data-handler.cjs');
700
706
  var import_dataview_link = require('./obsidian/dataview-link.cjs');
701
707
  var import_dataview = require('./obsidian/dataview.cjs');
708
+ var import_demo_vault_helper = require('./obsidian/demo-vault-helper.cjs');
702
709
  var import_desktop_demo_vault_opener = require('./obsidian/desktop-demo-vault-opener.cjs');
703
710
  var import_desktop_trusted_input = require('./obsidian/desktop-trusted-input.cjs');
704
711
  var import_editor_extension_registrar = require('./obsidian/editor-extension-registrar.cjs');
@@ -977,17 +984,20 @@ var import_value_wrapper = require('./value-wrapper.cjs');
977
984
  blobToArrayBuffer,
978
985
  blobToDataUrl,
979
986
  blobToJpegArrayBuffer,
987
+ bootstrapDemoVault,
980
988
  bypassStrictProxy,
981
989
  castTo,
982
990
  chain,
983
991
  checkExtension,
984
992
  cloneFunction,
985
993
  cloneWithNonEnumerableProperties,
994
+ configureCommunityPlugin,
986
995
  confirm,
987
996
  convertAsyncToSync,
988
997
  convertLink,
989
998
  convertSyncToAsync,
990
999
  copySafe,
1000
+ createCodeBlockRegExp,
991
1001
  createDivAsync,
992
1002
  createElAsync,
993
1003
  createFolderSafe,
@@ -1084,12 +1094,14 @@ var import_value_wrapper = require('./value-wrapper.cjs');
1084
1094
  getLfNormalizedOffsetToOriginalOffsetMapper,
1085
1095
  getLibDebugger,
1086
1096
  getLinks,
1097
+ getMandatoryNamedGroup,
1087
1098
  getMarkdownFiles,
1088
1099
  getMarkdownFilesSorted,
1089
1100
  getNestedPropertyValue,
1090
1101
  getNewLinkFormat,
1091
1102
  getNoteFilesSorted,
1092
1103
  getObsidianDevUtilsState,
1104
+ getOptionalNamedGroup,
1093
1105
  getOrCreateAbstractFileSafe,
1094
1106
  getOrCreateFile,
1095
1107
  getOrCreateFileSafe,
@@ -1319,4 +1331,4 @@ var import_value_wrapper = require('./value-wrapper.cjs');
1319
1331
  waitUntilConnected,
1320
1332
  wrapForCallout
1321
1333
  });
1322
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL19fbWVyZ2VkLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKiBUSElTIElTIEEgR0VORVJBVEVEL0JVTkRMRUQgRklMRSBCWSBCVUlMRCBTQ1JJUFQgKi9cblxuZXhwb3J0IHtcbiAgYWJvcnRTaWduYWxBbnksXG4gIGFib3J0U2lnbmFsTmV2ZXIsXG4gIGFib3J0U2lnbmFsVGltZW91dCxcbiAgSU5GSU5JVEVfVElNRU9VVCxcbiAgb25BYm9ydCxcbiAgd2FpdEZvckFib3J0XG59IGZyb20gJy4vYWJvcnQtY29udHJvbGxlci50cyc7XG5leHBvcnQge1xuICBmaWx0ZXJJblBsYWNlLFxuICB1bmlxdWUsXG4gIHVuaXF1ZUluUGxhY2Vcbn0gZnJvbSAnLi9hcnJheS50cyc7XG5leHBvcnQge1xuICBBc3luY0V2ZW50UmVmRGlzcG9zYWJsZSxcbiAgQXN5bmNFdmVudHMsXG4gIEFzeW5jRXZlbnRzQmFzZSxcbiAgbWl4aW5Bc3luY0V2ZW50cyxcbiAgc3Vic2NyaWJlQXN5bmNEaXNwb3NhYmxlRXZlbnRcbn0gZnJvbSAnLi9hc3luYy1ldmVudHMudHMnO1xuZXhwb3J0IHtcbiAgYWRkRXJyb3JIYW5kbGVyLFxuICBhc3luY0ZpbHRlcixcbiAgYXN5bmNGaWx0ZXJJblBsYWNlLFxuICBhc3luY0ZsYXRNYXAsXG4gIGFzeW5jTWFwLFxuICBjaGFpbixcbiAgY29udmVydEFzeW5jVG9TeW5jLFxuICBjb252ZXJ0U3luY1RvQXN5bmMsXG4gIGRpc2FibGVBc3luY09wZXJhdGlvblRyYWNraW5nLFxuICBlbmFibGVBc3luY09wZXJhdGlvblRyYWNraW5nLFxuICBoYW5kbGVTaWxlbnRFcnJvcixcbiAgaWdub3JlRXJyb3IsXG4gIGludm9rZUFzeW5jU2FmZWx5LFxuICBpbnZva2VBc3luY1NhZmVseUFmdGVyRGVsYXksXG4gIGlzQXN5bmNPcGVyYXRpb25UcmFja2luZ0VuYWJsZWQsXG4gIG1hcmtzQXNUZXJtaW5hdGVSZXRyeSxcbiAgbmV2ZXJFbmRzLFxuICBuZXh0VGlja0FzeW5jLFxuICBub3JtYWxpemVQcm9taXNhYmxlLFxuICBwcm9taXNlQWxsQXN5bmNGbnNTZXF1ZW50aWFsbHksXG4gIHByb21pc2VBbGxTZXF1ZW50aWFsbHksXG4gIHF1ZXVlTWljcm90YXNrQXN5bmMsXG4gIHJlcXVlc3RBbmltYXRpb25GcmFtZUFzeW5jLFxuICByZXRyeVdpdGhUaW1lb3V0LFxuICBydW5XaXRoVGltZW91dCxcbiAgc2V0SW1tZWRpYXRlQXN5bmMsXG4gIHNldFRpbWVvdXRBc3luYyxcbiAgc2xlZXAsXG4gIHRpbWVvdXQsXG4gIHRvQXJyYXksXG4gIHdhaXRGb3JBbGxBc3luY09wZXJhdGlvbnNcbn0gZnJvbSAnLi9hc3luYy50cyc7XG5leHBvcnQgeyBCZWVwZXIgfSBmcm9tICcuL2JlZXBlci50cyc7XG5leHBvcnQge1xuICBibG9iVG9BcnJheUJ1ZmZlcixcbiAgYmxvYlRvRGF0YVVybCxcbiAgYmxvYlRvSnBlZ0FycmF5QnVmZmVyLFxuICBkYXRhVXJsVG9BcnJheUJ1ZmZlcixcbiAgaXNJbWFnZUZpbGVcbn0gZnJvbSAnLi9ibG9iLnRzJztcbmV4cG9ydCB7XG4gIGVuYWJsZUxpYnJhcnlEZWJ1Z2dlcnMsXG4gIGdldERlYnVnQ29udHJvbGxlcixcbiAgZ2V0RGVidWdnZXIsXG4gIGdldExpYkRlYnVnZ2VyLFxuICBwcmludFdpdGhTdGFja1RyYWNlLFxuICBzaG93SW5pdGlhbERlYnVnTWVzc2FnZVxufSBmcm9tICcuL2RlYnVnLnRzJztcbmV4cG9ydCB7XG4gIEFzeW5jQ2FsbGJhY2tEaXNwb3NhYmxlLFxuICBBc3luY0Rpc3Bvc2FibGVCYXNlLFxuICBDYWxsYmFja0Rpc3Bvc2FibGUsXG4gIENvbWJpbmVBc3luY0Rpc3Bvc2FibGUsXG4gIENvbWJpbmVEaXNwb3NhYmxlLFxuICBEaXNwb3NhYmxlQmFzZSxcbiAgRGlzcG9zZUVycm9yQmVoYXZpb3IsXG4gIERpc3Bvc2VPcmRlcixcbiAgaXNBc3luY0Rpc3Bvc2FibGUsXG4gIGlzQXN5bmNEaXNwb3NhYmxlRXgsXG4gIGlzRGlzcG9zYWJsZSxcbiAgaXNEaXNwb3NhYmxlRXgsXG4gIE11bHRpcGxlRGlzcG9zZUJlaGF2aW9yLFxuICB0b0FzeW5jRGlzcG9zYWJsZUV4LFxuICB0b0Rpc3Bvc2FibGVFeFxufSBmcm9tICcuL2Rpc3Bvc2FibGUudHMnO1xuZXhwb3J0IHtcbiAgZ2V0RW51bUtleSxcbiAgZ2V0RW51bVZhbHVlXG59IGZyb20gJy4vZW51bS50cyc7XG5leHBvcnQge1xuICBBU1lOQ19XUkFQUEVSX0VSUk9SX01FU1NBR0UsXG4gIEN1c3RvbVN0YWNrVHJhY2VFcnJvcixcbiAgZW1pdEFzeW5jRXJyb3JFdmVudCxcbiAgZXJyb3JUb1N0cmluZyxcbiAgRXJyb3JXcmFwcGVyLFxuICBnZXRTdGFja1RyYWNlLFxuICBpc0FzeW5jRXJyb3JJZ25vcmVDb250ZXh0QWN0aXZlLFxuICBwcmludEVycm9yLFxuICByZWdpc3RlckFzeW5jRXJyb3JFdmVudEhhbmRsZXIsXG4gIFNpbGVudEVycm9yLFxuICBzdGFydEFzeW5jRXJyb3JJZ25vcmVDb250ZXh0LFxuICBzdGFydENvbGxlY3RpbmdVbmhhbmRsZWRBc3luY0Vycm9ycyxcbiAgc3RvcENvbGxlY3RpbmdVbmhhbmRsZWRBc3luY0Vycm9ycyxcbiAgdGhyb3dFeHByZXNzaW9uXG59IGZyb20gJy4vZXJyb3IudHMnO1xuZXhwb3J0IHtcbiAgY2xvbmVGdW5jdGlvbixcbiAgY3JlYXRlRnVuY3Rpb24sXG4gIGdldEZ1bmN0aW9uRXhwcmVzc2lvblN0cmluZyxcbiAgbm9vcCxcbiAgbm9vcEFzeW5jLFxuICBub29wQXN5bmNTaW5nbGV0b25Qcm9taXNlLFxuICBvbWl0QXN5bmNSZXR1cm5UeXBlLFxuICBvbWl0UmV0dXJuVHlwZVxufSBmcm9tICcuL2Z1bmN0aW9uLnRzJztcbmV4cG9ydCB7XG4gIExJQlJBUllfU1RZTEVTLFxuICBMSUJSQVJZX1ZFUlNJT05cbn0gZnJvbSAnLi9nZW5lcmF0ZWQtZHVyaW5nLWJ1aWxkLnRzJztcbmV4cG9ydCB7XG4gIGNyZWF0ZURpdkFzeW5jLFxuICBjcmVhdGVFbEFzeW5jLFxuICBjcmVhdGVGcmFnbWVudEFzeW5jLFxuICBjcmVhdGVTcGFuQXN5bmMsXG4gIGNyZWF0ZVN2Z0FzeW5jLFxuICBlbnN1cmVMb2FkZWQsXG4gIGdldFpJbmRleCxcbiAgaXNFbGVtZW50VmlzaWJsZUluT2Zmc2V0UGFyZW50LFxuICBpc0xvYWRlZCxcbiAgb25BbmNlc3RvclNjcm9sbE9yUmVzaXplLFxuICB0b1B4LFxuICB3YWl0VW50aWxDb25uZWN0ZWRcbn0gZnJvbSAnLi9odG1sLWVsZW1lbnQudHMnO1xuZXhwb3J0IHtcbiAgTGlicmFyeSxcbiAgTElCUkFSWV9OQU1FXG59IGZyb20gJy4vbGlicmFyeS50cyc7XG5leHBvcnQge1xuICBhc3NpZ25XaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXMsXG4gIGNhc3RUbyxcbiAgY2xvbmVXaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXMsXG4gIGRlZXBFcXVhbCxcbiAgZGVsZXRlUHJvcGVydGllcyxcbiAgZGVsZXRlUHJvcGVydHksXG4gIGV4dHJhY3REZWZhdWx0RXhwb3J0SW50ZXJvcCxcbiAgRnVuY3Rpb25IYW5kbGluZ01vZGUsXG4gIGdldEFsbEVudHJpZXMsXG4gIGdldEFsbEtleXMsXG4gIGdldE5lc3RlZFByb3BlcnR5VmFsdWUsXG4gIGdldFByb3RvdHlwZU9mLFxuICBuYW1lb2YsXG4gIG5vcm1hbGl6ZU9wdGlvbmFsUHJvcGVydGllcyxcbiAgcmVtb3ZlVW5kZWZpbmVkUHJvcGVydGllcyxcbiAgc2V0TmVzdGVkUHJvcGVydHlWYWx1ZSxcbiAgdG9Kc29uXG59IGZyb20gJy4vb2JqZWN0LXV0aWxzLnRzJztcbmV4cG9ydCB7XG4gIGdldE9ic2lkaWFuRGV2VXRpbHNTdGF0ZSxcbiAgcmVzZXRPYnNpZGlhbkRldlV0aWxzU3RhdGVcbn0gZnJvbSAnLi9vYnNpZGlhbi1kZXYtdXRpbHMtc3RhdGUudHMnO1xuZXhwb3J0IHsgQXBwQWN0aXZlRmlsZVByb3ZpZGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9hY3RpdmUtZmlsZS1wcm92aWRlci50cyc7XG5leHBvcnQgeyBnZXRBcHAgfSBmcm9tICcuL29ic2lkaWFuL2FwcC50cyc7XG5leHBvcnQge1xuICByZXRyeVdpdGhUaW1lb3V0Tm90aWNlLFxuICBydW5XaXRoVGltZW91dE5vdGljZVxufSBmcm9tICcuL29ic2lkaWFuL2FzeW5jLXdpdGgtbm90aWNlLnRzJztcbmV4cG9ydCB7XG4gIEF0dGFjaG1lbnRQYXRoQ29udGV4dCxcbiAgRFVNTVlfUEFUSCxcbiAgZ2V0QXR0YWNobWVudEZpbGVQYXRoLFxuICBnZXRBdHRhY2htZW50Rm9sZGVyUGF0aCxcbiAgZ2V0QXZhaWxhYmxlUGF0aEZvckF0dGFjaG1lbnRzLFxuICBoYXNPd25BdHRhY2htZW50Rm9sZGVyXG59IGZyb20gJy4vb2JzaWRpYW4vYXR0YWNobWVudC1wYXRoLnRzJztcbmV4cG9ydCB7XG4gIHJlbmRlckJhY2tsaW5rc1RhYmxlLFxuICByZW5kZXJEZWxheWVkQmFja2xpbmtzLFxuICByZW5kZXJEZWxheWVkQmFja2xpbmtzRm9yRm9sZGVyXG59IGZyb20gJy4vb2JzaWRpYW4vYmFja2xpbmsudHMnO1xuZXhwb3J0IHsgUGx1Z2luQmFzZXNWaWV3UmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9iYXNlcy12aWV3LXJlZ2lzdHJhci50cyc7XG5leHBvcnQge1xuICBDYWxsb3V0TW9kZSxcbiAgcmVuZGVyQ2FsbG91dCxcbiAgd3JhcEZvckNhbGxvdXRcbn0gZnJvbSAnLi9vYnNpZGlhbi9jYWxsb3V0LnRzJztcbmV4cG9ydCB7XG4gIENhc2VJbnNlbnNpdGl2ZUZpbGVJbmRleCxcbiAgZ2V0Q2FzZUluc2Vuc2l0aXZlRmlsZUluZGV4LFxuICBzZXRDYXNlSW5zZW5zaXRpdmVGaWxlSW5kZXgsXG4gIHVuc2V0Q2FzZUluc2Vuc2l0aXZlRmlsZUluZGV4XG59IGZyb20gJy4vb2JzaWRpYW4vY2FzZS1pbnNlbnNpdGl2ZS1maWxlLWluZGV4LnRzJztcbmV4cG9ydCB7IEFic3RyYWN0RmlsZUNvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2Fic3RyYWN0LWZpbGUtY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCB7IENvbW1hbmRIYW5kbGVyQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2NvbW1hbmQtaGFuZGxlci1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgQ29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29ic2lkaWFuL2NvbW1hbmQtaGFuZGxlcnMvY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCB7IEVkaXRvckNvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2VkaXRvci1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0IHsgRmlsZUNvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2ZpbGUtY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCB7IEZvbGRlckNvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2ZvbGRlci1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0IHsgR2xvYmFsQ29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29ic2lkaWFuL2NvbW1hbmQtaGFuZGxlcnMvZ2xvYmFsLWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgeyBPcGVuRGVtb1ZhdWx0Q29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29ic2lkaWFuL2NvbW1hbmQtaGFuZGxlcnMvb3Blbi1kZW1vLXZhdWx0LWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgeyBPcGVuU2V0dGluZ3NDb21tYW5kSGFuZGxlciB9IGZyb20gJy4vb2JzaWRpYW4vY29tbWFuZC1oYW5kbGVycy9vcGVuLXNldHRpbmdzLWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgeyBVbmxvY2tBY3RpdmVOb3RlQ29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29ic2lkaWFuL2NvbW1hbmQtaGFuZGxlcnMvdW5sb2NrLWFjdGl2ZS1ub3RlLWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgeyBQbHVnaW5Db21tYW5kUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLXJlZ2lzdHJhci50cyc7XG5leHBvcnQge1xuICBkaXNhYmxlQ29tbXVuaXR5UGx1Z2luLFxuICBlbmFibGVDb21tdW5pdHlQbHVnaW4sXG4gIGdldENvbW11bml0eVBsdWdpblJlcG8sXG4gIGdldExhdGVzdFJlbGVhc2VWZXJzaW9uLFxuICBpbnN0YWxsQ29tbXVuaXR5UGx1Z2luLFxuICBzZWFyY2hDb21tdW5pdHlQbHVnaW5zLFxuICB0b2dnbGVFbmFibGVDb21tdW5pdHlQbHVnaW4sXG4gIHRvZ2dsZUluc3RhbGxDb21tdW5pdHlQbHVnaW4sXG4gIHVuaW5zdGFsbENvbW11bml0eVBsdWdpblxufSBmcm9tICcuL29ic2lkaWFuL2NvbW11bml0eS1wbHVnaW5zLnRzJztcbmV4cG9ydCB7IEFib3J0U2lnbmFsQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL2Fib3J0LXNpZ25hbC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgQWxsV2luZG93c0V2ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL2FsbC13aW5kb3dzLWV2ZW50LWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBBc3luY0Vycm9ySGFuZGxlckNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9hc3luYy1lcnJvci1oYW5kbGVyLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyByZWdpc3RlckFzeW5jRXZlbnQgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvYXN5bmMtZXZlbnRzLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBDYXNlSW5zZW5zaXRpdmVGaWxlSW5kZXhDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvY2FzZS1pbnNlbnNpdGl2ZS1maWxlLWluZGV4LWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBDb21wb25lbnRFeCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9jb21wb25lbnQtZXgudHMnO1xuZXhwb3J0IHsgQ29uc29sZURlYnVnQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL2NvbnNvbGUtZGVidWctY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IGFzRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBFbWJlZEV4dGVuc2lvbnNDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvZW1iZWQtZXh0ZW5zaW9ucy1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgR2VuZXJhdGVNYXJrZG93bkxpbmtEZWZhdWx0UGFyYW1zQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL2dlbmVyYXRlLW1hcmtkb3duLWxpbmstZGVmYXVsdC1wYXJhbXMtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7XG4gIENhbGxiYWNrTGF5b3V0UmVhZHlDb21wb25lbnQsXG4gIExheW91dFJlYWR5Q29tcG9uZW50XG59IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9sYXlvdXQtcmVhZHktY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IE1lbnVFdmVudFJlZ2lzdHJhckNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9tZW51LWV2ZW50LXJlZ2lzdHJhci1jb21wb25lbnQudHMnO1xuZXhwb3J0IHtcbiAgYXJvdW5kLFxuICBoYXNQYXRjaFRva2VuLFxuICBNb25rZXlBcm91bmRDb21wb25lbnRcbn0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL21vbmtleS1hcm91bmQtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFBsdWdpbkNvbnRleHRDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvcGx1Z2luLWNvbnRleHQtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFBsdWdpbk5vdGljZUNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9wbHVnaW4tbm90aWNlLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBQbHVnaW5TZXR0aW5nc0NvbXBvbmVudEJhc2UgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvcGx1Z2luLXNldHRpbmdzLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBQbHVnaW5TZXR0aW5nc1RhYkNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9wbHVnaW4tc2V0dGluZ3MtdGFiLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBSZWdpc3RyeUNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9yZWdpc3RyeS1jb21wb25lbnQudHMnO1xuZXhwb3J0IHtcbiAgRW1wdHlGb2xkZXJCZWhhdmlvcixcbiAgUmVuYW1lRGVsZXRlSGFuZGxlckNvbXBvbmVudFxufSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvcmVuYW1lLWRlbGV0ZS1oYW5kbGVyLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBnZXREb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yIH0gZnJvbSAnLi9vYnNpZGlhbi9jb25zdHJ1Y3RvcnMvZ2V0LWRvbS1ldmVudHMtaGFuZGxlcnMtY29uc3RydWN0b3IudHMnO1xuZXhwb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuL29ic2lkaWFuL2Nzcy1jbGFzcy50cyc7XG5leHBvcnQgeyBQbHVnaW5EYXRhSGFuZGxlciB9IGZyb20gJy4vb2JzaWRpYW4vZGF0YS1oYW5kbGVyLnRzJztcbmV4cG9ydCB7XG4gIGZpeFRpdGxlLFxuICBtYWtlTGlua1dpdGhQYXRoXG59IGZyb20gJy4vb2JzaWRpYW4vZGF0YXZpZXctbGluay50cyc7XG5leHBvcnQge1xuICBnZXRSZW5kZXJlZENvbnRhaW5lcixcbiAgaW5zZXJ0Q29kZUJsb2NrLFxuICByZWxvYWRDdXJyZW50RmlsZUNhY2hlLFxuICByZW5kZXJJZnJhbWUsXG4gIHJlbmRlclBhZ2luYXRlZExpc3QsXG4gIHJlbmRlclBhZ2luYXRlZFRhYmxlXG59IGZyb20gJy4vb2JzaWRpYW4vZGF0YXZpZXcudHMnO1xuZXhwb3J0IHsgb3BlbkRlbW9WYXVsdCB9IGZyb20gJy4vb2JzaWRpYW4vZGVza3RvcC1kZW1vLXZhdWx0LW9wZW5lci50cyc7XG5leHBvcnQge1xuICBob3ZlckVsZW1lbnQsXG4gIG1vdmVNb3VzZSxcbiAgcHJlc3NLZXksXG4gIHR5cGVJbnRvRWRpdG9yLFxuICB1bmhvdmVyRWxlbWVudFxufSBmcm9tICcuL29ic2lkaWFuL2Rlc2t0b3AtdHJ1c3RlZC1pbnB1dC50cyc7XG5leHBvcnQgeyBQbHVnaW5FZGl0b3JFeHRlbnNpb25SZWdpc3RyYXIgfSBmcm9tICcuL29ic2lkaWFuL2VkaXRvci1leHRlbnNpb24tcmVnaXN0cmFyLnRzJztcbmV4cG9ydCB7IFBsdWdpbkVkaXRvclN1Z2dlc3RSZWdpc3RyYXIgfSBmcm9tICcuL29ic2lkaWFuL2VkaXRvci1zdWdnZXN0LXJlZ2lzdHJhci50cyc7XG5leHBvcnQge1xuICBzeW5jT3BlbkVkaXRvckJ1ZmZlcnNGb3JQYXRoLFxuICB0b2dnbGVFZGl0b3JSZWFkT25seVxufSBmcm9tICcuL29ic2lkaWFuL2VkaXRvci50cyc7XG5leHBvcnQge1xuICBFdmVudFJlZkRpc3Bvc2FibGUsXG4gIHN1YnNjcmliZURpc3Bvc2FibGVFdmVudCxcbiAgc3Vic2NyaWJlRXZlbnRcbn0gZnJvbSAnLi9vYnNpZGlhbi9ldmVudHMudHMnO1xuZXhwb3J0IHsgUGx1Z2luRXh0ZW5zaW9uc1JlZ2lzdHJhciB9IGZyb20gJy4vb2JzaWRpYW4vZXh0ZW5zaW9ucy1yZWdpc3RyYXIudHMnO1xuZXhwb3J0IHtcbiAgYXBwbHlDb250ZW50Q2hhbmdlcyxcbiAgYXBwbHlGaWxlQ2hhbmdlcyxcbiAgaXNDYW52YXNDaGFuZ2UsXG4gIGlzQ2FudmFzRmlsZU5vZGVDaGFuZ2UsXG4gIGlzQ2FudmFzVGV4dE5vZGVDaGFuZ2UsXG4gIGlzQ29udGVudENoYW5nZSxcbiAgaXNGcm9udG1hdHRlckNoYW5nZSxcbiAgaXNGcm9udG1hdHRlckNoYW5nZVdpdGhPZmZzZXRzLFxuICB0b0Zyb250bWF0dGVyQ2hhbmdlV2l0aE9mZnNldHNcbn0gZnJvbSAnLi9vYnNpZGlhbi9maWxlLWNoYW5nZS50cyc7XG5leHBvcnQge1xuICBhZGRBbGlhcyxcbiAgZGVsZXRlQWxpYXMsXG4gIHByb2Nlc3NGcm9udG1hdHRlclxufSBmcm9tICcuL29ic2lkaWFuL2ZpbGUtbWFuYWdlci50cyc7XG5leHBvcnQge1xuICBhc0FycmF5T2ZGaWxlcyxcbiAgYXNBcnJheU9mRm9sZGVycyxcbiAgYXNGaWxlLFxuICBhc0ZpbGVPck51bGwsXG4gIGFzRm9sZGVyLFxuICBhc0ZvbGRlck9yTnVsbCxcbiAgQkFTRV9GSUxFX0VYVEVOU0lPTixcbiAgQ0FOVkFTX0ZJTEVfRVhURU5TSU9OLFxuICBjaGVja0V4dGVuc2lvbixcbiAgZXhpc3RzLFxuICBGaWxlU3lzdGVtVHlwZSxcbiAgZ2V0QWJzdHJhY3RGaWxlLFxuICBnZXRBYnN0cmFjdEZpbGVPck51bGwsXG4gIGdldEZpbGUsXG4gIGdldEZpbGVPck51bGwsXG4gIGdldEZpbGVTeXN0ZW1UeXBlLFxuICBnZXRGb2xkZXIsXG4gIGdldEZvbGRlck9yTnVsbCxcbiAgZ2V0TWFya2Rvd25GaWxlcyxcbiAgZ2V0T3JDcmVhdGVGaWxlLFxuICBnZXRPckNyZWF0ZUZvbGRlcixcbiAgZ2V0UGF0aCxcbiAgaXNBYnN0cmFjdEZpbGUsXG4gIGlzQmFzZUZpbGUsXG4gIGlzQ2FudmFzRmlsZSxcbiAgaXNGaWxlLFxuICBpc0ZvbGRlcixcbiAgaXNNYXJrZG93bkZpbGUsXG4gIGlzTm90ZSxcbiAgTUFSS0RPV05fRklMRV9FWFRFTlNJT04sXG4gIHRyaW1NYXJrZG93bkV4dGVuc2lvblxufSBmcm9tICcuL29ic2lkaWFuL2ZpbGUtc3lzdGVtLnRzJztcbmV4cG9ydCB7XG4gIGlzRnJvbnRtYXR0ZXJMaW5rQ2FjaGVXaXRoT2Zmc2V0cyxcbiAgdG9Gcm9udG1hdHRlckxpbmtDYWNoZVdpdGhPZmZzZXRzXG59IGZyb20gJy4vb2JzaWRpYW4vZnJvbnRtYXR0ZXItbGluay1jYWNoZS13aXRoLW9mZnNldHMudHMnO1xuZXhwb3J0IHtcbiAgcGFyc2VGcm9udG1hdHRlcixcbiAgc2V0RnJvbnRtYXR0ZXJcbn0gZnJvbSAnLi9vYnNpZGlhbi9mcm9udG1hdHRlci50cyc7XG5leHBvcnQgeyBQbHVnaW5Ib3ZlckxpbmtTb3VyY2VSZWdpc3RyYXIgfSBmcm9tICcuL29ic2lkaWFuL2hvdmVyLWxpbmstc291cmNlLXJlZ2lzdHJhci50cyc7XG5leHBvcnQgeyBhcHBlbmRDb2RlQmxvY2sgfSBmcm9tICcuL29ic2lkaWFuL2h0bWwtZWxlbWVudC50cyc7XG5leHBvcnQge1xuICBERUZBVUxUX05TLFxuICBpbml0STE4TixcbiAgdFxufSBmcm9tICcuL29ic2lkaWFuL2kxOG4vaTE4bi50cyc7XG5leHBvcnQgeyBlbiB9IGZyb20gJy4vb2JzaWRpYW4vaTE4bi9sb2NhbGVzL2VuLnRzJztcbmV4cG9ydCB7XG4gIERFRkFVTFRfTEFOR1VBR0UsXG4gIGRlZmF1bHRUcmFuc2xhdGlvbnNNYXBcbn0gZnJvbSAnLi9vYnNpZGlhbi9pMThuL2xvY2FsZXMvdHJhbnNsYXRpb25zLW1hcC50cyc7XG5leHBvcnQgeyBpc0luT2JzaWRpYW4gfSBmcm9tICcuL29ic2lkaWFuL2lzLWluLW9ic2lkaWFuLnRzJztcbmV4cG9ydCB7XG4gIGNvbnZlcnRMaW5rLFxuICBlZGl0QmFja2xpbmtzLFxuICBlZGl0TGlua3MsXG4gIGVkaXRMaW5rc0luQ29udGVudCxcbiAgZXh0cmFjdExpbmtGaWxlLFxuICBmaXhGcm9udG1hdHRlck1hcmtkb3duTGlua3MsXG4gIGdlbmVyYXRlTWFya2Rvd25MaW5rLFxuICBnZW5lcmF0ZVJhd01hcmtkb3duTGluayxcbiAgZ2V0R2VuZXJhdGVNYXJrZG93bkxpbmtEZWZhdWx0UGFyYW1zRm5zLFxuICBMaW5rUGF0aFN0eWxlLFxuICBMaW5rU3R5bGUsXG4gIHNob3VsZFJlc2V0QWxpYXMsXG4gIHNwbGl0U3VicGF0aCxcbiAgdGVzdEFuZ2xlQnJhY2tldHMsXG4gIHRlc3RFbWJlZCxcbiAgdGVzdExlYWRpbmdEb3QsXG4gIHRlc3RMZWFkaW5nU2xhc2gsXG4gIHRlc3RXaWtpbGluayxcbiAgdXBkYXRlRmlsZVVybExpbmtzSW5Db250ZW50LFxuICB1cGRhdGVGaWxlVXJsTGlua3NJbkZpbGUsXG4gIHVwZGF0ZUxpbmssXG4gIHVwZGF0ZUxpbmtzSW5Db250ZW50LFxuICB1cGRhdGVMaW5rc0luRmlsZVxufSBmcm9tICcuL29ic2lkaWFuL2xpbmsudHMnO1xuZXhwb3J0IHsgaW52b2tlQXN5bmNBbmRMb2cgfSBmcm9tICcuL29ic2lkaWFuL2xvZ2dlci50cyc7XG5leHBvcnQgeyBsb29wIH0gZnJvbSAnLi9vYnNpZGlhbi9sb29wLnRzJztcbmV4cG9ydCB7IFBsdWdpbk1hcmtkb3duQ29kZUJsb2NrUHJvY2Vzc29yUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9tYXJrZG93bi1jb2RlLWJsb2NrLXByb2Nlc3Nvci1yZWdpc3RyYXIudHMnO1xuZXhwb3J0IHtcbiAgZ2V0Q29kZUJsb2NrTWFya2Rvd25JbmZvLFxuICBpbnNlcnRBZnRlckNvZGVCbG9jayxcbiAgaW5zZXJ0QmVmb3JlQ29kZUJsb2NrLFxuICByZW1vdmVDb2RlQmxvY2ssXG4gIHJlcGxhY2VDb2RlQmxvY2tcbn0gZnJvbSAnLi9vYnNpZGlhbi9tYXJrZG93bi1jb2RlLWJsb2NrLXByb2Nlc3Nvci50cyc7XG5leHBvcnQgeyBQbHVnaW5NYXJrZG93blBvc3RQcm9jZXNzb3JSZWdpc3RyYXIgfSBmcm9tICcuL29ic2lkaWFuL21hcmtkb3duLXBvc3QtcHJvY2Vzc29yLXJlZ2lzdHJhci50cyc7XG5leHBvcnQgeyBnZXRGdWxsQ29udGVudEh0bWwgfSBmcm9tICcuL29ic2lkaWFuL21hcmtkb3duLXZpZXcudHMnO1xuZXhwb3J0IHtcbiAgZnVsbFJlbmRlcixcbiAgbWFya2Rvd25Ub0h0bWwsXG4gIHJlZ2lzdGVyTGlua0hhbmRsZXJzLFxuICByZW5kZXJFeHRlcm5hbExpbmssXG4gIHJlbmRlckludGVybmFsTGlua1xufSBmcm9tICcuL29ic2lkaWFuL21hcmtkb3duLnRzJztcbmV4cG9ydCB7XG4gIENhY2hlZE1ldGFkYXRhRXhGZWF0dXJlLFxuICBlbnN1cmVNZXRhZGF0YUNhY2hlUmVhZHksXG4gIGdldEJhY2tsaW5rc0ZvckZpbGVPclBhdGgsXG4gIGdldEJhY2tsaW5rc0ZvckZpbGVTYWZlLFxuICBnZXRDYWNoZVNhZmUsXG4gIGdldEZyb250bWF0dGVyU2FmZSxcbiAgZ2V0TGlua3MsXG4gIGlzQ2FjaGVkTWV0YWRhdGFFeCxcbiAgcGFyc2VNZXRhZGF0YSxcbiAgcmVnaXN0ZXJGaWxlQ2FjaGVGb3JOb25FeGlzdGluZ0ZpbGUsXG4gIHJlZ2lzdGVyRmlsZXMsXG4gIHVucmVnaXN0ZXJGaWxlQ2FjaGVGb3JOb25FeGlzdGluZ0ZpbGUsXG4gIHVucmVnaXN0ZXJGaWxlc1xufSBmcm9tICcuL29ic2lkaWFuL21ldGFkYXRhLWNhY2hlLnRzJztcbmV4cG9ydCB7IGFsZXJ0IH0gZnJvbSAnLi9vYnNpZGlhbi9tb2RhbHMvYWxlcnQudHMnO1xuZXhwb3J0IHsgY29uZmlybSB9IGZyb20gJy4vb2JzaWRpYW4vbW9kYWxzL2NvbmZpcm0udHMnO1xuZXhwb3J0IHsgTWluaW1pemFibGVNb2RhbCB9IGZyb20gJy4vb2JzaWRpYW4vbW9kYWxzL21pbmltaXphYmxlLW1vZGFsLnRzJztcbmV4cG9ydCB7XG4gIE1vZGFsQmFzZSxcbiAgc2hvd01vZGFsXG59IGZyb20gJy4vb2JzaWRpYW4vbW9kYWxzL21vZGFsLnRzJztcbmV4cG9ydCB7IHByb21wdCB9IGZyb20gJy4vb2JzaWRpYW4vbW9kYWxzL3Byb21wdC50cyc7XG5leHBvcnQgeyBzZWxlY3RJdGVtIH0gZnJvbSAnLi9vYnNpZGlhbi9tb2RhbHMvc2VsZWN0LWl0ZW0udHMnO1xuZXhwb3J0IHsgc2VsZWN0T3B0aW9uIH0gZnJvbSAnLi9vYnNpZGlhbi9tb2RhbHMvc2VsZWN0LW9wdGlvbi50cyc7XG5leHBvcnQgeyBTdWdnZXN0TW9kYWxDb21tYW5kQnVpbGRlciB9IGZyb20gJy4vb2JzaWRpYW4vbW9kYWxzL3N1Z2dlc3QtbW9kYWwtY29tbWFuZC1idWlsZGVyLnRzJztcbmV4cG9ydCB7IFBsdWdpbk9ic2lkaWFuUHJvdG9jb2xIYW5kbGVyUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9vYnNpZGlhbi1wcm90b2NvbC1oYW5kbGVyLXJlZ2lzdHJhci50cyc7XG5leHBvcnQge1xuICBnZXROZXdMaW5rRm9ybWF0LFxuICBzaG91bGRVc2VXaWtpbGlua3Ncbn0gZnJvbSAnLi9vYnNpZGlhbi9vYnNpZGlhbi1zZXR0aW5ncy50cyc7XG5leHBvcnQge1xuICBlbmNvZGVVcmwsXG4gIGVzY2FwZUFsaWFzLFxuICBpc1BhcnNlTGlua0Zyb250bWF0dGVyUmVmZXJlbmNlLFxuICBpc1BhcnNlTGlua1JlZmVyZW5jZSxcbiAgcGFyc2VGcm9udG1hdHRlckxpbmtzLFxuICBwYXJzZUxpbmssXG4gIHBhcnNlTGlua3MsXG4gIHRvUGFyc2VMaW5rUmVmZXJlbmNlLFxuICB1bmVzY2FwZUFsaWFzXG59IGZyb20gJy4vb2JzaWRpYW4vcGFyc2UtbGluay50cyc7XG5leHBvcnQgeyBQYXRoU2V0dGluZ3MgfSBmcm9tICcuL29ic2lkaWFuL3BhdGgtc2V0dGluZ3MudHMnO1xuZXhwb3J0IHsgcHJpbnRUb1BkZiB9IGZyb20gJy4vb2JzaWRpYW4vcGRmLnRzJztcbmV4cG9ydCB7IFBsdWdpbkNsaUhhbmRsZXJSZWdpc3RyYXIgfSBmcm9tICcuL29ic2lkaWFuL3BsdWdpbi1jbGktaGFuZGxlci1yZWdpc3RyYXIudHMnO1xuZXhwb3J0IHsgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMgfSBmcm9tICcuL29ic2lkaWFuL3BsdWdpbi9vYnNpZGlhbi1wbHVnaW4tcmVwby1wYXRocy50cyc7XG5leHBvcnQge1xuICBhZGRQbHVnaW5Dc3NDbGFzc2VzLFxuICBpbml0RGVidWdDb250cm9sbGVyLFxuICBpbml0UGx1Z2luQ29udGV4dFxufSBmcm9tICcuL29ic2lkaWFuL3BsdWdpbi9wbHVnaW4tY29udGV4dC50cyc7XG5leHBvcnQgeyBQbHVnaW5FdmVudFNvdXJjZUltcGwgfSBmcm9tICcuL29ic2lkaWFuL3BsdWdpbi9wbHVnaW4tZXZlbnQtc291cmNlLnRzJztcbmV4cG9ydCB7XG4gIFBsdWdpblNldHRpbmdzVGFiQmFzZSxcbiAgU0FWRV9UT19GSUxFX0NPTlRFWFRcbn0gZnJvbSAnLi9vYnNpZGlhbi9wbHVnaW4vcGx1Z2luLXNldHRpbmdzLXRhYi50cyc7XG5leHBvcnQge1xuICBQbHVnaW5CYXNlLFxuICByZWxvYWRQbHVnaW4sXG4gIHNob3dFcnJvckFuZERpc2FibGVQbHVnaW5cbn0gZnJvbSAnLi9vYnNpZGlhbi9wbHVnaW4vcGx1Z2luLnRzJztcbmV4cG9ydCB7XG4gIGFkZFRvUXVldWUsXG4gIGFkZFRvUXVldWVBbmRXYWl0LFxuICBmbHVzaFF1ZXVlXG59IGZyb20gJy4vb2JzaWRpYW4vcXVldWUudHMnO1xuZXhwb3J0IHtcbiAgQXBwQ29udGV4dCxcbiAgdXNlQXBwXG59IGZyb20gJy4vb2JzaWRpYW4vcmVhY3QvYXBwLWNvbnRleHQudHMnO1xuZXhwb3J0IHtcbiAgaXNDYW52YXNGaWxlTm9kZVJlZmVyZW5jZSxcbiAgaXNDYW52YXNSZWZlcmVuY2UsXG4gIGlzQ2FudmFzVGV4dE5vZGVSZWZlcmVuY2UsXG4gIHJlZmVyZW5jZVRvRmlsZUNoYW5nZSxcbiAgc29ydFJlZmVyZW5jZXNcbn0gZnJvbSAnLi9vYnNpZGlhbi9yZWZlcmVuY2UudHMnO1xuZXhwb3J0IHtcbiAgaXNSZXNvdXJjZUxvY2tlZEZvclBhdGgsXG4gIGxvY2tSZXNvdXJjZUZvclBhdGgsXG4gIHJlcXVlc3RSZXNvdXJjZVVubG9ja0ZvclBhdGgsXG4gIFJlc291cmNlTG9ja0NvbXBvbmVudCxcbiAgUmVzb3VyY2VMb2NrZWRFcnJvcixcbiAgdW5sb2NrUmVzb3VyY2VGb3JQYXRoXG59IGZyb20gJy4vb2JzaWRpYW4vcmVzb3VyY2UtbG9jay50cyc7XG5leHBvcnQgeyByZWxhdGl2ZVBhdGhUb1Jlc291cmNlVXJsIH0gZnJvbSAnLi9vYnNpZGlhbi9yZXNvdXJjZS11cmwudHMnO1xuZXhwb3J0IHsgUGx1Z2luUmliYm9uSWNvblJlZ2lzdHJhciB9IGZyb20gJy4vb2JzaWRpYW4vcmliYm9uLWljb24tcmVnaXN0cmFyLnRzJztcbmV4cG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvY2hlY2tib3gtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IENvZGVIaWdobGlnaHRlckNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL2NvZGUtaGlnaGxpZ2h0ZXItY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IERhdGVDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9kYXRlLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBEYXRlVGltZUNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL2RhdGUtdGltZS1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgRW1haWxDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9lbWFpbC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgRmlsZUNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL2ZpbGUtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IE1vbnRoQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvbW9udGgtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IE11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS1kcm9wZG93bi1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgTXVsdGlwbGVFbWFpbENvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL211bHRpcGxlLWVtYWlsLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBNdWx0aXBsZUZpbGVDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS1maWxlLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBNdWx0aXBsZVRleHRDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS10ZXh0LWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9udW1iZXItY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvcGFzc3dvcmQtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IGVuc3VyZVdyYXBwZWQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9zZXR0aW5nLWNvbXBvbmVudC13cmFwcGVyLnRzJztcbmV4cG9ydCB7IFRlbGVwaG9uZUNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL3RlbGVwaG9uZS1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgZ2V0VGV4dEJhc2VkQ29tcG9uZW50VmFsdWUgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90ZXh0LWJhc2VkLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBUaW1lQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvdGltZS1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgVHJpU3RhdGVDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL3RyaS1zdGF0ZS1jaGVja2JveC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgVHlwZWREcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL3R5cGVkLWRyb3Bkb3duLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBUeXBlZE11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90eXBlZC1tdWx0aXBsZS1kcm9wZG93bi1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgVHlwZWRSYW5nZVRleHRDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90eXBlZC1yYW5nZS10ZXh0LWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBUeXBlZFRleHRDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90eXBlZC10ZXh0LWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBVcmxDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy91cmwtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IGdldFZhbGlkYXRvckNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL3ZhbGlkYXRvci1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgV2Vla0NvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL3dlZWstY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFNldHRpbmdFeCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1leC50cyc7XG5leHBvcnQgeyBTZXR0aW5nR3JvdXBFeCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1ncm91cC1leC50cyc7XG5leHBvcnQgeyBQbHVnaW5TdGF0dXNCYXJJdGVtUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9zdGF0dXMtYmFyLWl0ZW0tcmVnaXN0cmFyLnRzJztcbmV4cG9ydCB7XG4gIGdldE9zQW5kT2JzaWRpYW5VbnNhZmVQYXRoQ2hhcnNSZWdFeHAsXG4gIGdldE9zVW5zYWZlUGF0aENoYXJzUmVnRXhwLFxuICBpc1ZhbGlkYXRpb25NZXNzYWdlSG9sZGVyLFxuICBPQlNJRElBTl9VTlNBRkVfRklMRU5BTUVfQ0hBUlMsXG4gIFVOSVhfVU5TQUZFX1BBVEhfQ0hBUlMsXG4gIFdJTkRPV1NfVU5TQUZFX1BBVEhfQ0hBUlNcbn0gZnJvbSAnLi9vYnNpZGlhbi92YWxpZGF0aW9uLnRzJztcbmV4cG9ydCB7IGRlbGV0ZUlmTm90VXNlZCB9IGZyb20gJy4vb2JzaWRpYW4vdmF1bHQtZGVsZXRlLnRzJztcbmV4cG9ydCB7IFZhdWx0VHJhbnNhY3Rpb24gfSBmcm9tICcuL29ic2lkaWFuL3ZhdWx0LXRyYW5zYWN0aW9uLnRzJztcbmV4cG9ydCB7XG4gIGNvcHlTYWZlLFxuICBjcmVhdGVGb2xkZXJTYWZlLFxuICBjcmVhdGVUZW1wRmlsZSxcbiAgY3JlYXRlVGVtcEZvbGRlcixcbiAgZGVsZXRlRW1wdHlGb2xkZXIsXG4gIGRlbGV0ZUVtcHR5Rm9sZGVySGllcmFyY2h5LFxuICBnZXRBYnN0cmFjdEZpbGVQYXRoU2FmZSxcbiAgZ2V0QXZhaWxhYmxlUGF0aCxcbiAgZ2V0RmlsZVBhdGhTYWZlLFxuICBnZXRGb2xkZXJQYXRoU2FmZSxcbiAgZ2V0TWFya2Rvd25GaWxlc1NvcnRlZCxcbiAgZ2V0Tm90ZUZpbGVzU29ydGVkLFxuICBnZXRPckNyZWF0ZUFic3RyYWN0RmlsZVNhZmUsXG4gIGdldE9yQ3JlYXRlRmlsZVNhZmUsXG4gIGdldE9yQ3JlYXRlRm9sZGVyU2FmZSxcbiAgZ2V0U2FmZVJlbmFtZVBhdGgsXG4gIGludm9rZVdpdGhGaWxlU3lzdGVtTG9jayxcbiAgaXNDaGlsZCxcbiAgaXNDaGlsZE9yU2VsZixcbiAgaXNFbXB0eUZvbGRlcixcbiAgbGlzdFNhZmUsXG4gIHByb2Nlc3MsXG4gIHJlYWRTYWZlLFxuICByZW5hbWVTYWZlLFxuICBzYXZlTm90ZSxcbiAgdHJhc2hTYWZlXG59IGZyb20gJy4vb2JzaWRpYW4vdmF1bHQudHMnO1xuZXhwb3J0IHsgUGx1Z2luVmlld1JlZ2lzdHJhciB9IGZyb20gJy4vb2JzaWRpYW4vdmlldy1yZWdpc3RyYXIudHMnO1xuZXhwb3J0IHtcbiAgZW5zdXJlTGF5b3V0UmVhZHksXG4gIGdldEFsbENvbnRhaW5lcnMsXG4gIGdldEFsbERvbVdpbmRvd3Ncbn0gZnJvbSAnLi9vYnNpZGlhbi93b3Jrc3BhY2UudHMnO1xuZXhwb3J0IHtcbiAgYmFzZW5hbWUsXG4gIGRlbGltaXRlcixcbiAgZGlybmFtZSxcbiAgZXh0bmFtZSxcbiAgZm9ybWF0LFxuICBnZXRGaWxlTmFtZSxcbiAgZ2V0Rm9sZGVyTmFtZSxcbiAgaXNBYnNvbHV0ZSxcbiAgam9pbixcbiAgbWFrZUZpbGVOYW1lLFxuICBub3JtYWxpemVJZlJlbGF0aXZlLFxuICBub3JtYWxpemVQYXRoLFxuICBwYXJzZSxcbiAgcG9zaXgsXG4gIHJlbGF0aXZlLFxuICByZXNvbHZlLFxuICBzZXAsXG4gIHRvUG9zaXhCdWZmZXIsXG4gIHRvUG9zaXhQYXRoXG59IGZyb20gJy4vcGF0aC50cyc7XG5leHBvcnQge1xuICBBTFdBWVNfTUFUQ0hfUkVHX0VYUCxcbiAgZXNjYXBlUmVnRXhwLFxuICBpc1ZhbGlkUmVnRXhwLFxuICBORVZFUl9NQVRDSF9SRUdfRVhQLFxuICBvbmVPZixcbiAgUmVnRXhwTWVyZ2VGbGFnc0NvbmZsaWN0U3RyYXRlZ3lcbn0gZnJvbSAnLi9yZWctZXhwLnRzJztcbmV4cG9ydCB7XG4gIGJ5cGFzc1N0cmljdFByb3h5LFxuICBzdHJpY3RQcm94eVxufSBmcm9tICcuL3N0cmljdC1wcm94eS50cyc7XG5leHBvcnQge1xuICBFTVBUWSxcbiAgZW5zdXJlRW5kc1dpdGgsXG4gIGVuc3VyZUxmRW5kaW5ncyxcbiAgZW5zdXJlU3RhcnRzV2l0aCxcbiAgZXNjYXBlLFxuICBnZXRMZk5vcm1hbGl6ZWRPZmZzZXRUb09yaWdpbmFsT2Zmc2V0TWFwcGVyLFxuICBoYXNTaW5nbGVPY2N1cnJlbmNlLFxuICBpbmRlbnQsXG4gIGluc2VydEF0LFxuICBtYWtlVmFsaWRWYXJpYWJsZU5hbWUsXG4gIG5vcm1hbGl6ZVN0cmluZyxcbiAgcmVwbGFjZSxcbiAgcmVwbGFjZUFsbCxcbiAgcmVwbGFjZUFsbEFzeW5jLFxuICB0cmltRW5kLFxuICB0cmltU3RhcnQsXG4gIHVuZXNjYXBlLFxuICB1bmluZGVudFxufSBmcm9tICcuL3N0cmluZy50cyc7XG5leHBvcnQgeyBEYXRlVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy9kYXRlLXRyYW5zZm9ybWVyLnRzJztcbmV4cG9ydCB7IER1cmF0aW9uVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy9kdXJhdGlvbi10cmFuc2Zvcm1lci50cyc7XG5leHBvcnQgeyBHcm91cFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvZ3JvdXAtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgTWFwVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy9tYXAtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgU2V0VHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy9zZXQtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgU2tpcFByaXZhdGVQcm9wZXJ0eVRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvc2tpcC1wcml2YXRlLXByb3BlcnR5LXRyYW5zZm9ybWVyLnRzJztcbmV4cG9ydCB7IFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgVHdvV2F5TWFwVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy90d28td2F5LW1hcC10cmFuc2Zvcm1lci50cyc7XG5leHBvcnQgeyBUeXBlZFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvdHlwZWQtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgVHdvV2F5TWFwIH0gZnJvbSAnLi90d28td2F5LW1hcC50cyc7XG5leHBvcnQge1xuICBhc3NlcnQsXG4gIGFzc2VydEdlbmVyaWNPYmplY3QsXG4gIGFzc2VydE5ldmVyLFxuICBhc3NlcnROb25OdWxsYWJsZSxcbiAgZW5zdXJlR2VuZXJpY09iamVjdCxcbiAgZW5zdXJlTm9uTnVsbGFibGVcbn0gZnJvbSAnLi90eXBlLWd1YXJkcy50cyc7XG5leHBvcnQgeyBUeXBlQXNzZXJ0ZXIgfSBmcm9tICcuL3R5cGUudHMnO1xuZXhwb3J0IHtcbiAgaXNGaWxlVXJsLFxuICBpc1VybCxcbiAgbm9ybWFsaXplRmlsZVVybFxufSBmcm9tICcuL3VybC50cyc7XG5leHBvcnQgeyByZXNvbHZlVmFsdWUgfSBmcm9tICcuL3ZhbHVlLXByb3ZpZGVyLnRzJztcbmV4cG9ydCB7IFZhbHVlV3JhcHBlciB9IGZyb20gJy4vdmFsdWUtd3JhcHBlci50cyc7XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUVBLDhCQU9PO0FBQ1AsbUJBSU87QUFDUCwwQkFNTztBQUNQLG1CQWdDTztBQUNQLG9CQUF1QjtBQUN2QixrQkFNTztBQUNQLG1CQU9PO0FBQ1Asd0JBZ0JPO0FBQ1Asa0JBR087QUFDUCxtQkFlTztBQUNQLHNCQVNPO0FBQ1Asb0NBR087QUFDUCwwQkFhTztBQUNQLHFCQUdPO0FBQ1AsMEJBa0JPO0FBQ1Asc0NBR087QUFDUCxrQ0FBc0M7QUFDdEMsaUJBQXVCO0FBQ3ZCLCtCQUdPO0FBQ1AsNkJBT087QUFDUCxzQkFJTztBQUNQLGtDQUF5QztBQUN6QyxxQkFJTztBQUNQLHlDQUtPO0FBQ1AsMkNBQTJDO0FBQzNDLHVDQUF3QztBQUN4Qyw2QkFBK0I7QUFDL0Isb0NBQXFDO0FBQ3JDLGtDQUFtQztBQUNuQyxvQ0FBcUM7QUFDckMsb0NBQXFDO0FBQ3JDLDZDQUE0QztBQUM1QywyQ0FBMkM7QUFDM0MsZ0RBQStDO0FBQy9DLCtCQUF1QztBQUN2QywrQkFVTztBQUNQLG9DQUFxQztBQUNyQyx5Q0FBeUM7QUFDekMsMkNBQTJDO0FBQzNDLG9DQUFtQztBQUNuQyxtREFBa0Q7QUFDbEQsMEJBQTRCO0FBQzVCLHFDQUFzQztBQUN0QyxrQ0FBc0M7QUFDdEMsd0NBQXlDO0FBQ3pDLDZEQUEyRDtBQUMzRCxvQ0FHTztBQUNQLDRDQUE0QztBQUM1QyxxQ0FJTztBQUNQLHNDQUF1QztBQUN2QyxxQ0FBc0M7QUFDdEMsdUNBQTRDO0FBQzVDLDJDQUEyQztBQUMzQyxnQ0FBa0M7QUFDbEMsNkNBR087QUFDUCxpREFBZ0Q7QUFDaEQsdUJBQXlCO0FBQ3pCLDBCQUFrQztBQUNsQywyQkFHTztBQUNQLHNCQU9PO0FBQ1AsdUNBQThCO0FBQzlCLG1DQU1PO0FBQ1Asd0NBQStDO0FBQy9DLHNDQUE2QztBQUM3QyxvQkFHTztBQUNQLG9CQUlPO0FBQ1Asa0NBQTBDO0FBQzFDLHlCQVVPO0FBQ1AsMEJBSU87QUFDUCx5QkFnQ087QUFDUCxpREFHTztBQUNQLHlCQUdPO0FBQ1AseUNBQStDO0FBQy9DLElBQUFBLHVCQUFnQztBQUNoQyxrQkFJTztBQUNQLGdCQUFtQjtBQUNuQiw4QkFHTztBQUNQLDRCQUE2QjtBQUM3QixrQkF3Qk87QUFDUCxvQkFBa0M7QUFDbEMsa0JBQXFCO0FBQ3JCLHFEQUEwRDtBQUMxRCwyQ0FNTztBQUNQLCtDQUFxRDtBQUNyRCwyQkFBbUM7QUFDbkMsc0JBTU87QUFDUCw0QkFjTztBQUNQLG1CQUFzQjtBQUN0QixxQkFBd0I7QUFDeEIsK0JBQWlDO0FBQ2pDLG1CQUdPO0FBQ1Asb0JBQXVCO0FBQ3ZCLHlCQUEyQjtBQUMzQiwyQkFBNkI7QUFDN0IsMkNBQTJDO0FBQzNDLGlEQUF1RDtBQUN2RCwrQkFHTztBQUNQLHdCQVVPO0FBQ1AsMkJBQTZCO0FBQzdCLGlCQUEyQjtBQUMzQiwwQ0FBMEM7QUFDMUMsd0NBQXdDO0FBQ3hDLDRCQUlPO0FBQ1AsaUNBQXNDO0FBQ3RDLGlDQUdPO0FBQ1Asb0JBSU87QUFDUCxtQkFJTztBQUNQLHlCQUdPO0FBQ1AsdUJBTU87QUFDUCwyQkFPTztBQUNQLDBCQUEwQztBQUMxQyxtQ0FBMEM7QUFDMUMsZ0NBQWtDO0FBQ2xDLHdDQUF5QztBQUN6Qyw0QkFBOEI7QUFDOUIsaUNBQWtDO0FBQ2xDLDZCQUErQjtBQUMvQiw0QkFBOEI7QUFDOUIsNkJBQStCO0FBQy9CLHlDQUEwQztBQUMxQyxzQ0FBdUM7QUFDdkMscUNBQXNDO0FBQ3RDLHFDQUFzQztBQUN0Qyw4QkFBZ0M7QUFDaEMsZ0NBQWtDO0FBQ2xDLHVDQUE4QjtBQUM5QixpQ0FBbUM7QUFDbkMsa0NBQTJDO0FBQzNDLDRCQUE4QjtBQUM5QiwwQ0FBMEM7QUFDMUMsc0NBQXVDO0FBQ3ZDLCtDQUErQztBQUMvQyx3Q0FBd0M7QUFDeEMsa0NBQW1DO0FBQ25DLDJCQUE2QjtBQUM3QixpQ0FBc0M7QUFDdEMsNEJBQThCO0FBQzlCLHdCQUEwQjtBQUMxQiw4QkFBK0I7QUFDL0IsdUNBQTZDO0FBQzdDLHdCQU9PO0FBQ1AsMEJBQWdDO0FBQ2hDLCtCQUFpQztBQUNqQyxtQkEyQk87QUFDUCw0QkFBb0M7QUFDcEMsdUJBSU87QUFDUCxrQkFvQk87QUFDUCxxQkFPTztBQUNQLDBCQUdPO0FBQ1Asb0JBbUJPO0FBQ1AsOEJBQWdDO0FBQ2hDLGtDQUFvQztBQUNwQywrQkFBaUM7QUFDakMsNkJBQStCO0FBQy9CLDZCQUErQjtBQUMvQiwrQ0FBK0M7QUFDL0MseUJBQTRCO0FBQzVCLHFDQUFxQztBQUNyQywrQkFBaUM7QUFDakMseUJBQTBCO0FBQzFCLHlCQU9PO0FBQ1Asa0JBQTZCO0FBQzdCLGlCQUlPO0FBQ1AsNEJBQTZCO0FBQzdCLDJCQUE2QjsiLAogICJuYW1lcyI6IFsiaW1wb3J0X2h0bWxfZWxlbWVudCJdCn0K
1334
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL19fbWVyZ2VkLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKiBUSElTIElTIEEgR0VORVJBVEVEL0JVTkRMRUQgRklMRSBCWSBCVUlMRCBTQ1JJUFQgKi9cblxuZXhwb3J0IHtcbiAgYWJvcnRTaWduYWxBbnksXG4gIGFib3J0U2lnbmFsTmV2ZXIsXG4gIGFib3J0U2lnbmFsVGltZW91dCxcbiAgSU5GSU5JVEVfVElNRU9VVCxcbiAgb25BYm9ydCxcbiAgd2FpdEZvckFib3J0XG59IGZyb20gJy4vYWJvcnQtY29udHJvbGxlci50cyc7XG5leHBvcnQge1xuICBmaWx0ZXJJblBsYWNlLFxuICB1bmlxdWUsXG4gIHVuaXF1ZUluUGxhY2Vcbn0gZnJvbSAnLi9hcnJheS50cyc7XG5leHBvcnQge1xuICBBc3luY0V2ZW50UmVmRGlzcG9zYWJsZSxcbiAgQXN5bmNFdmVudHMsXG4gIEFzeW5jRXZlbnRzQmFzZSxcbiAgbWl4aW5Bc3luY0V2ZW50cyxcbiAgc3Vic2NyaWJlQXN5bmNEaXNwb3NhYmxlRXZlbnRcbn0gZnJvbSAnLi9hc3luYy1ldmVudHMudHMnO1xuZXhwb3J0IHtcbiAgYWRkRXJyb3JIYW5kbGVyLFxuICBhc3luY0ZpbHRlcixcbiAgYXN5bmNGaWx0ZXJJblBsYWNlLFxuICBhc3luY0ZsYXRNYXAsXG4gIGFzeW5jTWFwLFxuICBjaGFpbixcbiAgY29udmVydEFzeW5jVG9TeW5jLFxuICBjb252ZXJ0U3luY1RvQXN5bmMsXG4gIGRpc2FibGVBc3luY09wZXJhdGlvblRyYWNraW5nLFxuICBlbmFibGVBc3luY09wZXJhdGlvblRyYWNraW5nLFxuICBoYW5kbGVTaWxlbnRFcnJvcixcbiAgaWdub3JlRXJyb3IsXG4gIGludm9rZUFzeW5jU2FmZWx5LFxuICBpbnZva2VBc3luY1NhZmVseUFmdGVyRGVsYXksXG4gIGlzQXN5bmNPcGVyYXRpb25UcmFja2luZ0VuYWJsZWQsXG4gIG1hcmtzQXNUZXJtaW5hdGVSZXRyeSxcbiAgbmV2ZXJFbmRzLFxuICBuZXh0VGlja0FzeW5jLFxuICBub3JtYWxpemVQcm9taXNhYmxlLFxuICBwcm9taXNlQWxsQXN5bmNGbnNTZXF1ZW50aWFsbHksXG4gIHByb21pc2VBbGxTZXF1ZW50aWFsbHksXG4gIHF1ZXVlTWljcm90YXNrQXN5bmMsXG4gIHJlcXVlc3RBbmltYXRpb25GcmFtZUFzeW5jLFxuICByZXRyeVdpdGhUaW1lb3V0LFxuICBydW5XaXRoVGltZW91dCxcbiAgc2V0SW1tZWRpYXRlQXN5bmMsXG4gIHNldFRpbWVvdXRBc3luYyxcbiAgc2xlZXAsXG4gIHRpbWVvdXQsXG4gIHRvQXJyYXksXG4gIHdhaXRGb3JBbGxBc3luY09wZXJhdGlvbnNcbn0gZnJvbSAnLi9hc3luYy50cyc7XG5leHBvcnQgeyBCZWVwZXIgfSBmcm9tICcuL2JlZXBlci50cyc7XG5leHBvcnQge1xuICBibG9iVG9BcnJheUJ1ZmZlcixcbiAgYmxvYlRvRGF0YVVybCxcbiAgYmxvYlRvSnBlZ0FycmF5QnVmZmVyLFxuICBkYXRhVXJsVG9BcnJheUJ1ZmZlcixcbiAgaXNJbWFnZUZpbGVcbn0gZnJvbSAnLi9ibG9iLnRzJztcbmV4cG9ydCB7XG4gIGVuYWJsZUxpYnJhcnlEZWJ1Z2dlcnMsXG4gIGdldERlYnVnQ29udHJvbGxlcixcbiAgZ2V0RGVidWdnZXIsXG4gIGdldExpYkRlYnVnZ2VyLFxuICBwcmludFdpdGhTdGFja1RyYWNlLFxuICBzaG93SW5pdGlhbERlYnVnTWVzc2FnZVxufSBmcm9tICcuL2RlYnVnLnRzJztcbmV4cG9ydCB7XG4gIEFzeW5jQ2FsbGJhY2tEaXNwb3NhYmxlLFxuICBBc3luY0Rpc3Bvc2FibGVCYXNlLFxuICBDYWxsYmFja0Rpc3Bvc2FibGUsXG4gIENvbWJpbmVBc3luY0Rpc3Bvc2FibGUsXG4gIENvbWJpbmVEaXNwb3NhYmxlLFxuICBEaXNwb3NhYmxlQmFzZSxcbiAgRGlzcG9zZUVycm9yQmVoYXZpb3IsXG4gIERpc3Bvc2VPcmRlcixcbiAgaXNBc3luY0Rpc3Bvc2FibGUsXG4gIGlzQXN5bmNEaXNwb3NhYmxlRXgsXG4gIGlzRGlzcG9zYWJsZSxcbiAgaXNEaXNwb3NhYmxlRXgsXG4gIE11bHRpcGxlRGlzcG9zZUJlaGF2aW9yLFxuICB0b0FzeW5jRGlzcG9zYWJsZUV4LFxuICB0b0Rpc3Bvc2FibGVFeFxufSBmcm9tICcuL2Rpc3Bvc2FibGUudHMnO1xuZXhwb3J0IHtcbiAgZ2V0RW51bUtleSxcbiAgZ2V0RW51bVZhbHVlXG59IGZyb20gJy4vZW51bS50cyc7XG5leHBvcnQge1xuICBBU1lOQ19XUkFQUEVSX0VSUk9SX01FU1NBR0UsXG4gIEN1c3RvbVN0YWNrVHJhY2VFcnJvcixcbiAgZW1pdEFzeW5jRXJyb3JFdmVudCxcbiAgZXJyb3JUb1N0cmluZyxcbiAgRXJyb3JXcmFwcGVyLFxuICBnZXRTdGFja1RyYWNlLFxuICBpc0FzeW5jRXJyb3JJZ25vcmVDb250ZXh0QWN0aXZlLFxuICBwcmludEVycm9yLFxuICByZWdpc3RlckFzeW5jRXJyb3JFdmVudEhhbmRsZXIsXG4gIFNpbGVudEVycm9yLFxuICBzdGFydEFzeW5jRXJyb3JJZ25vcmVDb250ZXh0LFxuICBzdGFydENvbGxlY3RpbmdVbmhhbmRsZWRBc3luY0Vycm9ycyxcbiAgc3RvcENvbGxlY3RpbmdVbmhhbmRsZWRBc3luY0Vycm9ycyxcbiAgdGhyb3dFeHByZXNzaW9uXG59IGZyb20gJy4vZXJyb3IudHMnO1xuZXhwb3J0IHtcbiAgY2xvbmVGdW5jdGlvbixcbiAgY3JlYXRlRnVuY3Rpb24sXG4gIGdldEZ1bmN0aW9uRXhwcmVzc2lvblN0cmluZyxcbiAgbm9vcCxcbiAgbm9vcEFzeW5jLFxuICBub29wQXN5bmNTaW5nbGV0b25Qcm9taXNlLFxuICBvbWl0QXN5bmNSZXR1cm5UeXBlLFxuICBvbWl0UmV0dXJuVHlwZVxufSBmcm9tICcuL2Z1bmN0aW9uLnRzJztcbmV4cG9ydCB7XG4gIExJQlJBUllfU1RZTEVTLFxuICBMSUJSQVJZX1ZFUlNJT05cbn0gZnJvbSAnLi9nZW5lcmF0ZWQtZHVyaW5nLWJ1aWxkLnRzJztcbmV4cG9ydCB7XG4gIGNyZWF0ZURpdkFzeW5jLFxuICBjcmVhdGVFbEFzeW5jLFxuICBjcmVhdGVGcmFnbWVudEFzeW5jLFxuICBjcmVhdGVTcGFuQXN5bmMsXG4gIGNyZWF0ZVN2Z0FzeW5jLFxuICBlbnN1cmVMb2FkZWQsXG4gIGdldFpJbmRleCxcbiAgaXNFbGVtZW50VmlzaWJsZUluT2Zmc2V0UGFyZW50LFxuICBpc0xvYWRlZCxcbiAgb25BbmNlc3RvclNjcm9sbE9yUmVzaXplLFxuICB0b1B4LFxuICB3YWl0VW50aWxDb25uZWN0ZWRcbn0gZnJvbSAnLi9odG1sLWVsZW1lbnQudHMnO1xuZXhwb3J0IHtcbiAgTGlicmFyeSxcbiAgTElCUkFSWV9OQU1FXG59IGZyb20gJy4vbGlicmFyeS50cyc7XG5leHBvcnQge1xuICBhc3NpZ25XaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXMsXG4gIGNhc3RUbyxcbiAgY2xvbmVXaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXMsXG4gIGRlZXBFcXVhbCxcbiAgZGVsZXRlUHJvcGVydGllcyxcbiAgZGVsZXRlUHJvcGVydHksXG4gIGV4dHJhY3REZWZhdWx0RXhwb3J0SW50ZXJvcCxcbiAgRnVuY3Rpb25IYW5kbGluZ01vZGUsXG4gIGdldEFsbEVudHJpZXMsXG4gIGdldEFsbEtleXMsXG4gIGdldE5lc3RlZFByb3BlcnR5VmFsdWUsXG4gIGdldFByb3RvdHlwZU9mLFxuICBuYW1lb2YsXG4gIG5vcm1hbGl6ZU9wdGlvbmFsUHJvcGVydGllcyxcbiAgcmVtb3ZlVW5kZWZpbmVkUHJvcGVydGllcyxcbiAgc2V0TmVzdGVkUHJvcGVydHlWYWx1ZSxcbiAgdG9Kc29uXG59IGZyb20gJy4vb2JqZWN0LXV0aWxzLnRzJztcbmV4cG9ydCB7XG4gIGdldE9ic2lkaWFuRGV2VXRpbHNTdGF0ZSxcbiAgcmVzZXRPYnNpZGlhbkRldlV0aWxzU3RhdGVcbn0gZnJvbSAnLi9vYnNpZGlhbi1kZXYtdXRpbHMtc3RhdGUudHMnO1xuZXhwb3J0IHsgQXBwQWN0aXZlRmlsZVByb3ZpZGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9hY3RpdmUtZmlsZS1wcm92aWRlci50cyc7XG5leHBvcnQgeyBnZXRBcHAgfSBmcm9tICcuL29ic2lkaWFuL2FwcC50cyc7XG5leHBvcnQge1xuICByZXRyeVdpdGhUaW1lb3V0Tm90aWNlLFxuICBydW5XaXRoVGltZW91dE5vdGljZVxufSBmcm9tICcuL29ic2lkaWFuL2FzeW5jLXdpdGgtbm90aWNlLnRzJztcbmV4cG9ydCB7XG4gIEF0dGFjaG1lbnRQYXRoQ29udGV4dCxcbiAgRFVNTVlfUEFUSCxcbiAgZ2V0QXR0YWNobWVudEZpbGVQYXRoLFxuICBnZXRBdHRhY2htZW50Rm9sZGVyUGF0aCxcbiAgZ2V0QXZhaWxhYmxlUGF0aEZvckF0dGFjaG1lbnRzLFxuICBoYXNPd25BdHRhY2htZW50Rm9sZGVyXG59IGZyb20gJy4vb2JzaWRpYW4vYXR0YWNobWVudC1wYXRoLnRzJztcbmV4cG9ydCB7XG4gIHJlbmRlckJhY2tsaW5rc1RhYmxlLFxuICByZW5kZXJEZWxheWVkQmFja2xpbmtzLFxuICByZW5kZXJEZWxheWVkQmFja2xpbmtzRm9yRm9sZGVyXG59IGZyb20gJy4vb2JzaWRpYW4vYmFja2xpbmsudHMnO1xuZXhwb3J0IHsgUGx1Z2luQmFzZXNWaWV3UmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9iYXNlcy12aWV3LXJlZ2lzdHJhci50cyc7XG5leHBvcnQge1xuICBDYWxsb3V0TW9kZSxcbiAgcmVuZGVyQ2FsbG91dCxcbiAgd3JhcEZvckNhbGxvdXRcbn0gZnJvbSAnLi9vYnNpZGlhbi9jYWxsb3V0LnRzJztcbmV4cG9ydCB7XG4gIENhc2VJbnNlbnNpdGl2ZUZpbGVJbmRleCxcbiAgZ2V0Q2FzZUluc2Vuc2l0aXZlRmlsZUluZGV4LFxuICBzZXRDYXNlSW5zZW5zaXRpdmVGaWxlSW5kZXgsXG4gIHVuc2V0Q2FzZUluc2Vuc2l0aXZlRmlsZUluZGV4XG59IGZyb20gJy4vb2JzaWRpYW4vY2FzZS1pbnNlbnNpdGl2ZS1maWxlLWluZGV4LnRzJztcbmV4cG9ydCB7IGNyZWF0ZUNvZGVCbG9ja1JlZ0V4cCB9IGZyb20gJy4vb2JzaWRpYW4vY29kZS1ibG9jay1yZWctZXhwLnRzJztcbmV4cG9ydCB7IEFic3RyYWN0RmlsZUNvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2Fic3RyYWN0LWZpbGUtY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCB7IENvbW1hbmRIYW5kbGVyQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2NvbW1hbmQtaGFuZGxlci1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgQ29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29ic2lkaWFuL2NvbW1hbmQtaGFuZGxlcnMvY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCB7IEVkaXRvckNvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2VkaXRvci1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0IHsgRmlsZUNvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2ZpbGUtY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCB7IEZvbGRlckNvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLWhhbmRsZXJzL2ZvbGRlci1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0IHsgR2xvYmFsQ29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29ic2lkaWFuL2NvbW1hbmQtaGFuZGxlcnMvZ2xvYmFsLWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgeyBPcGVuRGVtb1ZhdWx0Q29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29ic2lkaWFuL2NvbW1hbmQtaGFuZGxlcnMvb3Blbi1kZW1vLXZhdWx0LWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgeyBPcGVuU2V0dGluZ3NDb21tYW5kSGFuZGxlciB9IGZyb20gJy4vb2JzaWRpYW4vY29tbWFuZC1oYW5kbGVycy9vcGVuLXNldHRpbmdzLWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgeyBVbmxvY2tBY3RpdmVOb3RlQ29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29ic2lkaWFuL2NvbW1hbmQtaGFuZGxlcnMvdW5sb2NrLWFjdGl2ZS1ub3RlLWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgeyBQbHVnaW5Db21tYW5kUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9jb21tYW5kLXJlZ2lzdHJhci50cyc7XG5leHBvcnQge1xuICBjb25maWd1cmVDb21tdW5pdHlQbHVnaW4sXG4gIGRpc2FibGVDb21tdW5pdHlQbHVnaW4sXG4gIGVuYWJsZUNvbW11bml0eVBsdWdpbixcbiAgZ2V0Q29tbXVuaXR5UGx1Z2luUmVwbyxcbiAgZ2V0TGF0ZXN0UmVsZWFzZVZlcnNpb24sXG4gIGluc3RhbGxDb21tdW5pdHlQbHVnaW4sXG4gIHNlYXJjaENvbW11bml0eVBsdWdpbnMsXG4gIHRvZ2dsZUVuYWJsZUNvbW11bml0eVBsdWdpbixcbiAgdG9nZ2xlSW5zdGFsbENvbW11bml0eVBsdWdpbixcbiAgdW5pbnN0YWxsQ29tbXVuaXR5UGx1Z2luXG59IGZyb20gJy4vb2JzaWRpYW4vY29tbXVuaXR5LXBsdWdpbnMudHMnO1xuZXhwb3J0IHsgQWJvcnRTaWduYWxDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvYWJvcnQtc2lnbmFsLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBBbGxXaW5kb3dzRXZlbnRDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvYWxsLXdpbmRvd3MtZXZlbnQtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IEFzeW5jRXJyb3JIYW5kbGVyQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL2FzeW5jLWVycm9yLWhhbmRsZXItY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IHJlZ2lzdGVyQXN5bmNFdmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9hc3luYy1ldmVudHMtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IENhc2VJbnNlbnNpdGl2ZUZpbGVJbmRleENvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9jYXNlLWluc2Vuc2l0aXZlLWZpbGUtaW5kZXgtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IENvbXBvbmVudEV4IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL2NvbXBvbmVudC1leC50cyc7XG5leHBvcnQgeyBDb25zb2xlRGVidWdDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvY29uc29sZS1kZWJ1Zy1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgYXNEaXNwb3NhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL2Rpc3Bvc2FibGUtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IEVtYmVkRXh0ZW5zaW9uc0NvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9lbWJlZC1leHRlbnNpb25zLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBHZW5lcmF0ZU1hcmtkb3duTGlua0RlZmF1bHRQYXJhbXNDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvZ2VuZXJhdGUtbWFya2Rvd24tbGluay1kZWZhdWx0LXBhcmFtcy1jb21wb25lbnQudHMnO1xuZXhwb3J0IHtcbiAgQ2FsbGJhY2tMYXlvdXRSZWFkeUNvbXBvbmVudCxcbiAgTGF5b3V0UmVhZHlDb21wb25lbnRcbn0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL2xheW91dC1yZWFkeS1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgTWVudUV2ZW50UmVnaXN0cmFyQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL21lbnUtZXZlbnQtcmVnaXN0cmFyLWNvbXBvbmVudC50cyc7XG5leHBvcnQge1xuICBhcm91bmQsXG4gIGhhc1BhdGNoVG9rZW4sXG4gIE1vbmtleUFyb3VuZENvbXBvbmVudFxufSBmcm9tICcuL29ic2lkaWFuL2NvbXBvbmVudHMvbW9ua2V5LWFyb3VuZC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgUGx1Z2luQ29udGV4dENvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9wbHVnaW4tY29udGV4dC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgUGx1Z2luTm90aWNlQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL3BsdWdpbi1ub3RpY2UtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFBsdWdpblNldHRpbmdzQ29tcG9uZW50QmFzZSB9IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9wbHVnaW4tc2V0dGluZ3MtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFBsdWdpblNldHRpbmdzVGFiQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL3BsdWdpbi1zZXR0aW5ncy10YWItY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFJlZ2lzdHJ5Q29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9jb21wb25lbnRzL3JlZ2lzdHJ5LWNvbXBvbmVudC50cyc7XG5leHBvcnQge1xuICBFbXB0eUZvbGRlckJlaGF2aW9yLFxuICBSZW5hbWVEZWxldGVIYW5kbGVyQ29tcG9uZW50XG59IGZyb20gJy4vb2JzaWRpYW4vY29tcG9uZW50cy9yZW5hbWUtZGVsZXRlLWhhbmRsZXItY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IGdldERvbUV2ZW50c0hhbmRsZXJzQ29uc3RydWN0b3IgfSBmcm9tICcuL29ic2lkaWFuL2NvbnN0cnVjdG9ycy9nZXQtZG9tLWV2ZW50cy1oYW5kbGVycy1jb25zdHJ1Y3Rvci50cyc7XG5leHBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4vb2JzaWRpYW4vY3NzLWNsYXNzLnRzJztcbmV4cG9ydCB7IFBsdWdpbkRhdGFIYW5kbGVyIH0gZnJvbSAnLi9vYnNpZGlhbi9kYXRhLWhhbmRsZXIudHMnO1xuZXhwb3J0IHtcbiAgZml4VGl0bGUsXG4gIG1ha2VMaW5rV2l0aFBhdGhcbn0gZnJvbSAnLi9vYnNpZGlhbi9kYXRhdmlldy1saW5rLnRzJztcbmV4cG9ydCB7XG4gIGdldFJlbmRlcmVkQ29udGFpbmVyLFxuICBpbnNlcnRDb2RlQmxvY2ssXG4gIHJlbG9hZEN1cnJlbnRGaWxlQ2FjaGUsXG4gIHJlbmRlcklmcmFtZSxcbiAgcmVuZGVyUGFnaW5hdGVkTGlzdCxcbiAgcmVuZGVyUGFnaW5hdGVkVGFibGVcbn0gZnJvbSAnLi9vYnNpZGlhbi9kYXRhdmlldy50cyc7XG5leHBvcnQgeyBib290c3RyYXBEZW1vVmF1bHQgfSBmcm9tICcuL29ic2lkaWFuL2RlbW8tdmF1bHQtaGVscGVyLnRzJztcbmV4cG9ydCB7IG9wZW5EZW1vVmF1bHQgfSBmcm9tICcuL29ic2lkaWFuL2Rlc2t0b3AtZGVtby12YXVsdC1vcGVuZXIudHMnO1xuZXhwb3J0IHtcbiAgaG92ZXJFbGVtZW50LFxuICBtb3ZlTW91c2UsXG4gIHByZXNzS2V5LFxuICB0eXBlSW50b0VkaXRvcixcbiAgdW5ob3ZlckVsZW1lbnRcbn0gZnJvbSAnLi9vYnNpZGlhbi9kZXNrdG9wLXRydXN0ZWQtaW5wdXQudHMnO1xuZXhwb3J0IHsgUGx1Z2luRWRpdG9yRXh0ZW5zaW9uUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9lZGl0b3ItZXh0ZW5zaW9uLXJlZ2lzdHJhci50cyc7XG5leHBvcnQgeyBQbHVnaW5FZGl0b3JTdWdnZXN0UmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9lZGl0b3Itc3VnZ2VzdC1yZWdpc3RyYXIudHMnO1xuZXhwb3J0IHtcbiAgc3luY09wZW5FZGl0b3JCdWZmZXJzRm9yUGF0aCxcbiAgdG9nZ2xlRWRpdG9yUmVhZE9ubHlcbn0gZnJvbSAnLi9vYnNpZGlhbi9lZGl0b3IudHMnO1xuZXhwb3J0IHtcbiAgRXZlbnRSZWZEaXNwb3NhYmxlLFxuICBzdWJzY3JpYmVEaXNwb3NhYmxlRXZlbnQsXG4gIHN1YnNjcmliZUV2ZW50XG59IGZyb20gJy4vb2JzaWRpYW4vZXZlbnRzLnRzJztcbmV4cG9ydCB7IFBsdWdpbkV4dGVuc2lvbnNSZWdpc3RyYXIgfSBmcm9tICcuL29ic2lkaWFuL2V4dGVuc2lvbnMtcmVnaXN0cmFyLnRzJztcbmV4cG9ydCB7XG4gIGFwcGx5Q29udGVudENoYW5nZXMsXG4gIGFwcGx5RmlsZUNoYW5nZXMsXG4gIGlzQ2FudmFzQ2hhbmdlLFxuICBpc0NhbnZhc0ZpbGVOb2RlQ2hhbmdlLFxuICBpc0NhbnZhc1RleHROb2RlQ2hhbmdlLFxuICBpc0NvbnRlbnRDaGFuZ2UsXG4gIGlzRnJvbnRtYXR0ZXJDaGFuZ2UsXG4gIGlzRnJvbnRtYXR0ZXJDaGFuZ2VXaXRoT2Zmc2V0cyxcbiAgdG9Gcm9udG1hdHRlckNoYW5nZVdpdGhPZmZzZXRzXG59IGZyb20gJy4vb2JzaWRpYW4vZmlsZS1jaGFuZ2UudHMnO1xuZXhwb3J0IHtcbiAgYWRkQWxpYXMsXG4gIGRlbGV0ZUFsaWFzLFxuICBwcm9jZXNzRnJvbnRtYXR0ZXJcbn0gZnJvbSAnLi9vYnNpZGlhbi9maWxlLW1hbmFnZXIudHMnO1xuZXhwb3J0IHtcbiAgYXNBcnJheU9mRmlsZXMsXG4gIGFzQXJyYXlPZkZvbGRlcnMsXG4gIGFzRmlsZSxcbiAgYXNGaWxlT3JOdWxsLFxuICBhc0ZvbGRlcixcbiAgYXNGb2xkZXJPck51bGwsXG4gIEJBU0VfRklMRV9FWFRFTlNJT04sXG4gIENBTlZBU19GSUxFX0VYVEVOU0lPTixcbiAgY2hlY2tFeHRlbnNpb24sXG4gIGV4aXN0cyxcbiAgRmlsZVN5c3RlbVR5cGUsXG4gIGdldEFic3RyYWN0RmlsZSxcbiAgZ2V0QWJzdHJhY3RGaWxlT3JOdWxsLFxuICBnZXRGaWxlLFxuICBnZXRGaWxlT3JOdWxsLFxuICBnZXRGaWxlU3lzdGVtVHlwZSxcbiAgZ2V0Rm9sZGVyLFxuICBnZXRGb2xkZXJPck51bGwsXG4gIGdldE1hcmtkb3duRmlsZXMsXG4gIGdldE9yQ3JlYXRlRmlsZSxcbiAgZ2V0T3JDcmVhdGVGb2xkZXIsXG4gIGdldFBhdGgsXG4gIGlzQWJzdHJhY3RGaWxlLFxuICBpc0Jhc2VGaWxlLFxuICBpc0NhbnZhc0ZpbGUsXG4gIGlzRmlsZSxcbiAgaXNGb2xkZXIsXG4gIGlzTWFya2Rvd25GaWxlLFxuICBpc05vdGUsXG4gIE1BUktET1dOX0ZJTEVfRVhURU5TSU9OLFxuICB0cmltTWFya2Rvd25FeHRlbnNpb25cbn0gZnJvbSAnLi9vYnNpZGlhbi9maWxlLXN5c3RlbS50cyc7XG5leHBvcnQge1xuICBpc0Zyb250bWF0dGVyTGlua0NhY2hlV2l0aE9mZnNldHMsXG4gIHRvRnJvbnRtYXR0ZXJMaW5rQ2FjaGVXaXRoT2Zmc2V0c1xufSBmcm9tICcuL29ic2lkaWFuL2Zyb250bWF0dGVyLWxpbmstY2FjaGUtd2l0aC1vZmZzZXRzLnRzJztcbmV4cG9ydCB7XG4gIHBhcnNlRnJvbnRtYXR0ZXIsXG4gIHNldEZyb250bWF0dGVyXG59IGZyb20gJy4vb2JzaWRpYW4vZnJvbnRtYXR0ZXIudHMnO1xuZXhwb3J0IHsgUGx1Z2luSG92ZXJMaW5rU291cmNlUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9ob3Zlci1saW5rLXNvdXJjZS1yZWdpc3RyYXIudHMnO1xuZXhwb3J0IHsgYXBwZW5kQ29kZUJsb2NrIH0gZnJvbSAnLi9vYnNpZGlhbi9odG1sLWVsZW1lbnQudHMnO1xuZXhwb3J0IHtcbiAgREVGQVVMVF9OUyxcbiAgaW5pdEkxOE4sXG4gIHRcbn0gZnJvbSAnLi9vYnNpZGlhbi9pMThuL2kxOG4udHMnO1xuZXhwb3J0IHsgZW4gfSBmcm9tICcuL29ic2lkaWFuL2kxOG4vbG9jYWxlcy9lbi50cyc7XG5leHBvcnQge1xuICBERUZBVUxUX0xBTkdVQUdFLFxuICBkZWZhdWx0VHJhbnNsYXRpb25zTWFwXG59IGZyb20gJy4vb2JzaWRpYW4vaTE4bi9sb2NhbGVzL3RyYW5zbGF0aW9ucy1tYXAudHMnO1xuZXhwb3J0IHsgaXNJbk9ic2lkaWFuIH0gZnJvbSAnLi9vYnNpZGlhbi9pcy1pbi1vYnNpZGlhbi50cyc7XG5leHBvcnQge1xuICBjb252ZXJ0TGluayxcbiAgZWRpdEJhY2tsaW5rcyxcbiAgZWRpdExpbmtzLFxuICBlZGl0TGlua3NJbkNvbnRlbnQsXG4gIGV4dHJhY3RMaW5rRmlsZSxcbiAgZml4RnJvbnRtYXR0ZXJNYXJrZG93bkxpbmtzLFxuICBnZW5lcmF0ZU1hcmtkb3duTGluayxcbiAgZ2VuZXJhdGVSYXdNYXJrZG93bkxpbmssXG4gIGdldEdlbmVyYXRlTWFya2Rvd25MaW5rRGVmYXVsdFBhcmFtc0ZucyxcbiAgTGlua1BhdGhTdHlsZSxcbiAgTGlua1N0eWxlLFxuICBzaG91bGRSZXNldEFsaWFzLFxuICBzcGxpdFN1YnBhdGgsXG4gIHRlc3RBbmdsZUJyYWNrZXRzLFxuICB0ZXN0RW1iZWQsXG4gIHRlc3RMZWFkaW5nRG90LFxuICB0ZXN0TGVhZGluZ1NsYXNoLFxuICB0ZXN0V2lraWxpbmssXG4gIHVwZGF0ZUZpbGVVcmxMaW5rc0luQ29udGVudCxcbiAgdXBkYXRlRmlsZVVybExpbmtzSW5GaWxlLFxuICB1cGRhdGVMaW5rLFxuICB1cGRhdGVMaW5rc0luQ29udGVudCxcbiAgdXBkYXRlTGlua3NJbkZpbGVcbn0gZnJvbSAnLi9vYnNpZGlhbi9saW5rLnRzJztcbmV4cG9ydCB7IGludm9rZUFzeW5jQW5kTG9nIH0gZnJvbSAnLi9vYnNpZGlhbi9sb2dnZXIudHMnO1xuZXhwb3J0IHsgbG9vcCB9IGZyb20gJy4vb2JzaWRpYW4vbG9vcC50cyc7XG5leHBvcnQgeyBQbHVnaW5NYXJrZG93bkNvZGVCbG9ja1Byb2Nlc3NvclJlZ2lzdHJhciB9IGZyb20gJy4vb2JzaWRpYW4vbWFya2Rvd24tY29kZS1ibG9jay1wcm9jZXNzb3ItcmVnaXN0cmFyLnRzJztcbmV4cG9ydCB7XG4gIGdldENvZGVCbG9ja01hcmtkb3duSW5mbyxcbiAgaW5zZXJ0QWZ0ZXJDb2RlQmxvY2ssXG4gIGluc2VydEJlZm9yZUNvZGVCbG9jayxcbiAgcmVtb3ZlQ29kZUJsb2NrLFxuICByZXBsYWNlQ29kZUJsb2NrXG59IGZyb20gJy4vb2JzaWRpYW4vbWFya2Rvd24tY29kZS1ibG9jay1wcm9jZXNzb3IudHMnO1xuZXhwb3J0IHsgUGx1Z2luTWFya2Rvd25Qb3N0UHJvY2Vzc29yUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9tYXJrZG93bi1wb3N0LXByb2Nlc3Nvci1yZWdpc3RyYXIudHMnO1xuZXhwb3J0IHsgZ2V0RnVsbENvbnRlbnRIdG1sIH0gZnJvbSAnLi9vYnNpZGlhbi9tYXJrZG93bi12aWV3LnRzJztcbmV4cG9ydCB7XG4gIGZ1bGxSZW5kZXIsXG4gIG1hcmtkb3duVG9IdG1sLFxuICByZWdpc3RlckxpbmtIYW5kbGVycyxcbiAgcmVuZGVyRXh0ZXJuYWxMaW5rLFxuICByZW5kZXJJbnRlcm5hbExpbmtcbn0gZnJvbSAnLi9vYnNpZGlhbi9tYXJrZG93bi50cyc7XG5leHBvcnQge1xuICBDYWNoZWRNZXRhZGF0YUV4RmVhdHVyZSxcbiAgZW5zdXJlTWV0YWRhdGFDYWNoZVJlYWR5LFxuICBnZXRCYWNrbGlua3NGb3JGaWxlT3JQYXRoLFxuICBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZSxcbiAgZ2V0Q2FjaGVTYWZlLFxuICBnZXRGcm9udG1hdHRlclNhZmUsXG4gIGdldExpbmtzLFxuICBpc0NhY2hlZE1ldGFkYXRhRXgsXG4gIHBhcnNlTWV0YWRhdGEsXG4gIHJlZ2lzdGVyRmlsZUNhY2hlRm9yTm9uRXhpc3RpbmdGaWxlLFxuICByZWdpc3RlckZpbGVzLFxuICB1bnJlZ2lzdGVyRmlsZUNhY2hlRm9yTm9uRXhpc3RpbmdGaWxlLFxuICB1bnJlZ2lzdGVyRmlsZXNcbn0gZnJvbSAnLi9vYnNpZGlhbi9tZXRhZGF0YS1jYWNoZS50cyc7XG5leHBvcnQgeyBhbGVydCB9IGZyb20gJy4vb2JzaWRpYW4vbW9kYWxzL2FsZXJ0LnRzJztcbmV4cG9ydCB7IGNvbmZpcm0gfSBmcm9tICcuL29ic2lkaWFuL21vZGFscy9jb25maXJtLnRzJztcbmV4cG9ydCB7IE1pbmltaXphYmxlTW9kYWwgfSBmcm9tICcuL29ic2lkaWFuL21vZGFscy9taW5pbWl6YWJsZS1tb2RhbC50cyc7XG5leHBvcnQge1xuICBNb2RhbEJhc2UsXG4gIHNob3dNb2RhbFxufSBmcm9tICcuL29ic2lkaWFuL21vZGFscy9tb2RhbC50cyc7XG5leHBvcnQgeyBwcm9tcHQgfSBmcm9tICcuL29ic2lkaWFuL21vZGFscy9wcm9tcHQudHMnO1xuZXhwb3J0IHsgc2VsZWN0SXRlbSB9IGZyb20gJy4vb2JzaWRpYW4vbW9kYWxzL3NlbGVjdC1pdGVtLnRzJztcbmV4cG9ydCB7IHNlbGVjdE9wdGlvbiB9IGZyb20gJy4vb2JzaWRpYW4vbW9kYWxzL3NlbGVjdC1vcHRpb24udHMnO1xuZXhwb3J0IHsgU3VnZ2VzdE1vZGFsQ29tbWFuZEJ1aWxkZXIgfSBmcm9tICcuL29ic2lkaWFuL21vZGFscy9zdWdnZXN0LW1vZGFsLWNvbW1hbmQtYnVpbGRlci50cyc7XG5leHBvcnQgeyBQbHVnaW5PYnNpZGlhblByb3RvY29sSGFuZGxlclJlZ2lzdHJhciB9IGZyb20gJy4vb2JzaWRpYW4vb2JzaWRpYW4tcHJvdG9jb2wtaGFuZGxlci1yZWdpc3RyYXIudHMnO1xuZXhwb3J0IHtcbiAgZ2V0TmV3TGlua0Zvcm1hdCxcbiAgc2hvdWxkVXNlV2lraWxpbmtzXG59IGZyb20gJy4vb2JzaWRpYW4vb2JzaWRpYW4tc2V0dGluZ3MudHMnO1xuZXhwb3J0IHtcbiAgZW5jb2RlVXJsLFxuICBlc2NhcGVBbGlhcyxcbiAgaXNQYXJzZUxpbmtGcm9udG1hdHRlclJlZmVyZW5jZSxcbiAgaXNQYXJzZUxpbmtSZWZlcmVuY2UsXG4gIHBhcnNlRnJvbnRtYXR0ZXJMaW5rcyxcbiAgcGFyc2VMaW5rLFxuICBwYXJzZUxpbmtzLFxuICB0b1BhcnNlTGlua1JlZmVyZW5jZSxcbiAgdW5lc2NhcGVBbGlhc1xufSBmcm9tICcuL29ic2lkaWFuL3BhcnNlLWxpbmsudHMnO1xuZXhwb3J0IHsgUGF0aFNldHRpbmdzIH0gZnJvbSAnLi9vYnNpZGlhbi9wYXRoLXNldHRpbmdzLnRzJztcbmV4cG9ydCB7IHByaW50VG9QZGYgfSBmcm9tICcuL29ic2lkaWFuL3BkZi50cyc7XG5leHBvcnQgeyBQbHVnaW5DbGlIYW5kbGVyUmVnaXN0cmFyIH0gZnJvbSAnLi9vYnNpZGlhbi9wbHVnaW4tY2xpLWhhbmRsZXItcmVnaXN0cmFyLnRzJztcbmV4cG9ydCB7IE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzIH0gZnJvbSAnLi9vYnNpZGlhbi9wbHVnaW4vb2JzaWRpYW4tcGx1Z2luLXJlcG8tcGF0aHMudHMnO1xuZXhwb3J0IHtcbiAgYWRkUGx1Z2luQ3NzQ2xhc3NlcyxcbiAgaW5pdERlYnVnQ29udHJvbGxlcixcbiAgaW5pdFBsdWdpbkNvbnRleHRcbn0gZnJvbSAnLi9vYnNpZGlhbi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuZXhwb3J0IHsgUGx1Z2luRXZlbnRTb3VyY2VJbXBsIH0gZnJvbSAnLi9vYnNpZGlhbi9wbHVnaW4vcGx1Z2luLWV2ZW50LXNvdXJjZS50cyc7XG5leHBvcnQge1xuICBQbHVnaW5TZXR0aW5nc1RhYkJhc2UsXG4gIFNBVkVfVE9fRklMRV9DT05URVhUXG59IGZyb20gJy4vb2JzaWRpYW4vcGx1Z2luL3BsdWdpbi1zZXR0aW5ncy10YWIudHMnO1xuZXhwb3J0IHtcbiAgUGx1Z2luQmFzZSxcbiAgcmVsb2FkUGx1Z2luLFxuICBzaG93RXJyb3JBbmREaXNhYmxlUGx1Z2luXG59IGZyb20gJy4vb2JzaWRpYW4vcGx1Z2luL3BsdWdpbi50cyc7XG5leHBvcnQge1xuICBhZGRUb1F1ZXVlLFxuICBhZGRUb1F1ZXVlQW5kV2FpdCxcbiAgZmx1c2hRdWV1ZVxufSBmcm9tICcuL29ic2lkaWFuL3F1ZXVlLnRzJztcbmV4cG9ydCB7XG4gIEFwcENvbnRleHQsXG4gIHVzZUFwcFxufSBmcm9tICcuL29ic2lkaWFuL3JlYWN0L2FwcC1jb250ZXh0LnRzJztcbmV4cG9ydCB7XG4gIGlzQ2FudmFzRmlsZU5vZGVSZWZlcmVuY2UsXG4gIGlzQ2FudmFzUmVmZXJlbmNlLFxuICBpc0NhbnZhc1RleHROb2RlUmVmZXJlbmNlLFxuICByZWZlcmVuY2VUb0ZpbGVDaGFuZ2UsXG4gIHNvcnRSZWZlcmVuY2VzXG59IGZyb20gJy4vb2JzaWRpYW4vcmVmZXJlbmNlLnRzJztcbmV4cG9ydCB7XG4gIGlzUmVzb3VyY2VMb2NrZWRGb3JQYXRoLFxuICBsb2NrUmVzb3VyY2VGb3JQYXRoLFxuICByZXF1ZXN0UmVzb3VyY2VVbmxvY2tGb3JQYXRoLFxuICBSZXNvdXJjZUxvY2tDb21wb25lbnQsXG4gIFJlc291cmNlTG9ja2VkRXJyb3IsXG4gIHVubG9ja1Jlc291cmNlRm9yUGF0aFxufSBmcm9tICcuL29ic2lkaWFuL3Jlc291cmNlLWxvY2sudHMnO1xuZXhwb3J0IHsgcmVsYXRpdmVQYXRoVG9SZXNvdXJjZVVybCB9IGZyb20gJy4vb2JzaWRpYW4vcmVzb3VyY2UtdXJsLnRzJztcbmV4cG9ydCB7IFBsdWdpblJpYmJvbkljb25SZWdpc3RyYXIgfSBmcm9tICcuL29ic2lkaWFuL3JpYmJvbi1pY29uLXJlZ2lzdHJhci50cyc7XG5leHBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL2NoZWNrYm94LWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBDb2RlSGlnaGxpZ2h0ZXJDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9jb2RlLWhpZ2hsaWdodGVyLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBEYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvZGF0ZS1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgRGF0ZVRpbWVDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9kYXRlLXRpbWUtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IEVtYWlsQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvZW1haWwtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IEZpbGVDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9maWxlLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBNb250aENvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL21vbnRoLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBNdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvbXVsdGlwbGUtZHJvcGRvd24tY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IE11bHRpcGxlRW1haWxDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS1lbWFpbC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgTXVsdGlwbGVGaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvbXVsdGlwbGUtZmlsZS1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgTXVsdGlwbGVUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvbXVsdGlwbGUtdGV4dC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgTnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvbnVtYmVyLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL3Bhc3N3b3JkLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBlbnN1cmVXcmFwcGVkIH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvc2V0dGluZy1jb21wb25lbnQtd3JhcHBlci50cyc7XG5leHBvcnQgeyBUZWxlcGhvbmVDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90ZWxlcGhvbmUtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IGdldFRleHRCYXNlZENvbXBvbmVudFZhbHVlIH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvdGV4dC1iYXNlZC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgVGltZUNvbXBvbmVudCB9IGZyb20gJy4vb2JzaWRpYW4vc2V0dGluZy1jb21wb25lbnRzL3RpbWUtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFRyaVN0YXRlQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90cmktc3RhdGUtY2hlY2tib3gtY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFR5cGVkRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90eXBlZC1kcm9wZG93bi1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgVHlwZWRNdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvdHlwZWQtbXVsdGlwbGUtZHJvcGRvd24tY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFR5cGVkUmFuZ2VUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvdHlwZWQtcmFuZ2UtdGV4dC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgVHlwZWRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvdHlwZWQtdGV4dC1jb21wb25lbnQudHMnO1xuZXhwb3J0IHsgVXJsQ29tcG9uZW50IH0gZnJvbSAnLi9vYnNpZGlhbi9zZXR0aW5nLWNvbXBvbmVudHMvdXJsLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBnZXRWYWxpZGF0b3JDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmV4cG9ydCB7IFdlZWtDb21wb25lbnQgfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy93ZWVrLWNvbXBvbmVudC50cyc7XG5leHBvcnQgeyBTZXR0aW5nRXggfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctZXgudHMnO1xuZXhwb3J0IHsgU2V0dGluZ0dyb3VwRXggfSBmcm9tICcuL29ic2lkaWFuL3NldHRpbmctZ3JvdXAtZXgudHMnO1xuZXhwb3J0IHsgUGx1Z2luU3RhdHVzQmFySXRlbVJlZ2lzdHJhciB9IGZyb20gJy4vb2JzaWRpYW4vc3RhdHVzLWJhci1pdGVtLXJlZ2lzdHJhci50cyc7XG5leHBvcnQge1xuICBnZXRPc0FuZE9ic2lkaWFuVW5zYWZlUGF0aENoYXJzUmVnRXhwLFxuICBnZXRPc1Vuc2FmZVBhdGhDaGFyc1JlZ0V4cCxcbiAgaXNWYWxpZGF0aW9uTWVzc2FnZUhvbGRlcixcbiAgT0JTSURJQU5fVU5TQUZFX0ZJTEVOQU1FX0NIQVJTLFxuICBVTklYX1VOU0FGRV9QQVRIX0NIQVJTLFxuICBXSU5ET1dTX1VOU0FGRV9QQVRIX0NIQVJTXG59IGZyb20gJy4vb2JzaWRpYW4vdmFsaWRhdGlvbi50cyc7XG5leHBvcnQgeyBkZWxldGVJZk5vdFVzZWQgfSBmcm9tICcuL29ic2lkaWFuL3ZhdWx0LWRlbGV0ZS50cyc7XG5leHBvcnQgeyBWYXVsdFRyYW5zYWN0aW9uIH0gZnJvbSAnLi9vYnNpZGlhbi92YXVsdC10cmFuc2FjdGlvbi50cyc7XG5leHBvcnQge1xuICBjb3B5U2FmZSxcbiAgY3JlYXRlRm9sZGVyU2FmZSxcbiAgY3JlYXRlVGVtcEZpbGUsXG4gIGNyZWF0ZVRlbXBGb2xkZXIsXG4gIGRlbGV0ZUVtcHR5Rm9sZGVyLFxuICBkZWxldGVFbXB0eUZvbGRlckhpZXJhcmNoeSxcbiAgZ2V0QWJzdHJhY3RGaWxlUGF0aFNhZmUsXG4gIGdldEF2YWlsYWJsZVBhdGgsXG4gIGdldEZpbGVQYXRoU2FmZSxcbiAgZ2V0Rm9sZGVyUGF0aFNhZmUsXG4gIGdldE1hcmtkb3duRmlsZXNTb3J0ZWQsXG4gIGdldE5vdGVGaWxlc1NvcnRlZCxcbiAgZ2V0T3JDcmVhdGVBYnN0cmFjdEZpbGVTYWZlLFxuICBnZXRPckNyZWF0ZUZpbGVTYWZlLFxuICBnZXRPckNyZWF0ZUZvbGRlclNhZmUsXG4gIGdldFNhZmVSZW5hbWVQYXRoLFxuICBpbnZva2VXaXRoRmlsZVN5c3RlbUxvY2ssXG4gIGlzQ2hpbGQsXG4gIGlzQ2hpbGRPclNlbGYsXG4gIGlzRW1wdHlGb2xkZXIsXG4gIGxpc3RTYWZlLFxuICBwcm9jZXNzLFxuICByZWFkU2FmZSxcbiAgcmVuYW1lU2FmZSxcbiAgc2F2ZU5vdGUsXG4gIHRyYXNoU2FmZVxufSBmcm9tICcuL29ic2lkaWFuL3ZhdWx0LnRzJztcbmV4cG9ydCB7IFBsdWdpblZpZXdSZWdpc3RyYXIgfSBmcm9tICcuL29ic2lkaWFuL3ZpZXctcmVnaXN0cmFyLnRzJztcbmV4cG9ydCB7XG4gIGVuc3VyZUxheW91dFJlYWR5LFxuICBnZXRBbGxDb250YWluZXJzLFxuICBnZXRBbGxEb21XaW5kb3dzXG59IGZyb20gJy4vb2JzaWRpYW4vd29ya3NwYWNlLnRzJztcbmV4cG9ydCB7XG4gIGJhc2VuYW1lLFxuICBkZWxpbWl0ZXIsXG4gIGRpcm5hbWUsXG4gIGV4dG5hbWUsXG4gIGZvcm1hdCxcbiAgZ2V0RmlsZU5hbWUsXG4gIGdldEZvbGRlck5hbWUsXG4gIGlzQWJzb2x1dGUsXG4gIGpvaW4sXG4gIG1ha2VGaWxlTmFtZSxcbiAgbm9ybWFsaXplSWZSZWxhdGl2ZSxcbiAgbm9ybWFsaXplUGF0aCxcbiAgcGFyc2UsXG4gIHBvc2l4LFxuICByZWxhdGl2ZSxcbiAgcmVzb2x2ZSxcbiAgc2VwLFxuICB0b1Bvc2l4QnVmZmVyLFxuICB0b1Bvc2l4UGF0aFxufSBmcm9tICcuL3BhdGgudHMnO1xuZXhwb3J0IHtcbiAgQUxXQVlTX01BVENIX1JFR19FWFAsXG4gIGVzY2FwZVJlZ0V4cCxcbiAgZ2V0TWFuZGF0b3J5TmFtZWRHcm91cCxcbiAgZ2V0T3B0aW9uYWxOYW1lZEdyb3VwLFxuICBpc1ZhbGlkUmVnRXhwLFxuICBORVZFUl9NQVRDSF9SRUdfRVhQLFxuICBvbmVPZixcbiAgUmVnRXhwTWVyZ2VGbGFnc0NvbmZsaWN0U3RyYXRlZ3lcbn0gZnJvbSAnLi9yZWctZXhwLnRzJztcbmV4cG9ydCB7XG4gIGJ5cGFzc1N0cmljdFByb3h5LFxuICBzdHJpY3RQcm94eVxufSBmcm9tICcuL3N0cmljdC1wcm94eS50cyc7XG5leHBvcnQge1xuICBFTVBUWSxcbiAgZW5zdXJlRW5kc1dpdGgsXG4gIGVuc3VyZUxmRW5kaW5ncyxcbiAgZW5zdXJlU3RhcnRzV2l0aCxcbiAgZXNjYXBlLFxuICBnZXRMZk5vcm1hbGl6ZWRPZmZzZXRUb09yaWdpbmFsT2Zmc2V0TWFwcGVyLFxuICBoYXNTaW5nbGVPY2N1cnJlbmNlLFxuICBpbmRlbnQsXG4gIGluc2VydEF0LFxuICBtYWtlVmFsaWRWYXJpYWJsZU5hbWUsXG4gIG5vcm1hbGl6ZVN0cmluZyxcbiAgcmVwbGFjZSxcbiAgcmVwbGFjZUFsbCxcbiAgcmVwbGFjZUFsbEFzeW5jLFxuICB0cmltRW5kLFxuICB0cmltU3RhcnQsXG4gIHVuZXNjYXBlLFxuICB1bmluZGVudFxufSBmcm9tICcuL3N0cmluZy50cyc7XG5leHBvcnQgeyBEYXRlVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy9kYXRlLXRyYW5zZm9ybWVyLnRzJztcbmV4cG9ydCB7IER1cmF0aW9uVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy9kdXJhdGlvbi10cmFuc2Zvcm1lci50cyc7XG5leHBvcnQgeyBHcm91cFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvZ3JvdXAtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgTWFwVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy9tYXAtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgU2V0VHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy9zZXQtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgU2tpcFByaXZhdGVQcm9wZXJ0eVRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvc2tpcC1wcml2YXRlLXByb3BlcnR5LXRyYW5zZm9ybWVyLnRzJztcbmV4cG9ydCB7IFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgVHdvV2F5TWFwVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVycy90d28td2F5LW1hcC10cmFuc2Zvcm1lci50cyc7XG5leHBvcnQgeyBUeXBlZFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvdHlwZWQtdHJhbnNmb3JtZXIudHMnO1xuZXhwb3J0IHsgVHdvV2F5TWFwIH0gZnJvbSAnLi90d28td2F5LW1hcC50cyc7XG5leHBvcnQge1xuICBhc3NlcnQsXG4gIGFzc2VydEdlbmVyaWNPYmplY3QsXG4gIGFzc2VydE5ldmVyLFxuICBhc3NlcnROb25OdWxsYWJsZSxcbiAgZW5zdXJlR2VuZXJpY09iamVjdCxcbiAgZW5zdXJlTm9uTnVsbGFibGVcbn0gZnJvbSAnLi90eXBlLWd1YXJkcy50cyc7XG5leHBvcnQgeyBUeXBlQXNzZXJ0ZXIgfSBmcm9tICcuL3R5cGUudHMnO1xuZXhwb3J0IHtcbiAgaXNGaWxlVXJsLFxuICBpc1VybCxcbiAgbm9ybWFsaXplRmlsZVVybFxufSBmcm9tICcuL3VybC50cyc7XG5leHBvcnQgeyByZXNvbHZlVmFsdWUgfSBmcm9tICcuL3ZhbHVlLXByb3ZpZGVyLnRzJztcbmV4cG9ydCB7IFZhbHVlV3JhcHBlciB9IGZyb20gJy4vdmFsdWUtd3JhcHBlci50cyc7XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFFQSw4QkFPTztBQUNQLG1CQUlPO0FBQ1AsMEJBTU87QUFDUCxtQkFnQ087QUFDUCxvQkFBdUI7QUFDdkIsa0JBTU87QUFDUCxtQkFPTztBQUNQLHdCQWdCTztBQUNQLGtCQUdPO0FBQ1AsbUJBZU87QUFDUCxzQkFTTztBQUNQLG9DQUdPO0FBQ1AsMEJBYU87QUFDUCxxQkFHTztBQUNQLDBCQWtCTztBQUNQLHNDQUdPO0FBQ1Asa0NBQXNDO0FBQ3RDLGlCQUF1QjtBQUN2QiwrQkFHTztBQUNQLDZCQU9PO0FBQ1Asc0JBSU87QUFDUCxrQ0FBeUM7QUFDekMscUJBSU87QUFDUCx5Q0FLTztBQUNQLGdDQUFzQztBQUN0QywyQ0FBMkM7QUFDM0MsdUNBQXdDO0FBQ3hDLDZCQUErQjtBQUMvQixvQ0FBcUM7QUFDckMsa0NBQW1DO0FBQ25DLG9DQUFxQztBQUNyQyxvQ0FBcUM7QUFDckMsNkNBQTRDO0FBQzVDLDJDQUEyQztBQUMzQyxnREFBK0M7QUFDL0MsK0JBQXVDO0FBQ3ZDLCtCQVdPO0FBQ1Asb0NBQXFDO0FBQ3JDLHlDQUF5QztBQUN6QywyQ0FBMkM7QUFDM0Msb0NBQW1DO0FBQ25DLG1EQUFrRDtBQUNsRCwwQkFBNEI7QUFDNUIscUNBQXNDO0FBQ3RDLGtDQUFzQztBQUN0Qyx3Q0FBeUM7QUFDekMsNkRBQTJEO0FBQzNELG9DQUdPO0FBQ1AsNENBQTRDO0FBQzVDLHFDQUlPO0FBQ1Asc0NBQXVDO0FBQ3ZDLHFDQUFzQztBQUN0Qyx1Q0FBNEM7QUFDNUMsMkNBQTJDO0FBQzNDLGdDQUFrQztBQUNsQyw2Q0FHTztBQUNQLGlEQUFnRDtBQUNoRCx1QkFBeUI7QUFDekIsMEJBQWtDO0FBQ2xDLDJCQUdPO0FBQ1Asc0JBT087QUFDUCwrQkFBbUM7QUFDbkMsdUNBQThCO0FBQzlCLG1DQU1PO0FBQ1Asd0NBQStDO0FBQy9DLHNDQUE2QztBQUM3QyxvQkFHTztBQUNQLG9CQUlPO0FBQ1Asa0NBQTBDO0FBQzFDLHlCQVVPO0FBQ1AsMEJBSU87QUFDUCx5QkFnQ087QUFDUCxpREFHTztBQUNQLHlCQUdPO0FBQ1AseUNBQStDO0FBQy9DLElBQUFBLHVCQUFnQztBQUNoQyxrQkFJTztBQUNQLGdCQUFtQjtBQUNuQiw4QkFHTztBQUNQLDRCQUE2QjtBQUM3QixrQkF3Qk87QUFDUCxvQkFBa0M7QUFDbEMsa0JBQXFCO0FBQ3JCLHFEQUEwRDtBQUMxRCwyQ0FNTztBQUNQLCtDQUFxRDtBQUNyRCwyQkFBbUM7QUFDbkMsc0JBTU87QUFDUCw0QkFjTztBQUNQLG1CQUFzQjtBQUN0QixxQkFBd0I7QUFDeEIsK0JBQWlDO0FBQ2pDLG1CQUdPO0FBQ1Asb0JBQXVCO0FBQ3ZCLHlCQUEyQjtBQUMzQiwyQkFBNkI7QUFDN0IsMkNBQTJDO0FBQzNDLGlEQUF1RDtBQUN2RCwrQkFHTztBQUNQLHdCQVVPO0FBQ1AsMkJBQTZCO0FBQzdCLGlCQUEyQjtBQUMzQiwwQ0FBMEM7QUFDMUMsd0NBQXdDO0FBQ3hDLDRCQUlPO0FBQ1AsaUNBQXNDO0FBQ3RDLGlDQUdPO0FBQ1Asb0JBSU87QUFDUCxtQkFJTztBQUNQLHlCQUdPO0FBQ1AsdUJBTU87QUFDUCwyQkFPTztBQUNQLDBCQUEwQztBQUMxQyxtQ0FBMEM7QUFDMUMsZ0NBQWtDO0FBQ2xDLHdDQUF5QztBQUN6Qyw0QkFBOEI7QUFDOUIsaUNBQWtDO0FBQ2xDLDZCQUErQjtBQUMvQiw0QkFBOEI7QUFDOUIsNkJBQStCO0FBQy9CLHlDQUEwQztBQUMxQyxzQ0FBdUM7QUFDdkMscUNBQXNDO0FBQ3RDLHFDQUFzQztBQUN0Qyw4QkFBZ0M7QUFDaEMsZ0NBQWtDO0FBQ2xDLHVDQUE4QjtBQUM5QixpQ0FBbUM7QUFDbkMsa0NBQTJDO0FBQzNDLDRCQUE4QjtBQUM5QiwwQ0FBMEM7QUFDMUMsc0NBQXVDO0FBQ3ZDLCtDQUErQztBQUMvQyx3Q0FBd0M7QUFDeEMsa0NBQW1DO0FBQ25DLDJCQUE2QjtBQUM3QixpQ0FBc0M7QUFDdEMsNEJBQThCO0FBQzlCLHdCQUEwQjtBQUMxQiw4QkFBK0I7QUFDL0IsdUNBQTZDO0FBQzdDLHdCQU9PO0FBQ1AsMEJBQWdDO0FBQ2hDLCtCQUFpQztBQUNqQyxtQkEyQk87QUFDUCw0QkFBb0M7QUFDcEMsdUJBSU87QUFDUCxrQkFvQk87QUFDUCxxQkFTTztBQUNQLDBCQUdPO0FBQ1Asb0JBbUJPO0FBQ1AsOEJBQWdDO0FBQ2hDLGtDQUFvQztBQUNwQywrQkFBaUM7QUFDakMsNkJBQStCO0FBQy9CLDZCQUErQjtBQUMvQiwrQ0FBK0M7QUFDL0MseUJBQTRCO0FBQzVCLHFDQUFxQztBQUNyQywrQkFBaUM7QUFDakMseUJBQTBCO0FBQzFCLHlCQU9PO0FBQ1Asa0JBQTZCO0FBQzdCLGlCQUlPO0FBQ1AsNEJBQTZCO0FBQzdCLDJCQUE2QjsiLAogICJuYW1lcyI6IFsiaW1wb3J0X2h0bWxfZWxlbWVudCJdCn0K
@@ -23,6 +23,7 @@ export { renderBacklinksTable, renderDelayedBacklinks, renderDelayedBacklinksFor
23
23
  export { PluginBasesViewRegistrar } from './obsidian/bases-view-registrar.cjs';
24
24
  export { CalloutMode, renderCallout, wrapForCallout } from './obsidian/callout.cjs';
25
25
  export { CaseInsensitiveFileIndex, getCaseInsensitiveFileIndex, setCaseInsensitiveFileIndex, unsetCaseInsensitiveFileIndex } from './obsidian/case-insensitive-file-index.cjs';
26
+ export { createCodeBlockRegExp } from './obsidian/code-block-reg-exp.cjs';
26
27
  export { AbstractFileCommandHandler } from './obsidian/command-handlers/abstract-file-command-handler.cjs';
27
28
  export { CommandHandlerComponent } from './obsidian/command-handlers/command-handler-component.cjs';
28
29
  export { CommandHandler } from './obsidian/command-handlers/command-handler.cjs';
@@ -34,7 +35,7 @@ export { OpenDemoVaultCommandHandler } from './obsidian/command-handlers/open-de
34
35
  export { OpenSettingsCommandHandler } from './obsidian/command-handlers/open-settings-command-handler.cjs';
35
36
  export { UnlockActiveNoteCommandHandler } from './obsidian/command-handlers/unlock-active-note-command-handler.cjs';
36
37
  export { PluginCommandRegistrar } from './obsidian/command-registrar.cjs';
37
- export { disableCommunityPlugin, enableCommunityPlugin, getCommunityPluginRepo, getLatestReleaseVersion, installCommunityPlugin, searchCommunityPlugins, toggleEnableCommunityPlugin, toggleInstallCommunityPlugin, uninstallCommunityPlugin } from './obsidian/community-plugins.cjs';
38
+ export { configureCommunityPlugin, disableCommunityPlugin, enableCommunityPlugin, getCommunityPluginRepo, getLatestReleaseVersion, installCommunityPlugin, searchCommunityPlugins, toggleEnableCommunityPlugin, toggleInstallCommunityPlugin, uninstallCommunityPlugin } from './obsidian/community-plugins.cjs';
38
39
  export { AbortSignalComponent } from './obsidian/components/abort-signal-component.cjs';
39
40
  export { AllWindowsEventComponent } from './obsidian/components/all-windows-event-component.cjs';
40
41
  export { AsyncErrorHandlerComponent } from './obsidian/components/async-error-handler-component.cjs';
@@ -59,6 +60,7 @@ export { CssClass } from './obsidian/css-class.cjs';
59
60
  export { PluginDataHandler } from './obsidian/data-handler.cjs';
60
61
  export { fixTitle, makeLinkWithPath } from './obsidian/dataview-link.cjs';
61
62
  export { getRenderedContainer, insertCodeBlock, reloadCurrentFileCache, renderIframe, renderPaginatedList, renderPaginatedTable } from './obsidian/dataview.cjs';
63
+ export { bootstrapDemoVault } from './obsidian/demo-vault-helper.cjs';
62
64
  export { openDemoVault } from './obsidian/desktop-demo-vault-opener.cjs';
63
65
  export { hoverElement, moveMouse, pressKey, typeIntoEditor, unhoverElement } from './obsidian/desktop-trusted-input.cjs';
64
66
  export { PluginEditorExtensionRegistrar } from './obsidian/editor-extension-registrar.cjs';
@@ -146,7 +148,7 @@ export { copySafe, createFolderSafe, createTempFile, createTempFolder, deleteEmp
146
148
  export { PluginViewRegistrar } from './obsidian/view-registrar.cjs';
147
149
  export { ensureLayoutReady, getAllContainers, getAllDomWindows } from './obsidian/workspace.cjs';
148
150
  export { basename, delimiter, dirname, extname, format, getFileName, getFolderName, isAbsolute, join, makeFileName, normalizeIfRelative, normalizePath, parse, posix, relative, resolve, sep, toPosixBuffer, toPosixPath } from './path.cjs';
149
- export { ALWAYS_MATCH_REG_EXP, escapeRegExp, isValidRegExp, NEVER_MATCH_REG_EXP, oneOf, RegExpMergeFlagsConflictStrategy } from './reg-exp.cjs';
151
+ export { ALWAYS_MATCH_REG_EXP, escapeRegExp, getMandatoryNamedGroup, getOptionalNamedGroup, isValidRegExp, NEVER_MATCH_REG_EXP, oneOf, RegExpMergeFlagsConflictStrategy } from './reg-exp.cjs';
150
152
  export { bypassStrictProxy, strictProxy } from './strict-proxy.cjs';
151
153
  export { EMPTY, ensureEndsWith, ensureLfEndings, ensureStartsWith, escape, getLfNormalizedOffsetToOriginalOffsetMapper, hasSingleOccurrence, indent, insertAt, makeValidVariableName, normalizeString, replace, replaceAll, replaceAllAsync, trimEnd, trimStart, unescape, unindent } from './string.cjs';
152
154
  export { DateTransformer } from './transformers/date-transformer.cjs';
@@ -129,7 +129,7 @@ __export(generated_during_build_exports, {
129
129
  LIBRARY_VERSION: () => LIBRARY_VERSION
130
130
  });
131
131
  module.exports = __toCommonJS(generated_during_build_exports);
132
- const LIBRARY_VERSION = "87.0.2";
132
+ const LIBRARY_VERSION = "87.0.3";
133
133
  const LIBRARY_STYLES = ".obsidian-dev-utils.code-highlighter-component textarea, .obsidian-dev-utils.code-highlighter-component pre, .obsidian-dev-utils.code-highlighter-component code {\n font-family: var(--font-monospace);\n line-height: var(--line-height-normal);\n margin: 0;\n}\n.obsidian-dev-utils.code-highlighter-component textarea, .obsidian-dev-utils.code-highlighter-component code {\n font-size: var(--code-size);\n}\n.obsidian-dev-utils.code-highlighter-component textarea {\n background: transparent;\n color: transparent;\n z-index: 2;\n width: 20em;\n height: 10em;\n}\n.obsidian-dev-utils.code-highlighter-component pre {\n position: absolute;\n pointer-events: none;\n border: var(--input-border-width) solid transparent;\n overflow: auto;\n inset: 0;\n padding: var(--size-4-1) var(--size-4-2);\n z-index: 1;\n}\n.obsidian-dev-utils.code-highlighter-component pre::after {\n content: \"\";\n display: block;\n height: var(--bottom-gap, 0);\n}\n.obsidian-dev-utils.code-highlighter-component pre.is-placeholder {\n opacity: 0.6;\n}\n.obsidian-dev-utils.code-highlighter-component code {\n display: block;\n padding: 0;\n}\n\n.obsidian-dev-utils-lock-indicator {\n display: inline-flex;\n align-items: center;\n color: var(--text-muted);\n}\n.obsidian-dev-utils-lock-indicator .svg-icon {\n width: var(--icon-s);\n height: var(--icon-s);\n}\n\n@keyframes obsidian-dev-utils-lock-indicator-flash {\n 40% {\n color: var(--text-error);\n transform: scale(1.4);\n }\n}\n.obsidian-dev-utils-lock-indicator-flash {\n animation: obsidian-dev-utils-lock-indicator-flash 0.35s ease-in-out;\n}\n\n.obsidian-dev-utils input[type=url] {\n height: var(--input-height);\n}\n.obsidian-dev-utils input[type=month],\n.obsidian-dev-utils input[type=tel],\n.obsidian-dev-utils input[type=time],\n.obsidian-dev-utils input[type=url],\n.obsidian-dev-utils input[type=week] {\n -webkit-app-region: no-drag;\n background: var(--background-modifier-form-field);\n border: var(--input-border-width) solid var(--background-modifier-border);\n color: var(--text-normal);\n font-family: inherit;\n padding: var(--size-4-1) var(--size-4-2);\n font-size: var(--font-ui-small);\n border-radius: var(--input-radius);\n outline: none;\n}\n@media (hover: hover) {\n .obsidian-dev-utils input[type=month]:hover,\n .obsidian-dev-utils input[type=tel]:hover,\n .obsidian-dev-utils input[type=time]:hover,\n .obsidian-dev-utils input[type=url]:hover,\n .obsidian-dev-utils input[type=week]:hover {\n border-color: var(--background-modifier-border-hover);\n transition: box-shadow 0.15s ease-in-out, border 0.15s ease-in-out;\n }\n}\n.obsidian-dev-utils input[type=month]:active, .obsidian-dev-utils input[type=month]:focus,\n.obsidian-dev-utils input[type=tel]:active,\n.obsidian-dev-utils input[type=tel]:focus,\n.obsidian-dev-utils input[type=time]:active,\n.obsidian-dev-utils input[type=time]:focus,\n.obsidian-dev-utils input[type=url]:active,\n.obsidian-dev-utils input[type=url]:focus,\n.obsidian-dev-utils input[type=week]:active,\n.obsidian-dev-utils input[type=week]:focus {\n border-color: var(--background-modifier-border-focus);\n transition: box-shadow 0.15s ease-in-out, border 0.15s ease-in-out;\n}\n.obsidian-dev-utils input[type=month]:active, .obsidian-dev-utils input[type=month]:focus, .obsidian-dev-utils input[type=month]:focus-visible,\n.obsidian-dev-utils input[type=tel]:active,\n.obsidian-dev-utils input[type=tel]:focus,\n.obsidian-dev-utils input[type=tel]:focus-visible,\n.obsidian-dev-utils input[type=time]:active,\n.obsidian-dev-utils input[type=time]:focus,\n.obsidian-dev-utils input[type=time]:focus-visible,\n.obsidian-dev-utils input[type=url]:active,\n.obsidian-dev-utils input[type=url]:focus,\n.obsidian-dev-utils input[type=url]:focus-visible,\n.obsidian-dev-utils input[type=week]:active,\n.obsidian-dev-utils input[type=week]:focus,\n.obsidian-dev-utils input[type=week]:focus-visible {\n box-shadow: 0 0 0 2px var(--background-modifier-border-focus);\n}\n.obsidian-dev-utils input[type=month]::placeholder,\n.obsidian-dev-utils input[type=tel]::placeholder,\n.obsidian-dev-utils input[type=time]::placeholder,\n.obsidian-dev-utils input[type=url]::placeholder,\n.obsidian-dev-utils input[type=week]::placeholder {\n color: var(--text-faint);\n}\n.mod-rtl input[type=month],\n.mod-rtl input[type=time],\n.mod-rtl input[type=week],\n.is-rtl input[type=month],\n.is-rtl input[type=time],\n.is-rtl input[type=week],\n.rtl input[type=month],\n.rtl input[type=time],\n.rtl input[type=week] {\n direction: rtl;\n}\n.mod-rtl input[type=month]::-webkit-calendar-picker-indicator,\n.mod-rtl input[type=time]::-webkit-calendar-picker-indicator,\n.mod-rtl input[type=week]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=month]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=time]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=week]::-webkit-calendar-picker-indicator,\n.rtl input[type=month]::-webkit-calendar-picker-indicator,\n.rtl input[type=time]::-webkit-calendar-picker-indicator,\n.rtl input[type=week]::-webkit-calendar-picker-indicator {\n right: var(--size-4-1);\n left: auto;\n}\n\n.obsidian-dev-utils input[type=month],\n.obsidian-dev-utils input[type=time],\n.obsidian-dev-utils input[type=week] {\n font-variant-numeric: tabular-nums;\n position: relative;\n}\n.obsidian-dev-utils input[type=month]::-webkit-datetime-edit-text,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-text,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-text {\n color: var(--text-faint);\n padding-inline-end: 0;\n}\n.obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator,\n.obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator {\n position: absolute;\n left: var(--size-4-1);\n right: auto;\n opacity: 0.5;\n}\n.obsidian-dev-utils input[type=month]::-webkit-datetime-edit-month-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-month-field:focus, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-day-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-day-field:focus, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-year-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-year-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-month-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-month-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-day-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-day-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-year-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-year-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-month-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-month-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-day-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-day-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-year-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-year-field:focus {\n background-color: var(--text-selection);\n color: var(--text-normal);\n cursor: text;\n}\n.mod-rtl .obsidian-dev-utils input[type=month], .is-rtl .obsidian-dev-utils input[type=month], .rtl .obsidian-dev-utils input[type=month],\n.mod-rtl .obsidian-dev-utils input[type=time],\n.is-rtl .obsidian-dev-utils input[type=time],\n.rtl .obsidian-dev-utils input[type=time],\n.mod-rtl .obsidian-dev-utils input[type=week],\n.is-rtl .obsidian-dev-utils input[type=week],\n.rtl .obsidian-dev-utils input[type=week] {\n direction: rtl;\n}\n.mod-rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator, .is-rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator, .rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator,\n.mod-rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.is-rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.mod-rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator,\n.is-rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator,\n.rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator {\n left: auto;\n right: var(--size-4-1);\n}\n\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=month],\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=time],\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=week] {\n padding-inline-start: var(--size-4-6);\n}\n\n.obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator {\n margin-inline-start: 0;\n}\n\n.obsidian-dev-utilsprogress.loop {\n min-width: 200px;\n}\n\n@keyframes obsidian-dev-utils-minimized-modal-bar-pulse {\n 0%, 100% {\n box-shadow: var(--shadow-s);\n }\n 50% {\n box-shadow: 0 0 0 2px var(--interactive-accent);\n }\n}\n@keyframes obsidian-dev-utils-minimized-modal-bar-attention {\n 0% {\n box-shadow: 0 0 0 0 var(--interactive-accent);\n }\n 40% {\n box-shadow: 0 0 0 4px var(--interactive-accent);\n }\n 100% {\n box-shadow: var(--shadow-s);\n }\n}\n.obsidian-dev-utils.minimizable-modal .minimize-button {\n position: absolute;\n top: var(--size-4-2);\n right: calc(var(--size-4-2) + var(--size-4-9));\n display: flex;\n align-items: center;\n justify-content: center;\n padding: var(--size-2-2);\n border: none;\n border-radius: var(--radius-s);\n background: transparent;\n color: var(--icon-color);\n cursor: pointer;\n box-shadow: none;\n}\n.obsidian-dev-utils.minimizable-modal .minimize-button:hover {\n background: var(--background-modifier-hover);\n color: var(--icon-color-hover);\n}\n.obsidian-dev-utils.minimized-modal-bar {\n position: fixed;\n right: var(--size-4-4);\n bottom: calc(var(--size-4-4) + var(--size-4-8));\n z-index: var(--layer-modal);\n display: flex;\n align-items: center;\n gap: var(--size-4-2);\n padding: var(--size-4-2) var(--size-4-3);\n border: 1px solid var(--background-modifier-border);\n border-radius: var(--radius-m);\n background: var(--background-secondary);\n box-shadow: var(--shadow-s);\n cursor: pointer;\n animation: obsidian-dev-utils-minimized-modal-bar-pulse 2s ease-in-out infinite;\n}\n.obsidian-dev-utils.minimized-modal-bar:hover {\n background-image: linear-gradient(var(--background-modifier-hover), var(--background-modifier-hover));\n}\n.obsidian-dev-utils.minimized-modal-bar.minimized-modal-bar-attention {\n animation: obsidian-dev-utils-minimized-modal-bar-attention 0.35s ease-out;\n}\n.obsidian-dev-utils.minimized-modal-bar .minimized-modal-bar-title {\n font-weight: var(--font-medium);\n}\n.obsidian-dev-utils.minimized-modal-bar .restore-button,\n.obsidian-dev-utils.minimized-modal-bar .cancel-button {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: var(--size-2-2);\n border: none;\n border-radius: var(--radius-s);\n background: transparent;\n color: var(--icon-color);\n cursor: pointer;\n box-shadow: none;\n}\n.obsidian-dev-utils.minimized-modal-bar .restore-button:hover,\n.obsidian-dev-utils.minimized-modal-bar .cancel-button:hover {\n background: var(--background-modifier-hover);\n color: var(--icon-color-hover);\n}\n\n.obsidian-dev-utils.modal-container .ok-button {\n margin-right: 10px;\n margin-top: 20px;\n}\n\n.obsidian-dev-utils .multiple-dropdown-component select,\n.obsidian-dev-utils .multiple-dropdown-component select:focus,\n.obsidian-dev-utils .multiple-dropdown-component .dropdown {\n height: auto;\n padding-top: 3px;\n}\n.obsidian-dev-utils .multiple-dropdown-component select option:checked,\n.obsidian-dev-utils .multiple-dropdown-component select:focus option:checked,\n.obsidian-dev-utils .multiple-dropdown-component .dropdown option:checked {\n background-color: #1967d2;\n color: #fff;\n}\n\n.obsidian-dev-utils.plugin-notice-name {\n color: var(--text-accent);\n display: inline-block;\n font-weight: var(--font-bold);\n margin-bottom: var(--size-4-2);\n}\n.obsidian-dev-utils.plugin-notice-content {\n padding-right: var(--size-4-5);\n position: relative;\n}\n.obsidian-dev-utils.plugin-notice-content .obsidian-dev-utils.cancel-button {\n display: block;\n margin-top: var(--size-4-2);\n width: fit-content;\n}\n.obsidian-dev-utils.plugin-notice-content .obsidian-dev-utils.plugin-notice-close-button {\n position: absolute;\n right: var(--size-4-3);\n top: var(--size-4-3);\n}\n.obsidian-dev-utils.plugin-notice-requires-explicit-close.notice {\n padding: 0;\n}\n.obsidian-dev-utils.plugin-notice-requires-explicit-close.notice .obsidian-dev-utils.plugin-notice-content {\n padding: var(--size-4-3) var(--size-4-4);\n}\n\n.obsidian-dev-utils.plugin-settings-tab a:focus {\n outline: 2px solid var(--link-color);\n}\n\n.obsidian-dev-utils.prompt-modal .text-box {\n width: 100%;\n}\n\nbody button:not(.clickable-icon) {\n color: var(--text-color);\n}\n\n.obsidian-dev-utils.tri-state-checkbox-component input[type=checkbox]:indeterminate {\n appearance: checkbox;\n}\n\n.obsidian-dev-utils :invalid {\n box-shadow: 0 0 0 2px var(--text-error);\n}\n.obsidian-dev-utils input.metadata-input-text:active:invalid, .obsidian-dev-utils input.metadata-input-text:focus-visible:invalid, .obsidian-dev-utils input.metadata-input-text:focus:invalid,\n.obsidian-dev-utils input[type=date]:active:invalid,\n.obsidian-dev-utils input[type=date]:focus-visible:invalid,\n.obsidian-dev-utils input[type=date]:focus:invalid,\n.obsidian-dev-utils input[type=datetime-local]:active:invalid,\n.obsidian-dev-utils input[type=datetime-local]:focus-visible:invalid,\n.obsidian-dev-utils input[type=datetime-local]:focus:invalid,\n.obsidian-dev-utils input[type=email]:active:invalid,\n.obsidian-dev-utils input[type=email]:focus-visible:invalid,\n.obsidian-dev-utils input[type=email]:focus:invalid,\n.obsidian-dev-utils input[type=number]:active:invalid,\n.obsidian-dev-utils input[type=number]:focus-visible:invalid,\n.obsidian-dev-utils input[type=number]:focus:invalid,\n.obsidian-dev-utils input[type=password]:active:invalid,\n.obsidian-dev-utils input[type=password]:focus-visible:invalid,\n.obsidian-dev-utils input[type=password]:focus:invalid,\n.obsidian-dev-utils input[type=search]:active:invalid,\n.obsidian-dev-utils input[type=search]:focus-visible:invalid,\n.obsidian-dev-utils input[type=search]:focus:invalid,\n.obsidian-dev-utils input[type=text]:active:invalid,\n.obsidian-dev-utils input[type=text]:focus-visible:invalid,\n.obsidian-dev-utils input[type=text]:focus:invalid,\n.obsidian-dev-utils textarea:active:invalid,\n.obsidian-dev-utils textarea:focus-visible:invalid,\n.obsidian-dev-utils textarea:focus:invalid {\n box-shadow: 0 0 0 2px var(--text-error);\n}\n.obsidian-dev-utils.setting-component-wrapper {\n position: relative;\n display: inline-flex;\n}\n.obsidian-dev-utils.overlay-validator {\n caret-color: transparent;\n cursor: default;\n position: absolute;\n background-color: transparent;\n border: none;\n outline: none;\n pointer-events: none;\n z-index: 9999;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n}\n.obsidian-dev-utils.tooltip.tooltip-validator {\n position: absolute;\n top: calc(100% + 8px);\n width: max-content;\n}\n\n/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../src/styles/code-highlighter-component.scss%22,%22../src/styles/editor-lock.scss%22,%22../src/styles/input.scss%22,%22../src/styles/input-time.scss%22,%22../src/styles/loop.scss%22,%22../src/styles/minimizable-modal.scss%22,%22../src/styles/modal-container.scss%22,%22../src/styles/multiple-dropdown-component.scss%22,%22../src/styles/plugin-notice.scss%22,%22../src/styles/plugin-settings-tab.scss%22,%22../src/styles/prompt-modal.scss%22,%22../src/styles/tldraw-button-color-workaround.scss%22,%22../src/styles/tri-state-checkbox-component.scss%22,%22../src/styles/validation.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAEI;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;;ACvCN;EACE;EACA;EACA;;AAEA;EACE;EACA;;;AAMJ;EACE;IACE;IACA;;;AAIJ;EACE;;;ACvBA;EACE;;AAGF;AAAA;AAAA;AAAA;AAAA;EAKE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGE;EACE;AAAA;AAAA;AAAA;AAAA;IACE;IACA,YACE;;;AAMR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA,YACE;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;;AAGF;AAAA;AAAA;AAAA;AAAA;EACE;;AASE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;;AC7DV;AAAA;AAAA;EAGE;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;AAGF;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAMA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;;AAIK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGP;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;;AAKF;AAAA;AAAA;EACE;;;AAMJ;EACE;;;ACjDJ;EACE;;;ACFJ;EACE;IAEE;;EAGF;IACE;;;AAIJ;EACE;IACE;;EAGF;IACE;;EAGF;IACE;;;AAOA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AASN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAOA;EACE;;AAOF;EACE;;AAGF;EACE;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EACE;EACA;;;ACxGJ;EACE;EACA;;;ACFF;AAAA;AAAA;EAGE;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;;ACTN;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAEA;EACE;EACA;EACA;;AAKF;EACE;EACA;EACA;;AAOJ;EACE;;AAEA;EACE;;;AChCF;EACE;;;ACDF;EACE;;;ACON;EACE;;;ACTE;EACE;;;ACEJ;EAJA;;AAoBI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EApBJ;;AA0BA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA%22,%22file%22:%22styles.css%22,%22sourcesContent%22:%5B%22.obsidian-dev-utils%20%7B%5Cn%20%20&.code-highlighter-component%20%7B%5Cn%20%20%20%20textarea,%20pre,%20code%20%7B%5Cn%20%20%20%20%20%20font-family:%20var(--font-monospace);%5Cn%20%20%20%20%20%20line-height:%20var(--line-height-normal);%5Cn%20%20%20%20%20%20margin:%200;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20textarea,%20code%20%7B%5Cn%20%20%20%20%20%20font-size:%20var(--code-size);%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20textarea%20%7B%5Cn%20%20%20%20%20%20background:%20transparent;%5Cn%20%20%20%20%20%20color:%20transparent;%5Cn%20%20%20%20%20%20z-index:%202;%5Cn%20%20%20%20%20%20width:%2020em;%5Cn%20%20%20%20%20%20height:%2010em;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20pre%20%7B%5Cn%20%20%20%20%20%20position:%20absolute;%5Cn%20%20%20%20%20%20pointer-events:%20none;%5Cn%20%20%20%20%20%20border:%20var(--input-border-width)%20solid%20transparent;%5Cn%20%20%20%20%20%20overflow:%20auto;%5Cn%20%20%20%20%20%20inset:%200;%5Cn%20%20%20%20%20%20padding:%20var(--size-4-1)%20var(--size-4-2);%5Cn%20%20%20%20%20%20z-index:%201;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20pre::after%20%7B%5Cn%20%20%20%20%20%20content:%20%5C%22%5C%22;%5Cn%20%20%20%20%20%20display:%20block;%5Cn%20%20%20%20%20%20height:%20var(--bottom-gap,%200);%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20pre.is-placeholder%20%7B%5Cn%20%20%20%20%20%20opacity:%200.6;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20code%20%7B%5Cn%20%20%20%20%20%20display:%20block;%5Cn%20%20%20%20%20%20padding:%200;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22//%20Lock%20indicators%20shown%20in%20the%20tab%20header%20and%20the%20status%20bar%20while%20a%20note%20is%20locked.%20These%20live%20in%5Cn//%20global%20Obsidian%20DOM%20(tab%20header%20/%20status%20bar),%20so%20they%20are%20styled%20with%20a%20global%20class%20rather%20than%5Cn//%20scoped%20under%20%60.obsidian-dev-utils%60.%5Cn.obsidian-dev-utils-lock-indicator%20%7B%5Cn%20%20display:%20inline-flex;%5Cn%20%20align-items:%20center;%5Cn%20%20color:%20var(--text-muted);%5Cn%5Cn%20%20.svg-icon%20%7B%5Cn%20%20%20%20width:%20var(--icon-s);%5Cn%20%20%20%20height:%20var(--icon-s);%5Cn%20%20%7D%5Cn%7D%5Cn%5Cn//%20Flashed%20on%20every%20lock%20indicator%20(tab%20header,%20view%20action,%20status%20bar)%20when%20the%20user%20attempts%20to%5Cn//%20type%20in%20a%20locked%20note,%20to%20make%20clear%20the%20note%20is%20read-only.%20Re-added%20per%20rejected%20keystroke.%5Cn@keyframes%20obsidian-dev-utils-lock-indicator-flash%20%7B%5Cn%20%2040%25%20%7B%5Cn%20%20%20%20color:%20var(--text-error);%5Cn%20%20%20%20transform:%20scale(1.4);%5Cn%20%20%7D%5Cn%7D%5Cn%5Cn.obsidian-dev-utils-lock-indicator-flash%20%7B%5Cn%20%20animation:%20obsidian-dev-utils-lock-indicator-flash%200.35s%20ease-in-out;%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20input%5Btype='url'%5D%20%7B%5Cn%20%20%20%20height:%20var(--input-height)%5Cn%20%20%7D%5Cn%5Cn%20%20input%5Btype='month'%5D,%5Cn%20%20input%5Btype='tel'%5D,%5Cn%20%20input%5Btype='time'%5D,%5Cn%20%20input%5Btype='url'%5D,%5Cn%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20-webkit-app-region:%20no-drag;%5Cn%20%20%20%20background:%20var(--background-modifier-form-field);%5Cn%20%20%20%20border:%20var(--input-border-width)%20solid%20var(--background-modifier-border);%5Cn%20%20%20%20color:%20var(--text-normal);%5Cn%20%20%20%20font-family:%20inherit;%5Cn%20%20%20%20padding:%20var(--size-4-1)%20var(--size-4-2);%5Cn%20%20%20%20font-size:%20var(--font-ui-small);%5Cn%20%20%20%20border-radius:%20var(--input-radius);%5Cn%20%20%20%20outline:%20none;%5Cn%5Cn%20%20%20%20@at-root%20%7B%5Cn%20%20%20%20%20%20@media%20(hover:%20hover)%20%7B%5Cn%20%20%20%20%20%20%20%20&:hover%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20border-color:%20var(--background-modifier-border-hover);%5Cn%20%20%20%20%20%20%20%20%20%20transition:%5Cn%20%20%20%20%20%20%20%20%20%20%20%20box-shadow%200.15s%20ease-in-out,%5Cn%20%20%20%20%20%20%20%20%20%20%20%20border%200.15s%20ease-in-out;%5Cn%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&:active,%5Cn%20%20%20%20&:focus%20%7B%5Cn%20%20%20%20%20%20border-color:%20var(--background-modifier-border-focus);%5Cn%20%20%20%20%20%20transition:%5Cn%20%20%20%20%20%20%20%20box-shadow%200.15s%20ease-in-out,%5Cn%20%20%20%20%20%20%20%20border%200.15s%20ease-in-out;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&:active,%5Cn%20%20%20%20&:focus,%5Cn%20%20%20%20&:focus-visible%20%7B%5Cn%20%20%20%20%20%20box-shadow:%200%200%200%202px%20var(--background-modifier-border-focus);%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::placeholder%20%7B%5Cn%20%20%20%20%20%20color:%20var(--text-faint);%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20@at-root%20%7B%5Cn%20%20%20%20.mod-rtl,%5Cn%20%20%20%20.is-rtl,%5Cn%20%20%20%20.rtl%20%7B%5Cn%20%20%20%20%20%20&%20%7B%5Cn%20%20%20%20%20%20%20%20input%5Btype='month'%5D,%5Cn%20%20%20%20%20%20%20%20input%5Btype='time'%5D,%5Cn%20%20%20%20%20%20%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20direction:%20rtl;%5Cn%5Cn%20%20%20%20%20%20%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20right:%20var(--size-4-1);%5Cn%20%20%20%20%20%20%20%20%20%20%20%20left:%20auto;%5Cn%20%20%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20input%5Btype='month'%5D,%5Cn%20%20input%5Btype='time'%5D,%5Cn%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20font-variant-numeric:%20tabular-nums;%5Cn%20%20%20%20position:%20relative;%5Cn%5Cn%20%20%20%20&::-webkit-datetime-edit-text%20%7B%5Cn%20%20%20%20%20%20color:%20var(--text-faint);%5Cn%20%20%20%20%20%20padding-inline-end:%200;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20position:%20absolute;%5Cn%20%20%20%20%20%20left:%20var(--size-4-1);%5Cn%20%20%20%20%20%20right:%20auto;%5Cn%20%20%20%20%20%20opacity:%200.5;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::-webkit-datetime-edit-month-field,%5Cn%20%20%20%20&::-webkit-datetime-edit-day-field,%5Cn%20%20%20%20&::-webkit-datetime-edit-year-field%20%7B%5Cn%20%20%20%20%20%20&:active,%5Cn%20%20%20%20%20%20&:focus%20%7B%5Cn%20%20%20%20%20%20%20%20background-color:%20var(--text-selection);%5Cn%20%20%20%20%20%20%20%20color:%20var(--text-normal);%5Cn%20%20%20%20%20%20%20%20cursor:%20text;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20@at-root%20.mod-rtl%20&,%5Cn%20%20%20%20%20%20.is-rtl%20&,%5Cn%20%20%20%20%20%20.rtl%20&%20%7B%5Cn%20%20%20%20%20%20direction:%20rtl;%5Cn%5Cn%20%20%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20%20%20left:%20auto;%5Cn%20%20%20%20%20%20%20%20right:%20var(--size-4-1);%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20@at-root%20%7B%5Cn%20%20%20%20%20%20body:not(.is-ios):not(.is-android)%20&%20%7B%5Cn%20%20%20%20%20%20%20%20padding-inline-start:%20var(--size-4-6);%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20input%5Btype='time'%5D%20%7B%5Cn%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20margin-inline-start:%200;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&progress.loop%20%7B%5Cn%20%20%20%20min-width:%20200px;%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22@keyframes%20obsidian-dev-utils-minimized-modal-bar-pulse%20%7B%5Cn%20%200%25,%5Cn%20%20100%25%20%7B%5Cn%20%20%20%20box-shadow:%20var(--shadow-s);%5Cn%20%20%7D%5Cn%5Cn%20%2050%25%20%7B%5Cn%20%20%20%20box-shadow:%200%200%200%202px%20var(--interactive-accent);%5Cn%20%20%7D%5Cn%7D%5Cn%5Cn@keyframes%20obsidian-dev-utils-minimized-modal-bar-attention%20%7B%5Cn%20%200%25%20%7B%5Cn%20%20%20%20box-shadow:%200%200%200%200%20var(--interactive-accent);%5Cn%20%20%7D%5Cn%5Cn%20%2040%25%20%7B%5Cn%20%20%20%20box-shadow:%200%200%200%204px%20var(--interactive-accent);%5Cn%20%20%7D%5Cn%5Cn%20%20100%25%20%7B%5Cn%20%20%20%20box-shadow:%20var(--shadow-s);%5Cn%20%20%7D%5Cn%7D%5Cn%5Cn.obsidian-dev-utils%20%7B%5Cn%20%20//%20The%20minimize%20button%20lives%20inside%20the%20modal%20container,%20left%20of%20Obsidian's%20close%20button.%5Cn%20%20&.minimizable-modal%20%7B%5Cn%20%20%20%20.minimize-button%20%7B%5Cn%20%20%20%20%20%20position:%20absolute;%5Cn%20%20%20%20%20%20top:%20var(--size-4-2);%5Cn%20%20%20%20%20%20right:%20calc(var(--size-4-2)%20+%20var(--size-4-9));%5Cn%20%20%20%20%20%20display:%20flex;%5Cn%20%20%20%20%20%20align-items:%20center;%5Cn%20%20%20%20%20%20justify-content:%20center;%5Cn%20%20%20%20%20%20padding:%20var(--size-2-2);%5Cn%20%20%20%20%20%20border:%20none;%5Cn%20%20%20%20%20%20border-radius:%20var(--radius-s);%5Cn%20%20%20%20%20%20background:%20transparent;%5Cn%20%20%20%20%20%20color:%20var(--icon-color);%5Cn%20%20%20%20%20%20cursor:%20pointer;%5Cn%20%20%20%20%20%20box-shadow:%20none;%5Cn%5Cn%20%20%20%20%20%20&:hover%20%7B%5Cn%20%20%20%20%20%20%20%20background:%20var(--background-modifier-hover);%5Cn%20%20%20%20%20%20%20%20color:%20var(--icon-color-hover);%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20//%20The%20minimized%20bar%20is%20appended%20to%20document.body.%20It%20floats%20at%20the%20bottom-right%20while%20minimized,%5Cn%20%20//%20and%20gently%20pulses%20an%20accent%20ring%20so%20the%20user%20does%20not%20forget%20about%20the%20minimized%20operation.%5Cn%20%20//%20It%20floats%20a%20status-bar's%20height%20above%20the%20bottom%20edge%20so%20it%20never%20covers%20the%20bottom-right%5Cn%20%20//%20status-bar%20items%20(e.g.%20the%20editor-lock%20unlock%20indicator,%20which%20lives%20in%20the%20same%20corner).%5Cn%20%20&.minimized-modal-bar%20%7B%5Cn%20%20%20%20position:%20fixed;%5Cn%20%20%20%20right:%20var(--size-4-4);%5Cn%20%20%20%20bottom:%20calc(var(--size-4-4)%20+%20var(--size-4-8));%5Cn%20%20%20%20z-index:%20var(--layer-modal);%5Cn%20%20%20%20display:%20flex;%5Cn%20%20%20%20align-items:%20center;%5Cn%20%20%20%20gap:%20var(--size-4-2);%5Cn%20%20%20%20padding:%20var(--size-4-2)%20var(--size-4-3);%5Cn%20%20%20%20border:%201px%20solid%20var(--background-modifier-border);%5Cn%20%20%20%20border-radius:%20var(--radius-m);%5Cn%20%20%20%20background:%20var(--background-secondary);%5Cn%20%20%20%20box-shadow:%20var(--shadow-s);%5Cn%20%20%20%20cursor:%20pointer;%5Cn%20%20%20%20animation:%20obsidian-dev-utils-minimized-modal-bar-pulse%202s%20ease-in-out%20infinite;%5Cn%5Cn%20%20%20%20//%20Layer%20the%20translucent%20hover%20tint%20over%20the%20opaque%20%60background%60%20(%60--background-secondary%60)%20via%5Cn%20%20%20%20//%20%60background-image%60%20instead%20of%20replacing%20the%20background-color.%20%60--background-modifier-hover%60%20is%5Cn%20%20%20%20//%20translucent,%20so%20setting%20it%20as%20%60background%60%20would%20let%20the%20editor%20content%20behind%20the%20floating%20bar%5Cn%20%20%20%20//%20bleed%20through%20and%20make%20the%20title%20unreadable.%20A%20gradient%20of%20the%20tint%20composited%20over%20the%20opaque%5Cn%20%20%20%20//%20base%20keeps%20the%20bar%20opaque%20while%20preserving%20the%20subtle%20hover%20highlight.%5Cn%20%20%20%20&:hover%20%7B%5Cn%20%20%20%20%20%20background-image:%20linear-gradient(var(--background-modifier-hover),%20var(--background-modifier-hover));%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20//%20A%20one-shot,%20more%20pronounced%20flash%20played%20when%20the%20user%20attempts%20a%20blocked%20action%20(a%20keystroke,%5Cn%20%20%20%20//%20right-click,%20or%20opening%20another%20modal)%20while%20this%20modal%20is%20minimized,%20so%20the%20block%20is%20not%5Cn%20%20%20%20//%20silent.%20Its%20higher%20specificity%20overrides%20the%20gentle%20infinite%20idle%20pulse%20while%20it%20plays;%20the%5Cn%20%20%20%20//%20class%20is%20removed%20on%20%60animationend%60,%20restoring%20the%20idle%20pulse.%5Cn%20%20%20%20&.minimized-modal-bar-attention%20%7B%5Cn%20%20%20%20%20%20animation:%20obsidian-dev-utils-minimized-modal-bar-attention%200.35s%20ease-out;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20.minimized-modal-bar-title%20%7B%5Cn%20%20%20%20%20%20font-weight:%20var(--font-medium);%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20.restore-button,%5Cn%20%20%20%20.cancel-button%20%7B%5Cn%20%20%20%20%20%20display:%20flex;%5Cn%20%20%20%20%20%20align-items:%20center;%5Cn%20%20%20%20%20%20justify-content:%20center;%5Cn%20%20%20%20%20%20padding:%20var(--size-2-2);%5Cn%20%20%20%20%20%20border:%20none;%5Cn%20%20%20%20%20%20border-radius:%20var(--radius-s);%5Cn%20%20%20%20%20%20background:%20transparent;%5Cn%20%20%20%20%20%20color:%20var(--icon-color);%5Cn%20%20%20%20%20%20cursor:%20pointer;%5Cn%20%20%20%20%20%20box-shadow:%20none;%5Cn%5Cn%20%20%20%20%20%20&:hover%20%7B%5Cn%20%20%20%20%20%20%20%20background:%20var(--background-modifier-hover);%5Cn%20%20%20%20%20%20%20%20color:%20var(--icon-color-hover);%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.modal-container%20%7B%5Cn%20%20%20%20.ok-button%20%7B%5Cn%20%20%20%20%20%20margin-right:%2010px;%5Cn%20%20%20%20%20%20margin-top:%2020px;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20.multiple-dropdown-component%20%7B%5Cn%20%20%20%20select,%5Cn%20%20%20%20select:focus,%5Cn%20%20%20%20.dropdown%20%7B%5Cn%20%20%20%20%20%20height:%20auto;%5Cn%20%20%20%20%20%20padding-top:%203px;%5Cn%5Cn%20%20%20%20%20%20option:checked%20%7B%5Cn%20%20%20%20%20%20%20%20background-color:%20%231967d2;%5Cn%20%20%20%20%20%20%20%20color:%20%23fff;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.plugin-notice-name%20%7B%5Cn%20%20%20%20color:%20var(--text-accent);%5Cn%20%20%20%20display:%20inline-block;%5Cn%20%20%20%20font-weight:%20var(--font-bold);%5Cn%20%20%20%20margin-bottom:%20var(--size-4-2);%5Cn%20%20%7D%5Cn%5Cn%20%20&.plugin-notice-content%20%7B%5Cn%20%20%20%20padding-right:%20var(--size-4-5);%5Cn%20%20%20%20position:%20relative;%5Cn%5Cn%20%20%20%20.obsidian-dev-utils.cancel-button%20%7B%5Cn%20%20%20%20%20%20display:%20block;%5Cn%20%20%20%20%20%20margin-top:%20var(--size-4-2);%5Cn%20%20%20%20%20%20width:%20fit-content;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20//%20The%20close%20button%20reuses%20Obsidian's%20%60modal-header-button%60%20+%20%60clickable-icon%60%20classes%20so%20it%20matches%5Cn%20%20%20%20//%20The%20native%20modal%20close%20button%20(box%20+%20hover);%20only%20its%20corner%20position%20is%20set%20here.%5Cn%20%20%20%20.obsidian-dev-utils.plugin-notice-close-button%20%7B%5Cn%20%20%20%20%20%20position:%20absolute;%5Cn%20%20%20%20%20%20right:%20var(--size-4-3);%5Cn%20%20%20%20%20%20top:%20var(--size-4-3);%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20//%20Move%20the%20notice's%20own%20padding%20onto%20the%20content%20wrapper%20so%20the%20wrapper%20covers%20the%20whole%20clickable%5Cn%20%20//%20Area%20%E2%80%94%20otherwise%20a%20click%20landing%20on%20the%20notice's%20bare%20padding%20(outside%20the%20wrapper)%20would%20bypass%20the%5Cn%20%20//%20Stop-propagation%20guard%20and%20dismiss%20the%20hard-to-close%20notice.%5Cn%20%20&.plugin-notice-requires-explicit-close.notice%20%7B%5Cn%20%20%20%20padding:%200;%5Cn%5Cn%20%20%20%20.obsidian-dev-utils.plugin-notice-content%20%7B%5Cn%20%20%20%20%20%20padding:%20var(--size-4-3)%20var(--size-4-4);%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.plugin-settings-tab%20%7B%5Cn%20%20%20%20a:focus%20%7B%5Cn%20%20%20%20%20%20outline:%202px%20solid%20var(--link-color);%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.prompt-modal%20%7B%5Cn%20%20%20%20.text-box%20%7B%5Cn%20%20%20%20%20%20width:%20100%25;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22//%20The%20tldraw%20Obsidian%20plugin%20(tldraw/obsidian-plugin)%20ships%20an%20unscoped%20global%20rule%5Cn//%20%60button:not(.clickable-icon)%20%7B%20color:%20currentColor%20%7D%60%20that%20overrides%20Obsidian's%20own%5Cn//%20%60button:not(.clickable-icon)%20%7B%20color:%20var(--text-color)%20%7D%60%20app-wide.%20Obsidian%20sets%5Cn//%20%60--text-color%60%20contextually%20per%20button%20variant%20(%60--text-normal%60%20by%20default,%5Cn//%20%60--text-on-accent%60%20for%20%60.mod-cta%60,%20%60--text-error%60%20for%20%60.mod-warning%60),%20so%20tldraw's%5Cn//%20%60currentColor%60%20discards%20that%20and%20breaks%20button%20contrast%20outside%20tldraw%20%E2%80%94%20e.g.%5Cn//%20White-on-white%20action%20buttons%20inside%20a%20Notice.%20Re-assert%20Obsidian's%20own%20value%20with%20a%5Cn//%20%60body%60-prefixed%20selector%20(specificity%200,1,2)%20so%20it%20wins%20over%20tldraw's%20(0,1,1)%20while%5Cn//%20Staying%20correct%20for%20every%20button%20variant%20(it%20reuses%20the%20same%20contextual%20%60--text-color%60).%5Cn//%20Defensive%20workaround%20%E2%80%94%20remove%20once%20the%20upstream%20fix%20ships%20(tldraw/obsidian-plugin%23210).%5Cnbody%20button:not(.clickable-icon)%20%7B%5Cn%20%20color:%20var(--text-color);%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cr%5Cn%20%20&.tri-state-checkbox-component%20%7B%5Cr%5Cn%20%20%20%20input%5Btype='checkbox'%5D:indeterminate%20%7B%5Cr%5Cn%20%20%20%20%20%20appearance:%20checkbox;%5Cr%5Cn%20%20%20%20%7D%5Cr%5Cn%20%20%7D%5Cr%5Cn%7D%5Cr%5Cn%22,%22@mixin%20invalid%20%7B%5Cn%20%20box-shadow:%200%200%200%202px%20var(--text-error);%5Cn%7D%5Cn%5Cn.obsidian-dev-utils%20%7B%5Cn%20%20:invalid%20%7B%5Cn%20%20%20%20@include%20invalid;%5Cn%20%20%7D%5Cn%5Cn%20%20input.metadata-input-text,%5Cn%20%20input%5Btype='date'%5D,%5Cn%20%20input%5Btype='datetime-local'%5D,%5Cn%20%20input%5Btype='email'%5D,%5Cn%20%20input%5Btype='number'%5D,%5Cn%20%20input%5Btype='password'%5D,%5Cn%20%20input%5Btype='search'%5D,%5Cn%20%20input%5Btype='text'%5D,%5Cn%20%20textarea%20%7B%5Cn%20%20%20%20&:active,%5Cn%20%20%20%20&:focus-visible,%5Cn%20%20%20%20&:focus%20%7B%5Cn%20%20%20%20%20%20&:invalid%20%7B%5Cn%20%20%20%20%20%20%20%20@include%20invalid;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20&.setting-component-wrapper%20%7B%5Cn%20%20%20%20position:%20relative;%5Cn%20%20%20%20display:%20inline-flex;%5Cn%20%20%7D%5Cn%5Cn%20%20&.overlay-validator%20%7B%5Cn%20%20%20%20caret-color:%20transparent;%5Cn%20%20%20%20cursor:%20default;%5Cn%20%20%20%20position:%20absolute;%5Cn%20%20%20%20background-color:%20transparent;%5Cn%20%20%20%20border:%20none;%5Cn%20%20%20%20outline:%20none;%5Cn%20%20%20%20pointer-events:%20none;%5Cn%20%20%20%20z-index:%209999;%5Cn%20%20%20%20left:%200;%5Cn%20%20%20%20top:%200;%5Cn%20%20%20%20width:%20100%25;%5Cn%20%20%20%20height:%20100%25;%5Cn%20%20%7D%5Cn%5Cn%20%20&.tooltip.tooltip-validator%20%7B%5Cn%20%20%20%20position:%20absolute;%5Cn%20%20%20%20top:%20calc(100%25%20+%208px);%5Cn%20%20%20%20width:%20max-content;%5Cn%20%20%7D%5Cn%7D%5Cn%22%5D%7D */\n";
134
134
  // Annotate the CommonJS export names for ESM import in node:
135
135
  0 && (module.exports = {
@@ -0,0 +1,138 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ (function initCjs() {
7
+ // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
8
+ const globalThisRecord = globalThis;
9
+ globalThisRecord['__name'] ??= name;
10
+ const originalRequire = require;
11
+ if (originalRequire && !originalRequire.__isPatched) {
12
+ // eslint-disable-next-line no-global-assign, no-implicit-globals -- We need to patch the `require()` function.
13
+ require = Object.assign(
14
+ (id) => requirePatched(id),
15
+ originalRequire,
16
+ {
17
+ __isPatched: true
18
+ }
19
+ );
20
+ }
21
+
22
+ const newFuncs = {
23
+ __extractDefault() {
24
+ return extractDefault;
25
+ },
26
+ process() {
27
+ const browserProcess = {
28
+ browser: true,
29
+ cwd() {
30
+ return '/';
31
+ },
32
+ env: {},
33
+ platform: 'android'
34
+ };
35
+ return browserProcess;
36
+ }
37
+ };
38
+
39
+ for (const key of Object.keys(newFuncs)) {
40
+ globalThisRecord[key] ??= newFuncs[key]?.();
41
+ }
42
+
43
+ function name(obj) {
44
+ return obj;
45
+ }
46
+
47
+ function extractDefault(module) {
48
+ return module && module.__esModule && 'default' in module ? module.default : module;
49
+ }
50
+
51
+ const OBSIDIAN_BUILT_IN_MODULE_NAMES = [
52
+ 'obsidian',
53
+ '@codemirror/autocomplete',
54
+ '@codemirror/collab',
55
+ '@codemirror/commands',
56
+ '@codemirror/language',
57
+ '@codemirror/lint',
58
+ '@codemirror/search',
59
+ '@codemirror/state',
60
+ '@codemirror/text',
61
+ '@codemirror/view',
62
+ '@lezer/common',
63
+ '@lezer/lr',
64
+ '@lezer/highlight'];
65
+
66
+
67
+ const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = [
68
+ '@codemirror/closebrackets',
69
+ '@codemirror/comment',
70
+ '@codemirror/fold',
71
+ '@codemirror/gutter',
72
+ '@codemirror/highlight',
73
+ '@codemirror/history',
74
+ '@codemirror/matchbrackets',
75
+ '@codemirror/panel',
76
+ '@codemirror/rangeset',
77
+ '@codemirror/rectangular-selection',
78
+ '@codemirror/stream-parser',
79
+ '@codemirror/tooltip'];
80
+
81
+
82
+ function requirePatched(id) {
83
+ if (OBSIDIAN_BUILT_IN_MODULE_NAMES.includes(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.includes(id)) {
84
+ return originalRequire?.(id);
85
+ }
86
+
87
+ // eslint-disable-next-line @typescript-eslint/no-deprecated, obsidianmd/no-global-this -- Need access to app. Actively use globalThis.
88
+ if (globalThis.app.isMobile) {
89
+ if (id === 'process' || id === 'node:process') {
90
+ // eslint-disable-next-line no-console -- Valid usage.
91
+ console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
92
+ // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
93
+ return globalThis.process;
94
+ }
95
+ } else {
96
+ const module = originalRequire?.(id);
97
+ if (module) {
98
+ return extractDefault(module);
99
+ }
100
+ }
101
+
102
+ // eslint-disable-next-line no-console -- Valid usage.
103
+ console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
104
+ return {};
105
+ }
106
+ })();
107
+
108
+ "use strict";
109
+ var __defProp = Object.defineProperty;
110
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
111
+ var __getOwnPropNames = Object.getOwnPropertyNames;
112
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
113
+ var __export = (target, all) => {
114
+ for (var name in all)
115
+ __defProp(target, name, { get: all[name], enumerable: true });
116
+ };
117
+ var __copyProps = (to, from, except, desc) => {
118
+ if (from && typeof from === "object" || typeof from === "function") {
119
+ for (let key of __getOwnPropNames(from))
120
+ if (!__hasOwnProp.call(to, key) && key !== except)
121
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
122
+ }
123
+ return to;
124
+ };
125
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
126
+ var code_block_reg_exp_exports = {};
127
+ __export(code_block_reg_exp_exports, {
128
+ createCodeBlockRegExp: () => createCodeBlockRegExp
129
+ });
130
+ module.exports = __toCommonJS(code_block_reg_exp_exports);
131
+ function createCodeBlockRegExp() {
132
+ return /(?<=^|\n)(?<LinePrefix> {0,3}(?:> {1,3})*)(?<CodeBlockStartDelimiter>(?<CodeBlockStartDelimiterChar>[`~])(?:\k<CodeBlockStartDelimiterChar>{2,}))(?<CodeBlockLanguage>\S*)(?:[ \t](?<CodeBlockArgs>.*?))?(?:\n(?<CodeBlockContent>\k<LinePrefix>.*(?:\n\k<LinePrefix>.*)*?))?\n\k<LinePrefix>(?<CodeBlockEndDelimiter>\k<CodeBlockStartDelimiter>\k<CodeBlockStartDelimiterChar>*)[ \t]*(?=\n|$)/g;
133
+ }
134
+ // Annotate the CommonJS export names for ESM import in node:
135
+ 0 && (module.exports = {
136
+ createCodeBlockRegExp
137
+ });
138
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL2NvZGUtYmxvY2stcmVnLWV4cC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFByb3ZpZGVzIHRoZSByZWd1bGFyIGV4cHJlc3Npb24gdXNlZCB0byBsb2NhdGUgZmVuY2VkIGNvZGUgYmxvY2tzIHdpdGhpbiBhIE1hcmtkb3duIG5vdGUsIGluY2x1ZGluZ1xuICogYmxvY2tzIG5lc3RlZCBpbnNpZGUgY2FsbG91dHMgb2YgYW55IGRlcHRoLlxuICovXG5cbi8qKlxuICogQ3JlYXRlcyBhIHJlZ3VsYXIgZXhwcmVzc2lvbiB0aGF0IG1hdGNoZXMgYSBzaW5nbGUgZmVuY2VkIGNvZGUgYmxvY2sgYW55d2hlcmUgaW4gYSBNYXJrZG93biBub3RlLlxuICpcbiAqIEEgZnJlc2ggaW5zdGFuY2UgaXMgcmV0dXJuZWQgb24gZWFjaCBjYWxsIHNvIGNhbGxlcnMgbWF5IHNhZmVseSB1c2Ugc3RhdGVmdWwgbWV0aG9kcyAoZS5nLlxuICoge0BsaW5rIFJlZ0V4cC5leGVjfSkgd2l0aG91dCBzaGFyaW5nIGBsYXN0SW5kZXhgIGJldHdlZW4gc2NhbnMuXG4gKlxuICogTmFtZWQgY2FwdHVyZSBncm91cHM6XG4gKiAtIGBMaW5lUHJlZml4YCBcdTIwMTQgdGhlIGxlYWRpbmcgaW5kZW50YXRpb24gLyBjYWxsb3V0IGJsb2NrcXVvdGUgcHJlZml4IChgPiBgIHJlcGVhdGVkIG9uY2UgcGVyIG5lc3RpbmdcbiAqICAgbGV2ZWwpIHNoYXJlZCBieSBldmVyeSBsaW5lIG9mIHRoZSBibG9jay5cbiAqIC0gYENvZGVCbG9ja1N0YXJ0RGVsaW1pdGVyYCAvIGBDb2RlQmxvY2tTdGFydERlbGltaXRlckNoYXJgIFx1MjAxNCB0aGUgb3BlbmluZyBmZW5jZSAoMysgYmFja3RpY2tzIG9yIHRpbGRlcylcbiAqICAgYW5kIHRoZSBmZW5jZSBjaGFyYWN0ZXIuXG4gKiAtIGBDb2RlQmxvY2tMYW5ndWFnZWAgXHUyMDE0IHRoZSBpbmZvLXN0cmluZyBsYW5ndWFnZSB0b2tlbiBpbW1lZGlhdGVseSBhZnRlciB0aGUgb3BlbmluZyBmZW5jZS5cbiAqIC0gYENvZGVCbG9ja0FyZ3NgIFx1MjAxNCBhbnkgZXh0cmEgYXJndW1lbnRzIGFmdGVyIHRoZSBsYW5ndWFnZSB0b2tlbi5cbiAqIC0gYENvZGVCbG9ja0NvbnRlbnRgIFx1MjAxNCB0aGUgYmxvY2sgYm9keS4gRWFjaCBjb250ZW50IGxpbmUgY2FycmllcyB0aGUgc2FtZSBgTGluZVByZWZpeGAuXG4gKiAtIGBDb2RlQmxvY2tFbmREZWxpbWl0ZXJgIFx1MjAxNCB0aGUgY2xvc2luZyBmZW5jZS5cbiAqXG4gKiBUaGUgYENvZGVCbG9ja0NvbnRlbnRgIGdyb3VwIGlzIHdyaXR0ZW4gYXMgYFxcazxMaW5lUHJlZml4Pi4qKD86XFxuXFxrPExpbmVQcmVmaXg+LiopKj9gIFx1MjAxNCBhIGZpcnN0IGxpbmVcbiAqIGZvbGxvd2VkIGJ5IHplcm8gb3IgbW9yZSBsaW5lcyBlYWNoIGludHJvZHVjZWQgYnkgYSAqKm1hbmRhdG9yeSoqIG5ld2xpbmUuIFRoaXMgZGVsaWJlcmF0ZWx5IGF2b2lkcyB0aGVcbiAqIGFtYmlndW91cyBgKD86XFxuP1xcazxMaW5lUHJlZml4Pi4qKSs/YCBmb3JtIChvcHRpb25hbCBuZXdsaW5lICsgcmVwZWF0YWJsZSBsaW5lIHJlbWFpbmRlciksIHdoaWNoIGxldHMgYVxuICogc2luZ2xlIGxpbmUgYmUgcGFydGl0aW9uZWQgaW4gZXhwb25lbnRpYWxseSBtYW55IHdheXMgYW5kIGNhdXNlcyBjYXRhc3Ryb3BoaWMgYmFja3RyYWNraW5nIFx1MjAxNCBhXG4gKiBzeW5jaHJvbm91cyBmcmVlemUgXHUyMDE0IHdoZW4gdGhlIHNjYW4gbWVldHMgYSBmZW5jZS1vcGVuIHdpdGggbm8gdmFsaWQgY2xvc2luZyBmZW5jZSBiZWZvcmUgdGhlIGVuZCBvZiB0aGVcbiAqIG5vdGUuIFRoZSBtYW5kYXRvcnktbmV3bGluZSBmb3JtIG1hdGNoZXMgdGhlIHNhbWUgdGV4dCBsaW5lYXJseS5cbiAqXG4gKiBAcmV0dXJucyBBIGZyZXNoIGdsb2JhbCB7QGxpbmsgUmVnRXhwfSBtYXRjaGluZyBvbmUgZmVuY2VkIGNvZGUgYmxvY2suXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDb2RlQmxvY2tSZWdFeHAoKTogUmVnRXhwIHtcbiAgcmV0dXJuIC8oPzw9XnxcXG4pKD88TGluZVByZWZpeD4gezAsM30oPzo+IHsxLDN9KSopKD88Q29kZUJsb2NrU3RhcnREZWxpbWl0ZXI+KD88Q29kZUJsb2NrU3RhcnREZWxpbWl0ZXJDaGFyPltgfl0pKD86XFxrPENvZGVCbG9ja1N0YXJ0RGVsaW1pdGVyQ2hhcj57Mix9KSkoPzxDb2RlQmxvY2tMYW5ndWFnZT5cXFMqKSg/OlsgXFx0XSg/PENvZGVCbG9ja0FyZ3M+Lio/KSk/KD86XFxuKD88Q29kZUJsb2NrQ29udGVudD5cXGs8TGluZVByZWZpeD4uKig/OlxcblxcazxMaW5lUHJlZml4Pi4qKSo/KSk/XFxuXFxrPExpbmVQcmVmaXg+KD88Q29kZUJsb2NrRW5kRGVsaW1pdGVyPlxcazxDb2RlQmxvY2tTdGFydERlbGltaXRlcj5cXGs8Q29kZUJsb2NrU3RhcnREZWxpbWl0ZXJDaGFyPiopWyBcXHRdKig/PVxcbnwkKS9nO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBZ0NPLFNBQVMsd0JBQWdDO0FBQzlDLFNBQU87QUFDVDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,33 @@
1
+ /// <reference path="../library.d.cts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * Provides the regular expression used to locate fenced code blocks within a Markdown note, including
6
+ * blocks nested inside callouts of any depth.
7
+ */
8
+ /**
9
+ * Creates a regular expression that matches a single fenced code block anywhere in a Markdown note.
10
+ *
11
+ * A fresh instance is returned on each call so callers may safely use stateful methods (e.g.
12
+ * {@link RegExp.exec}) without sharing `lastIndex` between scans.
13
+ *
14
+ * Named capture groups:
15
+ * - `LinePrefix` — the leading indentation / callout blockquote prefix (`> ` repeated once per nesting
16
+ * level) shared by every line of the block.
17
+ * - `CodeBlockStartDelimiter` / `CodeBlockStartDelimiterChar` — the opening fence (3+ backticks or tildes)
18
+ * and the fence character.
19
+ * - `CodeBlockLanguage` — the info-string language token immediately after the opening fence.
20
+ * - `CodeBlockArgs` — any extra arguments after the language token.
21
+ * - `CodeBlockContent` — the block body. Each content line carries the same `LinePrefix`.
22
+ * - `CodeBlockEndDelimiter` — the closing fence.
23
+ *
24
+ * The `CodeBlockContent` group is written as `\k<LinePrefix>.*(?:\n\k<LinePrefix>.*)*?` — a first line
25
+ * followed by zero or more lines each introduced by a **mandatory** newline. This deliberately avoids the
26
+ * ambiguous `(?:\n?\k<LinePrefix>.*)+?` form (optional newline + repeatable line remainder), which lets a
27
+ * single line be partitioned in exponentially many ways and causes catastrophic backtracking — a
28
+ * synchronous freeze — when the scan meets a fence-open with no valid closing fence before the end of the
29
+ * note. The mandatory-newline form matches the same text linearly.
30
+ *
31
+ * @returns A fresh global {@link RegExp} matching one fenced code block.
32
+ */
33
+ export declare function createCodeBlockRegExp(): RegExp;