devexpress-reporting-angular 23.2.6-build-2474-1904 → 24.1.1-alpha-2485-0223
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/dx-report-viewer/components/reporting/templates.component.d.ts +2 -2
- package/dx-report-viewer/dx-report-parameters-panel.component.d.ts +16 -0
- package/dx-report-viewer/dx-report-viewer-base.component.d.ts +36 -0
- package/dx-report-viewer/dx-report-viewer.component.d.ts +7 -25
- package/dx-report-viewer/dx-report-viewer.module.d.ts +6 -3
- package/dx-report-viewer/dxrpp-callbacks.d.ts +6 -0
- package/dx-report-viewer/dxrpp-request-options.d.ts +6 -0
- package/dx-report-viewer/dxrv-callbacks-base.d.ts +16 -0
- package/dx-report-viewer/dxrv-callbacks.d.ts +3 -11
- package/dx-report-viewer/dxrv-request-options-base.d.ts +8 -0
- package/dx-report-viewer/dxrv-request-options.d.ts +3 -5
- package/dx-report-viewer/index.d.ts +3 -0
- package/esm2020/dx-report-viewer/components/analytics/properties/popover/popover.component.mjs +1 -1
- package/esm2020/dx-report-viewer/components/reporting/editing/export/export-tool.component.mjs +1 -1
- package/esm2020/dx-report-viewer/components/reporting/editing/popup-image-field/popup-image-editing-field.component.mjs +1 -1
- package/esm2020/dx-report-viewer/components/reporting/mobile/actions/mobile.actions.export.component.mjs +1 -1
- package/esm2020/dx-report-viewer/components/reporting/mobile/parameters/mobile.parameters.popup.component.mjs +1 -1
- package/esm2020/dx-report-viewer/components/reporting/parameterspanel/date-range/popup-container/popup-container.component.mjs +1 -1
- package/esm2020/dx-report-viewer/components/reporting/parameterspanel/multi-value/multi-value.component.mjs +3 -3
- package/esm2020/dx-report-viewer/components/reporting/parameterspanel/parameterspanel.component.mjs +3 -3
- package/esm2020/dx-report-viewer/components/reporting/templates.component.mjs +1 -1
- package/esm2020/dx-report-viewer/components/reporting/widgets/picture-editor/picture-editing-brush-options.component.mjs +3 -3
- package/esm2020/dx-report-viewer/components/reporting/widgets/picture-editor/picture-editor-toolbar-popup.component.mjs +1 -1
- package/esm2020/dx-report-viewer/components/reporting/widgets/picture-editor/picture-editor.component.mjs +1 -1
- package/esm2020/dx-report-viewer/dx-report-parameters-panel.component.mjs +39 -0
- package/esm2020/dx-report-viewer/dx-report-viewer-base.component.mjs +92 -0
- package/esm2020/dx-report-viewer/dx-report-viewer.component.mjs +10 -72
- package/esm2020/dx-report-viewer/dx-report-viewer.module.mjs +20 -5
- package/esm2020/dx-report-viewer/dxrpp-callbacks.mjs +15 -0
- package/esm2020/dx-report-viewer/dxrpp-request-options.mjs +15 -0
- package/esm2020/dx-report-viewer/dxrv-callbacks-base.mjs +42 -0
- package/esm2020/dx-report-viewer/dxrv-callbacks.mjs +6 -31
- package/esm2020/dx-report-viewer/dxrv-request-options-base.mjs +22 -0
- package/esm2020/dx-report-viewer/dxrv-request-options.mjs +7 -15
- package/esm2020/dx-report-viewer/index.mjs +4 -1
- package/esm2020/index.mjs +2 -2
- package/fesm2015/devexpress-reporting-angular-dx-report-viewer.mjs +232 -133
- package/fesm2015/devexpress-reporting-angular-dx-report-viewer.mjs.map +1 -1
- package/fesm2015/devexpress-reporting-angular.mjs +1 -1
- package/fesm2015/devexpress-reporting-angular.mjs.map +1 -1
- package/fesm2020/devexpress-reporting-angular-dx-report-viewer.mjs +232 -121
- package/fesm2020/devexpress-reporting-angular-dx-report-viewer.mjs.map +1 -1
- package/fesm2020/devexpress-reporting-angular.mjs +1 -1
- package/fesm2020/devexpress-reporting-angular.mjs.map +1 -1
- package/index.d.ts +1 -1
- package/package.json +3 -3
package/esm2020/dx-report-viewer/components/reporting/parameterspanel/parameterspanel.component.mjs
CHANGED
|
@@ -16,12 +16,12 @@ export class ParameterspanelComponent {
|
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
ParameterspanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ParameterspanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
-
ParameterspanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ParameterspanelComponent, selector: "dxv-parameters", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"dxrd-preview-parameters-wrapper dxrd-preview-property-wrapper\" [hidden]=\"!(data.active && data.visible)\">\n <div class=\"dxrd-right-panel-header dxd-text-primary\">\n {{data.model.headerText}}\n </div>\n <div *ngIf=\"!data.model || data.model.isEmpty\" class=\"dxrd-group-header-parameters-empty dxd-text-primary\">\n {{data.model.emptyText}}\n </div>\n <dx-scroll-view *ngIf=\"data.model || data.model.isEmpty()\" class=\"dxrd-right-panel-body\" id=\"propertiesPanel\"\n [showScrollbar]=\"'onHover'\"\n [useNative]=\"false\"\n [scrollByThumb]=\"true\"\n (onInitialized)=\"onScrollViewInitialized($event)\"\n [dxMutationObserver]=\"data.keyboardHelper\"\n >\n <div role=\"tree\" class=\"dx-fieldset dxrd-right-panel-content\">\n <dxa-template template=\"dx-propertieseditor\" [data]=\"data.propertyGrid\"></dxa-template>\n </div>\n <div class=\"dxrd-preview-parameter-actions-container\">\n <dx-load-indicator class=\"dxrd-preview-parameter-action dxrd-preview-loading\"\n [visible]=\"data.model.parametersLoading\"></dx-load-indicator>\n <dx-button
|
|
19
|
+
ParameterspanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ParameterspanelComponent, selector: "dxv-parameters", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"dxrd-preview-parameters-wrapper dxrd-preview-property-wrapper\" [hidden]=\"!(data.active && data.visible)\">\n <div class=\"dxrd-right-panel-header dxd-text-primary\" [hidden]=\"!data.model.showHeader\">\n {{data.model.headerText}}\n </div>\n <div *ngIf=\"!data.model || data.model.isEmpty\" class=\"dxrd-group-header-parameters-empty dxd-text-primary\">\n {{data.model.emptyText}}\n </div>\n <dx-scroll-view *ngIf=\"data.model || data.model.isEmpty()\" class=\"dxrd-right-panel-body\" id=\"propertiesPanel\"\n [showScrollbar]=\"'onHover'\"\n [useNative]=\"false\"\n [scrollByThumb]=\"true\"\n (onInitialized)=\"onScrollViewInitialized($event)\"\n [dxMutationObserver]=\"data.keyboardHelper\"\n >\n <div role=\"tree\" class=\"dx-fieldset dxrd-right-panel-content\">\n <dxa-template template=\"dx-propertieseditor\" [data]=\"data.propertyGrid\"></dxa-template>\n </div>\n <div class=\"dxrd-preview-parameter-actions-container\" [hidden]=\"!data.model.showButtons\">\n <dx-load-indicator class=\"dxrd-preview-parameter-action dxrd-preview-loading\"\n [visible]=\"data.model.parametersLoading\"></dx-load-indicator>\n <dx-button *ngFor=\"let button of data.model.buttons\" class=\"dxrd-preview-parameter-action dxrdp-parameters-reset dx-accessibility-focus-border-accented\"\n [text]=\"button.text\"\n (onClick)=\"button.onClick($event)\">\n </dx-button>\n </div>\n </dx-scroll-view>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i2.DxLoadIndicatorComponent, selector: "dx-load-indicator", inputs: ["elementAttr", "height", "hint", "indicatorSrc", "rtlEnabled", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "elementAttrChange", "heightChange", "hintChange", "indicatorSrcChange", "rtlEnabledChange", "visibleChange", "widthChange"] }, { kind: "component", type: i2.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }, { kind: "component", type: i3.TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: i4.DxMutationObserverDirective, selector: "[dxMutationObserver]", inputs: ["dxMutationObserver"] }] });
|
|
20
20
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ParameterspanelComponent, decorators: [{
|
|
21
21
|
type: Component,
|
|
22
|
-
args: [{ selector: 'dxv-parameters', template: "<div class=\"dxrd-preview-parameters-wrapper dxrd-preview-property-wrapper\" [hidden]=\"!(data.active && data.visible)\">\n <div class=\"dxrd-right-panel-header dxd-text-primary\">\n {{data.model.headerText}}\n </div>\n <div *ngIf=\"!data.model || data.model.isEmpty\" class=\"dxrd-group-header-parameters-empty dxd-text-primary\">\n {{data.model.emptyText}}\n </div>\n <dx-scroll-view *ngIf=\"data.model || data.model.isEmpty()\" class=\"dxrd-right-panel-body\" id=\"propertiesPanel\"\n [showScrollbar]=\"'onHover'\"\n [useNative]=\"false\"\n [scrollByThumb]=\"true\"\n (onInitialized)=\"onScrollViewInitialized($event)\"\n [dxMutationObserver]=\"data.keyboardHelper\"\n >\n <div role=\"tree\" class=\"dx-fieldset dxrd-right-panel-content\">\n <dxa-template template=\"dx-propertieseditor\" [data]=\"data.propertyGrid\"></dxa-template>\n </div>\n <div class=\"dxrd-preview-parameter-actions-container\">\n <dx-load-indicator class=\"dxrd-preview-parameter-action dxrd-preview-loading\"\n [visible]=\"data.model.parametersLoading\"></dx-load-indicator>\n <dx-button
|
|
22
|
+
args: [{ selector: 'dxv-parameters', template: "<div class=\"dxrd-preview-parameters-wrapper dxrd-preview-property-wrapper\" [hidden]=\"!(data.active && data.visible)\">\n <div class=\"dxrd-right-panel-header dxd-text-primary\" [hidden]=\"!data.model.showHeader\">\n {{data.model.headerText}}\n </div>\n <div *ngIf=\"!data.model || data.model.isEmpty\" class=\"dxrd-group-header-parameters-empty dxd-text-primary\">\n {{data.model.emptyText}}\n </div>\n <dx-scroll-view *ngIf=\"data.model || data.model.isEmpty()\" class=\"dxrd-right-panel-body\" id=\"propertiesPanel\"\n [showScrollbar]=\"'onHover'\"\n [useNative]=\"false\"\n [scrollByThumb]=\"true\"\n (onInitialized)=\"onScrollViewInitialized($event)\"\n [dxMutationObserver]=\"data.keyboardHelper\"\n >\n <div role=\"tree\" class=\"dx-fieldset dxrd-right-panel-content\">\n <dxa-template template=\"dx-propertieseditor\" [data]=\"data.propertyGrid\"></dxa-template>\n </div>\n <div class=\"dxrd-preview-parameter-actions-container\" [hidden]=\"!data.model.showButtons\">\n <dx-load-indicator class=\"dxrd-preview-parameter-action dxrd-preview-loading\"\n [visible]=\"data.model.parametersLoading\"></dx-load-indicator>\n <dx-button *ngFor=\"let button of data.model.buttons\" class=\"dxrd-preview-parameter-action dxrdp-parameters-reset dx-accessibility-focus-border-accented\"\n [text]=\"button.text\"\n (onClick)=\"button.onClick($event)\">\n </dx-button>\n </div>\n </dx-scroll-view>\n</div>" }]
|
|
23
23
|
}], propDecorators: { data: [{
|
|
24
24
|
type: Input,
|
|
25
25
|
args: ['data']
|
|
26
26
|
}] } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyc3BhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2R4LXJlcG9ydC12aWV3ZXIvY29tcG9uZW50cy9yZXBvcnRpbmcvcGFyYW1ldGVyc3BhbmVsL3BhcmFtZXRlcnNwYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9keC1yZXBvcnQtdmlld2VyL2NvbXBvbmVudHMvcmVwb3J0aW5nL3BhcmFtZXRlcnNwYW5lbC9wYXJhbWV0ZXJzcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQU9qRCxNQUFNLE9BQU8sd0JBQXdCO0lBR25DLHVCQUF1QixDQUFDLElBQUk7UUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxLQUFLLENBQUMsSUFBSTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTTtRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUM7O3NIQWJVLHdCQUF3QjswR0FBeEIsd0JBQXdCLGdGQ1ByQywwakRBMEJNOzRGRG5CTyx3QkFBd0I7a0JBSnBDLFNBQVM7K0JBQ0ksZ0JBQWdCOzhCQUliLElBQUk7c0JBQWxCLEtBQUs7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElUYWJQYW5lbEl0ZW1XaXRoUHJvcGVydHlHcmlkVmlld01vZGVsIH0gZnJvbSAnQGRldmV4cHJlc3MvYW5hbHl0aWNzLWNvcmUvY29yZS90b29scy9fdGFiSW5mb1dpdGhQcm9wZXJ0eUdyaWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2R4di1wYXJhbWV0ZXJzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcGFyYW1ldGVyc3BhbmVsLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQYXJhbWV0ZXJzcGFuZWxDb21wb25lbnQge1xuICBASW5wdXQoJ2RhdGEnKSBkYXRhITogSVRhYlBhbmVsSXRlbVdpdGhQcm9wZXJ0eUdyaWRWaWV3TW9kZWw7XG5cbiAgb25TY3JvbGxWaWV3SW5pdGlhbGl6ZWQoYXJncyk6IHZvaWQge1xuICAgICAgYXJncy5jb21wb25lbnQub3B0aW9uKCd1c2VLZXlib2FyZCcsIGZhbHNlKTtcbiAgfVxuXG4gIHJlc2V0KGFyZ3MpOiB2b2lkIHtcbiAgICAgIHRoaXMuZGF0YS5tb2RlbC5yZXN0b3JlKCk7XG4gIH1cblxuICBzdWJtaXQocGFyYW1zKTogdm9pZCB7XG4gICAgICB0aGlzLmRhdGEubW9kZWwudmFsaWRhdGVBbmRTdWJtaXQocGFyYW1zKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiZHhyZC1wcmV2aWV3LXBhcmFtZXRlcnMtd3JhcHBlciBkeHJkLXByZXZpZXctcHJvcGVydHktd3JhcHBlclwiIFtoaWRkZW5dPVwiIShkYXRhLmFjdGl2ZSAmJiBkYXRhLnZpc2libGUpXCI+XG4gICAgPGRpdiBjbGFzcz1cImR4cmQtcmlnaHQtcGFuZWwtaGVhZGVyIGR4ZC10ZXh0LXByaW1hcnlcIiBbaGlkZGVuXT1cIiFkYXRhLm1vZGVsLnNob3dIZWFkZXJcIj5cbiAgICAgICAge3tkYXRhLm1vZGVsLmhlYWRlclRleHR9fVxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIhZGF0YS5tb2RlbCB8fCBkYXRhLm1vZGVsLmlzRW1wdHlcIiBjbGFzcz1cImR4cmQtZ3JvdXAtaGVhZGVyLXBhcmFtZXRlcnMtZW1wdHkgZHhkLXRleHQtcHJpbWFyeVwiPlxuICAgICAgICB7e2RhdGEubW9kZWwuZW1wdHlUZXh0fX1cbiAgICA8L2Rpdj5cbiAgICA8ZHgtc2Nyb2xsLXZpZXcgKm5nSWY9XCJkYXRhLm1vZGVsIHx8IGRhdGEubW9kZWwuaXNFbXB0eSgpXCIgY2xhc3M9XCJkeHJkLXJpZ2h0LXBhbmVsLWJvZHlcIiBpZD1cInByb3BlcnRpZXNQYW5lbFwiXG4gICAgICAgIFtzaG93U2Nyb2xsYmFyXT1cIidvbkhvdmVyJ1wiXG4gICAgICAgIFt1c2VOYXRpdmVdPVwiZmFsc2VcIlxuICAgICAgICBbc2Nyb2xsQnlUaHVtYl09XCJ0cnVlXCJcbiAgICAgICAgKG9uSW5pdGlhbGl6ZWQpPVwib25TY3JvbGxWaWV3SW5pdGlhbGl6ZWQoJGV2ZW50KVwiXG4gICAgICAgIFtkeE11dGF0aW9uT2JzZXJ2ZXJdPVwiZGF0YS5rZXlib2FyZEhlbHBlclwiXG4gICAgICAgID5cbiAgICAgICAgPGRpdiByb2xlPVwidHJlZVwiIGNsYXNzPVwiZHgtZmllbGRzZXQgZHhyZC1yaWdodC1wYW5lbC1jb250ZW50XCI+XG4gICAgICAgICAgICA8ZHhhLXRlbXBsYXRlIHRlbXBsYXRlPVwiZHgtcHJvcGVydGllc2VkaXRvclwiIFtkYXRhXT1cImRhdGEucHJvcGVydHlHcmlkXCI+PC9keGEtdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZHhyZC1wcmV2aWV3LXBhcmFtZXRlci1hY3Rpb25zLWNvbnRhaW5lclwiIFtoaWRkZW5dPVwiIWRhdGEubW9kZWwuc2hvd0J1dHRvbnNcIj5cbiAgICAgICAgICAgIDxkeC1sb2FkLWluZGljYXRvciBjbGFzcz1cImR4cmQtcHJldmlldy1wYXJhbWV0ZXItYWN0aW9uIGR4cmQtcHJldmlldy1sb2FkaW5nXCJcbiAgICAgICAgICAgICAgICBbdmlzaWJsZV09XCJkYXRhLm1vZGVsLnBhcmFtZXRlcnNMb2FkaW5nXCI+PC9keC1sb2FkLWluZGljYXRvcj5cbiAgICAgICAgICAgIDxkeC1idXR0b24gKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBkYXRhLm1vZGVsLmJ1dHRvbnNcIiBjbGFzcz1cImR4cmQtcHJldmlldy1wYXJhbWV0ZXItYWN0aW9uIGR4cmRwLXBhcmFtZXRlcnMtcmVzZXQgZHgtYWNjZXNzaWJpbGl0eS1mb2N1cy1ib3JkZXItYWNjZW50ZWRcIlxuICAgICAgICAgICAgICAgIFt0ZXh0XT1cImJ1dHRvbi50ZXh0XCJcbiAgICAgICAgICAgICAgICAob25DbGljayk9XCJidXR0b24ub25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICA8L2R4LWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9keC1zY3JvbGwtdmlldz5cbjwvZGl2PiJdfQ==
|
|
@@ -273,4 +273,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
273
273
|
type: ViewChild,
|
|
274
274
|
args: ['mobilepaginator']
|
|
275
275
|
}] } });
|
|
276
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2R4LXJlcG9ydC12aWV3ZXIvY29tcG9uZW50cy9yZXBvcnRpbmcvdGVtcGxhdGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2R4LXJlcG9ydC12aWV3ZXIvY29tcG9uZW50cy9yZXBvcnRpbmcvdGVtcGxhdGVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBc0NqRixNQUFNLE9BQU8sd0JBQXdCO0lBc0RuQyxZQUFvQixlQUErQjtRQUEvQixvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7SUFDbkQsQ0FBQztJQUNELGVBQWU7UUFDWCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsbUNBQW1DLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLHdCQUF3QixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxpQ0FBaUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxpQ0FBaUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLDBCQUEwQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ25GLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLDJCQUEyQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQywyQkFBMkIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsOEJBQThCLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDOUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsbUNBQW1DLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDbkcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsMEJBQTBCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsMEJBQTBCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsaUNBQWlDLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDL0YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDN0YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsa0NBQWtDLEVBQUUsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDbkcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsa0NBQWtDLEVBQUUsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDbkcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsdUNBQXVDLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDdkcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsaUNBQWlDLEVBQUUsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDbEcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsMENBQTBDLEVBQUUsSUFBSSxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFDckgsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQywwQkFBMEIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLDBCQUEwQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsOEJBQThCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdkYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDN0YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLDBCQUEwQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7O3NIQTdHVSx3QkFBd0I7MEdBQXhCLHdCQUF3QiwydUtDdENyQywyaE9BZ05jOzRGRDFLRCx3QkFBd0I7a0JBSnBDLFNBQVM7K0JBQ0ksZUFBZTtxR0FJTCxPQUFPO3NCQUE1QixTQUFTO3VCQUFDLFNBQVM7Z0JBQ0ssVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNJLFlBQVk7c0JBQXRDLFNBQVM7dUJBQUMsY0FBYztnQkFDQyxXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBQ0MsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNFLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFDRixNQUFNO3NCQUExQixTQUFTO3VCQUFDLFFBQVE7Z0JBQ00sVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNVLGtCQUFrQjtzQkFBbEQsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBQ0QsZUFBZTtzQkFBNUMsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBQ0EsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQUNBLFdBQVc7c0JBQXBDLFNBQVM7dUJBQUMsYUFBYTtnQkFDSyxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFDRyxjQUFjO3NCQUEzQyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFDSyxrQkFBa0I7c0JBQWxELFNBQVM7dUJBQUMsb0JBQW9CO2dCQUNULE9BQU87c0JBQTVCLFNBQVM7dUJBQUMsU0FBUztnQkFDRCxJQUFJO3NCQUF0QixTQUFTO3VCQUFDLE1BQU07Z0JBQ1csYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQUNBLFdBQVc7c0JBQXBDLFNBQVM7dUJBQUMsYUFBYTtnQkFDSCxNQUFNO3NCQUExQixTQUFTO3VCQUFDLFFBQVE7Z0JBQ0MsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPO2dCQUNXLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCO2dCQUNILFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFDa0IseUJBQXlCO3NCQUFoRSxTQUFTO3VCQUFDLDJCQUEyQjtnQkFDUCxnQkFBZ0I7c0JBQTlDLFNBQVM7dUJBQUMsa0JBQWtCO2dCQUNNLG9CQUFvQjtzQkFBdEQsU0FBUzt1QkFBQyxzQkFBc0I7Z0JBQ0Usb0JBQW9CO3NCQUF0RCxTQUFTO3VCQUFDLHNCQUFzQjtnQkFDSSxzQkFBc0I7c0JBQTFELFNBQVM7dUJBQUMsd0JBQXdCO2dCQUNLLHlCQUF5QjtzQkFBaEUsU0FBUzt1QkFBQywyQkFBMkI7Z0JBQ04saUJBQWlCO3NCQUFoRCxTQUFTO3VCQUFDLG1CQUFtQjtnQkFDRSxpQkFBaUI7c0JBQWhELFNBQVM7dUJBQUMsbUJBQW1CO2dCQUNFLGlCQUFpQjtzQkFBaEQsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBQ1EsdUJBQXVCO3NCQUE1RCxTQUFTO3VCQUFDLHlCQUF5QjtnQkFDQyxzQkFBc0I7c0JBQTFELFNBQVM7dUJBQUMsd0JBQXdCO2dCQUNNLDBCQUEwQjtzQkFBbEUsU0FBUzt1QkFBQyw0QkFBNEI7Z0JBQ0UsMEJBQTBCO3NCQUFsRSxTQUFTO3VCQUFDLDRCQUE0QjtnQkFDQyx5QkFBeUI7c0JBQWhFLFNBQVM7dUJBQUMsMkJBQTJCO2dCQUNHLDBCQUEwQjtzQkFBbEUsU0FBUzt1QkFBQyw0QkFBNEI7Z0JBQ1ksb0NBQW9DO3NCQUF0RixTQUFTO3VCQUFDLHNDQUFzQztnQkFDdkIsV0FBVztzQkFBcEMsU0FBUzt1QkFBQyxhQUFhO2dCQUNDLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFDSyxhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWU7Z0JBQ0UsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQUNELFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFDSyxhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWU7Z0JBQ0ssZ0JBQWdCO3NCQUE5QyxTQUFTO3VCQUFDLGtCQUFrQjtnQkFDTyxxQkFBcUI7c0JBQXhELFNBQVM7dUJBQUMsdUJBQXVCO2dCQUNNLHlCQUF5QjtzQkFBaEUsU0FBUzt1QkFBQywyQkFBMkI7Z0JBQ1IsZUFBZTtzQkFBNUMsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBQ0QsWUFBWTtzQkFBdEMsU0FBUzt1QkFBQyxjQUFjO2dCQUNFLFlBQVk7c0JBQXRDLFNBQVM7dUJBQUMsY0FBYztnQkFDSyxlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVNlbGVjdEJveEFjdGlvblZpZXdNb2RlbCB9IGZyb20gJ0BkZXZleHByZXNzL2FuYWx5dGljcy1jb3JlL3dpZGdldHMvdXRpbHMnO1xuaW1wb3J0IHsgVGVtcGxhdGVFbmdpbmUgfSBmcm9tICcuLi8uLi91dGlscy90ZW1wbGF0ZUVuZ2luZSc7XG5pbXBvcnQgeyBJT2JqZWN0UHJvcGVydGllc1ZpZXdNb2RlbCB9IGZyb20gJ0BkZXZleHByZXNzL2FuYWx5dGljcy1jb3JlL3Byb3BlcnR5LWdyaWQvcHJvcGVydHlncmlkJztcbmltcG9ydCB7IFJlcG9ydFByZXZpZXcgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvcmVwb3J0UHJldmlldyc7XG5pbXBvcnQgeyBJUHJldmlld1BhcmFtZXRlcnNWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvcGFyYW1ldGVycy9wcmV2aWV3UGFyYW1ldGVyc1ZpZXdNb2RlbC52aWV3bW9kZWwnO1xuaW1wb3J0IHsgSUV4cG9ydEFjdGlvblZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9leHBvcnRPcHRpb25zL2V4cG9ydE9wdGlvbnNNb2RlbCc7XG5pbXBvcnQgeyBJRWRpdG9yVmlld01vZGVsIH0gZnJvbSAnQGRldmV4cHJlc3MvYW5hbHl0aWNzLWNvcmUvcHJvcGVydHktZ3JpZC93aWRnZXRzL2VkaXRvcic7XG5pbXBvcnQgeyBJTXVsdGlWYWx1ZUVkaXRvclZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci93aWRnZXRzL19tdWx0aVZhbHVlRWRpdG9yJztcbmltcG9ydCB7IElUYWJQYW5lbEl0ZW1XaXRoUHJvcGVydHlHcmlkVmlld01vZGVsIH0gZnJvbSAnQGRldmV4cHJlc3MvYW5hbHl0aWNzLWNvcmUvY29yZS90b29scy9fdGFiSW5mb1dpdGhQcm9wZXJ0eUdyaWQnO1xuaW1wb3J0IHsgSURvY3VtZW50TWFwVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2RvY3VtZW50TWFwL19kb2N1bWVudE1hcE1vZGVsJztcbmltcG9ydCB7IElEYXRlUmFuZ2VFZGl0b3JPcHRpb25zIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL3dpZGdldHMvZGF0ZVJhbmdlL2RhdGVSYW5nZUVkaXRvcic7XG5pbXBvcnQgeyBJRGF0ZVJhbmdlQ2FsZW5kYXJWaWV3TW9kZWwsIElEYXRlUmFuZ2VFZGl0b3JWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvd2lkZ2V0cy9kYXRlUmFuZ2UvZGF0ZVJhbmdlRWRpdG9yLnZpZXdtb2RlbCc7XG5pbXBvcnQgeyBJUmVwb3J0UHJldmlld1ZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9yZXBvcnRQcmV2aWV3LnZpZXdNb2RlbCc7XG5pbXBvcnQgeyBJUHJldmlld1BhZ2VWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvaW50ZXJuYWwvX3BhZ2Uudmlld01vZGVsJztcbmltcG9ydCB7IElTZWFyY2hWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvc2VhcmNoL19zZWFyY2hWaWV3TW9kZWwnO1xuaW1wb3J0IHsgSUJyaWNrTm9kZSB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci91dGlscy91dGlscyc7XG5pbXBvcnQgeyBJVGV4dEVkaXRpbmdGaWVsZERhdGEsIElUZXh0RWRpdGluZ0ZpZWxkVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2VkaXRpbmcvbW9kZWxzL3RleHRFZGl0aW5nRmllbGQnO1xuaW1wb3J0IHsgSUNoYXJhY3RlckNvbWJFZGl0aW5nRmllbGRWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvZWRpdGluZy9tb2RlbHMvY2hhcmFjdGVyQ29tYkVkaXRpbmdGaWVsZCc7XG5pbXBvcnQgeyBJQ2hlY2tFZGl0aW5nRmllbGRWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvZWRpdGluZy9tb2RlbHMvY2hlY2tFZGl0aW5nRmllbGQnO1xuaW1wb3J0IHsgSUVkaXRpbmdGaWVsZFZpZXdNb2RlbEJhc2UgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvZWRpdGluZy9tb2RlbHMvZWRpdGluZ0ZpZWxkQmFzZSc7XG5pbXBvcnQgeyBJUG9wdXBJbWFnZUVkaXRpbmdGaWVsZFZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9lZGl0aW5nL21vZGVscy9wb3B1cEltYWdlRWRpdGluZ0ZpZWxkJztcbmltcG9ydCB7IElQaWN0dXJlRWRpdG9yQWN0aW9uUG9wdXAgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvd2lkZ2V0cy9waWN0dXJlRWRpdG9yL19waWN0dXJlRWRpdG9yVG9vbGJhckl0ZW0nO1xuaW1wb3J0IHsgSVBhaW50ZXJCcnVzaE9wdGlvbnMsIElQYWludGVyU2l6ZU9wdGlvbnMgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvd2lkZ2V0cy9waWN0dXJlRWRpdG9yL19wYWludGVyJztcbmltcG9ydCB7IElJbWFnZVBpY2tlckFjdGlvblZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci93aWRnZXRzL3BpY3R1cmVFZGl0b3IvX2ltYWdlUGlja2VyJztcbmltcG9ydCB7IElQcm9ncmVzc0JhclZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9pbnRlcm5hbC9fcHJvZ3Jlc3NWaWV3TW9kZWwnO1xuaW1wb3J0IHsgSUV4cG9ydFRvb2xWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvaW50ZXJuYWwvX2V4cG9ydEhhbmRsZXIudmlld01vZGVsJztcbmltcG9ydCB7IElNb2JpbGVSZXBvcnRQcmV2aWV3Vmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL21vYmlsZS9tb2JpbGVQcmV2aWV3LnZpZXdNb2RlbCc7XG5pbXBvcnQgeyBJTW9iaWxlUGFnZVZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9tb2JpbGUvaW50ZXJuYWwvX21vYmlsZVBhZ2UnO1xuaW1wb3J0IHsgSU1vYmlsZUFjdGlvbkxpc3RWaWV3TW9kZWwsIElNb2JpbGVFeHBvcnRBY3Rpb24gfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvbW9iaWxlL3V0aWxzL19tb2JpbGVBY3Rpb25MaXN0JztcbmltcG9ydCB7IElQYXJhbWV0ZXJzUG9wdXBWaWV3TW9kZWxCYXNlIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL21vYmlsZS9pbnRlcm5hbC9fcGFyYW1ldGVyc1BvcHVwLnZpZXdNb2RlbCc7XG5pbXBvcnQgeyBJTW9iaWxlUGFnaW5hdG9yVmlld01vZGVsLCBJTW9iaWxlU2VhcmNoVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvc2NvcGVzL3JlcG9ydGluZy12aWV3ZXItbW9iaWxlLWludGVybmFsJztcbmltcG9ydCB7IElCcmVhZGNydW1iVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvc2NvcGVzL3JlcG9ydGluZy12aWV3ZXItaW50ZXJuYWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2R4di10ZW1wbGF0ZXMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZXMuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFZpZXdlclRlbXBsYXRlc0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBAVmlld0NoaWxkKCd0b29sYmFyJykgdG9vbGJhciE6IFRlbXBsYXRlUmVmPHsgZGF0YTogUmVwb3J0UHJldmlldyB9PjtcbiAgQFZpZXdDaGlsZCgnYnJlYWRjcnVtYicpIGJyZWFkY3J1bWIhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElCcmVhZGNydW1iVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdleHBvcnRBY3Rpb24nKSBleHBvcnRBY3Rpb24hOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFeHBvcnRBY3Rpb25WaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3BhZ2VyQWN0aW9uJykgcGFnZXJBY3Rpb24hOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElTZWxlY3RCb3hBY3Rpb25WaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3pvb21BY3Rpb24nKSB6b29tQWN0aW9uITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJU2VsZWN0Qm94QWN0aW9uVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdwYXJhbWV0ZXJzJykgcGFyYW1ldGVycyE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVByZXZpZXdQYXJhbWV0ZXJzVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdlZGl0b3InKSBlZGl0b3IhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0b3JWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ211bHRpdmFsdWUnKSBtdWx0aXZhbHVlITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJRWRpdG9yVmlld01vZGVsPElNdWx0aVZhbHVlRWRpdG9yVmlld01vZGVsPiB9PjtcbiAgQFZpZXdDaGlsZCgnbXVsdGl2YWx1ZUVkaXRhYmxlJykgbXVsdGl2YWx1ZUVkaXRhYmxlITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJRWRpdG9yVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdzaWduYXR1cmVFZGl0b3InKSBzaWduYXR1cmVFZGl0b3IhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0b3JWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2V4cG9ydG9wdGlvbnMnKSBleHBvcnRPcHRpb25zITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJVGFiUGFuZWxJdGVtV2l0aFByb3BlcnR5R3JpZFZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnZG9jdW1lbnRtYXAnKSBkb2N1bWVudE1hcCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSURvY3VtZW50TWFwVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdkYXRlcmFuZ2VpbnB1dCcpIGRhdGVyYW5nZWlucHV0ITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJRWRpdG9yVmlld01vZGVsPElEYXRlUmFuZ2VFZGl0b3JPcHRpb25zPiB9PjtcbiAgQFZpZXdDaGlsZCgnZGF0ZXJhbmdlZXBvcHVwJykgZGF0ZXJhbmdlUG9wdXAhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElEYXRlUmFuZ2VFZGl0b3JWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2RhdGVyYW5nZWVjYWxlbmRhcicpIGRhdGVyYW5nZWVjYWxlbmRhciE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSURhdGVSYW5nZUNhbGVuZGFyVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdzdXJmYWNlJykgc3VyZmFjZSE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVJlcG9ydFByZXZpZXdWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3BhZ2UnKSBwYWdlITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJUHJldmlld1BhZ2VWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2VkaXRvckNvbnRlbnQnKSBlZGl0b3JDb250ZW50ITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJRWRpdG9yVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdncm91cEVkaXRvcicpIGdyb3VwRWRpdG9yITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJT2JqZWN0UHJvcGVydGllc1ZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnc2VhcmNoJykgc2VhcmNoITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJU2VhcmNoVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdicmljaycpIGJyaWNrITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJQnJpY2tOb2RlIH0+O1xuICBAVmlld0NoaWxkKCdicmlja0NsaWNrYWJsZScpIGJyaWNrQ2xpY2thYmxlITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJQnJpY2tOb2RlIH0+O1xuICBAVmlld0NoaWxkKCdzZXBhcmF0b3InKSBzZXBhcmF0b3IhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0b3JWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3RleHRFZGl0aW5nRmllbGRDb250YWluZXInKSB0ZXh0RWRpdGluZ0ZpZWxkQ29udGFpbmVyITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJVGV4dEVkaXRpbmdGaWVsZFZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgndGV4dEVkaXRpbmdGaWVsZCcpIHRleHRFZGl0aW5nRmllbGQhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElUZXh0RWRpdGluZ0ZpZWxkRGF0YSB9PjtcbiAgQFZpZXdDaGlsZCgndGV4dEVkaXRpbmdGaWVsZERhdGUnKSB0ZXh0RWRpdGluZ0ZpZWxkRGF0ZSE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVRleHRFZGl0aW5nRmllbGREYXRhIH0+O1xuICBAVmlld0NoaWxkKCd0ZXh0RWRpdGluZ0ZpZWxkTWFzaycpIHRleHRFZGl0aW5nRmllbGRNYXNrITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJVGV4dEVkaXRpbmdGaWVsZERhdGEgfT47XG4gIEBWaWV3Q2hpbGQoJ3RleHRFZGl0aW5nRmllbGROdW1iZXInKSB0ZXh0RWRpdGluZ0ZpZWxkTnVtYmVyITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJVGV4dEVkaXRpbmdGaWVsZERhdGEgfT47XG4gIEBWaWV3Q2hpbGQoJ2NoYXJhY3RlckNvbWJFZGl0aW5nRmllbGQnKSBjaGFyYWN0ZXJDb21iRWRpdGluZ0ZpZWxkITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJQ2hhcmFjdGVyQ29tYkVkaXRpbmdGaWVsZFZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnY2hlY2tFZGl0aW5nRmllbGQnKSBjaGVja0VkaXRpbmdGaWVsZCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSUNoZWNrRWRpdGluZ0ZpZWxkVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdyYWRpb0VkaXRpbmdGaWVsZCcpIHJhZGlvRWRpdGluZ0ZpZWxkITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJQ2hlY2tFZGl0aW5nRmllbGRWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2ltYWdlRWRpdGluZ0ZpZWxkJykgaW1hZ2VFZGl0aW5nRmllbGQhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0aW5nRmllbGRWaWV3TW9kZWxCYXNlIH0+O1xuICBAVmlld0NoaWxkKCdpbWFnZUVkaXRpbmdGaWVsZEVkaXRvcicpIGltYWdlRWRpdGluZ0ZpZWxkRWRpdG9yITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJRWRpdGluZ0ZpZWxkVmlld01vZGVsQmFzZSB9PjtcbiAgQFZpZXdDaGlsZCgncG9wdXBJbWFnZUVkaXRpbmdGaWVsZCcpIHBvcHVwSW1hZ2VFZGl0aW5nRmllbGQhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQb3B1cEltYWdlRWRpdGluZ0ZpZWxkVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdwaWN0dXJlRWRpdGluZ1Rvb2xiYXJQb3B1cCcpIHBpY3R1cmVFZGl0aW5nVG9vbGJhclBvcHVwITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJUGljdHVyZUVkaXRvckFjdGlvblBvcHVwIH0+O1xuICBAVmlld0NoaWxkKCdwaWN0dXJlRWRpdGluZ0JydXNoT3B0aW9ucycpIHBpY3R1cmVFZGl0aW5nQnJ1c2hPcHRpb25zITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJUGFpbnRlckJydXNoT3B0aW9ucyB9PjtcbiAgQFZpZXdDaGlsZCgncGljdHVyZUVkaXRpbmdTaXplT3B0aW9ucycpIHBpY3R1cmVFZGl0aW5nU2l6ZU9wdGlvbnMhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQYWludGVyU2l6ZU9wdGlvbnMgfT47XG4gIEBWaWV3Q2hpbGQoJ3BpY3R1cmVFZGl0aW5nSW1hZ2VzUGlja2VyJykgcGljdHVyZUVkaXRpbmdJbWFnZXNQaWNrZXIhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElJbWFnZVBpY2tlckFjdGlvblZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgncGljdHVyZUVkaXRpbmdJbWFnZXNQaWNrZXJXaXRoRmlsdGVyJykgcGljdHVyZUVkaXRpbmdJbWFnZXNQaWNrZXJXaXRoRmlsdGVyITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJSW1hZ2VQaWNrZXJBY3Rpb25WaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3Byb2dyZXNzQmFyJykgcHJvZ3Jlc3NCYXIhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQcm9ncmVzc0JhclZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnZXhwb3J0VG9vbCcpIGV4cG9ydFRvb2whOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFeHBvcnRUb29sVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdjaGVja2JveGdseXBoJykgY2hlY2tib3hHbHlwaCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSUNoZWNrRWRpdGluZ0ZpZWxkVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdtb2JpbGVzdXJmYWNlJykgbW9iaWxlU3VyZmFjZSE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSU1vYmlsZVJlcG9ydFByZXZpZXdWaWV3TW9kZWx9PjtcbiAgQFZpZXdDaGlsZCgnbW9iaWxlcGFnZScpIG1vYmlsZVBhZ2UhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElNb2JpbGVQYWdlVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdtb2JpbGVhY3Rpb25zJykgbW9iaWxlQWN0aW9ucyE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSU1vYmlsZUFjdGlvbkxpc3RWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ21vYmlsZXBhcmFtZXRlcnMnKSBtb2JpbGVQYXJhbWV0ZXJzITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJUGFyYW1ldGVyc1BvcHVwVmlld01vZGVsQmFzZSB9PjtcbiAgQFZpZXdDaGlsZCgnbW9iaWxlcGFyYW1ldGVyc3BvcHVwJykgbW9iaWxlUGFyYW1ldGVyc1BvcHVwITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJUGFyYW1ldGVyc1BvcHVwVmlld01vZGVsQmFzZSB9PjtcbiAgQFZpZXdDaGlsZCgnbW9iaWxlcGFyYW1ldGVyc2RhdGVyYW5nZScpIG1vYmlsZVBhcmFtZXRlcnNEYXRlUmFuZ2UhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQYXJhbWV0ZXJzUG9wdXBWaWV3TW9kZWxCYXNlIH0+O1xuICBAVmlld0NoaWxkKCdtb2JpbGVkYXRlcmFuZ2UnKSBtb2JpbGVEYXRlUmFuZ2UhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQYXJhbWV0ZXJzUG9wdXBWaWV3TW9kZWxCYXNlIH0+O1xuICBAVmlld0NoaWxkKCdtb2JpbGVleHBvcnQnKSBtb2JpbGVFeHBvcnQhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElNb2JpbGVFeHBvcnRBY3Rpb24gfT47XG4gIEBWaWV3Q2hpbGQoJ21vYmlsZXNlYXJjaCcpIG1vYmlsZXNlYXJjaCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSU1vYmlsZVNlYXJjaFZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnbW9iaWxlcGFnaW5hdG9yJykgbW9iaWxlcGFnaW5hdG9yITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJTW9iaWxlUGFnaW5hdG9yVmlld01vZGVsIH0+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3RlbXBsYXRlRW5naW5lOiBUZW1wbGF0ZUVuZ2luZSkge1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXByZXZpZXctcGFnZXInLCB0aGlzLnBhZ2VyQWN0aW9uKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXpvb20tYXV0b2ZpdC1zZWxlY3QtdGVtcGxhdGUnLCB0aGlzLnpvb21BY3Rpb24pO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJldmlldy1leHBvcnQtdG8nLCB0aGlzLmV4cG9ydEFjdGlvbik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LXRvb2xiYXItc2Nyb2xsYWJsZScsIHRoaXMudG9vbGJhcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LWJyZWFkY3J1bWInLCB0aGlzLmJyZWFkY3J1bWIpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJldmlldy1wYXJhbWV0ZXJzJywgdGhpcy5wYXJhbWV0ZXJzKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXBhcmFtZXRlcnMtcHJvcGVydHktZWRpdG9yJywgdGhpcy5lZGl0b3IpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmR2LXNpZ25hdHVyZScsIHRoaXMuc2lnbmF0dXJlRWRpdG9yKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLW11bHRpdmFsdWUnLCB0aGlzLm11bHRpdmFsdWUpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJldmlldy1leHBvcnQtb3B0aW9ucycsIHRoaXMuZXhwb3J0T3B0aW9ucyk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LWRvY3VtZW50LW1hcCcsIHRoaXMuZG9jdW1lbnRNYXApO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtbXVsdGl2YWx1ZS1lZGl0YWJsZScsIHRoaXMubXVsdGl2YWx1ZUVkaXRhYmxlKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJ2LXJhbmdlLXBhcmFtZXRlcicsIHRoaXMuZGF0ZXJhbmdlaW5wdXQpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnYtZGF0ZXJhbmdlLWVkaXRvci1wb3B1cCcsIHRoaXMuZGF0ZXJhbmdlUG9wdXApO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnYtZGF0ZXJhbmdlLWNhbGVuZGFyJywgdGhpcy5kYXRlcmFuZ2VlY2FsZW5kYXIpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmRwLXN1cmZhY2UnLCB0aGlzLnN1cmZhY2UpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJldmlldy1wYWdlJywgdGhpcy5wYWdlKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXBhcmFtZXRlcnMtZWRpdG9yLWNvbnRlbnQnLCB0aGlzLmVkaXRvckNvbnRlbnQpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJvcGVydGllc2VkaXRvcicsIHRoaXMuZ3JvdXBFZGl0b3IpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJldmlldy1zZWFyY2gnLCB0aGlzLnNlYXJjaCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wYWdlLWJyaWNrLW1vYmlsZScsIHRoaXMuYnJpY2spO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcGFnZS1icmljay1jbGlja2FibGUnLCB0aGlzLmJyaWNrQ2xpY2thYmxlKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXBhcmFtZXRlcnMtc2VwYXJhdG9yJywgdGhpcy5zZXBhcmF0b3IpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnAtZWRpdGluZy1maWVsZC1jb250YWluZXInLCB0aGlzLnRleHRFZGl0aW5nRmllbGRDb250YWluZXIpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnAtZWRpdGluZy1maWVsZC10ZXh0JywgdGhpcy50ZXh0RWRpdGluZ0ZpZWxkKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJwLWVkaXRpbmctZmllbGQtbWFzaycsIHRoaXMudGV4dEVkaXRpbmdGaWVsZE1hc2spO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnAtZWRpdGluZy1maWVsZC1kYXRldGltZScsIHRoaXMudGV4dEVkaXRpbmdGaWVsZERhdGUpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnAtZWRpdGluZy1maWVsZC1udW1iZXInLCB0aGlzLnRleHRFZGl0aW5nRmllbGROdW1iZXIpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnAtY2hhcmFjdGVyLWNvbWItZWRpdGluZy1maWVsZCcsIHRoaXMuY2hhcmFjdGVyQ29tYkVkaXRpbmdGaWVsZCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1lZGl0aW5nLWZpZWxkLWNoZWNrYm94JywgdGhpcy5jaGVja0VkaXRpbmdGaWVsZCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1lZGl0aW5nLWZpZWxkLXJhZGlvJywgdGhpcy5yYWRpb0VkaXRpbmdGaWVsZCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1lZGl0aW5nLWZpZWxkLWltYWdlJywgdGhpcy5pbWFnZUVkaXRpbmdGaWVsZCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1lZGl0aW5nLWZpZWxkLWltYWdlLWVkaXRvcicsIHRoaXMuaW1hZ2VFZGl0aW5nRmllbGRFZGl0b3IpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnAtcG9wdXAtZWRpdGluZy1maWVsZC1pbWFnZScsIHRoaXMucG9wdXBJbWFnZUVkaXRpbmdGaWVsZCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHgtcGljdHVyZS1lZGl0aW5nLXRvb2xiYXItcG9wdXAnLCB0aGlzLnBpY3R1cmVFZGl0aW5nVG9vbGJhclBvcHVwKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeC1waWN0dXJlLWVkaXRpbmctYnJ1c2gtb3B0aW9ucycsIHRoaXMucGljdHVyZUVkaXRpbmdCcnVzaE9wdGlvbnMpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4LXBpY3R1cmUtZWRpdGluZy1zaXplbW9kZS1hbGlnbm1lbnQnLCB0aGlzLnBpY3R1cmVFZGl0aW5nU2l6ZU9wdGlvbnMpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4LXBpY3R1cmUtZWRpdGluZy1pbWFnZXNwaWNrZXInLCB0aGlzLnBpY3R1cmVFZGl0aW5nSW1hZ2VzUGlja2VyKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeC1waWN0dXJlLWVkaXRpbmctaW1hZ2VwaWNrZXJ3aXRoZmlsdGVyJywgdGhpcy5waWN0dXJlRWRpdGluZ0ltYWdlc1BpY2tlcldpdGhGaWx0ZXIpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJldmlldy1wcm9ncmVzcy1iYXInLCB0aGlzLnByb2dyZXNzQmFyKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLWV4cG9ydC10b29sJywgdGhpcy5leHBvcnRUb29sKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLWNoZWNrYm94Y3VzdG9tZ2x5cGgnLCB0aGlzLmNoZWNrYm94R2x5cGgpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmRwLXN1cmZhY2UtbW9iaWxlJywgdGhpcy5tb2JpbGVTdXJmYWNlKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXByZXZpZXctcGFnZS1tb2JpbGUnLCB0aGlzLm1vYmlsZVBhZ2UpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmRwLXN1cmZhY2UtbW9iaWxlLWJvdHRvbScsIHRoaXMubW9iaWxlQWN0aW9ucyk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1tZW51LXBhcmFtZXRlcnMtY29udGVudCcsIHRoaXMubW9iaWxlUGFyYW1ldGVyc1BvcHVwKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJ2LXByZXZpZXctcGFyYW1ldGVycy1tb2JpbGUnLCB0aGlzLm1vYmlsZVBhcmFtZXRlcnMpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnYtcmFuZ2UtcGFyYW1ldGVyLW1vYmlsZScsIHRoaXMubW9iaWxlUGFyYW1ldGVyc0RhdGVSYW5nZSk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhydi1wcmV2aWV3LWRhdGUtcmFuZ2UtbW9iaWxlJywgdGhpcy5tb2JpbGVEYXRlUmFuZ2UpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtbWVudS1leHBvcnQtY29udGVudCcsIHRoaXMubW9iaWxlRXhwb3J0KTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkcC1zZWFyY2gtbW9iaWxlJywgdGhpcy5tb2JpbGVzZWFyY2gpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmRwLXBhZ2VzLW1vYmlsZScsIHRoaXMubW9iaWxlcGFnaW5hdG9yKTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICNleHBvcnRBY3Rpb24gbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di10b29sYmFyLWV4cG9ydCBbZGF0YV09XCJkYXRhXCI+PC9keHYtdG9vbGJhci1leHBvcnQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3BhZ2VyQWN0aW9uIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtdG9vbGJhci1wYWdlciBbZGF0YV09XCJkYXRhXCI+PC9keHYtdG9vbGJhci1wYWdlcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjem9vbUFjdGlvbiBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXRvb2xiYXItem9vbSBbZGF0YV09XCJkYXRhXCI+PC9keHYtdG9vbGJhci16b29tPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0b29sYmFyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtdG9vbGJhciBbZGF0YV09XCJkYXRhXCI+PC9keHYtdG9vbGJhcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcGFyYW1ldGVycyBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXBhcmFtZXRlcnMgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LXBhcmFtZXRlcnM+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2VkaXRvciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWVkaXRvciBbZGF0YV09XCJkYXRhXCI+PC9keHYtZWRpdG9yPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtdWx0aXZhbHVlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbXVsdGl2YWx1ZSBbZGF0YV09XCJkYXRhXCI+PC9keHYtbXVsdGl2YWx1ZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZXhwb3J0b3B0aW9ucyBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWV4cG9ydC1vcHRpb25zIFtkYXRhXT1cImRhdGFcIj48L2R4di1leHBvcnQtb3B0aW9ucz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjY2hlY2tFZGl0aW5nRmllbGQgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1lZGl0aW5nLWZpZWxkLWNoZWNrYm94IFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0aW5nLWZpZWxkLWNoZWNrYm94PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNyYWRpb0VkaXRpbmdGaWVsZCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWVkaXRpbmctZmllbGQtcmFkaW8gW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWVkaXRpbmctZmllbGQtcmFkaW8+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NoYXJhY3RlckNvbWJFZGl0aW5nRmllbGQgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1lZGl0aW5nLWZpZWxkLWNoYXJhY3Rlci1jb21iIFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0aW5nLWZpZWxkLWNoYXJhY3Rlci1jb21iPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0ZXh0RWRpdGluZ0ZpZWxkIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdGluZy1maWVsZC10ZXh0IFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0aW5nLWZpZWxkLXRleHQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3RleHRFZGl0aW5nRmllbGRNYXNrIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdGluZy1maWVsZC1tYXNrIFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0aW5nLWZpZWxkLW1hc2s+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3RleHRFZGl0aW5nRmllbGREYXRlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdGluZy1maWVsZC1kYXRldGltZSBbZGF0YV09XCJkYXRhXCI+PC9keHYtZWRpdGluZy1maWVsZC1kYXRldGltZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjdGV4dEVkaXRpbmdGaWVsZE51bWJlciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWVkaXRpbmctZmllbGQtbnVtYmVyIFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0aW5nLWZpZWxkLW51bWJlcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjdGV4dEVkaXRpbmdGaWVsZENvbnRhaW5lciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWVkaXRpbmctZmllbGQtY29udGFpbmVyIFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0aW5nLWZpZWxkLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjaW1hZ2VFZGl0aW5nRmllbGQgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1pbWFnZS1lZGl0aW5nLWZpZWxkIFtkYXRhXT1cImRhdGFcIj48L2R4di1pbWFnZS1lZGl0aW5nLWZpZWxkPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNpbWFnZUVkaXRpbmdGaWVsZEVkaXRvciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWltYWdlLWVkaXRpbmctZmllbGQtZWRpdG9yIFtkYXRhXT1cImRhdGFcIj48L2R4di1pbWFnZS1lZGl0aW5nLWZpZWxkLWVkaXRvcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcG9wdXBJbWFnZUVkaXRpbmdGaWVsZCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXBvcHVwLWltYWdlLWVkaXRpbmctZmllbGQgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LXBvcHVwLWltYWdlLWVkaXRpbmctZmllbGQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3BpY3R1cmVFZGl0aW5nVG9vbGJhclBvcHVwIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtcGljdHVyZS1lZGl0b3ItdG9vbGJhci1wb3B1cCBbZGF0YV09XCJkYXRhXCI+PC9keHYtcGljdHVyZS1lZGl0b3ItdG9vbGJhci1wb3B1cD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcGljdHVyZUVkaXRpbmdCcnVzaE9wdGlvbnMgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1waWN0dXJlLWVkaXRpbmctYnJ1c2gtb3B0aW9ucyBbZGF0YV09XCJkYXRhXCI+PC9keHYtcGljdHVyZS1lZGl0aW5nLWJydXNoLW9wdGlvbnM+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3BpY3R1cmVFZGl0aW5nU2l6ZU9wdGlvbnMgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1waWN0dXJlLWVkaXRpbmctc2l6ZS1vcHRpb25zIFtkYXRhXT1cImRhdGFcIj48L2R4di1waWN0dXJlLWVkaXRpbmctc2l6ZS1vcHRpb25zPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwaWN0dXJlRWRpdGluZ0ltYWdlc1BpY2tlciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXBpY3R1cmUtZWRpdGluZy1pbWFnZXNwaWNrZXIgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LXBpY3R1cmUtZWRpdGluZy1pbWFnZXNwaWNrZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3BpY3R1cmVFZGl0aW5nSW1hZ2VzUGlja2VyV2l0aEZpbHRlciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXBpY3R1cmUtZWRpdGluZy1pbWFnZXNwaWNrZXJ3aXRoZmlsdGVyIFtkYXRhXT1cImRhdGFcIj48L2R4di1waWN0dXJlLWVkaXRpbmctaW1hZ2VzcGlja2Vyd2l0aGZpbHRlcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZG9jdW1lbnRtYXAgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1kb2N1bWVudC1tYXAgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWRvY3VtZW50LW1hcD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbXVsdGl2YWx1ZUVkaXRhYmxlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbXVsdGl2YWx1ZS1lZGl0YWJsZSBbZGF0YV09XCJkYXRhXCI+PC9keHYtbXVsdGl2YWx1ZS1lZGl0YWJsZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2lnbmF0dXJlRWRpdG9yIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtc2lnbmF0dXJlLWVkaXRvciBbZGF0YV09XCJkYXRhXCI+PC9keHYtc2lnbmF0dXJlLWVkaXRvcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGF0ZXJhbmdlaW5wdXQgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1kYXRlLXJhbmdlIFtkYXRhXT1cImRhdGFcIj48L2R4di1kYXRlLXJhbmdlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkYXRlcmFuZ2VlcG9wdXAgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1kYXRlcmFuZ2UtcG9wdXAgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWRhdGVyYW5nZS1wb3B1cD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGF0ZXJhbmdlZWNhbGVuZGFyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZGF0ZXJhbmdlLWNhbGVuZGFyIFtkYXRhXT1cImRhdGFcIj48L2R4di1kYXRlcmFuZ2UtY2FsZW5kYXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3N1cmZhY2UgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1zdXJmYWNlIFtkYXRhXT1cImRhdGFcIj48L2R4di1zdXJmYWNlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwYWdlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtcGFnZSBbZGF0YV09XCJkYXRhXCI+PC9keHYtcGFnZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZWRpdG9yQ29udGVudCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWVkaXRvci1jb250ZW50IFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0b3ItY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZ3JvdXBFZGl0b3IgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1ncm91cC1lZGl0b3IgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWdyb3VwLWVkaXRvcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2VhcmNoIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtc2VhcmNoIFtkYXRhXT1cImRhdGFcIj48L2R4di1zZWFyY2g+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2JyaWNrIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtYnJpY2sgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWJyaWNrPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNicmlja0NsaWNrYWJsZSBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWJyaWNrLWNsaWNrYWJsZSBbZGF0YV09XCJkYXRhXCI+PC9keHYtYnJpY2stY2xpY2thYmxlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNleHBvcnRUb29sIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZXhwb3J0LXRvb2wgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWV4cG9ydC10b29sPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzZXBhcmF0b3IgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGRpdiBjbGFzcz1cImR4cmQtcGFyYW1ldGVycy1pdGVtLXNlcGFyYXRvclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZHhyZC1pdGVtLXNlcGFyYXRvciBkeGQtYm9yZGVyLXNlY29uZGFyeVwiPjwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwcm9ncmVzc0JhciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXByb2dyZXNzLWJhciBbZGF0YV09XCJkYXRhXCI+PC9keHYtcHJvZ3Jlc3MtYmFyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjaGVja2JveGdseXBoIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdGluZy1maWVsZC1jaGVja2JveC1nbHlwaCBbZGF0YV09XCJkYXRhXCI+PC9keHYtZWRpdGluZy1maWVsZC1jaGVja2JveC1nbHlwaD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlc3VyZmFjZSBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LW1vYmlsZS1zdXJmYWNlIFtkYXRhXT1cImRhdGFcIj48L2R4di1tb2JpbGUtc3VyZmFjZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlcGFnZSBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LW1vYmlsZS1wYWdlIFtkYXRhXT1cImRhdGFcIj48L2R4di1tb2JpbGUtcGFnZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlYWN0aW9ucyBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LW1vYmlsZS1hY3Rpb25zIFtkYXRhXT1cImRhdGFcIj48L2R4di1tb2JpbGUtYWN0aW9ucz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlcGFyYW1ldGVycyBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LW1vYmlsZS1wYXJhbWV0ZXJzIFtkYXRhXT1cImRhdGFcIj48L2R4di1tb2JpbGUtcGFyYW1ldGVycz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlcGFyYW1ldGVyc3BvcHVwIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbW9iaWxlLXBhcmFtZXRlcnMtcG9wdXAgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LW1vYmlsZS1wYXJhbWV0ZXJzLXBvcHVwPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtb2JpbGVwYXJhbWV0ZXJzZGF0ZXJhbmdlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbW9iaWxlLXBhcmFtZXRlcnMtZGF0ZXJhbmdlIFtkYXRhXT1cImRhdGFcIj48L2R4di1tb2JpbGUtcGFyYW1ldGVycy1kYXRlcmFuZ2U+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI21vYmlsZWRhdGVyYW5nZSBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWRhdGUtcmFuZ2UtbW9iaWxlIFtkYXRhXT1cImRhdGFcIj48L2R4di1kYXRlLXJhbmdlLW1vYmlsZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlZXhwb3J0IGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbW9iaWxlLWFjdGlvbnMtZXhwb3J0IFtkYXRhXT1cImRhdGFcIj48L2R4di1tb2JpbGUtYWN0aW9ucy1leHBvcnQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI21vYmlsZXNlYXJjaCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXNlYXJjaC1tb2JpbGUgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LXNlYXJjaC1tb2JpbGU+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI21vYmlsZXBhZ2luYXRvciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXBhZ2VzLW1vYmlsZSBbZGF0YV09XCJkYXRhXCI+PC9keHYtcGFnZXMtbW9iaWxlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNicmVhZGNydW1iIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtYnJlYWRjcnVtYnMgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWJyZWFkY3J1bWJzPlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
276
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2R4LXJlcG9ydC12aWV3ZXIvY29tcG9uZW50cy9yZXBvcnRpbmcvdGVtcGxhdGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2R4LXJlcG9ydC12aWV3ZXIvY29tcG9uZW50cy9yZXBvcnRpbmcvdGVtcGxhdGVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBc0NqRixNQUFNLE9BQU8sd0JBQXdCO0lBc0RuQyxZQUFvQixlQUErQjtRQUEvQixvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7SUFDbkQsQ0FBQztJQUNELGVBQWU7UUFDWCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsbUNBQW1DLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLHdCQUF3QixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxpQ0FBaUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxRSxJ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bmVudCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVNlbGVjdEJveEFjdGlvblZpZXdNb2RlbCB9IGZyb20gJ0BkZXZleHByZXNzL2FuYWx5dGljcy1jb3JlL3dpZGdldHMvdXRpbHMnO1xuaW1wb3J0IHsgVGVtcGxhdGVFbmdpbmUgfSBmcm9tICcuLi8uLi91dGlscy90ZW1wbGF0ZUVuZ2luZSc7XG5pbXBvcnQgeyBJT2JqZWN0UHJvcGVydGllc1ZpZXdNb2RlbCB9IGZyb20gJ0BkZXZleHByZXNzL2FuYWx5dGljcy1jb3JlL3Byb3BlcnR5LWdyaWQvcHJvcGVydHlncmlkJztcbmltcG9ydCB7IFJlcG9ydFByZXZpZXcgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvcmVwb3J0UHJldmlldyc7XG5pbXBvcnQgeyBJUGFyYW1ldGVyc1BhbmVsVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL3BhcmFtZXRlcnMvcHJldmlld1BhcmFtZXRlcnNWaWV3TW9kZWwudmlld21vZGVsJztcbmltcG9ydCB7IElFeHBvcnRBY3Rpb25WaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvZXhwb3J0T3B0aW9ucy9leHBvcnRPcHRpb25zTW9kZWwnO1xuaW1wb3J0IHsgSUVkaXRvclZpZXdNb2RlbCB9IGZyb20gJ0BkZXZleHByZXNzL2FuYWx5dGljcy1jb3JlL3Byb3BlcnR5LWdyaWQvd2lkZ2V0cy9lZGl0b3InO1xuaW1wb3J0IHsgSU11bHRpVmFsdWVFZGl0b3JWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvd2lkZ2V0cy9fbXVsdGlWYWx1ZUVkaXRvcic7XG5pbXBvcnQgeyBJVGFiUGFuZWxJdGVtV2l0aFByb3BlcnR5R3JpZFZpZXdNb2RlbCB9IGZyb20gJ0BkZXZleHByZXNzL2FuYWx5dGljcy1jb3JlL2NvcmUvdG9vbHMvX3RhYkluZm9XaXRoUHJvcGVydHlHcmlkJztcbmltcG9ydCB7IElEb2N1bWVudE1hcFZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9kb2N1bWVudE1hcC9fZG9jdW1lbnRNYXBNb2RlbCc7XG5pbXBvcnQgeyBJRGF0ZVJhbmdlRWRpdG9yT3B0aW9ucyB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci93aWRnZXRzL2RhdGVSYW5nZS9kYXRlUmFuZ2VFZGl0b3InO1xuaW1wb3J0IHsgSURhdGVSYW5nZUNhbGVuZGFyVmlld01vZGVsLCBJRGF0ZVJhbmdlRWRpdG9yVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL3dpZGdldHMvZGF0ZVJhbmdlL2RhdGVSYW5nZUVkaXRvci52aWV3bW9kZWwnO1xuaW1wb3J0IHsgSVJlcG9ydFByZXZpZXdWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvcmVwb3J0UHJldmlldy52aWV3TW9kZWwnO1xuaW1wb3J0IHsgSVByZXZpZXdQYWdlVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2ludGVybmFsL19wYWdlLnZpZXdNb2RlbCc7XG5pbXBvcnQgeyBJU2VhcmNoVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL3NlYXJjaC9fc2VhcmNoVmlld01vZGVsJztcbmltcG9ydCB7IElCcmlja05vZGUgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvdXRpbHMvdXRpbHMnO1xuaW1wb3J0IHsgSVRleHRFZGl0aW5nRmllbGREYXRhLCBJVGV4dEVkaXRpbmdGaWVsZFZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9lZGl0aW5nL21vZGVscy90ZXh0RWRpdGluZ0ZpZWxkJztcbmltcG9ydCB7IElDaGFyYWN0ZXJDb21iRWRpdGluZ0ZpZWxkVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2VkaXRpbmcvbW9kZWxzL2NoYXJhY3RlckNvbWJFZGl0aW5nRmllbGQnO1xuaW1wb3J0IHsgSUNoZWNrRWRpdGluZ0ZpZWxkVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2VkaXRpbmcvbW9kZWxzL2NoZWNrRWRpdGluZ0ZpZWxkJztcbmltcG9ydCB7IElFZGl0aW5nRmllbGRWaWV3TW9kZWxCYXNlIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2VkaXRpbmcvbW9kZWxzL2VkaXRpbmdGaWVsZEJhc2UnO1xuaW1wb3J0IHsgSVBvcHVwSW1hZ2VFZGl0aW5nRmllbGRWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvZWRpdGluZy9tb2RlbHMvcG9wdXBJbWFnZUVkaXRpbmdGaWVsZCc7XG5pbXBvcnQgeyBJUGljdHVyZUVkaXRvckFjdGlvblBvcHVwIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL3dpZGdldHMvcGljdHVyZUVkaXRvci9fcGljdHVyZUVkaXRvclRvb2xiYXJJdGVtJztcbmltcG9ydCB7IElQYWludGVyQnJ1c2hPcHRpb25zLCBJUGFpbnRlclNpemVPcHRpb25zIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL3dpZGdldHMvcGljdHVyZUVkaXRvci9fcGFpbnRlcic7XG5pbXBvcnQgeyBJSW1hZ2VQaWNrZXJBY3Rpb25WaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvd2lkZ2V0cy9waWN0dXJlRWRpdG9yL19pbWFnZVBpY2tlcic7XG5pbXBvcnQgeyBJUHJvZ3Jlc3NCYXJWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvaW50ZXJuYWwvX3Byb2dyZXNzVmlld01vZGVsJztcbmltcG9ydCB7IElFeHBvcnRUb29sVmlld01vZGVsIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2ludGVybmFsL19leHBvcnRIYW5kbGVyLnZpZXdNb2RlbCc7XG5pbXBvcnQgeyBJTW9iaWxlUmVwb3J0UHJldmlld1ZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9tb2JpbGUvbW9iaWxlUHJldmlldy52aWV3TW9kZWwnO1xuaW1wb3J0IHsgSU1vYmlsZVBhZ2VWaWV3TW9kZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvbW9iaWxlL2ludGVybmFsL19tb2JpbGVQYWdlJztcbmltcG9ydCB7IElNb2JpbGVBY3Rpb25MaXN0Vmlld01vZGVsLCBJTW9iaWxlRXhwb3J0QWN0aW9uIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL21vYmlsZS91dGlscy9fbW9iaWxlQWN0aW9uTGlzdCc7XG5pbXBvcnQgeyBJUGFyYW1ldGVyc1BvcHVwVmlld01vZGVsQmFzZSB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9tb2JpbGUvaW50ZXJuYWwvX3BhcmFtZXRlcnNQb3B1cC52aWV3TW9kZWwnO1xuaW1wb3J0IHsgSU1vYmlsZVBhZ2luYXRvclZpZXdNb2RlbCwgSU1vYmlsZVNlYXJjaFZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3Njb3Blcy9yZXBvcnRpbmctdmlld2VyLW1vYmlsZS1pbnRlcm5hbCc7XG5pbXBvcnQgeyBJQnJlYWRjcnVtYlZpZXdNb2RlbCB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3Njb3Blcy9yZXBvcnRpbmctdmlld2VyLWludGVybmFsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkeHYtdGVtcGxhdGVzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGVzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBWaWV3ZXJUZW1wbGF0ZXNDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZCgndG9vbGJhcicpIHRvb2xiYXIhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IFJlcG9ydFByZXZpZXcgfT47XG4gIEBWaWV3Q2hpbGQoJ2JyZWFkY3J1bWInKSBicmVhZGNydW1iITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJQnJlYWRjcnVtYlZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnZXhwb3J0QWN0aW9uJykgZXhwb3J0QWN0aW9uITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJRXhwb3J0QWN0aW9uVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdwYWdlckFjdGlvbicpIHBhZ2VyQWN0aW9uITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJU2VsZWN0Qm94QWN0aW9uVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCd6b29tQWN0aW9uJykgem9vbUFjdGlvbiE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVNlbGVjdEJveEFjdGlvblZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgncGFyYW1ldGVycycpIHBhcmFtZXRlcnMhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQYXJhbWV0ZXJzUGFuZWxWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2VkaXRvcicpIGVkaXRvciE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSUVkaXRvclZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnbXVsdGl2YWx1ZScpIG11bHRpdmFsdWUhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0b3JWaWV3TW9kZWw8SU11bHRpVmFsdWVFZGl0b3JWaWV3TW9kZWw+IH0+O1xuICBAVmlld0NoaWxkKCdtdWx0aXZhbHVlRWRpdGFibGUnKSBtdWx0aXZhbHVlRWRpdGFibGUhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0b3JWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3NpZ25hdHVyZUVkaXRvcicpIHNpZ25hdHVyZUVkaXRvciE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSUVkaXRvclZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnZXhwb3J0b3B0aW9ucycpIGV4cG9ydE9wdGlvbnMhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElUYWJQYW5lbEl0ZW1XaXRoUHJvcGVydHlHcmlkVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdkb2N1bWVudG1hcCcpIGRvY3VtZW50TWFwITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJRG9jdW1lbnRNYXBWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2RhdGVyYW5nZWlucHV0JykgZGF0ZXJhbmdlaW5wdXQhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0b3JWaWV3TW9kZWw8SURhdGVSYW5nZUVkaXRvck9wdGlvbnM+IH0+O1xuICBAVmlld0NoaWxkKCdkYXRlcmFuZ2VlcG9wdXAnKSBkYXRlcmFuZ2VQb3B1cCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSURhdGVSYW5nZUVkaXRvclZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnZGF0ZXJhbmdlZWNhbGVuZGFyJykgZGF0ZXJhbmdlZWNhbGVuZGFyITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJRGF0ZVJhbmdlQ2FsZW5kYXJWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3N1cmZhY2UnKSBzdXJmYWNlITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJUmVwb3J0UHJldmlld1ZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgncGFnZScpIHBhZ2UhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQcmV2aWV3UGFnZVZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnZWRpdG9yQ29udGVudCcpIGVkaXRvckNvbnRlbnQhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0b3JWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2dyb3VwRWRpdG9yJykgZ3JvdXBFZGl0b3IhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElPYmplY3RQcm9wZXJ0aWVzVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdzZWFyY2gnKSBzZWFyY2ghOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElTZWFyY2hWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2JyaWNrJykgYnJpY2shOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElCcmlja05vZGUgfT47XG4gIEBWaWV3Q2hpbGQoJ2JyaWNrQ2xpY2thYmxlJykgYnJpY2tDbGlja2FibGUhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElCcmlja05vZGUgfT47XG4gIEBWaWV3Q2hpbGQoJ3NlcGFyYXRvcicpIHNlcGFyYXRvciE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSUVkaXRvclZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgndGV4dEVkaXRpbmdGaWVsZENvbnRhaW5lcicpIHRleHRFZGl0aW5nRmllbGRDb250YWluZXIhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElUZXh0RWRpdGluZ0ZpZWxkVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCd0ZXh0RWRpdGluZ0ZpZWxkJykgdGV4dEVkaXRpbmdGaWVsZCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVRleHRFZGl0aW5nRmllbGREYXRhIH0+O1xuICBAVmlld0NoaWxkKCd0ZXh0RWRpdGluZ0ZpZWxkRGF0ZScpIHRleHRFZGl0aW5nRmllbGREYXRlITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJVGV4dEVkaXRpbmdGaWVsZERhdGEgfT47XG4gIEBWaWV3Q2hpbGQoJ3RleHRFZGl0aW5nRmllbGRNYXNrJykgdGV4dEVkaXRpbmdGaWVsZE1hc2shOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElUZXh0RWRpdGluZ0ZpZWxkRGF0YSB9PjtcbiAgQFZpZXdDaGlsZCgndGV4dEVkaXRpbmdGaWVsZE51bWJlcicpIHRleHRFZGl0aW5nRmllbGROdW1iZXIhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElUZXh0RWRpdGluZ0ZpZWxkRGF0YSB9PjtcbiAgQFZpZXdDaGlsZCgnY2hhcmFjdGVyQ29tYkVkaXRpbmdGaWVsZCcpIGNoYXJhY3RlckNvbWJFZGl0aW5nRmllbGQhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElDaGFyYWN0ZXJDb21iRWRpdGluZ0ZpZWxkVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdjaGVja0VkaXRpbmdGaWVsZCcpIGNoZWNrRWRpdGluZ0ZpZWxkITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJQ2hlY2tFZGl0aW5nRmllbGRWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3JhZGlvRWRpdGluZ0ZpZWxkJykgcmFkaW9FZGl0aW5nRmllbGQhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElDaGVja0VkaXRpbmdGaWVsZFZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnaW1hZ2VFZGl0aW5nRmllbGQnKSBpbWFnZUVkaXRpbmdGaWVsZCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSUVkaXRpbmdGaWVsZFZpZXdNb2RlbEJhc2UgfT47XG4gIEBWaWV3Q2hpbGQoJ2ltYWdlRWRpdGluZ0ZpZWxkRWRpdG9yJykgaW1hZ2VFZGl0aW5nRmllbGRFZGl0b3IhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElFZGl0aW5nRmllbGRWaWV3TW9kZWxCYXNlIH0+O1xuICBAVmlld0NoaWxkKCdwb3B1cEltYWdlRWRpdGluZ0ZpZWxkJykgcG9wdXBJbWFnZUVkaXRpbmdGaWVsZCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVBvcHVwSW1hZ2VFZGl0aW5nRmllbGRWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ3BpY3R1cmVFZGl0aW5nVG9vbGJhclBvcHVwJykgcGljdHVyZUVkaXRpbmdUb29sYmFyUG9wdXAhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQaWN0dXJlRWRpdG9yQWN0aW9uUG9wdXAgfT47XG4gIEBWaWV3Q2hpbGQoJ3BpY3R1cmVFZGl0aW5nQnJ1c2hPcHRpb25zJykgcGljdHVyZUVkaXRpbmdCcnVzaE9wdGlvbnMhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQYWludGVyQnJ1c2hPcHRpb25zIH0+O1xuICBAVmlld0NoaWxkKCdwaWN0dXJlRWRpdGluZ1NpemVPcHRpb25zJykgcGljdHVyZUVkaXRpbmdTaXplT3B0aW9ucyE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVBhaW50ZXJTaXplT3B0aW9ucyB9PjtcbiAgQFZpZXdDaGlsZCgncGljdHVyZUVkaXRpbmdJbWFnZXNQaWNrZXInKSBwaWN0dXJlRWRpdGluZ0ltYWdlc1BpY2tlciE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSUltYWdlUGlja2VyQWN0aW9uVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdwaWN0dXJlRWRpdGluZ0ltYWdlc1BpY2tlcldpdGhGaWx0ZXInKSBwaWN0dXJlRWRpdGluZ0ltYWdlc1BpY2tlcldpdGhGaWx0ZXIhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElJbWFnZVBpY2tlckFjdGlvblZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgncHJvZ3Jlc3NCYXInKSBwcm9ncmVzc0JhciE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVByb2dyZXNzQmFyVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdleHBvcnRUb29sJykgZXhwb3J0VG9vbCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSUV4cG9ydFRvb2xWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ2NoZWNrYm94Z2x5cGgnKSBjaGVja2JveEdseXBoITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJQ2hlY2tFZGl0aW5nRmllbGRWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ21vYmlsZXN1cmZhY2UnKSBtb2JpbGVTdXJmYWNlITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJTW9iaWxlUmVwb3J0UHJldmlld1ZpZXdNb2RlbH0+O1xuICBAVmlld0NoaWxkKCdtb2JpbGVwYWdlJykgbW9iaWxlUGFnZSE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSU1vYmlsZVBhZ2VWaWV3TW9kZWwgfT47XG4gIEBWaWV3Q2hpbGQoJ21vYmlsZWFjdGlvbnMnKSBtb2JpbGVBY3Rpb25zITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJTW9iaWxlQWN0aW9uTGlzdFZpZXdNb2RlbCB9PjtcbiAgQFZpZXdDaGlsZCgnbW9iaWxlcGFyYW1ldGVycycpIG1vYmlsZVBhcmFtZXRlcnMhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQYXJhbWV0ZXJzUG9wdXBWaWV3TW9kZWxCYXNlIH0+O1xuICBAVmlld0NoaWxkKCdtb2JpbGVwYXJhbWV0ZXJzcG9wdXAnKSBtb2JpbGVQYXJhbWV0ZXJzUG9wdXAhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElQYXJhbWV0ZXJzUG9wdXBWaWV3TW9kZWxCYXNlIH0+O1xuICBAVmlld0NoaWxkKCdtb2JpbGVwYXJhbWV0ZXJzZGF0ZXJhbmdlJykgbW9iaWxlUGFyYW1ldGVyc0RhdGVSYW5nZSE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVBhcmFtZXRlcnNQb3B1cFZpZXdNb2RlbEJhc2UgfT47XG4gIEBWaWV3Q2hpbGQoJ21vYmlsZWRhdGVyYW5nZScpIG1vYmlsZURhdGVSYW5nZSE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSVBhcmFtZXRlcnNQb3B1cFZpZXdNb2RlbEJhc2UgfT47XG4gIEBWaWV3Q2hpbGQoJ21vYmlsZWV4cG9ydCcpIG1vYmlsZUV4cG9ydCE6IFRlbXBsYXRlUmVmPHsgZGF0YTogSU1vYmlsZUV4cG9ydEFjdGlvbiB9PjtcbiAgQFZpZXdDaGlsZCgnbW9iaWxlc2VhcmNoJykgbW9iaWxlc2VhcmNoITogVGVtcGxhdGVSZWY8eyBkYXRhOiBJTW9iaWxlU2VhcmNoVmlld01vZGVsIH0+O1xuICBAVmlld0NoaWxkKCdtb2JpbGVwYWdpbmF0b3InKSBtb2JpbGVwYWdpbmF0b3IhOiBUZW1wbGF0ZVJlZjx7IGRhdGE6IElNb2JpbGVQYWdpbmF0b3JWaWV3TW9kZWwgfT47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfdGVtcGxhdGVFbmdpbmU6IFRlbXBsYXRlRW5naW5lKSB7XG4gIH1cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJldmlldy1wYWdlcicsIHRoaXMucGFnZXJBY3Rpb24pO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtem9vbS1hdXRvZml0LXNlbGVjdC10ZW1wbGF0ZScsIHRoaXMuem9vbUFjdGlvbik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LWV4cG9ydC10bycsIHRoaXMuZXhwb3J0QWN0aW9uKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXByZXZpZXctdG9vbGJhci1zY3JvbGxhYmxlJywgdGhpcy50b29sYmFyKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXByZXZpZXctYnJlYWRjcnVtYicsIHRoaXMuYnJlYWRjcnVtYik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LXBhcmFtZXRlcnMnLCB0aGlzLnBhcmFtZXRlcnMpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcGFyYW1ldGVycy1wcm9wZXJ0eS1lZGl0b3InLCB0aGlzLmVkaXRvcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZHYtc2lnbmF0dXJlJywgdGhpcy5zaWduYXR1cmVFZGl0b3IpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtbXVsdGl2YWx1ZScsIHRoaXMubXVsdGl2YWx1ZSk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LWV4cG9ydC1vcHRpb25zJywgdGhpcy5leHBvcnRPcHRpb25zKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXByZXZpZXctZG9jdW1lbnQtbWFwJywgdGhpcy5kb2N1bWVudE1hcCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1tdWx0aXZhbHVlLWVkaXRhYmxlJywgdGhpcy5tdWx0aXZhbHVlRWRpdGFibGUpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnYtcmFuZ2UtcGFyYW1ldGVyJywgdGhpcy5kYXRlcmFuZ2VpbnB1dCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhydi1kYXRlcmFuZ2UtZWRpdG9yLXBvcHVwJywgdGhpcy5kYXRlcmFuZ2VQb3B1cCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhydi1kYXRlcmFuZ2UtY2FsZW5kYXInLCB0aGlzLmRhdGVyYW5nZWVjYWxlbmRhcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZHAtc3VyZmFjZScsIHRoaXMuc3VyZmFjZSk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LXBhZ2UnLCB0aGlzLnBhZ2UpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcGFyYW1ldGVycy1lZGl0b3ItY29udGVudCcsIHRoaXMuZWRpdG9yQ29udGVudCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcm9wZXJ0aWVzZWRpdG9yJywgdGhpcy5ncm91cEVkaXRvcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LXNlYXJjaCcsIHRoaXMuc2VhcmNoKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLXBhZ2UtYnJpY2stbW9iaWxlJywgdGhpcy5icmljayk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wYWdlLWJyaWNrLWNsaWNrYWJsZScsIHRoaXMuYnJpY2tDbGlja2FibGUpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcGFyYW1ldGVycy1zZXBhcmF0b3InLCB0aGlzLnNlcGFyYXRvcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1lZGl0aW5nLWZpZWxkLWNvbnRhaW5lcicsIHRoaXMudGV4dEVkaXRpbmdGaWVsZENvbnRhaW5lcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1lZGl0aW5nLWZpZWxkLXRleHQnLCB0aGlzLnRleHRFZGl0aW5nRmllbGQpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnAtZWRpdGluZy1maWVsZC1tYXNrJywgdGhpcy50ZXh0RWRpdGluZ0ZpZWxkTWFzayk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1lZGl0aW5nLWZpZWxkLWRhdGV0aW1lJywgdGhpcy50ZXh0RWRpdGluZ0ZpZWxkRGF0ZSk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1lZGl0aW5nLWZpZWxkLW51bWJlcicsIHRoaXMudGV4dEVkaXRpbmdGaWVsZE51bWJlcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1jaGFyYWN0ZXItY29tYi1lZGl0aW5nLWZpZWxkJywgdGhpcy5jaGFyYWN0ZXJDb21iRWRpdGluZ0ZpZWxkKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJwLWVkaXRpbmctZmllbGQtY2hlY2tib3gnLCB0aGlzLmNoZWNrRWRpdGluZ0ZpZWxkKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJwLWVkaXRpbmctZmllbGQtcmFkaW8nLCB0aGlzLnJhZGlvRWRpdGluZ0ZpZWxkKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJwLWVkaXRpbmctZmllbGQtaW1hZ2UnLCB0aGlzLmltYWdlRWRpdGluZ0ZpZWxkKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJwLWVkaXRpbmctZmllbGQtaW1hZ2UtZWRpdG9yJywgdGhpcy5pbWFnZUVkaXRpbmdGaWVsZEVkaXRvcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhycC1wb3B1cC1lZGl0aW5nLWZpZWxkLWltYWdlJywgdGhpcy5wb3B1cEltYWdlRWRpdGluZ0ZpZWxkKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeC1waWN0dXJlLWVkaXRpbmctdG9vbGJhci1wb3B1cCcsIHRoaXMucGljdHVyZUVkaXRpbmdUb29sYmFyUG9wdXApO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4LXBpY3R1cmUtZWRpdGluZy1icnVzaC1vcHRpb25zJywgdGhpcy5waWN0dXJlRWRpdGluZ0JydXNoT3B0aW9ucyk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHgtcGljdHVyZS1lZGl0aW5nLXNpemVtb2RlLWFsaWdubWVudCcsIHRoaXMucGljdHVyZUVkaXRpbmdTaXplT3B0aW9ucyk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHgtcGljdHVyZS1lZGl0aW5nLWltYWdlc3BpY2tlcicsIHRoaXMucGljdHVyZUVkaXRpbmdJbWFnZXNQaWNrZXIpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4LXBpY3R1cmUtZWRpdGluZy1pbWFnZXBpY2tlcndpdGhmaWx0ZXInLCB0aGlzLnBpY3R1cmVFZGl0aW5nSW1hZ2VzUGlja2VyV2l0aEZpbHRlcik7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1wcmV2aWV3LXByb2dyZXNzLWJhcicsIHRoaXMucHJvZ3Jlc3NCYXIpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtZXhwb3J0LXRvb2wnLCB0aGlzLmV4cG9ydFRvb2wpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtY2hlY2tib3hjdXN0b21nbHlwaCcsIHRoaXMuY2hlY2tib3hHbHlwaCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZHAtc3VyZmFjZS1tb2JpbGUnLCB0aGlzLm1vYmlsZVN1cmZhY2UpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmQtcHJldmlldy1wYWdlLW1vYmlsZScsIHRoaXMubW9iaWxlUGFnZSk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZHAtc3VyZmFjZS1tb2JpbGUtYm90dG9tJywgdGhpcy5tb2JpbGVBY3Rpb25zKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJkLW1lbnUtcGFyYW1ldGVycy1jb250ZW50JywgdGhpcy5tb2JpbGVQYXJhbWV0ZXJzUG9wdXApO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cnYtcHJldmlldy1wYXJhbWV0ZXJzLW1vYmlsZScsIHRoaXMubW9iaWxlUGFyYW1ldGVycyk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhydi1yYW5nZS1wYXJhbWV0ZXItbW9iaWxlJywgdGhpcy5tb2JpbGVQYXJhbWV0ZXJzRGF0ZVJhbmdlKTtcbiAgICAgIHRoaXMuX3RlbXBsYXRlRW5naW5lLnJlZ2lzdGVyKCdkeHJ2LXByZXZpZXctZGF0ZS1yYW5nZS1tb2JpbGUnLCB0aGlzLm1vYmlsZURhdGVSYW5nZSk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZC1tZW51LWV4cG9ydC1jb250ZW50JywgdGhpcy5tb2JpbGVFeHBvcnQpO1xuICAgICAgdGhpcy5fdGVtcGxhdGVFbmdpbmUucmVnaXN0ZXIoJ2R4cmRwLXNlYXJjaC1tb2JpbGUnLCB0aGlzLm1vYmlsZXNlYXJjaCk7XG4gICAgICB0aGlzLl90ZW1wbGF0ZUVuZ2luZS5yZWdpc3RlcignZHhyZHAtcGFnZXMtbW9iaWxlJywgdGhpcy5tb2JpbGVwYWdpbmF0b3IpO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2V4cG9ydEFjdGlvbiBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXRvb2xiYXItZXhwb3J0IFtkYXRhXT1cImRhdGFcIj48L2R4di10b29sYmFyLWV4cG9ydD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcGFnZXJBY3Rpb24gbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di10b29sYmFyLXBhZ2VyIFtkYXRhXT1cImRhdGFcIj48L2R4di10b29sYmFyLXBhZ2VyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN6b29tQWN0aW9uIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtdG9vbGJhci16b29tIFtkYXRhXT1cImRhdGFcIj48L2R4di10b29sYmFyLXpvb20+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3Rvb2xiYXIgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di10b29sYmFyIFtkYXRhXT1cImRhdGFcIj48L2R4di10b29sYmFyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwYXJhbWV0ZXJzIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtcGFyYW1ldGVycyBbZGF0YV09XCJkYXRhXCI+PC9keHYtcGFyYW1ldGVycz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZWRpdG9yIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdG9yIFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0b3I+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI211bHRpdmFsdWUgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1tdWx0aXZhbHVlIFtkYXRhXT1cImRhdGFcIj48L2R4di1tdWx0aXZhbHVlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNleHBvcnRvcHRpb25zIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZXhwb3J0LW9wdGlvbnMgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWV4cG9ydC1vcHRpb25zPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjaGVja0VkaXRpbmdGaWVsZCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWVkaXRpbmctZmllbGQtY2hlY2tib3ggW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWVkaXRpbmctZmllbGQtY2hlY2tib3g+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3JhZGlvRWRpdGluZ0ZpZWxkIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdGluZy1maWVsZC1yYWRpbyBbZGF0YV09XCJkYXRhXCI+PC9keHYtZWRpdGluZy1maWVsZC1yYWRpbz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjY2hhcmFjdGVyQ29tYkVkaXRpbmdGaWVsZCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWVkaXRpbmctZmllbGQtY2hhcmFjdGVyLWNvbWIgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWVkaXRpbmctZmllbGQtY2hhcmFjdGVyLWNvbWI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3RleHRFZGl0aW5nRmllbGQgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1lZGl0aW5nLWZpZWxkLXRleHQgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWVkaXRpbmctZmllbGQtdGV4dD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjdGV4dEVkaXRpbmdGaWVsZE1hc2sgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1lZGl0aW5nLWZpZWxkLW1hc2sgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWVkaXRpbmctZmllbGQtbWFzaz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjdGV4dEVkaXRpbmdGaWVsZERhdGUgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1lZGl0aW5nLWZpZWxkLWRhdGV0aW1lIFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0aW5nLWZpZWxkLWRhdGV0aW1lPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0ZXh0RWRpdGluZ0ZpZWxkTnVtYmVyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdGluZy1maWVsZC1udW1iZXIgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWVkaXRpbmctZmllbGQtbnVtYmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0ZXh0RWRpdGluZ0ZpZWxkQ29udGFpbmVyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdGluZy1maWVsZC1jb250YWluZXIgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWVkaXRpbmctZmllbGQtY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNpbWFnZUVkaXRpbmdGaWVsZCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWltYWdlLWVkaXRpbmctZmllbGQgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWltYWdlLWVkaXRpbmctZmllbGQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2ltYWdlRWRpdGluZ0ZpZWxkRWRpdG9yIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtaW1hZ2UtZWRpdGluZy1maWVsZC1lZGl0b3IgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWltYWdlLWVkaXRpbmctZmllbGQtZWRpdG9yPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwb3B1cEltYWdlRWRpdGluZ0ZpZWxkIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtcG9wdXAtaW1hZ2UtZWRpdGluZy1maWVsZCBbZGF0YV09XCJkYXRhXCI+PC9keHYtcG9wdXAtaW1hZ2UtZWRpdGluZy1maWVsZD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcGljdHVyZUVkaXRpbmdUb29sYmFyUG9wdXAgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1waWN0dXJlLWVkaXRvci10b29sYmFyLXBvcHVwIFtkYXRhXT1cImRhdGFcIj48L2R4di1waWN0dXJlLWVkaXRvci10b29sYmFyLXBvcHVwPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwaWN0dXJlRWRpdGluZ0JydXNoT3B0aW9ucyBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXBpY3R1cmUtZWRpdGluZy1icnVzaC1vcHRpb25zIFtkYXRhXT1cImRhdGFcIj48L2R4di1waWN0dXJlLWVkaXRpbmctYnJ1c2gtb3B0aW9ucz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcGljdHVyZUVkaXRpbmdTaXplT3B0aW9ucyBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXBpY3R1cmUtZWRpdGluZy1zaXplLW9wdGlvbnMgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LXBpY3R1cmUtZWRpdGluZy1zaXplLW9wdGlvbnM+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3BpY3R1cmVFZGl0aW5nSW1hZ2VzUGlja2VyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtcGljdHVyZS1lZGl0aW5nLWltYWdlc3BpY2tlciBbZGF0YV09XCJkYXRhXCI+PC9keHYtcGljdHVyZS1lZGl0aW5nLWltYWdlc3BpY2tlcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcGljdHVyZUVkaXRpbmdJbWFnZXNQaWNrZXJXaXRoRmlsdGVyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtcGljdHVyZS1lZGl0aW5nLWltYWdlc3BpY2tlcndpdGhmaWx0ZXIgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LXBpY3R1cmUtZWRpdGluZy1pbWFnZXNwaWNrZXJ3aXRoZmlsdGVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkb2N1bWVudG1hcCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWRvY3VtZW50LW1hcCBbZGF0YV09XCJkYXRhXCI+PC9keHYtZG9jdW1lbnQtbWFwPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtdWx0aXZhbHVlRWRpdGFibGUgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1tdWx0aXZhbHVlLWVkaXRhYmxlIFtkYXRhXT1cImRhdGFcIj48L2R4di1tdWx0aXZhbHVlLWVkaXRhYmxlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzaWduYXR1cmVFZGl0b3IgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1zaWduYXR1cmUtZWRpdG9yIFtkYXRhXT1cImRhdGFcIj48L2R4di1zaWduYXR1cmUtZWRpdG9yPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkYXRlcmFuZ2VpbnB1dCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWRhdGUtcmFuZ2UgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWRhdGUtcmFuZ2U+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RhdGVyYW5nZWVwb3B1cCBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWRhdGVyYW5nZS1wb3B1cCBbZGF0YV09XCJkYXRhXCI+PC9keHYtZGF0ZXJhbmdlLXBvcHVwPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkYXRlcmFuZ2VlY2FsZW5kYXIgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1kYXRlcmFuZ2UtY2FsZW5kYXIgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWRhdGVyYW5nZS1jYWxlbmRhcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc3VyZmFjZSBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LXN1cmZhY2UgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LXN1cmZhY2U+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3BhZ2UgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1wYWdlIFtkYXRhXT1cImRhdGFcIj48L2R4di1wYWdlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNlZGl0b3JDb250ZW50IGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZWRpdG9yLWNvbnRlbnQgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWVkaXRvci1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNncm91cEVkaXRvciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZHh2LWdyb3VwLWVkaXRvciBbZGF0YV09XCJkYXRhXCI+PC9keHYtZ3JvdXAtZWRpdG9yPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzZWFyY2ggbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1zZWFyY2ggW2RhdGFdPVwiZGF0YVwiPjwvZHh2LXNlYXJjaD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjYnJpY2sgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1icmljayBbZGF0YV09XCJkYXRhXCI+PC9keHYtYnJpY2s+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2JyaWNrQ2xpY2thYmxlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtYnJpY2stY2xpY2thYmxlIFtkYXRhXT1cImRhdGFcIj48L2R4di1icmljay1jbGlja2FibGU+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2V4cG9ydFRvb2wgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1leHBvcnQtdG9vbCBbZGF0YV09XCJkYXRhXCI+PC9keHYtZXhwb3J0LXRvb2w+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3NlcGFyYXRvciBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZHhyZC1wYXJhbWV0ZXJzLWl0ZW0tc2VwYXJhdG9yXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkeHJkLWl0ZW0tc2VwYXJhdG9yIGR4ZC1ib3JkZXItc2Vjb25kYXJ5XCI+PC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3Byb2dyZXNzQmFyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtcHJvZ3Jlc3MtYmFyIFtkYXRhXT1cImRhdGFcIj48L2R4di1wcm9ncmVzcy1iYXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NoZWNrYm94Z2x5cGggbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1lZGl0aW5nLWZpZWxkLWNoZWNrYm94LWdseXBoIFtkYXRhXT1cImRhdGFcIj48L2R4di1lZGl0aW5nLWZpZWxkLWNoZWNrYm94LWdseXBoPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtb2JpbGVzdXJmYWNlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbW9iaWxlLXN1cmZhY2UgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LW1vYmlsZS1zdXJmYWNlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtb2JpbGVwYWdlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbW9iaWxlLXBhZ2UgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LW1vYmlsZS1wYWdlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtb2JpbGVhY3Rpb25zIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbW9iaWxlLWFjdGlvbnMgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LW1vYmlsZS1hY3Rpb25zPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtb2JpbGVwYXJhbWV0ZXJzIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtbW9iaWxlLXBhcmFtZXRlcnMgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LW1vYmlsZS1wYXJhbWV0ZXJzPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtb2JpbGVwYXJhbWV0ZXJzcG9wdXAgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1tb2JpbGUtcGFyYW1ldGVycy1wb3B1cCBbZGF0YV09XCJkYXRhXCI+PC9keHYtbW9iaWxlLXBhcmFtZXRlcnMtcG9wdXA+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI21vYmlsZXBhcmFtZXRlcnNkYXRlcmFuZ2UgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1tb2JpbGUtcGFyYW1ldGVycy1kYXRlcmFuZ2UgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LW1vYmlsZS1wYXJhbWV0ZXJzLWRhdGVyYW5nZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlZGF0ZXJhbmdlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtZGF0ZS1yYW5nZS1tb2JpbGUgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LWRhdGUtcmFuZ2UtbW9iaWxlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtb2JpbGVleHBvcnQgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1tb2JpbGUtYWN0aW9ucy1leHBvcnQgW2RhdGFdPVwiZGF0YVwiPjwvZHh2LW1vYmlsZS1hY3Rpb25zLWV4cG9ydD5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlc2VhcmNoIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtc2VhcmNoLW1vYmlsZSBbZGF0YV09XCJkYXRhXCI+PC9keHYtc2VhcmNoLW1vYmlsZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbW9iaWxlcGFnaW5hdG9yIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkeHYtcGFnZXMtbW9iaWxlIFtkYXRhXT1cImRhdGFcIj48L2R4di1wYWdlcy1tb2JpbGU+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2JyZWFkY3J1bWIgbGV0LWRhdGE9XCJkYXRhXCI+XG4gICAgPGR4di1icmVhZGNydW1icyBbZGF0YV09XCJkYXRhXCI+PC9keHYtYnJlYWRjcnVtYnM+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -5,12 +5,12 @@ import * as i2 from "devextreme-angular";
|
|
|
5
5
|
export class PictureEditorBrushOptionsComponent {
|
|
6
6
|
}
|
|
7
7
|
PictureEditorBrushOptionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PictureEditorBrushOptionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
-
PictureEditorBrushOptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PictureEditorBrushOptionsComponent, selector: "dxv-picture-editing-brush-options", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"dx-picture-editing-brush-options\">\n <div class=\"dx-picture-editing-line-width\">\n <div class=\"dx-picture-editing-text\">{{data.brushWidthText}}</div>\n <dx-slider class=\"dx-picture-editing-line-width-slider\"\n [min]=\"1\"\n [max]=\"9\"\n [value]=\"data.lineWidth\"\n [label]=\"{ visible: true }\"\n [tooltip]=\"{ enabled: true, showMode: 'always', position: 'bottom' }\"\n (onValueChanged)=\"data.onLineWidthChanged($event)\">\n </dx-slider>\n </div>\n <div class=\"dx-picture-editing-line-color\">\n <div class=\"dx-picture-editing-text\">{{data.brushColorText}}</div>\n <div class=\"dx-picture-editing-brush-options-colors\">\n <div class=\"dx-picture-editing-brush-options-color\" *ngFor=\"let color of data.colors\" [class.selected]=\"color.isSelected\">\n <div class=\"dx-picture-editing-brush-options-color-cell\" [style.background]=\"color.value\" (click)=\"color.action()\"></div>\n </div>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.DxSliderComponent, selector: "dx-slider", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "keyStep", "label", "max", "min", "name", "readOnly", "rtlEnabled", "showRange", "step", "tabIndex", "tooltip", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeMode", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "keyStepChange", "labelChange", "maxChange", "minChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "showRangeChange", "stepChange", "tabIndexChange", "tooltipChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeModeChange", "visibleChange", "widthChange", "onBlur"] }] });
|
|
8
|
+
PictureEditorBrushOptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PictureEditorBrushOptionsComponent, selector: "dxv-picture-editing-brush-options", inputs: { data: "data" }, ngImport: i0, template: "<div class=\"dx-picture-editing-brush-options\">\n <div class=\"dx-picture-editing-line-width\">\n <div class=\"dx-picture-editing-text\">{{data.brushWidthText}}</div>\n <dx-slider class=\"dx-picture-editing-line-width-slider\"\n [min]=\"1\"\n [max]=\"9\"\n [value]=\"data.lineWidth\"\n [label]=\"{ visible: true }\"\n [tooltip]=\"{ enabled: true, showMode: 'always', position: 'bottom' }\"\n (onValueChanged)=\"this.data.onLineWidthChanged($event)\">\n </dx-slider>\n </div>\n <div class=\"dx-picture-editing-line-color\">\n <div class=\"dx-picture-editing-text\">{{data.brushColorText}}</div>\n <div class=\"dx-picture-editing-brush-options-colors\">\n <div class=\"dx-picture-editing-brush-options-color\" *ngFor=\"let color of data.colors\" [class.selected]=\"color.isSelected\">\n <div class=\"dx-picture-editing-brush-options-color-cell\" [style.background]=\"color.value\" (click)=\"color.action()\"></div>\n </div>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.DxSliderComponent, selector: "dx-slider", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "isDirty", "isValid", "keyStep", "label", "max", "min", "name", "readOnly", "rtlEnabled", "showRange", "step", "tabIndex", "tooltip", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeMode", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "isValidChange", "keyStepChange", "labelChange", "maxChange", "minChange", "nameChange", "readOnlyChange", "rtlEnabledChange", "showRangeChange", "stepChange", "tabIndexChange", "tooltipChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeModeChange", "visibleChange", "widthChange", "onBlur"] }] });
|
|
9
9
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PictureEditorBrushOptionsComponent, decorators: [{
|
|
10
10
|
type: Component,
|
|
11
|
-
args: [{ selector: 'dxv-picture-editing-brush-options', template: "<div class=\"dx-picture-editing-brush-options\">\n <div class=\"dx-picture-editing-line-width\">\n <div class=\"dx-picture-editing-text\">{{data.brushWidthText}}</div>\n <dx-slider class=\"dx-picture-editing-line-width-slider\"\n [min]=\"1\"\n [max]=\"9\"\n [value]=\"data.lineWidth\"\n [label]=\"{ visible: true }\"\n [tooltip]=\"{ enabled: true, showMode: 'always', position: 'bottom' }\"\n (onValueChanged)=\"data.onLineWidthChanged($event)\">\n </dx-slider>\n </div>\n <div class=\"dx-picture-editing-line-color\">\n <div class=\"dx-picture-editing-text\">{{data.brushColorText}}</div>\n <div class=\"dx-picture-editing-brush-options-colors\">\n <div class=\"dx-picture-editing-brush-options-color\" *ngFor=\"let color of data.colors\" [class.selected]=\"color.isSelected\">\n <div class=\"dx-picture-editing-brush-options-color-cell\" [style.background]=\"color.value\" (click)=\"color.action()\"></div>\n </div>\n </div>\n </div>\n</div>" }]
|
|
11
|
+
args: [{ selector: 'dxv-picture-editing-brush-options', template: "<div class=\"dx-picture-editing-brush-options\">\n <div class=\"dx-picture-editing-line-width\">\n <div class=\"dx-picture-editing-text\">{{data.brushWidthText}}</div>\n <dx-slider class=\"dx-picture-editing-line-width-slider\"\n [min]=\"1\"\n [max]=\"9\"\n [value]=\"data.lineWidth\"\n [label]=\"{ visible: true }\"\n [tooltip]=\"{ enabled: true, showMode: 'always', position: 'bottom' }\"\n (onValueChanged)=\"this.data.onLineWidthChanged($event)\">\n </dx-slider>\n </div>\n <div class=\"dx-picture-editing-line-color\">\n <div class=\"dx-picture-editing-text\">{{data.brushColorText}}</div>\n <div class=\"dx-picture-editing-brush-options-colors\">\n <div class=\"dx-picture-editing-brush-options-color\" *ngFor=\"let color of data.colors\" [class.selected]=\"color.isSelected\">\n <div class=\"dx-picture-editing-brush-options-color-cell\" [style.background]=\"color.value\" (click)=\"color.action()\"></div>\n </div>\n </div>\n </div>\n</div>" }]
|
|
12
12
|
}], propDecorators: { data: [{
|
|
13
13
|
type: Input,
|
|
14
14
|
args: ['data']
|
|
15
15
|
}] } });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGljdHVyZS1lZGl0aW5nLWJydXNoLW9wdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vZHgtcmVwb3J0LXZpZXdlci9jb21wb25lbnRzL3JlcG9ydGluZy93aWRnZXRzL3BpY3R1cmUtZWRpdG9yL3BpY3R1cmUtZWRpdGluZy1icnVzaC1vcHRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2R4LXJlcG9ydC12aWV3ZXIvY29tcG9uZW50cy9yZXBvcnRpbmcvd2lkZ2V0cy9waWN0dXJlLWVkaXRvci9waWN0dXJlLWVkaXRpbmctYnJ1c2gtb3B0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVFqRCxNQUFNLE9BQU8sa0NBQWtDOztnSUFBbEMsa0NBQWtDO29IQUFsQyxrQ0FBa0MsbUdDUi9DLG1sQ0FvQk07NEZEWk8sa0NBQWtDO2tCQUw5QyxTQUFTOytCQUNJLG1DQUFtQzs4QkFLOUIsSUFBSTtzQkFBbEIsS0FBSzt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVBhaW50ZXJCcnVzaE9wdGlvbnMgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvd2lkZ2V0cy9waWN0dXJlRWRpdG9yL19wYWludGVyJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkeHYtcGljdHVyZS1lZGl0aW5nLWJydXNoLW9wdGlvbnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9waWN0dXJlLWVkaXRpbmctYnJ1c2gtb3B0aW9ucy5jb21wb25lbnQuaHRtbCdcbn0pXG5cbmV4cG9ydCBjbGFzcyBQaWN0dXJlRWRpdG9yQnJ1c2hPcHRpb25zQ29tcG9uZW50IHtcbiAgICBASW5wdXQoJ2RhdGEnKSBkYXRhOiBJUGFpbnRlckJydXNoT3B0aW9ucztcbn1cbiIsIjxkaXYgY2xhc3M9XCJkeC1waWN0dXJlLWVkaXRpbmctYnJ1c2gtb3B0aW9uc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJkeC1waWN0dXJlLWVkaXRpbmctbGluZS13aWR0aFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZHgtcGljdHVyZS1lZGl0aW5nLXRleHRcIj57e2RhdGEuYnJ1c2hXaWR0aFRleHR9fTwvZGl2PlxuICAgICAgICA8ZHgtc2xpZGVyIGNsYXNzPVwiZHgtcGljdHVyZS1lZGl0aW5nLWxpbmUtd2lkdGgtc2xpZGVyXCJcbiAgICAgICAgICAgIFttaW5dPVwiMVwiXG4gICAgICAgICAgICBbbWF4XT1cIjlcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImRhdGEubGluZVdpZHRoXCJcbiAgICAgICAgICAgIFtsYWJlbF09XCJ7IHZpc2libGU6IHRydWUgfVwiXG4gICAgICAgICAgICBbdG9vbHRpcF09XCJ7IGVuYWJsZWQ6IHRydWUsIHNob3dNb2RlOiAnYWx3YXlzJywgcG9zaXRpb246ICdib3R0b20nIH1cIlxuICAgICAgICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cInRoaXMuZGF0YS5vbkxpbmVXaWR0aENoYW5nZWQoJGV2ZW50KVwiPlxuICAgICAgICA8L2R4LXNsaWRlcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZHgtcGljdHVyZS1lZGl0aW5nLWxpbmUtY29sb3JcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImR4LXBpY3R1cmUtZWRpdGluZy10ZXh0XCI+e3tkYXRhLmJydXNoQ29sb3JUZXh0fX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImR4LXBpY3R1cmUtZWRpdGluZy1icnVzaC1vcHRpb25zLWNvbG9yc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImR4LXBpY3R1cmUtZWRpdGluZy1icnVzaC1vcHRpb25zLWNvbG9yXCIgKm5nRm9yPVwibGV0IGNvbG9yIG9mIGRhdGEuY29sb3JzXCIgW2NsYXNzLnNlbGVjdGVkXT1cImNvbG9yLmlzU2VsZWN0ZWRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHgtcGljdHVyZS1lZGl0aW5nLWJydXNoLW9wdGlvbnMtY29sb3ItY2VsbFwiIFtzdHlsZS5iYWNrZ3JvdW5kXT1cImNvbG9yLnZhbHVlXCIgKGNsaWNrKT1cImNvbG9yLmFjdGlvbigpXCI+PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
@@ -26,7 +26,7 @@ export class PictureEditorToolBarPopupComponent {
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
PictureEditorToolBarPopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PictureEditorToolBarPopupComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
-
PictureEditorToolBarPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PictureEditorToolBarPopupComponent, selector: "dxv-picture-editor-toolbar-popup", inputs: { data: "data" }, ngImport: i0, template: "<dx-popover *ngIf=\"!!popupOptions\" class=\"dx-picture-edit-popup-content\"\n [width]=\"data.width\"\n [height]=\"data.height\"\n [wrapperAttr]=\"{ class: 'dx-picture-edit-popup-content' }\"\n [hideOnOutsideClick]=\"data.hideOnOutsideClick\"\n (onShown)=\"data.onShown($event)\"\n (onHidden)=\"data.onHidden($event)\"\n (onContentReady)=\"data.onContentReady($event)\"\n [position]=\"popupOptions.position\"\n [container]=\"popupOptions.container\"\n [showTitle]=\"false\"\n [showCloseButton]=\"false\"\n [shading]=\"false\"\n [animation]=\"{}\"\n [visible]=\"data.visible\">\n <dxa-template [template]=\"data.contentTemplate\" [data]=\"data.contentData\"></dxa-template>\n</dx-popover>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "
|
|
29
|
+
PictureEditorToolBarPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PictureEditorToolBarPopupComponent, selector: "dxv-picture-editor-toolbar-popup", inputs: { data: "data" }, ngImport: i0, template: "<dx-popover *ngIf=\"!!popupOptions\" class=\"dx-picture-edit-popup-content\"\n [width]=\"data.width\"\n [height]=\"data.height\"\n [wrapperAttr]=\"{ class: 'dx-picture-edit-popup-content' }\"\n [hideOnOutsideClick]=\"data.hideOnOutsideClick\"\n (onShown)=\"data.onShown($event)\"\n (onHidden)=\"data.onHidden($event)\"\n (onContentReady)=\"data.onContentReady($event)\"\n [position]=\"popupOptions.position\"\n [container]=\"popupOptions.container\"\n [showTitle]=\"false\"\n [showCloseButton]=\"false\"\n [shading]=\"false\"\n [animation]=\"{}\"\n [visible]=\"data.visible\">\n <dxa-template [template]=\"data.contentTemplate\" [data]=\"data.contentData\"></dxa-template>\n</dx-popover>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "deferRendering", "disabled", "enableBodyScroll", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showEvent", "showTitle", "target", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "onTitleRendered", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "deferRenderingChange", "disabledChange", "enableBodyScrollChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showEventChange", "showTitleChange", "targetChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: i3.TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }] });
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PictureEditorToolBarPopupComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
32
|
args: [{ selector: 'dxv-picture-editor-toolbar-popup', template: "<dx-popover *ngIf=\"!!popupOptions\" class=\"dx-picture-edit-popup-content\"\n [width]=\"data.width\"\n [height]=\"data.height\"\n [wrapperAttr]=\"{ class: 'dx-picture-edit-popup-content' }\"\n [hideOnOutsideClick]=\"data.hideOnOutsideClick\"\n (onShown)=\"data.onShown($event)\"\n (onHidden)=\"data.onHidden($event)\"\n (onContentReady)=\"data.onContentReady($event)\"\n [position]=\"popupOptions.position\"\n [container]=\"popupOptions.container\"\n [showTitle]=\"false\"\n [showCloseButton]=\"false\"\n [shading]=\"false\"\n [animation]=\"{}\"\n [visible]=\"data.visible\">\n <dxa-template [template]=\"data.contentTemplate\" [data]=\"data.contentData\"></dxa-template>\n</dx-popover>" }]
|
|
@@ -38,7 +38,7 @@ export class PictureEditorComponent {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
PictureEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PictureEditorComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
41
|
-
PictureEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PictureEditorComponent, selector: "dxv-picture-editor", inputs: { viewModel: ["options", "viewModel"] }, viewQueries: [{ propertyName: "element", first: true, predicate: ["pictureEditing"], descendants: true }], ngImport: i0, template: "<div #pictureEditing class=\"dx-picture-editing\">\n <canvas [dxaZoom]=\"data?.painter.scale\"></canvas>\n <dx-popup *ngIf=\"!!popupOptions\" class=\"dx-picture-editing-active\"\n width=\"48px\"\n height=\"auto\"\n [wrapperAttr]=\"{ class: 'dx-picture-editing-active' }\"\n [position]=\"popupOptions.position\"\n [container]=\"popupOptions.container\"\n [showTitle]=\"false\"\n [animation]=\"{}\"\n [shading]=\"false\"\n [visible]=\"true\">\n\n <div class=\"dx-picture-editing-toolbar\" *dxTemplate=\"let contentData of 'content'\">\n <div *ngFor=\"let action of data.actions\">\n <div class=\"dx-picture-editing-toolbar-item\" (click)=\"action.action(action, $event)\" [attr.title]=\"action.title\">\n <dxa-template class=\"dx-picture-editing-toolbar-item-icon\" [template]=\"action.icon\"></dxa-template>\n </div>\n <dxa-template *ngIf=\"!!action.template\" [template]=\"action.template\" [data]=\"action.templateOptions\"></dxa-template>\n </div>\n </div>\n </dx-popup>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.DxPopupComponent, selector: "dx-popup", inputs: ["accessKey", "animation", "closeOnOutsideClick", "container", "contentTemplate", "
|
|
41
|
+
PictureEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PictureEditorComponent, selector: "dxv-picture-editor", inputs: { viewModel: ["options", "viewModel"] }, viewQueries: [{ propertyName: "element", first: true, predicate: ["pictureEditing"], descendants: true }], ngImport: i0, template: "<div #pictureEditing class=\"dx-picture-editing\">\n <canvas [dxaZoom]=\"data?.painter.scale\"></canvas>\n <dx-popup *ngIf=\"!!popupOptions\" class=\"dx-picture-editing-active\"\n width=\"48px\"\n height=\"auto\"\n [wrapperAttr]=\"{ class: 'dx-picture-editing-active' }\"\n [position]=\"popupOptions.position\"\n [container]=\"popupOptions.container\"\n [showTitle]=\"false\"\n [animation]=\"{}\"\n [shading]=\"false\"\n [visible]=\"true\">\n\n <div class=\"dx-picture-editing-toolbar\" *dxTemplate=\"let contentData of 'content'\">\n <div *ngFor=\"let action of data.actions\">\n <div class=\"dx-picture-editing-toolbar-item\" (click)=\"action.action(action, $event)\" [attr.title]=\"action.title\">\n <dxa-template class=\"dx-picture-editing-toolbar-item-icon\" [template]=\"action.icon\"></dxa-template>\n </div>\n <dxa-template *ngIf=\"!!action.template\" [template]=\"action.template\" [data]=\"action.templateOptions\"></dxa-template>\n </div>\n </div>\n </dx-popup>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.DxPopupComponent, selector: "dx-popup", inputs: ["accessKey", "animation", "closeOnOutsideClick", "container", "contentTemplate", "deferRendering", "disabled", "dragAndResizeArea", "dragEnabled", "dragOutsideBoundary", "enableBodyScroll", "focusStateEnabled", "fullScreen", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "resizeEnabled", "restorePosition", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showTitle", "tabIndex", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onResize", "onResizeEnd", "onResizeStart", "onShowing", "onShown", "onTitleRendered", "accessKeyChange", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "deferRenderingChange", "disabledChange", "dragAndResizeAreaChange", "dragEnabledChange", "dragOutsideBoundaryChange", "enableBodyScrollChange", "focusStateEnabledChange", "fullScreenChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "resizeEnabledChange", "restorePositionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showTitleChange", "tabIndexChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: i4.TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "directive", type: i5.ZoomDirective, selector: "[dxaZoom]", inputs: ["dxaZoom"] }] });
|
|
42
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PictureEditorComponent, decorators: [{
|
|
43
43
|
type: Component,
|
|
44
44
|
args: [{ selector: 'dxv-picture-editor', template: "<div #pictureEditing class=\"dx-picture-editing\">\n <canvas [dxaZoom]=\"data?.painter.scale\"></canvas>\n <dx-popup *ngIf=\"!!popupOptions\" class=\"dx-picture-editing-active\"\n width=\"48px\"\n height=\"auto\"\n [wrapperAttr]=\"{ class: 'dx-picture-editing-active' }\"\n [position]=\"popupOptions.position\"\n [container]=\"popupOptions.container\"\n [showTitle]=\"false\"\n [animation]=\"{}\"\n [shading]=\"false\"\n [visible]=\"true\">\n\n <div class=\"dx-picture-editing-toolbar\" *dxTemplate=\"let contentData of 'content'\">\n <div *ngFor=\"let action of data.actions\">\n <div class=\"dx-picture-editing-toolbar-item\" (click)=\"action.action(action, $event)\" [attr.title]=\"action.title\">\n <dxa-template class=\"dx-picture-editing-toolbar-item-icon\" [template]=\"action.icon\"></dxa-template>\n </div>\n <dxa-template *ngIf=\"!!action.template\" [template]=\"action.template\" [data]=\"action.templateOptions\"></dxa-template>\n </div>\n </div>\n </dx-popup>\n</div>" }]
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component, ContentChild } from '@angular/core';
|
|
2
|
+
import { AccessibilitySettings } from './utils/accessibility-settings';
|
|
3
|
+
import { JSReportParametersPanelBinding } from 'devexpress-reporting/viewer/binding/jsReportParametersPanelBinding';
|
|
4
|
+
import { DxReportViewerBaseComponent } from './dx-report-viewer-base.component';
|
|
5
|
+
import { DxReportParametersPanelCallbacksComponent } from './dxrpp-callbacks';
|
|
6
|
+
import { DxReportParametersPanelRequestOptionsComponent } from './dxrpp-request-options';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/common";
|
|
9
|
+
import * as i2 from "./components/analytics/templates.component";
|
|
10
|
+
import * as i3 from "./components/analytics/template/template.component";
|
|
11
|
+
import * as i4 from "./components/reporting/templates.component";
|
|
12
|
+
export class DxReportParametersPanelComponent extends DxReportViewerBaseComponent {
|
|
13
|
+
getKoBinding(options) {
|
|
14
|
+
return new JSReportParametersPanelBinding(options, this.getEventRaiser(), false);
|
|
15
|
+
}
|
|
16
|
+
getCallbacks() {
|
|
17
|
+
return this.callbacksComponent;
|
|
18
|
+
}
|
|
19
|
+
getControlOptions() {
|
|
20
|
+
const baseOptions = super.getControlOptions();
|
|
21
|
+
return {
|
|
22
|
+
...baseOptions,
|
|
23
|
+
requestOptions: this.requestOptionsComponent
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
DxReportParametersPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DxReportParametersPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
DxReportParametersPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DxReportParametersPanelComponent, selector: "dx-report-parameters-panel", providers: [AccessibilitySettings], queries: [{ propertyName: "requestOptionsComponent", first: true, predicate: DxReportParametersPanelRequestOptionsComponent, descendants: true }, { propertyName: "callbacksComponent", first: true, predicate: DxReportParametersPanelCallbacksComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div #control [ngClass]=\"cssClass\" [ngStyle]=\"{'width': width, 'height': height }\">\n <dxa-templates></dxa-templates>\n <dxv-templates></dxv-templates>\n <div class=\"dx-designer\">\n <dxa-template *ngIf=\"!!viewModel\" template=\"dx-designer\" [data]=\"viewModel\"></dxa-template>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.TemplatesComponent, selector: "dxa-templates" }, { kind: "component", type: i3.TemplateComponent, selector: "dxa-template", inputs: ["data", "template"] }, { kind: "component", type: i4.ViewerTemplatesComponent, selector: "dxv-templates" }] });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DxReportParametersPanelComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{ selector: 'dx-report-parameters-panel', providers: [AccessibilitySettings], template: "<div #control [ngClass]=\"cssClass\" [ngStyle]=\"{'width': width, 'height': height }\">\n <dxa-templates></dxa-templates>\n <dxv-templates></dxv-templates>\n <div class=\"dx-designer\">\n <dxa-template *ngIf=\"!!viewModel\" template=\"dx-designer\" [data]=\"viewModel\"></dxa-template>\n </div>\n</div>" }]
|
|
32
|
+
}], propDecorators: { requestOptionsComponent: [{
|
|
33
|
+
type: ContentChild,
|
|
34
|
+
args: [DxReportParametersPanelRequestOptionsComponent]
|
|
35
|
+
}], callbacksComponent: [{
|
|
36
|
+
type: ContentChild,
|
|
37
|
+
args: [DxReportParametersPanelCallbacksComponent]
|
|
38
|
+
}] } });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHgtcmVwb3J0LXBhcmFtZXRlcnMtcGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vZHgtcmVwb3J0LXZpZXdlci9keC1yZXBvcnQtcGFyYW1ldGVycy1wYW5lbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9keC1yZXBvcnQtdmlld2VyL2R4LXJlcG9ydC12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHeEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sb0VBQW9FLENBQUM7QUFDcEgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDaEYsT0FBTyxFQUFFLHlDQUF5QyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUUsT0FBTyxFQUFFLDhDQUE4QyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQVN6RixNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsMkJBQTJEO0lBTzdHLFlBQVksQ0FBQyxPQUFpRDtRQUMxRCxPQUFPLElBQUksOEJBQThCLENBQUMsT0FBd0QsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdEksQ0FBQztJQUNELFlBQVk7UUFDUixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztJQUNuQyxDQUFDO0lBQ0QsaUJBQWlCO1FBQ2IsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDOUMsT0FBTztZQUNILEdBQUcsV0FBVztZQUNkLGNBQWMsRUFBRSxJQUFJLENBQUMsdUJBQXVCO1NBQy9DLENBQUM7SUFDTixDQUFDOzs4SEFuQlEsZ0NBQWdDO2tIQUFoQyxnQ0FBZ0MscURBRjdCLENBQUMscUJBQXFCLENBQUMsK0VBR3JCLDhDQUE4QyxxRkFHOUMseUNBQXlDLHVFQ3BCM0QseVRBTU07NEZEVU8sZ0NBQWdDO2tCQU4zQyxTQUFTOytCQUNJLDRCQUE0QixhQUczQixDQUFDLHFCQUFxQixDQUFDOzhCQUluQyx1QkFBdUI7c0JBRHRCLFlBQVk7dUJBQUMsOENBQThDO2dCQUk1RCxrQkFBa0I7c0JBRGpCLFlBQVk7dUJBQUMseUNBQXlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElSZXBvcnRWaWV3ZXJPcHRpb25zIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2JpbmRpbmcvanNSZXBvcnRWaWV3ZXJCaW5kaW5nQmFzZSc7XG5pbXBvcnQgeyBKU1JlcG9ydFZpZXdlckJhc2UgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvYmluZGluZy9qc1JlcG9ydFZpZXdlckJhc2UnO1xuaW1wb3J0IHsgQWNjZXNzaWJpbGl0eVNldHRpbmdzIH0gZnJvbSAnLi91dGlscy9hY2Nlc3NpYmlsaXR5LXNldHRpbmdzJztcbmltcG9ydCB7IEpTUmVwb3J0UGFyYW1ldGVyc1BhbmVsQmluZGluZyB9IGZyb20gJ2RldmV4cHJlc3MtcmVwb3J0aW5nL3ZpZXdlci9iaW5kaW5nL2pzUmVwb3J0UGFyYW1ldGVyc1BhbmVsQmluZGluZyc7XG5pbXBvcnQgeyBEeFJlcG9ydFZpZXdlckJhc2VDb21wb25lbnQgfSBmcm9tICcuL2R4LXJlcG9ydC12aWV3ZXItYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHhSZXBvcnRQYXJhbWV0ZXJzUGFuZWxDYWxsYmFja3NDb21wb25lbnQgfSBmcm9tICcuL2R4cnBwLWNhbGxiYWNrcyc7XG5pbXBvcnQgeyBEeFJlcG9ydFBhcmFtZXRlcnNQYW5lbFJlcXVlc3RPcHRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9keHJwcC1yZXF1ZXN0LW9wdGlvbnMnO1xuaW1wb3J0IHsgSlNSZXBvcnRQYXJhbWV0ZXJzUGFuZWwgfSBmcm9tICdkZXZleHByZXNzLXJlcG9ydGluZy92aWV3ZXIvYmluZGluZy9qc1JlcG9ydFBhcmFtZXRlcnNQYW5lbCc7XG5cbiBAQ29tcG9uZW50KHtcbiAgICAgc2VsZWN0b3I6ICdkeC1yZXBvcnQtcGFyYW1ldGVycy1wYW5lbCcsXG4gICAgIHRlbXBsYXRlVXJsOiAnLi9keC1yZXBvcnQtdmlld2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICAgc3R5bGVVcmxzOiBbXSxcbiAgICAgcHJvdmlkZXJzOiBbQWNjZXNzaWJpbGl0eVNldHRpbmdzXVxuIH0pXG5leHBvcnQgY2xhc3MgRHhSZXBvcnRQYXJhbWV0ZXJzUGFuZWxDb21wb25lbnQgZXh0ZW5kcyBEeFJlcG9ydFZpZXdlckJhc2VDb21wb25lbnQ8SlNSZXBvcnRQYXJhbWV0ZXJzUGFuZWxCaW5kaW5nPiB7XG4gICAgQENvbnRlbnRDaGlsZChEeFJlcG9ydFBhcmFtZXRlcnNQYW5lbFJlcXVlc3RPcHRpb25zQ29tcG9uZW50KVxuICAgIHJlcXVlc3RPcHRpb25zQ29tcG9uZW50OiBEeFJlcG9ydFBhcmFtZXRlcnNQYW5lbFJlcXVlc3RPcHRpb25zQ29tcG9uZW50O1xuXG4gICAgQENvbnRlbnRDaGlsZChEeFJlcG9ydFBhcmFtZXRlcnNQYW5lbENhbGxiYWNrc0NvbXBvbmVudClcbiAgICBjYWxsYmFja3NDb21wb25lbnQ6IER4UmVwb3J0UGFyYW1ldGVyc1BhbmVsQ2FsbGJhY2tzQ29tcG9uZW50O1xuXG4gICAgZ2V0S29CaW5kaW5nKG9wdGlvbnM6IElSZXBvcnRWaWV3ZXJPcHRpb25zPEpTUmVwb3J0Vmlld2VyQmFzZT4pOiBKU1JlcG9ydFBhcmFtZXRlcnNQYW5lbEJpbmRpbmcge1xuICAgICAgICByZXR1cm4gbmV3IEpTUmVwb3J0UGFyYW1ldGVyc1BhbmVsQmluZGluZyhvcHRpb25zIGFzIElSZXBvcnRWaWV3ZXJPcHRpb25zPEpTUmVwb3J0UGFyYW1ldGVyc1BhbmVsPiwgdGhpcy5nZXRFdmVudFJhaXNlcigpLCBmYWxzZSk7XG4gICAgfVxuICAgIGdldENhbGxiYWNrcygpOiBEeFJlcG9ydFBhcmFtZXRlcnNQYW5lbENhbGxiYWNrc0NvbXBvbmVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNhbGxiYWNrc0NvbXBvbmVudDtcbiAgICB9XG4gICAgZ2V0Q29udHJvbE9wdGlvbnMoKTogSVJlcG9ydFZpZXdlck9wdGlvbnMge1xuICAgICAgICBjb25zdCBiYXNlT3B0aW9ucyA9IHN1cGVyLmdldENvbnRyb2xPcHRpb25zKCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5iYXNlT3B0aW9ucyxcbiAgICAgICAgICAgIHJlcXVlc3RPcHRpb25zOiB0aGlzLnJlcXVlc3RPcHRpb25zQ29tcG9uZW50XG4gICAgICAgIH07XG4gICAgfVxufVxuIiwiPGRpdiAjY29udHJvbCBbbmdDbGFzc109XCJjc3NDbGFzc1wiIFtuZ1N0eWxlXT1cInsnd2lkdGgnOiB3aWR0aCwgJ2hlaWdodCc6IGhlaWdodCB9XCI+XG4gIDxkeGEtdGVtcGxhdGVzPjwvZHhhLXRlbXBsYXRlcz5cbiAgPGR4di10ZW1wbGF0ZXM+PC9keHYtdGVtcGxhdGVzPlxuICA8ZGl2IGNsYXNzPVwiZHgtZGVzaWduZXJcIj5cbiAgICAgIDxkeGEtdGVtcGxhdGUgKm5nSWY9XCIhIXZpZXdNb2RlbFwiIHRlbXBsYXRlPVwiZHgtZGVzaWduZXJcIiBbZGF0YV09XCJ2aWV3TW9kZWxcIj48L2R4YS10ZW1wbGF0ZT5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Component, Inject, Input, PLATFORM_ID } from '@angular/core';
|
|
3
|
+
import { DxReportingComponent, _booleanConverter, _inputConverter } from 'devexpress-reporting-angular/core';
|
|
4
|
+
import '@devexpress/analytics-core/dx-analytics-core-svg-templates';
|
|
5
|
+
import 'devexpress-reporting/dx-reporting-svg-templates';
|
|
6
|
+
import { AccessibilitySettings } from './utils/accessibility-settings';
|
|
7
|
+
import { ViewModelChangedEvent } from '@devexpress/analytics-core/serializer/native/viewModels/viewModelGenerator';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "./utils/accessibility-settings";
|
|
10
|
+
export class DxReportViewerBaseComponent extends DxReportingComponent {
|
|
11
|
+
constructor(renderer, platformId, _viewer, _cd, _accessibilitySettings) {
|
|
12
|
+
super(renderer, platformId);
|
|
13
|
+
this._viewer = _viewer;
|
|
14
|
+
this._cd = _cd;
|
|
15
|
+
this._accessibilitySettings = _accessibilitySettings;
|
|
16
|
+
this._reportUrl = '';
|
|
17
|
+
}
|
|
18
|
+
getControlOptions() {
|
|
19
|
+
return {
|
|
20
|
+
rtl: this.rtl,
|
|
21
|
+
accessibilityCompliant: this.accessibilityCompliant,
|
|
22
|
+
reportUrl: this._reportUrl,
|
|
23
|
+
keepReportOnComponentDisposal: this.keepReportOnComponentDisposal,
|
|
24
|
+
callbacks: {}
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
ngAfterViewInit() {
|
|
28
|
+
super.ngAfterViewInit();
|
|
29
|
+
this.model = this._binding.sender;
|
|
30
|
+
this.viewModel = this.model.GetPreviewModel()?.getViewModel();
|
|
31
|
+
this._disposeViewModelChangedSubscription = this._subscribeToViewModelChanged(this.viewModel);
|
|
32
|
+
this._disposableCallback = this.model.events.on('propertyChanged', (args) => {
|
|
33
|
+
if (args.propertyName === 'previewModel') {
|
|
34
|
+
this.viewModel = this.model.GetPreviewModel().getViewModel();
|
|
35
|
+
this._disposeViewModelChangedSubscription && this._disposeViewModelChangedSubscription();
|
|
36
|
+
this._disposeViewModelChangedSubscription = this._subscribeToViewModelChanged(this.viewModel);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
this._cd.detectChanges();
|
|
40
|
+
}
|
|
41
|
+
ngOnDestroy() {
|
|
42
|
+
this._disposableCallback && this._disposableCallback();
|
|
43
|
+
this._disposeViewModelChangedSubscription && this._disposeViewModelChangedSubscription();
|
|
44
|
+
this._binding.dispose();
|
|
45
|
+
super.ngOnDestroy();
|
|
46
|
+
}
|
|
47
|
+
_subscribeToViewModelChanged(viewModel) {
|
|
48
|
+
const eventHolder = viewModel;
|
|
49
|
+
return eventHolder?._viewModelEvents?.on(ViewModelChangedEvent, () => this._cd.markForCheck());
|
|
50
|
+
}
|
|
51
|
+
get accessibilityCompliant() {
|
|
52
|
+
return this._accessibilitySettings.accessibilityCompliant;
|
|
53
|
+
}
|
|
54
|
+
set accessibilityCompliant(value) {
|
|
55
|
+
this._accessibilitySettings.accessibilityCompliant = value;
|
|
56
|
+
}
|
|
57
|
+
get reportUrl() {
|
|
58
|
+
return this._reportUrl;
|
|
59
|
+
}
|
|
60
|
+
set reportUrl(reportUrl) {
|
|
61
|
+
this._reportUrl = reportUrl;
|
|
62
|
+
if (this.bindingSender)
|
|
63
|
+
this.bindingSender.OpenReport(reportUrl);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
DxReportViewerBaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DxReportViewerBaseComponent, deps: [{ token: i0.Renderer2 }, { token: PLATFORM_ID }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.AccessibilitySettings }], target: i0.ɵɵFactoryTarget.Component });
|
|
67
|
+
DxReportViewerBaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DxReportViewerBaseComponent, selector: "ng-component", inputs: { accessibilityCompliant: "accessibilityCompliant", keepReportOnComponentDisposal: "keepReportOnComponentDisposal", rtl: "rtl", reportUrl: "reportUrl" }, providers: [AccessibilitySettings], usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
68
|
+
__decorate([
|
|
69
|
+
_inputConverter(_booleanConverter)
|
|
70
|
+
], DxReportViewerBaseComponent.prototype, "accessibilityCompliant", null);
|
|
71
|
+
__decorate([
|
|
72
|
+
_inputConverter(_booleanConverter)
|
|
73
|
+
], DxReportViewerBaseComponent.prototype, "keepReportOnComponentDisposal", void 0);
|
|
74
|
+
__decorate([
|
|
75
|
+
_inputConverter(_booleanConverter)
|
|
76
|
+
], DxReportViewerBaseComponent.prototype, "rtl", void 0);
|
|
77
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DxReportViewerBaseComponent, decorators: [{
|
|
78
|
+
type: Component,
|
|
79
|
+
args: [{ template: '', providers: [AccessibilitySettings] }]
|
|
80
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: Object, decorators: [{
|
|
81
|
+
type: Inject,
|
|
82
|
+
args: [PLATFORM_ID]
|
|
83
|
+
}] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.AccessibilitySettings }]; }, propDecorators: { accessibilityCompliant: [{
|
|
84
|
+
type: Input
|
|
85
|
+
}], keepReportOnComponentDisposal: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], rtl: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], reportUrl: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}] } });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHgtcmVwb3J0LXZpZXdlci1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2R4LXJlcG9ydC12aWV3ZXIvZHgtcmVwb3J0LXZpZXdlci1iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFxQixTQUFTLEVBQWMsTUFBTSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFaEgsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzdHLE9BQU8sNERBQTRELENBQUM7QUFDcEUsT0FBTyxpREFBaUQsQ0FBQztBQUN6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQXNCLHFCQUFxQixFQUFFLE1BQU0sNEVBQTRFLENBQUM7OztBQVV2SSxNQUFNLE9BQWdCLDJCQUFpRSxTQUFRLG9CQUFvQjtJQVMvRyxZQUFZLFFBQW1CLEVBQXVCLFVBQWtCLEVBQVUsT0FBbUIsRUFBVSxHQUFzQixFQUFVLHNCQUE2QztRQUN4TCxLQUFLLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRGtELFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUFVLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBdUI7UUFScEwsZUFBVSxHQUFXLEVBQUUsQ0FBQztJQVVoQyxDQUFDO0lBSUQsaUJBQWlCO1FBQ2IsT0FBTztZQUNILEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLHNCQUFzQixFQUFFLElBQUksQ0FBQyxzQkFBc0I7WUFDbkQsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzFCLDZCQUE2QixFQUFFLElBQUksQ0FBQyw2QkFBNkI7WUFDakUsU0FBUyxFQUFFLEVBQUU7U0FDaEIsQ0FBQztJQUNO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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3QsIElucHV0LCBQTEFURk9STV9JRCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IER4UmVwb3J0aW5nQ29tcG9uZW50LCBfYm9vbGVhbkNvbnZlcnRlciwgX2lucHV0Q29udmVydGVyIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmctYW5ndWxhci9jb3JlJztcbmltcG9ydCAnQGRldmV4cHJlc3MvYW5hbHl0aWNzLWNvcmUvZHgtYW5hbHl0aWNzLWNvcmUtc3ZnLXRlbXBsYXRlcyc7XG5pbXBvcnQgJ2RldmV4cHJlc3MtcmVwb3J0aW5nL2R4LXJlcG9ydGluZy1zdmctdGVtcGxhdGVzJztcbmltcG9ydCB7IEFjY2Vzc2liaWxpdHlTZXR0aW5ncyB9IGZyb20gJy4vdXRpbHMvYWNjZXNzaWJpbGl0eS1zZXR0aW5ncyc7XG5pbXBvcnQgeyBFdmVudE1hbmFnZXJIb2xkZXIsIFZpZXdNb2RlbENoYW5nZWRFdmVudCB9IGZyb20gJ0BkZXZleHByZXNzL2FuYWx5dGljcy1jb3JlL3NlcmlhbGl6ZXIvbmF0aXZlL3ZpZXdNb2RlbHMvdmlld01vZGVsR2VuZXJhdG9yJztcbmltcG9ydCB7IElSZXBvcnRWaWV3ZXJPcHRpb25zLCBKU1JlcG9ydFZpZXdlckJpbmRpbmdCYXNlIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvdmlld2VyL2JpbmRpbmcvanNSZXBvcnRWaWV3ZXJCaW5kaW5nQmFzZSc7XG5pbXBvcnQgeyBJUHJldmlld0Rpc3Bvc2FibGVWaWV3TW9kZWxCYXNlIH0gZnJvbSAnZGV2ZXhwcmVzcy1yZXBvcnRpbmcvc2NvcGVzL3JlcG9ydGluZy12aWV3ZXItaW50ZXJuYWwnO1xuaW1wb3J0IHsgRHhSZXBvcnRWaWV3ZXJDYWxsYmFja3NCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9keHJ2LWNhbGxiYWNrcy1iYXNlJztcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIHN0eWxlVXJsczogW10sXG4gICAgcHJvdmlkZXJzOiBbQWNjZXNzaWJpbGl0eVNldHRpbmdzXVxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEeFJlcG9ydFZpZXdlckJhc2VDb21wb25lbnQ8VCBleHRlbmRzIEpTUmVwb3J0Vmlld2VyQmluZGluZ0Jhc2U+IGV4dGVuZHMgRHhSZXBvcnRpbmdDb21wb25lbnQge1xuICAgIHByaXZhdGUgX3JlcG9ydFVybDogc3RyaW5nID0gJyc7XG4gICAgcHJpdmF0ZSBfZGlzcG9zYWJsZUNhbGxiYWNrOiAoKSA9PiB2b2lkO1xuICAgIHByaXZhdGUgX2Rpc3Bvc2VWaWV3TW9kZWxDaGFuZ2VkU3Vic2NyaXB0aW9uOiAoKSA9PiB2b2lkO1xuICAgIHZpZXdNb2RlbDogSVByZXZpZXdEaXNwb3NhYmxlVmlld01vZGVsQmFzZTtcbiAgICBtb2RlbDogVFsnc2VuZGVyJ107XG4gICAgcHJvdGVjdGVkIF9iaW5kaW5nOiBKU1JlcG9ydFZpZXdlckJpbmRpbmdCYXNlO1xuICAgIGJpbmRpbmdTZW5kZXI6IFRbJ3NlbmRlciddO1xuXG4gICAgY29uc3RydWN0b3IocmVuZGVyZXI6IFJlbmRlcmVyMiwgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogT2JqZWN0LCBwcml2YXRlIF92aWV3ZXI6IEVsZW1lbnRSZWYsIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBfYWNjZXNzaWJpbGl0eVNldHRpbmdzOiBBY2Nlc3NpYmlsaXR5U2V0dGluZ3MpIHtcbiAgICAgICAgc3VwZXIocmVuZGVyZXIsIHBsYXRmb3JtSWQpO1xuICAgIH1cblxuICAgIGFic3RyYWN0IGdldENhbGxiYWNrcygpOiBEeFJlcG9ydFZpZXdlckNhbGxiYWNrc0Jhc2VDb21wb25lbnQ7XG4gICAgYWJzdHJhY3QgZ2V0S29CaW5kaW5nKG9wdGlvbnM6IElSZXBvcnRWaWV3ZXJPcHRpb25zKTogSlNSZXBvcnRWaWV3ZXJCaW5kaW5nQmFzZTtcbiAgICBnZXRDb250cm9sT3B0aW9ucygpOiBJUmVwb3J0Vmlld2VyT3B0aW9ucyB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBydGw6IHRoaXMucnRsLFxuICAgICAgICAgICAgYWNjZXNzaWJpbGl0eUNvbXBsaWFudDogdGhpcy5hY2Nlc3NpYmlsaXR5Q29tcGxpYW50LFxuICAgICAgICAgICAgcmVwb3J0VXJsOiB0aGlzLl9yZXBvcnRVcmwsXG4gICAgICAgICAgICBrZWVwUmVwb3J0T25Db21wb25lbnREaXNwb3NhbDogdGhpcy5rZWVwUmVwb3J0T25Db21wb25lbnREaXNwb3NhbCxcbiAgICAgICAgICAgIGNhbGxiYWNrczoge31cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgICAgICB0aGlzLm1vZGVsID0gdGhpcy5fYmluZGluZy5zZW5kZXI7XG4gICAgICAgIHRoaXMudmlld01vZGVsID0gdGhpcy5tb2RlbC5HZXRQcmV2aWV3TW9kZWwoKT8uZ2V0Vmlld01vZGVsKCk7XG4gICAgICAgIHRoaXMuX2Rpc3Bvc2VWaWV3TW9kZWxDaGFuZ2VkU3Vic2NyaXB0aW9uID0gdGhpcy5fc3Vic2NyaWJlVG9WaWV3TW9kZWxDaGFuZ2VkKHRoaXMudmlld01vZGVsKTtcblxuICAgICAgICB0aGlzLl9kaXNwb3NhYmxlQ2FsbGJhY2sgPSB0aGlzLm1vZGVsLmV2ZW50cy5vbigncHJvcGVydHlDaGFuZ2VkJywgKGFyZ3MpID0+IHtcbiAgICAgICAgICAgIGlmKGFyZ3MucHJvcGVydHlOYW1lID09PSAncHJldmlld01vZGVsJykge1xuICAgICAgICAgICAgICAgIHRoaXMudmlld01vZGVsID0gdGhpcy5tb2RlbC5HZXRQcmV2aWV3TW9kZWwoKS5nZXRWaWV3TW9kZWwoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kaXNwb3NlVmlld01vZGVsQ2hhbmdlZFN1YnNjcmlwdGlvbiAmJiB0aGlzLl9kaXNwb3NlVmlld01vZGVsQ2hhbmdlZFN1YnNjcmlwdGlvbigpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2Rpc3Bvc2VWaWV3TW9kZWxDaGFuZ2VkU3Vic2NyaXB0aW9uID0gdGhpcy5fc3Vic2NyaWJlVG9WaWV3TW9kZWxDaGFuZ2VkKHRoaXMudmlld01vZGVsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZGlzcG9zYWJsZUNhbGxiYWNrICYmIHRoaXMuX2Rpc3Bvc2FibGVDYWxsYmFjaygpO1xuICAgICAgICB0aGlzLl9kaXNwb3NlVmlld01vZGVsQ2hhbmdlZFN1YnNjcmlwdGlvbiAmJiB0aGlzLl9kaXNwb3NlVmlld01vZGVsQ2hhbmdlZFN1YnNjcmlwdGlvbigpO1xuICAgICAgICB0aGlzLl9iaW5kaW5nLmRpc3Bvc2UoKTtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zdWJzY3JpYmVUb1ZpZXdNb2RlbENoYW5nZWQodmlld01vZGVsOiBJUHJldmlld0Rpc3Bvc2FibGVWaWV3TW9kZWxCYXNlKSB7XG4gICAgICAgIGNvbnN0IGV2ZW50SG9sZGVyID0gPEV2ZW50TWFuYWdlckhvbGRlcjxJUHJldmlld0Rpc3Bvc2FibGVWaWV3TW9kZWxCYXNlPj4gdmlld01vZGVsO1xuICAgICAgICByZXR1cm4gZXZlbnRIb2xkZXI/Ll92aWV3TW9kZWxFdmVudHM/Lm9uKFZpZXdNb2RlbENoYW5nZWRFdmVudCwgKCkgPT4gdGhpcy5fY2QubWFya0ZvckNoZWNrKCkpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgQF9pbnB1dENvbnZlcnRlcihfYm9vbGVhbkNvbnZlcnRlcilcbiAgICBnZXQgYWNjZXNzaWJpbGl0eUNvbXBsaWFudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjY2Vzc2liaWxpdHlTZXR0aW5ncy5hY2Nlc3NpYmlsaXR5Q29tcGxpYW50O1xuICAgIH1cbiAgICBzZXQgYWNjZXNzaWJpbGl0eUNvbXBsaWFudCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9hY2Nlc3NpYmlsaXR5U2V0dGluZ3MuYWNjZXNzaWJpbGl0eUNvbXBsaWFudCA9IHZhbHVlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgQF9pbnB1dENvbnZlcnRlcihfYm9vbGVhbkNvbnZlcnRlcilcbiAgICBrZWVwUmVwb3J0T25Db21wb25lbnREaXNwb3NhbDogYm9vbGVhbjtcbiAgICBASW5wdXQoKVxuICAgIEBfaW5wdXRDb252ZXJ0ZXIoX2Jvb2xlYW5Db252ZXJ0ZXIpXG4gICAgcnRsOiBib29sZWFuO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgcmVwb3J0VXJsKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXBvcnRVcmw7XG4gICAgfVxuICAgIHNldCByZXBvcnRVcmwocmVwb3J0VXJsOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fcmVwb3J0VXJsID0gcmVwb3J0VXJsO1xuICAgICAgICBpZih0aGlzLmJpbmRpbmdTZW5kZXIpIHRoaXMuYmluZGluZ1NlbmRlci5PcGVuUmVwb3J0KHJlcG9ydFVybCk7XG4gICAgfVxufVxuIl19
|