@skyux/flyout 7.0.0-beta.16 → 7.0.0-beta.18
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.
- package/esm2020/lib/modules/flyout/flyout-adapter.service.mjs +6 -6
- package/esm2020/lib/modules/flyout/flyout-iterator.component.mjs +4 -4
- package/esm2020/lib/modules/flyout/flyout-media-query.service.mjs +4 -4
- package/esm2020/lib/modules/flyout/flyout.component.mjs +6 -7
- package/esm2020/lib/modules/flyout/flyout.module.mjs +5 -5
- package/esm2020/lib/modules/flyout/flyout.service.mjs +6 -7
- package/esm2020/lib/modules/shared/sky-flyout-resources.module.mjs +5 -5
- package/fesm2015/skyux-flyout.mjs +23 -23
- package/fesm2015/skyux-flyout.mjs.map +1 -1
- package/fesm2020/skyux-flyout.mjs +23 -23
- package/fesm2020/skyux-flyout.mjs.map +1 -1
- package/package.json +12 -12
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var _SkyFlyoutAdapterService_renderer, _SkyFlyoutAdapterService_windowRef;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
|
-
import { Injectable,
|
|
4
|
-
import {
|
|
3
|
+
import { Injectable, } from '@angular/core';
|
|
4
|
+
import { SkyMediaBreakpoints } from '@skyux/core';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@skyux/core";
|
|
7
7
|
/**
|
|
@@ -64,9 +64,9 @@ export class SkyFlyoutAdapterService {
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
_SkyFlyoutAdapterService_renderer = new WeakMap(), _SkyFlyoutAdapterService_windowRef = new WeakMap();
|
|
67
|
-
SkyFlyoutAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
68
|
-
SkyFlyoutAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.
|
|
69
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
67
|
+
SkyFlyoutAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutAdapterService, deps: [{ token: i0.RendererFactory2 }, { token: i1.SkyAppWindowRef }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
68
|
+
SkyFlyoutAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutAdapterService });
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutAdapterService, decorators: [{
|
|
70
70
|
type: Injectable
|
|
71
71
|
}], ctorParameters: function () { return [{ type: i0.RendererFactory2 }, { type: i1.SkyAppWindowRef }]; } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LWFkYXB0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mbHlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZseW91dC9mbHlvdXQtYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUVMLFVBQVUsR0FHWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQW1CLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFFbkU7O0dBRUc7QUFFSCxNQUFNLE9BQU8sdUJBQXVCO0lBS2xDLFlBQVksZUFBaUMsRUFBRSxTQUEwQjtRQUp6RSxvREFBcUI7UUFFckIscURBQTRCO1FBRzFCLHVCQUFBLElBQUksc0NBQWMsU0FBUyxNQUFBLENBQUM7UUFDNUIsdUJBQUEsSUFBSSxxQ0FBYSxlQUFlLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBQSxDQUFDO0lBQ25FLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxNQUFrQjtRQUMzQyxNQUFNLFNBQVMsR0FBRyx1QkFBQSxJQUFJLDBDQUFXLENBQUMsWUFBWSxDQUFDO1FBQy9DLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFeEUsSUFBSSxVQUFVLEVBQUU7WUFDZCx1QkFBQSxJQUFJLHlDQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztTQUN2RTtJQUNILENBQUM7SUFFTSxrQkFBa0IsQ0FDdkIsT0FBbUIsRUFDbkIsVUFBZ0M7UUFFaEMsd0JBQXdCO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDZixPQUFPO1NBQ1I7UUFDRCxNQUFNLFFBQVEsR0FBZ0IsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUVwRCx1QkFBQSxJQUFJLHlDQUFVLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSw2QkFBNkIsQ0FBQyxDQUFDO1FBQ3BFLHVCQUFBLElBQUkseUNBQVUsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDcEUsdUJBQUEsSUFBSSx5Q0FBVSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsNkJBQTZCLENBQUMsQ0FBQztRQUNwRSx1QkFBQSxJQUFJLHlDQUFVLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSw2QkFBNkIsQ0FBQyxDQUFDO1FBRXBFLElBQUksUUFBZ0IsQ0FBQztRQUVyQixRQUFRLFVBQVUsRUFBRTtZQUNsQixLQUFLLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQixRQUFRLEdBQUcsNkJBQTZCLENBQUM7Z0JBQ3pDLE1BQU07YUFDUDtZQUNELEtBQUssbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzNCLFFBQVEsR0FBRyw2QkFBNkIsQ0FBQztnQkFDekMsTUFBTTthQUNQO1lBQ0QsS0FBSyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDM0IsUUFBUSxHQUFHLDZCQUE2QixDQUFDO2dCQUN6QyxNQUFNO2FBQ1A7WUFDRCxPQUFPLENBQUMsQ0FBQztnQkFDUCxRQUFRLEdBQUcsNkJBQTZCLENBQUM7Z0JBQ3pDLE1BQU07YUFDUDtTQUNGO1FBRUQsdUJBQUEsSUFBSSx5Q0FBVSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVNLHlCQUF5QixDQUFDLE1BQWU7UUFDOUMseUVBQXlFO1FBQ3pFLHNFQUFzRTtRQUN0RSxvRkFBb0Y7UUFDcEYsc0RBQXNEO1FBQ3RELE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN2QyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1NBQ3ZEO0lBQ0gsQ0FBQzs7O3FIQW5FVSx1QkFBdUI7eUhBQXZCLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0YWJsZSxcbiAgUmVuZGVyZXIyLFxuICBSZW5kZXJlckZhY3RvcnkyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUFwcFdpbmRvd1JlZiwgU2t5TWVkaWFCcmVha3BvaW50cyB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreUZseW91dEFkYXB0ZXJTZXJ2aWNlIHtcbiAgI3JlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgI3dpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmO1xuXG4gIGNvbnN0cnVjdG9yKHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5Miwgd2luZG93UmVmOiBTa3lBcHBXaW5kb3dSZWYpIHtcbiAgICB0aGlzLiN3aW5kb3dSZWYgPSB3aW5kb3dSZWY7XG4gICAgdGhpcy4jcmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIodW5kZWZpbmVkLCBudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGp1c3RIZWFkZXJGb3JIZWxwKGhlYWRlcjogRWxlbWVudFJlZik6IHZvaWQge1xuICAgIGNvbnN0IHdpbmRvd09iaiA9IHRoaXMuI3dpbmRvd1JlZi5uYXRpdmVXaW5kb3c7XG4gICAgY29uc3QgaGVscFdpZGdldCA9IHdpbmRvd09iai5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYmItaGVscC1pbnZva2VyJyk7XG5cbiAgICBpZiAoaGVscFdpZGdldCkge1xuICAgICAgdGhpcy4jcmVuZGVyZXIuYWRkQ2xhc3MoaGVhZGVyLm5hdGl2ZUVsZW1lbnQsICdza3ktZmx5b3V0LWhlbHAtc2hpbScpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXRSZXNwb25zaXZlQ2xhc3MoXG4gICAgZWxlbWVudDogRWxlbWVudFJlZixcbiAgICBicmVha3BvaW50PzogU2t5TWVkaWFCcmVha3BvaW50c1xuICApOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIWJyZWFrcG9pbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgbmF0aXZlRWw6IEhUTUxFbGVtZW50ID0gZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuXG4gICAgdGhpcy4jcmVuZGVyZXIucmVtb3ZlQ2xhc3MobmF0aXZlRWwsICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXIteHMnKTtcbiAgICB0aGlzLiNyZW5kZXJlci5yZW1vdmVDbGFzcyhuYXRpdmVFbCwgJ3NreS1yZXNwb25zaXZlLWNvbnRhaW5lci1zbScpO1xuICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZUNsYXNzKG5hdGl2ZUVsLCAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLW1kJyk7XG4gICAgdGhpcy4jcmVuZGVyZXIucmVtb3ZlQ2xhc3MobmF0aXZlRWwsICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXItbGcnKTtcblxuICAgIGxldCBuZXdDbGFzczogc3RyaW5nO1xuXG4gICAgc3dpdGNoIChicmVha3BvaW50KSB7XG4gICAgICBjYXNlIFNreU1lZGlhQnJlYWtwb2ludHMueHM6IHtcbiAgICAgICAgbmV3Q2xhc3MgPSAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLXhzJztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFNreU1lZGlhQnJlYWtwb2ludHMuc206IHtcbiAgICAgICAgbmV3Q2xhc3MgPSAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLXNtJztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFNreU1lZGlhQnJlYWtwb2ludHMubWQ6IHtcbiAgICAgICAgbmV3Q2xhc3MgPSAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLW1kJztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIG5ld0NsYXNzID0gJ3NreS1yZXNwb25zaXZlLWNvbnRhaW5lci1sZyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuI3JlbmRlcmVyLmFkZENsYXNzKG5hdGl2ZUVsLCBuZXdDbGFzcyk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlSWZyYW1lUG9pbnRlckV2ZW50cyhlbmFibGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvLyBXaGVuIGlmcmFtZXMgYXJlIHByZXNlbnQgb24gdGhlIHBhZ2UsIHRoZXkgbWF5IGludGVyZmVyZSB3aXRoIGRyYWdnaW5nXG4gICAgLy8gdGVtcG9yYXJpbHkgZGlzYWJsZSBwb2ludGVyIGV2ZW50cyBpbiBpZnJhbWVzIHdoZW4gZHJhZ2dpbmcgc3RhcnRzLlxuICAgIC8vIFdoZW4gcmUtZW5hYmxpbmcgd2Ugc2V0IHRvIHRoZSBlbXB0eSBzdHJpbmcgYXMgaXQgd2lsbCByZW1vdmUgdGhlIGVsZW1lbnQgc3R5bGluZ1xuICAgIC8vIGFuZCBmYWxsIGJhY2sgdG8gYW55IGNzcyBvcmlnaW5hbGx5IGdpdmVuIHRvIGlmcmFtZVxuICAgIGNvbnN0IGlmcmFtZXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdpZnJhbWUnKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlmcmFtZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmcmFtZXNbaV0uc3R5bGUucG9pbnRlckV2ZW50cyA9IGVuYWJsZSA/ICcnIDogJ25vbmUnO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -39,9 +39,9 @@ export class SkyFlyoutIteratorComponent {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
_SkyFlyoutIteratorComponent_ngUnsubscribe = new WeakMap(), _SkyFlyoutIteratorComponent__nextButtonClick = new WeakMap(), _SkyFlyoutIteratorComponent__previousButtonClick = new WeakMap();
|
|
42
|
-
SkyFlyoutIteratorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
43
|
-
SkyFlyoutIteratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
42
|
+
SkyFlyoutIteratorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutIteratorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
43
|
+
SkyFlyoutIteratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.11", type: SkyFlyoutIteratorComponent, selector: "sky-flyout-iterator", inputs: { nextButtonDisabled: "nextButtonDisabled", previousButtonDisabled: "previousButtonDisabled" }, outputs: { previousButtonClick: "previousButtonClick", nextButtonClick: "nextButtonClick" }, ngImport: i0, template: "<div id=\"iterators\" class=\"sky-flyout-iterators\">\n <button\n class=\"sky-btn\"\n [attr.aria-label]=\"\n 'skyux_flyout_iterator_previous_button' | skyLibResources\n \"\n [disabled]=\"previousButtonDisabled\"\n [skyThemeClass]=\"{\n 'sky-btn-default sky-margin-inline-compact': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-sm': 'modern'\n }\"\n (click)=\"onIteratorPreviousClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-up\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-up\"\n iconType=\"skyux\"\n size=\"lg\"\n >\n </sky-icon>\n </button>\n <button\n class=\"sky-btn\"\n [attr.aria-label]=\"'skyux_flyout_iterator_next_button' | skyLibResources\"\n [disabled]=\"nextButtonDisabled\"\n [skyThemeClass]=\"{\n 'sky-btn-default sky-margin-inline-compact': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-sm': 'modern'\n }\"\n (click)=\"onIteratorNextClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-down\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-down\"\n iconType=\"skyux\"\n size=\"lg\"\n >\n </sky-icon>\n </button>\n</div>\n", styles: [":host-context(.sky-theme-modern) .sky-flyout-iterators{display:inline}.sky-theme-modern .sky-flyout-iterators{display:inline}\n"], dependencies: [{ kind: "component", type: i1.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "directive", type: i2.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { kind: "directive", type: i2.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }] });
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutIteratorComponent, decorators: [{
|
|
45
45
|
type: Component,
|
|
46
46
|
args: [{ selector: 'sky-flyout-iterator', template: "<div id=\"iterators\" class=\"sky-flyout-iterators\">\n <button\n class=\"sky-btn\"\n [attr.aria-label]=\"\n 'skyux_flyout_iterator_previous_button' | skyLibResources\n \"\n [disabled]=\"previousButtonDisabled\"\n [skyThemeClass]=\"{\n 'sky-btn-default sky-margin-inline-compact': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-sm': 'modern'\n }\"\n (click)=\"onIteratorPreviousClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-up\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-up\"\n iconType=\"skyux\"\n size=\"lg\"\n >\n </sky-icon>\n </button>\n <button\n class=\"sky-btn\"\n [attr.aria-label]=\"'skyux_flyout_iterator_next_button' | skyLibResources\"\n [disabled]=\"nextButtonDisabled\"\n [skyThemeClass]=\"{\n 'sky-btn-default sky-margin-inline-compact': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-sm': 'modern'\n }\"\n (click)=\"onIteratorNextClick()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-down\"> </sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-down\"\n iconType=\"skyux\"\n size=\"lg\"\n >\n </sky-icon>\n </button>\n</div>\n", styles: [":host-context(.sky-theme-modern) .sky-flyout-iterators{display:inline}.sky-theme-modern .sky-flyout-iterators{display:inline}\n"] }]
|
|
47
47
|
}], propDecorators: { nextButtonDisabled: [{
|
|
@@ -53,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
53
53
|
}], nextButtonClick: [{
|
|
54
54
|
type: Output
|
|
55
55
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LWl0ZXJhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mbHlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZseW91dC9mbHlvdXQtaXRlcmF0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2ZseW91dC9zcmMvbGliL21vZHVsZXMvZmx5b3V0L2ZseW91dC1pdGVyYXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFFL0I7O0dBRUc7QUFNSCxNQUFNLE9BQU8sMEJBQTBCO0lBTHZDO1FBc0JFLG9EQUFpQixJQUFJLE9BQU8sRUFBUSxFQUFDO1FBRXJDLHVEQUFvQixJQUFJLFlBQVksRUFBUSxFQUFDO1FBRTdDLDJEQUF3QixJQUFJLFlBQVksRUFBUSxFQUFDO0tBb0JsRDtJQWxDQyxJQUNXLG1CQUFtQjtRQUM1QixPQUFPLHVCQUFBLElBQUksd0RBQXNCLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQ1csZUFBZTtRQUN4QixPQUFPLHVCQUFBLElBQUksb0RBQWtCLENBQUM7SUFDaEMsQ0FBQztJQVFNLFdBQVc7UUFDaEIsdUJBQUEsSUFBSSxpREFBZSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzNCLHVCQUFBLElBQUksaURBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sdUJBQXVCO1FBQzVCLDBCQUEwQjtRQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQ2hDLHVCQUFBLElBQUksd0RBQXNCLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbkM7SUFDSCxDQUFDO0lBRU0sbUJBQW1CO1FBQ3hCLDBCQUEwQjtRQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQzVCLHVCQUFBLElBQUksb0RBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDL0I7SUFDSCxDQUFDOzs7d0hBeENVLDBCQUEwQjs0R0FBMUIsMEJBQTBCLGdRQ2xCdkMseXZDQTBDQTs0RkR4QmEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHFCQUFxQjs4QkFNeEIsa0JBQWtCO3NCQUR4QixLQUFLO2dCQUlDLHNCQUFzQjtzQkFENUIsS0FBSztnQkFJSyxtQkFBbUI7c0JBRDdCLE1BQU07Z0JBTUksZUFBZTtzQkFEekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1mbHlvdXQtaXRlcmF0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vZmx5b3V0LWl0ZXJhdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmx5b3V0LWl0ZXJhdG9yLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNreUZseW91dEl0ZXJhdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgcHVibGljIG5leHRCdXR0b25EaXNhYmxlZDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcHJldmlvdXNCdXR0b25EaXNhYmxlZDogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBwcmV2aW91c0J1dHRvbkNsaWNrKCk6IEV2ZW50RW1pdHRlcjx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuI19wcmV2aW91c0J1dHRvbkNsaWNrO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgbmV4dEJ1dHRvbkNsaWNrKCk6IEV2ZW50RW1pdHRlcjx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuI19uZXh0QnV0dG9uQ2xpY2s7XG4gIH1cblxuICAjbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgI19uZXh0QnV0dG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgI19wcmV2aW91c0J1dHRvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgb25JdGVyYXRvclByZXZpb3VzQ2xpY2soKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoIXRoaXMucHJldmlvdXNCdXR0b25EaXNhYmxlZCkge1xuICAgICAgdGhpcy4jX3ByZXZpb3VzQnV0dG9uQ2xpY2suZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkl0ZXJhdG9yTmV4dENsaWNrKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKCF0aGlzLm5leHRCdXR0b25EaXNhYmxlZCkge1xuICAgICAgdGhpcy4jX25leHRCdXR0b25DbGljay5lbWl0KCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGlkPVwiaXRlcmF0b3JzXCIgY2xhc3M9XCJza3ktZmx5b3V0LWl0ZXJhdG9yc1wiPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJza3ktYnRuXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxuICAgICAgJ3NreXV4X2ZseW91dF9pdGVyYXRvcl9wcmV2aW91c19idXR0b24nIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgXCJcbiAgICBbZGlzYWJsZWRdPVwicHJldmlvdXNCdXR0b25EaXNhYmxlZFwiXG4gICAgW3NreVRoZW1lQ2xhc3NdPVwie1xuICAgICAgJ3NreS1idG4tZGVmYXVsdCBza3ktbWFyZ2luLWlubGluZS1jb21wYWN0JzogJ2RlZmF1bHQnLFxuICAgICAgJ3NreS1idG4taWNvbi1ib3JkZXJsZXNzIHNreS1tYXJnaW4taW5saW5lLXNtJzogJ21vZGVybidcbiAgICB9XCJcbiAgICAoY2xpY2spPVwib25JdGVyYXRvclByZXZpb3VzQ2xpY2soKVwiXG4gID5cbiAgICA8c2t5LWljb24gKnNreVRoZW1lSWY9XCInZGVmYXVsdCdcIiBpY29uPVwiY2hldnJvbi11cFwiPiA8L3NreS1pY29uPlxuICAgIDxza3ktaWNvblxuICAgICAgKnNreVRoZW1lSWY9XCInbW9kZXJuJ1wiXG4gICAgICBpY29uPVwiY2hldnJvbi11cFwiXG4gICAgICBpY29uVHlwZT1cInNreXV4XCJcbiAgICAgIHNpemU9XCJsZ1wiXG4gICAgPlxuICAgIDwvc2t5LWljb24+XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJza3ktYnRuXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidza3l1eF9mbHlvdXRfaXRlcmF0b3JfbmV4dF9idXR0b24nIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICBbZGlzYWJsZWRdPVwibmV4dEJ1dHRvbkRpc2FibGVkXCJcbiAgICBbc2t5VGhlbWVDbGFzc109XCJ7XG4gICAgICAnc2t5LWJ0bi1kZWZhdWx0IHNreS1tYXJnaW4taW5saW5lLWNvbXBhY3QnOiAnZGVmYXVsdCcsXG4gICAgICAnc2t5LWJ0bi1pY29uLWJvcmRlcmxlc3Mgc2t5LW1hcmdpbi1pbmxpbmUtc20nOiAnbW9kZXJuJ1xuICAgIH1cIlxuICAgIChjbGljayk9XCJvbkl0ZXJhdG9yTmV4dENsaWNrKClcIlxuICA+XG4gICAgPHNreS1pY29uICpza3lUaGVtZUlmPVwiJ2RlZmF1bHQnXCIgaWNvbj1cImNoZXZyb24tZG93blwiPiA8L3NreS1pY29uPlxuICAgIDxza3ktaWNvblxuICAgICAgKnNreVRoZW1lSWY9XCInbW9kZXJuJ1wiXG4gICAgICBpY29uPVwiY2hldnJvbi1kb3duXCJcbiAgICAgIGljb25UeXBlPVwic2t5dXhcIlxuICAgICAgc2l6ZT1cImxnXCJcbiAgICA+XG4gICAgPC9za3ktaWNvbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -63,9 +63,9 @@ export class SkyFlyoutMediaQueryService {
|
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
_SkyFlyoutMediaQueryService_currentSubject = new WeakMap();
|
|
66
|
-
SkyFlyoutMediaQueryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
67
|
-
SkyFlyoutMediaQueryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.
|
|
68
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
66
|
+
SkyFlyoutMediaQueryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutMediaQueryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
67
|
+
SkyFlyoutMediaQueryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutMediaQueryService });
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutMediaQueryService, decorators: [{
|
|
69
69
|
type: Injectable
|
|
70
70
|
}], ctorParameters: function () { return []; } });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LW1lZGlhLXF1ZXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZmx5b3V0L3NyYy9saWIvbW9kdWxlcy9mbHlvdXQvZmx5b3V0LW1lZGlhLXF1ZXJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBeUIsTUFBTSxhQUFhLENBQUM7QUFFekUsT0FBTyxFQUFFLGFBQWEsRUFBZ0IsTUFBTSxNQUFNLENBQUM7O0FBRW5EOztHQUVHO0FBRUgsTUFBTSxPQUFPLDBCQUEwQjtJQUtyQztRQUZBLDZEQUFvRDtRQUdsRCx1QkFBQSxJQUFJLDhDQUFtQixJQUFJLGFBQWEsQ0FBc0IsQ0FBQyxDQUFDLE1BQUEsQ0FBQztJQUNuRSxDQUFDO0lBRU0sU0FBUyxDQUFDLFFBQStCO1FBQzlDLE9BQU8sdUJBQUEsSUFBSSxrREFBZ0IsQ0FBQyxTQUFTLENBQUM7WUFDcEMsSUFBSSxFQUFFLENBQUMsV0FBZ0MsRUFBRSxFQUFFO2dCQUN6QyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDeEIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxLQUFhO1FBQ3hDLElBQUksVUFBK0IsQ0FBQztRQUVwQyxJQUFJLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDL0QsVUFBVSxHQUFHLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztTQUNyQzthQUFNLElBQUksSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssRUFBRSxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUN0RSxVQUFVLEdBQUcsbUJBQW1CLENBQUMsRUFBRSxDQUFDO1NBQ3JDO2FBQU0sSUFBSSxJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxFQUFFLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ3RFLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7U0FDckM7YUFBTTtZQUNMLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7U0FDckM7UUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQztRQUMxQix1QkFBQSxJQUFJLGtEQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVNLHVCQUF1QixDQUM1QixLQUFhLEVBQ2IsVUFBK0I7UUFFL0IsTUFBTSxxQkFBcUIsR0FBRyxHQUFHLENBQUM7UUFDbEMsTUFBTSxxQkFBcUIsR0FBRyxHQUFHLENBQUM7UUFDbEMsTUFBTSxxQkFBcUIsR0FBRyxHQUFHLENBQUM7UUFDbEMsTUFBTSxxQkFBcUIsR0FBRyxHQUFHLENBQUM7UUFDbEMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUM7UUFDbkMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUM7UUFFbkMsUUFBUSxVQUFVLEVBQUU7WUFDbEIsS0FBSyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDM0IsT0FBTyxLQUFLLElBQUkscUJBQXFCLENBQUM7YUFDdkM7WUFDRCxLQUFLLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQixPQUFPLEtBQUssSUFBSSxxQkFBcUIsSUFBSSxLQUFLLElBQUkscUJBQXFCLENBQUM7YUFDekU7WUFDRCxLQUFLLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQixPQUFPLEtBQUssSUFBSSxxQkFBcUIsSUFBSSxLQUFLLElBQUkscUJBQXFCLENBQUM7YUFDekU7WUFDRCxPQUFPLENBQUMsQ0FBQztnQkFDUCxPQUFPLEtBQUssSUFBSSxxQkFBcUIsQ0FBQzthQUN2QztTQUNGO0lBQ0gsQ0FBQztJQUVNLE9BQU87UUFDWix1QkFBQSxJQUFJLGtEQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7Ozt3SEEvRFUsMEJBQTBCOzRIQUExQiwwQkFBMEI7NEZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreU1lZGlhQnJlYWtwb2ludHMsIFNreU1lZGlhUXVlcnlMaXN0ZW5lciB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lGbHlvdXRNZWRpYVF1ZXJ5U2VydmljZSB7XG4gIHB1YmxpYyBjdXJyZW50OiBTa3lNZWRpYUJyZWFrcG9pbnRzIHwgdW5kZWZpbmVkO1xuXG4gICNjdXJyZW50U3ViamVjdDogUmVwbGF5U3ViamVjdDxTa3lNZWRpYUJyZWFrcG9pbnRzPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLiNjdXJyZW50U3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PFNreU1lZGlhQnJlYWtwb2ludHM+KDEpO1xuICB9XG5cbiAgcHVibGljIHN1YnNjcmliZShsaXN0ZW5lcjogU2t5TWVkaWFRdWVyeUxpc3RlbmVyKTogU3Vic2NyaXB0aW9uIHtcbiAgICByZXR1cm4gdGhpcy4jY3VycmVudFN1YmplY3Quc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChicmVha3BvaW50czogU2t5TWVkaWFCcmVha3BvaW50cykgPT4ge1xuICAgICAgICBsaXN0ZW5lcihicmVha3BvaW50cyk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNldEJyZWFrcG9pbnRGb3JXaWR0aCh3aWR0aDogbnVtYmVyKTogdm9pZCB7XG4gICAgbGV0IGJyZWFrcG9pbnQ6IFNreU1lZGlhQnJlYWtwb2ludHM7XG5cbiAgICBpZiAodGhpcy5pc1dpZHRoV2l0aGluQnJlYWtwaW9udCh3aWR0aCwgU2t5TWVkaWFCcmVha3BvaW50cy54cykpIHtcbiAgICAgIGJyZWFrcG9pbnQgPSBTa3lNZWRpYUJyZWFrcG9pbnRzLnhzO1xuICAgIH0gZWxzZSBpZiAodGhpcy5pc1dpZHRoV2l0aGluQnJlYWtwaW9udCh3aWR0aCwgU2t5TWVkaWFCcmVha3BvaW50cy5zbSkpIHtcbiAgICAgIGJyZWFrcG9pbnQgPSBTa3lNZWRpYUJyZWFrcG9pbnRzLnNtO1xuICAgIH0gZWxzZSBpZiAodGhpcy5pc1dpZHRoV2l0aGluQnJlYWtwaW9udCh3aWR0aCwgU2t5TWVkaWFCcmVha3BvaW50cy5tZCkpIHtcbiAgICAgIGJyZWFrcG9pbnQgPSBTa3lNZWRpYUJyZWFrcG9pbnRzLm1kO1xuICAgIH0gZWxzZSB7XG4gICAgICBicmVha3BvaW50ID0gU2t5TWVkaWFCcmVha3BvaW50cy5sZztcbiAgICB9XG5cbiAgICB0aGlzLmN1cnJlbnQgPSBicmVha3BvaW50O1xuICAgIHRoaXMuI2N1cnJlbnRTdWJqZWN0Lm5leHQodGhpcy5jdXJyZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBpc1dpZHRoV2l0aGluQnJlYWtwaW9udChcbiAgICB3aWR0aDogbnVtYmVyLFxuICAgIGJyZWFrcG9pbnQ6IFNreU1lZGlhQnJlYWtwb2ludHNcbiAgKTogYm9vbGVhbiB7XG4gICAgY29uc3QgeHNCcmVha3BvaW50TWF4UGl4ZWxzID0gNzY3O1xuICAgIGNvbnN0IHNtQnJlYWtwb2ludE1pblBpeGVscyA9IDc2ODtcbiAgICBjb25zdCBzbUJyZWFrcG9pbnRNYXhQaXhlbHMgPSA5OTE7XG4gICAgY29uc3QgbWRCcmVha3BvaW50TWluUGl4ZWxzID0gOTkyO1xuICAgIGNvbnN0IG1kQnJlYWtwb2ludE1heFBpeGVscyA9IDExOTk7XG4gICAgY29uc3QgbGdCcmVha3BvaW50TWluUGl4ZWxzID0gMTIwMDtcblxuICAgIHN3aXRjaCAoYnJlYWtwb2ludCkge1xuICAgICAgY2FzZSBTa3lNZWRpYUJyZWFrcG9pbnRzLnhzOiB7XG4gICAgICAgIHJldHVybiB3aWR0aCA8PSB4c0JyZWFrcG9pbnRNYXhQaXhlbHM7XG4gICAgICB9XG4gICAgICBjYXNlIFNreU1lZGlhQnJlYWtwb2ludHMuc206IHtcbiAgICAgICAgcmV0dXJuIHdpZHRoID49IHNtQnJlYWtwb2ludE1pblBpeGVscyAmJiB3aWR0aCA8PSBzbUJyZWFrcG9pbnRNYXhQaXhlbHM7XG4gICAgICB9XG4gICAgICBjYXNlIFNreU1lZGlhQnJlYWtwb2ludHMubWQ6IHtcbiAgICAgICAgcmV0dXJuIHdpZHRoID49IG1kQnJlYWtwb2ludE1pblBpeGVscyAmJiB3aWR0aCA8PSBtZEJyZWFrcG9pbnRNYXhQaXhlbHM7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIHJldHVybiB3aWR0aCA+PSBsZ0JyZWFrcG9pbnRNaW5QaXhlbHM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jY3VycmVudFN1YmplY3QuY29tcGxldGUoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
var _SkyFlyoutComponent_instances, _SkyFlyoutComponent_xCoord, _SkyFlyoutComponent_windowBufferSize, _SkyFlyoutComponent_flyoutInstance, _SkyFlyoutComponent_ngUnsubscribe, _SkyFlyoutComponent__messageStream, _SkyFlyoutComponent_adapter, _SkyFlyoutComponent_changeDetector, _SkyFlyoutComponent_injector, _SkyFlyoutComponent_resolver, _SkyFlyoutComponent_resourcesService, _SkyFlyoutComponent_flyoutMediaQueryService, _SkyFlyoutComponent_elementRef, _SkyFlyoutComponent_uiConfigService, _SkyFlyoutComponent_ngZone, _SkyFlyoutComponent_createFlyoutInstance, _SkyFlyoutComponent_handleIncomingMessages, _SkyFlyoutComponent_notifyClosed, _SkyFlyoutComponent_cleanTemplate, _SkyFlyoutComponent_updateBreakpointAndResponsiveClass, _SkyFlyoutComponent_setFullscreen, _SkyFlyoutComponent_setUserData, _SkyFlyoutComponent_checkInitialSize, _SkyFlyoutComponent_getString, _SkyFlyoutComponent_handleResizeKeyDown, _SkyFlyoutComponent_executeOnStable, _SkyFlyoutComponent_initFocusTrap;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
3
|
import { animate, state, style, transition, trigger, } from '@angular/animations';
|
|
4
|
-
import { ChangeDetectionStrategy,
|
|
5
|
-
import { SkyMediaBreakpoints, SkyMediaQueryService,
|
|
6
|
-
import { SkyLibResourcesService } from '@skyux/i18n';
|
|
4
|
+
import { ChangeDetectionStrategy, Component, ElementRef, HostListener, Injector, ViewChild, ViewContainerRef, } from '@angular/core';
|
|
5
|
+
import { SkyMediaBreakpoints, SkyMediaQueryService, } from '@skyux/core';
|
|
7
6
|
import { Subject, fromEvent } from 'rxjs';
|
|
8
7
|
import { take, takeUntil, takeWhile } from 'rxjs/operators';
|
|
9
8
|
import { SkyFlyoutAdapterService } from './flyout-adapter.service';
|
|
@@ -446,8 +445,8 @@ _SkyFlyoutComponent_xCoord = new WeakMap(), _SkyFlyoutComponent_windowBufferSize
|
|
|
446
445
|
this.enableTrapFocus = true;
|
|
447
446
|
});
|
|
448
447
|
};
|
|
449
|
-
SkyFlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
450
|
-
SkyFlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.
|
|
448
|
+
SkyFlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutComponent, deps: [{ token: i1.SkyFlyoutAdapterService }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i0.ComponentFactoryResolver }, { token: i2.SkyLibResourcesService }, { token: i3.SkyFlyoutMediaQueryService }, { token: i0.ElementRef }, { token: i4.SkyUIConfigService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
449
|
+
SkyFlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.11", type: SkyFlyoutComponent, selector: "sky-flyout", host: { listeners: { "window:resize": "onWindowResize($event)" } }, providers: [
|
|
451
450
|
SkyFlyoutAdapterService,
|
|
452
451
|
SkyFlyoutMediaQueryService,
|
|
453
452
|
{ provide: SkyMediaQueryService, useExisting: SkyFlyoutMediaQueryService },
|
|
@@ -462,7 +461,7 @@ SkyFlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
|
|
|
462
461
|
transition(`* <=> *`, animate('250ms ease-in')),
|
|
463
462
|
]),
|
|
464
463
|
], changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
465
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
464
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutComponent, decorators: [{
|
|
466
465
|
type: Component,
|
|
467
466
|
args: [{ selector: 'sky-flyout', providers: [
|
|
468
467
|
SkyFlyoutAdapterService,
|
|
@@ -501,4 +500,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
501
500
|
type: HostListener,
|
|
502
501
|
args: ['window:resize', ['$event']]
|
|
503
502
|
}] } });
|
|
504
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mbHlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZseW91dC9mbHlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2ZseW91dC9zcmMvbGliL21vZHVsZXMvZmx5b3V0L2ZseW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFFTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxHQUNSLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULHdCQUF3QixFQUN4QixVQUFVLEVBQ1YsWUFBWSxFQUNaLFFBQVEsRUFDUixNQUFNLEVBSU4sU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixrQkFBa0IsR0FDbkIsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXJELE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTVELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFN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YUFHWDt3QkFDVCx1QkFBdUI7d0JBQ3ZCLDBCQUEwQjt3QkFDMUIsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLDBCQUEwQixFQUFFO3FCQUMzRSxjQUNXO3dCQUNWLE9BQU8sQ0FBQyxhQUFhLEVBQUU7NEJBQ3JCLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQzs0QkFDekQsS0FBSyxDQUFDLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7NEJBQ3BFLFVBQVUsQ0FBQyxXQUFXLEVBQUU7Z0NBQ3RCLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDO2dDQUN4QyxPQUFPLENBQUMsR0FBRyxDQUFDOzZCQUNiLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7eUJBQ2hELENBQUM7cUJBQ0gsbUJBRWdCLHVCQUF1QixDQUFDLE9BQU87eVdBaUR6QyxTQUFTO3NCQUpmLFNBQVM7dUJBQUMsV0FBVyxFQUFFO3dCQUN0QixJQUFJLEVBQUUsVUFBVTt3QkFDaEIsTUFBTSxFQUFFLElBQUk7cUJBQ2I7Z0JBT00sTUFBTTtzQkFKWixTQUFTO3VCQUFDLFFBQVEsRUFBRTt3QkFDbkIsSUFBSSxFQUFFLGdCQUFnQjt3QkFDdEIsTUFBTSxFQUFFLElBQUk7cUJBQ2I7Z0JBT00sWUFBWTtzQkFKbEIsU0FBUzt1QkFBQyxjQUFjLEVBQUU7d0JBQ3pCLElBQUksRUFBRSxVQUFVO3dCQUNoQixNQUFNLEVBQUUsSUFBSTtxQkFDYjtnQkE2RE0sY0FBYztzQkFEcEIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBbmltYXRpb25FdmVudCxcbiAgYW5pbWF0ZSxcbiAgc3RhdGUsXG4gIHN0eWxlLFxuICB0cmFuc2l0aW9uLFxuICB0cmlnZ2VyLFxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0b3IsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFR5cGUsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTa3lNZWRpYUJyZWFrcG9pbnRzLFxuICBTa3lNZWRpYVF1ZXJ5U2VydmljZSxcbiAgU2t5VUlDb25maWdTZXJ2aWNlLFxufSBmcm9tICdAc2t5dXgvY29yZSc7XG5pbXBvcnQgeyBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQgeyBTdWJqZWN0LCBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCwgdGFrZVdoaWxlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lGbHlvdXRBZGFwdGVyU2VydmljZSB9IGZyb20gJy4vZmx5b3V0LWFkYXB0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lGbHlvdXRJbnN0YW5jZSB9IGZyb20gJy4vZmx5b3V0LWluc3RhbmNlJztcbmltcG9ydCB7IFNreUZseW91dE1lZGlhUXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi9mbHlvdXQtbWVkaWEtcXVlcnkuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lGbHlvdXRBY3Rpb24gfSBmcm9tICcuL3R5cGVzL2ZseW91dC1hY3Rpb24nO1xuaW1wb3J0IHsgU2t5Rmx5b3V0QmVmb3JlQ2xvc2VIYW5kbGVyIH0gZnJvbSAnLi90eXBlcy9mbHlvdXQtYmVmb3JlLWNsb3NlLWhhbmRsZXInO1xuaW1wb3J0IHsgU2t5Rmx5b3V0Q29uZmlnIH0gZnJvbSAnLi90eXBlcy9mbHlvdXQtY29uZmlnJztcbmltcG9ydCB7IFNreUZseW91dENvbmZpZ0ludGVybmFsIH0gZnJvbSAnLi90eXBlcy9mbHlvdXQtY29uZmlnLWludGVybmFsJztcbmltcG9ydCB7IFNreUZseW91dE1lc3NhZ2UgfSBmcm9tICcuL3R5cGVzL2ZseW91dC1tZXNzYWdlJztcbmltcG9ydCB7IFNreUZseW91dE1lc3NhZ2VUeXBlIH0gZnJvbSAnLi90eXBlcy9mbHlvdXQtbWVzc2FnZS10eXBlJztcbmltcG9ydCB7IFNreUZseW91dFBlcm1hbGluayB9IGZyb20gJy4vdHlwZXMvZmx5b3V0LXBlcm1hbGluayc7XG5cbmNvbnN0IEZMWU9VVF9PUEVOX1NUQVRFID0gJ2ZseW91dE9wZW4nO1xuY29uc3QgRkxZT1VUX0NMT1NFRF9TVEFURSA9ICdmbHlvdXRDbG9zZWQnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWZseW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mbHlvdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mbHlvdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgU2t5Rmx5b3V0QWRhcHRlclNlcnZpY2UsXG4gICAgU2t5Rmx5b3V0TWVkaWFRdWVyeVNlcnZpY2UsXG4gICAgeyBwcm92aWRlOiBTa3lNZWRpYVF1ZXJ5U2VydmljZSwgdXNlRXhpc3Rpbmc6IFNreUZseW91dE1lZGlhUXVlcnlTZXJ2aWNlIH0sXG4gIF0sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdmbHlvdXRTdGF0ZScsIFtcbiAgICAgIHN0YXRlKEZMWU9VVF9PUEVOX1NUQVRFLCBzdHlsZSh7IHRyYW5zZm9ybTogJ2luaXRpYWwnIH0pKSxcbiAgICAgIHN0YXRlKEZMWU9VVF9DTE9TRURfU1RBVEUsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSkpLFxuICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiAqJywgW1xuICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMTAwJSknIH0pLFxuICAgICAgICBhbmltYXRlKDI1MCksXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oYCogPD0+ICpgLCBhbmltYXRlKCcyNTBtcyBlYXNlLWluJykpLFxuICAgIF0pLFxuICBdLFxuICAvLyBBbGxvdyBhdXRvbWF0aWMgY2hhbmdlIGRldGVjdGlvbiBmb3IgY2hpbGQgY29tcG9uZW50cy5cbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxufSlcbmV4cG9ydCBjbGFzcyBTa3lGbHlvdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCB7XG4gIHB1YmxpYyBjb25maWc6IFNreUZseW91dENvbmZpZ0ludGVybmFsID0ge1xuICAgIGRlZmF1bHRXaWR0aDogd2luZG93LmlubmVyV2lkdGggLyAyLFxuICAgIG1pbldpZHRoOiAzMjAsXG4gICAgbWF4V2lkdGg6IHdpbmRvdy5pbm5lcldpZHRoIC8gMixcbiAgICBwcm92aWRlcnM6IFtdLFxuICB9O1xuICBwdWJsaWMgZW5hYmxlVHJhcEZvY3VzID0gZmFsc2U7XG4gIHB1YmxpYyBlbmFibGVUcmFwRm9jdXNBdXRvQ2FwdHVyZSA9IGZhbHNlO1xuICBwdWJsaWMgZmx5b3V0SWQgPSBgc2t5LWZseW91dC0keysrbmV4dElkfWA7XG4gIHB1YmxpYyBmbHlvdXRTdGF0ZSA9IEZMWU9VVF9DTE9TRURfU1RBVEU7XG4gIHB1YmxpYyBpc09wZW4gPSBmYWxzZTtcbiAgcHVibGljIGlzT3BlbmluZyA9IGZhbHNlO1xuXG4gIHB1YmxpYyBmbHlvdXRXaWR0aCA9IDA7XG4gIHB1YmxpYyBpbnN0YW5jZVJlYWR5ID0gZmFsc2U7XG4gIHB1YmxpYyBpc0RyYWdnaW5nID0gZmFsc2U7XG4gIHB1YmxpYyBpc0Z1bGxzY3JlZW4gPSBmYWxzZTtcbiAgcHVibGljIHJlc2l6ZUtleUNvbnRyb2xBY3RpdmUgPSBmYWxzZTtcblxuICAjeENvb3JkID0gMDtcbiAgI3dpbmRvd0J1ZmZlclNpemUgPSAyMDtcblxuICBwdWJsaWMgZ2V0IG1lc3NhZ2VTdHJlYW0oKTogU3ViamVjdDxTa3lGbHlvdXRNZXNzYWdlPiB7XG4gICAgcmV0dXJuIHRoaXMuI19tZXNzYWdlU3RyZWFtO1xuICB9XG5cbiAgcHVibGljIHBlcm1hbGluazogU2t5Rmx5b3V0UGVybWFsaW5rID0ge307XG5cbiAgcHVibGljIHBlcm1hbGlua0xhYmVsID0gJyc7XG5cbiAgcHVibGljIHByaW1hcnlBY3Rpb246IFNreUZseW91dEFjdGlvbiA9IHt9O1xuXG4gIHB1YmxpYyBwcmltYXJ5QWN0aW9uTGFiZWwgPSAnJztcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgd2lkdGhTdGVwID0gMTA7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgQFZpZXdDaGlsZCgnZmx5b3V0UmVmJywge1xuICAgIHJlYWQ6IEVsZW1lbnRSZWYsXG4gICAgc3RhdGljOiB0cnVlLFxuICB9KVxuICBwdWJsaWMgZmx5b3V0UmVmOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gIEBWaWV3Q2hpbGQoJ3RhcmdldCcsIHtcbiAgICByZWFkOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSlcbiAgcHVibGljIHRhcmdldDogVmlld0NvbnRhaW5lclJlZiB8IHVuZGVmaW5lZDtcblxuICBAVmlld0NoaWxkKCdmbHlvdXRIZWFkZXInLCB7XG4gICAgcmVhZDogRWxlbWVudFJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHB1YmxpYyBmbHlvdXRIZWFkZXI6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgI2ZseW91dEluc3RhbmNlOiBTa3lGbHlvdXRJbnN0YW5jZTxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjX21lc3NhZ2VTdHJlYW0gPSBuZXcgU3ViamVjdDxTa3lGbHlvdXRNZXNzYWdlPigpO1xuXG4gICNhZGFwdGVyOiBTa3lGbHlvdXRBZGFwdGVyU2VydmljZTtcbiAgI2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgI2luamVjdG9yOiBJbmplY3RvcjtcbiAgI3Jlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI7XG4gICNyZXNvdXJjZXNTZXJ2aWNlOiBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlO1xuICAjZmx5b3V0TWVkaWFRdWVyeVNlcnZpY2U6IFNreUZseW91dE1lZGlhUXVlcnlTZXJ2aWNlO1xuICAjZWxlbWVudFJlZjogRWxlbWVudFJlZjtcbiAgI3VpQ29uZmlnU2VydmljZTogU2t5VUlDb25maWdTZXJ2aWNlO1xuICAjbmdab25lOiBOZ1pvbmU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgYWRhcHRlcjogU2t5Rmx5b3V0QWRhcHRlclNlcnZpY2UsXG4gICAgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHJlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2UsXG4gICAgZmx5b3V0TWVkaWFRdWVyeVNlcnZpY2U6IFNreUZseW91dE1lZGlhUXVlcnlTZXJ2aWNlLFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgdWlDb25maWdTZXJ2aWNlOiBTa3lVSUNvbmZpZ1NlcnZpY2UsXG4gICAgbmdab25lOiBOZ1pvbmVcbiAgKSB7XG4gICAgdGhpcy4jYWRhcHRlciA9IGFkYXB0ZXI7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IgPSBjaGFuZ2VEZXRlY3RvcjtcbiAgICB0aGlzLiNpbmplY3RvciA9IGluamVjdG9yO1xuICAgIHRoaXMuI3Jlc29sdmVyID0gcmVzb2x2ZXI7XG4gICAgdGhpcy4jcmVzb3VyY2VzU2VydmljZSA9IHJlc291cmNlc1NlcnZpY2U7XG4gICAgdGhpcy4jZmx5b3V0TWVkaWFRdWVyeVNlcnZpY2UgPSBmbHlvdXRNZWRpYVF1ZXJ5U2VydmljZTtcbiAgICB0aGlzLiNlbGVtZW50UmVmID0gZWxlbWVudFJlZjtcbiAgICB0aGlzLiN1aUNvbmZpZ1NlcnZpY2UgPSB1aUNvbmZpZ1NlcnZpY2U7XG4gICAgdGhpcy4jbmdab25lID0gbmdab25lO1xuXG4gICAgLy8gQWxsIGNvbW1hbmRzIGZsb3cgdGhyb3VnaCB0aGUgbWVzc2FnZSBzdHJlYW0uXG4gICAgdGhpcy5tZXNzYWdlU3RyZWFtXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lGbHlvdXRNZXNzYWdlKSA9PiB7XG4gICAgICAgIHRoaXMuI2hhbmRsZUluY29taW5nTWVzc2FnZXMobWVzc2FnZSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLmZseW91dEhlYWRlcikge1xuICAgICAgdGhpcy4jYWRhcHRlci5hZGp1c3RIZWFkZXJGb3JIZWxwKHRoaXMuZmx5b3V0SGVhZGVyKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd1Jlc2l6ZShldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgdGhpcy4jZmx5b3V0TWVkaWFRdWVyeVNlcnZpY2UuaXNXaWR0aFdpdGhpbkJyZWFrcGlvbnQoXG4gICAgICAgIGV2ZW50LnRhcmdldC5pbm5lcldpZHRoLFxuICAgICAgICBTa3lNZWRpYUJyZWFrcG9pbnRzLnhzXG4gICAgICApXG4gICAgKSB7XG4gICAgICB0aGlzLiN1cGRhdGVCcmVha3BvaW50QW5kUmVzcG9uc2l2ZUNsYXNzKGV2ZW50LnRhcmdldC5pbm5lcldpZHRoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jdXBkYXRlQnJlYWtwb2ludEFuZFJlc3BvbnNpdmVDbGFzcyh0aGlzLmZseW91dFdpZHRoKTtcbiAgICB9XG5cbiAgICB0aGlzLiNzZXRGdWxsc2NyZWVuKCk7XG5cbiAgICBpZiAoZXZlbnQudGFyZ2V0LmlubmVyV2lkdGggLSB0aGlzLmZseW91dFdpZHRoIDwgdGhpcy4jd2luZG93QnVmZmVyU2l6ZSkge1xuICAgICAgdGhpcy5mbHlvdXRXaWR0aCA9IGV2ZW50LnRhcmdldC5pbm5lcldpZHRoIC0gdGhpcy4jd2luZG93QnVmZmVyU2l6ZTtcbiAgICAgIHRoaXMuI3hDb29yZCA9IHRoaXMuI3dpbmRvd0J1ZmZlclNpemU7XG4gICAgICB0aGlzLiNzZXRVc2VyRGF0YSgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhdHRhY2g8VD4oXG4gICAgY29tcG9uZW50OiBUeXBlPFQ+LFxuICAgIGNvbmZpZz86IFNreUZseW91dENvbmZpZ1xuICApOiBTa3lGbHlvdXRJbnN0YW5jZTxUPiB7XG4gICAgdGhpcy4jY2xlYW5UZW1wbGF0ZSgpO1xuXG4gICAgLy8gRW1pdCB0aGUgY2xvc2VkIGV2ZW50IG9uIGFueSBwcmV2aW91c2x5IG9wZW5lZCBmbHlvdXQgaW5zdGFuY2VcbiAgICBpZiAodGhpcy4jZmx5b3V0SW5zdGFuY2UpIHtcbiAgICAgIHRoaXMuI25vdGlmeUNsb3NlZCgpO1xuICAgIH1cblxuICAgIHRoaXMuY29uZmlnID0gT2JqZWN0LmFzc2lnbihcbiAgICAgIHtcbiAgICAgICAgZGVmYXVsdFdpZHRoOiB3aW5kb3cuaW5uZXJXaWR0aCAvIDIsXG4gICAgICAgIG1pbldpZHRoOiAzMjAsXG4gICAgICAgIG1heFdpZHRoOiB3aW5kb3cuaW5uZXJXaWR0aCAvIDIsXG4gICAgICAgIHByb3ZpZGVyczogW10sXG4gICAgICB9LFxuICAgICAgY29uZmlnXG4gICAgKTtcbiAgICBpZiAoY29uZmlnPy5kZWZhdWx0V2lkdGggJiYgIWNvbmZpZz8ubWF4V2lkdGgpIHtcbiAgICAgIHRoaXMuY29uZmlnLm1heFdpZHRoID0gY29uZmlnPy5kZWZhdWx0V2lkdGg7XG4gICAgfVxuXG4gICAgdGhpcy5jb25maWcuc2hvd0l0ZXJhdG9yID0gdGhpcy5jb25maWcuc2hvd0l0ZXJhdG9yIHx8IGZhbHNlO1xuICAgIHRoaXMuY29uZmlnLml0ZXJhdG9yTmV4dEJ1dHRvbkRpc2FibGVkID1cbiAgICAgIHRoaXMuY29uZmlnLml0ZXJhdG9yTmV4dEJ1dHRvbkRpc2FibGVkIHx8IGZhbHNlO1xuICAgIHRoaXMuY29uZmlnLml0ZXJhdG9yUHJldmlvdXNCdXR0b25EaXNhYmxlZCA9XG4gICAgICB0aGlzLmNvbmZpZy5pdGVyYXRvclByZXZpb3VzQnV0dG9uRGlzYWJsZWQgfHwgZmFsc2U7XG5cbiAgICB0aGlzLnBlcm1hbGluayA9IHRoaXMuY29uZmlnLnBlcm1hbGluayA/PyB7fTtcbiAgICB0aGlzLnBlcm1hbGlua0xhYmVsID1cbiAgICAgIHRoaXMuY29uZmlnLnBlcm1hbGluayAmJiB0aGlzLmNvbmZpZy5wZXJtYWxpbmsubGFiZWxcbiAgICAgICAgPyB0aGlzLmNvbmZpZy5wZXJtYWxpbmsubGFiZWxcbiAgICAgICAgOiB0aGlzLiNnZXRTdHJpbmcoJ3NreXV4X2ZseW91dF9wZXJtYWxpbmtfYnV0dG9uJyk7XG5cbiAgICB0aGlzLnByaW1hcnlBY3Rpb24gPSB0aGlzLmNvbmZpZy5wcmltYXJ5QWN0aW9uID8/IHt9O1xuICAgIHRoaXMucHJpbWFyeUFjdGlvbkxhYmVsID1cbiAgICAgIHRoaXMuY29uZmlnLnByaW1hcnlBY3Rpb24gJiYgdGhpcy5jb25maWcucHJpbWFyeUFjdGlvbi5sYWJlbFxuICAgICAgICA/IHRoaXMuY29uZmlnLnByaW1hcnlBY3Rpb24ubGFiZWxcbiAgICAgICAgOiB0aGlzLiNnZXRTdHJpbmcoJ3NreXV4X2ZseW91dF9wcmltYXJ5X2FjdGlvbl9idXR0b24nKTtcblxuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLiNyZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShjb21wb25lbnQpO1xuXG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB0aGlzLiNpbmplY3RvcixcbiAgICAgIHByb3ZpZGVyczogdGhpcy5jb25maWcucHJvdmlkZXJzLFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy50YXJnZXQ/LmNyZWF0ZUNvbXBvbmVudChcbiAgICAgIGZhY3RvcnksXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBpbmplY3RvclxuICAgICk7XG5cbiAgICAvKiBzYWZldHkgY2hlY2sgKi9cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIWNvbXBvbmVudFJlZikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRmx5b3V0J3MgaW50ZXJuYWwgY29tcG9uZW50IGNvdWxkIG5vdCBiZSBjcmVhdGVkXCIpO1xuICAgIH1cblxuICAgIHRoaXMuI2ZseW91dEluc3RhbmNlID0gdGhpcy4jY3JlYXRlRmx5b3V0SW5zdGFuY2U8VD4oY29tcG9uZW50UmVmLmluc3RhbmNlKTtcblxuICAgIC8vIFRoaXMgaXMgdXNlZCB0byBlbnN1cmUgd2UgZG8gbm90IHJlbmRlciB0aGUgZmx5b3V0IHVudGlsIHdlIGhhdmUgYXR0YWNoZWQgdGhlIGNvbXBvbmVudC5cbiAgICAvLyBUaGlzIGFsbG93cyB0aGUgYXJpYS1sYWJlbGxlZGJ5IHRvIGZ1bmN0aW9uIGNvcnJlY3RseS5cbiAgICB0aGlzLmluc3RhbmNlUmVhZHkgPSB0cnVlO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgLy8gT3BlbiB0aGUgZmx5b3V0IGltbWVkaWF0ZWx5LlxuICAgIHRoaXMubWVzc2FnZVN0cmVhbS5uZXh0KHtcbiAgICAgIHR5cGU6IFNreUZseW91dE1lc3NhZ2VUeXBlLk9wZW4sXG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5jb25maWcuc2V0dGluZ3NLZXkpIHtcbiAgICAgIHRoaXMuI3VpQ29uZmlnU2VydmljZVxuICAgICAgICAuZ2V0Q29uZmlnKHRoaXMuY29uZmlnLnNldHRpbmdzS2V5KVxuICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKHZhbHVlICYmIHZhbHVlLmZseW91dFdpZHRoKSB7XG4gICAgICAgICAgICB0aGlzLmZseW91dFdpZHRoID0gdmFsdWUuZmx5b3V0V2lkdGg7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEJhZCBkYXRhLCBvciBjb25maWcgaXMgdGhlIGRlZmF1bHQgY29uZmlnLlxuICAgICAgICAgICAgdGhpcy5mbHlvdXRXaWR0aCA9IHRoaXMuY29uZmlnLmRlZmF1bHRXaWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy4jY2hlY2tJbml0aWFsU2l6ZSgpO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mbHlvdXRXaWR0aCA9IHRoaXMuY29uZmlnLmRlZmF1bHRXaWR0aDtcbiAgICAgIHRoaXMuI2NoZWNrSW5pdGlhbFNpemUoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy4jZmx5b3V0SW5zdGFuY2U7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlU3RyZWFtLm5leHQoe1xuICAgICAgdHlwZTogU2t5Rmx5b3V0TWVzc2FnZVR5cGUuQ2xvc2UsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgaW52b2tlUHJpbWFyeUFjdGlvbigpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5wcmltYXJ5QWN0aW9uLmNhbGxiYWNrKSB7XG4gICAgICB0aGlzLnByaW1hcnlBY3Rpb24uY2FsbGJhY2soKTtcblxuICAgICAgaWYgKHRoaXMucHJpbWFyeUFjdGlvbi5jbG9zZUFmdGVySW52b2tpbmcpIHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0QW5pbWF0aW9uU3RhdGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pbnN0YW5jZVJlYWR5ICYmIHRoaXMuaXNPcGVuaW5nXG4gICAgICA/IEZMWU9VVF9PUEVOX1NUQVRFXG4gICAgICA6IEZMWU9VVF9DTE9TRURfU1RBVEU7XG4gIH1cblxuICBwdWJsaWMgYW5pbWF0aW9uRG9uZShldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQudG9TdGF0ZSA9PT0gRkxZT1VUX09QRU5fU1RBVEUpIHtcbiAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoZXZlbnQudG9TdGF0ZSA9PT0gRkxZT1VUX0NMT1NFRF9TVEFURSkge1xuICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICAgIHRoaXMuI25vdGlmeUNsb3NlZCgpO1xuICAgICAgdGhpcy4jY2xlYW5UZW1wbGF0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkhlYWRlckdyYWJIYW5kbGVNb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLm9uUmVzaXplSGFuZGxlTW91c2VEb3duKGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkhlYWRlckdyYWJIYW5kbGVLZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy4jaGFuZGxlUmVzaXplS2V5RG93bihldmVudCk7XG4gIH1cblxuICBwdWJsaWMgb25SZXNpemVIYW5kbGVLZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy4jaGFuZGxlUmVzaXplS2V5RG93bihldmVudCk7XG4gIH1cblxuICBwdWJsaWMgb25SZXNpemVIYW5kbGVNb3VzZURvd24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgaWYgKHRoaXMuaXNGdWxsc2NyZWVuKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pc0RyYWdnaW5nID0gdHJ1ZTtcbiAgICB0aGlzLiN4Q29vcmQgPSBldmVudC5jbGllbnRYO1xuXG4gICAgdGhpcy4jYWRhcHRlci50b2dnbGVJZnJhbWVQb2ludGVyRXZlbnRzKGZhbHNlKTtcblxuICAgIGZyb21FdmVudChkb2N1bWVudCwgJ21vdXNlbW92ZScpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5pc0RyYWdnaW5nO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgobW92ZUV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5vbk1vdXNlTW92ZShtb3ZlRXZlbnQpO1xuICAgICAgfSk7XG5cbiAgICBmcm9tRXZlbnQoZG9jdW1lbnQsICdtb3VzZXVwJylcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmlzRHJhZ2dpbmc7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChtb3VzZVVwRXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLm9uSGFuZGxlUmVsZWFzZShtb3VzZVVwRXZlbnQpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25Nb3VzZU1vdmUoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAvKiBTYW5pdHkgY2hlY2sgKi9cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIXRoaXMuaXNEcmFnZ2luZykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG9mZnNldFggPSBldmVudC5jbGllbnRYIC0gdGhpcy4jeENvb3JkO1xuICAgIGxldCB3aWR0aCA9IHRoaXMuZmx5b3V0V2lkdGg7XG5cbiAgICB3aWR0aCAtPSBvZmZzZXRYO1xuXG4gICAgaWYgKHdpZHRoIDwgdGhpcy5jb25maWcubWluV2lkdGggfHwgd2lkdGggPiB0aGlzLmNvbmZpZy5tYXhXaWR0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh3aW5kb3cuaW5uZXJXaWR0aCAtIHdpZHRoIDwgdGhpcy4jd2luZG93QnVmZmVyU2l6ZSkge1xuICAgICAgd2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCAtIHRoaXMuI3dpbmRvd0J1ZmZlclNpemU7XG4gICAgICB0aGlzLiN4Q29vcmQgPSB0aGlzLiN3aW5kb3dCdWZmZXJTaXplO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiN4Q29vcmQgPSBldmVudC5jbGllbnRYO1xuICAgIH1cblxuICAgIHRoaXMuZmx5b3V0V2lkdGggPSB3aWR0aDtcblxuICAgIHRoaXMuI3VwZGF0ZUJyZWFrcG9pbnRBbmRSZXNwb25zaXZlQ2xhc3ModGhpcy5mbHlvdXRXaWR0aCk7XG5cbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkhhbmRsZVJlbGVhc2UoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBmcm9tRXZlbnQoZG9jdW1lbnQsICdjbGljaycpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNEcmFnZ2luZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLiNhZGFwdGVyLnRvZ2dsZUlmcmFtZVBvaW50ZXJFdmVudHModHJ1ZSk7XG4gICAgICAgIHRoaXMuI3NldFVzZXJEYXRhKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkl0ZXJhdG9yUHJldmlvdXNCdXR0b25DbGljaygpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLiNmbHlvdXRJbnN0YW5jZSkge1xuICAgICAgdGhpcy4jZmx5b3V0SW5zdGFuY2UuaXRlcmF0b3JQcmV2aW91c0J1dHRvbkNsaWNrLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25JdGVyYXRvck5leHRCdXR0b25DbGljaygpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLiNmbHlvdXRJbnN0YW5jZSkge1xuICAgICAgdGhpcy4jZmx5b3V0SW5zdGFuY2UuaXRlcmF0b3JOZXh0QnV0dG9uQ2xpY2suZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gICNjcmVhdGVGbHlvdXRJbnN0YW5jZTxUPihjb21wb25lbnQ6IFQpOiBTa3lGbHlvdXRJbnN0YW5jZTxUPiB7XG4gICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgU2t5Rmx5b3V0SW5zdGFuY2U8VD4oY29tcG9uZW50KTtcblxuICAgIGluc3RhbmNlLmhvc3RDb250cm9sbGVyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lGbHlvdXRNZXNzYWdlKSA9PiB7XG4gICAgICAgIHRoaXMubWVzc2FnZVN0cmVhbS5uZXh0KG1lc3NhZ2UpO1xuICAgICAgfSk7XG5cbiAgICByZXR1cm4gaW5zdGFuY2U7XG4gIH1cblxuICAjaGFuZGxlSW5jb21pbmdNZXNzYWdlcyhtZXNzYWdlOiBTa3lGbHlvdXRNZXNzYWdlKTogdm9pZCB7XG4gICAgc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcbiAgICAgIGNhc2UgU2t5Rmx5b3V0TWVzc2FnZVR5cGUuT3BlbjpcbiAgICAgICAgaWYgKCF0aGlzLmlzT3Blbikge1xuICAgICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5pc09wZW5pbmcgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuI2luaXRGb2N1c1RyYXAoKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5Rmx5b3V0TWVzc2FnZVR5cGUuQ2xvc2U6XG4gICAgICAgIGlmIChcbiAgICAgICAgICAodGhpcy4jZmx5b3V0SW5zdGFuY2U/LmJlZm9yZUNsb3NlIGFzIFN1YmplY3Q8YW55Pik/Lm9ic2VydmVyc1xuICAgICAgICAgICAgLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgICAgIG1lc3NhZ2UuZGF0YT8uaWdub3JlQmVmb3JlQ2xvc2VcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuICAgICAgICAgIHRoaXMuaXNPcGVuaW5nID0gZmFsc2U7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgKHRoaXMuI2ZseW91dEluc3RhbmNlPy5iZWZvcmVDbG9zZSBhcyBTdWJqZWN0PGFueT4pPy5uZXh0KFxuICAgICAgICAgICAgbmV3IFNreUZseW91dEJlZm9yZUNsb3NlSGFuZGxlcigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICAgICAgICAgICAgdGhpcy5pc09wZW5pbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTa3lGbHlvdXRNZXNzYWdlVHlwZS5FbmFibGVJdGVyYXRvck5leHRCdXR0b246XG4gICAgICAgIHRoaXMuY29uZmlnLml0ZXJhdG9yTmV4dEJ1dHRvbkRpc2FibGVkID0gZmFsc2U7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreUZseW91dE1lc3NhZ2VUeXBlLkVuYWJsZUl0ZXJhdG9yUHJldmlvdXNCdXR0b246XG4gICAgICAgIHRoaXMuY29uZmlnLml0ZXJhdG9yUHJldmlvdXNCdXR0b25EaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTa3lGbHlvdXRNZXNzYWdlVHlwZS5EaXNhYmxlSXRlcmF0b3JOZXh0QnV0dG9uOlxuICAgICAgICB0aGlzLmNvbmZpZy5pdGVyYXRvck5leHRCdXR0b25EaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreUZseW91dE1lc3NhZ2VUeXBlLkRpc2FibGVJdGVyYXRvclByZXZpb3VzQnV0dG9uOlxuICAgICAgICB0aGlzLmNvbmZpZy5pdGVyYXRvclByZXZpb3VzQnV0dG9uRGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gICNub3RpZnlDbG9zZWQoKTogdm9pZCB7XG4gICAgdGhpcy4jZmx5b3V0SW5zdGFuY2U/LmNsb3NlZC5lbWl0KCk7XG4gICAgdGhpcy4jZmx5b3V0SW5zdGFuY2U/LmNsb3NlZC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI2NsZWFuVGVtcGxhdGUoKTogdm9pZCB7XG4gICAgdGhpcy50YXJnZXQ/LmNsZWFyKCk7XG4gIH1cblxuICAjdXBkYXRlQnJlYWtwb2ludEFuZFJlc3BvbnNpdmVDbGFzcyh3aWR0aDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy4jZmx5b3V0TWVkaWFRdWVyeVNlcnZpY2Uuc2V0QnJlYWtwb2ludEZvcldpZHRoKHdpZHRoKTtcblxuICAgIGNvbnN0IG5ld0JyZWFrcGlvbnQgPSB0aGlzLiNmbHlvdXRNZWRpYVF1ZXJ5U2VydmljZS5jdXJyZW50O1xuXG4gICAgdGhpcy4jYWRhcHRlci5zZXRSZXNwb25zaXZlQ2xhc3ModGhpcy4jZWxlbWVudFJlZiwgbmV3QnJlYWtwaW9udCk7XG4gIH1cblxuICAjc2V0RnVsbHNjcmVlbigpOiB2b2lkIHtcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggLSB0aGlzLiN3aW5kb3dCdWZmZXJTaXplIDwgdGhpcy5jb25maWcubWluV2lkdGgpIHtcbiAgICAgIHRoaXMuaXNGdWxsc2NyZWVuID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pc0Z1bGxzY3JlZW4gPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAjc2V0VXNlckRhdGEoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY29uZmlnLnNldHRpbmdzS2V5KSB7XG4gICAgICB0aGlzLiN1aUNvbmZpZ1NlcnZpY2VcbiAgICAgICAgLnNldENvbmZpZyh0aGlzLmNvbmZpZy5zZXR0aW5nc0tleSwge1xuICAgICAgICAgIGZseW91dFdpZHRoOiB0aGlzLmZseW91dFdpZHRoLFxuICAgICAgICB9KVxuICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgICAgICAgICAoKSA9PiB7fSxcbiAgICAgICAgICAoZXJyKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0NvdWxkIG5vdCBzYXZlIGZseW91dCBkYXRhLicpO1xuICAgICAgICAgICAgY29uc29sZS53YXJuKGVycik7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cbiAgfVxuXG4gICNjaGVja0luaXRpYWxTaXplKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZseW91dFdpZHRoIDwgdGhpcy5jb25maWcubWluV2lkdGgpIHtcbiAgICAgIHRoaXMuZmx5b3V0V2lkdGggPSB0aGlzLmNvbmZpZy5taW5XaWR0aDtcbiAgICAgIHRoaXMuI3NldFVzZXJEYXRhKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmZseW91dFdpZHRoID4gdGhpcy5jb25maWcubWF4V2lkdGgpIHtcbiAgICAgIHRoaXMuZmx5b3V0V2lkdGggPSB0aGlzLmNvbmZpZy5tYXhXaWR0aDtcbiAgICAgIHRoaXMuI3NldFVzZXJEYXRhKCk7XG4gICAgfVxuXG4gICAgLy8gRW5zdXJlIGZseW91dCBkb2VzIG5vdCBsb2FkIGxhcmdlciB0aGFuIHRoZSB3aW5kb3cgYW5kIGl0cyBidWZmZXJcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggLSB0aGlzLmZseW91dFdpZHRoIDwgdGhpcy4jd2luZG93QnVmZmVyU2l6ZSkge1xuICAgICAgdGhpcy5mbHlvdXRXaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoIC0gdGhpcy4jd2luZG93QnVmZmVyU2l6ZTtcbiAgICAgIHRoaXMuI3hDb29yZCA9IHRoaXMuI3dpbmRvd0J1ZmZlclNpemU7XG4gICAgICB0aGlzLiNzZXRVc2VyRGF0YSgpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHRoaXMuI2ZseW91dE1lZGlhUXVlcnlTZXJ2aWNlLmlzV2lkdGhXaXRoaW5CcmVha3Bpb250KFxuICAgICAgICB3aW5kb3cuaW5uZXJXaWR0aCxcbiAgICAgICAgU2t5TWVkaWFCcmVha3BvaW50cy54c1xuICAgICAgKVxuICAgICkge1xuICAgICAgdGhpcy4jdXBkYXRlQnJlYWtwb2ludEFuZFJlc3BvbnNpdmVDbGFzcyh3aW5kb3cuaW5uZXJXaWR0aCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI3VwZGF0ZUJyZWFrcG9pbnRBbmRSZXNwb25zaXZlQ2xhc3ModGhpcy5mbHlvdXRXaWR0aCk7XG4gICAgfVxuXG4gICAgdGhpcy4jc2V0RnVsbHNjcmVlbigpO1xuICB9XG5cbiAgI2dldFN0cmluZyhrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgLy8gVE9ETzogTmVlZCB0byBpbXBsZW1lbnQgdGhlIGFzeW5jIGBnZXRTdHJpbmdgIG1ldGhvZCBpbiBhIGJyZWFraW5nIGNoYW5nZS5cbiAgICByZXR1cm4gdGhpcy4jcmVzb3VyY2VzU2VydmljZS5nZXRTdHJpbmdGb3JMb2NhbGUoeyBsb2NhbGU6ICdlbi1VUycgfSwga2V5KTtcbiAgfVxuXG4gICNoYW5kbGVSZXNpemVLZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoZXZlbnQua2V5KSB7XG4gICAgICBjb25zdCBrZXlQcmVzc2VkID0gZXZlbnQua2V5LnRvTG93ZXJDYXNlKCkucmVwbGFjZSgnYXJyb3cnLCAnJyk7XG4gICAgICBzd2l0Y2ggKGtleVByZXNzZWQpIHtcbiAgICAgICAgY2FzZSAnZW50ZXInOlxuICAgICAgICBjYXNlICcgJzpcbiAgICAgICAgICB0aGlzLnJlc2l6ZUtleUNvbnRyb2xBY3RpdmUgPSAhdGhpcy5yZXNpemVLZXlDb250cm9sQWN0aXZlO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd0YWInOlxuICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgaWYgKHRoaXMucmVzaXplS2V5Q29udHJvbEFjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5yZXNpemVLZXlDb250cm9sQWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgICBpZiAodGhpcy5yZXNpemVLZXlDb250cm9sQWN0aXZlKSB7XG4gICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgaWYgKHRoaXMuZmx5b3V0V2lkdGggPCB0aGlzLmNvbmZpZy5tYXhXaWR0aCkge1xuICAgICAgICAgICAgICB0aGlzLmZseW91dFdpZHRoID0gTWF0aC5taW4oXG4gICAgICAgICAgICAgICAgdGhpcy5mbHlvdXRXaWR0aCArIHRoaXMud2lkdGhTdGVwLFxuICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLm1heFdpZHRoXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICBpZiAodGhpcy5yZXNpemVLZXlDb250cm9sQWN0aXZlKSB7XG4gICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgaWYgKHRoaXMuZmx5b3V0V2lkdGggPiB0aGlzLmNvbmZpZy5taW5XaWR0aCkge1xuICAgICAgICAgICAgICB0aGlzLmZseW91dFdpZHRoID0gTWF0aC5tYXgoXG4gICAgICAgICAgICAgICAgdGhpcy5mbHlvdXRXaWR0aCAtIHRoaXMud2lkdGhTdGVwLFxuICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLm1pbldpZHRoXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqIEV4ZWN1dGVzIGEgZnVuY3Rpb24gd2hlbiB0aGUgem9uZSBpcyBzdGFibGUuICovXG4gICNleGVjdXRlT25TdGFibGUoZm46ICgpID0+IGFueSk6IHZvaWQge1xuICAgIGlmICh0aGlzLiNuZ1pvbmUuaXNTdGFibGUpIHtcbiAgICAgIGZuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI25nWm9uZS5vblN0YWJsZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZShmbik7XG4gICAgfVxuICB9XG5cbiAgI2luaXRGb2N1c1RyYXAoKTogdm9pZCB7XG4gICAgdGhpcy5lbmFibGVUcmFwRm9jdXNBdXRvQ2FwdHVyZSA9IGZhbHNlO1xuICAgIHRoaXMuZW5hYmxlVHJhcEZvY3VzID0gZmFsc2U7XG4gICAgLy8gV2FpdGluZyBmb3Igem9uZSB0byBiZSBzdGFibGUgd2lsbCBhdm9pZCBFeHByZXNzaW9uQ2hhbmdlQWZ0ZXJDaGVja2VkRXJyb3IuXG4gICAgdGhpcy4jZXhlY3V0ZU9uU3RhYmxlKCgpID0+IHtcbiAgICAgIHRoaXMuZW5hYmxlVHJhcEZvY3VzQXV0b0NhcHR1cmUgPSB0cnVlO1xuICAgICAgdGhpcy5lbmFibGVUcmFwRm9jdXMgPSB0cnVlO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwic2t5LWZseW91dFwiXG4gIHRhYmluZGV4PVwiLTFcIlxuICBbYXR0ci5yb2xlXT1cImNvbmZpZz8uYXJpYVJvbGUgPyBjb25maWcuYXJpYVJvbGUgOiAnZGlhbG9nJ1wiXG4gIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiY29uZmlnPy5hcmlhRGVzY3JpYmVkQnlcIlxuICBbYXR0ci5hcmlhLWxhYmVsXT1cImNvbmZpZz8uYXJpYUxhYmVsXCJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImNvbmZpZz8uYXJpYUxhYmVsbGVkQnlcIlxuICBbYXR0ci5hcmlhLW1vZGFsXT1cIlxuICAgIGNvbmZpZz8uYXJpYVJvbGUgPT09ICdkaWFsb2cnIHx8ICFjb25maWc/LmFyaWFSb2xlID8gdHJ1ZSA6IGZhbHNlXG4gIFwiXG4gIFthdHRyLmhpZGRlbl09XCIhaW5zdGFuY2VSZWFkeSA/IHRydWUgOiB1bmRlZmluZWRcIlxuICBbaWRdPVwiZmx5b3V0SWRcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ3NreS1mbHlvdXQtaGlkZGVuJzogIWlzT3BlbiAmJiAhaXNPcGVuaW5nLFxuICAgICdza3ktZmx5b3V0LWZ1bGxzY3JlZW4nOiBpc0Z1bGxzY3JlZW5cbiAgfVwiXG4gIFtza3lUaGVtZUNsYXNzXT1cIntcbiAgICAnc2t5LXNoYWRvdyc6ICdkZWZhdWx0JyxcbiAgICAnc2t5LWVsZXZhdGlvbi04JzogJ21vZGVybidcbiAgfVwiXG4gIChAZmx5b3V0U3RhdGUuZG9uZSk9XCJhbmltYXRpb25Eb25lKCRldmVudClcIlxuICBbQGZseW91dFN0YXRlXT1cImdldEFuaW1hdGlvblN0YXRlKClcIlxuICBbc3R5bGUud2lkdGgucHhdPVwiZmx5b3V0V2lkdGhcIlxuICAjZmx5b3V0UmVmXG4gIFtjZGtUcmFwRm9jdXNdPVwiZW5hYmxlVHJhcEZvY3VzXCJcbiAgW2Nka1RyYXBGb2N1c0F1dG9DYXB0dXJlXT1cImVuYWJsZVRyYXBGb2N1c0F1dG9DYXB0dXJlXCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2t5LWZseW91dC1oZWFkZXJcIlxuICAgIFtza3lUaGVtZUNsYXNzXT1cIntcbiAgICAgICdza3ktcGFkZGluZy1zcXVpc2gtbGFyZ2UnOiAnZGVmYXVsdCdcbiAgICB9XCJcbiAgICAjZmx5b3V0SGVhZGVyXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwic2t5LWZseW91dC1oZWFkZXItY29udGVudFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICAqc2t5VGhlbWVJZj1cIidtb2Rlcm4nXCJcbiAgICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4taWNvbi1ib3JkZXJsZXNzIHNreS1tYXJnaW4taW5saW5lLXNtIHNreS1mbHlvdXQtaGVhZGVyLWdyYWItaGFuZGxlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInc2t5dXhfZmx5b3V0X3Jlc2l6ZV9oYW5kbGUnIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICAgICAgKGtleWRvd24pPVwib25IZWFkZXJHcmFiSGFuZGxlS2V5RG93bigkZXZlbnQpXCJcbiAgICAgICAgKG1vdXNlZG93bik9XCJvbkhlYWRlckdyYWJIYW5kbGVNb3VzZURvd24oJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxza3ktaWNvbiBpY29uPVwidGlsZS1kcmFnXCIgaWNvblR5cGU9XCJza3l1eFwiIHNpemU9XCJsZ1wiPiA8L3NreS1pY29uPlxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIDxza3ktZmx5b3V0LWl0ZXJhdG9yXG4gICAgICAgICpuZ0lmPVwiY29uZmlnLnNob3dJdGVyYXRvclwiXG4gICAgICAgIFtuZXh0QnV0dG9uRGlzYWJsZWRdPVwiY29uZmlnLml0ZXJhdG9yTmV4dEJ1dHRvbkRpc2FibGVkXCJcbiAgICAgICAgW3ByZXZpb3VzQnV0dG9uRGlzYWJsZWRdPVwiY29uZmlnLml0ZXJhdG9yUHJldmlvdXNCdXR0b25EaXNhYmxlZFwiXG4gICAgICAgIChuZXh0QnV0dG9uQ2xpY2spPVwib25JdGVyYXRvck5leHRCdXR0b25DbGljaygpXCJcbiAgICAgICAgKHByZXZpb3VzQnV0dG9uQ2xpY2spPVwib25JdGVyYXRvclByZXZpb3VzQnV0dG9uQ2xpY2soKVwiXG4gICAgICA+XG4gICAgICA8L3NreS1mbHlvdXQtaXRlcmF0b3I+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInNreS1mbHlvdXQtaGVhZGVyLWJ1dHRvbnNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJwZXJtYWxpbmtUZW1wbGF0ZVwiPiA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJwcmltYXJ5QWN0aW9uVGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwic2t5LWJ0biBza3ktZmx5b3V0LWJ0bi1jbG9zZSBza3ktbGFiZWwtaWNvbi10aGVtZS1kZWZhdWx0XCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ3NreXV4X2ZseW91dF9jbG9zZScgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgICAgICBbc2t5VGhlbWVDbGFzc109XCJ7XG4gICAgICAgICAgJ3NreS1idG4tZGVmYXVsdCc6ICdkZWZhdWx0JyxcbiAgICAgICAgICAnc2t5LWJ0bi1pY29uLWJvcmRlcmxlc3MnOiAnbW9kZXJuJ1xuICAgICAgICB9XCJcbiAgICAgICAgKGNsaWNrKT1cImNsb3NlKClcIlxuICAgICAgPlxuICAgICAgICA8c2t5LWljb24gKnNreVRoZW1lSWY9XCInZGVmYXVsdCdcIiBpY29uPVwiY2xvc2VcIj4gPC9za3ktaWNvbj5cbiAgICAgICAgPHNreS1pY29uXG4gICAgICAgICAgKnNreVRoZW1lSWY9XCInbW9kZXJuJ1wiXG4gICAgICAgICAgaWNvbj1cImNsb3NlXCJcbiAgICAgICAgICBpY29uVHlwZT1cInNreXV4XCJcbiAgICAgICAgICBzaXplPVwibGdcIlxuICAgICAgICA+XG4gICAgICAgIDwvc2t5LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJza3ktZmx5b3V0LWNvbnRlbnRcIj5cbiAgICA8ZGl2ICN0YXJnZXQ+PC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJza3ktZmx5b3V0LXJlc2l6ZS1oYW5kbGVcIlxuICAgIHJvbGU9XCJzZXBhcmF0b3JcIlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgdHlwZT1cInJhbmdlXCJcbiAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImZseW91dElkXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidza3l1eF9mbHlvdXRfcmVzaXplX2hhbmRsZScgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgIFthdHRyLmFyaWEtdmFsdWVtYXhdPVwiY29uZmlnLm1heFdpZHRoXCJcbiAgICBbYXR0ci5hcmlhLXZhbHVlbWluXT1cImNvbmZpZy5taW5XaWR0aFwiXG4gICAgW2F0dHIuYXJpYS12YWx1ZW5vd109XCJmbHlvdXRXaWR0aFwiXG4gICAgKGtleWRvd24pPVwib25SZXNpemVIYW5kbGVLZXlEb3duKCRldmVudClcIlxuICAgIChtb3VzZWRvd24pPVwib25SZXNpemVIYW5kbGVNb3VzZURvd24oJGV2ZW50KVwiXG4gID48L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3Blcm1hbGlua1RlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgW25nSWZdPVwicGVybWFsaW5rXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cInBlcm1hbGluay51cmxcIj5cbiAgICAgIDxhXG4gICAgICAgIGNsYXNzPVwic2t5LWJ0biBza3ktZmx5b3V0LWJ0bi1wZXJtYWxpbmsgc2t5LW1hcmdpbi1pbmxpbmUtZGVmYXVsdFwiXG4gICAgICAgIFtza3lIcmVmXT1cInBlcm1hbGluay51cmxcIlxuICAgICAgICBbc2t5VGhlbWVDbGFzc109XCJ7XG4gICAgICAgICAgJ3NreS1idG4tZGVmYXVsdCc6ICdkZWZhdWx0JyxcbiAgICAgICAgICAnc2t5LWJ0bi1ib3JkZXJsZXNzJzogJ21vZGVybidcbiAgICAgICAgfVwiXG4gICAgICAgIChjbGljayk9XCJjbG9zZSgpXCJcbiAgICAgID5cbiAgICAgICAge3sgcGVybWFsaW5rTGFiZWwgfX1cbiAgICAgIDwvYT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJwZXJtYWxpbmsucm91dGVcIj5cbiAgICAgIDxhXG4gICAgICAgIGNsYXNzPVwic2t5LWJ0biBza3ktZmx5b3V0LWJ0bi1wZXJtYWxpbmsgc2t5LW1hcmdpbi1pbmxpbmUtZGVmYXVsdFwiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cInBlcm1hbGluay5yb3V0ZS5jb21tYW5kc1wiXG4gICAgICAgIFtmcmFnbWVudF09XCJwZXJtYWxpbmsucm91dGUuZXh0cmFzPy5mcmFnbWVudFwiXG4gICAgICAgIFtza3lUaGVtZUNsYXNzXT1cIntcbiAgICAgICAgICAnc2t5LWJ0bi1kZWZhdWx0JzogJ2RlZmF1bHQnLFxuICAgICAgICAgICdza3ktYnRuLWJvcmRlcmxlc3MnOiAnbW9kZXJuJ1xuICAgICAgICB9XCJcbiAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInBlcm1hbGluay5yb3V0ZS5leHRyYXM/LnF1ZXJ5UGFyYW1zXCJcbiAgICAgICAgW3F1ZXJ5UGFyYW1zSGFuZGxpbmddPVwicGVybWFsaW5rLnJvdXRlLmV4dHJhcz8ucXVlcnlQYXJhbXNIYW5kbGluZ1wiXG4gICAgICAgIFtzdGF0ZV09XCJwZXJtYWxpbmsucm91dGUuZXh0cmFzPy5zdGF0ZVwiXG4gICAgICAgIChjbGljayk9XCJjbG9zZSgpXCJcbiAgICAgID5cbiAgICAgICAge3sgcGVybWFsaW5rTGFiZWwgfX1cbiAgICAgIDwvYT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwcmltYXJ5QWN0aW9uVGVtcGxhdGU+XG4gIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJwcmltYXJ5QWN0aW9uICYmIHByaW1hcnlBY3Rpb24uY2FsbGJhY2tcIj5cbiAgICA8YnV0dG9uXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGNsYXNzPVwic2t5LWJ0biBza3ktYnRuLWRlZmF1bHQgc2t5LWZseW91dC1idG4tcHJpbWFyeS1hY3Rpb24gc2t5LW1hcmdpbi1pbmxpbmUtZGVmYXVsdFwiXG4gICAgICAoY2xpY2spPVwiaW52b2tlUHJpbWFyeUFjdGlvbigpXCJcbiAgICA+XG4gICAgICB7eyBwcmltYXJ5QWN0aW9uTGFiZWwgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
503
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mbHlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZseW91dC9mbHlvdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2ZseW91dC9zcmMvbGliL21vZHVsZXMvZmx5b3V0L2ZseW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFFTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxHQUNSLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsVUFBVSxFQUNWLFlBQVksRUFDWixRQUFRLEVBS1IsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLG9CQUFvQixHQUVyQixNQUFNLGFBQWEsQ0FBQztBQUdyQixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUUxRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUlsRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7Ozs7OztBQUduRSxNQUFNLGlCQUFpQixHQUFH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M0UsY0FDVzt3QkFDVixPQUFPLENBQUMsYUFBYSxFQUFFOzRCQUNyQixLQUFLLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7NEJBQ3pELEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDOzRCQUNwRSxVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztnQ0FDeEMsT0FBTyxDQUFDLEdBQUcsQ0FBQzs2QkFDYixDQUFDOzRCQUNGLFVBQVUsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO3lCQUNoRCxDQUFDO3FCQUNILG1CQUVnQix1QkFBdUIsQ0FBQyxPQUFPO3lXQWlEekMsU0FBUztzQkFKZixTQUFTO3VCQUFDLFdBQVcsRUFBRTt3QkFDdEIsSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLE1BQU0sRUFBRSxJQUFJO3FCQUNiO2dCQU9NLE1BQU07c0JBSlosU0FBUzt1QkFBQyxRQUFRLEVBQUU7d0JBQ25CLElBQUksRUFBRSxnQkFBZ0I7d0JBQ3RCLE1BQU0sRUFBRSxJQUFJO3FCQUNiO2dCQU9NLFlBQVk7c0JBSmxCLFNBQVM7dUJBQUMsY0FBYyxFQUFFO3dCQUN6QixJQUFJLEVBQUUsVUFBVTt3QkFDaEIsTUFBTSxFQUFFLElBQUk7cUJBQ2I7Z0JBNkRNLGNBQWM7c0JBRHBCLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQW5pbWF0aW9uRXZlbnQsXG4gIGFuaW1hdGUsXG4gIHN0YXRlLFxuICBzdHlsZSxcbiAgdHJhbnNpdGlvbixcbiAgdHJpZ2dlcixcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdG9yLFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBUeXBlLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgU2t5TWVkaWFCcmVha3BvaW50cyxcbiAgU2t5TWVkaWFRdWVyeVNlcnZpY2UsXG4gIFNreVVJQ29uZmlnU2VydmljZSxcbn0gZnJvbSAnQHNreXV4L2NvcmUnO1xuaW1wb3J0IHsgU2t5TGliUmVzb3VyY2VzU2VydmljZSB9IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHsgU3ViamVjdCwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB0YWtlVW50aWwsIHRha2VXaGlsZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5Rmx5b3V0QWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL2ZseW91dC1hZGFwdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0SW5zdGFuY2UgfSBmcm9tICcuL2ZseW91dC1pbnN0YW5jZSc7XG5pbXBvcnQgeyBTa3lGbHlvdXRNZWRpYVF1ZXJ5U2VydmljZSB9IGZyb20gJy4vZmx5b3V0LW1lZGlhLXF1ZXJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0QWN0aW9uIH0gZnJvbSAnLi90eXBlcy9mbHlvdXQtYWN0aW9uJztcbmltcG9ydCB7IFNreUZseW91dEJlZm9yZUNsb3NlSGFuZGxlciB9IGZyb20gJy4vdHlwZXMvZmx5b3V0LWJlZm9yZS1jbG9zZS1oYW5kbGVyJztcbmltcG9ydCB7IFNreUZseW91dENvbmZpZyB9IGZyb20gJy4vdHlwZXMvZmx5b3V0LWNvbmZpZyc7XG5pbXBvcnQgeyBTa3lGbHlvdXRDb25maWdJbnRlcm5hbCB9IGZyb20gJy4vdHlwZXMvZmx5b3V0LWNvbmZpZy1pbnRlcm5hbCc7XG5pbXBvcnQgeyBTa3lGbHlvdXRNZXNzYWdlIH0gZnJvbSAnLi90eXBlcy9mbHlvdXQtbWVzc2FnZSc7XG5pbXBvcnQgeyBTa3lGbHlvdXRNZXNzYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMvZmx5b3V0LW1lc3NhZ2UtdHlwZSc7XG5pbXBvcnQgeyBTa3lGbHlvdXRQZXJtYWxpbmsgfSBmcm9tICcuL3R5cGVzL2ZseW91dC1wZXJtYWxpbmsnO1xuXG5jb25zdCBGTFlPVVRfT1BFTl9TVEFURSA9ICdmbHlvdXRPcGVuJztcbmNvbnN0IEZMWU9VVF9DTE9TRURfU1RBVEUgPSAnZmx5b3V0Q2xvc2VkJztcblxubGV0IG5leHRJZCA9IDA7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1mbHlvdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmx5b3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmx5b3V0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIFNreUZseW91dEFkYXB0ZXJTZXJ2aWNlLFxuICAgIFNreUZseW91dE1lZGlhUXVlcnlTZXJ2aWNlLFxuICAgIHsgcHJvdmlkZTogU2t5TWVkaWFRdWVyeVNlcnZpY2UsIHVzZUV4aXN0aW5nOiBTa3lGbHlvdXRNZWRpYVF1ZXJ5U2VydmljZSB9LFxuICBdLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignZmx5b3V0U3RhdGUnLCBbXG4gICAgICBzdGF0ZShGTFlPVVRfT1BFTl9TVEFURSwgc3R5bGUoeyB0cmFuc2Zvcm06ICdpbml0aWFsJyB9KSksXG4gICAgICBzdGF0ZShGTFlPVVRfQ0xPU0VEX1NUQVRFLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMTAwJSknIH0pKSxcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIFtcbiAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSxcbiAgICAgICAgYW5pbWF0ZSgyNTApLFxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKGAqIDw9PiAqYCwgYW5pbWF0ZSgnMjUwbXMgZWFzZS1pbicpKSxcbiAgICBdKSxcbiAgXSxcbiAgLy8gQWxsb3cgYXV0b21hdGljIGNoYW5nZSBkZXRlY3Rpb24gZm9yIGNoaWxkIGNvbXBvbmVudHMuXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Rmx5b3V0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICBwdWJsaWMgY29uZmlnOiBTa3lGbHlvdXRDb25maWdJbnRlcm5hbCA9IHtcbiAgICBkZWZhdWx0V2lkdGg6IHdpbmRvdy5pbm5lcldpZHRoIC8gMixcbiAgICBtaW5XaWR0aDogMzIwLFxuICAgIG1heFdpZHRoOiB3aW5kb3cuaW5uZXJXaWR0aCAvIDIsXG4gICAgcHJvdmlkZXJzOiBbXSxcbiAgfTtcbiAgcHVibGljIGVuYWJsZVRyYXBGb2N1cyA9IGZhbHNlO1xuICBwdWJsaWMgZW5hYmxlVHJhcEZvY3VzQXV0b0NhcHR1cmUgPSBmYWxzZTtcbiAgcHVibGljIGZseW91dElkID0gYHNreS1mbHlvdXQtJHsrK25leHRJZH1gO1xuICBwdWJsaWMgZmx5b3V0U3RhdGUgPSBGTFlPVVRfQ0xPU0VEX1NUQVRFO1xuICBwdWJsaWMgaXNPcGVuID0gZmFsc2U7XG4gIHB1YmxpYyBpc09wZW5pbmcgPSBmYWxzZTtcblxuICBwdWJsaWMgZmx5b3V0V2lkdGggPSAwO1xuICBwdWJsaWMgaW5zdGFuY2VSZWFkeSA9IGZhbHNlO1xuICBwdWJsaWMgaXNEcmFnZ2luZyA9IGZhbHNlO1xuICBwdWJsaWMgaXNGdWxsc2NyZWVuID0gZmFsc2U7XG4gIHB1YmxpYyByZXNpemVLZXlDb250cm9sQWN0aXZlID0gZmFsc2U7XG5cbiAgI3hDb29yZCA9IDA7XG4gICN3aW5kb3dCdWZmZXJTaXplID0gMjA7XG5cbiAgcHVibGljIGdldCBtZXNzYWdlU3RyZWFtKCk6IFN1YmplY3Q8U2t5Rmx5b3V0TWVzc2FnZT4ge1xuICAgIHJldHVybiB0aGlzLiNfbWVzc2FnZVN0cmVhbTtcbiAgfVxuXG4gIHB1YmxpYyBwZXJtYWxpbms6IFNreUZseW91dFBlcm1hbGluayA9IHt9O1xuXG4gIHB1YmxpYyBwZXJtYWxpbmtMYWJlbCA9ICcnO1xuXG4gIHB1YmxpYyBwcmltYXJ5QWN0aW9uOiBTa3lGbHlvdXRBY3Rpb24gPSB7fTtcblxuICBwdWJsaWMgcHJpbWFyeUFjdGlvbkxhYmVsID0gJyc7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHdpZHRoU3RlcCA9IDEwO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2ZseW91dFJlZicsIHtcbiAgICByZWFkOiBFbGVtZW50UmVmLFxuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSlcbiAgcHVibGljIGZseW91dFJlZjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICBAVmlld0NoaWxkKCd0YXJnZXQnLCB7XG4gICAgcmVhZDogVmlld0NvbnRhaW5lclJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHB1YmxpYyB0YXJnZXQ6IFZpZXdDb250YWluZXJSZWYgfCB1bmRlZmluZWQ7XG5cbiAgQFZpZXdDaGlsZCgnZmx5b3V0SGVhZGVyJywge1xuICAgIHJlYWQ6IEVsZW1lbnRSZWYsXG4gICAgc3RhdGljOiB0cnVlLFxuICB9KVxuICBwdWJsaWMgZmx5b3V0SGVhZGVyOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gICNmbHlvdXRJbnN0YW5jZTogU2t5Rmx5b3V0SW5zdGFuY2U8YW55PiB8IHVuZGVmaW5lZDtcblxuICAjbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgI19tZXNzYWdlU3RyZWFtID0gbmV3IFN1YmplY3Q8U2t5Rmx5b3V0TWVzc2FnZT4oKTtcblxuICAjYWRhcHRlcjogU2t5Rmx5b3V0QWRhcHRlclNlcnZpY2U7XG4gICNjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG4gICNpbmplY3RvcjogSW5qZWN0b3I7XG4gICNyZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyO1xuICAjcmVzb3VyY2VzU2VydmljZTogU2t5TGliUmVzb3VyY2VzU2VydmljZTtcbiAgI2ZseW91dE1lZGlhUXVlcnlTZXJ2aWNlOiBTa3lGbHlvdXRNZWRpYVF1ZXJ5U2VydmljZTtcbiAgI2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG4gICN1aUNvbmZpZ1NlcnZpY2U6IFNreVVJQ29uZmlnU2VydmljZTtcbiAgI25nWm9uZTogTmdab25lO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGFkYXB0ZXI6IFNreUZseW91dEFkYXB0ZXJTZXJ2aWNlLFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICByZXNvdXJjZXNTZXJ2aWNlOiBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlLFxuICAgIGZseW91dE1lZGlhUXVlcnlTZXJ2aWNlOiBTa3lGbHlvdXRNZWRpYVF1ZXJ5U2VydmljZSxcbiAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHVpQ29uZmlnU2VydmljZTogU2t5VUlDb25maWdTZXJ2aWNlLFxuICAgIG5nWm9uZTogTmdab25lXG4gICkge1xuICAgIHRoaXMuI2FkYXB0ZXIgPSBhZGFwdGVyO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yID0gY2hhbmdlRGV0ZWN0b3I7XG4gICAgdGhpcy4jaW5qZWN0b3IgPSBpbmplY3RvcjtcbiAgICB0aGlzLiNyZXNvbHZlciA9IHJlc29sdmVyO1xuICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UgPSByZXNvdXJjZXNTZXJ2aWNlO1xuICAgIHRoaXMuI2ZseW91dE1lZGlhUXVlcnlTZXJ2aWNlID0gZmx5b3V0TWVkaWFRdWVyeVNlcnZpY2U7XG4gICAgdGhpcy4jZWxlbWVudFJlZiA9IGVsZW1lbnRSZWY7XG4gICAgdGhpcy4jdWlDb25maWdTZXJ2aWNlID0gdWlDb25maWdTZXJ2aWNlO1xuICAgIHRoaXMuI25nWm9uZSA9IG5nWm9uZTtcblxuICAgIC8vIEFsbCBjb21tYW5kcyBmbG93IHRocm91Z2ggdGhlIG1lc3NhZ2Ugc3RyZWFtLlxuICAgIHRoaXMubWVzc2FnZVN0cmVhbVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgobWVzc2FnZTogU2t5Rmx5b3V0TWVzc2FnZSkgPT4ge1xuICAgICAgICB0aGlzLiNoYW5kbGVJbmNvbWluZ01lc3NhZ2VzKG1lc3NhZ2UpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy5mbHlvdXRIZWFkZXIpIHtcbiAgICAgIHRoaXMuI2FkYXB0ZXIuYWRqdXN0SGVhZGVyRm9ySGVscCh0aGlzLmZseW91dEhlYWRlcik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25XaW5kb3dSZXNpemUoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIHRoaXMuI2ZseW91dE1lZGlhUXVlcnlTZXJ2aWNlLmlzV2lkdGhXaXRoaW5CcmVha3Bpb250KFxuICAgICAgICBldmVudC50YXJnZXQuaW5uZXJXaWR0aCxcbiAgICAgICAgU2t5TWVkaWFCcmVha3BvaW50cy54c1xuICAgICAgKVxuICAgICkge1xuICAgICAgdGhpcy4jdXBkYXRlQnJlYWtwb2ludEFuZFJlc3BvbnNpdmVDbGFzcyhldmVudC50YXJnZXQuaW5uZXJXaWR0aCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI3VwZGF0ZUJyZWFrcG9pbnRBbmRSZXNwb25zaXZlQ2xhc3ModGhpcy5mbHlvdXRXaWR0aCk7XG4gICAgfVxuXG4gICAgdGhpcy4jc2V0RnVsbHNjcmVlbigpO1xuXG4gICAgaWYgKGV2ZW50LnRhcmdldC5pbm5lcldpZHRoIC0gdGhpcy5mbHlvdXRXaWR0aCA8IHRoaXMuI3dpbmRvd0J1ZmZlclNpemUpIHtcbiAgICAgIHRoaXMuZmx5b3V0V2lkdGggPSBldmVudC50YXJnZXQuaW5uZXJXaWR0aCAtIHRoaXMuI3dpbmRvd0J1ZmZlclNpemU7XG4gICAgICB0aGlzLiN4Q29vcmQgPSB0aGlzLiN3aW5kb3dCdWZmZXJTaXplO1xuICAgICAgdGhpcy4jc2V0VXNlckRhdGEoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXR0YWNoPFQ+KFxuICAgIGNvbXBvbmVudDogVHlwZTxUPixcbiAgICBjb25maWc/OiBTa3lGbHlvdXRDb25maWdcbiAgKTogU2t5Rmx5b3V0SW5zdGFuY2U8VD4ge1xuICAgIHRoaXMuI2NsZWFuVGVtcGxhdGUoKTtcblxuICAgIC8vIEVtaXQgdGhlIGNsb3NlZCBldmVudCBvbiBhbnkgcHJldmlvdXNseSBvcGVuZWQgZmx5b3V0IGluc3RhbmNlXG4gICAgaWYgKHRoaXMuI2ZseW91dEluc3RhbmNlKSB7XG4gICAgICB0aGlzLiNub3RpZnlDbG9zZWQoKTtcbiAgICB9XG5cbiAgICB0aGlzLmNvbmZpZyA9IE9iamVjdC5hc3NpZ24oXG4gICAgICB7XG4gICAgICAgIGRlZmF1bHRXaWR0aDogd2luZG93LmlubmVyV2lkdGggLyAyLFxuICAgICAgICBtaW5XaWR0aDogMzIwLFxuICAgICAgICBtYXhXaWR0aDogd2luZG93LmlubmVyV2lkdGggLyAyLFxuICAgICAgICBwcm92aWRlcnM6IFtdLFxuICAgICAgfSxcbiAgICAgIGNvbmZpZ1xuICAgICk7XG4gICAgaWYgKGNvbmZpZz8uZGVmYXVsdFdpZHRoICYmICFjb25maWc/Lm1heFdpZHRoKSB7XG4gICAgICB0aGlzLmNvbmZpZy5tYXhXaWR0aCA9IGNvbmZpZz8uZGVmYXVsdFdpZHRoO1xuICAgIH1cblxuICAgIHRoaXMuY29uZmlnLnNob3dJdGVyYXRvciA9IHRoaXMuY29uZmlnLnNob3dJdGVyYXRvciB8fCBmYWxzZTtcbiAgICB0aGlzLmNvbmZpZy5pdGVyYXRvck5leHRCdXR0b25EaXNhYmxlZCA9XG4gICAgICB0aGlzLmNvbmZpZy5pdGVyYXRvck5leHRCdXR0b25EaXNhYmxlZCB8fCBmYWxzZTtcbiAgICB0aGlzLmNvbmZpZy5pdGVyYXRvclByZXZpb3VzQnV0dG9uRGlzYWJsZWQgPVxuICAgICAgdGhpcy5jb25maWcuaXRlcmF0b3JQcmV2aW91c0J1dHRvbkRpc2FibGVkIHx8IGZhbHNlO1xuXG4gICAgdGhpcy5wZXJtYWxpbmsgPSB0aGlzLmNvbmZpZy5wZXJtYWxpbmsgPz8ge307XG4gICAgdGhpcy5wZXJtYWxpbmtMYWJlbCA9XG4gICAgICB0aGlzLmNvbmZpZy5wZXJtYWxpbmsgJiYgdGhpcy5jb25maWcucGVybWFsaW5rLmxhYmVsXG4gICAgICAgID8gdGhpcy5jb25maWcucGVybWFsaW5rLmxhYmVsXG4gICAgICAgIDogdGhpcy4jZ2V0U3RyaW5nKCdza3l1eF9mbHlvdXRfcGVybWFsaW5rX2J1dHRvbicpO1xuXG4gICAgdGhpcy5wcmltYXJ5QWN0aW9uID0gdGhpcy5jb25maWcucHJpbWFyeUFjdGlvbiA/PyB7fTtcbiAgICB0aGlzLnByaW1hcnlBY3Rpb25MYWJlbCA9XG4gICAgICB0aGlzLmNvbmZpZy5wcmltYXJ5QWN0aW9uICYmIHRoaXMuY29uZmlnLnByaW1hcnlBY3Rpb24ubGFiZWxcbiAgICAgICAgPyB0aGlzLmNvbmZpZy5wcmltYXJ5QWN0aW9uLmxhYmVsXG4gICAgICAgIDogdGhpcy4jZ2V0U3RyaW5nKCdza3l1eF9mbHlvdXRfcHJpbWFyeV9hY3Rpb25fYnV0dG9uJyk7XG5cbiAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy4jcmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoY29tcG9uZW50KTtcblxuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHBhcmVudDogdGhpcy4jaW5qZWN0b3IsXG4gICAgICBwcm92aWRlcnM6IHRoaXMuY29uZmlnLnByb3ZpZGVycyxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMudGFyZ2V0Py5jcmVhdGVDb21wb25lbnQoXG4gICAgICBmYWN0b3J5LFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgaW5qZWN0b3JcbiAgICApO1xuXG4gICAgLyogc2FmZXR5IGNoZWNrICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKCFjb21wb25lbnRSZWYpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkZseW91dCdzIGludGVybmFsIGNvbXBvbmVudCBjb3VsZCBub3QgYmUgY3JlYXRlZFwiKTtcbiAgICB9XG5cbiAgICB0aGlzLiNmbHlvdXRJbnN0YW5jZSA9IHRoaXMuI2NyZWF0ZUZseW91dEluc3RhbmNlPFQ+KGNvbXBvbmVudFJlZi5pbnN0YW5jZSk7XG5cbiAgICAvLyBUaGlzIGlzIHVzZWQgdG8gZW5zdXJlIHdlIGRvIG5vdCByZW5kZXIgdGhlIGZseW91dCB1bnRpbCB3ZSBoYXZlIGF0dGFjaGVkIHRoZSBjb21wb25lbnQuXG4gICAgLy8gVGhpcyBhbGxvd3MgdGhlIGFyaWEtbGFiZWxsZWRieSB0byBmdW5jdGlvbiBjb3JyZWN0bHkuXG4gICAgdGhpcy5pbnN0YW5jZVJlYWR5ID0gdHJ1ZTtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcblxuICAgIC8vIE9wZW4gdGhlIGZseW91dCBpbW1lZGlhdGVseS5cbiAgICB0aGlzLm1lc3NhZ2VTdHJlYW0ubmV4dCh7XG4gICAgICB0eXBlOiBTa3lGbHlvdXRNZXNzYWdlVHlwZS5PcGVuLFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuY29uZmlnLnNldHRpbmdzS2V5KSB7XG4gICAgICB0aGlzLiN1aUNvbmZpZ1NlcnZpY2VcbiAgICAgICAgLmdldENvbmZpZyh0aGlzLmNvbmZpZy5zZXR0aW5nc0tleSlcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IGFueSkgPT4ge1xuICAgICAgICAgIGlmICh2YWx1ZSAmJiB2YWx1ZS5mbHlvdXRXaWR0aCkge1xuICAgICAgICAgICAgdGhpcy5mbHlvdXRXaWR0aCA9IHZhbHVlLmZseW91dFdpZHRoO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBCYWQgZGF0YSwgb3IgY29uZmlnIGlzIHRoZSBkZWZhdWx0IGNvbmZpZy5cbiAgICAgICAgICAgIHRoaXMuZmx5b3V0V2lkdGggPSB0aGlzLmNvbmZpZy5kZWZhdWx0V2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuI2NoZWNrSW5pdGlhbFNpemUoKTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZmx5b3V0V2lkdGggPSB0aGlzLmNvbmZpZy5kZWZhdWx0V2lkdGg7XG4gICAgICB0aGlzLiNjaGVja0luaXRpYWxTaXplKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuI2ZseW91dEluc3RhbmNlO1xuICB9XG5cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMubWVzc2FnZVN0cmVhbS5uZXh0KHtcbiAgICAgIHR5cGU6IFNreUZseW91dE1lc3NhZ2VUeXBlLkNsb3NlLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGludm9rZVByaW1hcnlBY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMucHJpbWFyeUFjdGlvbi5jYWxsYmFjaykge1xuICAgICAgdGhpcy5wcmltYXJ5QWN0aW9uLmNhbGxiYWNrKCk7XG5cbiAgICAgIGlmICh0aGlzLnByaW1hcnlBY3Rpb24uY2xvc2VBZnRlckludm9raW5nKSB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHVibGljIGdldEFuaW1hdGlvblN0YXRlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaW5zdGFuY2VSZWFkeSAmJiB0aGlzLmlzT3BlbmluZ1xuICAgICAgPyBGTFlPVVRfT1BFTl9TVEFURVxuICAgICAgOiBGTFlPVVRfQ0xPU0VEX1NUQVRFO1xuICB9XG5cbiAgcHVibGljIGFuaW1hdGlvbkRvbmUoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LnRvU3RhdGUgPT09IEZMWU9VVF9PUEVOX1NUQVRFKSB7XG4gICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKGV2ZW50LnRvU3RhdGUgPT09IEZMWU9VVF9DTE9TRURfU1RBVEUpIHtcbiAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgICB0aGlzLiNub3RpZnlDbG9zZWQoKTtcbiAgICAgIHRoaXMuI2NsZWFuVGVtcGxhdGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25IZWFkZXJHcmFiSGFuZGxlTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5vblJlc2l6ZUhhbmRsZU1vdXNlRG93bihldmVudCk7XG4gIH1cblxuICBwdWJsaWMgb25IZWFkZXJHcmFiSGFuZGxlS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuI2hhbmRsZVJlc2l6ZUtleURvd24oZXZlbnQpO1xuICB9XG5cbiAgcHVibGljIG9uUmVzaXplSGFuZGxlS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuI2hhbmRsZVJlc2l6ZUtleURvd24oZXZlbnQpO1xuICB9XG5cbiAgcHVibGljIG9uUmVzaXplSGFuZGxlTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIGlmICh0aGlzLmlzRnVsbHNjcmVlbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaXNEcmFnZ2luZyA9IHRydWU7XG4gICAgdGhpcy4jeENvb3JkID0gZXZlbnQuY2xpZW50WDtcblxuICAgIHRoaXMuI2FkYXB0ZXIudG9nZ2xlSWZyYW1lUG9pbnRlckV2ZW50cyhmYWxzZSk7XG5cbiAgICBmcm9tRXZlbnQoZG9jdW1lbnQsICdtb3VzZW1vdmUnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuaXNEcmFnZ2luZztcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKG1vdmVFdmVudDogYW55KSA9PiB7XG4gICAgICAgIHRoaXMub25Nb3VzZU1vdmUobW92ZUV2ZW50KTtcbiAgICAgIH0pO1xuXG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAnbW91c2V1cCcpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5pc0RyYWdnaW5nO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgobW91c2VVcEV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5vbkhhbmRsZVJlbGVhc2UobW91c2VVcEV2ZW50KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uTW91c2VNb3ZlKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgLyogU2FuaXR5IGNoZWNrICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKCF0aGlzLmlzRHJhZ2dpbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBvZmZzZXRYID0gZXZlbnQuY2xpZW50WCAtIHRoaXMuI3hDb29yZDtcbiAgICBsZXQgd2lkdGggPSB0aGlzLmZseW91dFdpZHRoO1xuXG4gICAgd2lkdGggLT0gb2Zmc2V0WDtcblxuICAgIGlmICh3aWR0aCA8IHRoaXMuY29uZmlnLm1pbldpZHRoIHx8IHdpZHRoID4gdGhpcy5jb25maWcubWF4V2lkdGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggLSB3aWR0aCA8IHRoaXMuI3dpbmRvd0J1ZmZlclNpemUpIHtcbiAgICAgIHdpZHRoID0gd2luZG93LmlubmVyV2lkdGggLSB0aGlzLiN3aW5kb3dCdWZmZXJTaXplO1xuICAgICAgdGhpcy4jeENvb3JkID0gdGhpcy4jd2luZG93QnVmZmVyU2l6ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jeENvb3JkID0gZXZlbnQuY2xpZW50WDtcbiAgICB9XG5cbiAgICB0aGlzLmZseW91dFdpZHRoID0gd2lkdGg7XG5cbiAgICB0aGlzLiN1cGRhdGVCcmVha3BvaW50QW5kUmVzcG9uc2l2ZUNsYXNzKHRoaXMuZmx5b3V0V2lkdGgpO1xuXG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgb25IYW5kbGVSZWxlYXNlKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAnY2xpY2snKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmlzRHJhZ2dpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy4jYWRhcHRlci50b2dnbGVJZnJhbWVQb2ludGVyRXZlbnRzKHRydWUpO1xuICAgICAgICB0aGlzLiNzZXRVc2VyRGF0YSgpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25JdGVyYXRvclByZXZpb3VzQnV0dG9uQ2xpY2soKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy4jZmx5b3V0SW5zdGFuY2UpIHtcbiAgICAgIHRoaXMuI2ZseW91dEluc3RhbmNlLml0ZXJhdG9yUHJldmlvdXNCdXR0b25DbGljay5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uSXRlcmF0b3JOZXh0QnV0dG9uQ2xpY2soKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy4jZmx5b3V0SW5zdGFuY2UpIHtcbiAgICAgIHRoaXMuI2ZseW91dEluc3RhbmNlLml0ZXJhdG9yTmV4dEJ1dHRvbkNsaWNrLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICAjY3JlYXRlRmx5b3V0SW5zdGFuY2U8VD4oY29tcG9uZW50OiBUKTogU2t5Rmx5b3V0SW5zdGFuY2U8VD4ge1xuICAgIGNvbnN0IGluc3RhbmNlID0gbmV3IFNreUZseW91dEluc3RhbmNlPFQ+KGNvbXBvbmVudCk7XG5cbiAgICBpbnN0YW5jZS5ob3N0Q29udHJvbGxlclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgobWVzc2FnZTogU2t5Rmx5b3V0TWVzc2FnZSkgPT4ge1xuICAgICAgICB0aGlzLm1lc3NhZ2VTdHJlYW0ubmV4dChtZXNzYWdlKTtcbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIGluc3RhbmNlO1xuICB9XG5cbiAgI2hhbmRsZUluY29taW5nTWVzc2FnZXMobWVzc2FnZTogU2t5Rmx5b3V0TWVzc2FnZSk6IHZvaWQge1xuICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICBjYXNlIFNreUZseW91dE1lc3NhZ2VUeXBlLk9wZW46XG4gICAgICAgIGlmICghdGhpcy5pc09wZW4pIHtcbiAgICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMuaXNPcGVuaW5nID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLiNpbml0Rm9jdXNUcmFwKCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreUZseW91dE1lc3NhZ2VUeXBlLkNsb3NlOlxuICAgICAgICBpZiAoXG4gICAgICAgICAgKHRoaXMuI2ZseW91dEluc3RhbmNlPy5iZWZvcmVDbG9zZSBhcyBTdWJqZWN0PGFueT4pPy5vYnNlcnZlcnNcbiAgICAgICAgICAgIC5sZW5ndGggPT09IDAgfHxcbiAgICAgICAgICBtZXNzYWdlLmRhdGE/Lmlnbm9yZUJlZm9yZUNsb3NlXG4gICAgICAgICkge1xuICAgICAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICAgICAgICB0aGlzLmlzT3BlbmluZyA9IGZhbHNlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICh0aGlzLiNmbHlvdXRJbnN0YW5jZT8uYmVmb3JlQ2xvc2UgYXMgU3ViamVjdDxhbnk+KT8ubmV4dChcbiAgICAgICAgICAgIG5ldyBTa3lGbHlvdXRCZWZvcmVDbG9zZUhhbmRsZXIoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XG4gICAgICAgICAgICAgIHRoaXMuaXNPcGVuaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5Rmx5b3V0TWVzc2FnZVR5cGUuRW5hYmxlSXRlcmF0b3JOZXh0QnV0dG9uOlxuICAgICAgICB0aGlzLmNvbmZpZy5pdGVyYXRvck5leHRCdXR0b25EaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTa3lGbHlvdXRNZXNzYWdlVHlwZS5FbmFibGVJdGVyYXRvclByZXZpb3VzQnV0dG9uOlxuICAgICAgICB0aGlzLmNvbmZpZy5pdGVyYXRvclByZXZpb3VzQnV0dG9uRGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5Rmx5b3V0TWVzc2FnZVR5cGUuRGlzYWJsZUl0ZXJhdG9yTmV4dEJ1dHRvbjpcbiAgICAgICAgdGhpcy5jb25maWcuaXRlcmF0b3JOZXh0QnV0dG9uRGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTa3lGbHlvdXRNZXNzYWdlVHlwZS5EaXNhYmxlSXRlcmF0b3JQcmV2aW91c0J1dHRvbjpcbiAgICAgICAgdGhpcy5jb25maWcuaXRlcmF0b3JQcmV2aW91c0J1dHRvbkRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAjbm90aWZ5Q2xvc2VkKCk6IHZvaWQge1xuICAgIHRoaXMuI2ZseW91dEluc3RhbmNlPy5jbG9zZWQuZW1pdCgpO1xuICAgIHRoaXMuI2ZseW91dEluc3RhbmNlPy5jbG9zZWQuY29tcGxldGUoKTtcbiAgfVxuXG4gICNjbGVhblRlbXBsYXRlKCk6IHZvaWQge1xuICAgIHRoaXMudGFyZ2V0Py5jbGVhcigpO1xuICB9XG5cbiAgI3VwZGF0ZUJyZWFrcG9pbnRBbmRSZXNwb25zaXZlQ2xhc3Mod2lkdGg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuI2ZseW91dE1lZGlhUXVlcnlTZXJ2aWNlLnNldEJyZWFrcG9pbnRGb3JXaWR0aCh3aWR0aCk7XG5cbiAgICBjb25zdCBuZXdCcmVha3Bpb250ID0gdGhpcy4jZmx5b3V0TWVkaWFRdWVyeVNlcnZpY2UuY3VycmVudDtcblxuICAgIHRoaXMuI2FkYXB0ZXIuc2V0UmVzcG9uc2l2ZUNsYXNzKHRoaXMuI2VsZW1lbnRSZWYsIG5ld0JyZWFrcGlvbnQpO1xuICB9XG5cbiAgI3NldEZ1bGxzY3JlZW4oKTogdm9pZCB7XG4gICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoIC0gdGhpcy4jd2luZG93QnVmZmVyU2l6ZSA8IHRoaXMuY29uZmlnLm1pbldpZHRoKSB7XG4gICAgICB0aGlzLmlzRnVsbHNjcmVlbiA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNGdWxsc2NyZWVuID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgI3NldFVzZXJEYXRhKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbmZpZy5zZXR0aW5nc0tleSkge1xuICAgICAgdGhpcy4jdWlDb25maWdTZXJ2aWNlXG4gICAgICAgIC5zZXRDb25maWcodGhpcy5jb25maWcuc2V0dGluZ3NLZXksIHtcbiAgICAgICAgICBmbHlvdXRXaWR0aDogdGhpcy5mbHlvdXRXaWR0aCxcbiAgICAgICAgfSlcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdDb3VsZCBub3Qgc2F2ZSBmbHlvdXQgZGF0YS4nKTtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihlcnIpO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAjY2hlY2tJbml0aWFsU2l6ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mbHlvdXRXaWR0aCA8IHRoaXMuY29uZmlnLm1pbldpZHRoKSB7XG4gICAgICB0aGlzLmZseW91dFdpZHRoID0gdGhpcy5jb25maWcubWluV2lkdGg7XG4gICAgICB0aGlzLiNzZXRVc2VyRGF0YSgpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5mbHlvdXRXaWR0aCA+IHRoaXMuY29uZmlnLm1heFdpZHRoKSB7XG4gICAgICB0aGlzLmZseW91dFdpZHRoID0gdGhpcy5jb25maWcubWF4V2lkdGg7XG4gICAgICB0aGlzLiNzZXRVc2VyRGF0YSgpO1xuICAgIH1cblxuICAgIC8vIEVuc3VyZSBmbHlvdXQgZG9lcyBub3QgbG9hZCBsYXJnZXIgdGhhbiB0aGUgd2luZG93IGFuZCBpdHMgYnVmZmVyXG4gICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoIC0gdGhpcy5mbHlvdXRXaWR0aCA8IHRoaXMuI3dpbmRvd0J1ZmZlclNpemUpIHtcbiAgICAgIHRoaXMuZmx5b3V0V2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCAtIHRoaXMuI3dpbmRvd0J1ZmZlclNpemU7XG4gICAgICB0aGlzLiN4Q29vcmQgPSB0aGlzLiN3aW5kb3dCdWZmZXJTaXplO1xuICAgICAgdGhpcy4jc2V0VXNlckRhdGEoKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLiNmbHlvdXRNZWRpYVF1ZXJ5U2VydmljZS5pc1dpZHRoV2l0aGluQnJlYWtwaW9udChcbiAgICAgICAgd2luZG93LmlubmVyV2lkdGgsXG4gICAgICAgIFNreU1lZGlhQnJlYWtwb2ludHMueHNcbiAgICAgIClcbiAgICApIHtcbiAgICAgIHRoaXMuI3VwZGF0ZUJyZWFrcG9pbnRBbmRSZXNwb25zaXZlQ2xhc3Mod2luZG93LmlubmVyV2lkdGgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiN1cGRhdGVCcmVha3BvaW50QW5kUmVzcG9uc2l2ZUNsYXNzKHRoaXMuZmx5b3V0V2lkdGgpO1xuICAgIH1cblxuICAgIHRoaXMuI3NldEZ1bGxzY3JlZW4oKTtcbiAgfVxuXG4gICNnZXRTdHJpbmcoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIC8vIFRPRE86IE5lZWQgdG8gaW1wbGVtZW50IHRoZSBhc3luYyBgZ2V0U3RyaW5nYCBtZXRob2QgaW4gYSBicmVha2luZyBjaGFuZ2UuXG4gICAgcmV0dXJuIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nRm9yTG9jYWxlKHsgbG9jYWxlOiAnZW4tVVMnIH0sIGtleSk7XG4gIH1cblxuICAjaGFuZGxlUmVzaXplS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGV2ZW50LmtleSkge1xuICAgICAgY29uc3Qga2V5UHJlc3NlZCA9IGV2ZW50LmtleS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoJ2Fycm93JywgJycpO1xuICAgICAgc3dpdGNoIChrZXlQcmVzc2VkKSB7XG4gICAgICAgIGNhc2UgJ2VudGVyJzpcbiAgICAgICAgY2FzZSAnICc6XG4gICAgICAgICAgdGhpcy5yZXNpemVLZXlDb250cm9sQWN0aXZlID0gIXRoaXMucmVzaXplS2V5Q29udHJvbEFjdGl2ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAndGFiJzpcbiAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgIGlmICh0aGlzLnJlc2l6ZUtleUNvbnRyb2xBY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMucmVzaXplS2V5Q29udHJvbEFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgICAgaWYgKHRoaXMucmVzaXplS2V5Q29udHJvbEFjdGl2ZSkge1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgIGlmICh0aGlzLmZseW91dFdpZHRoIDwgdGhpcy5jb25maWcubWF4V2lkdGgpIHtcbiAgICAgICAgICAgICAgdGhpcy5mbHlvdXRXaWR0aCA9IE1hdGgubWluKFxuICAgICAgICAgICAgICAgIHRoaXMuZmx5b3V0V2lkdGggKyB0aGlzLndpZHRoU3RlcCxcbiAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5tYXhXaWR0aFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgICAgaWYgKHRoaXMucmVzaXplS2V5Q29udHJvbEFjdGl2ZSkge1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgIGlmICh0aGlzLmZseW91dFdpZHRoID4gdGhpcy5jb25maWcubWluV2lkdGgpIHtcbiAgICAgICAgICAgICAgdGhpcy5mbHlvdXRXaWR0aCA9IE1hdGgubWF4KFxuICAgICAgICAgICAgICAgIHRoaXMuZmx5b3V0V2lkdGggLSB0aGlzLndpZHRoU3RlcCxcbiAgICAgICAgICAgICAgICB0aGlzLmNvbmZpZy5taW5XaWR0aFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcblxuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKiBFeGVjdXRlcyBhIGZ1bmN0aW9uIHdoZW4gdGhlIHpvbmUgaXMgc3RhYmxlLiAqL1xuICAjZXhlY3V0ZU9uU3RhYmxlKGZuOiAoKSA9PiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jbmdab25lLmlzU3RhYmxlKSB7XG4gICAgICBmbigpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNuZ1pvbmUub25TdGFibGUucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoZm4pO1xuICAgIH1cbiAgfVxuXG4gICNpbml0Rm9jdXNUcmFwKCk6IHZvaWQge1xuICAgIHRoaXMuZW5hYmxlVHJhcEZvY3VzQXV0b0NhcHR1cmUgPSBmYWxzZTtcbiAgICB0aGlzLmVuYWJsZVRyYXBGb2N1cyA9IGZhbHNlO1xuICAgIC8vIFdhaXRpbmcgZm9yIHpvbmUgdG8gYmUgc3RhYmxlIHdpbGwgYXZvaWQgRXhwcmVzc2lvbkNoYW5nZUFmdGVyQ2hlY2tlZEVycm9yLlxuICAgIHRoaXMuI2V4ZWN1dGVPblN0YWJsZSgoKSA9PiB7XG4gICAgICB0aGlzLmVuYWJsZVRyYXBGb2N1c0F1dG9DYXB0dXJlID0gdHJ1ZTtcbiAgICAgIHRoaXMuZW5hYmxlVHJhcEZvY3VzID0gdHJ1ZTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInNreS1mbHlvdXRcIlxuICB0YWJpbmRleD1cIi0xXCJcbiAgW2F0dHIucm9sZV09XCJjb25maWc/LmFyaWFSb2xlID8gY29uZmlnLmFyaWFSb2xlIDogJ2RpYWxvZydcIlxuICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImNvbmZpZz8uYXJpYURlc2NyaWJlZEJ5XCJcbiAgW2F0dHIuYXJpYS1sYWJlbF09XCJjb25maWc/LmFyaWFMYWJlbFwiXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJjb25maWc/LmFyaWFMYWJlbGxlZEJ5XCJcbiAgW2F0dHIuYXJpYS1tb2RhbF09XCJcbiAgICBjb25maWc/LmFyaWFSb2xlID09PSAnZGlhbG9nJyB8fCAhY29uZmlnPy5hcmlhUm9sZSA/IHRydWUgOiBmYWxzZVxuICBcIlxuICBbYXR0ci5oaWRkZW5dPVwiIWluc3RhbmNlUmVhZHkgPyB0cnVlIDogdW5kZWZpbmVkXCJcbiAgW2lkXT1cImZseW91dElkXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdza3ktZmx5b3V0LWhpZGRlbic6ICFpc09wZW4gJiYgIWlzT3BlbmluZyxcbiAgICAnc2t5LWZseW91dC1mdWxsc2NyZWVuJzogaXNGdWxsc2NyZWVuXG4gIH1cIlxuICBbc2t5VGhlbWVDbGFzc109XCJ7XG4gICAgJ3NreS1zaGFkb3cnOiAnZGVmYXVsdCcsXG4gICAgJ3NreS1lbGV2YXRpb24tOCc6ICdtb2Rlcm4nXG4gIH1cIlxuICAoQGZseW91dFN0YXRlLmRvbmUpPVwiYW5pbWF0aW9uRG9uZSgkZXZlbnQpXCJcbiAgW0BmbHlvdXRTdGF0ZV09XCJnZXRBbmltYXRpb25TdGF0ZSgpXCJcbiAgW3N0eWxlLndpZHRoLnB4XT1cImZseW91dFdpZHRoXCJcbiAgI2ZseW91dFJlZlxuICBbY2RrVHJhcEZvY3VzXT1cImVuYWJsZVRyYXBGb2N1c1wiXG4gIFtjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZV09XCJlbmFibGVUcmFwRm9jdXNBdXRvQ2FwdHVyZVwiXG4+XG4gIDxkaXZcbiAgICBjbGFzcz1cInNreS1mbHlvdXQtaGVhZGVyXCJcbiAgICBbc2t5VGhlbWVDbGFzc109XCJ7XG4gICAgICAnc2t5LXBhZGRpbmctc3F1aXNoLWxhcmdlJzogJ2RlZmF1bHQnXG4gICAgfVwiXG4gICAgI2ZseW91dEhlYWRlclxuICA+XG4gICAgPGRpdiBjbGFzcz1cInNreS1mbHlvdXQtaGVhZGVyLWNvbnRlbnRcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKnNreVRoZW1lSWY9XCInbW9kZXJuJ1wiXG4gICAgICAgIGNsYXNzPVwic2t5LWJ0biBza3ktYnRuLWljb24tYm9yZGVybGVzcyBza3ktbWFyZ2luLWlubGluZS1zbSBza3ktZmx5b3V0LWhlYWRlci1ncmFiLWhhbmRsZVwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ3NreXV4X2ZseW91dF9yZXNpemVfaGFuZGxlJyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgICAgIChrZXlkb3duKT1cIm9uSGVhZGVyR3JhYkhhbmRsZUtleURvd24oJGV2ZW50KVwiXG4gICAgICAgIChtb3VzZWRvd24pPVwib25IZWFkZXJHcmFiSGFuZGxlTW91c2VEb3duKCRldmVudClcIlxuICAgICAgPlxuICAgICAgICA8c2t5LWljb24gaWNvbj1cInRpbGUtZHJhZ1wiIGljb25UeXBlPVwic2t5dXhcIiBzaXplPVwibGdcIj4gPC9za3ktaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8c2t5LWZseW91dC1pdGVyYXRvclxuICAgICAgICAqbmdJZj1cImNvbmZpZy5zaG93SXRlcmF0b3JcIlxuICAgICAgICBbbmV4dEJ1dHRvbkRpc2FibGVkXT1cImNvbmZpZy5pdGVyYXRvck5leHRCdXR0b25EaXNhYmxlZFwiXG4gICAgICAgIFtwcmV2aW91c0J1dHRvbkRpc2FibGVkXT1cImNvbmZpZy5pdGVyYXRvclByZXZpb3VzQnV0dG9uRGlzYWJsZWRcIlxuICAgICAgICAobmV4dEJ1dHRvbkNsaWNrKT1cIm9uSXRlcmF0b3JOZXh0QnV0dG9uQ2xpY2soKVwiXG4gICAgICAgIChwcmV2aW91c0J1dHRvbkNsaWNrKT1cIm9uSXRlcmF0b3JQcmV2aW91c0J1dHRvbkNsaWNrKClcIlxuICAgICAgPlxuICAgICAgPC9za3ktZmx5b3V0LWl0ZXJhdG9yPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJza3ktZmx5b3V0LWhlYWRlci1idXR0b25zXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicGVybWFsaW5rVGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwicHJpbWFyeUFjdGlvblRlbXBsYXRlXCI+IDwvbmctY29udGFpbmVyPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWZseW91dC1idG4tY2xvc2Ugc2t5LWxhYmVsLWljb24tdGhlbWUtZGVmYXVsdFwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidza3l1eF9mbHlvdXRfY2xvc2UnIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICAgICAgW3NreVRoZW1lQ2xhc3NdPVwie1xuICAgICAgICAgICdza3ktYnRuLWRlZmF1bHQnOiAnZGVmYXVsdCcsXG4gICAgICAgICAgJ3NreS1idG4taWNvbi1ib3JkZXJsZXNzJzogJ21vZGVybidcbiAgICAgICAgfVwiXG4gICAgICAgIChjbGljayk9XCJjbG9zZSgpXCJcbiAgICAgID5cbiAgICAgICAgPHNreS1pY29uICpza3lUaGVtZUlmPVwiJ2RlZmF1bHQnXCIgaWNvbj1cImNsb3NlXCI+IDwvc2t5LWljb24+XG4gICAgICAgIDxza3ktaWNvblxuICAgICAgICAgICpza3lUaGVtZUlmPVwiJ21vZGVybidcIlxuICAgICAgICAgIGljb249XCJjbG9zZVwiXG4gICAgICAgICAgaWNvblR5cGU9XCJza3l1eFwiXG4gICAgICAgICAgc2l6ZT1cImxnXCJcbiAgICAgICAgPlxuICAgICAgICA8L3NreS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwic2t5LWZseW91dC1jb250ZW50XCI+XG4gICAgPGRpdiAjdGFyZ2V0PjwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2t5LWZseW91dC1yZXNpemUtaGFuZGxlXCJcbiAgICByb2xlPVwic2VwYXJhdG9yXCJcbiAgICB0YWJpbmRleD1cIjBcIlxuICAgIHR5cGU9XCJyYW5nZVwiXG4gICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJmbHlvdXRJZFwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCInc2t5dXhfZmx5b3V0X3Jlc2l6ZV9oYW5kbGUnIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICBbYXR0ci5hcmlhLXZhbHVlbWF4XT1cImNvbmZpZy5tYXhXaWR0aFwiXG4gICAgW2F0dHIuYXJpYS12YWx1ZW1pbl09XCJjb25maWcubWluV2lkdGhcIlxuICAgIFthdHRyLmFyaWEtdmFsdWVub3ddPVwiZmx5b3V0V2lkdGhcIlxuICAgIChrZXlkb3duKT1cIm9uUmVzaXplSGFuZGxlS2V5RG93bigkZXZlbnQpXCJcbiAgICAobW91c2Vkb3duKT1cIm9uUmVzaXplSGFuZGxlTW91c2VEb3duKCRldmVudClcIlxuICA+PC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNwZXJtYWxpbmtUZW1wbGF0ZT5cbiAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cInBlcm1hbGlua1wiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJwZXJtYWxpbmsudXJsXCI+XG4gICAgICA8YVxuICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWZseW91dC1idG4tcGVybWFsaW5rIHNreS1tYXJnaW4taW5saW5lLWRlZmF1bHRcIlxuICAgICAgICBbc2t5SHJlZl09XCJwZXJtYWxpbmsudXJsXCJcbiAgICAgICAgW3NreVRoZW1lQ2xhc3NdPVwie1xuICAgICAgICAgICdza3ktYnRuLWRlZmF1bHQnOiAnZGVmYXVsdCcsXG4gICAgICAgICAgJ3NreS1idG4tYm9yZGVybGVzcyc6ICdtb2Rlcm4nXG4gICAgICAgIH1cIlxuICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICA+XG4gICAgICAgIHt7IHBlcm1hbGlua0xhYmVsIH19XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwicGVybWFsaW5rLnJvdXRlXCI+XG4gICAgICA8YVxuICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWZseW91dC1idG4tcGVybWFsaW5rIHNreS1tYXJnaW4taW5saW5lLWRlZmF1bHRcIlxuICAgICAgICBbcm91dGVyTGlua109XCJwZXJtYWxpbmsucm91dGUuY29tbWFuZHNcIlxuICAgICAgICBbZnJhZ21lbnRdPVwicGVybWFsaW5rLnJvdXRlLmV4dHJhcz8uZnJhZ21lbnRcIlxuICAgICAgICBbc2t5VGhlbWVDbGFzc109XCJ7XG4gICAgICAgICAgJ3NreS1idG4tZGVmYXVsdCc6ICdkZWZhdWx0JyxcbiAgICAgICAgICAnc2t5LWJ0bi1ib3JkZXJsZXNzJzogJ21vZGVybidcbiAgICAgICAgfVwiXG4gICAgICAgIFtxdWVyeVBhcmFtc109XCJwZXJtYWxpbmsucm91dGUuZXh0cmFzPy5xdWVyeVBhcmFtc1wiXG4gICAgICAgIFtxdWVyeVBhcmFtc0hhbmRsaW5nXT1cInBlcm1hbGluay5yb3V0ZS5leHRyYXM/LnF1ZXJ5UGFyYW1zSGFuZGxpbmdcIlxuICAgICAgICBbc3RhdGVdPVwicGVybWFsaW5rLnJvdXRlLmV4dHJhcz8uc3RhdGVcIlxuICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICA+XG4gICAgICAgIHt7IHBlcm1hbGlua0xhYmVsIH19XG4gICAgICA8L2E+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcHJpbWFyeUFjdGlvblRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgW25nSWZdPVwicHJpbWFyeUFjdGlvbiAmJiBwcmltYXJ5QWN0aW9uLmNhbGxiYWNrXCI+XG4gICAgPGJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1kZWZhdWx0IHNreS1mbHlvdXQtYnRuLXByaW1hcnktYWN0aW9uIHNreS1tYXJnaW4taW5saW5lLWRlZmF1bHRcIlxuICAgICAgKGNsaWNrKT1cImludm9rZVByaW1hcnlBY3Rpb24oKVwiXG4gICAgPlxuICAgICAge3sgcHJpbWFyeUFjdGlvbkxhYmVsIH19XG4gICAgPC9idXR0b24+XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -13,8 +13,8 @@ import { SkyFlyoutComponent } from './flyout.component';
|
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
export class SkyFlyoutModule {
|
|
15
15
|
}
|
|
16
|
-
SkyFlyoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
17
|
-
SkyFlyoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.
|
|
16
|
+
SkyFlyoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17
|
+
SkyFlyoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutModule, declarations: [SkyFlyoutComponent, SkyFlyoutIteratorComponent], imports: [A11yModule,
|
|
18
18
|
CommonModule,
|
|
19
19
|
FormsModule,
|
|
20
20
|
RouterModule,
|
|
@@ -23,7 +23,7 @@ SkyFlyoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
|
|
|
23
23
|
SkyFlyoutResourcesModule,
|
|
24
24
|
SkyThemeModule,
|
|
25
25
|
SkyHrefModule], exports: [SkyFlyoutComponent] });
|
|
26
|
-
SkyFlyoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.
|
|
26
|
+
SkyFlyoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutModule, imports: [A11yModule,
|
|
27
27
|
CommonModule,
|
|
28
28
|
FormsModule,
|
|
29
29
|
RouterModule,
|
|
@@ -32,7 +32,7 @@ SkyFlyoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
|
|
|
32
32
|
SkyFlyoutResourcesModule,
|
|
33
33
|
SkyThemeModule,
|
|
34
34
|
SkyHrefModule] });
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutModule, decorators: [{
|
|
36
36
|
type: NgModule,
|
|
37
37
|
args: [{
|
|
38
38
|
declarations: [SkyFlyoutComponent, SkyFlyoutIteratorComponent],
|
|
@@ -50,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
50
50
|
exports: [SkyFlyoutComponent],
|
|
51
51
|
}]
|
|
52
52
|
}] });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mbHlvdXQvc3JjL2xpYi9tb2R1bGVzL2ZseW91dC9mbHlvdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFpQnhELE1BQU0sT0FBTyxlQUFlOzs2R0FBZixlQUFlOzhHQUFmLGVBQWUsaUJBZFgsa0JBQWtCLEVBQUUsMEJBQTBCLGFBRTNELFVBQVU7UUFDVixZQUFZO1FBQ1osV0FBVztRQUNYLFlBQVk7UUFDWixhQUFhO1FBQ2IsYUFBYTtRQUNiLHdCQUF3QjtRQUN4QixjQUFjO1FBQ2QsYUFBYSxhQUVMLGtCQUFrQjs4R0FFakIsZUFBZSxZQVp4QixVQUFVO1FBQ1YsWUFBWTtRQUNaLFdBQVc7UUFDWCxZQUFZO1FBQ1osYUFBYTtRQUNiLGFBQWE7UUFDYix3QkFBd0I7UUFDeEIsY0FBYztRQUNkLGFBQWE7NEZBSUosZUFBZTtrQkFmM0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSwwQkFBMEIsQ0FBQztvQkFDOUQsT0FBTyxFQUFFO3dCQUNQLFVBQVU7d0JBQ1YsWUFBWTt3QkFDWixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLHdCQUF3Qjt3QkFDeEIsY0FBYzt3QkFDZCxhQUFhO3FCQUNkO29CQUNELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUM5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEExMXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFNreUkxOG5Nb2R1bGUgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5pbXBvcnQgeyBTa3lJY29uTW9kdWxlIH0gZnJvbSAnQHNreXV4L2luZGljYXRvcnMnO1xuaW1wb3J0IHsgU2t5SHJlZk1vZHVsZSB9IGZyb20gJ0Bza3l1eC9yb3V0ZXInO1xuaW1wb3J0IHsgU2t5VGhlbWVNb2R1bGUgfSBmcm9tICdAc2t5dXgvdGhlbWUnO1xuXG5pbXBvcnQgeyBTa3lGbHlvdXRSZXNvdXJjZXNNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2t5LWZseW91dC1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5Rmx5b3V0SXRlcmF0b3JDb21wb25lbnQgfSBmcm9tICcuL2ZseW91dC1pdGVyYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9mbHlvdXQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU2t5Rmx5b3V0Q29tcG9uZW50LCBTa3lGbHlvdXRJdGVyYXRvckNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBBMTF5TW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgU2t5STE4bk1vZHVsZSxcbiAgICBTa3lJY29uTW9kdWxlLFxuICAgIFNreUZseW91dFJlc291cmNlc01vZHVsZSxcbiAgICBTa3lUaGVtZU1vZHVsZSxcbiAgICBTa3lIcmVmTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbU2t5Rmx5b3V0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5Rmx5b3V0TW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
var _SkyFlyoutService_instances, _SkyFlyoutService_host, _SkyFlyoutService_removeAfterClosed, _SkyFlyoutService_isOpening, _SkyFlyoutService_ngUnsubscribe, _SkyFlyoutService_coreAdapter, _SkyFlyoutService_windowRef, _SkyFlyoutService_dynamicComponentService, _SkyFlyoutService_router, _SkyFlyoutService_ngZone, _SkyFlyoutService_createHostComponent, _SkyFlyoutService_removeHostComponent, _SkyFlyoutService_addListeners, _SkyFlyoutService_removeListners;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
|
-
import { Injectable,
|
|
4
|
-
import { NavigationStart
|
|
5
|
-
import { SkyAppWindowRef, SkyCoreAdapterService, SkyDynamicComponentService, } from '@skyux/core';
|
|
3
|
+
import { Injectable, } from '@angular/core';
|
|
4
|
+
import { NavigationStart } from '@angular/router';
|
|
6
5
|
import { Subject, fromEvent } from 'rxjs';
|
|
7
6
|
import { take, takeUntil, takeWhile } from 'rxjs/operators';
|
|
8
7
|
import { SkyFlyoutComponent } from './flyout.component';
|
|
@@ -157,12 +156,12 @@ _SkyFlyoutService_host = new WeakMap(), _SkyFlyoutService_removeAfterClosed = ne
|
|
|
157
156
|
__classPrivateFieldGet(this, _SkyFlyoutService_ngUnsubscribe, "f").unsubscribe();
|
|
158
157
|
__classPrivateFieldSet(this, _SkyFlyoutService_ngUnsubscribe, new Subject(), "f");
|
|
159
158
|
};
|
|
160
|
-
SkyFlyoutService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
161
|
-
SkyFlyoutService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.
|
|
162
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
159
|
+
SkyFlyoutService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutService, deps: [{ token: i1.SkyCoreAdapterService }, { token: i1.SkyAppWindowRef }, { token: i1.SkyDynamicComponentService }, { token: i2.Router }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
160
|
+
SkyFlyoutService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutService, providedIn: 'any' });
|
|
161
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImport: i0, type: SkyFlyoutService, decorators: [{
|
|
163
162
|
type: Injectable,
|
|
164
163
|
args: [{
|
|
165
164
|
providedIn: 'any',
|
|
166
165
|
}]
|
|
167
166
|
}], ctorParameters: function () { return [{ type: i1.SkyCoreAdapterService }, { type: i1.SkyAppWindowRef }, { type: i1.SkyDynamicComponentService }, { type: i2.Router }, { type: i0.NgZone }]; } });
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZmx5b3V0L3NyYy9saWIvbW9kdWxlcy9mbHlvdXQvZmx5b3V0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBRUwsVUFBVSxFQUNWLE1BQU0sR0FHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFDTCxlQUFlLEVBQ2YscUJBQXFCLEVBQ3JCLDBCQUEwQixHQUMzQixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUl4RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQUVuRTs7OztHQUlHO0FBSUgsTUFBTSxPQUFPLGdCQUFnQjtJQVkzQixZQUNFLFdBQWtDLEVBQ2xDLFNBQTBCLEVBQzFCLHVCQUFtRCxFQUNuRCxNQUFjLEVBQ2QsTUFBYzs7UUFoQmhCLHlDQUFvRDtRQUNwRCw4Q0FBcUIsS0FBSyxFQUFDO1FBQzNCLHNDQUFhLEtBQUssRUFBQztRQUNuQiwwQ0FBaUIsSUFBSSxPQUFPLEVBQVcsRUFBQztRQUV4QyxnREFBb0M7UUFDcEMsOENBQTRCO1FBQzVCLDREQUFxRDtRQUNyRCwyQ0FBZ0I7UUFDaEIsMkNBQWdCO1FBU2QsdUJBQUEsSUFBSSxpQ0FBZ0IsV0FBVyxNQUFBLENBQUM7UUFDaEMsdUJBQUEsSUFBSSwrQkFBYyxTQUFTLE1BQUEsQ0FBQztRQUM1Qix1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bnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50UmVmLFxuICBJbmplY3RhYmxlLFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBTa3lBcHBXaW5kb3dSZWYsXG4gIFNreUNvcmVBZGFwdGVyU2VydmljZSxcbiAgU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB0YWtlVW50aWwsIHRha2VXaGlsZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5Rmx5b3V0SW5zdGFuY2UgfSBmcm9tICcuL2ZseW91dC1pbnN0YW5jZSc7XG5pbXBvcnQgeyBTa3lGbHlvdXRDb21wb25lbnQgfSBmcm9tICcuL2ZseW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0Q2xvc2VBcmdzIH0gZnJvbSAnLi90eXBlcy9mbHlvdXQtY2xvc2UtYXJncyc7XG5pbXBvcnQgeyBTa3lGbHlvdXRDb25maWcgfSBmcm9tICcuL3R5cGVzL2ZseW91dC1jb25maWcnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0TWVzc2FnZSB9IGZyb20gJy4vdHlwZXMvZmx5b3V0LW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0TWVzc2FnZVR5cGUgfSBmcm9tICcuL3R5cGVzL2ZseW91dC1tZXNzYWdlLXR5cGUnO1xuXG4vKipcbiAqIExhdW5jaGVzIGZseW91dHMgYW5kIHByb3ZpZGVzIGEgY29tbW9uIGxvb2sgYW5kIGZlZWwuXG4gKiBUaGlzIHNlcnZpY2UgZHluYW1pY2FsbHkgZ2VuZXJhdGVzIHRoZSBmbHlvdXQgY29tcG9uZW50IGFuZCBhcHBlbmRzIGl0IGRpcmVjdGx5IHRvIHRoZVxuICogZG9jdW1lbnQncyBgYm9keWAgZWxlbWVudC4gVGhlIGBTa3lGbHlvdXRJbnN0YW5jZWAgY2xhc3Mgd2F0Y2hlcyBmb3IgYW5kIHRyaWdnZXJzIGZseW91dCBldmVudHMuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ2FueScsXG59KVxuZXhwb3J0IGNsYXNzIFNreUZseW91dFNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAjaG9zdDogQ29tcG9uZW50UmVmPFNreUZseW91dENvbXBvbmVudD4gfCB1bmRlZmluZWQ7XG4gICNyZW1vdmVBZnRlckNsb3NlZCA9IGZhbHNlO1xuICAjaXNPcGVuaW5nID0gZmFsc2U7XG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICAjY29yZUFkYXB0ZXI6IFNreUNvcmVBZGFwdGVyU2VydmljZTtcbiAgI3dpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmO1xuICAjZHluYW1pY0NvbXBvbmVudFNlcnZpY2U6IFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlO1xuICAjcm91dGVyOiBSb3V0ZXI7XG4gICNuZ1pvbmU6IE5nWm9uZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBjb3JlQWRhcHRlcjogU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlLFxuICAgIHdpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmLFxuICAgIGR5bmFtaWNDb21wb25lbnRTZXJ2aWNlOiBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSxcbiAgICByb3V0ZXI6IFJvdXRlcixcbiAgICBuZ1pvbmU6IE5nWm9uZVxuICApIHtcbiAgICB0aGlzLiNjb3JlQWRhcHRlciA9IGNvcmVBZGFwdGVyO1xuICAgIHRoaXMuI3dpbmRvd1JlZiA9IHdpbmRvd1JlZjtcbiAgICB0aGlzLiNkeW5hbWljQ29tcG9uZW50U2VydmljZSA9IGR5bmFtaWNDb21wb25lbnRTZXJ2aWNlO1xuICAgIHRoaXMuI3JvdXRlciA9IHJvdXRlcjtcbiAgICB0aGlzLiNuZ1pvbmUgPSBuZ1pvbmU7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jcmVtb3ZlTGlzdG5lcnMoKTtcbiAgICBpZiAodGhpcy4jaG9zdCkge1xuICAgICAgdGhpcy4jcmVtb3ZlSG9zdENvbXBvbmVudCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIGZseW91dC4gVGhpcyBtZXRob2QgYWxzbyByZW1vdmVzIHRoZSBmbHlvdXQncyBIVE1MIGVsZW1lbnRzIGZyb20gdGhlIERPTS5cbiAgICogQHBhcmFtIGFyZ3MgQXJndW1lbnRzIHVzZWQgd2hlbiBjbG9zaW5nIHRoZSBmbHlvdXQuXG4gICAqL1xuICBwdWJsaWMgY2xvc2UoYXJncz86IFNreUZseW91dENsb3NlQXJncyk6IHZvaWQge1xuICAgIGlmICh0aGlzLiNob3N0ICYmICF0aGlzLiNpc09wZW5pbmcpIHtcbiAgICAgIHRoaXMuI2hvc3QuaW5zdGFuY2UubWVzc2FnZVN0cmVhbS5uZXh0KHtcbiAgICAgICAgdHlwZTogU2t5Rmx5b3V0TWVzc2FnZVR5cGUuQ2xvc2UsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBpZ25vcmVCZWZvcmVDbG9zZTogYXJncyA/IGFyZ3MuaWdub3JlQmVmb3JlQ2xvc2UgOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyBhIGZseW91dCBhbmQgZGlzcGxheXMgdGhlIHNwZWNpZmllZCBjb21wb25lbnQuXG4gICAqIEBwYXJhbSBjb21wb25lbnQgU3BlY2lmaWVzIHRoZSBjb21wb25lbnQgdG8gcmVuZGVyLlxuICAgKiBAcGFyYW0gY29uZmlnIFNwZWNpZmllcyB0aGUgZmx5b3V0IGNvbmZpZ3VyYXRpb24gcGFzc2VkIHRvIHRoZSBzcGVjaWZpZWQgY29tcG9uZW50J3MgY29uc3RydWN0b3IuXG4gICAqL1xuICBwdWJsaWMgb3BlbjxUPihcbiAgICBjb21wb25lbnQ6IFR5cGU8VD4sXG4gICAgY29uZmlnPzogU2t5Rmx5b3V0Q29uZmlnXG4gICk6IFNreUZseW91dEluc3RhbmNlPFQ+IHtcbiAgICAvLyBpc09wZW5pbmcgZmxhZyB3aWxsIHByZXZlbnQgY2xvc2UoKSBmcm9tIGZpcmluZyB3aGVuIG9wZW4oKSBpcyBhbHNvIGZpcmVkLlxuICAgIHRoaXMuI2lzT3BlbmluZyA9IHRydWU7XG4gICAgdGhpcy4jd2luZG93UmVmLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuI2lzT3BlbmluZyA9IGZhbHNlO1xuICAgIH0pO1xuXG4gICAgaWYgKCF0aGlzLiNob3N0KSB7XG4gICAgICB0aGlzLiNob3N0ID0gdGhpcy4jY3JlYXRlSG9zdENvbXBvbmVudCgpO1xuXG4gICAgICB0aGlzLiNyb3V0ZXIuZXZlbnRzXG4gICAgICAgIC5waXBlKHRha2VXaGlsZSgoKSA9PiB0aGlzLiNob3N0ICE9PSB1bmRlZmluZWQpKVxuICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuXG4gICAgICAgICAgICAvLyBTYW5pdHkgY2hlY2sgLSBpZiB0aGUgaG9zdCBzdGlsbCBleGlzdHMgYWZ0ZXIgYW5pbWF0aW9ucyBzaG91bGQgaGF2ZSBjb21wbGV0ZWQgLSByZW1vdmUgaG9zdFxuICAgICAgICAgICAgdGhpcy4jbmdab25lLm9uU3RhYmxlLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgaWYgKHRoaXMuI2hvc3QpIHtcbiAgICAgICAgICAgICAgICB0aGlzLiNyZW1vdmVIb3N0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgZmx5b3V0ID0gdGhpcy4jaG9zdC5pbnN0YW5jZS5hdHRhY2goY29tcG9uZW50LCBjb25maWcpO1xuXG4gICAgdGhpcy4jYWRkTGlzdGVuZXJzKGZseW91dCk7XG5cbiAgICByZXR1cm4gZmx5b3V0O1xuICB9XG5cbiAgI2NyZWF0ZUhvc3RDb21wb25lbnQoKTogQ29tcG9uZW50UmVmPFNreUZseW91dENvbXBvbmVudD4ge1xuICAgIHRoaXMuI2hvc3QgPVxuICAgICAgdGhpcy4jZHluYW1pY0NvbXBvbmVudFNlcnZpY2UuY3JlYXRlQ29tcG9uZW50KFNreUZseW91dENvbXBvbmVudCk7XG4gICAgcmV0dXJuIHRoaXMuI2hvc3Q7XG4gIH1cblxuICAjcmVtb3ZlSG9zdENvbXBvbmVudCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jaG9zdCkge1xuICAgICAgdGhpcy4jZHluYW1pY0NvbXBvbmVudFNlcnZpY2UucmVtb3ZlQ29tcG9uZW50KHRoaXMuI2hvc3QpO1xuICAgICAgdGhpcy4jaG9zdCA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICAjYWRkTGlzdGVuZXJzPFQ+KGZseW91dDogU2t5Rmx5b3V0SW5zdGFuY2U8VD4pOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLiNob3N0KSB7XG4gICAgICBjb25zdCBmbHlvdXRJbnN0YW5jZSA9IHRoaXMuI2hvc3QuaW5zdGFuY2U7XG5cbiAgICAgIGxldCBkb0Nsb3NlID0gZmFsc2U7XG5cbiAgICAgIC8qKlxuICAgICAgICogSGFuZGxlcyB3aGVuIHRvIGNsb3NlIGEgZmx5b3V0LlxuICAgICAgICogTm90ZTogV2UncmUgdXNpbmcgYG1vdXNldXBgIGluIG9yZGVyIHRvIGNhcHR1cmUgdGhlIHBhcmVudCBvZiBjZXJ0YWluIHRhcmdldHMgdGhhdCB3aWxsIGJlXG4gICAgICAgKiBkZWxldGVkIGltbWVkaWF0ZWx5IGFmdGVyIGJlaW5nIGNsaWNrZWQuIElmIHdlIHVzZSBgY2xpY2tgLCB0aGUgZXZlbnQgaXMgZmlyZWQgYWZ0ZXIgdGhlXG4gICAgICAgKiBlbGVtZW50IGlzIHJlbW92ZWQgZnJvbSB0aGUgRE9NIG1ha2luZyBpdCBpbXBvc3NpYmxlIHRvIGNoZWNrIHRoZSBwYXJlbnQncyB6LWluZGV4XG4gICAgICAgKiByZWxhdGl2ZSB0byB0aGUgZmx5b3V0J3MgY29udGFpbmVyLlxuICAgICAgICovXG4gICAgICBmcm9tRXZlbnQoZG9jdW1lbnQsICdtb3VzZXVwJylcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKChldmVudDogRXZlbnQpID0+IHtcbiAgICAgICAgICBkb0Nsb3NlID0gZmFsc2U7XG5cbiAgICAgICAgICBpZiAodGhpcy4jaG9zdD8uaW5zdGFuY2UuaXNEcmFnZ2luZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChmbHlvdXRJbnN0YW5jZS5mbHlvdXRSZWY/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGlzQWJvdmUgPVxuICAgICAgICAgICAgZXZlbnQudGFyZ2V0ID09PSBkb2N1bWVudCB8fCAhZXZlbnQudGFyZ2V0XG4gICAgICAgICAgICAgID8gZmFsc2VcbiAgICAgICAgICAgICAgOiB0aGlzLiNjb3JlQWRhcHRlci5pc1RhcmdldEFib3ZlRWxlbWVudChcbiAgICAgICAgICAgICAgICAgIGV2ZW50LnRhcmdldCxcbiAgICAgICAgICAgICAgICAgIGZseW91dEluc3RhbmNlLmZseW91dFJlZj8ubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgIGlmICghaXNBYm92ZSkge1xuICAgICAgICAgICAgZG9DbG9zZSA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgLyoqXG4gICAgICAgKiBDaGVjayBpZiB3ZSBzaG91bGQgY2xvc2UgdGhlIGZseW91dCBzcGVjaWZpY2FsbHkgb24gYSBgY2xpY2tgIGV2ZW50IHNvIHRoYXQgd2UgY2FuIGtlZXBcbiAgICAgICAqIGl0IG9wZW4gd2hlbiBjb25zdW1lcnMgZmlyZSBhbm90aGVyIGBjbGlja2AgZXZlbnQgb24gYSB0cmlnZ2VyIGJ1dHRvbi4gU2luY2UgdGhlIGNvbnN1bWVyXG4gICAgICAgKiB3aWxsIGxpa2VseSB1c2UgYSBgY2xpY2tgIGV2ZW50IHRvIG9wZW4gdGhlIGZseW91dCwgd2Ugd2FudCB0byB3YWl0IGZvciB0aGF0IGV2ZW50IHRvIGZpcmVcbiAgICAgICAqIGJlZm9yZSBkZXRlcm1pbmluZyBpZiB0aGUgZmx5b3V0IHNob3VsZCBiZSBjbG9zZWQuXG4gICAgICAgKi9cbiAgICAgIGZyb21FdmVudChkb2N1bWVudCwgJ2NsaWNrJylcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBpZiAoZG9DbG9zZSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgIHRoaXMuI3JlbW92ZUFmdGVyQ2xvc2VkID0gZmFsc2U7XG4gICAgICBmbHlvdXRJbnN0YW5jZS5tZXNzYWdlU3RyZWFtXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgobWVzc2FnZTogU2t5Rmx5b3V0TWVzc2FnZSkgPT4ge1xuICAgICAgICAgIGlmIChtZXNzYWdlLnR5cGUgPT09IFNreUZseW91dE1lc3NhZ2VUeXBlLkNsb3NlKSB7XG4gICAgICAgICAgICB0aGlzLiNyZW1vdmVBZnRlckNsb3NlZCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLiNpc09wZW5pbmcgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBmbHlvdXQuY2xvc2VkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy4jcmVtb3ZlTGlzdG5lcnMoKTtcbiAgICAgICAgaWYgKHRoaXMuI3JlbW92ZUFmdGVyQ2xvc2VkKSB7XG4gICAgICAgICAgdGhpcy4jcmVtb3ZlSG9zdENvbXBvbmVudCgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAjcmVtb3ZlTGlzdG5lcnMoKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KHRydWUpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgfVxufVxuIl19
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZmx5b3V0L3NyYy9saWIvbW9kdWxlcy9mbHlvdXQvZmx5b3V0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBRUwsVUFBVSxHQUlYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQU8xRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUl4RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQUVuRTs7OztHQUlHO0FBSUgsTUFBTSxPQUFPLGdCQUFnQjtJQVkzQixZQUNFLFdBQWtDLEVBQ2xDLFNBQTBCLEVBQzFCLHVCQUFtRCxFQUNuRCxNQUFjLEVBQ2QsTUFBYzs7UUFoQmhCLHlDQUFvRDtRQUNwRCw4Q0FBcUIsS0FBSyxFQUFDO1FBQzNCLHNDQUFhLEtBQUssRUFBQztRQUNuQiwwQ0FBaUIsSUFBSSxPQUFPLEVBQVcsRUFBQztRQUV4QyxnREFBb0M7UUFDcEMsOENBQTRCO1FBQzVCLDREQUFxRDtRQUNyRCwyQ0FBZ0I7UUFDaEIsMkNBQWdCO1FBU2QsdUJBQUEsSUFBSSxpQ0FBZ0IsV0FBVyxNQUFBLENBQUM7UUFDaEMsdUJBQUEsSUFBSSwrQkFBYyxTQUFTLE1BQUEsQ0FBQztRQUM1Qix1QkFBQSxJQUFJLDZDQUE0Qix1QkFBdUIsTUFBQSxDQUFDO1FBQ3hELHVCQUFBLElBQUksNEJBQVcsTUFBTSxNQUFBLENBQUM7UUFDdEIsdUJBQUEsSUFB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LElBQUksdUNBQXNCLEtBQUssTUFBQSxDQUFDO1FBQ2hDLGNBQWMsQ0FBQyxhQUFhO2FBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQUEsSUFBSSx1Q0FBZSxDQUFDLENBQUM7YUFDcEMsU0FBUyxDQUFDLENBQUMsT0FBeUIsRUFBRSxFQUFFO1lBQ3ZDLElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUU7Z0JBQy9DLHVCQUFBLElBQUksdUNBQXNCLElBQUksTUFBQSxDQUFDO2dCQUMvQix1QkFBQSxJQUFJLCtCQUFjLEtBQUssTUFBQSxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFTCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pDLHVCQUFBLElBQUkscUVBQWdCLE1BQXBCLElBQUksQ0FBa0IsQ0FBQztZQUN2QixJQUFJLHVCQUFBLElBQUksMkNBQW1CLEVBQUU7Z0JBQzNCLHVCQUFBLElBQUksMEVBQXFCLE1BQXpCLElBQUksQ0FBdUIsQ0FBQzthQUM3QjtRQUNILENBQUMsQ0FBQyxDQUFDO0tBQ0o7QUFDSCxDQUFDO0lBR0MsdUJBQUEsSUFBSSx1Q0FBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQix1QkFBQSxJQUFJLHVDQUFlLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsdUJBQUEsSUFBSSxtQ0FBa0IsSUFBSSxPQUFPLEVBQVcsTUFBQSxDQUFDO0FBQy9DLENBQUM7OEdBcExVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCLGNBRmYsS0FBSzs0RkFFTixnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLEtBQUs7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50UmVmLFxuICBJbmplY3RhYmxlLFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBTa3lBcHBXaW5kb3dSZWYsXG4gIFNreUNvcmVBZGFwdGVyU2VydmljZSxcbiAgU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB0YWtlVW50aWwsIHRha2VXaGlsZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5Rmx5b3V0SW5zdGFuY2UgfSBmcm9tICcuL2ZseW91dC1pbnN0YW5jZSc7XG5pbXBvcnQgeyBTa3lGbHlvdXRDb21wb25lbnQgfSBmcm9tICcuL2ZseW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0Q2xvc2VBcmdzIH0gZnJvbSAnLi90eXBlcy9mbHlvdXQtY2xvc2UtYXJncyc7XG5pbXBvcnQgeyBTa3lGbHlvdXRDb25maWcgfSBmcm9tICcuL3R5cGVzL2ZseW91dC1jb25maWcnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0TWVzc2FnZSB9IGZyb20gJy4vdHlwZXMvZmx5b3V0LW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5Rmx5b3V0TWVzc2FnZVR5cGUgfSBmcm9tICcuL3R5cGVzL2ZseW91dC1tZXNzYWdlLXR5cGUnO1xuXG4vKipcbiAqIExhdW5jaGVzIGZseW91dHMgYW5kIHByb3ZpZGVzIGEgY29tbW9uIGxvb2sgYW5kIGZlZWwuXG4gKiBUaGlzIHNlcnZpY2UgZHluYW1pY2FsbHkgZ2VuZXJhdGVzIHRoZSBmbHlvdXQgY29tcG9uZW50IGFuZCBhcHBlbmRzIGl0IGRpcmVjdGx5IHRvIHRoZVxuICogZG9jdW1lbnQncyBgYm9keWAgZWxlbWVudC4gVGhlIGBTa3lGbHlvdXRJbnN0YW5jZWAgY2xhc3Mgd2F0Y2hlcyBmb3IgYW5kIHRyaWdnZXJzIGZseW91dCBldmVudHMuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ2FueScsXG59KVxuZXhwb3J0IGNsYXNzIFNreUZseW91dFNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAjaG9zdDogQ29tcG9uZW50UmVmPFNreUZseW91dENvbXBvbmVudD4gfCB1bmRlZmluZWQ7XG4gICNyZW1vdmVBZnRlckNsb3NlZCA9IGZhbHNlO1xuICAjaXNPcGVuaW5nID0gZmFsc2U7XG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICAjY29yZUFkYXB0ZXI6IFNreUNvcmVBZGFwdGVyU2VydmljZTtcbiAgI3dpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmO1xuICAjZHluYW1pY0NvbXBvbmVudFNlcnZpY2U6IFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlO1xuICAjcm91dGVyOiBSb3V0ZXI7XG4gICNuZ1pvbmU6IE5nWm9uZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBjb3JlQWRhcHRlcjogU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlLFxuICAgIHdpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmLFxuICAgIGR5bmFtaWNDb21wb25lbnRTZXJ2aWNlOiBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSxcbiAgICByb3V0ZXI6IFJvdXRlcixcbiAgICBuZ1pvbmU6IE5nWm9uZVxuICApIHtcbiAgICB0aGlzLiNjb3JlQWRhcHRlciA9IGNvcmVBZGFwdGVyO1xuICAgIHRoaXMuI3dpbmRvd1JlZiA9IHdpbmRvd1JlZjtcbiAgICB0aGlzLiNkeW5hbWljQ29tcG9uZW50U2VydmljZSA9IGR5bmFtaWNDb21wb25lbnRTZXJ2aWNlO1xuICAgIHRoaXMuI3JvdXRlciA9IHJvdXRlcjtcbiAgICB0aGlzLiNuZ1pvbmUgPSBuZ1pvbmU7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jcmVtb3ZlTGlzdG5lcnMoKTtcbiAgICBpZiAodGhpcy4jaG9zdCkge1xuICAgICAgdGhpcy4jcmVtb3ZlSG9zdENvbXBvbmVudCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIGZseW91dC4gVGhpcyBtZXRob2QgYWxzbyByZW1vdmVzIHRoZSBmbHlvdXQncyBIVE1MIGVsZW1lbnRzIGZyb20gdGhlIERPTS5cbiAgICogQHBhcmFtIGFyZ3MgQXJndW1lbnRzIHVzZWQgd2hlbiBjbG9zaW5nIHRoZSBmbHlvdXQuXG4gICAqL1xuICBwdWJsaWMgY2xvc2UoYXJncz86IFNreUZseW91dENsb3NlQXJncyk6IHZvaWQge1xuICAgIGlmICh0aGlzLiNob3N0ICYmICF0aGlzLiNpc09wZW5pbmcpIHtcbiAgICAgIHRoaXMuI2hvc3QuaW5zdGFuY2UubWVzc2FnZVN0cmVhbS5uZXh0KHtcbiAgICAgICAgdHlwZTogU2t5Rmx5b3V0TWVzc2FnZVR5cGUuQ2xvc2UsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBpZ25vcmVCZWZvcmVDbG9zZTogYXJncyA/IGFyZ3MuaWdub3JlQmVmb3JlQ2xvc2UgOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyBhIGZseW91dCBhbmQgZGlzcGxheXMgdGhlIHNwZWNpZmllZCBjb21wb25lbnQuXG4gICAqIEBwYXJhbSBjb21wb25lbnQgU3BlY2lmaWVzIHRoZSBjb21wb25lbnQgdG8gcmVuZGVyLlxuICAgKiBAcGFyYW0gY29uZmlnIFNwZWNpZmllcyB0aGUgZmx5b3V0IGNvbmZpZ3VyYXRpb24gcGFzc2VkIHRvIHRoZSBzcGVjaWZpZWQgY29tcG9uZW50J3MgY29uc3RydWN0b3IuXG4gICAqL1xuICBwdWJsaWMgb3BlbjxUPihcbiAgICBjb21wb25lbnQ6IFR5cGU8VD4sXG4gICAgY29uZmlnPzogU2t5Rmx5b3V0Q29uZmlnXG4gICk6IFNreUZseW91dEluc3RhbmNlPFQ+IHtcbiAgICAvLyBpc09wZW5pbmcgZmxhZyB3aWxsIHByZXZlbnQgY2xvc2UoKSBmcm9tIGZpcmluZyB3aGVuIG9wZW4oKSBpcyBhbHNvIGZpcmVkLlxuICAgIHRoaXMuI2lzT3BlbmluZyA9IHRydWU7XG4gICAgdGhpcy4jd2luZG93UmVmLm5hdGl2ZVdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuI2lzT3BlbmluZyA9IGZhbHNlO1xuICAgIH0pO1xuXG4gICAgaWYgKCF0aGlzLiNob3N0KSB7XG4gICAgICB0aGlzLiNob3N0ID0gdGhpcy4jY3JlYXRlSG9zdENvbXBvbmVudCgpO1xuXG4gICAgICB0aGlzLiNyb3V0ZXIuZXZlbnRzXG4gICAgICAgIC5waXBlKHRha2VXaGlsZSgoKSA9PiB0aGlzLiNob3N0ICE9PSB1bmRlZmluZWQpKVxuICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuXG4gICAgICAgICAgICAvLyBTYW5pdHkgY2hlY2sgLSBpZiB0aGUgaG9zdCBzdGlsbCBleGlzdHMgYWZ0ZXIgYW5pbWF0aW9ucyBzaG91bGQgaGF2ZSBjb21wbGV0ZWQgLSByZW1vdmUgaG9zdFxuICAgICAgICAgICAgdGhpcy4jbmdab25lLm9uU3RhYmxlLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgaWYgKHRoaXMuI2hvc3QpIHtcbiAgICAgICAgICAgICAgICB0aGlzLiNyZW1vdmVIb3N0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgZmx5b3V0ID0gdGhpcy4jaG9zdC5pbnN0YW5jZS5hdHRhY2goY29tcG9uZW50LCBjb25maWcpO1xuXG4gICAgdGhpcy4jYWRkTGlzdGVuZXJzKGZseW91dCk7XG5cbiAgICByZXR1cm4gZmx5b3V0O1xuICB9XG5cbiAgI2NyZWF0ZUhvc3RDb21wb25lbnQoKTogQ29tcG9uZW50UmVmPFNreUZseW91dENvbXBvbmVudD4ge1xuICAgIHRoaXMuI2hvc3QgPVxuICAgICAgdGhpcy4jZHluYW1pY0NvbXBvbmVudFNlcnZpY2UuY3JlYXRlQ29tcG9uZW50KFNreUZseW91dENvbXBvbmVudCk7XG4gICAgcmV0dXJuIHRoaXMuI2hvc3Q7XG4gIH1cblxuICAjcmVtb3ZlSG9zdENvbXBvbmVudCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jaG9zdCkge1xuICAgICAgdGhpcy4jZHluYW1pY0NvbXBvbmVudFNlcnZpY2UucmVtb3ZlQ29tcG9uZW50KHRoaXMuI2hvc3QpO1xuICAgICAgdGhpcy4jaG9zdCA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICAjYWRkTGlzdGVuZXJzPFQ+KGZseW91dDogU2t5Rmx5b3V0SW5zdGFuY2U8VD4pOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLiNob3N0KSB7XG4gICAgICBjb25zdCBmbHlvdXRJbnN0YW5jZSA9IHRoaXMuI2hvc3QuaW5zdGFuY2U7XG5cbiAgICAgIGxldCBkb0Nsb3NlID0gZmFsc2U7XG5cbiAgICAgIC8qKlxuICAgICAgICogSGFuZGxlcyB3aGVuIHRvIGNsb3NlIGEgZmx5b3V0LlxuICAgICAgICogTm90ZTogV2UncmUgdXNpbmcgYG1vdXNldXBgIGluIG9yZGVyIHRvIGNhcHR1cmUgdGhlIHBhcmVudCBvZiBjZXJ0YWluIHRhcmdldHMgdGhhdCB3aWxsIGJlXG4gICAgICAgKiBkZWxldGVkIGltbWVkaWF0ZWx5IGFmdGVyIGJlaW5nIGNsaWNrZWQuIElmIHdlIHVzZSBgY2xpY2tgLCB0aGUgZXZlbnQgaXMgZmlyZWQgYWZ0ZXIgdGhlXG4gICAgICAgKiBlbGVtZW50IGlzIHJlbW92ZWQgZnJvbSB0aGUgRE9NIG1ha2luZyBpdCBpbXBvc3NpYmxlIHRvIGNoZWNrIHRoZSBwYXJlbnQncyB6LWluZGV4XG4gICAgICAgKiByZWxhdGl2ZSB0byB0aGUgZmx5b3V0J3MgY29udGFpbmVyLlxuICAgICAgICovXG4gICAgICBmcm9tRXZlbnQoZG9jdW1lbnQsICdtb3VzZXVwJylcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKChldmVudDogRXZlbnQpID0+IHtcbiAgICAgICAgICBkb0Nsb3NlID0gZmFsc2U7XG5cbiAgICAgICAgICBpZiAodGhpcy4jaG9zdD8uaW5zdGFuY2UuaXNEcmFnZ2luZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChmbHlvdXRJbnN0YW5jZS5mbHlvdXRSZWY/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGlzQWJvdmUgPVxuICAgICAgICAgICAgZXZlbnQudGFyZ2V0ID09PSBkb2N1bWVudCB8fCAhZXZlbnQudGFyZ2V0XG4gICAgICAgICAgICAgID8gZmFsc2VcbiAgICAgICAgICAgICAgOiB0aGlzLiNjb3JlQWRhcHRlci5pc1RhcmdldEFib3ZlRWxlbWVudChcbiAgICAgICAgICAgICAgICAgIGV2ZW50LnRhcmdldCxcbiAgICAgICAgICAgICAgICAgIGZseW91dEluc3RhbmNlLmZseW91dFJlZj8ubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgIGlmICghaXNBYm92ZSkge1xuICAgICAgICAgICAgZG9DbG9zZSA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgLyoqXG4gICAgICAgKiBDaGVjayBpZiB3ZSBzaG91bGQgY2xvc2UgdGhlIGZseW91dCBzcGVjaWZpY2FsbHkgb24gYSBgY2xpY2tgIGV2ZW50IHNvIHRoYXQgd2UgY2FuIGtlZXBcbiAgICAgICAqIGl0IG9wZW4gd2hlbiBjb25zdW1lcnMgZmlyZSBhbm90aGVyIGBjbGlja2AgZXZlbnQgb24gYSB0cmlnZ2VyIGJ1dHRvbi4gU2luY2UgdGhlIGNvbnN1bWVyXG4gICAgICAgKiB3aWxsIGxpa2VseSB1c2UgYSBgY2xpY2tgIGV2ZW50IHRvIG9wZW4gdGhlIGZseW91dCwgd2Ugd2FudCB0byB3YWl0IGZvciB0aGF0IGV2ZW50IHRvIGZpcmVcbiAgICAgICAqIGJlZm9yZSBkZXRlcm1pbmluZyBpZiB0aGUgZmx5b3V0IHNob3VsZCBiZSBjbG9zZWQuXG4gICAgICAgKi9cbiAgICAgIGZyb21FdmVudChkb2N1bWVudCwgJ2NsaWNrJylcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBpZiAoZG9DbG9zZSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgIHRoaXMuI3JlbW92ZUFmdGVyQ2xvc2VkID0gZmFsc2U7XG4gICAgICBmbHlvdXRJbnN0YW5jZS5tZXNzYWdlU3RyZWFtXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgobWVzc2FnZTogU2t5Rmx5b3V0TWVzc2FnZSkgPT4ge1xuICAgICAgICAgIGlmIChtZXNzYWdlLnR5cGUgPT09IFNreUZseW91dE1lc3NhZ2VUeXBlLkNsb3NlKSB7XG4gICAgICAgICAgICB0aGlzLiNyZW1vdmVBZnRlckNsb3NlZCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLiNpc09wZW5pbmcgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBmbHlvdXQuY2xvc2VkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy4jcmVtb3ZlTGlzdG5lcnMoKTtcbiAgICAgICAgaWYgKHRoaXMuI3JlbW92ZUFmdGVyQ2xvc2VkKSB7XG4gICAgICAgICAgdGhpcy4jcmVtb3ZlSG9zdENvbXBvbmVudCgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAjcmVtb3ZlTGlzdG5lcnMoKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KHRydWUpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgfVxufVxuIl19
|