ngx-bimplus-components 0.0.148 → 0.0.149

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 (92) hide show
  1. package/assets/languages/strings_cs.json +24 -72
  2. package/assets/languages/strings_de.json +4 -15
  3. package/assets/languages/strings_en.json +5 -5
  4. package/assets/languages/strings_es.json +6 -54
  5. package/assets/languages/strings_fr.json +6 -50
  6. package/assets/languages/strings_it.json +2 -50
  7. package/assets/languages/strings_nl.json +796 -796
  8. package/assets/languages/strings_ro.json +7 -55
  9. package/assets/languages/strings_ru.json +45 -93
  10. package/assets/languages/strings_tr.json +2 -50
  11. package/assets/languages/strings_us.json +8 -44
  12. package/esm2022/lib/components/bimplus-buttons-row/bimplus-buttons-row.component.mjs +3 -3
  13. package/esm2022/lib/components/bimplus-connection-designer/bimplus-connection-designer.component.mjs +5 -5
  14. package/esm2022/lib/components/bimplus-connection-designer/bimplus-connection-designer.interface.mjs +1 -1
  15. package/esm2022/lib/components/bimplus-connection-designer/bimplus-connection-designer.service.mjs +4 -4
  16. package/esm2022/lib/components/bimplus-connection-designer-results/bimplus-connection-designer-results.component.mjs +5 -5
  17. package/esm2022/lib/components/bimplus-connection-designer-results/bimplus-connection-designer-results.interface.mjs +1 -1
  18. package/esm2022/lib/components/bimplus-contact/bimplus-contact.component.mjs +5 -5
  19. package/esm2022/lib/components/bimplus-context-menu/bimplus-context-menu.component.mjs +3 -3
  20. package/esm2022/lib/components/bimplus-context-menu/bimplus-context-menu.interface.mjs +1 -1
  21. package/esm2022/lib/components/bimplus-flat-tree/bimplus-flat-tree.component.mjs +3 -3
  22. package/esm2022/lib/components/bimplus-flat-tree/bimplus-flat-tree.interface.mjs +1 -1
  23. package/esm2022/lib/components/bimplus-floating-bar/bimplus-floating-bar.component.mjs +5 -5
  24. package/esm2022/lib/components/bimplus-floating-bar/bimplus-floating-bar.interface.mjs +1 -1
  25. package/esm2022/lib/components/bimplus-floating-bar-body/bimplus-floating-bar-body.component.mjs +5 -5
  26. package/esm2022/lib/components/bimplus-floating-bar-dragger/bimplus-floating-bar-dragger.component.mjs +5 -5
  27. package/esm2022/lib/components/bimplus-floating-bar-header-content/bimplus-floating-bar-header-content.component.mjs +3 -3
  28. package/esm2022/lib/components/bimplus-floating-bar-header-logo/bimplus-floating-bar-header-logo.component.mjs +3 -3
  29. package/esm2022/lib/components/bimplus-floating-bar-hide-objects/bimplus-floating-bar-hide-objects.component.mjs +3 -3
  30. package/esm2022/lib/components/bimplus-floating-bar-isolation-objects/bimplus-floating-bar-isolation-objects.component.mjs +4 -4
  31. package/esm2022/lib/components/bimplus-floating-bar-project-navigator/bimplus-floating-bar-project-navigator.component.mjs +3 -3
  32. package/esm2022/lib/components/bimplus-general-overlay-dialog/bimplus-general-overlay-dialog.component.mjs +3 -3
  33. package/esm2022/lib/components/bimplus-general-overlay-dialog/bimplus-general-overlay-dialog.service.mjs +3 -3
  34. package/esm2022/lib/components/bimplus-language-menu/bimplus-language-menu.component.mjs +3 -3
  35. package/esm2022/lib/components/bimplus-localized-widget/bimplus-localized-widget.component.mjs +5 -5
  36. package/esm2022/lib/components/bimplus-main-menu/bimplus-main-menu.component.mjs +3 -3
  37. package/esm2022/lib/components/bimplus-navbar/bimplus-navbar.component.mjs +3 -3
  38. package/esm2022/lib/components/bimplus-notify/bimplus-notify.component.mjs +5 -5
  39. package/esm2022/lib/components/bimplus-object-complex-properties/bimplus-object-complex-properties.component.mjs +3 -3
  40. package/esm2022/lib/components/bimplus-object-navigator/bimplus-object-navigator.component.mjs +3 -3
  41. package/esm2022/lib/components/bimplus-object-navigator/criteria-select-object-properties/criteria-select-object-properties.component.mjs +3 -3
  42. package/esm2022/lib/components/bimplus-object-navigator/filter-criterium/filter-criterium.component.mjs +3 -3
  43. package/esm2022/lib/components/bimplus-object-navigator/object-filter-result/object-filter-result.component.mjs +5 -5
  44. package/esm2022/lib/components/bimplus-object-structure/bimplus-object-structure.component.mjs +3 -3
  45. package/esm2022/lib/components/bimplus-overlay-dialog-error/bimplus-overlay-dialog-error.component.mjs +3 -3
  46. package/esm2022/lib/components/bimplus-overlay-dialog-warning/bimplus-overlay-dialog-warning.component.mjs +3 -3
  47. package/esm2022/lib/components/bimplus-panel-toolbar/bimplus-panel-toolbar.component.mjs +5 -5
  48. package/esm2022/lib/components/bimplus-project-menu/bimplus-project-menu.component.mjs +3 -3
  49. package/esm2022/lib/components/bimplus-scrollable-container/bimplus-scrollable-container.component.mjs +5 -5
  50. package/esm2022/lib/components/bimplus-sidenav/bimplus-sidenav.component.mjs +3 -3
  51. package/esm2022/lib/components/bimplus-sidenav-drawer-content/bimplus-sidenav-drawer-content.component.mjs +3 -3
  52. package/esm2022/lib/components/bimplus-storage-info/bimplus-storage-info.component.mjs +3 -3
  53. package/esm2022/lib/components/bimplus-text-message/bimplus-text-message.component.mjs +3 -3
  54. package/esm2022/lib/components/bimplus-tool-hub/bimplus-tool-hub.component.mjs +3 -3
  55. package/esm2022/lib/components/bimplus-tool-hub/svgGenerator.mjs +1 -1
  56. package/esm2022/lib/components/bimplus-tool-hub/tool-hub-item/tool-hub-item.component.mjs +3 -3
  57. package/esm2022/lib/components/bimplus-tool-hub/tool-hub-sub-item/tool-hub-sub-item.component.mjs +3 -3
  58. package/esm2022/lib/components/bimplus-tooltip-message/bimplus-tooltip-message.component.mjs +5 -5
  59. package/esm2022/lib/components/bimplus-tooltip-message/bimplus-tooltip-message.interface.mjs +1 -1
  60. package/esm2022/lib/components/bimplus-touch-menu/bimplus-touch-menu.component.mjs +5 -5
  61. package/esm2022/lib/components/bimplus-user-menu/bimplus-user-menu.component.mjs +3 -3
  62. package/esm2022/lib/components/bimplus-zoom/bimplus-zoom.component.mjs +5 -5
  63. package/esm2022/lib/components/expansion-panel/expansion-panel.component.mjs +3 -3
  64. package/esm2022/lib/components/expansion-panel-header/expansion-panel-header.component.mjs +3 -3
  65. package/esm2022/lib/components/expansion-panel-header-actions/expansion-panel-header-actions.component.mjs +3 -3
  66. package/esm2022/lib/components/loading-spinner/loading-spinner.component.mjs +3 -3
  67. package/esm2022/lib/components/object-properties-header/object-properties-header.component.mjs +5 -5
  68. package/esm2022/lib/components/project-models/project-models.component.mjs +3 -3
  69. package/esm2022/lib/components/project-models/project-models.interface.mjs +1 -1
  70. package/esm2022/lib/components/resizable-panel/resizable-panel.component.mjs +5 -5
  71. package/esm2022/lib/directives/click-outside/click-outside.directive.mjs +4 -4
  72. package/esm2022/lib/directives/component-draggable/componentsDraggable.directive.mjs +3 -3
  73. package/esm2022/lib/directives/draggable.directive.mjs +3 -3
  74. package/esm2022/lib/directives/resizable.directive.mjs +4 -4
  75. package/esm2022/lib/directives/x-draggable.directive.mjs +3 -3
  76. package/esm2022/lib/interfaces/bimplus-opacity-properties.interface.mjs +1 -1
  77. package/esm2022/lib/interfaces/bimplus-visibility-properties.interface.mjs +1 -1
  78. package/esm2022/lib/ngx-bimplus-components.component.mjs +3 -3
  79. package/esm2022/lib/ngx-bimplus-components.service.mjs +3 -3
  80. package/esm2022/lib/pipes/pxsuffix.pipe.mjs +3 -3
  81. package/esm2022/lib/services/cursors.service.mjs +3 -3
  82. package/esm2022/lib/services/language-strings.service.mjs +3 -3
  83. package/esm2022/lib/services/layout-manager.service.mjs +3 -3
  84. package/esm2022/lib/services/local-storage.service.mjs +4 -4
  85. package/esm2022/lib/services/resize-observer.service.mjs +4 -4
  86. package/esm2022/lib/types/types.mjs +1 -1
  87. package/esm2022/lib/utils/filterString.mjs +1 -1
  88. package/esm2022/lib/utils/filterStructureFetcher.mjs +1 -1
  89. package/esm2022/lib/utils/utils.mjs +1 -1
  90. package/fesm2022/ngx-bimplus-components.mjs +208 -208
  91. package/fesm2022/ngx-bimplus-components.mjs.map +1 -1
  92. package/package.json +1 -1
@@ -275,10 +275,10 @@ export class ResizableDirective {
275
275
  }
276
276
  this.actResizeStrategy = resizeStrategy;
277
277
  }
278
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ResizableDirective, deps: [{ token: i0.ElementRef }, { token: i1.LayoutManagerService }, { token: i2.ResizeObserverService }], target: i0.ɵɵFactoryTarget.Directive }); }
279
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.12", type: ResizableDirective, isStandalone: true, selector: "[libResizable]", outputs: { resizedEnd: "resizedEnd" }, ngImport: i0 }); }
278
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ResizableDirective, deps: [{ token: i0.ElementRef }, { token: i1.LayoutManagerService }, { token: i2.ResizeObserverService }], target: i0.ɵɵFactoryTarget.Directive }); }
279
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.11", type: ResizableDirective, isStandalone: true, selector: "[libResizable]", outputs: { resizedEnd: "resizedEnd" }, ngImport: i0 }); }
280
280
  }
