@skyux/indicators 11.26.0 → 11.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/documentation.json +635 -635
  2. package/esm2022/lib/modules/alert/alert.component.mjs +4 -4
  3. package/esm2022/lib/modules/alert/alert.module.mjs +5 -5
  4. package/esm2022/lib/modules/chevron/chevron.component.mjs +4 -4
  5. package/esm2022/lib/modules/chevron/chevron.module.mjs +5 -5
  6. package/esm2022/lib/modules/expansion-indicator/expansion-indicator.component.mjs +4 -4
  7. package/esm2022/lib/modules/expansion-indicator/expansion-indicator.module.mjs +5 -5
  8. package/esm2022/lib/modules/illustration/illustration-resolver.service.mjs +4 -4
  9. package/esm2022/lib/modules/illustration/illustration.component.mjs +4 -4
  10. package/esm2022/lib/modules/illustration/illustration.module.mjs +5 -5
  11. package/esm2022/lib/modules/key-info/key-info-label.component.mjs +4 -4
  12. package/esm2022/lib/modules/key-info/key-info-value.component.mjs +4 -4
  13. package/esm2022/lib/modules/key-info/key-info.component.mjs +4 -4
  14. package/esm2022/lib/modules/key-info/key-info.module.mjs +5 -5
  15. package/esm2022/lib/modules/label/label.component.mjs +4 -4
  16. package/esm2022/lib/modules/label/label.module.mjs +5 -5
  17. package/esm2022/lib/modules/shared/sky-indicators-resources.module.mjs +5 -5
  18. package/esm2022/lib/modules/status-indicator/status-indicator.component.mjs +4 -4
  19. package/esm2022/lib/modules/status-indicator/status-indicator.module.mjs +5 -5
  20. package/esm2022/lib/modules/text-highlight/text-highlight.directive.mjs +4 -4
  21. package/esm2022/lib/modules/text-highlight/text-highlight.module.mjs +5 -5
  22. package/esm2022/lib/modules/tokens/token.component.mjs +4 -4
  23. package/esm2022/lib/modules/tokens/tokens.component.mjs +4 -4
  24. package/esm2022/lib/modules/tokens/tokens.module.mjs +5 -5
  25. package/esm2022/lib/modules/wait/wait-adapter.service.mjs +4 -4
  26. package/esm2022/lib/modules/wait/wait-page.component.mjs +4 -4
  27. package/esm2022/lib/modules/wait/wait.component.mjs +4 -4
  28. package/esm2022/lib/modules/wait/wait.module.mjs +5 -5
  29. package/esm2022/lib/modules/wait/wait.service.mjs +4 -4
  30. package/fesm2022/skyux-indicators.mjs +95 -95
  31. package/fesm2022/skyux-indicators.mjs.map +1 -1
  32. package/package.json +12 -12
@@ -153,10 +153,10 @@ export class SkyWaitComponent {
153
153
  });
154
154
  }
155
155
  }