281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ResizableDirective, decorators: [{
281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ResizableDirective, decorators: [{
282
282
  type: Directive,
283
283
  args: [{
284
284
  selector: '[libResizable]',
@@ -287,4 +287,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
287
287
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.LayoutManagerService }, { type: i2.ResizeObserverService }], propDecorators: { resizedEnd: [{
288
288
  type: Output
289
289
  }] } });
290
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXphYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi9kaXJlY3RpdmVzL3Jlc2l6YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkZBQTZGO0FBQzdGLE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxFQUFFLFlBQVksRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFHaEcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBZ0IzQyxNQUFNLE9BQU8sa0JBQWtCO0lBZ0M3QixZQUFvQixVQUFzQixFQUN0QixvQkFBMEMsRUFDMUMscUJBQTJDO1FBRjNDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXNCO1FBakMvRCx3QkFBbUIsR0FBRyxDQUFDLENBQUM7UUFDeEIsd0JBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLHNCQUFpQixHQUFzQixFQUFFLENBQUM7UUFDMUMsa0JBQWEsR0FBUyxJQUFJLENBQUM7UUFDM0Isa0JBQWEsR0FBUyxLQUFLLENBQUM7UUFRNUIsc0JBQWlCLEdBQUssSUFBSSxDQUFDO1FBSTNCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzVDLHlEQUF5RDtRQUN6RCxpQkFBWSxHQUFrQjtZQUM1QixFQUFFLFNBQVMsRUFBRyxZQUFZLEVBQUcsY0FBYyxFQUFHLElBQUksRUFBRTtZQUNwRCxFQUFFLFNBQVMsRUFBRyxXQUFXLEVBQUksY0FBYyxFQUFFLEdBQUcsRUFBSTtZQUNwRCxFQUFFLFNBQVMsRUFBRyxZQUFZLEVBQUcsY0FBYyxFQUFFLElBQUksRUFBRztZQUNwRCxFQUFFLFNBQVMsRUFBRyxXQUFXLEVBQUksY0FBYyxFQUFFLEdBQUcs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dGVuZXIsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiAsIE91dHB1dCwgRXZlbnRFbWl0dGVyICwgT25Jbml0LCBPbkRlc3Ryb3l9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMYXlvdXRNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2xheW91dC1tYW5hZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSZXNpemVPYnNlcnZlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yZXNpemUtb2JzZXJ2ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IGZpcmVFdmVudCB9IGZyb20gJy4uL3V0aWxzL3V0aWxzJztcclxuXHJcbmludGVyZmFjZSBSZXNpemVySXRlbSB7XHJcbiAgJ2NsYXNzTmFtZScgOiBzdHJpbmcgLFxyXG4gICdyZXNpemVTdHJhdGVneScgOiBzdHJpbmcgXHJcbn1cclxuXHJcbmludGVyZmFjZSBSZXNpemFibGVFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnR7XHJcbiAgcmVzaXplU3RyYXRlZ3k/OiBzdHJpbmc7XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2xpYlJlc2l6YWJsZV0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBSZXNpemFibGVEaXJlY3RpdmUgIGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXR7XHJcbiAgcmVzaXplQ29udGFjdFBvaW50WCA9IDA7XHJcbiAgcmVzaXplQ29udGFjdFBvaW50WSA9IDA7XHJcbiAgcmVzaXphYmxlRWxlbWVudHM6UmVzaXphYmxlRWxlbWVudFtdID0gW107XHJcbiAgcmVzaXplRW5hYmxlZCAgICAgICA9IHRydWU7XHJcbiAgcmVzaXplU3RhcnRlZCAgICAgICA9IGZhbHNlO1xyXG4gIHJlc2l6ZVN0YXJ0ICAgICA6IChldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHZvaWQ7XHJcbiAgcmVzaXplSW5Qcm9ncmVzczogKGV2ZW50OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCkgPT4gdm9pZDsgIFxyXG4gIGJvdW5kUmVzaXplU3RhcnQ6IChldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHZvaWQ7XHJcbiAgYm91bmRSZXNpemVJblByb2dyZXNzOiAoZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSA9PiB2b2lkO1xyXG4gIGJvdW5kUmVzaXplRW5kOiAoZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSA9PiB2b2lkO1xyXG4gICBcclxuICBfZWxlbWVudDpIVE1MRWxlbWVudDsgXHJcbiAgYWN0UmVzaXplU3RyYXRlZ3kgICA9IFwic2VcIjtcclxuICBcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcmVzaXplZEVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcblxyXG4gIC8vIGxpc3Qgb2YgcmVzaXplcnMsIHJlc2l6ZXJzIGFyZSBzcGVjaWZpZWQgYnkgY2xhc3MgbmFtZVxyXG4gIHJlc2l6ZXJzTGlzdDpSZXNpemVySXRlbVtdID0gIFsgXHJcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1ud1wiICwgcmVzaXplU3RyYXRlZ3kgOiBcIm53XCIgfSxcclxuICAgIHsgY2xhc3NOYW1lIDogXCJyZXNpemVyLW5cIiAgLCByZXNpemVTdHJhdGVneTogXCJuXCIgICB9LFxyXG4gICAgeyBjbGFzc05hbWUgOiBcInJlc2l6ZXItbmVcIiAsIHJlc2l6ZVN0cmF0ZWd5OiBcIm5lXCIgIH0sXHJcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1lXCIgICwgcmVzaXplU3RyYXRlZ3k6IFwiZVwiICAgfSxcclxuICAgIHsgY2xhc3NOYW1lIDogXCJyZXNpemVyLXNlXCIgLCByZXNpemVTdHJhdGVneTogXCJzZVwiICB9LFxyXG4gICAgeyBjbGFzc05hbWUgOiBcInJlc2l6ZXItc1wiICAsIHJlc2l6ZVN0cmF0ZWd5OiBcInNcIiAgIH0sXHJcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1zd1wiICwgcmVzaXplU3RyYXRlZ3k6IFwic3dcIiAgfSxcclxuICAgIHsgY2xhc3NOYW1lIDogXCJyZXNpemVyLXdcIiAgLCByZXNpemVTdHJhdGVneTogXCJ3XCIgICB9XHJcbiAgXTtcclxuICBcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBsYXlvdXRNYW5hZ2VyU2VydmljZTogTGF5b3V0TWFuYWdlclNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZXNpemVPYnNlcnZlclNlcnZpY2U6UmVzaXplT2JzZXJ2ZXJTZXJ2aWNlKSB7ICAgICAgICAgICAgICBcclxuICAgIFxyXG4gICAgdGhpcy5fZWxlbWVudCA9IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICAgIHRoaXMubGF5b3V0TWFuYWdlclNlcnZpY2UgPSBsYXlvdXRNYW5hZ2VyU2VydmljZTtcclxuICAgIFxyXG4gICAgdGhpcy5yZXNpemVTdGFydCA9ICAgKGV2ZW50Ok1vdXNlRXZlbnR8VG91Y2hFdmVudCkgPT4ge1xyXG4gICAgICAvL2dldCBtb3VzZS9maW5nZXIgWCBZIHBvc2l0aW9uc1xyXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgICAgaWYodGhpcy5yZXNpemVTdGFydGVkKXtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5yZXNpemVTdGFydGVkID0gdHJ1ZTtcclxuICAgICAgY29uc3QgdG91Y2hMaXN0ID0gKGV2ZW50IGFzIFRvdWNoRXZlbnQpLnRhcmdldFRvdWNoZXM/IChldmVudCBhcyBUb3VjaEV2ZW50KS50YXJnZXRUb3VjaGVzOiBbXTtcclxuICAgICAgY29uc3QgY2xpZW50WCA9IGV2ZW50LnR5cGUgPT09ICd0b3VjaHN0YXJ0JyA/IHRvdWNoTGlzdFswXT8uY2xpZW50WCA6IChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRYO1xyXG4gICAgICBjb25zdCBjbGllbnRZID0gZXZlbnQudHlwZSA9PT0gJ3RvdWNoc3RhcnQnID8gdG91Y2hMaXN0WzBdPy5jbGllbnRZIDogKGV2ZW50IGFzIE1vdXNlRXZlbnQpLmNsaWVudFk7XHJcbiAgICAgIHRoaXMucmVzaXplQ29udGFjdFBvaW50WCA9IGNsaWVudFg7XHJcbiAgICAgIHRoaXMucmVzaXplQ29udGFjdFBvaW50WSA9IGNsaWVudFk7XHJcbiAgICAgIHRoaXMub3BlbkRvY3VtZW50TGlzdGVuZXJzUmVzaXplKCk7ICAgICAgXHJcbiAgICAgIHRoaXMuc2V0dXBSZXNpemVTdHJhdGVneShldmVudCk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAgKiBjYWxjdWF0ZXMgYW5kIHNldHMgdGhlIG5ldyBwb3NpdGlvblxyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gICAgdGhpcy5yZXNpemVJblByb2dyZXNzID0gKGV2ZW50Ok1vdXNlRXZlbnR8VG91Y2hFdmVudCkgPT4ge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICAgIC8vZ2V0IG1vdXNlL2ZpbmdlciBYIFkgcG9zaXRpb25zXHJcbiAgICAgIGNvbnN0IHRvdWNoTGlzdCA9IChldmVudCBhcyBUb3VjaEV2ZW50KS50YXJnZXRUb3VjaGVzID8gKGV2ZW50IGFzIFRvdWNoRXZlbnQpLnRhcmdldFRvdWNoZXM6IFtdO1xyXG4gICAgICBjb25zdCBjbGllbnRYID0gZXZlbnQudHlwZSA9PT0gJ3RvdWNobW92ZScgPyB0b3VjaExpc3RbMF0/LmNsaWVudFggOiAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WDtcclxuICAgICAgY29uc3QgY2xpZW50WSA9IGV2ZW50LnR5cGUgPT09ICd0b3VjaG1vdmUnID8gdG91Y2hMaXN0WzBdPy5jbGllbnRZIDogKGV2ZW50IGFzIE1vdXNlRXZlbnQpLmNsaWVudFk7XHJcbiAgICAgIC8vY29uc3QgY2xpZW50WCA9ICAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WDtcclxuICAgICAgLy9jb25zdCBjbGllbnRZID0gIChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRZO1xyXG5cclxuICAgICAgY29uc3QgbW92ZWQgPSB0aGlzLnJlc2l6ZUZyb21Ubyh0aGlzLl9lbGVtZW50LHRoaXMucmVzaXplQ29udGFjdFBvaW50WCwgdGhpcy5yZXNpemVDb250YWN0UG9pbnRZLGNsaWVudFgsY2xpZW50WSwgdGhpcy5hY3RSZXNpemVTdHJhdGVneSk7XHJcbiAgICAgIGlmKG1vdmVkKSB7XHJcbiAgICAgICAgdGhpcy5yZXNpemVDb250YWN0UG9pbnRYID0gY2xpZW50WDtcclxuICAgICAgICB0aGlzLnJlc2l6ZUNvbnRhY3RQb2ludFkgPSBjbGllbnRZO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLmJvdW5kUmVzaXplU3RhcnQgPSB0aGlzLnJlc2l6ZVN0YXJ0LmJpbmQodGhpcyk7XHJcbiAgICB0aGlzLmJvdW5kUmVzaXplSW5Qcm9ncmVzcyA9IHRoaXMucmVzaXplSW5Qcm9ncmVzcy5iaW5kKHRoaXMpO1xyXG4gICAgdGhpcy5ib3VuZFJlc2l6ZUVuZCA9IHRoaXMucmVzaXplRW5kLmJpbmQodGhpcyk7XHJcbiAgICB0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MuYmluZCh0aGlzKTtcclxuICAgIHRoaXMuc2V0UmVzaXplcnModGhpcy5fZWxlbWVudCk7ICAgICAgICBcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmJvdW5kUmVzaXplU3RhcnQgPSB0aGlzLnJlc2l6ZVN0YXJ0LmJpbmQodGhpcyk7XHJcbiAgICB0aGlzLmJvdW5kUmVzaXplSW5Qcm9ncmVzcyA9IHRoaXMucmVzaXplSW5Qcm9ncmVzcy5iaW5kKHRoaXMpO1xyXG4gICAgdGhpcy5ib3VuZFJlc2l6ZUVuZCA9IHRoaXMucmVzaXplRW5kLmJpbmQodGhpcyk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2VBbGxMaXN0ZW5lcnNSZXNpemUoKTsgICAgXHJcbiAgfVxyXG5cclxuICByZXNpemVFbmQoKXsgICBcclxuICAgIC8vdGhpcy5jbG9zZURvY3VtZW50TGlzdGVuZXJzUmVzaXplKCk7XHJcbiAgICBpZighdGhpcy5yZXNpemVTdGFydGVkKXtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfSAgICAgXHJcbiAgICB0aGlzLnJlc2l6ZVN0YXJ0ZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2xvc2VBbGxMaXN0ZW5lcnNSZXNpemUoKTsgXHJcbiAgICB0aGlzLm9wZW5FbGVtZW50TGlzdGVuZXJzUmVzaXplKCk7XHJcbiAgICBmaXJlRXZlbnQodGhpcywgXCJyZXNpemVkRW5kXCIsIFsnJGV2ZW50J10pOyAgICBcclxuICB9XHJcbiAgXHJcblxyXG4gIF9nZXRWaWV3UmVjdCgpIHtcclxuICAgIGNvbnN0IHZpZXcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnI2NvbnRhaW5lclZpZXcnKTsgIC8vIHdlIHNob3VsZCBnZXQgaGVyZSB0aGUgcGFyZW50IG9iamVjdCBzZWxlY3RvciBhcyBpbnB1dCBwYXJhbWV0ZXJcclxuICAgIGlmKHZpZXcpe1xyXG4gICAgICByZXR1cm4gdmlldy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBuZXcgRE9NUmVjdCgwLDAsMCwwKTtcclxuICB9XHJcblxyXG4vKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICogZmluZCBpZiByZWN0YW5nbGUgMSBpcyBpbnNpZGUgcmVjdGFuZ2xlIDJcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgaXNJbnNpZGVSZWN0KHJlY3QxOkRPTVJlY3QsIHJlY3QyOkRPTVJlY3QpIHtcclxuICAgIGlmKCFyZWN0MSB8fCAhcmVjdDIpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgY29uc3QgcmVjdDFJbnNpZGU6Ym9vbGVhbiA9IHJlY3QyLmxlZnQgPD0gcmVjdDEubGVmdFxyXG4gICAgICAgICAgICAgICAgICAmJiByZWN0Mi50b3AgPD0gcmVjdDEudG9wIFxyXG4gICAgICAgICAgICAgICAgICAmJiByZWN0Mi5yaWdodCA+PSByZWN0MS5yaWdodCBcclxuICAgICAgICAgICAgICAgICAgJiYgcmVjdDIuYm90dG9tID49IHJlY3QxLmJvdHRvbTtcclxuXHJcbiAgICByZXR1cm4gcmVjdDFJbnNpZGU7XHJcbiAgfVxyXG4gICAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAqIHJlc2l6ZSByZWN0YW5nbGUgYnkgeCwgeVxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICBfcmVzaXplUmVjdGFuZ2xlKHJlY3Q6RE9NUmVjdCwgcmVzaXplWDpudW1iZXIsIHJlc2l6ZVk6bnVtYmVyLCByZXNpemVTdHJhdGVneTpzdHJpbmcpIHtcclxuICAgIGlmKCFyZWN0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZihbJ253JywndycsICdzdyddLmluY2x1ZGVzKHJlc2l6ZVN0cmF0ZWd5KSkge1xyXG4gICAgICByZWN0LnggKz0gcmVzaXplWDtcclxuICAgICAgcmVzaXplWCA9IHJlc2l6ZVggKiAtMTtcclxuICAgIH1cclxuXHJcbiAgICBpZihbJ253JywnbicsICduZSddLmluY2x1ZGVzKHJlc2l6ZVN0cmF0ZWd5KSkge1xyXG4gICAgICByZWN0LnkgKz0gcmVzaXplWTtcclxuICAgICAgcmVzaXplWSA9IHJlc2l6ZVkgKiAtMTtcclxuICAgIH1cclxuXHJcbiAgICBpZih0eXBlb2YocmVzaXplWCkgPT09ICdudW1iZXInICYmICFbJ24nLCdzJ10uaW5jbHVkZXMocmVzaXplU3RyYXRlZ3kpKSB7XHJcbiAgICAgIHJlY3Qud2lkdGggKz0gcmVzaXplWDtcclxuICAgIH1cclxuXHJcbiAgICBpZih0eXBlb2YocmVzaXplWSkgPT09ICdudW1iZXInICYmICFbJ3cnLCdlJ10uaW5jbHVkZXMocmVzaXplU3RyYXRlZ3kpKSB7XHJcbiAgICAgIHJlY3QuaGVpZ2h0ICs9IHJlc2l6ZVk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlY3Q7XHJcbiAgfVxyXG5cclxuICBfbWF4SGVpZ2h0UmVzZXQob2JqOkhUTUxFbGVtZW50LCBlbGVtZW50UmVjdDpET01SZWN0KSB7ICAgIFxyXG4gICAgdGhpcy5yZXNpemVGcm9tVG8ob2JqLCBlbGVtZW50UmVjdC5yaWdodCwgZWxlbWVudFJlY3QuYm90dG9tLCBlbGVtZW50UmVjdC5sZWZ0LGVsZW1lbnRSZWN0LnRvcCwgXCJzZVwiKTtcclxuICB9XHJcblxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAqIHJlc2l6ZSBvYmplY3QgZnJvbSB7eCx5fSB0byB7eCx5fSBiYXNlZCBvbiByZXNpemUgc3RyYXRlZ3lcclxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgcmVzaXplRnJvbVRvIChvYmo6SFRNTEVsZW1lbnQsIGZyb21YOm51bWJlciwgZnJvbVk6bnVtYmVyLCB0b1g6bnVtYmVyLHRvWTpudW1iZXIsIHJlc2l6ZVN0cmF0ZWd5OnN0cmluZyl7XHJcbiAgICBjb25zdCBwb3NYRGVsdGEgPSB0b1ggLSBmcm9tWDtcclxuICAgIGNvbnN0IHBvc1lEZWx0YSA9IHRvWSAtIGZyb21ZO1xyXG4gICAgY29uc3QgZWxlbWVudCA9IG9iaiA/PyB0aGlzLl9lbGVtZW50O1xyXG4gICAgY29uc3QgZWxlbWVudFJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgLy9jb25zdCB2aWV3UmVjdCA9IHRoaXMuX2dldFZpZXdSZWN0KCk7XHJcbiAgICBjb25zdCB2aWV3UmVjdCA9IHRoaXMucmVzaXplT2JzZXJ2ZXJTZXJ2aWNlLmdldFBhcmVudEFwcFJlY3QoKTtcclxuICAgIFxyXG4gICAgbGV0IGNoZWNrQm91bmRhcmllcyA9IHRydWU7XHJcblxyXG4gICAgcmVzaXplU3RyYXRlZ3kgPSByZXNpemVTdHJhdGVneSB8fCBcInNlXCI7XHJcblxyXG4gICAgLy9pZiB0aGUgb2JqZWN0IGlzIG91dHNpZGUgdGhlIHZpZXcgcmVjdCBiZWNhdXNlIGl0J3MgYmlnZ2VyLCBkbyBub3QgY2hlY2sgYm91bmRhcmllcyxcclxuICAgIC8vYWxsb3cgbW92aW5nIG91dHNpZGUgdGhlIHZpZXcgcmVjdFxyXG4gICAgaWYodGhpcy5pc0luc2lkZVJlY3QoZWxlbWVudFJlY3QsIHZpZXdSZWN0KSA9PT0gZmFsc2UpIHtcclxuICAgICAgY2hlY2tCb3VuZGFyaWVzID0gZmFsc2U7IFxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX3Jlc2l6ZVJlY3RhbmdsZShlbGVtZW50UmVjdCwgcG9zWERlbHRhLCBwb3NZRGVsdGEsIHJlc2l6ZVN0cmF0ZWd5KTtcclxuXHJcbiAgICBpZiAoY2hlY2tCb3VuZGFyaWVzICYmIHRoaXMuaXNJbnNpZGVSZWN0KGVsZW1lbnRSZWN0LCB2aWV3UmVjdCkgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XHJcbiAgICBsZXQgdG9wID0gcGFyc2VJbnQoY29tcHV0ZWRTdHlsZS50b3AsIDEwKTtcclxuICAgIGxldCBsZWZ0ID0gcGFyc2VJbnQoY29tcHV0ZWRTdHlsZS5sZWZ0LCAxMCk7XHJcbiAgICBsZXQgd2lkdGggPSBwYXJzZUludChjb21wdXRlZFN0eWxlLndpZHRoLCAxMCk7XHJcbiAgICBsZXQgaGVpZ2h0ID0gcGFyc2VJbnQoY29tcHV0ZWRTdHlsZS5oZWlnaHQsIDEwKTtcclxuICAgIFxyXG4gICAgaWYoWydudycsJ3cnLCAnc3cnXS5pbmNsdWRlcyhyZXNpemVTdHJhdGVneSkpIHtcclxuICAgICAgIGxlZnQgPSBsZWZ0ICsgcG9zWERlbHRhOyAgICAgIFxyXG4gICAgfVxyXG5cclxuICAgIGlmKFsnbncnLCduJywgJ25lJ10uaW5jbHVkZXMocmVzaXplU3RyYXRlZ3kpKSB7XHJcbiAgICAgIHRvcCA9IHRvcCAgKyAgcG9zWURlbHRhOyAgICAgIFxyXG4gICAgfVxyXG5cclxuICAgIGlmKCFbJ24nLCdzJ10uaW5jbHVkZXMocmVzaXplU3RyYXRlZ3kpKSB7XHJcbiAgICAgIHdpZHRoID0gZWxlbWVudFJlY3Qud2lkdGg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGlmKCB2aWV3UmVjdC5oZWlnaHQgPCBlbGVtZW50UmVjdC5oZWlnaHQgKXtcclxuICAgICAgdGhpcy5fbWF4SGVpZ2h0UmVzZXQoZWxlbWVudCwgZWxlbWVudFJlY3QpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZighWyd3JywnZSddLmluY2x1ZGVzKHJlc2l6ZVN0cmF0ZWd5KSkge1xyXG4gICAgICBoZWlnaHQgPSBlbGVtZW50UmVjdC5oZWlnaHQ7XHJcbiAgICB9XHJcblxyXG4gICAgXHJcbiAgICBlbGVtZW50LnN0eWxlLnRvcCAgICA9IHRvcCAgICsgJ3B4JztcclxuICAgIGVsZW1lbnQuc3R5bGUubGVmdCAgID0gbGVmdCAgKyAncHgnO1xyXG4gICAgZWxlbWVudC5zdHlsZS53aWR0aCAgPSB3aWR0aCArICdweCc7XHJcbiAgICBlbGVtZW50LnN0eWxlLmhlaWdodCAgPSBoZWlnaHQgKyAncHgnO1xyXG5cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgKiByZXNpemUgc3RhcnQgYXQgdGhlIGxheW91dCBtYW5hZ2FlclxyXG4gICAqIG9wZW4gZG9jdW1lbnQgbGlzdGVuZXJzXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIFxyXG4gICAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgKiBzZXQgdGhlIGVsZW1lbnRzIHVzZWQgZm9yIHJlc2l6aW5nXHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIHNldFJlc2l6ZXJzKGVsZW1lbnQ6SFRNTEVsZW1lbnQpIHtcclxuICAgIGNvbnN0IHNldFJlc2l6YWJsZUVsZW1lbnRzID0gKCkgPT4ge1xyXG4gICAgICBsZXQgcmVzaXphYmxlRWxlbWVudHM6UmVzaXphYmxlRWxlbWVudFtdID0gW107XHJcbiAgICAgIC8vIGdldCBkb20gZWxlbWVudHMgb2YgYWxsIHJlc2l6ZXJzXHJcbiAgICAgIHRoaXMucmVzaXplcnNMaXN0LmZvckVhY2goIGl0ZW0gPT4ge1xyXG4gICAgICAgIGNvbnN0IHJlc2l6ZUVsZW1zID0gIGVsZW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShpdGVtLmNsYXNzTmFtZSk7XHJcbiAgICAgICAgaWYoIHJlc2l6ZUVsZW1zPy5sZW5ndGggKSB7XHJcbiAgICAgICAgICAvLyBzZXQgcmVzaXplIHN0cmF0ZWd5IGluIGVhY2ggZWxlbWVudCBzbyB3ZSBrbm93IGluIHdoaWNoIGRpcmVjdGlvbiB0byByZXNpemVcclxuICAgICAgICAgIGNvbnN0IGRlY29yYXRlZFJlc2l6ZUVsZW1zOiBSZXNpemFibGVFbGVtZW50W10gPSBBcnJheS5mcm9tKHJlc2l6ZUVsZW1zKS5tYXAoIGVsZW0gPT4ge1xyXG4gICAgICAgICAgICBjb25zdCByZXNpemFibGVFbGVtID0gZWxlbSBhcyBSZXNpemFibGVFbGVtZW50O1xyXG4gICAgICAgICAgICByZXNpemFibGVFbGVtLnJlc2l6ZVN0cmF0ZWd5ID0gaXRlbS5yZXNpemVTdHJhdGVneTtcclxuICAgICAgICAgICAgcmV0dXJuIHJlc2l6YWJsZUVsZW07XHJcbiAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAvLyBhZGQgaXQgdG8gbGlzdCBvZiBhbGwgcmVzaXplcnNcclxuICAgICAgICAgIHJlc2l6YWJsZUVsZW1lbnRzID0gWy4uLnJlc2l6YWJsZUVsZW1lbnRzLCAuLi5kZWNvcmF0ZWRSZXNpemVFbGVtc107XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHRoaXMucmVzaXphYmxlRWxlbWVudHMgPSAgWy4uLnJlc2l6YWJsZUVsZW1lbnRzXTtcclxuICAgICAgdGhpcy5vcGVuRWxlbWVudExpc3RlbmVyc1Jlc2l6ZSgpO1xyXG4gICAgfVxyXG4gICAgc2V0VGltZW91dCgoKT0+e1xyXG4gICAgICBzZXRSZXNpemFibGVFbGVtZW50cygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICogb3BlbiBtb3VzZWRvd24sIHRvdWNoc3RhcnQgbGlzdGVuZXJzIG9uIGFsbCBlbGVtZW50cyBhbGxvd2VkIGZvciByZXNpemluZ1xyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICBvcGVuRWxlbWVudExpc3RlbmVyc1Jlc2l6ZSgpIHtcclxuICAgIHRoaXMucmVzaXphYmxlRWxlbWVudHMuZm9yRWFjaChlbGVtZW50ID0+IHtcclxuICAgICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLmJvdW5kUmVzaXplU3RhcnQpO1xyXG4gICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLmJvdW5kUmVzaXplU3RhcnQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgKiBvcGVuIG1vdXNldXAsIHRvdWNoZW5kIGFuZCBtb3VzZW1vdmUsIHRvdWNobW92ZSBvbiBkb2N1bWVudFxyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICBvcGVuRG9jdW1lbnRMaXN0ZW5lcnNSZXNpemUoKSB7XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5ib3VuZFJlc2l6ZUVuZCk7XHJcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIHRoaXMuYm91bmRSZXNpemVFbmQpO1xyXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgdGhpcy5ib3VuZFJlc2l6ZUluUHJvZ3Jlc3MpO1xyXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5ib3VuZFJlc2l6ZUluUHJvZ3Jlc3MpOyAgICBcclxuICB9XHJcbiBcclxuICAvKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICogY2xvc2UgbW91c2V1cCwgdG91Y2hlbmQgYW5kIG1vdXNlbW92ZSwgdG91Y2htb3ZlIG9uIGRvY3VtZW50XHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIGNsb3NlRG9jdW1lbnRMaXN0ZW5lcnNSZXNpemUoKSB7XHJcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLmJvdW5kUmVzaXplSW5Qcm9ncmVzcyk7XHJcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLmJvdW5kUmVzaXplSW5Qcm9ncmVzcyk7XHJcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5ib3VuZFJlc2l6ZUVuZCk7XHJcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIHRoaXMuYm91bmRSZXNpemVFbmQpO1xyXG4gIH1cclxuXHJcbi8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgKiBjbG9zZSBtb3VzZWRvd24sIHRvdWNoc3RhcnQgbGlzdGVuZXJzIG9uIGFsbCBlbGVtZW50cyBhbGxvd2VkIGZvciByZXNpemluZ1xyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICBjbG9zZUVsZW1lbnRMaXN0ZW5lcnNSZXNpemUoKSB7XHJcbiAgICB0aGlzLnJlc2l6YWJsZUVsZW1lbnRzLmZvckVhY2goZWxlbWVudCA9PiB7XHJcbiAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgdGhpcy5ib3VuZFJlc2l6ZVN0YXJ0KTtcclxuICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy5ib3VuZFJlc2l6ZVN0YXJ0KTtcclxuICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLmJvdW5kUmVzaXplSW5Qcm9ncmVzcyk7XHJcbiAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5ib3VuZFJlc2l6ZUluUHJvZ3Jlc3MpOyAgICAgIFxyXG4gICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNldXAnLCB0aGlzLmJvdW5kUmVzaXplRW5kKTtcclxuICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIHRoaXMuYm91bmRSZXNpemVFbmQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICogY2xvc2UgYWxsIGxpc3RlbmVyc1xyXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICBjbG9zZUFsbExpc3RlbmVyc1Jlc2l6ZSgpIHtcclxuICAgIHRoaXMuY2xvc2VFbGVtZW50TGlzdGVuZXJzUmVzaXplKCk7XHJcbiAgICB0aGlzLmNsb3NlRG9jdW1lbnRMaXN0ZW5lcnNSZXNpemUoKTtcclxuICB9XHJcblxyXG4gLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgKiBzZXR1cCBhY3R1YWwgcmVzaXplIHN0cmF0ZWd5XHJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIHNldHVwUmVzaXplU3RyYXRlZ3koZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSB7XHJcbiAgICBpZiggIWV2ZW50ICkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gZmluZCBvbiB3aGljaCBlbGVtZW50IHJlc2l6ZSBzdGFydGVkIHNvIHdlIGtub3cgaW4gd2hpY2ggZGlyZWN0aW9uIHRvIHJlc2l6ZVxyXG4gICAgbGV0IHJlc2l6ZVN0cmF0ZWd5OnN0cmluZyA9IFwic2VcIjtcclxuICAgIGNvbnN0ICByZXNpemVTb3VyY2VFbGVtID0gZXZlbnQ/LnRhcmdldDtcclxuXHJcbiAgICBpZiggcmVzaXplU291cmNlRWxlbSApIHtcclxuICAgICAgY29uc3QgIGZvdW5kRWxlbSA9IHRoaXMucmVzaXphYmxlRWxlbWVudHMuZmluZCggaXRlbSA9PiBpdGVtID09PSByZXNpemVTb3VyY2VFbGVtICk7XHJcbiAgICAgIGlmIChmb3VuZEVsZW0/LnJlc2l6ZVN0cmF0ZWd5KSB7XHJcbiAgICAgICAgcmVzaXplU3RyYXRlZ3kgPSBmb3VuZEVsZW0/LnJlc2l6ZVN0cmF0ZWd5O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5hY3RSZXNpemVTdHJhdGVneSA9ICByZXNpemVTdHJhdGVneTtcclxuICB9XHJcbn1cclxuIl19
290
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXphYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi9kaXJlY3RpdmVzL3Jlc2l6YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkZBQTZGO0FBQzdGLE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxFQUFFLFlBQVksRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFHaEcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBZ0IzQyxNQUFNLE9BQU8sa0JBQWtCO0lBZ0M3QixZQUFvQixVQUFzQixFQUN0QixvQkFBMEMsRUFDMUMscUJBQTJDO1FBRjNDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXNCO1FBakMvRCx3QkFBbUIsR0FBRyxDQUFDLENBQUM7UUFDeEIsd0JBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLHNCQUFpQixHQUFzQixFQUFFLENBQUM7UUFDMUMsa0JBQWEsR0FBUyxJQUFJLENBQUM7UUFDM0Isa0JBQWEsR0FBUyxLQUFLLENBQUM7UUFRNUIsc0JBQWlCLEdBQUssSUFBSSxDQUFDO1FBSTNCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzVDLHlEQUF5RDtRQUN6RCxpQkFBWSxHQUFrQjtZQUM1QixFQUFFLFNBQVMsRUFBRyxZQUFZLEVBQUcsY0FBYyxFQUFHLElBQUksRUFBRTtZQUNwRCxFQUFFLFNBQVMsRUFBRyxXQUFXLEVBQUksY0FBYyxFQUFFLEdBQUcsRUFBSTtZQUNwRCxFQUFFLFNBQVMsRUFBRyxZQUFZLEVBQUcsY0FBYyxFQUFFLElBQUksRUFBRztZQUNwRCxFQUFFLFNBQVMsRUFBRyxXQUFXLEVBQUksY0FBYyxFQUFFLEdBQUcs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dGVuZXIsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYgLCBPdXRwdXQsIEV2ZW50RW1pdHRlciAsIE9uSW5pdCwgT25EZXN0cm95fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExheW91dE1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbGF5b3V0LW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBSZXNpemVPYnNlcnZlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yZXNpemUtb2JzZXJ2ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBmaXJlRXZlbnQgfSBmcm9tICcuLi91dGlscy91dGlscyc7XG5cbmludGVyZmFjZSBSZXNpemVySXRlbSB7XG4gICdjbGFzc05hbWUnIDogc3RyaW5nICxcbiAgJ3Jlc2l6ZVN0cmF0ZWd5JyA6IHN0cmluZyBcbn1cblxuaW50ZXJmYWNlIFJlc2l6YWJsZUVsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudHtcbiAgcmVzaXplU3RyYXRlZ3k/OiBzdHJpbmc7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tsaWJSZXNpemFibGVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcblxuZXhwb3J0IGNsYXNzIFJlc2l6YWJsZURpcmVjdGl2ZSAgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdHtcbiAgcmVzaXplQ29udGFjdFBvaW50WCA9IDA7XG4gIHJlc2l6ZUNvbnRhY3RQb2ludFkgPSAwO1xuICByZXNpemFibGVFbGVtZW50czpSZXNpemFibGVFbGVtZW50W10gPSBbXTtcbiAgcmVzaXplRW5hYmxlZCAgICAgICA9IHRydWU7XG4gIHJlc2l6ZVN0YXJ0ZWQgICAgICAgPSBmYWxzZTtcbiAgcmVzaXplU3RhcnQgICAgIDogKGV2ZW50OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCkgPT4gdm9pZDtcbiAgcmVzaXplSW5Qcm9ncmVzczogKGV2ZW50OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCkgPT4gdm9pZDsgIFxuICBib3VuZFJlc2l6ZVN0YXJ0OiAoZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSA9PiB2b2lkO1xuICBib3VuZFJlc2l6ZUluUHJvZ3Jlc3M6IChldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHZvaWQ7XG4gIGJvdW5kUmVzaXplRW5kOiAoZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSA9PiB2b2lkO1xuICAgXG4gIF9lbGVtZW50OkhUTUxFbGVtZW50OyBcbiAgYWN0UmVzaXplU3RyYXRlZ3kgICA9IFwic2VcIjtcbiAgXG5cbiAgQE91dHB1dCgpXG4gIHJlc2l6ZWRFbmQgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cblxuICAvLyBsaXN0IG9mIHJlc2l6ZXJzLCByZXNpemVycyBhcmUgc3BlY2lmaWVkIGJ5IGNsYXNzIG5hbWVcbiAgcmVzaXplcnNMaXN0OlJlc2l6ZXJJdGVtW10gPSAgWyBcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1ud1wiICwgcmVzaXplU3RyYXRlZ3kgOiBcIm53XCIgfSxcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1uXCIgICwgcmVzaXplU3RyYXRlZ3k6IFwiblwiICAgfSxcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1uZVwiICwgcmVzaXplU3RyYXRlZ3k6IFwibmVcIiAgfSxcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1lXCIgICwgcmVzaXplU3RyYXRlZ3k6IFwiZVwiICAgfSxcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1zZVwiICwgcmVzaXplU3RyYXRlZ3k6IFwic2VcIiAgfSxcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1zXCIgICwgcmVzaXplU3RyYXRlZ3k6IFwic1wiICAgfSxcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci1zd1wiICwgcmVzaXplU3RyYXRlZ3k6IFwic3dcIiAgfSxcbiAgICB7IGNsYXNzTmFtZSA6IFwicmVzaXplci13XCIgICwgcmVzaXplU3RyYXRlZ3k6IFwid1wiICAgfVxuICBdO1xuICBcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICAgICAgICBwcml2YXRlIGxheW91dE1hbmFnZXJTZXJ2aWNlOiBMYXlvdXRNYW5hZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZXNpemVPYnNlcnZlclNlcnZpY2U6UmVzaXplT2JzZXJ2ZXJTZXJ2aWNlKSB7ICAgICAgICAgICAgICBcbiAgICBcbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMubGF5b3V0TWFuYWdlclNlcnZpY2UgPSBsYXlvdXRNYW5hZ2VyU2VydmljZTtcbiAgICBcbiAgICB0aGlzLnJlc2l6ZVN0YXJ0ID0gICAoZXZlbnQ6TW91c2VFdmVudHxUb3VjaEV2ZW50KSA9PiB7XG4gICAgICAvL2dldCBtb3VzZS9maW5nZXIgWCBZIHBvc2l0aW9uc1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBpZih0aGlzLnJlc2l6ZVN0YXJ0ZWQpe1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLnJlc2l6ZVN0YXJ0ZWQgPSB0cnVlO1xuICAgICAgY29uc3QgdG91Y2hMaXN0ID0gKGV2ZW50IGFzIFRvdWNoRXZlbnQpLnRhcmdldFRvdWNoZXM/IChldmVudCBhcyBUb3VjaEV2ZW50KS50YXJnZXRUb3VjaGVzOiBbXTtcbiAgICAgIGNvbnN0IGNsaWVudFggPSBldmVudC50eXBlID09PSAndG91Y2hzdGFydCcgPyB0b3VjaExpc3RbMF0/LmNsaWVudFggOiAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WDtcbiAgICAgIGNvbnN0IGNsaWVudFkgPSBldmVudC50eXBlID09PSAndG91Y2hzdGFydCcgPyB0b3VjaExpc3RbMF0/LmNsaWVudFkgOiAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WTtcbiAgICAgIHRoaXMucmVzaXplQ29udGFjdFBvaW50WCA9IGNsaWVudFg7XG4gICAgICB0aGlzLnJlc2l6ZUNvbnRhY3RQb2ludFkgPSBjbGllbnRZO1xuICAgICAgdGhpcy5vcGVuRG9jdW1lbnRMaXN0ZW5lcnNSZXNpemUoKTsgICAgICBcbiAgICAgIHRoaXMuc2V0dXBSZXNpemVTdHJhdGVneShldmVudCk7XG4gICAgfVxuICAgIFxuICAgIC8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICogY2FsY3VhdGVzIGFuZCBzZXRzIHRoZSBuZXcgcG9zaXRpb25cbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICAgdGhpcy5yZXNpemVJblByb2dyZXNzID0gKGV2ZW50Ok1vdXNlRXZlbnR8VG91Y2hFdmVudCkgPT4ge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAvL2dldCBtb3VzZS9maW5nZXIgWCBZIHBvc2l0aW9uc1xuICAgICAgY29uc3QgdG91Y2hMaXN0ID0gKGV2ZW50IGFzIFRvdWNoRXZlbnQpLnRhcmdldFRvdWNoZXMgPyAoZXZlbnQgYXMgVG91Y2hFdmVudCkudGFyZ2V0VG91Y2hlczogW107XG4gICAgICBjb25zdCBjbGllbnRYID0gZXZlbnQudHlwZSA9PT0gJ3RvdWNobW92ZScgPyB0b3VjaExpc3RbMF0/LmNsaWVudFggOiAoZXZlbnQgYXMgTW91c2VFdmVudCkuY2xpZW50WDtcbiAgICAgIGNvbnN0IGNsaWVudFkgPSBldmVudC50eXBlID09PSAndG91Y2htb3ZlJyA/IHRvdWNoTGlzdFswXT8uY2xpZW50WSA6IChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRZO1xuICAgICAgLy9jb25zdCBjbGllbnRYID0gIChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRYO1xuICAgICAgLy9jb25zdCBjbGllbnRZID0gIChldmVudCBhcyBNb3VzZUV2ZW50KS5jbGllbnRZO1xuXG4gICAgICBjb25zdCBtb3ZlZCA9IHRoaXMucmVzaXplRnJvbVRvKHRoaXMuX2VsZW1lbnQsdGhpcy5yZXNpemVDb250YWN0UG9pbnRYLCB0aGlzLnJlc2l6ZUNvbnRhY3RQb2ludFksY2xpZW50WCxjbGllbnRZLCB0aGlzLmFjdFJlc2l6ZVN0cmF0ZWd5KTtcbiAgICAgIGlmKG1vdmVkKSB7XG4gICAgICAgIHRoaXMucmVzaXplQ29udGFjdFBvaW50WCA9IGNsaWVudFg7XG4gICAgICAgIHRoaXMucmVzaXplQ29udGFjdFBvaW50WSA9IGNsaWVudFk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuYm91bmRSZXNpemVTdGFydCA9IHRoaXMucmVzaXplU3RhcnQuYmluZCh0aGlzKTtcbiAgICB0aGlzLmJvdW5kUmVzaXplSW5Qcm9ncmVzcyA9IHRoaXMucmVzaXplSW5Qcm9ncmVzcy5iaW5kKHRoaXMpO1xuICAgIHRoaXMuYm91bmRSZXNpemVFbmQgPSB0aGlzLnJlc2l6ZUVuZC5iaW5kKHRoaXMpO1xuICAgIHRoaXMucmVzaXplSW5Qcm9ncmVzcy5iaW5kKHRoaXMpO1xuICAgIHRoaXMuc2V0UmVzaXplcnModGhpcy5fZWxlbWVudCk7ICAgICAgICBcbiAgfVxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJvdW5kUmVzaXplU3RhcnQgPSB0aGlzLnJlc2l6ZVN0YXJ0LmJpbmQodGhpcyk7XG4gICAgdGhpcy5ib3VuZFJlc2l6ZUluUHJvZ3Jlc3MgPSB0aGlzLnJlc2l6ZUluUHJvZ3Jlc3MuYmluZCh0aGlzKTtcbiAgICB0aGlzLmJvdW5kUmVzaXplRW5kID0gdGhpcy5yZXNpemVFbmQuYmluZCh0aGlzKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2VBbGxMaXN0ZW5lcnNSZXNpemUoKTsgICAgXG4gIH1cblxuICByZXNpemVFbmQoKXsgICBcbiAgICAvL3RoaXMuY2xvc2VEb2N1bWVudExpc3RlbmVyc1Jlc2l6ZSgpO1xuICAgIGlmKCF0aGlzLnJlc2l6ZVN0YXJ0ZWQpe1xuICAgICAgcmV0dXJuO1xuICAgIH0gICAgIFxuICAgIHRoaXMucmVzaXplU3RhcnRlZCA9IGZhbHNlO1xuICAgIHRoaXMuY2xvc2VBbGxMaXN0ZW5lcnNSZXNpemUoKTsgXG4gICAgdGhpcy5vcGVuRWxlbWVudExpc3RlbmVyc1Jlc2l6ZSgpO1xuICAgIGZpcmVFdmVudCh0aGlzLCBcInJlc2l6ZWRFbmRcIiwgWyckZXZlbnQnXSk7ICAgIFxuICB9XG4gIFxuXG4gIF9nZXRWaWV3UmVjdCgpIHtcbiAgICBjb25zdCB2aWV3ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJyNjb250YWluZXJWaWV3Jyk7ICAvLyB3ZSBzaG91bGQgZ2V0IGhlcmUgdGhlIHBhcmVudCBvYmplY3Qgc2VsZWN0b3IgYXMgaW5wdXQgcGFyYW1ldGVyXG4gICAgaWYodmlldyl7XG4gICAgICByZXR1cm4gdmlldy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBET01SZWN0KDAsMCwwLDApO1xuICB9XG5cbi8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogZmluZCBpZiByZWN0YW5nbGUgMSBpcyBpbnNpZGUgcmVjdGFuZ2xlIDJcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICBpc0luc2lkZVJlY3QocmVjdDE6RE9NUmVjdCwgcmVjdDI6RE9NUmVjdCkge1xuICAgIGlmKCFyZWN0MSB8fCAhcmVjdDIpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY29uc3QgcmVjdDFJbnNpZGU6Ym9vbGVhbiA9IHJlY3QyLmxlZnQgPD0gcmVjdDEubGVmdFxuICAgICAgICAgICAgICAgICAgJiYgcmVjdDIudG9wIDw9IHJlY3QxLnRvcCBcbiAgICAgICAgICAgICAgICAgICYmIHJlY3QyLnJpZ2h0ID49IHJlY3QxLnJpZ2h0IFxuICAgICAgICAgICAgICAgICAgJiYgcmVjdDIuYm90dG9tID49IHJlY3QxLmJvdHRvbTtcblxuICAgIHJldHVybiByZWN0MUluc2lkZTtcbiAgfVxuICAgIC8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogcmVzaXplIHJlY3RhbmdsZSBieSB4LCB5XG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgX3Jlc2l6ZVJlY3RhbmdsZShyZWN0OkRPTVJlY3QsIHJlc2l6ZVg6bnVtYmVyLCByZXNpemVZOm51bWJlciwgcmVzaXplU3RyYXRlZ3k6c3RyaW5nKSB7XG4gICAgaWYoIXJlY3QpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZihbJ253JywndycsICdzdyddLmluY2x1ZGVzKHJlc2l6ZVN0cmF0ZWd5KSkge1xuICAgICAgcmVjdC54ICs9IHJlc2l6ZVg7XG4gICAgICByZXNpemVYID0gcmVzaXplWCAqIC0xO1xuICAgIH1cblxuICAgIGlmKFsnbncnLCduJywgJ25lJ10uaW5jbHVkZXMocmVzaXplU3RyYXRlZ3kpKSB7XG4gICAgICByZWN0LnkgKz0gcmVzaXplWTtcbiAgICAgIHJlc2l6ZVkgPSByZXNpemVZICogLTE7XG4gICAgfVxuXG4gICAgaWYodHlwZW9mKHJlc2l6ZVgpID09PSAnbnVtYmVyJyAmJiAhWyduJywncyddLmluY2x1ZGVzKHJlc2l6ZVN0cmF0ZWd5KSkge1xuICAgICAgcmVjdC53aWR0aCArPSByZXNpemVYO1xuICAgIH1cblxuICAgIGlmKHR5cGVvZihyZXNpemVZKSA9PT0gJ251bWJlcicgJiYgIVsndycsJ2UnXS5pbmNsdWRlcyhyZXNpemVTdHJhdGVneSkpIHtcbiAgICAgIHJlY3QuaGVpZ2h0ICs9IHJlc2l6ZVk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlY3Q7XG4gIH1cblxuICBfbWF4SGVpZ2h0UmVzZXQob2JqOkhUTUxFbGVtZW50LCBlbGVtZW50UmVjdDpET01SZWN0KSB7ICAgIFxuICAgIHRoaXMucmVzaXplRnJvbVRvKG9iaiwgZWxlbWVudFJlY3QucmlnaHQsIGVsZW1lbnRSZWN0LmJvdHRvbSwgZWxlbWVudFJlY3QubGVmdCxlbGVtZW50UmVjdC50b3AsIFwic2VcIik7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogcmVzaXplIG9iamVjdCBmcm9tIHt4LHl9IHRvIHt4LHl9IGJhc2VkIG9uIHJlc2l6ZSBzdHJhdGVneVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIHJlc2l6ZUZyb21UbyAob2JqOkhUTUxFbGVtZW50LCBmcm9tWDpudW1iZXIsIGZyb21ZOm51bWJlciwgdG9YOm51bWJlcix0b1k6bnVtYmVyLCByZXNpemVTdHJhdGVneTpzdHJpbmcpe1xuICAgIGNvbnN0IHBvc1hEZWx0YSA9IHRvWCAtIGZyb21YO1xuICAgIGNvbnN0IHBvc1lEZWx0YSA9IHRvWSAtIGZyb21ZO1xuICAgIGNvbnN0IGVsZW1lbnQgPSBvYmogPz8gdGhpcy5fZWxlbWVudDtcbiAgICBjb25zdCBlbGVtZW50UmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgLy9jb25zdCB2aWV3UmVjdCA9IHRoaXMuX2dldFZpZXdSZWN0KCk7XG4gICAgY29uc3Qgdmlld1JlY3QgPSB0aGlzLnJlc2l6ZU9ic2VydmVyU2VydmljZS5nZXRQYXJlbnRBcHBSZWN0KCk7XG4gICAgXG4gICAgbGV0IGNoZWNrQm91bmRhcmllcyA9IHRydWU7XG5cbiAgICByZXNpemVTdHJhdGVneSA9IHJlc2l6ZVN0cmF0ZWd5IHx8IFwic2VcIjtcblxuICAgIC8vaWYgdGhlIG9iamVjdCBpcyBvdXRzaWRlIHRoZSB2aWV3IHJlY3QgYmVjYXVzZSBpdCdzIGJpZ2dlciwgZG8gbm90IGNoZWNrIGJvdW5kYXJpZXMsXG4gICAgLy9hbGxvdyBtb3Zpbmcgb3V0c2lkZSB0aGUgdmlldyByZWN0XG4gICAgaWYodGhpcy5pc0luc2lkZVJlY3QoZWxlbWVudFJlY3QsIHZpZXdSZWN0KSA9PT0gZmFsc2UpIHtcbiAgICAgIGNoZWNrQm91bmRhcmllcyA9IGZhbHNlOyBcbiAgICB9XG5cbiAgICB0aGlzLl9yZXNpemVSZWN0YW5nbGUoZWxlbWVudFJlY3QsIHBvc1hEZWx0YSwgcG9zWURlbHRhLCByZXNpemVTdHJhdGVneSk7XG5cbiAgICBpZiAoY2hlY2tCb3VuZGFyaWVzICYmIHRoaXMuaXNJbnNpZGVSZWN0KGVsZW1lbnRSZWN0LCB2aWV3UmVjdCkgPT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgXG4gICAgY29uc3QgY29tcHV0ZWRTdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICAgIGxldCB0b3AgPSBwYXJzZUludChjb21wdXRlZFN0eWxlLnRvcCwgMTApO1xuICAgIGxldCBsZWZ0ID0gcGFyc2VJbnQoY29tcHV0ZWRTdHlsZS5sZWZ0LCAxMCk7XG4gICAgbGV0IHdpZHRoID0gcGFyc2VJbnQoY29tcHV0ZWRTdHlsZS53aWR0aCwgMTApO1xuICAgIGxldCBoZWlnaHQgPSBwYXJzZUludChjb21wdXRlZFN0eWxlLmhlaWdodCwgMTApO1xuICAgIFxuICAgIGlmKFsnbncnLCd3JywgJ3N3J10uaW5jbHVkZXMocmVzaXplU3RyYXRlZ3kpKSB7XG4gICAgICAgbGVmdCA9IGxlZnQgKyBwb3NYRGVsdGE7ICAgICAgXG4gICAgfVxuXG4gICAgaWYoWydudycsJ24nLCAnbmUnXS5pbmNsdWRlcyhyZXNpemVTdHJhdGVneSkpIHtcbiAgICAgIHRvcCA9IHRvcCAgKyAgcG9zWURlbHRhOyAgICAgIFxuICAgIH1cblxuICAgIGlmKCFbJ24nLCdzJ10uaW5jbHVkZXMocmVzaXplU3RyYXRlZ3kpKSB7XG4gICAgICB3aWR0aCA9IGVsZW1lbnRSZWN0LndpZHRoO1xuICAgIH1cbiAgICBcbiAgICBpZiggdmlld1JlY3QuaGVpZ2h0IDwgZWxlbWVudFJlY3QuaGVpZ2h0ICl7XG4gICAgICB0aGlzLl9tYXhIZWlnaHRSZXNldChlbGVtZW50LCBlbGVtZW50UmVjdCk7XG4gICAgfVxuICAgIGVsc2UgaWYoIVsndycsJ2UnXS5pbmNsdWRlcyhyZXNpemVTdHJhdGVneSkpIHtcbiAgICAgIGhlaWdodCA9IGVsZW1lbnRSZWN0LmhlaWdodDtcbiAgICB9XG5cbiAgICBcbiAgICBlbGVtZW50LnN0eWxlLnRvcCAgICA9IHRvcCAgICsgJ3B4JztcbiAgICBlbGVtZW50LnN0eWxlLmxlZnQgICA9IGxlZnQgICsgJ3B4JztcbiAgICBlbGVtZW50LnN0eWxlLndpZHRoICA9IHdpZHRoICsgJ3B4JztcbiAgICBlbGVtZW50LnN0eWxlLmhlaWdodCAgPSBoZWlnaHQgKyAncHgnO1xuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbi8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqIHJlc2l6ZSBzdGFydCBhdCB0aGUgbGF5b3V0IG1hbmFnYWVyXG4gICAqIG9wZW4gZG9jdW1lbnQgbGlzdGVuZXJzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgXG4gICAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogc2V0IHRoZSBlbGVtZW50cyB1c2VkIGZvciByZXNpemluZ1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIHNldFJlc2l6ZXJzKGVsZW1lbnQ6SFRNTEVsZW1lbnQpIHtcbiAgICBjb25zdCBzZXRSZXNpemFibGVFbGVtZW50cyA9ICgpID0+IHtcbiAgICAgIGxldCByZXNpemFibGVFbGVtZW50czpSZXNpemFibGVFbGVtZW50W10gPSBbXTtcbiAgICAgIC8vIGdldCBkb20gZWxlbWVudHMgb2YgYWxsIHJlc2l6ZXJzXG4gICAgICB0aGlzLnJlc2l6ZXJzTGlzdC5mb3JFYWNoKCBpdGVtID0+IHtcbiAgICAgICAgY29uc3QgcmVzaXplRWxlbXMgPSAgZWxlbWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGl0ZW0uY2xhc3NOYW1lKTtcbiAgICAgICAgaWYoIHJlc2l6ZUVsZW1zPy5sZW5ndGggKSB7XG4gICAgICAgICAgLy8gc2V0IHJlc2l6ZSBzdHJhdGVneSBpbiBlYWNoIGVsZW1lbnQgc28gd2Uga25vdyBpbiB3aGljaCBkaXJlY3Rpb24gdG8gcmVzaXplXG4gICAgICAgICAgY29uc3QgZGVjb3JhdGVkUmVzaXplRWxlbXM6IFJlc2l6YWJsZUVsZW1lbnRbXSA9IEFycmF5LmZyb20ocmVzaXplRWxlbXMpLm1hcCggZWxlbSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXNpemFibGVFbGVtID0gZWxlbSBhcyBSZXNpemFibGVFbGVtZW50O1xuICAgICAgICAgICAgcmVzaXphYmxlRWxlbS5yZXNpemVTdHJhdGVneSA9IGl0ZW0ucmVzaXplU3RyYXRlZ3k7XG4gICAgICAgICAgICByZXR1cm4gcmVzaXphYmxlRWxlbTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIC8vIGFkZCBpdCB0byBsaXN0IG9mIGFsbCByZXNpemVyc1xuICAgICAgICAgIHJlc2l6YWJsZUVsZW1lbnRzID0gWy4uLnJlc2l6YWJsZUVsZW1lbnRzLCAuLi5kZWNvcmF0ZWRSZXNpemVFbGVtc107XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnJlc2l6YWJsZUVsZW1lbnRzID0gIFsuLi5yZXNpemFibGVFbGVtZW50c107XG4gICAgICB0aGlzLm9wZW5FbGVtZW50TGlzdGVuZXJzUmVzaXplKCk7XG4gICAgfVxuICAgIHNldFRpbWVvdXQoKCk9PntcbiAgICAgIHNldFJlc2l6YWJsZUVsZW1lbnRzKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqIG9wZW4gbW91c2Vkb3duLCB0b3VjaHN0YXJ0IGxpc3RlbmVycyBvbiBhbGwgZWxlbWVudHMgYWxsb3dlZCBmb3IgcmVzaXppbmdcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICBvcGVuRWxlbWVudExpc3RlbmVyc1Jlc2l6ZSgpIHtcbiAgICB0aGlzLnJlc2l6YWJsZUVsZW1lbnRzLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMuYm91bmRSZXNpemVTdGFydCk7XG4gICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLmJvdW5kUmVzaXplU3RhcnQpO1xuICAgIH0pO1xuICB9XG4gLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogb3BlbiBtb3VzZXVwLCB0b3VjaGVuZCBhbmQgbW91c2Vtb3ZlLCB0b3VjaG1vdmUgb24gZG9jdW1lbnRcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICBvcGVuRG9jdW1lbnRMaXN0ZW5lcnNSZXNpemUoKSB7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMuYm91bmRSZXNpemVFbmQpO1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgdGhpcy5ib3VuZFJlc2l6ZUVuZCk7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgdGhpcy5ib3VuZFJlc2l6ZUluUHJvZ3Jlc3MpO1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIHRoaXMuYm91bmRSZXNpemVJblByb2dyZXNzKTsgICAgXG4gIH1cbiBcbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiBjbG9zZSBtb3VzZXVwLCB0b3VjaGVuZCBhbmQgbW91c2Vtb3ZlLCB0b3VjaG1vdmUgb24gZG9jdW1lbnRcbiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICBjbG9zZURvY3VtZW50TGlzdGVuZXJzUmVzaXplKCkge1xuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMuYm91bmRSZXNpemVJblByb2dyZXNzKTtcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLmJvdW5kUmVzaXplSW5Qcm9ncmVzcyk7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMuYm91bmRSZXNpemVFbmQpO1xuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgdGhpcy5ib3VuZFJlc2l6ZUVuZCk7XG4gIH1cblxuLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiBjbG9zZSBtb3VzZWRvd24sIHRvdWNoc3RhcnQgbGlzdGVuZXJzIG9uIGFsbCBlbGVtZW50cyBhbGxvd2VkIGZvciByZXNpemluZ1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIGNsb3NlRWxlbWVudExpc3RlbmVyc1Jlc2l6ZSgpIHtcbiAgICB0aGlzLnJlc2l6YWJsZUVsZW1lbnRzLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMuYm91bmRSZXNpemVTdGFydCk7XG4gICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLmJvdW5kUmVzaXplU3RhcnQpO1xuICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLmJvdW5kUmVzaXplSW5Qcm9ncmVzcyk7XG4gICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIHRoaXMuYm91bmRSZXNpemVJblByb2dyZXNzKTsgICAgICBcbiAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMuYm91bmRSZXNpemVFbmQpO1xuICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIHRoaXMuYm91bmRSZXNpemVFbmQpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiBjbG9zZSBhbGwgbGlzdGVuZXJzXG4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgY2xvc2VBbGxMaXN0ZW5lcnNSZXNpemUoKSB7XG4gICAgdGhpcy5jbG9zZUVsZW1lbnRMaXN0ZW5lcnNSZXNpemUoKTtcbiAgICB0aGlzLmNsb3NlRG9jdW1lbnRMaXN0ZW5lcnNSZXNpemUoKTtcbiAgfVxuXG4gLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogc2V0dXAgYWN0dWFsIHJlc2l6ZSBzdHJhdGVneVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIHNldHVwUmVzaXplU3RyYXRlZ3koZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSB7XG4gICAgaWYoICFldmVudCApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBmaW5kIG9uIHdoaWNoIGVsZW1lbnQgcmVzaXplIHN0YXJ0ZWQgc28gd2Uga25vdyBpbiB3aGljaCBkaXJlY3Rpb24gdG8gcmVzaXplXG4gICAgbGV0IHJlc2l6ZVN0cmF0ZWd5OnN0cmluZyA9IFwic2VcIjtcbiAgICBjb25zdCAgcmVzaXplU291cmNlRWxlbSA9IGV2ZW50Py50YXJnZXQ7XG5cbiAgICBpZiggcmVzaXplU291cmNlRWxlbSApIHtcbiAgICAgIGNvbnN0ICBmb3VuZEVsZW0gPSB0aGlzLnJlc2l6YWJsZUVsZW1lbnRzLmZpbmQoIGl0ZW0gPT4gaXRlbSA9PT0gcmVzaXplU291cmNlRWxlbSApO1xuICAgICAgaWYgKGZvdW5kRWxlbT8ucmVzaXplU3RyYXRlZ3kpIHtcbiAgICAgICAgcmVzaXplU3RyYXRlZ3kgPSBmb3VuZEVsZW0/LnJlc2l6ZVN0cmF0ZWd5O1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuYWN0UmVzaXplU3RyYXRlZ3kgPSAgcmVzaXplU3RyYXRlZ3k7XG4gIH1cbn1cbiJdfQ==
@@ -41,10 +41,10 @@ export class XDraggableDirective {
41
41
  fireEvent(this, "clicked", event);
42
42
  }
43
43
  }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: XDraggableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
45
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.12", type: XDraggableDirective, isStandalone: true, selector: "[xDraggable]", outputs: { dragging: "dragging", clicked: "clicked" }, host: { listeners: { "document:mousemove": "onMouseMove($event)", "document:mouseup": "onMouseUp($event)", "mousedown": "onMouseDown($event)", "click": "onMouseClick($event)" } }, ngImport: i0 }); }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: XDraggableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
45
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.11", type: XDraggableDirective, isStandalone: true, selector: "[xDraggable]", outputs: { dragging: "dragging", clicked: "clicked" }, host: { listeners: { "document:mousemove": "onMouseMove($event)", "document:mouseup": "onMouseUp($event)", "mousedown": "onMouseDown($event)", "click": "onMouseClick($event)" } }, ngImport: i0 }); }
46
46
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: XDraggableDirective, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: XDraggableDirective, decorators: [{
48
48
  type: Directive,
49
49
  args: [{
50
50
  selector: '[xDraggable]',
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmltcGx1cy1vcGFjaXR5LXByb3BlcnRpZXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2ludGVyZmFjZXMvYmltcGx1cy1vcGFjaXR5LXByb3BlcnRpZXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIE9wYWNpdHlQcm9wZXJ0aWVzIHtcclxuICBpc09wYXF1ZTogYm9vbGVhbjtcclxuICBpc1NlbWlPcGFxdWU6IGJvb2xlYW47XHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmltcGx1cy1vcGFjaXR5LXByb3BlcnRpZXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2ludGVyZmFjZXMvYmltcGx1cy1vcGFjaXR5LXByb3BlcnRpZXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIE9wYWNpdHlQcm9wZXJ0aWVzIHtcbiAgaXNPcGFxdWU6IGJvb2xlYW47XG4gIGlzU2VtaU9wYXF1ZTogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmltcGx1cy12aXNpYmlsaXR5LXByb3BlcnRpZXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2ludGVyZmFjZXMvYmltcGx1cy12aXNpYmlsaXR5LXByb3BlcnRpZXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFZpc2liaWxpdHlQcm9wZXJ0aWVzIHtcclxuICBpc1Zpc2libGU6IGJvb2xlYW47XHJcbiAgaXNTZW1pVmlzaWJsZTogYm9vbGVhbjtcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmltcGx1cy12aXNpYmlsaXR5LXByb3BlcnRpZXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL2ludGVyZmFjZXMvYmltcGx1cy12aXNpYmlsaXR5LXByb3BlcnRpZXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFZpc2liaWxpdHlQcm9wZXJ0aWVzIHtcbiAgaXNWaXNpYmxlOiBib29sZWFuO1xuICBpc1NlbWlWaXNpYmxlOiBib29sZWFuO1xufVxuIl19
@@ -1,14 +1,14 @@
1
1
  import { Component } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class NgxBimplusComponentsComponent {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NgxBimplusComponentsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: NgxBimplusComponentsComponent, isStandalone: true, selector: "lib-ngx-bimplus-components", ngImport: i0, template: `
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: NgxBimplusComponentsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.11", type: NgxBimplusComponentsComponent, isStandalone: true, selector: "lib-ngx-bimplus-components", ngImport: i0, template: `
6
6
  <p>
7
7
  ngx-bimplus-components works!
8
8
  </p>
9
9
  `, isInline: true, styles: [""] }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NgxBimplusComponentsComponent, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: NgxBimplusComponentsComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{ selector: 'lib-ngx-bimplus-components', standalone: true, imports: [], template: `
14
14
  <p>
@@ -1,10 +1,10 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class NgxBimplusComponentsService {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NgxBimplusComponentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NgxBimplusComponentsService, providedIn: 'root' }); }
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: NgxBimplusComponentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: NgxBimplusComponentsService, providedIn: 'root' }); }
6
6
  }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: NgxBimplusComponentsService, decorators: [{
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: NgxBimplusComponentsService, decorators: [{
8
8
  type: Injectable,
9
9
  args: [{
10
10
  providedIn: 'root'
@@ -4,10 +4,10 @@ export class PxsuffixPipe {
4
4
  transform(input) {
5
5
  return input + 'px';
6
6
  }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PxsuffixPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
8
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: PxsuffixPipe, isStandalone: true, name: "pxsuffix" }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PxsuffixPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
8
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: PxsuffixPipe, isStandalone: true, name: "pxsuffix" }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PxsuffixPipe, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: PxsuffixPipe, decorators: [{
11
11
  type: Pipe,
12
12
  args: [{
13
13
  name: 'pxsuffix',
@@ -54,10 +54,10 @@ export class CursorsService {
54
54
  this.removeCursor(CursorType.Hide);
55
55
  }
56
56
  }
57
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CursorsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
58
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CursorsService, providedIn: 'root' }); }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CursorsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
58
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CursorsService, providedIn: 'root' }); }
59
59
  }
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CursorsService, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CursorsService, decorators: [{
61
61
  type: Injectable,
62
62
  args: [{
63
63
  providedIn: 'root'
@@ -57,10 +57,10 @@ export class LanguageStringsService {
57
57
  }
58
58
  this.currentLanguageStrings$.next(dataJSON);
59
59
  }
60
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LanguageStringsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
61
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LanguageStringsService, providedIn: 'root' }); }
60
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LanguageStringsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
61
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LanguageStringsService, providedIn: 'root' }); }
62
62
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LanguageStringsService, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LanguageStringsService, decorators: [{
64
64
  type: Injectable,
65
65
  args: [{
66
66
  providedIn: 'root'
@@ -353,10 +353,10 @@ export class LayoutManagerService {
353
353
  const elementRect = this._getElementRect(item, undefined, undefined);
354
354
  this._setObjectConfig(item, left, top, elementRect && elementRect.width > 0 ? elementRect.width : 0, elementRect && elementRect.height > 0 ? elementRect.height : 0);
355
355
  }
356
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LayoutManagerService, deps: [{ token: i1.ResizeObserverService }, { token: i2.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
357
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LayoutManagerService, providedIn: 'root' }); }
356
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LayoutManagerService, deps: [{ token: i1.ResizeObserverService }, { token: i2.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
357
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LayoutManagerService, providedIn: 'root' }); }
358
358
  }
359
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LayoutManagerService, decorators: [{
359
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LayoutManagerService, decorators: [{
360
360
  type: Injectable,
361
361
  args: [{
362
362
  providedIn: 'root'
@@ -58,13 +58,13 @@ export class LocalStorageService {
58
58
  watchStorage() {
59
59
  return this.storageSubject.asObservable();
60
60
  }
61
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
62
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LocalStorageService, providedIn: 'root' }); }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
62
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LocalStorageService, providedIn: 'root' }); }
63
63
  }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LocalStorageService, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: LocalStorageService, decorators: [{
65
65
  type: Injectable,
66
66
  args: [{
67
67
  providedIn: 'root'
68
68
  }]
69
69
  }], ctorParameters: () => [] });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2xvY2FsLXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7O0FBS25ELE1BQU0sT0FBTyxtQkFBbUI7SUFJOUI7UUFGUSxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUF5QyxJQUFJLENBQUMsQ0FBQztJQUUzRSxDQUFDO0lBRWpCLHFDQUFxQztJQUNyQyxPQUFPLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDaEMsSUFBSSxDQUFDO1lBQ0gsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEJBQThCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbkQsQ0FBQztJQUNILENBQUM7SUFFRCx1Q0FBdUM7SUFDdkMsT0FBTyxDQUFDLEdBQVc7UUFDakIsSUFBSSxDQUFDO1lBQ0gsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25DLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLFVBQVUsQ0FBQyxHQUFXO1FBQ3BCLElBQUksQ0FBQztZQUNILFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRUQsa0NBQWtDO0lBQ2xDLEtBQUs7UUFDSCxJQUFJLENBQUM7WUFDSCxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQsZ0NBQWdDO0lBQ2hDLFNBQVMsQ0FBQyxHQUFXLEVBQUUsS0FBYztRQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGtDQUFrQztJQUNsQyxTQUFTLENBQUMsR0FBVztRQUNuQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDMUMsQ0FBQztJQUVELG9DQUFvQztJQUNwQyxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVDLENBQUM7K0dBNURVLG1CQUFtQjttSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9jYWxTdG9yYWdlU2VydmljZSB7XHJcblxyXG4gIHByaXZhdGUgc3RvcmFnZVN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsga2V5OiBzdHJpbmcsIHZhbHVlOiB1bmtub3duIH0gfCBudWxsPihudWxsKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgLy8gU2V0IGEgc3RyaW5nIHZhbHVlIGluIGxvY2FsU3RvcmFnZVxyXG4gIHNldEl0ZW0oa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTdWJqZWN0Lm5leHQoeyBrZXksIHZhbHVlIH0pO1xyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBzYXZpbmcgdG8gbG9jYWxTdG9yYWdlJywgZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBHZXQgYSBzdHJpbmcgdmFsdWUgZnJvbSBsb2NhbFN0b3JhZ2VcclxuICBnZXRJdGVtKGtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICB0cnkge1xyXG4gICAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgcmVhZGluZyBmcm9tIGxvY2FsU3RvcmFnZScsIGUpO1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFJlbW92ZSBhbiBpdGVtIGZyb20gbG9jYWxTdG9yYWdlXHJcbiAgcmVtb3ZlSXRlbShrZXk6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdHJ5IHtcclxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcclxuICAgICAgdGhpcy5zdG9yYWdlU3ViamVjdC5uZXh0KHsga2V5LCB2YWx1ZTogbnVsbCB9KTtcclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgcmVtb3ZpbmcgZnJvbSBsb2NhbFN0b3JhZ2UnLCBlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIENsZWFyIGFsbCBpdGVtcyBpbiBsb2NhbFN0b3JhZ2VcclxuICBjbGVhcigpOiB2b2lkIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5jbGVhcigpO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTdWJqZWN0Lm5leHQobnVsbCk7XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGNsZWFyaW5nIGxvY2FsU3RvcmFnZScsIGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gU2V0IGFuIG9iamVjdCBpbiBsb2NhbFN0b3JhZ2VcclxuICBzZXRPYmplY3Qoa2V5OiBzdHJpbmcsIHZhbHVlOiB1bmtub3duKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldEl0ZW0oa2V5LCBKU09OLnN0cmluZ2lmeSh2YWx1ZSkpO1xyXG4gIH1cclxuXHJcbiAgLy8gR2V0IGFuIG9iamVjdCBmcm9tIGxvY2FsU3RvcmFnZVxyXG4gIGdldE9iamVjdChrZXk6IHN0cmluZyk6IHVua25vd24ge1xyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldEl0ZW0oa2V5KTtcclxuICAgIHJldHVybiB2YWx1ZSA/IEpTT04ucGFyc2UodmFsdWUpIDogbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIFdhdGNoIGZvciBjaGFuZ2VzIGluIGxvY2FsU3RvcmFnZVxyXG4gIHdhdGNoU3RvcmFnZSgpOiBPYnNlcnZhYmxlPHsga2V5OiBzdHJpbmcsIHZhbHVlOiB1bmtub3duIH0gfCBudWxsPiB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcbn1cclxuIl19
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2xvY2FsLXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7O0FBS25ELE1BQU0sT0FBTyxtQkFBbUI7SUFJOUI7UUFGUSxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUF5QyxJQUFJLENBQUMsQ0FBQztJQUUzRSxDQUFDO0lBRWpCLHFDQUFxQztJQUNyQyxPQUFPLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDaEMsSUFBSSxDQUFDO1lBQ0gsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEJBQThCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbkQsQ0FBQztJQUNILENBQUM7SUFFRCx1Q0FBdUM7SUFDdkMsT0FBTyxDQUFDLEdBQVc7UUFDakIsSUFBSSxDQUFDO1lBQ0gsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25DLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLFVBQVUsQ0FBQyxHQUFXO1FBQ3BCLElBQUksQ0FBQztZQUNILFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDO0lBRUQsa0NBQWtDO0lBQ2xDLEtBQUs7UUFDSCxJQUFJLENBQUM7WUFDSCxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQsZ0NBQWdDO0lBQ2hDLFNBQVMsQ0FBQyxHQUFXLEVBQUUsS0FBYztRQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGtDQUFrQztJQUNsQyxTQUFTLENBQUMsR0FBVztRQUNuQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDMUMsQ0FBQztJQUVELG9DQUFvQztJQUNwQyxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVDLENBQUM7K0dBNURVLG1CQUFtQjttSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTG9jYWxTdG9yYWdlU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBzdG9yYWdlU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8eyBrZXk6IHN0cmluZywgdmFsdWU6IHVua25vd24gfSB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgLy8gU2V0IGEgc3RyaW5nIHZhbHVlIGluIGxvY2FsU3RvcmFnZVxuICBzZXRJdGVtKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpO1xuICAgICAgdGhpcy5zdG9yYWdlU3ViamVjdC5uZXh0KHsga2V5LCB2YWx1ZSB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBzYXZpbmcgdG8gbG9jYWxTdG9yYWdlJywgZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IGEgc3RyaW5nIHZhbHVlIGZyb20gbG9jYWxTdG9yYWdlXG4gIGdldEl0ZW0oa2V5OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgcmVhZGluZyBmcm9tIGxvY2FsU3RvcmFnZScsIGUpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGFuIGl0ZW0gZnJvbSBsb2NhbFN0b3JhZ2VcbiAgcmVtb3ZlSXRlbShrZXk6IHN0cmluZyk6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xuICAgICAgdGhpcy5zdG9yYWdlU3ViamVjdC5uZXh0KHsga2V5LCB2YWx1ZTogbnVsbCB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciByZW1vdmluZyBmcm9tIGxvY2FsU3RvcmFnZScsIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENsZWFyIGFsbCBpdGVtcyBpbiBsb2NhbFN0b3JhZ2VcbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdHJ5IHtcbiAgICAgIGxvY2FsU3RvcmFnZS5jbGVhcigpO1xuICAgICAgdGhpcy5zdG9yYWdlU3ViamVjdC5uZXh0KG51bGwpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGNsZWFyaW5nIGxvY2FsU3RvcmFnZScsIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldCBhbiBvYmplY3QgaW4gbG9jYWxTdG9yYWdlXG4gIHNldE9iamVjdChrZXk6IHN0cmluZywgdmFsdWU6IHVua25vd24pOiB2b2lkIHtcbiAgICB0aGlzLnNldEl0ZW0oa2V5LCBKU09OLnN0cmluZ2lmeSh2YWx1ZSkpO1xuICB9XG5cbiAgLy8gR2V0IGFuIG9iamVjdCBmcm9tIGxvY2FsU3RvcmFnZVxuICBnZXRPYmplY3Qoa2V5OiBzdHJpbmcpOiB1bmtub3duIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0SXRlbShrZXkpO1xuICAgIHJldHVybiB2YWx1ZSA/IEpTT04ucGFyc2UodmFsdWUpIDogbnVsbDtcbiAgfVxuXG4gIC8vIFdhdGNoIGZvciBjaGFuZ2VzIGluIGxvY2FsU3RvcmFnZVxuICB3YXRjaFN0b3JhZ2UoKTogT2JzZXJ2YWJsZTx7IGtleTogc3RyaW5nLCB2YWx1ZTogdW5rbm93biB9IHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG59XG4iXX0=
@@ -22,13 +22,13 @@ export class ResizeObserverService {
22
22
  }
23
23
  return this.internalRectSize;
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ResizeObserverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
26
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ResizeObserverService, providedIn: 'root' }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ResizeObserverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
26
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ResizeObserverService, providedIn: 'root' }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ResizeObserverService, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: ResizeObserverService, decorators: [{
29
29
  type: Injectable,
30
30
  args: [{
31
31
  providedIn: 'root'
32
32
  }]
33
33
  }], ctorParameters: () => [] });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLW9ic2VydmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYmltcGx1cy1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvcmVzaXplLW9ic2VydmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUtuRCxNQUFNLE9BQU8scUJBQXFCO0lBT2hDO1FBTFEsY0FBUyxHQUF5QyxJQUFJLGVBQWUsQ0FBb0IsU0FBUyxDQUFDLENBQUM7UUFDcEcscUJBQWdCLEdBQVksSUFBSSxPQUFPLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekQsOENBQThDO1FBQ3ZDLG1CQUFjLEdBQW9DLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFdkUsQ0FBQztJQUVWLE9BQU8sQ0FBQyxRQUFpQjtRQUM5QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxJQUFFLENBQUMsRUFBRyxDQUFDLENBQUMsZ0NBQWdDO1lBQ3pHLE1BQU0sVUFBVSxHQUFvQixRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3hFLElBQUcsQ0FBQyxVQUFVLEVBQUMsQ0FBQztnQkFDZCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztZQUMvQixDQUFDO1lBQ0QsT0FBTyxVQUFVLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQzsrR0F2QlUscUJBQXFCO21IQUFyQixxQkFBcUIsY0FGcEIsTUFBTTs7NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXNpemVPYnNlcnZlclNlcnZpY2Uge1xyXG5cclxuICBwcml2YXRlIHJlY3RTaXplJDogQmVoYXZpb3JTdWJqZWN0PERPTVJlY3QgfHVuZGVmaW5lZCA+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxET01SZWN0fHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcclxuICBwcml2YXRlIGludGVybmFsUmVjdFNpemUgOkRPTVJlY3QgPSBuZXcgRE9NUmVjdCgxLDEsMSwxKTtcclxuICAvLyBPYnNlcnZhYmxlIHRoYXQgY29tcG9uZW50cyBjYW4gc3Vic2NyaWJlIHRvXHJcbiAgcHVibGljIHBhcmVudEFwcFJlY3QkOiBPYnNlcnZhYmxlPERPTVJlY3QgfCB1bmRlZmluZWQ+ID0gdGhpcy5yZWN0U2l6ZSQuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIHB1YmxpYyBzZXRTaXplKG5ld1ZhbHVlOiBET01SZWN0KTogdm9pZCB7XHJcbiAgICB0aGlzLnJlY3RTaXplJC5uZXh0KG5ld1ZhbHVlKTsgIFxyXG4gICAgdGhpcy5pbnRlcm5hbFJlY3RTaXplID0gbmV3VmFsdWU7ICAgIFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFBhcmVudEFwcFJlY3QgKCk6RE9NUmVjdHtcclxuICAgIGlmKCB0aGlzLmludGVybmFsUmVjdFNpemUud2lkdGg8PTEgfHwgdGhpcy5pbnRlcm5hbFJlY3RTaXplPy5oZWlnaHQ8PTEgKSB7IC8vIG5vdCBzZXQgdXAgd2l0aCByZWFsIGRhdGEgeWV0XHJcbiAgICAgIGNvbnN0IHBhcmVudFZpZXc6SFRNTEVsZW1lbnR8bnVsbCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5tYWluVmlldycpO1xyXG4gICAgICBpZighcGFyZW50Vmlldyl7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxSZWN0U2l6ZTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gcGFyZW50Vmlldy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmludGVybmFsUmVjdFNpemU7XHJcbiAgfSAgXHJcbn1cclxuIl19
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLW9ic2VydmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYmltcGx1cy1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvcmVzaXplLW9ic2VydmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUtuRCxNQUFNLE9BQU8scUJBQXFCO0lBT2hDO1FBTFEsY0FBUyxHQUF5QyxJQUFJLGVBQWUsQ0FBb0IsU0FBUyxDQUFDLENBQUM7UUFDcEcscUJBQWdCLEdBQVksSUFBSSxPQUFPLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekQsOENBQThDO1FBQ3ZDLG1CQUFjLEdBQW9DLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFdkUsQ0FBQztJQUVWLE9BQU8sQ0FBQyxRQUFpQjtRQUM5QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxJQUFFLENBQUMsRUFBRyxDQUFDLENBQUMsZ0NBQWdDO1lBQ3pHLE1BQU0sVUFBVSxHQUFvQixRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3hFLElBQUcsQ0FBQyxVQUFVLEVBQUMsQ0FBQztnQkFDZCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztZQUMvQixDQUFDO1lBQ0QsT0FBTyxVQUFVLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQzsrR0F2QlUscUJBQXFCO21IQUFyQixxQkFBcUIsY0FGcEIsTUFBTTs7NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBSZXNpemVPYnNlcnZlclNlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVjdFNpemUkOiBCZWhhdmlvclN1YmplY3Q8RE9NUmVjdCB8dW5kZWZpbmVkID4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERPTVJlY3R8dW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBwcml2YXRlIGludGVybmFsUmVjdFNpemUgOkRPTVJlY3QgPSBuZXcgRE9NUmVjdCgxLDEsMSwxKTtcbiAgLy8gT2JzZXJ2YWJsZSB0aGF0IGNvbXBvbmVudHMgY2FuIHN1YnNjcmliZSB0b1xuICBwdWJsaWMgcGFyZW50QXBwUmVjdCQ6IE9ic2VydmFibGU8RE9NUmVjdCB8IHVuZGVmaW5lZD4gPSB0aGlzLnJlY3RTaXplJC5hc09ic2VydmFibGUoKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIHB1YmxpYyBzZXRTaXplKG5ld1ZhbHVlOiBET01SZWN0KTogdm9pZCB7XG4gICAgdGhpcy5yZWN0U2l6ZSQubmV4dChuZXdWYWx1ZSk7ICBcbiAgICB0aGlzLmludGVybmFsUmVjdFNpemUgPSBuZXdWYWx1ZTsgICAgXG4gIH1cblxuICBwdWJsaWMgZ2V0UGFyZW50QXBwUmVjdCAoKTpET01SZWN0e1xuICAgIGlmKCB0aGlzLmludGVybmFsUmVjdFNpemUud2lkdGg8PTEgfHwgdGhpcy5pbnRlcm5hbFJlY3RTaXplPy5oZWlnaHQ8PTEgKSB7IC8vIG5vdCBzZXQgdXAgd2l0aCByZWFsIGRhdGEgeWV0XG4gICAgICBjb25zdCBwYXJlbnRWaWV3OkhUTUxFbGVtZW50fG51bGwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcubWFpblZpZXcnKTtcbiAgICAgIGlmKCFwYXJlbnRWaWV3KXtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxSZWN0U2l6ZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBwYXJlbnRWaWV3LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5pbnRlcm5hbFJlY3RTaXplO1xuICB9ICBcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYmltcGx1cy1jb21wb25lbnRzL3NyYy9saWIvdHlwZXMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIExvY2FsaXplZFN0cmluZ3MgPSB7XHJcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7IC8vIFRoaXMgYWxsb3dzIGtleS12YWx1ZSBwYWlyc1xyXG4gIH07XHJcblxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgTWVudUxpc3RUeXBle1xyXG4gICdhY3Rpb24nOiBzdHJpbmcgLFxyXG4gICdpZCc6ICAgICBzdHJpbmcgLFxyXG4gICd0eXBlJzogICBzdHJpbmcgLFxyXG4gICdjbGFzcyc6ICBzdHJpbmcgLCAgICBcclxuICAndGV4dElkJzogc3RyaW5nICwgIFxyXG4gICd0ZXh0SWREaXNhYmxlZCc6IHN0cmluZyxcclxuICAnZGlzYWJsZWRUaXRsZSc6IHN0cmluZyxcclxuICAnY2hlY2tTdWJzY3JpcHRpb24nOiBib29sZWFuLFxyXG4gICdkZXZPclN0YWdlT25seScgOiBib29sZWFuLCBcclxuICAnY2xpY2tQb2xpY3knOiBzdHJpbmdcclxufSJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYmltcGx1cy1jb21wb25lbnRzL3NyYy9saWIvdHlwZXMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIExvY2FsaXplZFN0cmluZ3MgPSB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nOyAvLyBUaGlzIGFsbG93cyBrZXktdmFsdWUgcGFpcnNcbiAgfTtcblxuICBleHBvcnQgaW50ZXJmYWNlIE1lbnVMaXN0VHlwZXtcbiAgJ2FjdGlvbic6IHN0cmluZyAsXG4gICdpZCc6ICAgICBzdHJpbmcgLFxuICAndHlwZSc6ICAgc3RyaW5nICxcbiAgJ2NsYXNzJzogIHN0cmluZyAsICAgIFxuICAndGV4dElkJzogc3RyaW5nICwgIFxuICAndGV4dElkRGlzYWJsZWQnOiBzdHJpbmcsXG4gICdkaXNhYmxlZFRpdGxlJzogc3RyaW5nLFxuICAnY2hlY2tTdWJzY3JpcHRpb24nOiBib29sZWFuLFxuICAnZGV2T3JTdGFnZU9ubHknIDogYm9vbGVhbiwgXG4gICdjbGlja1BvbGljeSc6IHN0cmluZ1xufSJdfQ==
@@ -69,4 +69,4 @@ export class FilterString {
69
69
  };