156
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
157
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: SkyWaitComponent, isStandalone: true, selector: "sky-wait", inputs: { ariaLabel: "ariaLabel", isWaiting: "isWaiting", isFullPage: "isFullPage", isNonBlocking: "isNonBlocking", screenReaderCompletedText: "screenReaderCompletedText" }, providers: [SkyWaitAdapterService], ngImport: i0, template: "<div\n class=\"sky-wait-container\"\n [ngClass]=\"{\n 'sky-wait-full-page': isFullPage,\n 'sky-wait-non-blocking': isNonBlocking\n }\"\n>\n @if (isWaiting) {\n <div\n class=\"sky-wait-mask\"\n role=\"progressbar\"\n [attr.aria-label]=\"ariaLabelStream | async\"\n [ngClass]=\"{\n 'sky-wait-mask-loading-fixed': isFullPage,\n 'sky-wait-mask-loading-non-blocking': isNonBlocking,\n 'sky-wait-mask-loading-blocking': !isNonBlocking\n }\"\n >\n <div class=\"sky-wait\">\n <div class=\"sky-wait-double-bounce1\"></div>\n <div class=\"sky-wait-double-bounce2\"></div>\n </div>\n </div>\n }\n</div>\n", styles: [".sky-wait-mask-loading-blocking{margin:auto;position:absolute;inset:0;background-color:#ffffffb3;z-index:1000}.sky-wait-mask-loading-fixed{position:fixed}.sky-wait{width:50px;height:50px;margin-top:-25px;margin-left:-25px;position:absolute;top:50%;left:50%}.sky-wait-mask-loading-non-blocking{bottom:0}.sky-wait-mask-loading-non-blocking .sky-wait{inset:auto auto 0 0;margin-left:auto;margin-right:auto}.sky-wait-double-bounce1,.sky-wait-double-bounce2{width:100%;height:100%;border-radius:50%;background-color:#72bf44;opacity:.6;position:absolute;top:0;left:0;-webkit-animation:sk-bounce 2s infinite ease-in-out;animation:sk-bounce 2s infinite ease-in-out}.sky-wait-double-bounce2{-webkit-animation-delay:-1s;animation-delay:-1s}@-webkit-keyframes sk-bounce{0%,to{-webkit-transform:scale(0)}50%{-webkit-transform:scale(1)}}@keyframes sk-bounce{0%,to{transform:scale(0);-webkit-transform:scale(0)}50%{transform:scale(1);-webkit-transform:scale(1)}}.sky-wait-container.sky-wait-active{position:relative}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: SkyIndicatorsResourcesModule }] }); }
156
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
157
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SkyWaitComponent, isStandalone: true, selector: "sky-wait", inputs: { ariaLabel: "ariaLabel", isWaiting: "isWaiting", isFullPage: "isFullPage", isNonBlocking: "isNonBlocking", screenReaderCompletedText: "screenReaderCompletedText" }, providers: [SkyWaitAdapterService], ngImport: i0, template: "<div\n class=\"sky-wait-container\"\n [ngClass]=\"{\n 'sky-wait-full-page': isFullPage,\n 'sky-wait-non-blocking': isNonBlocking\n }\"\n>\n @if (isWaiting) {\n <div\n class=\"sky-wait-mask\"\n role=\"progressbar\"\n [attr.aria-label]=\"ariaLabelStream | async\"\n [ngClass]=\"{\n 'sky-wait-mask-loading-fixed': isFullPage,\n 'sky-wait-mask-loading-non-blocking': isNonBlocking,\n 'sky-wait-mask-loading-blocking': !isNonBlocking\n }\"\n >\n <div class=\"sky-wait\">\n <div class=\"sky-wait-double-bounce1\"></div>\n <div class=\"sky-wait-double-bounce2\"></div>\n </div>\n </div>\n }\n</div>\n", styles: [".sky-wait-mask-loading-blocking{margin:auto;position:absolute;inset:0;background-color:#ffffffb3;z-index:1000}.sky-wait-mask-loading-fixed{position:fixed}.sky-wait{width:50px;height:50px;margin-top:-25px;margin-left:-25px;position:absolute;top:50%;left:50%}.sky-wait-mask-loading-non-blocking{bottom:0}.sky-wait-mask-loading-non-blocking .sky-wait{inset:auto auto 0 0;margin-left:auto;margin-right:auto}.sky-wait-double-bounce1,.sky-wait-double-bounce2{width:100%;height:100%;border-radius:50%;background-color:#72bf44;opacity:.6;position:absolute;top:0;left:0;-webkit-animation:sk-bounce 2s infinite ease-in-out;animation:sk-bounce 2s infinite ease-in-out}.sky-wait-double-bounce2{-webkit-animation-delay:-1s;animation-delay:-1s}@-webkit-keyframes sk-bounce{0%,to{-webkit-transform:scale(0)}50%{-webkit-transform:scale(1)}}@keyframes sk-bounce{0%,to{transform:scale(0);-webkit-transform:scale(0)}50%{transform:scale(1);-webkit-transform:scale(1)}}.sky-wait-container.sky-wait-active{position:relative}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: SkyIndicatorsResourcesModule }] }); }
158
158
  }
159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitComponent, decorators: [{
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitComponent, decorators: [{
160
160
  type: Component,
161
161
  args: [{ standalone: true, selector: 'sky-wait', providers: [SkyWaitAdapterService], imports: [CommonModule, SkyIndicatorsResourcesModule], template: "<div\n class=\"sky-wait-container\"\n [ngClass]=\"{\n 'sky-wait-full-page': isFullPage,\n 'sky-wait-non-blocking': isNonBlocking\n }\"\n>\n @if (isWaiting) {\n <div\n class=\"sky-wait-mask\"\n role=\"progressbar\"\n [attr.aria-label]=\"ariaLabelStream | async\"\n [ngClass]=\"{\n 'sky-wait-mask-loading-fixed': isFullPage,\n 'sky-wait-mask-loading-non-blocking': isNonBlocking,\n 'sky-wait-mask-loading-blocking': !isNonBlocking\n }\"\n >\n <div class=\"sky-wait\">\n <div class=\"sky-wait-double-bounce1\"></div>\n <div class=\"sky-wait-double-bounce2\"></div>\n </div>\n </div>\n }\n</div>\n", styles: [".sky-wait-mask-loading-blocking{margin:auto;position:absolute;inset:0;background-color:#ffffffb3;z-index:1000}.sky-wait-mask-loading-fixed{position:fixed}.sky-wait{width:50px;height:50px;margin-top:-25px;margin-left:-25px;position:absolute;top:50%;left:50%}.sky-wait-mask-loading-non-blocking{bottom:0}.sky-wait-mask-loading-non-blocking .sky-wait{inset:auto auto 0 0;margin-left:auto;margin-right:auto}.sky-wait-double-bounce1,.sky-wait-double-bounce2{width:100%;height:100%;border-radius:50%;background-color:#72bf44;opacity:.6;position:absolute;top:0;left:0;-webkit-animation:sk-bounce 2s infinite ease-in-out;animation:sk-bounce 2s infinite ease-in-out}.sky-wait-double-bounce2{-webkit-animation-delay:-1s;animation-delay:-1s}@-webkit-keyframes sk-bounce{0%,to{-webkit-transform:scale(0)}50%{-webkit-transform:scale(1)}}@keyframes sk-bounce{0%,to{transform:scale(0);-webkit-transform:scale(0)}50%{transform:scale(1);-webkit-transform:scale(1)}}.sky-wait-container.sky-wait-active{position:relative}\n"] }]
162
162
  }], propDecorators: { ariaLabel: [{
@@ -170,4 +170,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
170
170
  }], screenReaderCompletedText: [{
171
171
  type: Input
172
172
  }] } });
173
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy93YWl0L3dhaXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFHTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRXpGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFFL0QsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBVWYsTUFBTSxPQUFPLGdCQUFnQjtJQVI3QjtRQWlIUyxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLG9DQUErQixHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBSXpFLFFBQUcsR0FBRyxZQUFZLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDN0Is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VTtzQkFEcEIsS0FBSztnQkF3QkssYUFBYTtzQkFEdkIsS0FBSztnQkFrQksseUJBQXlCO3NCQURuQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TGl2ZUFubm91bmNlclNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5pbXBvcnQgeyBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5SW5kaWNhdG9yc1Jlc291cmNlc01vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9za3ktaW5kaWNhdG9ycy1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi93YWl0LWFkYXB0ZXIuc2VydmljZSc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdza3ktd2FpdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi93YWl0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2FpdC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtTa3lXYWl0QWRhcHRlclNlcnZpY2VdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBTa3lJbmRpY2F0b3JzUmVzb3VyY2VzTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5V2FpdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIFRoZSBBUklBIGxhYmVsIGZvciB0aGUgd2FpdCBpY29uLlxuICAgKiBUaGlzIHNldHMgdGhlIGljb24ncyBgYXJpYS1sYWJlbGAgYXR0cmlidXRlIHRvIHByb3ZpZGUgYSB0ZXh0IGVxdWl2YWxlbnQgZm9yIHNjcmVlbiByZWFkZXJzXG4gICAqIFt0byBzdXBwb3J0IGFjY2Vzc2liaWxpdHldKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvbGVhcm4vYWNjZXNzaWJpbGl0eSkgd2hlbiBhbiBlbGVtZW50IG9yIHBhZ2UgbG9hZHMgYW5kIHdoZW4gdXNlcnMgdGFiIHRvIGEgd2FpdCBpY29uLlxuICAgKiBUaGUgZGVmYXVsdCB2YWx1ZSB2YXJpZXMgYmFzZWQgb24gd2hldGhlciB0aGUgd2FpdCBpcyBmb3IgYW4gZWxlbWVudCBvciBhIHBhZ2UgYW5kIHdoZXRoZXIgaXQgaXMgYSBibG9ja2luZyB3YWl0LiBGb3IgZXhhbXBsZSwgdGhlIGRlZmF1bHQgZm9yIGEgcGFnZS1sZXZlbCBibG9ja2luZyB3YWl0IGlzIFwiUGFnZSBsb2FkaW5nLiBQbGVhc2Ugd2FpdC5cIlxuICAgKiBGb3IgZWxlbWVudC1sZXZlbCB3YWl0cywgd2UgcmVjb21tZW5kIHRoYXQgY29uc3VtZXJzIG92ZXJ3cml0ZSB0aGUgZGVmYXVsdCB0byBkZXNjcmliZSB0aGUgc3BlY2lmaWMgZWxlbWVudC5cbiAgICogXCJGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBEZXNpZ24gdGFiIGFuZCB0aGUgW1dBSS1BUklBIGBhcmlhLWxhYmVsYCBkZWZpbml0aW9uXShodHRwczovL3d3dy53My5vcmcvVFIvd2FpLWFyaWEvI2FyaWEtbGFiZWwpLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhcmlhTGFiZWwodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI2N1c3RvbUFyaWFMYWJlbCA9IHZhbHVlO1xuICAgIHRoaXMuI3B1Ymxpc2hBcmlhTGFiZWwoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIHNldCB0byBgdHJ1ZWAsIHdhaXQgaW5kaWNhdGlvbiBhcHBlYXJzIG9uIHRoZSBwYXJlbnQgZWxlbWVudCBvZiB0aGUgYHNreS13YWl0YCBjb21wb25lbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlzV2FpdGluZyh2YWx1ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCkge1xuICAgIGlmICghdGhpcy5pc0Z1bGxQYWdlKSB7XG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgdGhpcy4jYWRhcHRlclNlcnZpY2Uuc2V0V2FpdEJvdW5kcyh0aGlzLiNlbFJlZik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5yZW1vdmVXYWl0Qm91bmRzKHRoaXMuI2VsUmVmKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5zZXRCdXN5U3RhdGUoXG4gICAgICB0aGlzLiNlbFJlZixcbiAgICAgICEhdGhpcy5pc0Z1bGxQYWdlLFxuICAgICAgISF2YWx1ZSxcbiAgICAgICEhdGhpcy5pc05vbkJsb2NraW5nLFxuICAgICAgdGhpcy4jaWQsXG4gICAgKTtcblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy4jbGl2ZUFubm91bmNlci5hbm5vdW5jZSh0aGlzLmFyaWFMYWJlbFN0cmVhbS5nZXRWYWx1ZSgpKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuI19pc1dhaXRpbmcpIHtcbiAgICAgIC8vIE5PVEU6IFRoaXMgc2hvdWxkIG9ubHkgaGFwcGVuIGlmIHRoZSB3YWl0IHdhcyBwcmV2aW91c2x5IHdhaXRpbmcgYW5kIG5vIGxvbmdlciBpcyB3YWl0aW5nLlxuICAgICAgdGhpcy4jbGl2ZUFubm91bmNlci5hbm5vdW5jZShcbiAgICAgICAgdGhpcy5zY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0U3RyZWFtLmdldFZhbHVlKCksXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuI19pc1dhaXRpbmcgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNXYWl0aW5nKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfaXNXYWl0aW5nO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIGB0cnVlYCwgd2FpdCBpbmRpY2F0aW9uIGFwcGVhcnMgb24gdGhlIHBhZ2UgbGV2ZWwgaW5zdGVhZCBvZiB0aGVcbiAgICogcGFyZW50IGVsZW1lbnQgbGV2ZWwuIFdlIHJlY29tbWVuZCB0aGF0IHlvdSB1c2UgdGhlIGBiZWdpbkJsb2NraW5nUGFnZVdhaXRgIG9yXG4gICAqIGBiZWdpbk5vbkJsb2NraW5nUGFnZVdhaXRgIGZ1bmN0aW9ucyBvZiB0aGUgYFNreVdhaXRTZXJ2aWNlYCBpbnN0ZWFkIG9mIHNldHRpbmcgdGhpc1xuICAgKiBvbiB0aGUgY29tcG9uZW50IGxldmVsLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBpc0Z1bGxQYWdlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2U6IHVudGVzdGFibGUgKi9cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLnJlbW92ZVdhaXRCb3VuZHModGhpcy4jZWxSZWYpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5pc1dhaXRpbmcpIHtcbiAgICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLnNldFdhaXRCb3VuZHModGhpcy4jZWxSZWYpO1xuICAgIH1cblxuICAgIHRoaXMuI19pc0Z1bGxQYWdlID0gdmFsdWU7XG4gICAgdGhpcy4jcHVibGlzaEFyaWFMYWJlbCgpO1xuICAgIHRoaXMuI3B1Ymxpc2hTY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzRnVsbFBhZ2UoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19pc0Z1bGxQYWdlO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIGB0cnVlYCwgd2FpdCBpbmRpY2F0aW9uIGFwcGVhcnMgaW4gdGhlIGJvdHRvbSBsZWZ0IGNvcm5lciBvZiB0aGUgZWxlbWVudFxuICAgKiBpbnN0ZWFkIG9mIGhpZGluZyB0aGUgZW50aXJlIHBhcmVudCBlbGVtZW50LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBpc05vbkJsb2NraW5nKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2lzTm9uQmxvY2tpbmcgPSB2YWx1ZTtcbiAgICB0aGlzLiNwdWJsaXNoQXJpYUxhYmVsKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzTm9uQmxvY2tpbmcoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19pc05vbkJsb2NraW5nO1xuICB9XG5cbiAgLyoqXG4gICAqIFNjcmVlbiByZWFkZXIgdGV4dCBbdG8gc3VwcG9ydCBhY2Nlc3NpYmlsaXR5XShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2FjY2Vzc2liaWxpdHkpIHdoZW4gdGhlIHdhaXQgdG9nZ2xlcyBvZmYuXG4gICAqICBUaGUgZGVmYXVsdCB2YXJpZXMgYmFzZWQgb24gd2hldGhlciB0aGUgd2FpdCBpcyBmb3IgYW4gZWxlbWVudCBvciBhIHBhZ2UuXG4gICAqIEZvciBleGFtcGxlLCB0aGUgZGVmYXVsdCBmb3IgYSBwYWdlLWxldmVsIHdhaXQgaXMgXCJQYWdlIGxvYWRpbmcgY29tcGxldGUuXCJcbiAgICogRm9yIGVsZW1lbnQtbGV2ZWwgd2FpdHMsIHdlIHJlY29tbWVuZCB0aGF0IGNvbnN1bWVycyBvdmVyd3JpdGUgdGhlIGRlZmF1bHQgdG8gZGVzY3JpYmUgdGhlIHNwZWNpZmljIGVsZW1lbnQuXG4gICAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIERlc2lnbiB0YWIgYW5kIHRoZSBbV0NBRyBkb2N1bWVudGF0aW9uIG9uIHN0YXR1cyBtZXNzYWdlc10oaHR0cHM6Ly93d3cudzMub3JnL1dBSS9XQ0FHMjEvVW5kZXJzdGFuZGluZy9zdGF0dXMtbWVzc2FnZXMuaHRtbCkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI2N1c3RvbVNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQgPSB2YWx1ZTtcbiAgICB0aGlzLiNwdWJsaXNoU2NyZWVuUmVhZGVyQ29tcGxldGVkVGV4dCgpO1xuICB9XG5cbiAgcHVibGljIGFyaWFMYWJlbFN0cmVhbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHB1YmxpYyBhcmlhTGl2ZVRleHQgPSAnJztcbiAgcHVibGljIHNjcmVlblJlYWRlckNvbXBsZXRlZFRleHRTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuXG4gICNjdXN0b21BcmlhTGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgI2N1c3RvbVNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgI2lkID0gYHNreS13YWl0LSR7KytuZXh0SWR9YDtcbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICNfaXNGdWxsUGFnZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgI19pc05vbkJsb2NraW5nOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAjX2lzV2FpdGluZzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICByZWFkb25seSAjYWRhcHRlclNlcnZpY2UgPSBpbmplY3QoU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgI2VsUmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICByZWFkb25seSAjbGl2ZUFubm91bmNlciA9IGluamVjdChTa3lMaXZlQW5ub3VuY2VyU2VydmljZSk7XG4gIHJlYWRvbmx5ICNyZXNvdXJjZVN2YyA9IGluamVjdChTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlKTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jcHVibGlzaEFyaWFMYWJlbCgpO1xuICAgIHRoaXMuI3B1Ymxpc2hTY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI3B1Ymxpc2hBcmlhTGFiZWwoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI2N1c3RvbUFyaWFMYWJlbCkge1xuICAgICAgdGhpcy5hcmlhTGFiZWxTdHJlYW0ubmV4dCh0aGlzLiNjdXN0b21BcmlhTGFiZWwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0eXBlID0gdGhpcy5pc0Z1bGxQYWdlID8gJ19wYWdlJyA6ICcnO1xuICAgICAgY29uc3QgYmxvY2tpbmcgPSB0aGlzLmlzTm9uQmxvY2tpbmcgPyAnJyA6ICdfYmxvY2tpbmcnO1xuICAgICAgY29uc3Qga2V5ID0gYHNreXV4X3dhaXQke3R5cGV9JHtibG9ja2luZ31fYXJpYV9hbHRfdGV4dGA7XG4gICAgICB0aGlzLiNyZXNvdXJjZVN2Y1xuICAgICAgICAuZ2V0U3RyaW5nKGtleSlcbiAgICAgICAgLnBpcGUodGFrZSgxKSwgdGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgIHRoaXMuYXJpYUxhYmVsU3RyZWFtLm5leHQodmFsdWUpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAjcHVibGlzaFNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI2N1c3RvbVNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQpIHtcbiAgICAgIHRoaXMuc2NyZWVuUmVhZGVyQ29tcGxldGVkVGV4dFN0cmVhbS5uZXh0KFxuICAgICAgICB0aGlzLiNjdXN0b21TY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0LFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdHlwZSA9IHRoaXMuaXNGdWxsUGFnZSA/ICdfcGFnZScgOiAnJztcbiAgICAgIGNvbnN0IGtleSA9IGBza3l1eF93YWl0JHt0eXBlfV9zY3JlZW5fcmVhZGVyX2NvbXBsZXRlZF90ZXh0YDtcbiAgICAgIHRoaXMuI3Jlc291cmNlU3ZjXG4gICAgICAgIC5nZXRTdHJpbmcoa2V5KVxuICAgICAgICAucGlwZSh0YWtlKDEpLCB0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgdGhpcy5zY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0U3RyZWFtLm5leHQodmFsdWUpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktd2FpdC1jb250YWluZXJcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ3NreS13YWl0LWZ1bGwtcGFnZSc6IGlzRnVsbFBhZ2UsXG4gICAgJ3NreS13YWl0LW5vbi1ibG9ja2luZyc6IGlzTm9uQmxvY2tpbmdcbiAgfVwiXG4+XG4gIEBpZiAoaXNXYWl0aW5nKSB7XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJza3ktd2FpdC1tYXNrXCJcbiAgICAgIHJvbGU9XCJwcm9ncmVzc2JhclwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFN0cmVhbSB8IGFzeW5jXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ3NreS13YWl0LW1hc2stbG9hZGluZy1maXhlZCc6IGlzRnVsbFBhZ2UsXG4gICAgICAgICdza3ktd2FpdC1tYXNrLWxvYWRpbmctbm9uLWJsb2NraW5nJzogaXNOb25CbG9ja2luZyxcbiAgICAgICAgJ3NreS13YWl0LW1hc2stbG9hZGluZy1ibG9ja2luZyc6ICFpc05vbkJsb2NraW5nXG4gICAgICB9XCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwic2t5LXdhaXRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNreS13YWl0LWRvdWJsZS1ib3VuY2UxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJza3ktd2FpdC1kb3VibGUtYm91bmNlMlwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuIl19
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pbmRpY2F0b3JzL3NyYy9saWIvbW9kdWxlcy93YWl0L3dhaXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFHTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRXpGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFFL0QsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBVWYsTUFBTSxPQUFPLGdCQUFnQjtJQVI3QjtRQWlIUyxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLG9DQUErQixHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBSXpFLFFBQUcsR0FBRyxZQUFZLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDN0Is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VTtzQkFEcEIsS0FBSztnQkF3QkssYUFBYTtzQkFEdkIsS0FBSztnQkFrQksseUJBQXlCO3NCQURuQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TGl2ZUFubm91bmNlclNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5pbXBvcnQgeyBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5SW5kaWNhdG9yc1Jlc291cmNlc01vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9za3ktaW5kaWNhdG9ycy1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi93YWl0LWFkYXB0ZXIuc2VydmljZSc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdza3ktd2FpdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi93YWl0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2FpdC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtTa3lXYWl0QWRhcHRlclNlcnZpY2VdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBTa3lJbmRpY2F0b3JzUmVzb3VyY2VzTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5V2FpdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIFRoZSBBUklBIGxhYmVsIGZvciB0aGUgd2FpdCBpY29uLlxuICAgKiBUaGlzIHNldHMgdGhlIGljb24ncyBgYXJpYS1sYWJlbGAgYXR0cmlidXRlIHRvIHByb3ZpZGUgYSB0ZXh0IGVxdWl2YWxlbnQgZm9yIHNjcmVlbiByZWFkZXJzXG4gICAqIFt0byBzdXBwb3J0IGFjY2Vzc2liaWxpdHldKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvbGVhcm4vYWNjZXNzaWJpbGl0eSkgd2hlbiBhbiBlbGVtZW50IG9yIHBhZ2UgbG9hZHMgYW5kIHdoZW4gdXNlcnMgdGFiIHRvIGEgd2FpdCBpY29uLlxuICAgKiBUaGUgZGVmYXVsdCB2YWx1ZSB2YXJpZXMgYmFzZWQgb24gd2hldGhlciB0aGUgd2FpdCBpcyBmb3IgYW4gZWxlbWVudCBvciBhIHBhZ2UgYW5kIHdoZXRoZXIgaXQgaXMgYSBibG9ja2luZyB3YWl0LiBGb3IgZXhhbXBsZSwgdGhlIGRlZmF1bHQgZm9yIGEgcGFnZS1sZXZlbCBibG9ja2luZyB3YWl0IGlzIFwiUGFnZSBsb2FkaW5nLiBQbGVhc2Ugd2FpdC5cIlxuICAgKiBGb3IgZWxlbWVudC1sZXZlbCB3YWl0cywgd2UgcmVjb21tZW5kIHRoYXQgY29uc3VtZXJzIG92ZXJ3cml0ZSB0aGUgZGVmYXVsdCB0byBkZXNjcmliZSB0aGUgc3BlY2lmaWMgZWxlbWVudC5cbiAgICogXCJGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBEZXNpZ24gdGFiIGFuZCB0aGUgW1dBSS1BUklBIGBhcmlhLWxhYmVsYCBkZWZpbml0aW9uXShodHRwczovL3d3dy53My5vcmcvVFIvd2FpLWFyaWEvI2FyaWEtbGFiZWwpLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhcmlhTGFiZWwodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI2N1c3RvbUFyaWFMYWJlbCA9IHZhbHVlO1xuICAgIHRoaXMuI3B1Ymxpc2hBcmlhTGFiZWwoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIHNldCB0byBgdHJ1ZWAsIHdhaXQgaW5kaWNhdGlvbiBhcHBlYXJzIG9uIHRoZSBwYXJlbnQgZWxlbWVudCBvZiB0aGUgYHNreS13YWl0YCBjb21wb25lbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlzV2FpdGluZyh2YWx1ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCkge1xuICAgIGlmICghdGhpcy5pc0Z1bGxQYWdlKSB7XG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgdGhpcy4jYWRhcHRlclNlcnZpY2Uuc2V0V2FpdEJvdW5kcyh0aGlzLiNlbFJlZik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5yZW1vdmVXYWl0Qm91bmRzKHRoaXMuI2VsUmVmKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5zZXRCdXN5U3RhdGUoXG4gICAgICB0aGlzLiNlbFJlZixcbiAgICAgICEhdGhpcy5pc0Z1bGxQYWdlLFxuICAgICAgISF2YWx1ZSxcbiAgICAgICEhdGhpcy5pc05vbkJsb2NraW5nLFxuICAgICAgdGhpcy4jaWQsXG4gICAgKTtcblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy4jbGl2ZUFubm91bmNlci5hbm5vdW5jZSh0aGlzLmFyaWFMYWJlbFN0cmVhbS5nZXRWYWx1ZSgpKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuI19pc1dhaXRpbmcpIHtcbiAgICAgIC8vIE5PVEU6IFRoaXMgc2hvdWxkIG9ubHkgaGFwcGVuIGlmIHRoZSB3YWl0IHdhcyBwcmV2aW91c2x5IHdhaXRpbmcgYW5kIG5vIGxvbmdlciBpcyB3YWl0aW5nLlxuICAgICAgdGhpcy4jbGl2ZUFubm91bmNlci5hbm5vdW5jZShcbiAgICAgICAgdGhpcy5zY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0U3RyZWFtLmdldFZhbHVlKCksXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuI19pc1dhaXRpbmcgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNXYWl0aW5nKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfaXNXYWl0aW5nO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIGB0cnVlYCwgd2FpdCBpbmRpY2F0aW9uIGFwcGVhcnMgb24gdGhlIHBhZ2UgbGV2ZWwgaW5zdGVhZCBvZiB0aGVcbiAgICogcGFyZW50IGVsZW1lbnQgbGV2ZWwuIFdlIHJlY29tbWVuZCB0aGF0IHlvdSB1c2UgdGhlIGBiZWdpbkJsb2NraW5nUGFnZVdhaXRgIG9yXG4gICAqIGBiZWdpbk5vbkJsb2NraW5nUGFnZVdhaXRgIGZ1bmN0aW9ucyBvZiB0aGUgYFNreVdhaXRTZXJ2aWNlYCBpbnN0ZWFkIG9mIHNldHRpbmcgdGhpc1xuICAgKiBvbiB0aGUgY29tcG9uZW50IGxldmVsLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBpc0Z1bGxQYWdlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2U6IHVudGVzdGFibGUgKi9cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLnJlbW92ZVdhaXRCb3VuZHModGhpcy4jZWxSZWYpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5pc1dhaXRpbmcpIHtcbiAgICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLnNldFdhaXRCb3VuZHModGhpcy4jZWxSZWYpO1xuICAgIH1cblxuICAgIHRoaXMuI19pc0Z1bGxQYWdlID0gdmFsdWU7XG4gICAgdGhpcy4jcHVibGlzaEFyaWFMYWJlbCgpO1xuICAgIHRoaXMuI3B1Ymxpc2hTY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzRnVsbFBhZ2UoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19pc0Z1bGxQYWdlO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIGB0cnVlYCwgd2FpdCBpbmRpY2F0aW9uIGFwcGVhcnMgaW4gdGhlIGJvdHRvbSBsZWZ0IGNvcm5lciBvZiB0aGUgZWxlbWVudFxuICAgKiBpbnN0ZWFkIG9mIGhpZGluZyB0aGUgZW50aXJlIHBhcmVudCBlbGVtZW50LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBpc05vbkJsb2NraW5nKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2lzTm9uQmxvY2tpbmcgPSB2YWx1ZTtcbiAgICB0aGlzLiNwdWJsaXNoQXJpYUxhYmVsKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzTm9uQmxvY2tpbmcoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19pc05vbkJsb2NraW5nO1xuICB9XG5cbiAgLyoqXG4gICAqIFNjcmVlbiByZWFkZXIgdGV4dCBbdG8gc3VwcG9ydCBhY2Nlc3NpYmlsaXR5XShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2FjY2Vzc2liaWxpdHkpIHdoZW4gdGhlIHdhaXQgdG9nZ2xlcyBvZmYuXG4gICAqICBUaGUgZGVmYXVsdCB2YXJpZXMgYmFzZWQgb24gd2hldGhlciB0aGUgd2FpdCBpcyBmb3IgYW4gZWxlbWVudCBvciBhIHBhZ2UuXG4gICAqIEZvciBleGFtcGxlLCB0aGUgZGVmYXVsdCBmb3IgYSBwYWdlLWxldmVsIHdhaXQgaXMgXCJQYWdlIGxvYWRpbmcgY29tcGxldGUuXCJcbiAgICogRm9yIGVsZW1lbnQtbGV2ZWwgd2FpdHMsIHdlIHJlY29tbWVuZCB0aGF0IGNvbnN1bWVycyBvdmVyd3JpdGUgdGhlIGRlZmF1bHQgdG8gZGVzY3JpYmUgdGhlIHNwZWNpZmljIGVsZW1lbnQuXG4gICAqIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgdGhlIERlc2lnbiB0YWIgYW5kIHRoZSBbV0NBRyBkb2N1bWVudGF0aW9uIG9uIHN0YXR1cyBtZXNzYWdlc10oaHR0cHM6Ly93d3cudzMub3JnL1dBSS9XQ0FHMjEvVW5kZXJzdGFuZGluZy9zdGF0dXMtbWVzc2FnZXMuaHRtbCkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI2N1c3RvbVNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQgPSB2YWx1ZTtcbiAgICB0aGlzLiNwdWJsaXNoU2NyZWVuUmVhZGVyQ29tcGxldGVkVGV4dCgpO1xuICB9XG5cbiAgcHVibGljIGFyaWFMYWJlbFN0cmVhbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHB1YmxpYyBhcmlhTGl2ZVRleHQgPSAnJztcbiAgcHVibGljIHNjcmVlblJlYWRlckNvbXBsZXRlZFRleHRTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuXG4gICNjdXN0b21BcmlhTGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgI2N1c3RvbVNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgI2lkID0gYHNreS13YWl0LSR7KytuZXh0SWR9YDtcbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICNfaXNGdWxsUGFnZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgI19pc05vbkJsb2NraW5nOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAjX2lzV2FpdGluZzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICByZWFkb25seSAjYWRhcHRlclNlcnZpY2UgPSBpbmplY3QoU2t5V2FpdEFkYXB0ZXJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgI2VsUmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICByZWFkb25seSAjbGl2ZUFubm91bmNlciA9IGluamVjdChTa3lMaXZlQW5ub3VuY2VyU2VydmljZSk7XG4gIHJlYWRvbmx5ICNyZXNvdXJjZVN2YyA9IGluamVjdChTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlKTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jcHVibGlzaEFyaWFMYWJlbCgpO1xuICAgIHRoaXMuI3B1Ymxpc2hTY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI3B1Ymxpc2hBcmlhTGFiZWwoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI2N1c3RvbUFyaWFMYWJlbCkge1xuICAgICAgdGhpcy5hcmlhTGFiZWxTdHJlYW0ubmV4dCh0aGlzLiNjdXN0b21BcmlhTGFiZWwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0eXBlID0gdGhpcy5pc0Z1bGxQYWdlID8gJ19wYWdlJyA6ICcnO1xuICAgICAgY29uc3QgYmxvY2tpbmcgPSB0aGlzLmlzTm9uQmxvY2tpbmcgPyAnJyA6ICdfYmxvY2tpbmcnO1xuICAgICAgY29uc3Qga2V5ID0gYHNreXV4X3dhaXQke3R5cGV9JHtibG9ja2luZ31fYXJpYV9hbHRfdGV4dGA7XG4gICAgICB0aGlzLiNyZXNvdXJjZVN2Y1xuICAgICAgICAuZ2V0U3RyaW5nKGtleSlcbiAgICAgICAgLnBpcGUodGFrZSgxKSwgdGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgIHRoaXMuYXJpYUxhYmVsU3RyZWFtLm5leHQodmFsdWUpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAjcHVibGlzaFNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI2N1c3RvbVNjcmVlblJlYWRlckNvbXBsZXRlZFRleHQpIHtcbiAgICAgIHRoaXMuc2NyZWVuUmVhZGVyQ29tcGxldGVkVGV4dFN0cmVhbS5uZXh0KFxuICAgICAgICB0aGlzLiNjdXN0b21TY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0LFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdHlwZSA9IHRoaXMuaXNGdWxsUGFnZSA/ICdfcGFnZScgOiAnJztcbiAgICAgIGNvbnN0IGtleSA9IGBza3l1eF93YWl0JHt0eXBlfV9zY3JlZW5fcmVhZGVyX2NvbXBsZXRlZF90ZXh0YDtcbiAgICAgIHRoaXMuI3Jlc291cmNlU3ZjXG4gICAgICAgIC5nZXRTdHJpbmcoa2V5KVxuICAgICAgICAucGlwZSh0YWtlKDEpLCB0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgdGhpcy5zY3JlZW5SZWFkZXJDb21wbGV0ZWRUZXh0U3RyZWFtLm5leHQodmFsdWUpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJza3ktd2FpdC1jb250YWluZXJcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ3NreS13YWl0LWZ1bGwtcGFnZSc6IGlzRnVsbFBhZ2UsXG4gICAgJ3NreS13YWl0LW5vbi1ibG9ja2luZyc6IGlzTm9uQmxvY2tpbmdcbiAgfVwiXG4+XG4gIEBpZiAoaXNXYWl0aW5nKSB7XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJza3ktd2FpdC1tYXNrXCJcbiAgICAgIHJvbGU9XCJwcm9ncmVzc2JhclwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFN0cmVhbSB8IGFzeW5jXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ3NreS13YWl0LW1hc2stbG9hZGluZy1maXhlZCc6IGlzRnVsbFBhZ2UsXG4gICAgICAgICdza3ktd2FpdC1tYXNrLWxvYWRpbmctbm9uLWJsb2NraW5nJzogaXNOb25CbG9ja2luZyxcbiAgICAgICAgJ3NreS13YWl0LW1hc2stbG9hZGluZy1ibG9ja2luZyc6ICFpc05vbkJsb2NraW5nXG4gICAgICB9XCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwic2t5LXdhaXRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNreS13YWl0LWRvdWJsZS1ib3VuY2UxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJza3ktd2FpdC1kb3VibGUtYm91bmNlMlwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuIl19
@@ -2,15 +2,15 @@ import { NgModule } from '@angular/core';
2
2
  import { SkyWaitComponent } from './wait.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class SkyWaitModule {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitModule, imports: [SkyWaitComponent], exports: [SkyWaitComponent] }); }
7
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitModule, imports: [SkyWaitComponent] }); }
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitModule, imports: [SkyWaitComponent], exports: [SkyWaitComponent] }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitModule, imports: [SkyWaitComponent] }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  imports: [SkyWaitComponent],
13
13
  exports: [SkyWaitComponent],