70
70
  }
71
71
  }
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyU3RyaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL3V0aWxzL2ZpbHRlclN0cmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLGtCQUFrQixHQUFHLDZCQUE2QixDQUFDO0FBRXpELE1BQU0sT0FBTyxZQUFZO0lBRXZCLFlBQVksZUFBdUIsRUFBRSxFQUFFLG9CQUE0QixDQUFDO1FBUzVELGtCQUFhLEdBQVksRUFBRSxDQUFDO1FBQzVCLHVCQUFrQixHQUFZLENBQUMsQ0FBQztRQVR0QyxJQUFJLENBQUMsYUFBYSxHQUFHLFlBQVksQ0FBQztRQUNsQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsaUJBQWlCLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBS0Qsa0JBQWtCLENBQUMsUUFBNEI7UUFDN0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLGtCQUFrQixFQUFFLENBQUM7UUFFaEQsS0FBSSxNQUFNLFNBQVMsSUFBSSxRQUFRLEVBQUMsQ0FBQztZQUMvQixJQUFJLENBQUMsYUFBYSxJQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUM7UUFDMUMsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsbUNBQW1DLENBQUMsUUFBNEI7UUFDOUQsTUFBTSxjQUFjLEdBQTJCLEVBQUUsQ0FBQztRQUNsRCxLQUFJLE1BQU0sU0FBUyxJQUFJLFFBQVEsRUFBQyxDQUFDO1lBQy9CLElBQUcsU0FBUyxDQUFDLEVBQUUsSUFBSSxTQUFTLENBQUMsSUFBSTtnQkFDL0IsY0FBYyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBQ2xELENBQUM7UUFFRCxPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsaUJBQW9ELFNBQVM7UUFDNUUsTUFBTSxRQUFRLEdBQXVCLEVBQUUsQ0FBQztRQUV4QyxJQUFJLDJCQUEyQixHQUFHLEtBQUssQ0FBQztRQUV4QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxLQUFJLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBQyxDQUFDO1lBQ3ZCLElBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUMsQ0FBQztnQkFDcEIsU0FBUztZQUNYLENBQUM7WUFFRCxJQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFDLENBQUM7Z0JBQ3BFLDJCQUEyQixHQUFHLElBQUksQ0FBQztnQkFDbkMsU0FBUztZQUNYLENBQUM7WUFFRCxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQztZQUNoRSxJQUFHLFFBQVEsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGtCQUFrQixFQUFDLENBQUM7Z0JBQzlDLE1BQU07WUFDUixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxTQUFpQixFQUFFLGlCQUFvRCxTQUFTO1FBQzVHLElBQUksSUFBSSxHQUFHLFNBQVMsQ0FBQztRQUNyQixJQUFJLEVBQUUsR0FBd0IsU0FBUyxDQUFDO1FBRXhDLE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqRCxNQUFNLGtCQUFrQixHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFbEQsSUFBRyxpQkFBaUIsSUFBSSxDQUFDLElBQUksa0JBQWtCLElBQUcsQ0FBQyxJQUFJLGtCQUFrQixHQUFHLGlCQUFpQixFQUFDLENBQUM7WUFDN0YsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBQyxDQUFDLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztZQUM1RSxFQUFFLEdBQUcsVUFBVSxDQUFDO1lBQ2hCLElBQUcsVUFBVSxJQUFJLGNBQWMsRUFBQyxDQUFDO2dCQUMvQixNQUFNLGNBQWMsR0FBRyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ2xELElBQUcsY0FBYyxFQUFDLENBQUM7b0JBQ2pCLElBQUksR0FBRyxjQUFjLENBQUM7Z0JBQ3hCLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQzthQUFLLElBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBQyxDQUFDO1lBQ2hDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdEMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFFRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUk7WUFDVixTQUFTLEVBQUcsS0FBSyxHQUFDLFNBQVM7WUFDM0IsRUFBRSxFQUFHLEVBQUU7U0FDUixDQUFBO0lBQ0gsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlsdGVyQ3JpdGVyaXVtIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvYmltcGx1cy1vYmplY3QtbmF2aWdhdG9yL2JpbXBsdXMtb2JqZWN0LW5hdmlnYXRvci5pbnRlcmZhY2VcIjtcclxuXHJcbmNvbnN0IERpdnNpb25JRFN1YnN0cmluZyA9ICd0YWJBdHRyaWJFbGVtZW50LkRpdmlzaW9uSUQnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEZpbHRlclN0cmluZyB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGZpbHRlclN0cmluZzogc3RyaW5nID0gXCJcIiwgbWF4RmlsdGVyQ3JpdGVyaWE6IG51bWJlciA9IDUpe1xyXG4gICAgdGhpcy5fZmlsdGVyU3RyaW5nID0gZmlsdGVyU3RyaW5nO1xyXG4gICAgdGhpcy5fbWF4RmlsdGVyQ3JpdGVyaWEgPSBtYXhGaWx0ZXJDcml0ZXJpYTtcclxuICB9XHJcblxyXG4gIGdldCBmaWx0ZXJTdHJpbmcoKXtcclxuICAgIHJldHVybiB0aGlzLl9maWx0ZXJTdHJpbmc7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9maWx0ZXJTdHJpbmcgOiBzdHJpbmcgPSBcIlwiO1xyXG4gIHByaXZhdGUgX21heEZpbHRlckNyaXRlcmlhIDogbnVtYmVyID0gNTtcclxuXHJcbiAgZnJvbUZpbHRlckNyaXRlcmlhKGNyaXRlcmlhIDogRmlsdGVyQ3JpdGVyaXVtW10pe1xyXG4gICAgdGhpcy5fZmlsdGVyU3RyaW5nID0gYFtJXSR7RGl2c2lvbklEU3Vic3RyaW5nfWA7XHJcbiAgICBcclxuICAgIGZvcihjb25zdCBjcml0ZXJpdW0gb2YgY3JpdGVyaWEpe1xyXG4gICAgICB0aGlzLl9maWx0ZXJTdHJpbmcrPWNyaXRlcml1bS5zdWJTdHJpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlclN0cmluZztcclxuICB9XHJcblxyXG4gIGdldFJlYWRhYmxlVmFsdWVzRnJvbUZpbHRlckNyaXRlcmlhKGNyaXRlcmlhIDogRmlsdGVyQ3JpdGVyaXVtW10pIDogUmVjb3JkPHN0cmluZyxzdHJpbmc+e1xyXG4gICAgY29uc3QgcmVhZGFibGVWYWx1ZXMgOiBSZWNvcmQ8c3RyaW5nLHN0cmluZz4gPSB7fTtcclxuICAgIGZvcihjb25zdCBjcml0ZXJpdW0gb2YgY3JpdGVyaWEpe1xyXG4gICAgICBpZihjcml0ZXJpdW0uaWQgJiYgY3JpdGVyaXVtLm5hbWUpXHJcbiAgICAgICAgcmVhZGFibGVWYWx1ZXNbY3JpdGVyaXVtLmlkXSA9IGNyaXRlcml1bS5uYW1lO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZWFkYWJsZVZhbHVlcztcclxuICB9XHJcblxyXG4gIHRvRmlsdGVyQ3JpdGVyaWEocmVhZGFibGVWYWx1ZXM6IFJlY29yZDxzdHJpbmcsc3RyaW5nPiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZCk6IEZpbHRlckNyaXRlcml1bVtde1xyXG4gICAgY29uc3QgY3JpdGVyaWEgOiBGaWx0ZXJDcml0ZXJpdW1bXSA9IFtdO1xyXG5cclxuICAgIGxldCBmaXJzdE1vZGVsSWRDcml0ZXJpYVNraXBwZWQgPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdCBwYXJ0cyA9IHRoaXMuX2ZpbHRlclN0cmluZy5zcGxpdCgnW0ldJyk7XHJcbiAgICBmb3IoY29uc3QgcGFydCBvZiBwYXJ0cyl7XHJcbiAgICAgIGlmKHBhcnQubGVuZ3RoID09PSAwKXtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYocGFydC5pbmNsdWRlcyhEaXZzaW9uSURTdWJzdHJpbmcpICYmICFmaXJzdE1vZGVsSWRDcml0ZXJpYVNraXBwZWQpe1xyXG4gICAgICAgIGZpcnN0TW9kZWxJZENyaXRlcmlhU2tpcHBlZCA9IHRydWU7XHJcbiAgICAgICAgY29udGludWU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNyaXRlcmlhLnB1c2godGhpcy5fcGFyc2VGaWx0ZXJTdWJzdHJpbmcocGFydCwgcmVhZGFibGVWYWx1ZXMpKTtcclxuICAgICAgaWYoY3JpdGVyaWEubGVuZ3RoID09PSB0aGlzLl9tYXhGaWx0ZXJDcml0ZXJpYSl7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY3JpdGVyaWE7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9wYXJzZUZpbHRlclN1YnN0cmluZyhzdWJTdHJpbmc6IHN0cmluZywgcmVhZGFibGVWYWx1ZXM6IFJlY29yZDxzdHJpbmcsc3RyaW5nPiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZCk6IEZpbHRlckNyaXRlcml1bXtcclxuICAgIGxldCBuYW1lID0gc3ViU3RyaW5nO1xyXG4gICAgbGV0IGlkIDogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xyXG5cclxuICAgIGNvbnN0IGluZGV4T3BlbkJyYWNrZXRzID0gc3ViU3RyaW5nLmluZGV4T2YoJ1snKTtcclxuICAgIGNvbnN0IGluZGV4Q2xvc2VCcmFja2V0cyA9IHN1YlN0cmluZy5pbmRleE9mKCddJyk7XHJcblxyXG4gICAgaWYoaW5kZXhPcGVuQnJhY2tldHMgPj0gMCAmJiBpbmRleENsb3NlQnJhY2tldHMgPj0wICYmIGluZGV4Q2xvc2VCcmFja2V0cyA+IGluZGV4T3BlbkJyYWNrZXRzKXtcclxuICAgICAgY29uc3QgcmVhZGFibGVJZCA9IHN1YlN0cmluZy5zbGljZShpbmRleE9wZW5CcmFja2V0cysxLCBpbmRleENsb3NlQnJhY2tldHMpO1xyXG4gICAgICBpZCA9IHJlYWRhYmxlSWQ7XHJcbiAgICAgIGlmKHJlYWRhYmxlSWQgJiYgcmVhZGFibGVWYWx1ZXMpe1xyXG4gICAgICAgIGNvbnN0IHJlYWRhYmxlU3RyaW5nID0gcmVhZGFibGVWYWx1ZXNbcmVhZGFibGVJZF07XHJcbiAgICAgICAgaWYocmVhZGFibGVTdHJpbmcpe1xyXG4gICAgICAgICAgbmFtZSA9IHJlYWRhYmxlU3RyaW5nO1xyXG4gICAgICAgIH1cclxuICAgICAgfSAgICAgIFxyXG4gICAgfWVsc2UgaWYoc3ViU3RyaW5nLmluY2x1ZGVzKCcuJykpe1xyXG4gICAgICBjb25zdCBzcGxpdHRlZCA9IHN1YlN0cmluZy5zcGxpdCgnLicpO1xyXG4gICAgICBuYW1lID0gc3BsaXR0ZWRbc3BsaXR0ZWQubGVuZ3RoLTFdO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5hbWU6IG5hbWUsXHJcbiAgICAgIHN1YlN0cmluZyA6IFwiW0ldXCIrc3ViU3RyaW5nLFxyXG4gICAgICBpZCA6IGlkXHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyU3RyaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWJpbXBsdXMtY29tcG9uZW50cy9zcmMvbGliL3V0aWxzL2ZpbHRlclN0cmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLGtCQUFrQixHQUFHLDZCQUE2QixDQUFDO0FBRXpELE1BQU0sT0FBTyxZQUFZO0lBRXZCLFlBQVksZUFBdUIsRUFBRSxFQUFFLG9CQUE0QixDQUFDO1FBUzVELGtCQUFhLEdBQVksRUFBRSxDQUFDO1FBQzVCLHVCQUFrQixHQUFZLENBQUMsQ0FBQztRQVR0QyxJQUFJLENBQUMsYUFBYSxHQUFHLFlBQVksQ0FBQztRQUNsQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsaUJBQWlCLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBS0Qsa0JBQWtCLENBQUMsUUFBNEI7UUFDN0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLGtCQUFrQixFQUFFLENBQUM7UUFFaEQsS0FBSSxNQUFNLFNBQVMsSUFBSSxRQUFRLEVBQUMsQ0FBQztZQUMvQixJQUFJLENBQUMsYUFBYSxJQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUM7UUFDMUMsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsbUNBQW1DLENBQUMsUUFBNEI7UUFDOUQsTUFBTSxjQUFjLEdBQTJCLEVBQUUsQ0FBQztRQUNsRCxLQUFJLE1BQU0sU0FBUyxJQUFJLFFBQVEsRUFBQyxDQUFDO1lBQy9CLElBQUcsU0FBUyxDQUFDLEVBQUUsSUFBSSxTQUFTLENBQUMsSUFBSTtnQkFDL0IsY0FBYyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBQ2xELENBQUM7UUFFRCxPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsaUJBQW9ELFNBQVM7UUFDNUUsTUFBTSxRQUFRLEdBQXVCLEVBQUUsQ0FBQztRQUV4QyxJQUFJLDJCQUEyQixHQUFHLEtBQUssQ0FBQztRQUV4QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxLQUFJLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBQyxDQUFDO1lBQ3ZCLElBQUcsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUMsQ0FBQztnQkFDcEIsU0FBUztZQUNYLENBQUM7WUFFRCxJQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFDLENBQUM7Z0JBQ3BFLDJCQUEyQixHQUFHLElBQUksQ0FBQztnQkFDbkMsU0FBUztZQUNYLENBQUM7WUFFRCxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQztZQUNoRSxJQUFHLFFBQVEsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGtCQUFrQixFQUFDLENBQUM7Z0JBQzlDLE1BQU07WUFDUixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxTQUFpQixFQUFFLGlCQUFvRCxTQUFTO1FBQzVHLElBQUksSUFBSSxHQUFHLFNBQVMsQ0FBQztRQUNyQixJQUFJLEVBQUUsR0FBd0IsU0FBUyxDQUFDO1FBRXhDLE1BQU0saUJBQWlCLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqRCxNQUFNLGtCQUFrQixHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFbEQsSUFBRyxpQkFBaUIsSUFBSSxDQUFDLElBQUksa0JBQWtCLElBQUcsQ0FBQyxJQUFJLGtCQUFrQixHQUFHLGlCQUFpQixFQUFDLENBQUM7WUFDN0YsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBQyxDQUFDLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztZQUM1RSxFQUFFLEdBQUcsVUFBVSxDQUFDO1lBQ2hCLElBQUcsVUFBVSxJQUFJLGNBQWMsRUFBQyxDQUFDO2dCQUMvQixNQUFNLGNBQWMsR0FBRyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ2xELElBQUcsY0FBYyxFQUFDLENBQUM7b0JBQ2pCLElBQUksR0FBRyxjQUFjLENBQUM7Z0JBQ3hCLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQzthQUFLLElBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBQyxDQUFDO1lBQ2hDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdEMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFFRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUk7WUFDVixTQUFTLEVBQUcsS0FBSyxHQUFDLFNBQVM7WUFDM0IsRUFBRSxFQUFHLEVBQUU7U0FDUixDQUFBO0lBQ0gsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlsdGVyQ3JpdGVyaXVtIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvYmltcGx1cy1vYmplY3QtbmF2aWdhdG9yL2JpbXBsdXMtb2JqZWN0LW5hdmlnYXRvci5pbnRlcmZhY2VcIjtcblxuY29uc3QgRGl2c2lvbklEU3Vic3RyaW5nID0gJ3RhYkF0dHJpYkVsZW1lbnQuRGl2aXNpb25JRCc7XG5cbmV4cG9ydCBjbGFzcyBGaWx0ZXJTdHJpbmcge1xuXG4gIGNvbnN0cnVjdG9yKGZpbHRlclN0cmluZzogc3RyaW5nID0gXCJcIiwgbWF4RmlsdGVyQ3JpdGVyaWE6IG51bWJlciA9IDUpe1xuICAgIHRoaXMuX2ZpbHRlclN0cmluZyA9IGZpbHRlclN0cmluZztcbiAgICB0aGlzLl9tYXhGaWx0ZXJDcml0ZXJpYSA9IG1heEZpbHRlckNyaXRlcmlhO1xuICB9XG5cbiAgZ2V0IGZpbHRlclN0cmluZygpe1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXJTdHJpbmc7XG4gIH1cblxuICBwcml2YXRlIF9maWx0ZXJTdHJpbmcgOiBzdHJpbmcgPSBcIlwiO1xuICBwcml2YXRlIF9tYXhGaWx0ZXJDcml0ZXJpYSA6IG51bWJlciA9IDU7XG5cbiAgZnJvbUZpbHRlckNyaXRlcmlhKGNyaXRlcmlhIDogRmlsdGVyQ3JpdGVyaXVtW10pe1xuICAgIHRoaXMuX2ZpbHRlclN0cmluZyA9IGBbSV0ke0RpdnNpb25JRFN1YnN0cmluZ31gO1xuICAgIFxuICAgIGZvcihjb25zdCBjcml0ZXJpdW0gb2YgY3JpdGVyaWEpe1xuICAgICAgdGhpcy5fZmlsdGVyU3RyaW5nKz1jcml0ZXJpdW0uc3ViU3RyaW5nO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9maWx0ZXJTdHJpbmc7XG4gIH1cblxuICBnZXRSZWFkYWJsZVZhbHVlc0Zyb21GaWx0ZXJDcml0ZXJpYShjcml0ZXJpYSA6IEZpbHRlckNyaXRlcml1bVtdKSA6IFJlY29yZDxzdHJpbmcsc3RyaW5nPntcbiAgICBjb25zdCByZWFkYWJsZVZhbHVlcyA6IFJlY29yZDxzdHJpbmcsc3RyaW5nPiA9IHt9O1xuICAgIGZvcihjb25zdCBjcml0ZXJpdW0gb2YgY3JpdGVyaWEpe1xuICAgICAgaWYoY3JpdGVyaXVtLmlkICYmIGNyaXRlcml1bS5uYW1lKVxuICAgICAgICByZWFkYWJsZVZhbHVlc1tjcml0ZXJpdW0uaWRdID0gY3JpdGVyaXVtLm5hbWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlYWRhYmxlVmFsdWVzO1xuICB9XG5cbiAgdG9GaWx0ZXJDcml0ZXJpYShyZWFkYWJsZVZhbHVlczogUmVjb3JkPHN0cmluZyxzdHJpbmc+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkKTogRmlsdGVyQ3JpdGVyaXVtW117XG4gICAgY29uc3QgY3JpdGVyaWEgOiBGaWx0ZXJDcml0ZXJpdW1bXSA9IFtdO1xuXG4gICAgbGV0IGZpcnN0TW9kZWxJZENyaXRlcmlhU2tpcHBlZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgcGFydHMgPSB0aGlzLl9maWx0ZXJTdHJpbmcuc3BsaXQoJ1tJXScpO1xuICAgIGZvcihjb25zdCBwYXJ0IG9mIHBhcnRzKXtcbiAgICAgIGlmKHBhcnQubGVuZ3RoID09PSAwKXtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGlmKHBhcnQuaW5jbHVkZXMoRGl2c2lvbklEU3Vic3RyaW5nKSAmJiAhZmlyc3RNb2RlbElkQ3JpdGVyaWFTa2lwcGVkKXtcbiAgICAgICAgZmlyc3RNb2RlbElkQ3JpdGVyaWFTa2lwcGVkID0gdHJ1ZTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGNyaXRlcmlhLnB1c2godGhpcy5fcGFyc2VGaWx0ZXJTdWJzdHJpbmcocGFydCwgcmVhZGFibGVWYWx1ZXMpKTtcbiAgICAgIGlmKGNyaXRlcmlhLmxlbmd0aCA9PT0gdGhpcy5fbWF4RmlsdGVyQ3JpdGVyaWEpe1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY3JpdGVyaWE7XG4gIH1cblxuICBwcml2YXRlIF9wYXJzZUZpbHRlclN1YnN0cmluZyhzdWJTdHJpbmc6IHN0cmluZywgcmVhZGFibGVWYWx1ZXM6IFJlY29yZDxzdHJpbmcsc3RyaW5nPiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZCk6IEZpbHRlckNyaXRlcml1bXtcbiAgICBsZXQgbmFtZSA9IHN1YlN0cmluZztcbiAgICBsZXQgaWQgOiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBpbmRleE9wZW5CcmFja2V0cyA9IHN1YlN0cmluZy5pbmRleE9mKCdbJyk7XG4gICAgY29uc3QgaW5kZXhDbG9zZUJyYWNrZXRzID0gc3ViU3RyaW5nLmluZGV4T2YoJ10nKTtcblxuICAgIGlmKGluZGV4T3BlbkJyYWNrZXRzID49IDAgJiYgaW5kZXhDbG9zZUJyYWNrZXRzID49MCAmJiBpbmRleENsb3NlQnJhY2tldHMgPiBpbmRleE9wZW5CcmFja2V0cyl7XG4gICAgICBjb25zdCByZWFkYWJsZUlkID0gc3ViU3RyaW5nLnNsaWNlKGluZGV4T3BlbkJyYWNrZXRzKzEsIGluZGV4Q2xvc2VCcmFja2V0cyk7XG4gICAgICBpZCA9IHJlYWRhYmxlSWQ7XG4gICAgICBpZihyZWFkYWJsZUlkICYmIHJlYWRhYmxlVmFsdWVzKXtcbiAgICAgICAgY29uc3QgcmVhZGFibGVTdHJpbmcgPSByZWFkYWJsZVZhbHVlc1tyZWFkYWJsZUlkXTtcbiAgICAgICAgaWYocmVhZGFibGVTdHJpbmcpe1xuICAgICAgICAgIG5hbWUgPSByZWFkYWJsZVN0cmluZztcbiAgICAgICAgfVxuICAgICAgfSAgICAgIFxuICAgIH1lbHNlIGlmKHN1YlN0cmluZy5pbmNsdWRlcygnLicpKXtcbiAgICAgIGNvbnN0IHNwbGl0dGVkID0gc3ViU3RyaW5nLnNwbGl0KCcuJyk7XG4gICAgICBuYW1lID0gc3BsaXR0ZWRbc3BsaXR0ZWQubGVuZ3RoLTFdO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBuYW1lOiBuYW1lLFxuICAgICAgc3ViU3RyaW5nIDogXCJbSV1cIitzdWJTdHJpbmcsXG4gICAgICBpZCA6IGlkXG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
@@ -32,4 +32,4 @@ export class FilterStructureFetcher {
32
32
  return observeable;
33
33
  }
34
34
  }
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyU3RydWN0dXJlRmV0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi91dGlscy9maWx0ZXJTdHJ1Y3R1cmVGZXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV4RCxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLE1BQU0sQ0FBQyx1Q0FBdUMsQ0FBQyxTQUFpQixFQUFFLE1BQTJCLEVBQUUsZUFBb0MsRUFBRSxHQUFlO1FBQ2xKLE1BQU0sV0FBVyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMvQixJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFMUMsSUFBSSxXQUFXLEdBQTRELElBQUksQ0FBQztRQUVoRixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakIsV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzFHLFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLEVBQUUsQ0FBQztvQkFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO2dCQUN2RCxDQUFDO2dCQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsMkJBQTJCLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDOUcsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtRQUNILENBQUM7YUFBTSxDQUFDO1lBQ04sV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoRixTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUM7b0JBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQztnQkFDOUQsQ0FBQztnQkFFRCxRQUFRLEdBQUcsU0FBUyxDQUFDLEVBQUUsQ0FBQztnQkFFeEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkcsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFO2dCQUN2QixJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFDO29CQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7Z0JBQ3ZELENBQUM7Z0JBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQywyQkFBMkIsQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzlHLEdBQUcsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFO29CQUNuQixHQUFHLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDbkMsT0FBTyxZQUFZLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUNILENBQUM7WUFDSixDQUFDLENBQUMsQ0FDSCxDQUFBO1FBQ0gsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFdlYlNkayBmcm9tICdiaW1wbHVzLXdlYnNkayc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIGNvbmNhdE1hcCwgZnJvbSwgbWFwIH0gZnJvbSAncnhqcyc7XHJcblxyXG5leHBvcnQgY2xhc3MgRmlsdGVyU3RydWN0dXJlRmV0Y2hlciB7XHJcblxyXG4gIHN0YXRpYyBmZXRjaE9iamVjdEZpbHRlclN0cnVjdHVyZUZyb21TZWxlY3Rpb24ocHJvamVjdElkOiBzdHJpbmcsIGZpbHRlcjogV2ViU2RrLk9iamVjdEZpbHRlciwgc2VsZWN0aW9uT2JqZWN0OiBXZWJTZGsuRXhwb3J0T2JqZWN0LCBhcGk6IFdlYlNkay5BcGkpOiBPYnNlcnZhYmxlPFdlYlNkay5PYmplY3RGaWx0ZXJTdHJ1Y3R1cmVSZXNwb25zZT4ge1xyXG4gICAgY29uc3QgaXNUZW1wb3JhcnkgPSAhZmlsdGVyLmlkO1xyXG4gICAgbGV0IGZpbHRlcklkID0gZmlsdGVyLmlkID8gZmlsdGVyLmlkIDogXCJcIjtcclxuXHJcbiAgICBsZXQgb2JzZXJ2ZWFibGU6IE9ic2VydmFibGU8V2ViU2RrLk9iamVjdEZpbHRlclN0cnVjdHVyZVJlc3BvbnNlPiB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIGlmICghaXNUZW1wb3JhcnkpIHtcclxuICAgICAgb2JzZXJ2ZWFibGUgPSBmcm9tKGFwaS5leHBvcnRTZXJ2aWNlLmNyZWF0ZUV4cG9ydFNlbGVjdGlvbihwcm9qZWN0SWQsIEpTT04uc3RyaW5naWZ5KHNlbGVjdGlvbk9iamVjdCkpKS5waXBlKFxyXG4gICAgICAgIGNvbmNhdE1hcChzZWxlY3Rpb25PYmogPT4ge1xyXG4gICAgICAgICAgaWYgKCFzZWxlY3Rpb25PYmo/LmlkKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBzZWxlY3Rpb24gb2JqZWN0Jyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gZnJvbShhcGkub2JqZWN0RmlsdGVycy5nZXRTZWxlY3Rpb25GaWx0ZXJlZE9iamVjdHMoc2VsZWN0aW9uT2JqLmlkLCBmaWx0ZXJJZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQpKTtcclxuICAgICAgICB9KVxyXG4gICAgICApXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBvYnNlcnZlYWJsZSA9IGZyb20oYXBpLm9iamVjdEZpbHRlcnMucG9zdChKU09OLnN0cmluZ2lmeShmaWx0ZXIpLCBwcm9qZWN0SWQpKS5waXBlKFxyXG4gICAgICAgIGNvbmNhdE1hcChmaWx0ZXJPYmogPT4ge1xyXG4gICAgICAgICAgaWYgKCFmaWx0ZXJPYmo/LmlkKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsdGVyIG9iamVjdCcpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGZpbHRlcklkID0gZmlsdGVyT2JqLmlkO1xyXG5cclxuICAgICAgICAgIHJldHVybiBmcm9tKGFwaS5leHBvcnRTZXJ2aWNlLmNyZWF0ZUV4cG9ydFNlbGVjdGlvbihwcm9qZWN0SWQsIEpTT04uc3RyaW5naWZ5KHNlbGVjdGlvbk9iamVjdCkpKTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBjb25jYXRNYXAoc2VsZWN0aW9uT2JqID0+IHtcclxuICAgICAgICAgIGlmICghc2VsZWN0aW9uT2JqPy5pZCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgc2VsZWN0aW9uIG9iamVjdCcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIGZyb20oYXBpLm9iamVjdEZpbHRlcnMuZ2V0U2VsZWN0aW9uRmlsdGVyZWRPYmplY3RzKHNlbGVjdGlvbk9iai5pZCwgZmlsdGVySWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkKSkucGlwZShcclxuICAgICAgICAgICAgbWFwKChmaWx0ZXJSZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICBhcGkub2JqZWN0RmlsdGVycy5kZWxldGUoZmlsdGVySWQpO1xyXG4gICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJSZXN1bHQ7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgIH1cclxuICAgIHJldHVybiBvYnNlcnZlYWJsZTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyU3RydWN0dXJlRmV0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaW1wbHVzLWNvbXBvbmVudHMvc3JjL2xpYi91dGlscy9maWx0ZXJTdHJ1Y3R1cmVGZXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV4RCxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLE1BQU0sQ0FBQyx1Q0FBdUMsQ0FBQyxTQUFpQixFQUFFLE1BQTJCLEVBQUUsZUFBb0MsRUFBRSxHQUFlO1FBQ2xKLE1BQU0sV0FBVyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMvQixJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFMUMsSUFBSSxXQUFXLEdBQTRELElBQUksQ0FBQztRQUVoRixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakIsV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzFHLFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLEVBQUUsQ0FBQztvQkFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO2dCQUN2RCxDQUFDO2dCQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsMkJBQTJCLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDOUcsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtRQUNILENBQUM7YUFBTSxDQUFDO1lBQ04sV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoRixTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUM7b0JBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQztnQkFDOUQsQ0FBQztnQkFFRCxRQUFRLEdBQUcsU0FBUyxDQUFDLEVBQUUsQ0FBQztnQkFFeEIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkcsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFO2dCQUN2QixJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFDO29CQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7Z0JBQ3ZELENBQUM7Z0JBQ0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQywyQkFBMkIsQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzlHLEdBQUcsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFO29CQUNuQixHQUFHLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDbkMsT0FBTyxZQUFZLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUNILENBQUM7WUFDSixDQUFDLENBQUMsQ0FDSCxDQUFBO1FBQ0gsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFdlYlNkayBmcm9tICdiaW1wbHVzLXdlYnNkayc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjb25jYXRNYXAsIGZyb20sIG1hcCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY2xhc3MgRmlsdGVyU3RydWN0dXJlRmV0Y2hlciB7XG5cbiAgc3RhdGljIGZldGNoT2JqZWN0RmlsdGVyU3RydWN0dXJlRnJvbVNlbGVjdGlvbihwcm9qZWN0SWQ6IHN0cmluZywgZmlsdGVyOiBXZWJTZGsuT2JqZWN0RmlsdGVyLCBzZWxlY3Rpb25PYmplY3Q6IFdlYlNkay5FeHBvcnRPYmplY3QsIGFwaTogV2ViU2RrLkFwaSk6IE9ic2VydmFibGU8V2ViU2RrLk9iamVjdEZpbHRlclN0cnVjdHVyZVJlc3BvbnNlPiB7XG4gICAgY29uc3QgaXNUZW1wb3JhcnkgPSAhZmlsdGVyLmlkO1xuICAgIGxldCBmaWx0ZXJJZCA9IGZpbHRlci5pZCA/IGZpbHRlci5pZCA6IFwiXCI7XG5cbiAgICBsZXQgb2JzZXJ2ZWFibGU6IE9ic2VydmFibGU8V2ViU2RrLk9iamVjdEZpbHRlclN0cnVjdHVyZVJlc3BvbnNlPiB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKCFpc1RlbXBvcmFyeSkge1xuICAgICAgb2JzZXJ2ZWFibGUgPSBmcm9tKGFwaS5leHBvcnRTZXJ2aWNlLmNyZWF0ZUV4cG9ydFNlbGVjdGlvbihwcm9qZWN0SWQsIEpTT04uc3RyaW5naWZ5KHNlbGVjdGlvbk9iamVjdCkpKS5waXBlKFxuICAgICAgICBjb25jYXRNYXAoc2VsZWN0aW9uT2JqID0+IHtcbiAgICAgICAgICBpZiAoIXNlbGVjdGlvbk9iaj8uaWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBzZWxlY3Rpb24gb2JqZWN0Jyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBmcm9tKGFwaS5vYmplY3RGaWx0ZXJzLmdldFNlbGVjdGlvbkZpbHRlcmVkT2JqZWN0cyhzZWxlY3Rpb25PYmouaWQsIGZpbHRlcklkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCkpO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgIH0gZWxzZSB7XG4gICAgICBvYnNlcnZlYWJsZSA9IGZyb20oYXBpLm9iamVjdEZpbHRlcnMucG9zdChKU09OLnN0cmluZ2lmeShmaWx0ZXIpLCBwcm9qZWN0SWQpKS5waXBlKFxuICAgICAgICBjb25jYXRNYXAoZmlsdGVyT2JqID0+IHtcbiAgICAgICAgICBpZiAoIWZpbHRlck9iaj8uaWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsdGVyIG9iamVjdCcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZpbHRlcklkID0gZmlsdGVyT2JqLmlkO1xuXG4gICAgICAgICAgcmV0dXJuIGZyb20oYXBpLmV4cG9ydFNlcnZpY2UuY3JlYXRlRXhwb3J0U2VsZWN0aW9uKHByb2plY3RJZCwgSlNPTi5zdHJpbmdpZnkoc2VsZWN0aW9uT2JqZWN0KSkpO1xuICAgICAgICB9KSxcbiAgICAgICAgY29uY2F0TWFwKHNlbGVjdGlvbk9iaiA9PiB7XG4gICAgICAgICAgaWYgKCFzZWxlY3Rpb25PYmo/LmlkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgc2VsZWN0aW9uIG9iamVjdCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gZnJvbShhcGkub2JqZWN0RmlsdGVycy5nZXRTZWxlY3Rpb25GaWx0ZXJlZE9iamVjdHMoc2VsZWN0aW9uT2JqLmlkLCBmaWx0ZXJJZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQpKS5waXBlKFxuICAgICAgICAgICAgbWFwKChmaWx0ZXJSZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgYXBpLm9iamVjdEZpbHRlcnMuZGVsZXRlKGZpbHRlcklkKTtcbiAgICAgICAgICAgICAgcmV0dXJuIGZpbHRlclJlc3VsdDtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuIG9ic2VydmVhYmxlO1xuICB9XG5cbn1cbiJdfQ==
@@ -24,4 +24,4 @@ export function fireEvent(source, eventName, data = null) {
24
24
  _source[eventName].emit(data);
25
25
  }