14
14
  }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQU1wRCxNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsWUFIZCxnQkFBZ0IsYUFDaEIsZ0JBQWdCOytHQUVmLGFBQWEsWUFIZCxnQkFBZ0I7OzJGQUdmLGFBQWE7a0JBSnpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreVdhaXRDb21wb25lbnQgfSBmcm9tICcuL3dhaXQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1NreVdhaXRDb21wb25lbnRdLFxuICBleHBvcnRzOiBbU2t5V2FpdENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreVdhaXRNb2R1bGUge31cbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaW5kaWNhdG9ycy9zcmMvbGliL21vZHVsZXMvd2FpdC93YWl0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQU1wRCxNQUFNLE9BQU8sYUFBYTsrR0FBYixhQUFhO2dIQUFiLGFBQWEsWUFIZCxnQkFBZ0IsYUFDaEIsZ0JBQWdCO2dIQUVmLGFBQWEsWUFIZCxnQkFBZ0I7OzRGQUdmLGFBQWE7a0JBSnpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreVdhaXRDb21wb25lbnQgfSBmcm9tICcuL3dhaXQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1NreVdhaXRDb21wb25lbnRdLFxuICBleHBvcnRzOiBbU2t5V2FpdENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreVdhaXRNb2R1bGUge31cbiJdfQ==