26
26
  }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYmltcGx1cy1jb21wb25lbnRzL3NyYy9saWIvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0E7Ozs7Ozs7Ozs7NEVBVTRFO0FBQzVFLE1BQU0sVUFBVSxTQUFTLENBQUMsTUFBZSxFQUFFLFNBQWlCLEVBQUUsT0FBZ0IsSUFBSTtJQUM5RSxJQUFLLENBQUMsU0FBUyxFQUFHLENBQUM7UUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHdFQUF3RSxDQUFDLENBQUM7UUFDeEYsT0FBTztJQUNYLENBQUM7SUFDRCxxRUFBcUU7SUFDckUsTUFBTSxPQUFPLEdBQUcsQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLElBQUksT0FBTyxNQUFNLENBQUMsT0FBTyxLQUFLLFFBQVEsSUFBSyxNQUFNLENBQUMsT0FBeUIsQ0FBQztJQUNqSCxJQUFJLE9BQU8sSUFBSSxPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUN2RCxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUksTUFBaUIsQ0FBQztJQUNuQyxJQUFJLFNBQVMsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUN2QixPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gRGVmaW5lIHRoZSB0eXBlIG9mIHRoZSB3aW5kb3cuQmltUGx1cyBvYmplY3RcclxuZXhwb3J0IGludGVyZmFjZSBCaW1QbHVzT2JqZWN0IHtcclxuICAgIFtrZXk6IHN0cmluZ106IChkYXRhRGV0YWlsOiB7IGRldGFpbDogdW5rbm93biB9KSA9PiB2b2lkO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgU291cmNlIHtcclxuICBba2V5OiBzdHJpbmddOiB7IGVtaXQ6IChhcmcwOiB1bmtub3duKSA9PiB2b2lkOyB9O1xyXG59XHJcblxyXG5cclxuLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuKiBmaXJlIGV2ZW50IGZyb20gY29tcG9uZW50IGluIHR3byB3YXlzIDogXHJcbiAgLSBmaXJlIGN1c3RvbSBldmVudCBmcm9tIGNvbXBvbmVudCBpbiBzdGFuZGFyZCByZWNvbW1lbmRlZCB3YXkgdmlhLiB0aGlzLmV2ZW50TmFtZS5lbWl0IGZ1bmN0aW9uXHJcbiAgXHJcbiAgLSBjYWxsIHdpbmRvdy5CaW1QbHVzLmV2ZW50TmFtZSBmdW5jdGlvbiBkaXJlY3RseSBvbiB3aW5kb3cgb2JqZWN0IChldmVudE5hbWUgaXMgbmFtZVxyXG4gICAgb2YgdGhlIGV2ZW50IHdlIHdhbnQgdG8gZmlyZSBlLmcuIGJpbXBsdXNOYXZiYXJDbGlja2VkIHNvIGl0IHdpbGwgYmUgd2luZG93LkJpbVBsdXMuYmltcGx1c05hdmJhckNsaWNrZWQpLlxyXG4gICAgRnVuY3Rpb24gbXVzdCBiZSBkZWZpbmVkIGluIGFwcC4gd2hlcmUgd2UgYXJlIHVzaW5nIG91ciBjb21wb25lbnRzLlxyXG4gICAgVGhpcyB3YXMgaW1wbGVtZW50ZWQgYmVjYXVzZSBNUyBFZGdlIGJyb3dzZXIgaGFzIHByb2JsZW1zIHdpdGggY3VzdG9tIGV2ZW50cyBhbmQgaW4gc29tZSBcclxuICAgIHNpdHVhdGlvbnMoZS5nLiBhZnRlciBmaWxlIGRvd25sb2FkKSBpdCBzdG9wcyBoYW5kbGluZyBjdXN0b20gZXZlbnRzLlxyXG4gICAgRGlzYWR2YW50YWdlIGlzIHRoYXQgd2UgY2FuIGhhdmUgb25seSBvbmUgZXZlbnQgaGFuZGxlciB3aGljaCBpcyBzaGFyZWQgYmV0d2VlbiB0aGUgbXVsdGlwbGUgY29tcG9uZW50cy5cclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5leHBvcnQgZnVuY3Rpb24gZmlyZUV2ZW50KHNvdXJjZTogdW5rbm93biwgZXZlbnROYW1lOiBzdHJpbmcsIGRhdGE6IHVua25vd24gPSBudWxsKXtcclxuICAgIGlmICggIWV2ZW50TmFtZSApIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKFwiRVJST1I6IE1pc3NpbmcgZXZlbnQgbmFtZSBpbiBmaXJlRXZlbnQgZnVuY3Rpb24gaW4gQmltcGx1cyBjb21wb25lbnRzIVwiKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICAvLyBDaGVjayBpZiBldmVudE5hbWUgZXhpc3RzIG9uIHdpbmRvdy5CaW1QbHVzIGFuZCBpZiBpdCdzIGEgZnVuY3Rpb25cclxuICAgIGNvbnN0IGJpbVBsdXMgPSAoJ0JpbVBsdXMnIGluIHdpbmRvdykgJiYgdHlwZW9mIHdpbmRvdy5CaW1QbHVzID09PSAnb2JqZWN0JyAmJiAod2luZG93LkJpbVBsdXMgYXMgQmltUGx1c09iamVjdCk7XHJcbiAgICBpZiAoYmltUGx1cyAmJiB0eXBlb2YgYmltUGx1c1tldmVudE5hbWVdID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgICBiaW1QbHVzW2V2ZW50TmFtZV0oe2RldGFpbDogZGF0YX0pO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IF9zb3VyY2UgPSAoc291cmNlIGFzIFNvdXJjZSk7XHJcbiAgICBpZiAoZXZlbnROYW1lIGluIF9zb3VyY2UpIHtcclxuICAgICAgICBfc291cmNlW2V2ZW50TmFtZV0uZW1pdChkYXRhKTtcclxuICAgIH1cclxufSJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYmltcGx1cy1jb21wb25lbnRzL3NyYy9saWIvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0E7Ozs7Ozs7Ozs7NEVBVTRFO0FBQzVFLE1BQU0sVUFBVSxTQUFTLENBQUMsTUFBZSxFQUFFLFNBQWlCLEVBQUUsT0FBZ0IsSUFBSTtJQUM5RSxJQUFLLENBQUMsU0FBUyxFQUFHLENBQUM7UUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHdFQUF3RSxDQUFDLENBQUM7UUFDeEYsT0FBTztJQUNYLENBQUM7SUFDRCxxRUFBcUU7SUFDckUsTUFBTSxPQUFPLEdBQUcsQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLElBQUksT0FBTyxNQUFNLENBQUMsT0FBTyxLQUFLLFFBQVEsSUFBSyxNQUFNLENBQUMsT0FBeUIsQ0FBQztJQUNqSCxJQUFJLE9BQU8sSUFBSSxPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUN2RCxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUksTUFBaUIsQ0FBQztJQUNuQyxJQUFJLFNBQVMsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUN2QixPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gRGVmaW5lIHRoZSB0eXBlIG9mIHRoZSB3aW5kb3cuQmltUGx1cyBvYmplY3RcbmV4cG9ydCBpbnRlcmZhY2UgQmltUGx1c09iamVjdCB7XG4gICAgW2tleTogc3RyaW5nXTogKGRhdGFEZXRhaWw6IHsgZGV0YWlsOiB1bmtub3duIH0pID0+IHZvaWQ7XG59XG5leHBvcnQgaW50ZXJmYWNlIFNvdXJjZSB7XG4gIFtrZXk6IHN0cmluZ106IHsgZW1pdDogKGFyZzA6IHVua25vd24pID0+IHZvaWQ7IH07XG59XG5cblxuLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiogZmlyZSBldmVudCBmcm9tIGNvbXBvbmVudCBpbiB0d28gd2F5cyA6IFxuICAtIGZpcmUgY3VzdG9tIGV2ZW50IGZyb20gY29tcG9uZW50IGluIHN0YW5kYXJkIHJlY29tbWVuZGVkIHdheSB2aWEuIHRoaXMuZXZlbnROYW1lLmVtaXQgZnVuY3Rpb25cbiAgXG4gIC0gY2FsbCB3aW5kb3cuQmltUGx1cy5ldmVudE5hbWUgZnVuY3Rpb24gZGlyZWN0bHkgb24gd2luZG93IG9iamVjdCAoZXZlbnROYW1lIGlzIG5hbWVcbiAgICBvZiB0aGUgZXZlbnQgd2Ugd2FudCB0byBmaXJlIGUuZy4gYmltcGx1c05hdmJhckNsaWNrZWQgc28gaXQgd2lsbCBiZSB3aW5kb3cuQmltUGx1cy5iaW1wbHVzTmF2YmFyQ2xpY2tlZCkuXG4gICAgRnVuY3Rpb24gbXVzdCBiZSBkZWZpbmVkIGluIGFwcC4gd2hlcmUgd2UgYXJlIHVzaW5nIG91ciBjb21wb25lbnRzLlxuICAgIFRoaXMgd2FzIGltcGxlbWVudGVkIGJlY2F1c2UgTVMgRWRnZSBicm93c2VyIGhhcyBwcm9ibGVtcyB3aXRoIGN1c3RvbSBldmVudHMgYW5kIGluIHNvbWUgXG4gICAgc2l0dWF0aW9ucyhlLmcuIGFmdGVyIGZpbGUgZG93bmxvYWQpIGl0IHN0b3BzIGhhbmRsaW5nIGN1c3RvbSBldmVudHMuXG4gICAgRGlzYWR2YW50YWdlIGlzIHRoYXQgd2UgY2FuIGhhdmUgb25seSBvbmUgZXZlbnQgaGFuZGxlciB3aGljaCBpcyBzaGFyZWQgYmV0d2VlbiB0aGUgbXVsdGlwbGUgY29tcG9uZW50cy5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmV4cG9ydCBmdW5jdGlvbiBmaXJlRXZlbnQoc291cmNlOiB1bmtub3duLCBldmVudE5hbWU6IHN0cmluZywgZGF0YTogdW5rbm93biA9IG51bGwpe1xuICAgIGlmICggIWV2ZW50TmFtZSApIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkVSUk9SOiBNaXNzaW5nIGV2ZW50IG5hbWUgaW4gZmlyZUV2ZW50IGZ1bmN0aW9uIGluIEJpbXBsdXMgY29tcG9uZW50cyFcIik7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy8gQ2hlY2sgaWYgZXZlbnROYW1lIGV4aXN0cyBvbiB3aW5kb3cuQmltUGx1cyBhbmQgaWYgaXQncyBhIGZ1bmN0aW9uXG4gICAgY29uc3QgYmltUGx1cyA9ICgnQmltUGx1cycgaW4gd2luZG93KSAmJiB0eXBlb2Ygd2luZG93LkJpbVBsdXMgPT09ICdvYmplY3QnICYmICh3aW5kb3cuQmltUGx1cyBhcyBCaW1QbHVzT2JqZWN0KTtcbiAgICBpZiAoYmltUGx1cyAmJiB0eXBlb2YgYmltUGx1c1tldmVudE5hbWVdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgYmltUGx1c1tldmVudE5hbWVdKHtkZXRhaWw6IGRhdGF9KTtcbiAgICB9XG5cbiAgICBjb25zdCBfc291cmNlID0gKHNvdXJjZSBhcyBTb3VyY2UpO1xuICAgIGlmIChldmVudE5hbWUgaW4gX3NvdXJjZSkge1xuICAgICAgICBfc291cmNlW2V2ZW50TmFtZV0uZW1pdChkYXRhKTtcbiAgICB9XG59Il19