@@ -147,13 +147,13 @@ export class SkyWaitService {
147
147
  }
148
148
  }
149
149
  }
150
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
151
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitService, providedIn: 'root' }); }
150
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
151
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitService, providedIn: 'root' }); }
152
152
  }
153
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyWaitService, decorators: [{
153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyWaitService, decorators: [{
154
154
  type: Injectable,
155
155
  args: [{
156
156
  providedIn: 'root',
157
157
  }]
158
158
  }] });
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3dhaXQvd2FpdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxtQkFBbUIsRUFDbkIsVUFBVSxFQUNWLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLDBCQUEwQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTFFLE9BQU8sRUFBYyxLQUFLLElBQUksZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFFN0QsSUFBSSxhQUErQyxDQUFDO0FBQ3BELElBQUksZ0JBQWdFLENBQUM7QUFDckUsSUFBSSxxQkFBcUIsR0FBRyxDQUFDLENBQUM7QUFDOUIsSUFBSSx3QkFBd0IsR0FBRyxDQUFDLENBQUM7QUFLakMsTUFBTSxPQUFPLGNBQWM7SUFDekIsb0JBQW9CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDbkQsVUFBVSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNyQyx3QkFBd0IsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUU5RDs7T0FFRztJQUNJLHFCQUFxQjtRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7T0FFRztJQUNJLHdCQUF3QjtRQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxtQkFBbUI7UUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJ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RUFBRSxDQUFDO29CQUMxQixDQUFDO29CQUVELElBQUkscUJBQXFCLEdBQUcsQ0FBQyxFQUFFLENBQUM7d0JBQzlCLGFBQWEsQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO29CQUN4QyxDQUFDO2dCQUNILENBQUM7cUJBQU0sQ0FBQztvQkFDTixJQUFJLHdCQUF3QixHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNqQyx3QkFBd0IsRUFBRSxDQUFDO29CQUM3QixDQUFDO29CQUVELElBQUksd0JBQXdCLEdBQUcsQ0FBQyxFQUFFLENBQUM7d0JBQ2pDLGFBQWEsQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7b0JBQzNDLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsVUFBbUI7UUFDaEMsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUNsQixJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUNmLHFCQUFxQixHQUFHLENBQUMsQ0FBQztnQkFDMUIsYUFBYSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7WUFDeEMsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLHdCQUF3QixHQUFHLENBQUMsQ0FBQztnQkFDN0IsYUFBYSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztZQUMzQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7OEdBeEpVLGNBQWM7a0hBQWQsY0FBYyxjQUZiLE1BQU07OzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50UmVmLFxuICBFbnZpcm9ubWVudEluamVjdG9yLFxuICBJbmplY3RhYmxlLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5QXBwV2luZG93UmVmLCBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGVmZXIgYXMgb2JzZXJ2YWJsZURlZmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5V2FpdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3dhaXQtcGFnZS5jb21wb25lbnQnO1xuXG5sZXQgd2FpdENvbXBvbmVudDogU2t5V2FpdFBhZ2VDb21wb25lbnQgfCB1bmRlZmluZWQ7XG5sZXQgd2FpdENvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFNreVdhaXRQYWdlQ29tcG9uZW50PiB8IHVuZGVmaW5lZDtcbmxldCBwYWdlV2FpdEJsb2NraW5nQ291bnQgPSAwO1xubGV0IHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lXYWl0U2VydmljZSB7XG4gICNlbnZpcm9ubWVudEluamVjdG9yID0gaW5qZWN0KEVudmlyb25tZW50SW5qZWN0b3IpO1xuICAjd2luZG93U3ZjID0gaW5qZWN0KFNreUFwcFdpbmRvd1JlZik7XG4gICNkeW5hbWljQ29tcG9uZW50U2VydmljZSA9IGluamVjdChTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyBhIGJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS5cbiAgICovXG4gIHB1YmxpYyBiZWdpbkJsb2NraW5nUGFnZVdhaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jYmVnaW5QYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLlxuICAgKi9cbiAgcHVibGljIGJlZ2luTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNiZWdpblBhZ2VXYWl0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmRzIGEgYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLiBCbG9ja2luZyBwYWdlIHdhaXQgaW5kaWNhdGlvblxuICAgKiBpcyByZW1vdmVkIHdoZW4gYWxsIHJ1bm5pbmcgYmxvY2tpbmcgcGFnZSB3YWl0cyBhcmUgZW5kZWQuXG4gICAqL1xuICBwdWJsaWMgZW5kQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNlbmRQYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmRzIGEgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS4gTm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBpbmRpY2F0aW9uXG4gICAqIGlzIHJlbW92ZWQgd2hlbiBhbGwgcnVubmluZyBub24tYmxvY2tpbmcgcGFnZSB3YWl0cyBhcmUgZW5kZWQuXG4gICAqL1xuICBwdWJsaWMgZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNlbmRQYWdlV2FpdChmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIGFsbCBibG9ja2luZyBhbmQgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdHMgb24gdGhlIHBhZ2UuXG4gICAqL1xuICBwdWJsaWMgY2xlYXJBbGxQYWdlV2FpdHMoKTogdm9pZCB7XG4gICAgdGhpcy4jY2xlYXJQYWdlV2FpdCh0cnVlKTtcbiAgICB0aGlzLiNjbGVhclBhZ2VXYWl0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBkaXNwb3NlKCk6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICB3YWl0Q29tcG9uZW50ID0gdW5kZWZpbmVkO1xuICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50ID0gMDtcbiAgICAgIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICB0aGlzLiNkeW5hbWljQ29tcG9uZW50U2VydmljZS5yZW1vdmVDb21wb25lbnQod2FpdENvbXBvbmVudFJlZik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExhdW5jaGVzIGEgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgYmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTGF1bmNoZXMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljXG4gICAqIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgbm9uQmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5Ob25CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAjc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICBpZiAoaXNCbG9ja2luZykge1xuICAgICAgICB3YWl0Q29tcG9uZW50Lmhhc0Jsb2NraW5nV2FpdCA9IHRydWU7XG4gICAgICAgIHBhZ2VXYWl0QmxvY2tpbmdDb3VudCsrO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSB0cnVlO1xuICAgICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQrKztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYmVnaW5QYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF3YWl0Q29tcG9uZW50KSB7XG4gICAgICAvKlxuICAgICAgICAgIER5bmFtaWMgY29tcG9uZW50IGNyZWF0aW9uIG5lZWRzIHRvIGJlIGRvbmUgaW4gYSB0aW1lb3V0IHRvIHByZXZlbnQgQXBwbGljYXRpb25SZWYgZnJvbVxuICAgICAgICAgIGNyYXNoaW5nIHdoZW4gd2FpdCBzZXJ2aWNlIGlzIGNhbGxlZCBpbiBBbmd1bGFyIGxpZmVjeWNsZSBmdW5jdGlvbnMuXG4gICAgICAqL1xuICAgICAgdGhpcy4jd2luZG93U3ZjLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgLy8gRW5zdXJpbmcgaGVyZSB0aGF0IHdlIHJlY2hlY2sgdGhpcyBhZnRlciB0aGUgc2V0VGltZW91dCBpcyBvdmVyIHNvIHRoYXQgd2UgZG9uJ3QgY2xhc2hcbiAgICAgICAgLy8gd2l0aCBhbnkgb3RoZXIgd2FpdHMgdGhhdCBhcmUgY3JlYXRlZC5cbiAgICAgICAgaWYgKCF3YWl0Q29tcG9uZW50KSB7XG4gICAgICAgICAgd2FpdENvbXBvbmVudFJlZiA9IHRoaXMuI2R5bmFtaWNDb21wb25lbnRTZXJ2aWNlLmNyZWF0ZUNvbXBvbmVudChcbiAgICAgICAgICAgIFNreVdhaXRQYWdlQ29tcG9uZW50LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBlbnZpcm9ubWVudEluamVjdG9yOiB0aGlzLiNlbnZpcm9ubWVudEluamVjdG9yLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICApO1xuICAgICAgICAgIHdhaXRDb21wb25lbnQgPSB3YWl0Q29tcG9uZW50UmVmLmluc3RhbmNlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy4jc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZyk7XG4gICAgfVxuICB9XG5cbiAgI2VuZFBhZ2VXYWl0KGlzQmxvY2tpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvKlxuICAgICAgICBOZWVkcyB0byB5aWVsZCBzbyB0aGF0IHdhaXQgY3JlYXRpb24gY2FuIGZpbmlzaFxuICAgICAgICBiZWZvcmUgaXQgaXMgZGlzbWlzc2VkIGluIHRoZSBldmVudCBvZiBhIHJhY2UuXG4gICAgKi9cbiAgICB0aGlzLiN3aW5kb3dTdmMubmF0aXZlV2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHdhaXRDb21wb25lbnQpIHtcbiAgICAgICAgaWYgKGlzQmxvY2tpbmcpIHtcbiAgICAgICAgICBpZiAocGFnZVdhaXRCbG9ja2luZ0NvdW50ID4gMCkge1xuICAgICAgICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50LS07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHBhZ2VXYWl0QmxvY2tpbmdDb3VudCA8IDEpIHtcbiAgICAgICAgICAgIHdhaXRDb21wb25lbnQuaGFzQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPiAwKSB7XG4gICAgICAgICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQtLTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAocGFnZVdhaXROb25CbG9ja2luZ0NvdW50IDwgMSkge1xuICAgICAgICAgICAgd2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gICNjbGVhclBhZ2VXYWl0KGlzQmxvY2tpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAod2FpdENvbXBvbmVudCkge1xuICAgICAgaWYgKGlzQmxvY2tpbmcpIHtcbiAgICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50ID0gMDtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNCbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICAgIHdhaXRDb21wb25lbnQuaGFzTm9uQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FpdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2luZGljYXRvcnMvc3JjL2xpYi9tb2R1bGVzL3dhaXQvd2FpdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxtQkFBbUIsRUFDbkIsVUFBVSxFQUNWLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLDBCQUEwQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTFFLE9BQU8sRUFBYyxLQUFLLElBQUksZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFFN0QsSUFBSSxhQUErQyxDQUFDO0FBQ3BELElBQUksZ0JBQWdFLENBQUM7QUFDckUsSUFBSSxxQkFBcUIsR0FBRyxDQUFDLENBQUM7QUFDOUIsSUFBSSx3QkFBd0IsR0FBRyxDQUFDLENBQUM7QUFLakMsTUFBTSxPQUFPLGNBQWM7SUFDekIsb0JBQW9CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDbkQsVUFBVSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNyQyx3QkFBd0IsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUU5RDs7T0FFRztJQUNJLHFCQUFxQjtRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7T0FFRztJQUNJLHdCQUF3QjtRQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxtQkFBbUI7UUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJ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RUFBRSxDQUFDO29CQUMxQixDQUFDO29CQUVELElBQUkscUJBQXFCLEdBQUcsQ0FBQyxFQUFFLENBQUM7d0JBQzlCLGFBQWEsQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO29CQUN4QyxDQUFDO2dCQUNILENBQUM7cUJBQU0sQ0FBQztvQkFDTixJQUFJLHdCQUF3QixHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNqQyx3QkFBd0IsRUFBRSxDQUFDO29CQUM3QixDQUFDO29CQUVELElBQUksd0JBQXdCLEdBQUcsQ0FBQyxFQUFFLENBQUM7d0JBQ2pDLGFBQWEsQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7b0JBQzNDLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsVUFBbUI7UUFDaEMsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUNsQixJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUNmLHFCQUFxQixHQUFHLENBQUMsQ0FBQztnQkFDMUIsYUFBYSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7WUFDeEMsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLHdCQUF3QixHQUFHLENBQUMsQ0FBQztnQkFDN0IsYUFBYSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztZQUMzQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7K0dBeEpVLGNBQWM7bUhBQWQsY0FBYyxjQUZiLE1BQU07OzRGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50UmVmLFxuICBFbnZpcm9ubWVudEluamVjdG9yLFxuICBJbmplY3RhYmxlLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5QXBwV2luZG93UmVmLCBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZGVmZXIgYXMgb2JzZXJ2YWJsZURlZmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5V2FpdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3dhaXQtcGFnZS5jb21wb25lbnQnO1xuXG5sZXQgd2FpdENvbXBvbmVudDogU2t5V2FpdFBhZ2VDb21wb25lbnQgfCB1bmRlZmluZWQ7XG5sZXQgd2FpdENvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFNreVdhaXRQYWdlQ29tcG9uZW50PiB8IHVuZGVmaW5lZDtcbmxldCBwYWdlV2FpdEJsb2NraW5nQ291bnQgPSAwO1xubGV0IHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lXYWl0U2VydmljZSB7XG4gICNlbnZpcm9ubWVudEluamVjdG9yID0gaW5qZWN0KEVudmlyb25tZW50SW5qZWN0b3IpO1xuICAjd2luZG93U3ZjID0gaW5qZWN0KFNreUFwcFdpbmRvd1JlZik7XG4gICNkeW5hbWljQ29tcG9uZW50U2VydmljZSA9IGluamVjdChTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyBhIGJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS5cbiAgICovXG4gIHB1YmxpYyBiZWdpbkJsb2NraW5nUGFnZVdhaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jYmVnaW5QYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLlxuICAgKi9cbiAgcHVibGljIGJlZ2luTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNiZWdpblBhZ2VXYWl0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmRzIGEgYmxvY2tpbmcgcGFnZSB3YWl0IG9uIHRoZSBwYWdlLiBCbG9ja2luZyBwYWdlIHdhaXQgaW5kaWNhdGlvblxuICAgKiBpcyByZW1vdmVkIHdoZW4gYWxsIHJ1bm5pbmcgYmxvY2tpbmcgcGFnZSB3YWl0cyBhcmUgZW5kZWQuXG4gICAqL1xuICBwdWJsaWMgZW5kQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNlbmRQYWdlV2FpdCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmRzIGEgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBvbiB0aGUgcGFnZS4gTm9uLWJsb2NraW5nIHBhZ2Ugd2FpdCBpbmRpY2F0aW9uXG4gICAqIGlzIHJlbW92ZWQgd2hlbiBhbGwgcnVubmluZyBub24tYmxvY2tpbmcgcGFnZSB3YWl0cyBhcmUgZW5kZWQuXG4gICAqL1xuICBwdWJsaWMgZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNlbmRQYWdlV2FpdChmYWxzZSk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIGFsbCBibG9ja2luZyBhbmQgbm9uLWJsb2NraW5nIHBhZ2Ugd2FpdHMgb24gdGhlIHBhZ2UuXG4gICAqL1xuICBwdWJsaWMgY2xlYXJBbGxQYWdlV2FpdHMoKTogdm9pZCB7XG4gICAgdGhpcy4jY2xlYXJQYWdlV2FpdCh0cnVlKTtcbiAgICB0aGlzLiNjbGVhclBhZ2VXYWl0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBkaXNwb3NlKCk6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICB3YWl0Q29tcG9uZW50ID0gdW5kZWZpbmVkO1xuICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50ID0gMDtcbiAgICAgIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICB0aGlzLiNkeW5hbWljQ29tcG9uZW50U2VydmljZS5yZW1vdmVDb21wb25lbnQod2FpdENvbXBvbmVudFJlZik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExhdW5jaGVzIGEgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgYmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTGF1bmNoZXMgYSBub24tYmxvY2tpbmcgcGFnZSB3YWl0IGFuZCBhdXRvbWF0aWNhbGx5IHN0b3BzIHdoZW4gdGhlIHNwZWNpZmljXG4gICAqIGFzeW5jaHJvbm91cyBldmVudCBjb21wbGV0ZXMuXG4gICAqL1xuICBwdWJsaWMgbm9uQmxvY2tpbmdXcmFwPFQ+KG9ic2VydmFibGU6IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2JzZXJ2YWJsZURlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuYmVnaW5Ob25CbG9ja2luZ1BhZ2VXYWl0KCk7XG4gICAgICByZXR1cm4gb2JzZXJ2YWJsZS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuZW5kTm9uQmxvY2tpbmdQYWdlV2FpdCgpKSk7XG4gICAgfSk7XG4gIH1cblxuICAjc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh3YWl0Q29tcG9uZW50KSB7XG4gICAgICBpZiAoaXNCbG9ja2luZykge1xuICAgICAgICB3YWl0Q29tcG9uZW50Lmhhc0Jsb2NraW5nV2FpdCA9IHRydWU7XG4gICAgICAgIHBhZ2VXYWl0QmxvY2tpbmdDb3VudCsrO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSB0cnVlO1xuICAgICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQrKztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYmVnaW5QYWdlV2FpdChpc0Jsb2NraW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF3YWl0Q29tcG9uZW50KSB7XG4gICAgICAvKlxuICAgICAgICAgIER5bmFtaWMgY29tcG9uZW50IGNyZWF0aW9uIG5lZWRzIHRvIGJlIGRvbmUgaW4gYSB0aW1lb3V0IHRvIHByZXZlbnQgQXBwbGljYXRpb25SZWYgZnJvbVxuICAgICAgICAgIGNyYXNoaW5nIHdoZW4gd2FpdCBzZXJ2aWNlIGlzIGNhbGxlZCBpbiBBbmd1bGFyIGxpZmVjeWNsZSBmdW5jdGlvbnMuXG4gICAgICAqL1xuICAgICAgdGhpcy4jd2luZG93U3ZjLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgLy8gRW5zdXJpbmcgaGVyZSB0aGF0IHdlIHJlY2hlY2sgdGhpcyBhZnRlciB0aGUgc2V0VGltZW91dCBpcyBvdmVyIHNvIHRoYXQgd2UgZG9uJ3QgY2xhc2hcbiAgICAgICAgLy8gd2l0aCBhbnkgb3RoZXIgd2FpdHMgdGhhdCBhcmUgY3JlYXRlZC5cbiAgICAgICAgaWYgKCF3YWl0Q29tcG9uZW50KSB7XG4gICAgICAgICAgd2FpdENvbXBvbmVudFJlZiA9IHRoaXMuI2R5bmFtaWNDb21wb25lbnRTZXJ2aWNlLmNyZWF0ZUNvbXBvbmVudChcbiAgICAgICAgICAgIFNreVdhaXRQYWdlQ29tcG9uZW50LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBlbnZpcm9ubWVudEluamVjdG9yOiB0aGlzLiNlbnZpcm9ubWVudEluamVjdG9yLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICApO1xuICAgICAgICAgIHdhaXRDb21wb25lbnQgPSB3YWl0Q29tcG9uZW50UmVmLmluc3RhbmNlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy4jc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jc2V0V2FpdENvbXBvbmVudFByb3BlcnRpZXMoaXNCbG9ja2luZyk7XG4gICAgfVxuICB9XG5cbiAgI2VuZFBhZ2VXYWl0KGlzQmxvY2tpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvKlxuICAgICAgICBOZWVkcyB0byB5aWVsZCBzbyB0aGF0IHdhaXQgY3JlYXRpb24gY2FuIGZpbmlzaFxuICAgICAgICBiZWZvcmUgaXQgaXMgZGlzbWlzc2VkIGluIHRoZSBldmVudCBvZiBhIHJhY2UuXG4gICAgKi9cbiAgICB0aGlzLiN3aW5kb3dTdmMubmF0aXZlV2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHdhaXRDb21wb25lbnQpIHtcbiAgICAgICAgaWYgKGlzQmxvY2tpbmcpIHtcbiAgICAgICAgICBpZiAocGFnZVdhaXRCbG9ja2luZ0NvdW50ID4gMCkge1xuICAgICAgICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50LS07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHBhZ2VXYWl0QmxvY2tpbmdDb3VudCA8IDEpIHtcbiAgICAgICAgICAgIHdhaXRDb21wb25lbnQuaGFzQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQgPiAwKSB7XG4gICAgICAgICAgICBwYWdlV2FpdE5vbkJsb2NraW5nQ291bnQtLTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAocGFnZVdhaXROb25CbG9ja2luZ0NvdW50IDwgMSkge1xuICAgICAgICAgICAgd2FpdENvbXBvbmVudC5oYXNOb25CbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gICNjbGVhclBhZ2VXYWl0KGlzQmxvY2tpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAod2FpdENvbXBvbmVudCkge1xuICAgICAgaWYgKGlzQmxvY2tpbmcpIHtcbiAgICAgICAgcGFnZVdhaXRCbG9ja2luZ0NvdW50ID0gMDtcbiAgICAgICAgd2FpdENvbXBvbmVudC5oYXNCbG9ja2luZ1dhaXQgPSBmYWxzZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhZ2VXYWl0Tm9uQmxvY2tpbmdDb3VudCA9IDA7XG4gICAgICAgIHdhaXRDb21wb25lbnQuaGFzTm9uQmxvY2tpbmdXYWl0ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=