bpm-core 0.0.55 → 0.0.56
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/esm2022/lib/components/app-component-sections/activities/activities.component.mjs +13 -10
- package/esm2022/lib/components/app-component-sections/approvals-workflow/approvals-workflow.component.mjs +5 -3
- package/esm2022/lib/components/app-component-sections/feedback-section/feedback-section.component.mjs +7 -5
- package/esm2022/lib/components/app-component-sections/form-section/form-section.component.mjs +5 -3
- package/esm2022/lib/components/app-component-sections/previous-requests/previous-requests.component.mjs +196 -36
- package/esm2022/lib/components/app-component-sections/service-header/service-header.component.mjs +5 -3
- package/esm2022/lib/components/app-component-sections/workflow-section/workflow-section.component.mjs +5 -3
- package/esm2022/lib/components/shared-components/action-buttons/action-buttons.component.mjs +6 -4
- package/esm2022/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.mjs +5 -3
- package/esm2022/lib/components/shared-components/form-field/attachment-section/attachment-section.component.mjs +5 -3
- package/esm2022/lib/components/shared-components/form-field/date-range-picker/date-range-picker.component.mjs +3 -3
- package/esm2022/lib/components/shared-components/form-field/doc-uploader/docs-uploader.component.mjs +6 -4
- package/esm2022/lib/components/shared-components/form-field/search-employee/search-employee.component.mjs +5 -3
- package/esm2022/lib/components/shared-components/table/table.component.mjs +240 -0
- package/esm2022/lib/directives/skip-location.directive.mjs +28 -0
- package/esm2022/lib/enums/actions.enum.mjs +21 -0
- package/esm2022/lib/enums/colors.enum.mjs +6 -0
- package/esm2022/lib/enums/events.enum.mjs +6 -0
- package/esm2022/lib/helpers/shared.helper.mjs +26 -0
- package/esm2022/lib/interfaces/action.interface.mjs +2 -0
- package/esm2022/lib/regex/index.mjs +2 -0
- package/esm2022/lib/services/core.service.ts.mjs +7 -5
- package/esm2022/lib/testComponent/general-approver-section/general-approver-section.component.mjs +5 -3
- package/esm2022/lib/testComponent/request-details-section/request-details-section.component.mjs +7 -4
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/bpm-core.mjs +241 -67
- package/fesm2022/bpm-core.mjs.map +1 -1
- package/lib/components/app-component-sections/approvals-workflow/approvals-workflow.component.d.ts +2 -0
- package/lib/components/app-component-sections/feedback-section/feedback-section.component.d.ts +2 -1
- package/lib/components/app-component-sections/form-section/form-section.component.d.ts +2 -1
- package/lib/components/app-component-sections/previous-requests/previous-requests.component.d.ts +123 -1
- package/lib/components/app-component-sections/service-header/service-header.component.d.ts +2 -1
- package/lib/components/app-component-sections/workflow-section/workflow-section.component.d.ts +2 -1
- package/lib/components/shared-components/action-buttons/action-buttons.component.d.ts +2 -1
- package/lib/components/shared-components/form-field/add-attachment-section/add-attachment-section.component.d.ts +2 -1
- package/lib/components/shared-components/form-field/attachment-section/attachment-section.component.d.ts +2 -1
- package/lib/components/shared-components/form-field/doc-uploader/docs-uploader.component.d.ts +2 -1
- package/lib/components/shared-components/form-field/search-employee/search-employee.component.d.ts +2 -1
- package/lib/components/shared-components/form-field/shared-imports.d.ts +2 -2
- package/lib/components/shared-components/table/table.component.d.ts +76 -0
- package/lib/directives/skip-location.directive.d.ts +10 -0
- package/lib/enums/actions.enum.d.ts +19 -0
- package/lib/enums/colors.enum.d.ts +4 -0
- package/lib/enums/events.enum.d.ts +4 -0
- package/lib/helpers/shared.helper.d.ts +1 -0
- package/lib/interfaces/action.interface.d.ts +7 -0
- package/lib/regex/index.d.ts +1 -0
- package/lib/services/core.service.ts.d.ts +2 -0
- package/lib/testComponent/general-approver-section/general-approver-section.component.d.ts +2 -1
- package/lib/testComponent/request-details-section/request-details-section.component.d.ts +2 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
package/esm2022/lib/components/app-component-sections/service-header/service-header.component.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from '@angular/core';
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, inject, Input } from '@angular/core';
|
|
2
2
|
import * as Constants from '../../../constants/constants';
|
|
3
3
|
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
4
4
|
import { FeedBackService } from '../../../services';
|
|
@@ -12,6 +12,7 @@ import { FaqSidenavComponent } from '../faq-sidenav/faq-sidenav.component';
|
|
|
12
12
|
import { ActivitiesComponent } from '../activities/activities.component';
|
|
13
13
|
import { format } from 'date-fns';
|
|
14
14
|
import { PreviousRequestsComponent } from "../previous-requests/previous-requests.component";
|
|
15
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
15
16
|
import * as i0 from "@angular/core";
|
|
16
17
|
import * as i1 from "../../../services";
|
|
17
18
|
import * as i2 from "@angular/material/dialog";
|
|
@@ -45,6 +46,7 @@ export class ServiceHeaderComponent {
|
|
|
45
46
|
serviceFaq = [];
|
|
46
47
|
approvals = [];
|
|
47
48
|
flagPriority;
|
|
49
|
+
destroyRef = inject(DestroyRef);
|
|
48
50
|
constructor(cdRef, coreService, i18n, feedBackService, dialog, sidenavService, toasterService) {
|
|
49
51
|
this.cdRef = cdRef;
|
|
50
52
|
this.coreService = coreService;
|
|
@@ -143,7 +145,7 @@ export class ServiceHeaderComponent {
|
|
|
143
145
|
* @return {void}
|
|
144
146
|
*/
|
|
145
147
|
subscribeToSetFlagPriority(id) {
|
|
146
|
-
this.coreService.setFlagPriority(id).subscribe((response) => {
|
|
148
|
+
this.coreService.setFlagPriority(id).pipe(takeUntilDestroyed(this.destroyRef)).subscribe((response) => {
|
|
147
149
|
if (response) {
|
|
148
150
|
this.toasterService.success(this.i18n.translate('flagStatusUpdated'));
|
|
149
151
|
}
|
|
@@ -266,4 +268,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
266
268
|
}], serviceFaq: [{
|
|
267
269
|
type: Input
|
|
268
270
|
}] } });
|
|
269
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvc2VydmljZS1oZWFkZXIvc2VydmljZS1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvc2VydmljZS1oZWFkZXIvc2VydmljZS1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sS0FBSyxTQUFTLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGVBQWUsRUFBWSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBK0IsZUFBZSxFQUFpQixNQUFNLG1CQUFtQixDQUFDO0FBQ2hHLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzVFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxt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SztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtGb3JtLCBTZWN0aW9ufSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0ICogYXMgQ29uc3RhbnRzIGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9jb25zdGFudHMnO1xyXG5pbXBvcnQge01BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQge0NvcmVJMThuU2VydmljZSwgQ29yZVNlcnZpY2UsIEZlZWRCYWNrU2VydmljZSwgU2lkZW5hdlNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHtQcm9maWxlU2VjdGlvbkNvbXBvbmVudH0gZnJvbSAnLi4vcHJvZmlsZS1zZWN0aW9uL3Byb2ZpbGUtc2VjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQge0ZlZWRiYWNrU2VjdGlvbkNvbXBvbmVudH0gZnJvbSAnLi4vZmVlZGJhY2stc2VjdGlvbi9mZWVkYmFjay1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TmdDbGFzcywgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtTYXRQb3BvdmVyTW9kdWxlfSBmcm9tICdAbmNzdGF0ZS9zYXQtcG9wb3Zlcic7XHJcbmltcG9ydCB7TWF0RGl2aWRlcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGl2aWRlcic7XHJcbmltcG9ydCB7TWF0TWVudSwgTWF0TWVudUl0ZW0sIE1hdE1lbnVUcmlnZ2VyfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHtGYXFTaWRlbmF2Q29tcG9uZW50fSBmcm9tICcuLi9mYXEtc2lkZW5hdi9mYXEtc2lkZW5hdi5jb21wb25lbnQnO1xyXG5pbXBvcnQge0FjdGl2aXRpZXNDb21wb25lbnR9IGZyb20gJy4uL2FjdGl2aXRpZXMvYWN0aXZpdGllcy5jb21wb25lbnQnO1xyXG5pbXBvcnQge2Zvcm1hdH0gZnJvbSAnZGF0ZS1mbnMnO1xyXG5pbXBvcnQge1RvYXN0clNlcnZpY2V9IGZyb20gXCJuZ3gtdG9hc3RyXCI7XHJcbmltcG9ydCB7UHJldmlvdXNSZXF1ZXN0c0NvbXBvbmVudH0gZnJvbSBcIi4uL3ByZXZpb3VzLXJlcXVlc3RzL3ByZXZpb3VzLXJlcXVlc3RzLmNvbXBvbmVudFwiO1xyXG5cclxuY29uc3QgU3RhdHVzTWFwID0ge1xyXG4gIFtDb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNURURdOiB7Y2xhc3M6ICdkYW5nZXInLCBpY29uOiAnY2xvc2UnfSxcclxuICBbQ29uc3RhbnRzLkZPUk1fU1RBVFVTX0NBTkNFTExFRF06IHtjbGFzczogJ2RhbmdlcicsIGljb246ICdjbG9zZSd9LFxyXG4gIFtDb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNUXToge2NsYXNzOiAnZGFuZ2VyJywgaWNvbjogJ2Nsb3NlJ30sXHJcbiAgW0NvbnN0YW50cy5TRUNUSU9OX1NUQVRVU19VTlNBVElTRklFRF06IHtjbGFzczogJ2RhbmdlcicsIGljb246ICdjbG9zZSd9LFxyXG4gIFtDb25zdGFudHMuRk9STV9TVEFUVVNfQ0FOQ0VMXToge2NsYXNzOiAnZGFuZ2VyJywgaWNvbjogJ2Nsb3NlJ30sXHJcbiAgW0NvbnN0YW50cy5GT1JNX1NUQVRVU19QRU5ESU5HXToge2NsYXNzOiAnd2FybmluZycsIGljb246ICdjbG9jayd9LFxyXG4gICdkZWZhdWx0Jzoge2NsYXNzOiAnc3VjY2VzcycsIGljb246ICdjaGVjayd9XHJcbn1cclxuXHJcbmludGVyZmFjZSBBcHByb3ZhbEhpc3RvcnlJdGVtIHtcclxuICBhcHByb3Zlcjoge1xyXG4gICAgcGVyc29uTmFtZTogc3RyaW5nO1xyXG4gICAgcGVyc29uRW1haWw6IHN0cmluZztcclxuICB9O1xyXG4gIHBvc2l0aW9uVHlwZTogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtc2VydmljZS1oZWFkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zZXJ2aWNlLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc2VydmljZS1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nSWYsXHJcbiAgICBTYXRQb3BvdmVyTW9kdWxlLFxyXG4gICAgTWF0RGl2aWRlcixcclxuICAgIE1hdE1lbnVUcmlnZ2VyLFxyXG4gICAgTmdDbGFzcyxcclxuICAgIE1hdE1lbnUsXHJcbiAgICBNYXRNZW51SXRlbVxyXG4gIF0sXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxyXG4gIHByb3ZpZGVyczogW0ZlZWRCYWNrU2VydmljZSxcclxuICAgIHtwcm92aWRlOiBNQVRfRElBTE9HX0RBVEEsIHVzZVZhbHVlOiB7fX0sXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VydmljZUhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG4gIEBJbnB1dCgpIGZvcm06IEZvcm07XHJcbiAgQElucHV0KCkgc2hvd0hpc3RvcnkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcclxuICBASW5wdXQoKSBpc1JlYWRPbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2hvd0FwcHJvdmFsSGlzdG9yeSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGFwcHJvdmFsSGlzdG9yeTogYW55O1xyXG4gIEBJbnB1dCgpIGNyZWF0aW9uRGF0ZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGZvcm1UaXRsZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb246IFNlY3Rpb247XHJcbiAgQElucHV0KCkgc2VydmljZUZhcTogYW55W10gPSBbXTtcclxuICBhcHByb3ZhbHM6IGFueVtdID0gW107XHJcbiAgZmxhZ1ByaW9yaXR5OiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29yZVNlcnZpY2U6IENvcmVTZXJ2aWNlLFxyXG4gICAgcHVibGljIGkxOG46IENvcmVJMThuU2VydmljZSwgcHJpdmF0ZSByZWFkb25seSBmZWVkQmFja1NlcnZpY2U6IEZlZWRCYWNrU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2csIHByaXZhdGUgcmVhZG9ubHkgc2lkZW5hdlNlcnZpY2U6IFNpZGVuYXZTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b2FzdGVyU2VydmljZTogVG9hc3RyU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogRXhlY3V0ZXMgYWZ0ZXIgdGhlIHZpZXcgaGFzIGJlZW4gZnVsbHkgaW5pdGlhbGl6ZWQuXHJcbiAgICpcclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqL1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuZ2V0QXBwcm92YWxIaXN0b3J5KHRoaXMuYXBwcm92YWxIaXN0b3J5KTtcclxuICAgIGlmICh0aGlzLmZvcm0/LmhlYWRlcj8uY3JlYXRpb25EYXRlKSB7XHJcbiAgICAgIHRoaXMuY3JlYXRpb25EYXRlID0gZm9ybWF0KG5ldyBEYXRlKHRoaXMuZm9ybT8uaGVhZGVyPy5jcmVhdGlvbkRhdGUpLCBcImRkL01NL3l5eXkgaGg6bW06c3NcIik7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgdGhlIGNsaWNrIGV2ZW50IG9uIHRoZSBjb21tZW50cyBmb3JtLlxyXG4gICAqIFJldHJpZXZlcyBjb21tZW50cyBmcm9tIHRoZSBmb3JtLCB0cmFuc2Zvcm1zIHRoZW0sIGFuZCB1cGRhdGVzIGFjdGl2aXRpZXMgaW4gdGhlIGNvcmUgc2VydmljZS5cclxuICAgKiBGaW5hbGx5LCBwdWJsaXNoZXMgYW4gJ29wZW4nIGV2ZW50IHRvIHRoZSBzaWRlbmF2IHNlcnZpY2UgdG8gb3BlbiB0aGUgQWN0aXZpdGllc0NvbXBvbmVudC5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICovXHJcbiAgb25Db21tZW50c0Zvcm1DbGljaygpIHtcclxuICAgIGNvbnN0IGZvcm1Db21tZW50czogYW55ID0gdGhpcy5mb3JtLmNvbW1lbnRzRHJvcDtcclxuICAgIGNvbnN0IHRyYW5zZm9ybWVkQ29tbWVudHMgPSBbXTtcclxuICAgIGZvciAoY29uc3QgY29tbWVudCBvZiBmb3JtQ29tbWVudHMpIHtcclxuICAgICAgdHJhbnNmb3JtZWRDb21tZW50cy5wdXNoKHRoaXMudHJhbnNmb3JtQ29tbWVudEl0ZW0oY29tbWVudCkpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb3JlU2VydmljZS5hY3Rpdml0aWVzID0gdHJhbnNmb3JtZWRDb21tZW50cztcclxuICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UucHVibGlzaCgnb3BlbicsIEFjdGl2aXRpZXNDb21wb25lbnQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJhbnNmb3JtcyBhIGNvbW1lbnQgaXRlbSBpbnRvIGEgZGlmZmVyZW50IGZvcm1hdCBmb3IgZGlzcGxheS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBpdGVtIC0gVGhlIG9yaWdpbmFsIGNvbW1lbnQgaXRlbSB0byB0cmFuc2Zvcm0uXHJcbiAgICogQHJldHVybiB7T2JqZWN0fSAtIFRoZSB0cmFuc2Zvcm1lZCBjb21tZW50IGl0ZW0gd2l0aCBzcGVjaWZpYyBwcm9wZXJ0aWVzIGluY2x1ZGluZyBuYW1lLCB0aXRsZSwgaW1hZ2UsIGRhdGUsIHRpbWUsIGNvbW1lbnQsIGFuZCBhdHRhY2htZW50cy5cclxuICAgKi9cclxuICBwcml2YXRlIHRyYW5zZm9ybUNvbW1lbnRJdGVtKGl0ZW0pIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5hbWU6IGl0ZW1bJ2VtcGxveWVlTmFtZSddLFxyXG4gICAgICB0aXRsZTogaXRlbS5qb2JQb3NpdGlvbixcclxuICAgICAgaW1hZ2U6IGl0ZW1bJ3Byb2ZpbGVQaWN0dXJlJ10sXHJcbiAgICAgIGRhdGU6IGZvcm1hdChuZXcgRGF0ZShpdGVtWydjb21tZW50RGF0ZSddKSwgJ3l5eXktTU0tZGQnKSxcclxuICAgICAgdGltZTogZm9ybWF0KG5ldyBEYXRlKGl0ZW1bJ2NvbW1lbnREYXRlJ10pLCAnaDptbSBhJyksXHJcbiAgICAgIGNvbW1lbnQ6IGl0ZW1bJ2NvbW1lbnRCb2R5J10sXHJcbiAgICAgIGF0dGFjaG1lbnRzOiBpdGVtWydhdHRhY2htZW50J11cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPcGVucyBhIGRpYWxvZyBmb3IgcHJvdmlkaW5nIGZlZWRiYWNrLlxyXG4gICAqXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKi9cclxuICBmZWVkYmFjaygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nLm9wZW4oRmVlZGJhY2tTZWN0aW9uQ29tcG9uZW50LCB7XHJcbiAgICAgIHBhbmVsQ2xhc3M6IFsnbWFpbi1wb3B1cCddLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgcHJvZmlsZTogdGhpcy5mb3JtLnByb2ZpbGVJbmZvRHJvcCxcclxuICAgICAgICBpbmJveEl0ZW06IHRoaXMuZm9ybS5pbmJveEl0ZW0sXHJcbiAgICAgICAgZm9ybTogdGhpcy5mb3JtXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlcyB0aGUgc2lkZW5hdiB3aXRoIHVzZXIgcHJvZmlsZSBpbmZvcm1hdGlvbiBpZiBub3QgYWxyZWFkeSBsb2FkaW5nLlxyXG4gICAqXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKi9cclxuICBzaG93VXNlckluZm8oKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNMb2FkaW5nKSB7XHJcbiAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UuZGF0YSA9IHRoaXMuZm9ybT8ucHJvZmlsZUluZm9Ecm9wO1xyXG4gICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnB1Ymxpc2goJ29wZW4nLCBQcm9maWxlU2VjdGlvbkNvbXBvbmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXQgdGhlIHByaW9yaXR5IGZsYWcgZm9yIHRoZSBpbmJveCBpdGVtIHdpdGggdGhlIHByb3ZpZGVkIElELlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGlkIC0gVGhlIElEIG9mIHRoZSBwcmlvcml0eSBmbGFnIHRvIGJlIHNldCBmb3IgdGhlIGluYm94IGl0ZW0uXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKi9cclxuICBzZXRGbGFnUHJpb3JpdHkoaWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5mbGFnUHJpb3JpdHkgPSBpZDtcclxuICAgIHRoaXMuZm9ybS5pbmJveEl0ZW0uZmxhZ1ByaW9yaXR5ID0gaWQ7XHJcbiAgICB0aGlzLnN1YnNjcmliZVRvU2V0RmxhZ1ByaW9yaXR5KGlkKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN1YnNjcmliZSB0byBzZXQgZmxhZyBwcmlvcml0eSBmb3IgYSBzcGVjaWZpYyBpZGVudGlmaWVyLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGlkIC0gVGhlIGlkZW50aWZpZXIgb2YgdGhlIGZsYWcgdG8gc2V0IHByaW9yaXR5IGZvci5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqL1xyXG4gIHN1YnNjcmliZVRvU2V0RmxhZ1ByaW9yaXR5KGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuY29yZVNlcnZpY2Uuc2V0RmxhZ1ByaW9yaXR5KGlkKS5zdWJzY3JpYmUoKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5zdWNjZXNzKHRoaXMuaTE4bi50cmFuc2xhdGUoJ2ZsYWdTdGF0dXNVcGRhdGVkJykpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIENTUyBjbGFzcyBhc3NvY2lhdGVkIHdpdGggdGhlIGlucHV0IHN0YXR1cy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzdGF0dXMgLSBUaGUgc3RhdHVzIGZvciB3aGljaCB0aGUgQ1NTIGNsYXNzIGlzIG5lZWRlZC5cclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IC0gVGhlIENTUyBjbGFzcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBzdGF0dXMuXHJcbiAgICovXHJcbiAgc3RhdHVzQ2xhc3Moc3RhdHVzOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgLy8gc3RhdHVzID0gc3RhdHVzID8gc3RhdHVzLnRvTG93ZXJDYXNlKCkgOiAnJztcclxuICAgIGxldCBzdGF0dXNTdHJhdGVneSA9IFN0YXR1c01hcFtzdGF0dXNdIHx8IFN0YXR1c01hcFsnZGVmYXVsdCddO1xyXG4gICAgcmV0dXJuIHN0YXR1c1N0cmF0ZWd5LmNsYXNzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbnMgdGhlIEZBUSBzaWRlIG5hdmlnYXRpb24uXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKi9cclxuICBvcGVuRmFxKCkge1xyXG4gICAgdGhpcy5zaWRlbmF2U2VydmljZS5wdWJsaXNoKCdvcGVuJywgRmFxU2lkZW5hdkNvbXBvbmVudCwgJ2VuZCcsICdvdmVyJywgdGhpcy5zZXJ2aWNlRmFxKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyBhcHByb3ZhbCBoaXN0b3J5IGluZm9ybWF0aW9uIGZvciBlYWNoIGFwcHJvdmFsIGl0ZW0gaW4gdGhlIHByb3ZpZGVkIGFycmF5LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtBcHByb3ZhbEhpc3RvcnlJdGVtW119IGFwcHJvdmFsSGlzdG9yeSAtIFRoZSBhcnJheSBjb250YWluaW5nIGFwcHJvdmFsIGhpc3RvcnkgaXRlbXMuXHJcbiAgICpcclxuICAgKiBAcmV0dXJuIHt2b2lkfSAtIFRoaXMgbWV0aG9kIGRvZXMgbm90IHJldHVybiBhbnkgdmFsdWUuIEl0IHVwZGF0ZXMgdGhlIGludGVybmFsICdhcHByb3ZhbHMnIGFycmF5LlxyXG4gICAqL1xyXG4gIGdldEFwcHJvdmFsSGlzdG9yeShhcHByb3ZhbEhpc3Rvcnk6IEFwcHJvdmFsSGlzdG9yeUl0ZW1bXSkge1xyXG4gICAgYXBwcm92YWxIaXN0b3J5Py5mb3JFYWNoKChhcHByb3ZhbEl0ZW0sIGluZGV4KSA9PiB7XHJcbiAgICAgIGxldCBhcHByb3ZhbFN0YXR1cyA9IHRoaXMuZ2V0QXBwcm92YWxTdGF0dXMoaW5kZXgpO1xyXG4gICAgICBsZXQgYXBwcm92YWxTdGF0dXNMYWJlbCA9IHRoaXMuZ2V0QXBwcm92YWxTdGF0dXNMYWJlbChpbmRleCk7XHJcbiAgICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgICBpZDogaW5kZXggKyAxLFxyXG4gICAgICAgIG5hbWU6IGFwcHJvdmFsSXRlbS5hcHByb3Zlci5wZXJzb25OYW1lLFxyXG4gICAgICAgIHRpdGxlOiBhcHByb3ZhbEl0ZW0ucG9zaXRpb25UeXBlLFxyXG4gICAgICAgIGltYWdlOiB0aGlzLmdldEltYWdlVXJsKGFwcHJvdmFsSXRlbS5hcHByb3Zlci5wZXJzb25FbWFpbCksXHJcbiAgICAgICAgc3RhdHVzOiBhcHByb3ZhbFN0YXR1cyxcclxuICAgICAgICBzdGF0dXNMYWJlbDogYXBwcm92YWxTdGF0dXNMYWJlbCxcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5hcHByb3ZhbHMucHVzaChvYmopO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgdGhlIGFwcHJvdmFsIHN0YXR1cyBmb3IgYSBzcGVjaWZpYyBzZWN0aW9uIGluIHRoZSBmb3JtLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBzZWN0aW9uIGZvciB3aGljaCB0aGUgYXBwcm92YWwgc3RhdHVzIGlzIHJlcXVpcmVkLlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIGFwcHJvdmFsIHN0YXR1cyBvZiB0aGUgc3BlY2lmaWVkIHNlY3Rpb24uIFJldHVybnMgYW4gZW1wdHkgc3RyaW5nIGlmIHRoZSBzZWN0aW9uIGRvZXMgbm90IGV4aXN0LlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0QXBwcm92YWxTdGF0dXMoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBsZXQgc3RhdHVzID0gJyc7XHJcbiAgICBpZiAodGhpcy5mb3JtLnNlY3Rpb25zW2luZGV4ICsgMV0pIHtcclxuICAgICAgc3RhdHVzID0gdGhpcy5zdGF0dXNDbGFzcyh0aGlzLmZvcm0uc2VjdGlvbnNbaW5kZXggKyAxXS5ib2R5LmRldGFpbHMuZGVjaXNpb24ua2V5KTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdGF0dXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgdGhlIGFwcHJvdmFsIHN0YXR1cyBsYWJlbCBmcm9tIHRoZSBmb3JtIHNlY3Rpb24gYmFzZWQgb24gdGhlIGdpdmVuIGluZGV4LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBmb3JtIHNlY3Rpb24gZm9yIHdoaWNoIHRoZSBhcHByb3ZhbCBzdGF0dXMgbGFiZWwgd2lsbCBiZSByZXRyaWV2ZWQuXHJcbiAgICogQHJldHVybiB7c3RyaW5nfSBUaGUgYXBwcm92YWwgc3RhdHVzIGxhYmVsIHJldHJpZXZlZCBmcm9tIHRoZSBzcGVjaWZpZWQgZm9ybSBzZWN0aW9uLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0QXBwcm92YWxTdGF0dXNMYWJlbChpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGxldCBzdGF0dXNMYWJlbCA9ICcnO1xyXG4gICAgaWYgKHRoaXMuZm9ybS5zZWN0aW9uc1tpbmRleCArIDFdKSB7XHJcbiAgICAgIHN0YXR1c0xhYmVsID0gdGhpcy5mb3JtLnNlY3Rpb25zW2luZGV4ICsgMV0uYm9keS5kZXRhaWxzLmRlY2lzaW9uLnZhbHVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0YXR1c0xhYmVsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIHRoZSBVUkwgb2YgdGhlIHVzZXIncyBwb3J0cmFpdCBpbWFnZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgZW1haWwuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge3N0cmluZ30gZW1haWwgLSBUaGUgZW1haWwgYWRkcmVzcyBvZiB0aGUgdXNlciBmb3Igd2hvbSB0aGUgcG9ydHJhaXQgVVJMIGlzIHRvIGJlIHJldHJpZXZlZC5cclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IC0gVGhlIFVSTCB1c2VkIHRvIGZldGNoIHRoZSB1c2VyJ3MgcG9ydHJhaXQgaW1hZ2UuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXRJbWFnZVVybChlbWFpbDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiAnL2dyb3VwL2ktZ2F0ZS93bS1icG0vZm9ybXMvLS9wcm94eS9wb3J0cmFpdD9lbWFpbD0nICsgZW1haWw7XHJcbiAgfVxyXG5cclxuICBzaG93UHJldmlvdXNSZXF1ZXN0cygpIHtcclxuICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UucHVibGlzaCgnb3BlbicsIFByZXZpb3VzUmVxdWVzdHNDb21wb25lbnQpO1xyXG4gIH1cclxufVxyXG4iLCJAaWYgKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddID09PSAnTkVXJykge1xyXG4gIDxzZWN0aW9uXHJcbiAgICBjbGFzcz1cIm1haW4tc2lkZW5hdiBtYWluLXNpZGVuYXYtZnVsbCBtYi00XCJcclxuXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpZGVuYXYtdGl0bGVcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTMgdy0xMDBcIj5cclxuICAgICAgICA8IS0tIDxkcy1idXR0b24gaWNvbiBjbGFzcz1cInJvdGF0ZS1hcnJvd1wiIHNpemU9XCJzbWFsbFwiIChjbGljayk9XCJnb0JhY2soKVwiICpuZ0lmPVwiIWlzSW5Nb2JpbGVBcHAoKSAmJiBzaG93QmFja1wiPlxyXG4gICAgICAgICAgIDxkcy1pY29uIGljb249XCJhcnJvdy1yaWdodFwiIGNsYXNzPVwiZnMtMTkgZmMtYmxhY2tcIj48L2RzLWljb24+XHJcbiAgICAgICAgIDwvZHMtYnV0dG9uPi0tPlxyXG5cclxuICAgICAgICA8IS0tICA8aDMgY2xhc3M9XCJmbGV4LWdyb3ctMFwiPlxyXG4gICAgICAgICAgICB7eyBmb3JtVGl0bGUgfX1cclxuICAgICAgICAgIDwvaDM+LS0+XHJcblxyXG4gICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgPGg2IGNsYXNzPVwiZnMtMTQgZnMtbWQtMTIgZnctbm9ybWFsIGZjLWRhcmstZ3JheSBtYi0wXCI+XHJcbiAgICAgICAgICAgIHt7IGkxOG4udHJhbnNsYXRlKCdIZWxsbycpIH19XHJcbiAgICAgICAgICAgIHt7IGNvcmVTZXJ2aWNlLmdldFNob3J0TmFtZShmb3JtPy5oZWFkZXI/LnJlcXVlc3Rlck5hbWUpIH19LCB7eyBpMThuLnRyYW5zbGF0ZSgnd2VsY29tZUJhY2snKSB9fSFcclxuICAgICAgICAgIDwvaDY+XHJcbiAgICAgICAgICA8aDEgY2xhc3M9XCJmcy0yNiBmcy1tZC0yMCBmdy1ib2xkIGZjLWJsYWNrIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgbWItMVwiPlxyXG4gICAgICAgICAgICB7eyBmb3JtVGl0bGUgfX1cclxuICAgICAgICAgICAgQGlmIChzZXJ2aWNlRmFxLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJpbmZvXCIgY2xhc3M9XCJmcy0yMiBmYy1kYXJrLWdyYXkgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib3BlbkZhcSgpXCI+XHJcbiAgICAgICAgICAgICAgPC9kcy1pY29uPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L2gxPlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtZW5kIGdhcC0yIGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICBAaWYgKHNlcnZpY2VGYXEubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIDxkcy1idXR0b24gc2l6ZT1cInNtYWxsXCIgaWNvbj5cclxuICAgICAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiaW5mb1wiIGNsYXNzPVwiZnMtMjIgZmMtZGFyay1ncmF5IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9wZW5GYXEoKVwiPlxyXG4gICAgICAgICAgICAgIDwvZHMtaWNvbj5cclxuICAgICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA8IS0tIDxkcy1idXR0b24gc2l6ZT1cInNtYWxsXCIgaWNvbiAoY2xpY2spPVwib3BlbldvcmtmbG93KClcIj5cclxuICAgICAgICAgICAgPGRzLWljb24gaWNvbj1cImJlbGwtMi1vXCIgY2xhc3M9XCJmcy0yMCBmYy1jb3JhbFwiPjwvZHMtaWNvbj5cclxuICAgICAgICAgIDwvZHMtYnV0dG9uPiAtLT5cclxuICAgICAgICAgIEBpZiAoIWlzUmVhZE9ubHkpIHtcclxuICAgICAgICAgICAgPGRzLWJ1dHRvbiBzaXplPVwic21hbGxcIiBpY29uIChjbGljayk9XCJzaG93UHJldmlvdXNSZXF1ZXN0cygpXCI+XHJcbiAgICAgICAgICAgICAgPGRzLWljb24gaWNvbj1cImNsb2NrXCIgY2xhc3M9XCJmcy0yMCBmYy1jb3JhbFwiPjwvZHMtaWNvbj5cclxuICAgICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9zZWN0aW9uPlxyXG5cclxuICA8IS0tICA8aGVhZGVyIGNsYXNzPVwibWItNCBtdC00IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtZW5kIGdhcC0yXCI+XHJcbiAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgIDxoNiBjbGFzcz1cImZzLTE0IGZzLW1kLTEyIGZ3LW5vcm1hbCBmYy1kYXJrLWdyYXkgbWItMFwiPlxyXG4gICAgICAgICAge3sgaTE4bi50cmFuc2xhdGUoJ0hlbGxvJykgfX1cclxuICAgICAgICAgIHt7IGNvcmVTZXJ2aWNlLmdldFNob3J0TmFtZShmb3JtPy5oZWFkZXI/LnJlcXVlc3Rlck5hbWUpIH19LCB7eyBpMThuLnRyYW5zbGF0ZSgnd2VsY29tZUJhY2snKSB9fSFcclxuICAgICAgICA8L2g2PlxyXG4gICAgICAgIDxoMSBjbGFzcz1cImZzLTI2IGZzLW1kLTIwIGZ3LWJvbGQgZmMtYmxhY2sgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiBtYi0xXCI+XHJcbiAgICAgICAgICB7eyBmb3JtVGl0bGUgfX1cclxuICAgICAgICAgIEBpZiAoc2VydmljZUZhcS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgPGRzLWljb24gaWNvbj1cImluZm9cIiBjbGFzcz1cImZzLTIyIGZjLWRhcmstZ3JheSBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvcGVuRmFxKClcIj5cclxuICAgICAgICAgICAgPC9kcy1pY29uPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvaDE+XHJcbiAgICAgIDwvc2VjdGlvbj5cclxuICAgIDwvaGVhZGVyPi0tPlxyXG59IEBlbHNlIHtcclxuXHJcbiAgPGRpdiBjbGFzcz1cInctMTAwXCI+XHJcbiAgICA8c2VjdGlvbiBjbGFzcz1cInJlcXVlc3QtbWFpbi1pbmZvICB7e3N0YXR1c0NsYXNzKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddKX19XCI+XHJcbiAgICAgIDxzZWN0aW9uIGNsYXNzPVwicmVxdWVzdC1pbmZvXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcXVlc3QtaW5mby0tYm9keVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgIGFsdD1cIlwiXHJcbiAgICAgICAgICAgICAgc3JjPVwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTXpBaUlHaGxhV2RvZEQwaU1qa2lJSFpwWlhkQ2IzZzlJakFnTUNBek1DQXlPU0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0S1BIQmhkR2dnWkQwaVRUSTFMakVnTUVnMExqbERNaTR5SURBZ01DQXlMaklnTUNBMExqbFdNamd1TmtneU5TNHhRekkzTGpnZ01qZ3VOaUF6TUNBeU5pNDBJRE13SURJekxqZFdOQzQ1UXpNd0lESXVNaUF5Tnk0NElEQWdNalV1TVNBd1drMHlJRFF1T1VNeUlETXVNeUF6TGpNZ01pQTBMamtnTWtneU5TNHhRekkyTGpjZ01pQXlPQ0F6TGpNZ01qZ2dOQzQ1VmpJekxqZERNamdnTWpVdU15QXlOaTQzSURJMkxqWWdNalV1TVNBeU5pNDJTREpXTkM0NVdrMHhNUzQxSURZdU0wTTNMakVnTmk0eklETXVOU0E1TGprZ015NDFJREUwTGpORE15NDFJREU0TGpjZ055NHhJREl5TGpNZ01URXVOU0F5TWk0elF6RTFMamtnTWpJdU15QXhPUzQxSURFNExqY2dNVGt1TlNBeE5DNHpRekU1TGpVZ09TNDVJREUxTGprZ05pNHpJREV4TGpVZ05pNHpXazB4TlM0eElERTVRekUwTGpFZ01Ua3VPQ0F4TWk0NElESXdMaklnTVRFdU5TQXlNQzR5UXpFd0xqSWdNakF1TWlBNExqa2dNVGt1T0NBM0xqa2dNVGxET0M0M0lERTNMamNnTVRBZ01UY2dNVEV1TlNBeE4wTXhNeUF4TnlBeE5DNDBJREUzTGpnZ01UVXVNU0F4T1ZwTk1UTXVNU0F4TXk0MFF6RXpMakVnTVRRdU15QXhNaTQwSURFMUlERXhMalVnTVRWRE1UQXVOaUF4TlNBNUxqa2dNVFF1TXlBNUxqa2dNVE11TkVNNUxqa2dNVEl1TlNBeE1DNDJJREV4TGpnZ01URXVOU0F4TVM0NFF6RXlMalFnTVRFdU9DQXhNeTR4SURFeUxqVWdNVE11TVNBeE15NDBXazB4TlM0eElERXpMalJETVRVdU1TQXhNUzQwSURFekxqVWdPUzQ0SURFeExqVWdPUzQ0UXprdU5TQTVMamdnTnk0NUlERXhMalFnTnk0NUlERXpMalJETnk0NUlERTBMaklnT0M0eUlERTFJRGd1TnlBeE5TNDNRemN1T0NBeE5pNHhJRGN1TVNBeE5pNDRJRFl1TlNBeE55NDJRelV1T0NBeE5pNDJJRFV1TlNBeE5TNDFJRFV1TlNBeE5DNHpRelV1TlNBeE1TQTRMaklnT0M0eklERXhMalVnT0M0elF6RTBMamdnT0M0eklERTNMalVnTVRFZ01UY3VOU0F4TkM0elF6RTNMalVnTVRVdU5TQXhOeTR5SURFMkxqWWdNVFl1TlNBeE55NDJRekUxTGprZ01UWXVPQ0F4TlM0eUlERTJMaklnTVRRdU15QXhOUzQzUXpFMExqZ2dNVFV1TVNBeE5TNHhJREUwTGpJZ01UVXVNU0F4TXk0MFdrMHlNU0E1TGpGRE1qRWdPQzQySURJeExqUWdPQzR4SURJeUlEZ3VNVWd5TlM0MVF6STJJRGd1TVNBeU5pNDFJRGd1TlNBeU5pNDFJRGt1TVVNeU5pNDFJRGt1TmlBeU5pNHhJREV3TGpFZ01qVXVOU0F4TUM0eFNESXlRekl4TGpRZ01UQXVNU0F5TVNBNUxqWWdNakVnT1M0eFdrMHlNU0F4TWk0MVF6SXhJREV5SURJeExqUWdNVEV1TlNBeU1pQXhNUzQxU0RJMUxqVkRNallnTVRFdU5TQXlOaTQxSURFeExqa2dNall1TlNBeE1pNDFRekkyTGpVZ01UTWdNall1TVNBeE15NDFJREkxTGpVZ01UTXVOVWd5TWtNeU1TNDBJREV6TGpVZ01qRWdNVE11TVNBeU1TQXhNaTQxV2sweU1TQXhOa015TVNBeE5TNDFJREl4TGpRZ01UVWdNaklnTVRWSU1qVXVOVU15TmlBeE5TQXlOaTQxSURFMUxqUWdNall1TlNBeE5rTXlOaTQxSURFMkxqVWdNall1TVNBeE55QXlOUzQxSURFM1NESXlRekl4TGpRZ01UY2dNakVnTVRZdU5pQXlNU0F4TmxwTk1qVXVOU0F5TUM0MVNESXlRekl4TGpVZ01qQXVOU0F5TVNBeU1DNHhJREl4SURFNUxqVkRNakVnTVRndU9TQXlNUzQwSURFNExqVWdNaklnTVRndU5VZ3lOUzQxUXpJMklERTRMalVnTWpZdU5TQXhPQzQ1SURJMkxqVWdNVGt1TlVNeU5pNDFJREl3TGpFZ01qWXVNU0F5TUM0MUlESTFMalVnTWpBdU5Wb2lJR1pwYkd3OUlpTkdSak0zTlVVaUx6NEtQQzl6ZG1jK0NnPT1cIi8+XHJcbiAgICAgICAgICAgIDxoNCBjbGFzcz1cImZzLTIyIGZzLW1kLTE2IGZjLWJsYWNrIGZ3LW1lZGl1bSBtYi0wIGZsZXgtZ3Jvdy0xIGxpbmUtaGVpZ2h0LTEtMlwiPlxyXG4gICAgICAgICAgICAgIHt7IGZvcm1UaXRsZSB9fVxyXG4gICAgICAgICAgICA8L2g0PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiByZXF1ZXN0LWluZm8tLXN0YXR1cy1hY3Rpb25cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtaW5saW5lLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtZW5kXCI+XHJcbiAgICAgICAgICAgICAgQGlmICghaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgICAgICA8ZHMtc3RhdHVzXHJcbiAgICAgICAgICAgICAgICAgIHN0YXR1cz1cInt7c3RhdHVzQ2xhc3MoZm9ybT8uaGVhZGVyPy5zdGF0dXM/Llsna2V5J10pfX1cIiBjbGFzcz1cImhlYWRlci1zdGF0dXNcIj57eyBmb3JtPy5oZWFkZXI/LnN0YXR1cz8uWyd2YWx1ZSddIH19XHJcbiAgICAgICAgICAgICAgICA8L2RzLXN0YXR1cz5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgICAgICAgIDwhLS0gPGRzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9ybT8uaW5ib3hJdGVtICYmIChmb3JtPy5pbmJveEl0ZW0/LmNhblJlcXVlc3RGZWVkYmFjayA9PSd0cnVlJ3x8IGZvcm0/LmluYm94SXRlbT8uaGFzRmVlZGJhY2s9PSd0cnVlJylcIlxyXG4gICAgICAgICAgICAgICAgIHNxdWFyZSBpY29uIHNpemU9XCJzbWFsbFwiPlxyXG4gICAgICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJjaGF0LW9cIiBjbGFzcz1cImZzLTIwIGZzLW1kLTE3IGZjLWNvcmFsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAmbHQ7ISZuZGFzaDsgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2ZjLWdyZWVuJzpmZWVkQmFja0ljb24gPT0gJ2ZlZWRiYWNrUmVzcG9uZGVkJyAsICdmYy1yZWQnOiBmZWVkQmFja0ljb24gPT0gJ3Jlc3BvbmRUb0ZlZWRiYWNrJyAsICdmYy15ZWxsb3cnOiBmZWVkQmFja0ljb24gPT0gJ3dhaXRpbmdGZWVkYmFjayd9XCImbmRhc2g7Jmd0O1xyXG4gICAgICAgICAgICAgICAgIDwvZHMtaWNvbj5cclxuICAgICAgICAgICAgICAgPC9kcy1idXR0b24+LS0+XHJcbiAgICAgICAgICAgICAgPCEtLSBoaXN0b3J5LS0+XHJcbiAgICAgICAgICAgICAgPGRzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJmb3JtPy5jb21tZW50c0Ryb3A/Lmxlbmd0aCA+IDAgJiYgIWlzTG9hZGluZ1wiIHNxdWFyZSBpY29uIHNpemU9XCJzbWFsbFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Db21tZW50c0Zvcm1DbGljaygpXCIgY2xhc3M9XCJoYXMtY29tbWVudHNcIj5cclxuICAgICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJjbG9ja1wiIGNsYXNzPVwiZmMtY29yYWwgZnMtMjAgZnMtbWQtMTdcIj48L2RzLWljb24+XHJcbiAgICAgICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVxdWVzdC1pbmZvLS1mb290ZXJcIj5cclxuICAgICAgICAgIEBpZiAoIWlzTG9hZGluZykge1xyXG4gICAgICAgICAgICA8ZHMtYXZhdGFyXHJcbiAgICAgICAgICAgICAgaW1hZ2U9XCJ7e2Zvcm0/LmhlYWRlcj8ucmVxdWVzdGVyUGhvdG99fVwiIHNpemU9XCJ4eC1zbWFsbFwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJkLWlubGluZS1mbGV4IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNob3dVc2VySW5mbygpXCI+PC9kcy1hdmF0YXI+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LXdyYXAgZmxleC1ncm93LTEgZ2FwLTEgZ2FwLXNtLTIgbGluZS1oZWlnaHQtMSByZXF1ZXN0LWluZm8tLWhlYWRlcl9fZGV0YWlsc1wiPlxyXG4gICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnbG9hZGluZy1iZyBsb2FkaW5nLXdpZHRoJzogaXNMb2FkaW5nfVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmcy0xMiBmdy1tZWRpdW0gZC1ub25lIGQtc20taW5saW5lLWJsb2NrXCI+e3sgY29yZVNlcnZpY2UuZ2V0U2hvcnROYW1lKGZvcm0/LmhlYWRlcj8uWydyZXF1ZXN0ZXJOYW1lJ10pIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZzLTIwXCI+JiM4MjI2Ozwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0xMlwiIFtuZ0NsYXNzXT1cInsnbG9hZGluZy1iZyBsb2FkaW5nLXdpZHRoJzogaXNMb2FkaW5nfVwiPiB7eyBmb3JtPy5oZWFkZXI/LmZvcm1JZCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0yMFwiICpuZ0lmPVwiY3JlYXRpb25EYXRlXCI+JiM4MjI2Ozwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0xMlwiIFtuZ0NsYXNzXT1cInsnbG9hZGluZy1iZyBsb2FkaW5nLXdpZHRoJzogaXNMb2FkaW5nfVwiPiB7eyBjcmVhdGlvbkRhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9zZWN0aW9uPlxyXG4gICAgPC9zZWN0aW9uPlxyXG5cclxuICA8L2Rpdj5cclxuXHJcblxyXG4gIDwhLS08bmctY29udGFpbmVyPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMiBteS0yXCI+XHJcbiAgICAgIDxkcy1idXR0b25cclxuICAgICAgICAqbmdJZj1cImZvcm0/LmluYm94SXRlbSAmJiAhZm9ybS5zZWN0aW9uc1tmb3JtLnNlY3Rpb25zLmxlbmd0aCAtMV0uaGVhZGVyLnJlYWRPbmx5ICYmICFpc0xvYWRpbmdcIlxyXG4gICAgICAgIHNxdWFyZVxyXG4gICAgICAgIGljb25cclxuICAgICAgICBzaXplPVwic21hbGxcIlxyXG4gICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcclxuICAgICAgICBjbGFzcz1cImljb24tYnRuLXNoYWRvd1wiPlxyXG4gICAgICAgIDxkcy1pY29uXHJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7J2ZjLXB1cnBsZScgOiAoZmxhZ1ByaW9yaXR5ID09PSAnMCcgfHwgIGZsYWdQcmlvcml0eSA9PT0gbnVsbCksJ2ZjLXllbGxvdycgOiBmbGFnUHJpb3JpdHkgPT09ICcxJywnZmMtZ3JlZW4nIDogZmxhZ1ByaW9yaXR5ID09PSAnMicsJ2ZjLWNvcmFsJyA6IGZsYWdQcmlvcml0eSA9PT0gJzMnfVwiXHJcbiAgICAgICAgICBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmcy0yMCBmcy1tZC0xNyBmYy1wdXJwbGVcIj5cclxuICAgICAgICA8L2RzLWljb24+XHJcbiAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICA8bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCIgcGFuZWxDbGFzcz1cImFjdGlvbi1tZW51XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJzZXRGbGFnUHJpb3JpdHkoJzAnKVwiPlxyXG4gICAgICAgICAgPGRzLWljb24gaWNvbj1cImZsYWctb1wiIGNsYXNzPVwiZmMtcHVycGxlIGZzLTIwIGZzLW1kLTE3XCI+PC9kcy1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwic2V0RmxhZ1ByaW9yaXR5KCcxJylcIj5cclxuICAgICAgICAgIDxkcy1pY29uIGljb249XCJmbGFnLW9cIiBjbGFzcz1cImZjLXllbGxvdyBmcy0yMCBmcy1tZC0xN1wiPjwvZHMtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInNldEZsYWdQcmlvcml0eSgnMicpXCI+XHJcbiAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmYy1ncmVlbiBmcy0yMCBmcy1tZC0xN1wiPjwvZHMtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInNldEZsYWdQcmlvcml0eSgnMycpXCI+XHJcbiAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmYy1jb3JhbCBmcy0yMCBmcy1tZC0xN1wiPjwvZHMtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9tYXQtbWVudT5cclxuXHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGhlYWRlciBjbGFzcz1cInNlcnZpY2UtaGVhZGVyIGJjLXdoaXRlIHAtMyBwLXNtLTQgcHktNCBnYXAtMyB7e3N0YXR1c0NsYXNzKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddKX19XCI+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2VydmljZS1oZWFkZXItaWNvblwiPlxyXG4gICAgICAgIDxpbWdcclxuICAgICAgICAgIGFsdD1cIlwiXHJcbiAgICAgICAgICBzcmM9XCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNekFpSUdobGFXZG9kRDBpTWpraUlIWnBaWGRDYjNnOUlqQWdNQ0F6TUNBeU9TSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2daRDBpVFRJMUxqRWdNRWcwTGpsRE1pNHlJREFnTUNBeUxqSWdNQ0EwTGpsV01qZ3VOa2d5TlM0eFF6STNMamdnTWpndU5pQXpNQ0F5Tmk0MElETXdJREl6TGpkV05DNDVRek13SURJdU1pQXlOeTQ0SURBZ01qVXVNU0F3V2sweUlEUXVPVU15SURNdU15QXpMak1nTWlBMExqa2dNa2d5TlM0eFF6STJMamNnTWlBeU9DQXpMak1nTWpnZ05DNDVWakl6TGpkRE1qZ2dNalV1TXlBeU5pNDNJREkyTGpZZ01qVXVNU0F5Tmk0MlNESldOQzQ1V2sweE1TNDFJRFl1TTBNM0xqRWdOaTR6SURNdU5TQTVMamtnTXk0MUlERTBMak5ETXk0MUlERTRMamNnTnk0eElESXlMak1nTVRFdU5TQXlNaTR6UXpFMUxqa2dNakl1TXlBeE9TNDFJREU0TGpjZ01Ua3VOU0F4TkM0elF6RTVMalVnT1M0NUlERTFMamtnTmk0eklERXhMalVnTmk0eldrMHhOUzR4SURFNVF6RTBMakVnTVRrdU9DQXhNaTQ0SURJd0xqSWdNVEV1TlNBeU1DNHlRekV3TGpJZ01qQXVNaUE0TGprZ01Ua3VPQ0EzTGprZ01UbERPQzQzSURFM0xqY2dNVEFnTVRjZ01URXVOU0F4TjBNeE15QXhOeUF4TkM0MElERTNMamdnTVRVdU1TQXhPVnBOTVRNdU1TQXhNeTQwUXpFekxqRWdNVFF1TXlBeE1pNDBJREUxSURFeExqVWdNVFZETVRBdU5pQXhOU0E1TGprZ01UUXVNeUE1TGprZ01UTXVORU01TGprZ01USXVOU0F4TUM0MklERXhMamdnTVRFdU5TQXhNUzQ0UXpFeUxqUWdNVEV1T0NBeE15NHhJREV5TGpVZ01UTXVNU0F4TXk0MFdrMHhOUzR4SURFekxqUkRNVFV1TVNBeE1TNDBJREV6TGpVZ09TNDRJREV4TGpVZ09TNDRRemt1TlNBNUxqZ2dOeTQ1SURFeExqUWdOeTQ1SURFekxqUkROeTQ1SURFMExqSWdPQzR5SURFMUlEZ3VOeUF4TlM0M1F6Y3VPQ0F4Tmk0eElEY3VNU0F4Tmk0NElEWXVOU0F4Tnk0MlF6VXVPQ0F4Tmk0MklEVXVOU0F4TlM0MUlEVXVOU0F4TkM0elF6VXVOU0F4TVNBNExqSWdPQzR6SURFeExqVWdPQzR6UXpFMExqZ2dPQzR6SURFM0xqVWdNVEVnTVRjdU5TQXhOQzR6UXpFM0xqVWdNVFV1TlNBeE55NHlJREUyTGpZZ01UWXVOU0F4Tnk0MlF6RTFMamtnTVRZdU9DQXhOUzR5SURFMkxqSWdNVFF1TXlBeE5TNDNRekUwTGpnZ01UVXVNU0F4TlM0eElERTBMaklnTVRVdU1TQXhNeTQwV2sweU1TQTVMakZETWpFZ09DNDJJREl4TGpRZ09DNHhJREl5SURndU1VZ3lOUzQxUXpJMklEZ3VNU0F5Tmk0MUlEZ3VOU0F5Tmk0MUlEa3VNVU15Tmk0MUlEa3VOaUF5Tmk0eElERXdMakVnTWpVdU5TQXhNQzR4U0RJeVF6SXhMalFnTVRBdU1TQXlNU0E1TGpZZ01qRWdPUzR4V2sweU1TQXhNaTQxUXpJeElERXlJREl4TGpRZ01URXVOU0F5TWlBeE1TNDFTREkxTGpWRE1qWWdNVEV1TlNBeU5pNDFJREV4TGprZ01qWXVOU0F4TWk0MVF6STJMalVnTVRNZ01qWXVNU0F4TXk0MUlESTFMalVnTVRNdU5VZ3lNa015TVM0MElERXpMalVnTWpFZ01UTXVNU0F5TVNBeE1pNDFXazB5TVNBeE5rTXlNU0F4TlM0MUlESXhMalFnTVRVZ01qSWdNVFZJTWpVdU5VTXlOaUF4TlNBeU5pNDFJREUxTGpRZ01qWXVOU0F4TmtNeU5pNDFJREUyTGpVZ01qWXVNU0F4TnlBeU5TNDFJREUzU0RJeVF6SXhMalFnTVRjZ01qRWdNVFl1TmlBeU1TQXhObHBOTWpVdU5TQXlNQzQxU0RJeVF6SXhMalVnTWpBdU5TQXlNU0F5TUM0eElESXhJREU1TGpWRE1qRWdNVGd1T1NBeU1TNDBJREU0TGpVZ01qSWdNVGd1TlVneU5TNDFRekkySURFNExqVWdNall1TlNBeE9DNDVJREkyTGpVZ01Ua3VOVU15Tmk0MUlESXdMakVnTWpZdU1TQXlNQzQxSURJMUxqVWdNakF1TlZvaUlHWnBiR3c5SWlOR1JqTTNOVVVpTHo0S1BDOXpkbWMrQ2c9PVwiLz5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ncm93LTEgZC1mbGV4IGZsZXgtY29sdW1uIGZsZXgtc20tcm93IGFsaWduLWl0ZW1zLXNtLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMVwiPlxyXG4gICAgICAgICAgPGgxIGNsYXNzPVwiZnMtMjAgZnMtbWQtMTYgZnctYm9sZCBmYy1ibGFjayBoZWFkZXItdGl0bGUgbS0wXCI+e3sgZm9ybVRpdGxlIH19XHJcbiAgICAgICAgICAgIEBpZiAoc2VydmljZUZhcS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiaW5mb1wiIGNsYXNzPVwiZnMtMjIgZmMtZGFyay1ncmF5IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9wZW5GYXEoKVwiPlxyXG4gICAgICAgICAgICAgIDwvZHMtaWNvbj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgPC9oMT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItdXNlciBkLWZsZXggYWxpZ24taXRlbXMtc20tY2VudGVyIGdhcC0yIG10LXNtLTFcIj5cclxuICAgICAgICAgICAgQGlmICghaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgICAgPGRzLWF2YXRhclxyXG4gICAgICAgICAgICAgICAgaW1hZ2U9XCJ7e2Zvcm0/LmhlYWRlcj8ucmVxdWVzdGVyUGhvdG99fVwiIHNpemU9XCJ4eC1zbWFsbFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImQtaW5saW5lLWZsZXggY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic2hvd1VzZXJJbmZvKClcIj48L2RzLWF2YXRhcj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZnMtMTIgdGV4dC10cnVuY2F0ZSBkLXNtLWJsb2NrIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNob3dVc2VySW5mbygpXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2xvYWRpbmctYmcgbG9hZGluZy13aWR0aCc6IGlzTG9hZGluZ31cIj57eyBjb3JlU2VydmljZS5nZXRTaG9ydE5hbWUoZm9ybT8uaGVhZGVyPy5yZXF1ZXN0ZXJOYW1lKSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPG1hdC1kaXZpZGVyIGNsYXNzPVwiZGl2aWRlciBjaXJjbGUgbXgtMiBkLW5vbmUgZC1zbS1ibG9ja1wiPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZnMtMTJcIiBbbmdDbGFzc109XCJ7J2xvYWRpbmctYmcgbG9hZGluZy13aWR0aCc6IGlzTG9hZGluZ31cIj57eyBmb3JtPy5oZWFkZXI/LmZvcm1JZCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgQGlmIChjcmVhdGlvbkRhdGUpIHtcclxuICAgICAgICAgICAgICA8bWF0LWRpdmlkZXIgY2xhc3M9XCJkaXZpZGVyIGNpcmNsZSBteC0yIGQtbm9uZSBkLXNtLWJsb2NrXCI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZzLTE0XCIgW25nQ2xhc3NdPVwieydsb2FkaW5nLWJnIGxvYWRpbmctd2lkdGgnOiBpc0xvYWRpbmd9XCI+e3sgY3JlYXRpb25EYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1hY3Rpb25zIGQtZmxleCBmbGV4LXJvdyBmbGV4LXNtLWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBqdXN0aWZ5LWNvbnRlbnQtc20tY2VudGVyIGdhcC0yIG10LTIgbXQtc20tMFwiPlxyXG4gICAgICAgICAgQGlmICghaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgIDxkcy1zdGF0dXNcclxuICAgICAgICAgICAgICBzdGF0dXM9XCJ7e3N0YXR1c0NsYXNzKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddKX19XCIgY2xhc3M9XCJoZWFkZXItc3RhdHVzXCI+e3sgZm9ybT8uaGVhZGVyPy5zdGF0dXM/LlsndmFsdWUnXSB9fVxyXG4gICAgICAgICAgICA8L2RzLXN0YXR1cz5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1lbmQgZ2FwLTJcIj5cclxuICAgICAgICAgICAgJmx0OyEmbmRhc2g7IGZlZWRiYWNrJm5kYXNoOyZndDtcclxuICAgICAgICAgICAgJmx0OyEmbmRhc2g7ICAgICAgICAgICAgKm5nSWY9XCJmb3JtPy5pbmJveEl0ZW0gJiYgKGZvcm0/LmluYm94SXRlbT8uY2FuUmVxdWVzdEZlZWRiYWNrID09PSd0cnVlJ3x8IGZvcm0/LmluYm94SXRlbT8uaGFzRmVlZGJhY2s9PT0ndHJ1ZScpICYmICFpc0xvYWRpbmdcIiZuZGFzaDsmZ3Q7XHJcbiAgICAgICAgICAgICZsdDshJm5kYXNoOyAgPGRzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgc3F1YXJlIGljb24gc2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cImZlZWRiYWNrKClcIj5cclxuICAgICAgICAgICAgICAgIDxkcy1pY29uXHJcbiAgICAgICAgICAgICAgICAgIGljb249XCJjaGF0LW9cIiBjbGFzcz1cImZzLTIwIGZzLW1kLTE3IGZjLWNvcmFsXCJcclxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydmYy1ncmVlbic6ZmVlZEJhY2tJY29uID09PSAnZmVlZGJhY2tSZXNwb25kZWQnICwgJ2ZjLXJlZCc6IGZlZWRCYWNrSWNvbiA9PT0gJ3Jlc3BvbmRUb0ZlZWRiYWNrJyAsICdmYy15ZWxsb3cnOiBmZWVkQmFja0ljb24gPT09ICd3YWl0aW5nRmVlZGJhY2snfVwiPlxyXG4gICAgICAgICAgICAgICAgPC9kcy1pY29uPlxyXG4gICAgICAgICAgICAgIDwvZHMtYnV0dG9uPiZuZGFzaDsmZ3Q7XHJcbiAgICAgICAgICAgIDxkcy1idXR0b25cclxuICAgICAgICAgICAgICAqbmdJZj1cImZvcm0/LmNvbW1lbnRzRHJvcD8ubGVuZ3RoID4gMCAmJiAhaXNMb2FkaW5nXCIgc3F1YXJlIGljb24gc2l6ZT1cInNtYWxsXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwib25Db21tZW50c0Zvcm1DbGljaygpXCIgY2xhc3M9XCJoYXMtY29tbWVudHNcIj5cclxuICAgICAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiY2xvY2tcIiBjbGFzcz1cImZjLWNvcmFsIGZzLTIwIGZzLW1kLTE3XCI+PC9kcy1pY29uPlxyXG4gICAgICAgICAgICA8L2RzLWJ1dHRvbj5cclxuICAgICAgICAgICAgQGlmIChzaG93QXBwcm92YWxIaXN0b3J5KSB7XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxkcy1idXR0b25cclxuICAgICAgICAgICAgICAgICAgY29sb3I9XCJ3aGl0ZVwiIHNoYXBlPVwidGV4dFwiIHNxdWFyZSBzaXplPVwic21hbGxcIiBbc2F0UG9wb3ZlckFuY2hvcl09XCJ3b3JrZmxvd1wiXHJcbiAgICAgICAgICAgICAgICAgICN3b3JrZmxvd0FuY2hvcj1cInNhdFBvcG92ZXJBbmNob3JcIiAoY2xpY2spPVwid29ya2Zsb3dBbmNob3IucG9wb3Zlci5vcGVuKClcIj5cclxuICAgICAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cInByZWZpeFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJ3b3JrZmxvd1wiIGNsYXNzPVwiZnMtMjRcIj48L2RzLWljb24+XHJcbiAgICAgICAgICAgICAgICAgIDwvc2xvdD5cclxuICAgICAgICAgICAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPHNhdC1wb3BvdmVyXHJcbiAgICAgICAgICAgICAgICAgICN3b3JrZmxvdyBbYW5jaG9yXT1cIndvcmtmbG93QW5jaG9yXCIgW2hhc0JhY2tkcm9wXT1cInRydWVcIiB2ZXJ0aWNhbEFsaWduPVwiYmVsb3dcIlxyXG4gICAgICAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ249XCJlbmRcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtcG9wb3ZlciBwLTNcIiBzdHlsZT1cIm1pbi13aWR0aDogMzMwcHg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRzLWFwcHJvdmFscyAqbmdJZj1cImFwcHJvdmFsSGlzdG9yeVwiIGNsYXNzPVwicG9wb3Zlci1hcHByb3ZhbHNcIiBhcHByb3ZhbHNEYXRhPVwie3thcHByb3ZhbHN9fVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZHMtYXBwcm92YWxzPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvc2F0LXBvcG92ZXI+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2hlYWRlcj5cclxuICA8L25nLWNvbnRhaW5lcj4tLT5cclxufVxyXG4iXX0=
|
|
271
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvc2VydmljZS1oZWFkZXIvc2VydmljZS1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvc2VydmljZS1oZWFkZXIvc2VydmljZS1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFtQyxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0gsT0FBTyxLQUFLLFNBQVMsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsZUFBZSxFQUFZLE1BQU0sMEJBQTBCLENBQUM7QUFDcEUsT0FBTyxFQUErQixlQUFlLEVBQWlCLE1BQU0sbUJBQW1CLENBQUM7QUFDaEcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDeEYsT0FBTyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDckQsT0FBTyxFQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDNUUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sc0NBQXNDLENB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dEIsQ0FBQyxlQUFlO3dCQUN6QixFQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBQztxQkFDekM7NlBBR1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgRGVzdHJveVJlZiwgaW5qZWN0LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Rm9ybSwgU2VjdGlvbn0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCAqIGFzIENvbnN0YW50cyBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvY29uc3RhbnRzJztcclxuaW1wb3J0IHtNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHtDb3JlSTE4blNlcnZpY2UsIENvcmVTZXJ2aWNlLCBGZWVkQmFja1NlcnZpY2UsIFNpZGVuYXZTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7UHJvZmlsZVNlY3Rpb25Db21wb25lbnR9IGZyb20gJy4uL3Byb2ZpbGUtc2VjdGlvbi9wcm9maWxlLXNlY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtGZWVkYmFja1NlY3Rpb25Db21wb25lbnR9IGZyb20gJy4uL2ZlZWRiYWNrLXNlY3Rpb24vZmVlZGJhY2stc2VjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQge05nQ2xhc3MsIE5nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7U2F0UG9wb3Zlck1vZHVsZX0gZnJvbSAnQG5jc3RhdGUvc2F0LXBvcG92ZXInO1xyXG5pbXBvcnQge01hdERpdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpdmlkZXInO1xyXG5pbXBvcnQge01hdE1lbnUsIE1hdE1lbnVJdGVtLCBNYXRNZW51VHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7RmFxU2lkZW5hdkNvbXBvbmVudH0gZnJvbSAnLi4vZmFxLXNpZGVuYXYvZmFxLXNpZGVuYXYuY29tcG9uZW50JztcclxuaW1wb3J0IHtBY3Rpdml0aWVzQ29tcG9uZW50fSBmcm9tICcuLi9hY3Rpdml0aWVzL2FjdGl2aXRpZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHtmb3JtYXR9IGZyb20gJ2RhdGUtZm5zJztcclxuaW1wb3J0IHtUb2FzdHJTZXJ2aWNlfSBmcm9tIFwibmd4LXRvYXN0clwiO1xyXG5pbXBvcnQge1ByZXZpb3VzUmVxdWVzdHNDb21wb25lbnR9IGZyb20gXCIuLi9wcmV2aW91cy1yZXF1ZXN0cy9wcmV2aW91cy1yZXF1ZXN0cy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xyXG5cclxuY29uc3QgU3RhdHVzTWFwID0ge1xyXG4gIFtDb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNURURdOiB7Y2xhc3M6ICdkYW5nZXInLCBpY29uOiAnY2xvc2UnfSxcclxuICBbQ29uc3RhbnRzLkZPUk1fU1RBVFVTX0NBTkNFTExFRF06IHtjbGFzczogJ2RhbmdlcicsIGljb246ICdjbG9zZSd9LFxyXG4gIFtDb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNUXToge2NsYXNzOiAnZGFuZ2VyJywgaWNvbjogJ2Nsb3NlJ30sXHJcbiAgW0NvbnN0YW50cy5TRUNUSU9OX1NUQVRVU19VTlNBVElTRklFRF06IHtjbGFzczogJ2RhbmdlcicsIGljb246ICdjbG9zZSd9LFxyXG4gIFtDb25zdGFudHMuRk9STV9TVEFUVVNfQ0FOQ0VMXToge2NsYXNzOiAnZGFuZ2VyJywgaWNvbjogJ2Nsb3NlJ30sXHJcbiAgW0NvbnN0YW50cy5GT1JNX1NUQVRVU19QRU5ESU5HXToge2NsYXNzOiAnd2FybmluZycsIGljb246ICdjbG9jayd9LFxyXG4gICdkZWZhdWx0Jzoge2NsYXNzOiAnc3VjY2VzcycsIGljb246ICdjaGVjayd9XHJcbn1cclxuXHJcbmludGVyZmFjZSBBcHByb3ZhbEhpc3RvcnlJdGVtIHtcclxuICBhcHByb3Zlcjoge1xyXG4gICAgcGVyc29uTmFtZTogc3RyaW5nO1xyXG4gICAgcGVyc29uRW1haWw6IHN0cmluZztcclxuICB9O1xyXG4gIHBvc2l0aW9uVHlwZTogc3RyaW5nO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtc2VydmljZS1oZWFkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zZXJ2aWNlLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc2VydmljZS1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nSWYsXHJcbiAgICBTYXRQb3BvdmVyTW9kdWxlLFxyXG4gICAgTWF0RGl2aWRlcixcclxuICAgIE1hdE1lbnVUcmlnZ2VyLFxyXG4gICAgTmdDbGFzcyxcclxuICAgIE1hdE1lbnUsXHJcbiAgICBNYXRNZW51SXRlbVxyXG4gIF0sXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxyXG4gIHByb3ZpZGVyczogW0ZlZWRCYWNrU2VydmljZSxcclxuICAgIHtwcm92aWRlOiBNQVRfRElBTE9HX0RBVEEsIHVzZVZhbHVlOiB7fX0sXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VydmljZUhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG4gIEBJbnB1dCgpIGZvcm06IEZvcm07XHJcbiAgQElucHV0KCkgc2hvd0hpc3RvcnkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcclxuICBASW5wdXQoKSBpc1JlYWRPbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2hvd0FwcHJvdmFsSGlzdG9yeSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGFwcHJvdmFsSGlzdG9yeTogYW55O1xyXG4gIEBJbnB1dCgpIGNyZWF0aW9uRGF0ZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGZvcm1UaXRsZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb246IFNlY3Rpb247XHJcbiAgQElucHV0KCkgc2VydmljZUZhcTogYW55W10gPSBbXTtcclxuICBhcHByb3ZhbHM6IGFueVtdID0gW107XHJcbiAgZmxhZ1ByaW9yaXR5OiBzdHJpbmc7XHJcbiAgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY29yZVNlcnZpY2U6IENvcmVTZXJ2aWNlLFxyXG4gICAgcHVibGljIGkxOG46IENvcmVJMThuU2VydmljZSwgcHJpdmF0ZSByZWFkb25seSBmZWVkQmFja1NlcnZpY2U6IEZlZWRCYWNrU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2csIHByaXZhdGUgcmVhZG9ubHkgc2lkZW5hdlNlcnZpY2U6IFNpZGVuYXZTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b2FzdGVyU2VydmljZTogVG9hc3RyU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogRXhlY3V0ZXMgYWZ0ZXIgdGhlIHZpZXcgaGFzIGJlZW4gZnVsbHkgaW5pdGlhbGl6ZWQuXHJcbiAgICpcclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqL1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuZ2V0QXBwcm92YWxIaXN0b3J5KHRoaXMuYXBwcm92YWxIaXN0b3J5KTtcclxuICAgIGlmICh0aGlzLmZvcm0/LmhlYWRlcj8uY3JlYXRpb25EYXRlKSB7XHJcbiAgICAgIHRoaXMuY3JlYXRpb25EYXRlID0gZm9ybWF0KG5ldyBEYXRlKHRoaXMuZm9ybT8uaGVhZGVyPy5jcmVhdGlvbkRhdGUpLCBcImRkL01NL3l5eXkgaGg6bW06c3NcIik7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgdGhlIGNsaWNrIGV2ZW50IG9uIHRoZSBjb21tZW50cyBmb3JtLlxyXG4gICAqIFJldHJpZXZlcyBjb21tZW50cyBmcm9tIHRoZSBmb3JtLCB0cmFuc2Zvcm1zIHRoZW0sIGFuZCB1cGRhdGVzIGFjdGl2aXRpZXMgaW4gdGhlIGNvcmUgc2VydmljZS5cclxuICAgKiBGaW5hbGx5LCBwdWJsaXNoZXMgYW4gJ29wZW4nIGV2ZW50IHRvIHRoZSBzaWRlbmF2IHNlcnZpY2UgdG8gb3BlbiB0aGUgQWN0aXZpdGllc0NvbXBvbmVudC5cclxuICAgKlxyXG4gICAqIEByZXR1cm4ge3ZvaWR9XHJcbiAgICovXHJcbiAgb25Db21tZW50c0Zvcm1DbGljaygpIHtcclxuICAgIGNvbnN0IGZvcm1Db21tZW50czogYW55ID0gdGhpcy5mb3JtLmNvbW1lbnRzRHJvcDtcclxuICAgIGNvbnN0IHRyYW5zZm9ybWVkQ29tbWVudHMgPSBbXTtcclxuICAgIGZvciAoY29uc3QgY29tbWVudCBvZiBmb3JtQ29tbWVudHMpIHtcclxuICAgICAgdHJhbnNmb3JtZWRDb21tZW50cy5wdXNoKHRoaXMudHJhbnNmb3JtQ29tbWVudEl0ZW0oY29tbWVudCkpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb3JlU2VydmljZS5hY3Rpdml0aWVzID0gdHJhbnNmb3JtZWRDb21tZW50cztcclxuICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UucHVibGlzaCgnb3BlbicsIEFjdGl2aXRpZXNDb21wb25lbnQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJhbnNmb3JtcyBhIGNvbW1lbnQgaXRlbSBpbnRvIGEgZGlmZmVyZW50IGZvcm1hdCBmb3IgZGlzcGxheS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBpdGVtIC0gVGhlIG9yaWdpbmFsIGNvbW1lbnQgaXRlbSB0byB0cmFuc2Zvcm0uXHJcbiAgICogQHJldHVybiB7T2JqZWN0fSAtIFRoZSB0cmFuc2Zvcm1lZCBjb21tZW50IGl0ZW0gd2l0aCBzcGVjaWZpYyBwcm9wZXJ0aWVzIGluY2x1ZGluZyBuYW1lLCB0aXRsZSwgaW1hZ2UsIGRhdGUsIHRpbWUsIGNvbW1lbnQsIGFuZCBhdHRhY2htZW50cy5cclxuICAgKi9cclxuICBwcml2YXRlIHRyYW5zZm9ybUNvbW1lbnRJdGVtKGl0ZW0pIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5hbWU6IGl0ZW1bJ2VtcGxveWVlTmFtZSddLFxyXG4gICAgICB0aXRsZTogaXRlbS5qb2JQb3NpdGlvbixcclxuICAgICAgaW1hZ2U6IGl0ZW1bJ3Byb2ZpbGVQaWN0dXJlJ10sXHJcbiAgICAgIGRhdGU6IGZvcm1hdChuZXcgRGF0ZShpdGVtWydjb21tZW50RGF0ZSddKSwgJ3l5eXktTU0tZGQnKSxcclxuICAgICAgdGltZTogZm9ybWF0KG5ldyBEYXRlKGl0ZW1bJ2NvbW1lbnREYXRlJ10pLCAnaDptbSBhJyksXHJcbiAgICAgIGNvbW1lbnQ6IGl0ZW1bJ2NvbW1lbnRCb2R5J10sXHJcbiAgICAgIGF0dGFjaG1lbnRzOiBpdGVtWydhdHRhY2htZW50J11cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPcGVucyBhIGRpYWxvZyBmb3IgcHJvdmlkaW5nIGZlZWRiYWNrLlxyXG4gICAqXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKi9cclxuICBmZWVkYmFjaygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nLm9wZW4oRmVlZGJhY2tTZWN0aW9uQ29tcG9uZW50LCB7XHJcbiAgICAgIHBhbmVsQ2xhc3M6IFsnbWFpbi1wb3B1cCddLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgcHJvZmlsZTogdGhpcy5mb3JtLnByb2ZpbGVJbmZvRHJvcCxcclxuICAgICAgICBpbmJveEl0ZW06IHRoaXMuZm9ybS5pbmJveEl0ZW0sXHJcbiAgICAgICAgZm9ybTogdGhpcy5mb3JtXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlcyB0aGUgc2lkZW5hdiB3aXRoIHVzZXIgcHJvZmlsZSBpbmZvcm1hdGlvbiBpZiBub3QgYWxyZWFkeSBsb2FkaW5nLlxyXG4gICAqXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKi9cclxuICBzaG93VXNlckluZm8oKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNMb2FkaW5nKSB7XHJcbiAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UuZGF0YSA9IHRoaXMuZm9ybT8ucHJvZmlsZUluZm9Ecm9wO1xyXG4gICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLnB1Ymxpc2goJ29wZW4nLCBQcm9maWxlU2VjdGlvbkNvbXBvbmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXQgdGhlIHByaW9yaXR5IGZsYWcgZm9yIHRoZSBpbmJveCBpdGVtIHdpdGggdGhlIHByb3ZpZGVkIElELlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGlkIC0gVGhlIElEIG9mIHRoZSBwcmlvcml0eSBmbGFnIHRvIGJlIHNldCBmb3IgdGhlIGluYm94IGl0ZW0uXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKi9cclxuICBzZXRGbGFnUHJpb3JpdHkoaWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5mbGFnUHJpb3JpdHkgPSBpZDtcclxuICAgIHRoaXMuZm9ybS5pbmJveEl0ZW0uZmxhZ1ByaW9yaXR5ID0gaWQ7XHJcbiAgICB0aGlzLnN1YnNjcmliZVRvU2V0RmxhZ1ByaW9yaXR5KGlkKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN1YnNjcmliZSB0byBzZXQgZmxhZyBwcmlvcml0eSBmb3IgYSBzcGVjaWZpYyBpZGVudGlmaWVyLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGlkIC0gVGhlIGlkZW50aWZpZXIgb2YgdGhlIGZsYWcgdG8gc2V0IHByaW9yaXR5IGZvci5cclxuICAgKiBAcmV0dXJuIHt2b2lkfVxyXG4gICAqL1xyXG4gIHN1YnNjcmliZVRvU2V0RmxhZ1ByaW9yaXR5KGlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuY29yZVNlcnZpY2Uuc2V0RmxhZ1ByaW9yaXR5KGlkKS5waXBlKFxyXG4gICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxyXG4gICAgKS5zdWJzY3JpYmUoKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5zdWNjZXNzKHRoaXMuaTE4bi50cmFuc2xhdGUoJ2ZsYWdTdGF0dXNVcGRhdGVkJykpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdGhlIENTUyBjbGFzcyBhc3NvY2lhdGVkIHdpdGggdGhlIGlucHV0IHN0YXR1cy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzdGF0dXMgLSBUaGUgc3RhdHVzIGZvciB3aGljaCB0aGUgQ1NTIGNsYXNzIGlzIG5lZWRlZC5cclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IC0gVGhlIENTUyBjbGFzcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBzdGF0dXMuXHJcbiAgICovXHJcbiAgc3RhdHVzQ2xhc3Moc3RhdHVzOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgLy8gc3RhdHVzID0gc3RhdHVzID8gc3RhdHVzLnRvTG93ZXJDYXNlKCkgOiAnJztcclxuICAgIGxldCBzdGF0dXNTdHJhdGVneSA9IFN0YXR1c01hcFtzdGF0dXNdIHx8IFN0YXR1c01hcFsnZGVmYXVsdCddO1xyXG4gICAgcmV0dXJuIHN0YXR1c1N0cmF0ZWd5LmNsYXNzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbnMgdGhlIEZBUSBzaWRlIG5hdmlnYXRpb24uXHJcbiAgICogQHJldHVybiB7dm9pZH1cclxuICAgKi9cclxuICBvcGVuRmFxKCkge1xyXG4gICAgdGhpcy5zaWRlbmF2U2VydmljZS5wdWJsaXNoKCdvcGVuJywgRmFxU2lkZW5hdkNvbXBvbmVudCwgJ2VuZCcsICdvdmVyJywgdGhpcy5zZXJ2aWNlRmFxKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHJpZXZlcyBhcHByb3ZhbCBoaXN0b3J5IGluZm9ybWF0aW9uIGZvciBlYWNoIGFwcHJvdmFsIGl0ZW0gaW4gdGhlIHByb3ZpZGVkIGFycmF5LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtBcHByb3ZhbEhpc3RvcnlJdGVtW119IGFwcHJvdmFsSGlzdG9yeSAtIFRoZSBhcnJheSBjb250YWluaW5nIGFwcHJvdmFsIGhpc3RvcnkgaXRlbXMuXHJcbiAgICpcclxuICAgKiBAcmV0dXJuIHt2b2lkfSAtIFRoaXMgbWV0aG9kIGRvZXMgbm90IHJldHVybiBhbnkgdmFsdWUuIEl0IHVwZGF0ZXMgdGhlIGludGVybmFsICdhcHByb3ZhbHMnIGFycmF5LlxyXG4gICAqL1xyXG4gIGdldEFwcHJvdmFsSGlzdG9yeShhcHByb3ZhbEhpc3Rvcnk6IEFwcHJvdmFsSGlzdG9yeUl0ZW1bXSkge1xyXG4gICAgYXBwcm92YWxIaXN0b3J5Py5mb3JFYWNoKChhcHByb3ZhbEl0ZW0sIGluZGV4KSA9PiB7XHJcbiAgICAgIGxldCBhcHByb3ZhbFN0YXR1cyA9IHRoaXMuZ2V0QXBwcm92YWxTdGF0dXMoaW5kZXgpO1xyXG4gICAgICBsZXQgYXBwcm92YWxTdGF0dXNMYWJlbCA9IHRoaXMuZ2V0QXBwcm92YWxTdGF0dXNMYWJlbChpbmRleCk7XHJcbiAgICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgICBpZDogaW5kZXggKyAxLFxyXG4gICAgICAgIG5hbWU6IGFwcHJvdmFsSXRlbS5hcHByb3Zlci5wZXJzb25OYW1lLFxyXG4gICAgICAgIHRpdGxlOiBhcHByb3ZhbEl0ZW0ucG9zaXRpb25UeXBlLFxyXG4gICAgICAgIGltYWdlOiB0aGlzLmdldEltYWdlVXJsKGFwcHJvdmFsSXRlbS5hcHByb3Zlci5wZXJzb25FbWFpbCksXHJcbiAgICAgICAgc3RhdHVzOiBhcHByb3ZhbFN0YXR1cyxcclxuICAgICAgICBzdGF0dXNMYWJlbDogYXBwcm92YWxTdGF0dXNMYWJlbCxcclxuICAgICAgfTtcclxuICAgICAgdGhpcy5hcHByb3ZhbHMucHVzaChvYmopO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgdGhlIGFwcHJvdmFsIHN0YXR1cyBmb3IgYSBzcGVjaWZpYyBzZWN0aW9uIGluIHRoZSBmb3JtLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBzZWN0aW9uIGZvciB3aGljaCB0aGUgYXBwcm92YWwgc3RhdHVzIGlzIHJlcXVpcmVkLlxyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gVGhlIGFwcHJvdmFsIHN0YXR1cyBvZiB0aGUgc3BlY2lmaWVkIHNlY3Rpb24uIFJldHVybnMgYW4gZW1wdHkgc3RyaW5nIGlmIHRoZSBzZWN0aW9uIGRvZXMgbm90IGV4aXN0LlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0QXBwcm92YWxTdGF0dXMoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBsZXQgc3RhdHVzID0gJyc7XHJcbiAgICBpZiAodGhpcy5mb3JtLnNlY3Rpb25zW2luZGV4ICsgMV0pIHtcclxuICAgICAgc3RhdHVzID0gdGhpcy5zdGF0dXNDbGFzcyh0aGlzLmZvcm0uc2VjdGlvbnNbaW5kZXggKyAxXS5ib2R5LmRldGFpbHMuZGVjaXNpb24ua2V5KTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdGF0dXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRyaWV2ZXMgdGhlIGFwcHJvdmFsIHN0YXR1cyBsYWJlbCBmcm9tIHRoZSBmb3JtIHNlY3Rpb24gYmFzZWQgb24gdGhlIGdpdmVuIGluZGV4LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBmb3JtIHNlY3Rpb24gZm9yIHdoaWNoIHRoZSBhcHByb3ZhbCBzdGF0dXMgbGFiZWwgd2lsbCBiZSByZXRyaWV2ZWQuXHJcbiAgICogQHJldHVybiB7c3RyaW5nfSBUaGUgYXBwcm92YWwgc3RhdHVzIGxhYmVsIHJldHJpZXZlZCBmcm9tIHRoZSBzcGVjaWZpZWQgZm9ybSBzZWN0aW9uLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0QXBwcm92YWxTdGF0dXNMYWJlbChpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGxldCBzdGF0dXNMYWJlbCA9ICcnO1xyXG4gICAgaWYgKHRoaXMuZm9ybS5zZWN0aW9uc1tpbmRleCArIDFdKSB7XHJcbiAgICAgIHN0YXR1c0xhYmVsID0gdGhpcy5mb3JtLnNlY3Rpb25zW2luZGV4ICsgMV0uYm9keS5kZXRhaWxzLmRlY2lzaW9uLnZhbHVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0YXR1c0xhYmVsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmVzIHRoZSBVUkwgb2YgdGhlIHVzZXIncyBwb3J0cmFpdCBpbWFnZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgZW1haWwuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge3N0cmluZ30gZW1haWwgLSBUaGUgZW1haWwgYWRkcmVzcyBvZiB0aGUgdXNlciBmb3Igd2hvbSB0aGUgcG9ydHJhaXQgVVJMIGlzIHRvIGJlIHJldHJpZXZlZC5cclxuICAgKiBAcmV0dXJuIHtzdHJpbmd9IC0gVGhlIFVSTCB1c2VkIHRvIGZldGNoIHRoZSB1c2VyJ3MgcG9ydHJhaXQgaW1hZ2UuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXRJbWFnZVVybChlbWFpbDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiAnL2dyb3VwL2ktZ2F0ZS93bS1icG0vZm9ybXMvLS9wcm94eS9wb3J0cmFpdD9lbWFpbD0nICsgZW1haWw7XHJcbiAgfVxyXG5cclxuICBzaG93UHJldmlvdXNSZXF1ZXN0cygpIHtcclxuICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UucHVibGlzaCgnb3BlbicsIFByZXZpb3VzUmVxdWVzdHNDb21wb25lbnQpO1xyXG4gIH1cclxufVxyXG4iLCJAaWYgKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddID09PSAnTkVXJykge1xyXG4gIDxzZWN0aW9uXHJcbiAgICBjbGFzcz1cIm1haW4tc2lkZW5hdiBtYWluLXNpZGVuYXYtZnVsbCBtYi00XCJcclxuXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpZGVuYXYtdGl0bGVcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTMgdy0xMDBcIj5cclxuICAgICAgICA8IS0tIDxkcy1idXR0b24gaWNvbiBjbGFzcz1cInJvdGF0ZS1hcnJvd1wiIHNpemU9XCJzbWFsbFwiIChjbGljayk9XCJnb0JhY2soKVwiICpuZ0lmPVwiIWlzSW5Nb2JpbGVBcHAoKSAmJiBzaG93QmFja1wiPlxyXG4gICAgICAgICAgIDxkcy1pY29uIGljb249XCJhcnJvdy1yaWdodFwiIGNsYXNzPVwiZnMtMTkgZmMtYmxhY2tcIj48L2RzLWljb24+XHJcbiAgICAgICAgIDwvZHMtYnV0dG9uPi0tPlxyXG5cclxuICAgICAgICA8IS0tICA8aDMgY2xhc3M9XCJmbGV4LWdyb3ctMFwiPlxyXG4gICAgICAgICAgICB7eyBmb3JtVGl0bGUgfX1cclxuICAgICAgICAgIDwvaDM+LS0+XHJcblxyXG4gICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgPGg2IGNsYXNzPVwiZnMtMTQgZnMtbWQtMTIgZnctbm9ybWFsIGZjLWRhcmstZ3JheSBtYi0wXCI+XHJcbiAgICAgICAgICAgIHt7IGkxOG4udHJhbnNsYXRlKCdIZWxsbycpIH19XHJcbiAgICAgICAgICAgIHt7IGNvcmVTZXJ2aWNlLmdldFNob3J0TmFtZShmb3JtPy5oZWFkZXI/LnJlcXVlc3Rlck5hbWUpIH19LCB7eyBpMThuLnRyYW5zbGF0ZSgnd2VsY29tZUJhY2snKSB9fSFcclxuICAgICAgICAgIDwvaDY+XHJcbiAgICAgICAgICA8aDEgY2xhc3M9XCJmcy0yNiBmcy1tZC0yMCBmdy1ib2xkIGZjLWJsYWNrIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgbWItMVwiPlxyXG4gICAgICAgICAgICB7eyBmb3JtVGl0bGUgfX1cclxuICAgICAgICAgICAgQGlmIChzZXJ2aWNlRmFxLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJpbmZvXCIgY2xhc3M9XCJmcy0yMiBmYy1kYXJrLWdyYXkgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwib3BlbkZhcSgpXCI+XHJcbiAgICAgICAgICAgICAgPC9kcy1pY29uPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L2gxPlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtZW5kIGdhcC0yIGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICBAaWYgKHNlcnZpY2VGYXEubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIDxkcy1idXR0b24gc2l6ZT1cInNtYWxsXCIgaWNvbj5cclxuICAgICAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiaW5mb1wiIGNsYXNzPVwiZnMtMjIgZmMtZGFyay1ncmF5IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9wZW5GYXEoKVwiPlxyXG4gICAgICAgICAgICAgIDwvZHMtaWNvbj5cclxuICAgICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA8IS0tIDxkcy1idXR0b24gc2l6ZT1cInNtYWxsXCIgaWNvbiAoY2xpY2spPVwib3BlbldvcmtmbG93KClcIj5cclxuICAgICAgICAgICAgPGRzLWljb24gaWNvbj1cImJlbGwtMi1vXCIgY2xhc3M9XCJmcy0yMCBmYy1jb3JhbFwiPjwvZHMtaWNvbj5cclxuICAgICAgICAgIDwvZHMtYnV0dG9uPiAtLT5cclxuICAgICAgICAgIEBpZiAoIWlzUmVhZE9ubHkpIHtcclxuICAgICAgICAgICAgPGRzLWJ1dHRvbiBzaXplPVwic21hbGxcIiBpY29uIChjbGljayk9XCJzaG93UHJldmlvdXNSZXF1ZXN0cygpXCI+XHJcbiAgICAgICAgICAgICAgPGRzLWljb24gaWNvbj1cImNsb2NrXCIgY2xhc3M9XCJmcy0yMCBmYy1jb3JhbFwiPjwvZHMtaWNvbj5cclxuICAgICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9zZWN0aW9uPlxyXG5cclxuICA8IS0tICA8aGVhZGVyIGNsYXNzPVwibWItNCBtdC00IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtZW5kIGdhcC0yXCI+XHJcbiAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgIDxoNiBjbGFzcz1cImZzLTE0IGZzLW1kLTEyIGZ3LW5vcm1hbCBmYy1kYXJrLWdyYXkgbWItMFwiPlxyXG4gICAgICAgICAge3sgaTE4bi50cmFuc2xhdGUoJ0hlbGxvJykgfX1cclxuICAgICAgICAgIHt7IGNvcmVTZXJ2aWNlLmdldFNob3J0TmFtZShmb3JtPy5oZWFkZXI/LnJlcXVlc3Rlck5hbWUpIH19LCB7eyBpMThuLnRyYW5zbGF0ZSgnd2VsY29tZUJhY2snKSB9fSFcclxuICAgICAgICA8L2g2PlxyXG4gICAgICAgIDxoMSBjbGFzcz1cImZzLTI2IGZzLW1kLTIwIGZ3LWJvbGQgZmMtYmxhY2sgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiBtYi0xXCI+XHJcbiAgICAgICAgICB7eyBmb3JtVGl0bGUgfX1cclxuICAgICAgICAgIEBpZiAoc2VydmljZUZhcS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgPGRzLWljb24gaWNvbj1cImluZm9cIiBjbGFzcz1cImZzLTIyIGZjLWRhcmstZ3JheSBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvcGVuRmFxKClcIj5cclxuICAgICAgICAgICAgPC9kcy1pY29uPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIDwvaDE+XHJcbiAgICAgIDwvc2VjdGlvbj5cclxuICAgIDwvaGVhZGVyPi0tPlxyXG59IEBlbHNlIHtcclxuXHJcbiAgPGRpdiBjbGFzcz1cInctMTAwXCI+XHJcbiAgICA8c2VjdGlvbiBjbGFzcz1cInJlcXVlc3QtbWFpbi1pbmZvICB7e3N0YXR1c0NsYXNzKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddKX19XCI+XHJcbiAgICAgIDxzZWN0aW9uIGNsYXNzPVwicmVxdWVzdC1pbmZvXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcXVlc3QtaW5mby0tYm9keVwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgIGFsdD1cIlwiXHJcbiAgICAgICAgICAgICAgc3JjPVwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTXpBaUlHaGxhV2RvZEQwaU1qa2lJSFpwWlhkQ2IzZzlJakFnTUNBek1DQXlPU0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0S1BIQmhkR2dnWkQwaVRUSTFMakVnTUVnMExqbERNaTR5SURBZ01DQXlMaklnTUNBMExqbFdNamd1TmtneU5TNHhRekkzTGpnZ01qZ3VOaUF6TUNBeU5pNDBJRE13SURJekxqZFdOQzQ1UXpNd0lESXVNaUF5Tnk0NElEQWdNalV1TVNBd1drMHlJRFF1T1VNeUlETXVNeUF6TGpNZ01pQTBMamtnTWtneU5TNHhRekkyTGpjZ01pQXlPQ0F6TGpNZ01qZ2dOQzQ1VmpJekxqZERNamdnTWpVdU15QXlOaTQzSURJMkxqWWdNalV1TVNBeU5pNDJTREpXTkM0NVdrMHhNUzQxSURZdU0wTTNMakVnTmk0eklETXVOU0E1TGprZ015NDFJREUwTGpORE15NDFJREU0TGpjZ055NHhJREl5TGpNZ01URXVOU0F5TWk0elF6RTFMamtnTWpJdU15QXhPUzQxSURFNExqY2dNVGt1TlNBeE5DNHpRekU1TGpVZ09TNDVJREUxTGprZ05pNHpJREV4TGpVZ05pNHpXazB4TlM0eElERTVRekUwTGpFZ01Ua3VPQ0F4TWk0NElESXdMaklnTVRFdU5TQXlNQzR5UXpFd0xqSWdNakF1TWlBNExqa2dNVGt1T0NBM0xqa2dNVGxET0M0M0lERTNMamNnTVRBZ01UY2dNVEV1TlNBeE4wTXhNeUF4TnlBeE5DNDBJREUzTGpnZ01UVXVNU0F4T1ZwTk1UTXVNU0F4TXk0MFF6RXpMakVnTVRRdU15QXhNaTQwSURFMUlERXhMalVnTVRWRE1UQXVOaUF4TlNBNUxqa2dNVFF1TXlBNUxqa2dNVE11TkVNNUxqa2dNVEl1TlNBeE1DNDJJREV4TGpnZ01URXVOU0F4TVM0NFF6RXlMalFnTVRFdU9DQXhNeTR4SURFeUxqVWdNVE11TVNBeE15NDBXazB4TlM0eElERXpMalJETVRVdU1TQXhNUzQwSURFekxqVWdPUzQ0SURFeExqVWdPUzQ0UXprdU5TQTVMamdnTnk0NUlERXhMalFnTnk0NUlERXpMalJETnk0NUlERTBMaklnT0M0eUlERTFJRGd1TnlBeE5TNDNRemN1T0NBeE5pNHhJRGN1TVNBeE5pNDRJRFl1TlNBeE55NDJRelV1T0NBeE5pNDJJRFV1TlNBeE5TNDFJRFV1TlNBeE5DNHpRelV1TlNBeE1TQTRMaklnT0M0eklERXhMalVnT0M0elF6RTBMamdnT0M0eklERTNMalVnTVRFZ01UY3VOU0F4TkM0elF6RTNMalVnTVRVdU5TQXhOeTR5SURFMkxqWWdNVFl1TlNBeE55NDJRekUxTGprZ01UWXVPQ0F4TlM0eUlERTJMaklnTVRRdU15QXhOUzQzUXpFMExqZ2dNVFV1TVNBeE5TNHhJREUwTGpJZ01UVXVNU0F4TXk0MFdrMHlNU0E1TGpGRE1qRWdPQzQySURJeExqUWdPQzR4SURJeUlEZ3VNVWd5TlM0MVF6STJJRGd1TVNBeU5pNDFJRGd1TlNBeU5pNDFJRGt1TVVNeU5pNDFJRGt1TmlBeU5pNHhJREV3TGpFZ01qVXVOU0F4TUM0eFNESXlRekl4TGpRZ01UQXVNU0F5TVNBNUxqWWdNakVnT1M0eFdrMHlNU0F4TWk0MVF6SXhJREV5SURJeExqUWdNVEV1TlNBeU1pQXhNUzQxU0RJMUxqVkRNallnTVRFdU5TQXlOaTQxSURFeExqa2dNall1TlNBeE1pNDFRekkyTGpVZ01UTWdNall1TVNBeE15NDFJREkxTGpVZ01UTXVOVWd5TWtNeU1TNDBJREV6TGpVZ01qRWdNVE11TVNBeU1TQXhNaTQxV2sweU1TQXhOa015TVNBeE5TNDFJREl4TGpRZ01UVWdNaklnTVRWSU1qVXVOVU15TmlBeE5TQXlOaTQxSURFMUxqUWdNall1TlNBeE5rTXlOaTQxSURFMkxqVWdNall1TVNBeE55QXlOUzQxSURFM1NESXlRekl4TGpRZ01UY2dNakVnTVRZdU5pQXlNU0F4TmxwTk1qVXVOU0F5TUM0MVNESXlRekl4TGpVZ01qQXVOU0F5TVNBeU1DNHhJREl4SURFNUxqVkRNakVnTVRndU9TQXlNUzQwSURFNExqVWdNaklnTVRndU5VZ3lOUzQxUXpJMklERTRMalVnTWpZdU5TQXhPQzQ1SURJMkxqVWdNVGt1TlVNeU5pNDFJREl3TGpFZ01qWXVNU0F5TUM0MUlESTFMalVnTWpBdU5Wb2lJR1pwYkd3OUlpTkdSak0zTlVVaUx6NEtQQzl6ZG1jK0NnPT1cIi8+XHJcbiAgICAgICAgICAgIDxoNCBjbGFzcz1cImZzLTIyIGZzLW1kLTE2IGZjLWJsYWNrIGZ3LW1lZGl1bSBtYi0wIGZsZXgtZ3Jvdy0xIGxpbmUtaGVpZ2h0LTEtMlwiPlxyXG4gICAgICAgICAgICAgIHt7IGZvcm1UaXRsZSB9fVxyXG4gICAgICAgICAgICA8L2g0PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMiByZXF1ZXN0LWluZm8tLXN0YXR1cy1hY3Rpb25cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtaW5saW5lLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtZW5kXCI+XHJcbiAgICAgICAgICAgICAgQGlmICghaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgICAgICA8ZHMtc3RhdHVzXHJcbiAgICAgICAgICAgICAgICAgIHN0YXR1cz1cInt7c3RhdHVzQ2xhc3MoZm9ybT8uaGVhZGVyPy5zdGF0dXM/Llsna2V5J10pfX1cIiBjbGFzcz1cImhlYWRlci1zdGF0dXNcIj57eyBmb3JtPy5oZWFkZXI/LnN0YXR1cz8uWyd2YWx1ZSddIH19XHJcbiAgICAgICAgICAgICAgICA8L2RzLXN0YXR1cz5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgICAgICAgIDwhLS0gPGRzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9ybT8uaW5ib3hJdGVtICYmIChmb3JtPy5pbmJveEl0ZW0/LmNhblJlcXVlc3RGZWVkYmFjayA9PSd0cnVlJ3x8IGZvcm0/LmluYm94SXRlbT8uaGFzRmVlZGJhY2s9PSd0cnVlJylcIlxyXG4gICAgICAgICAgICAgICAgIHNxdWFyZSBpY29uIHNpemU9XCJzbWFsbFwiPlxyXG4gICAgICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJjaGF0LW9cIiBjbGFzcz1cImZzLTIwIGZzLW1kLTE3IGZjLWNvcmFsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAmbHQ7ISZuZGFzaDsgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2ZjLWdyZWVuJzpmZWVkQmFja0ljb24gPT0gJ2ZlZWRiYWNrUmVzcG9uZGVkJyAsICdmYy1yZWQnOiBmZWVkQmFja0ljb24gPT0gJ3Jlc3BvbmRUb0ZlZWRiYWNrJyAsICdmYy15ZWxsb3cnOiBmZWVkQmFja0ljb24gPT0gJ3dhaXRpbmdGZWVkYmFjayd9XCImbmRhc2g7Jmd0O1xyXG4gICAgICAgICAgICAgICAgIDwvZHMtaWNvbj5cclxuICAgICAgICAgICAgICAgPC9kcy1idXR0b24+LS0+XHJcbiAgICAgICAgICAgICAgPCEtLSBoaXN0b3J5LS0+XHJcbiAgICAgICAgICAgICAgPGRzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJmb3JtPy5jb21tZW50c0Ryb3A/Lmxlbmd0aCA+IDAgJiYgIWlzTG9hZGluZ1wiIHNxdWFyZSBpY29uIHNpemU9XCJzbWFsbFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Db21tZW50c0Zvcm1DbGljaygpXCIgY2xhc3M9XCJoYXMtY29tbWVudHNcIj5cclxuICAgICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJjbG9ja1wiIGNsYXNzPVwiZmMtY29yYWwgZnMtMjAgZnMtbWQtMTdcIj48L2RzLWljb24+XHJcbiAgICAgICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicmVxdWVzdC1pbmZvLS1mb290ZXJcIj5cclxuICAgICAgICAgIEBpZiAoIWlzTG9hZGluZykge1xyXG4gICAgICAgICAgICA8ZHMtYXZhdGFyXHJcbiAgICAgICAgICAgICAgaW1hZ2U9XCJ7e2Zvcm0/LmhlYWRlcj8ucmVxdWVzdGVyUGhvdG99fVwiIHNpemU9XCJ4eC1zbWFsbFwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJkLWlubGluZS1mbGV4IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNob3dVc2VySW5mbygpXCI+PC9kcy1hdmF0YXI+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LXdyYXAgZmxleC1ncm93LTEgZ2FwLTEgZ2FwLXNtLTIgbGluZS1oZWlnaHQtMSByZXF1ZXN0LWluZm8tLWhlYWRlcl9fZGV0YWlsc1wiPlxyXG4gICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnbG9hZGluZy1iZyBsb2FkaW5nLXdpZHRoJzogaXNMb2FkaW5nfVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmcy0xMiBmdy1tZWRpdW0gZC1ub25lIGQtc20taW5saW5lLWJsb2NrXCI+e3sgY29yZVNlcnZpY2UuZ2V0U2hvcnROYW1lKGZvcm0/LmhlYWRlcj8uWydyZXF1ZXN0ZXJOYW1lJ10pIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZzLTIwXCI+JiM4MjI2Ozwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0xMlwiIFtuZ0NsYXNzXT1cInsnbG9hZGluZy1iZyBsb2FkaW5nLXdpZHRoJzogaXNMb2FkaW5nfVwiPiB7eyBmb3JtPy5oZWFkZXI/LmZvcm1JZCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0yMFwiICpuZ0lmPVwiY3JlYXRpb25EYXRlXCI+JiM4MjI2Ozwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0xMlwiIFtuZ0NsYXNzXT1cInsnbG9hZGluZy1iZyBsb2FkaW5nLXdpZHRoJzogaXNMb2FkaW5nfVwiPiB7eyBjcmVhdGlvbkRhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9zZWN0aW9uPlxyXG4gICAgPC9zZWN0aW9uPlxyXG5cclxuICA8L2Rpdj5cclxuXHJcblxyXG4gIDwhLS08bmctY29udGFpbmVyPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMiBteS0yXCI+XHJcbiAgICAgIDxkcy1idXR0b25cclxuICAgICAgICAqbmdJZj1cImZvcm0/LmluYm94SXRlbSAmJiAhZm9ybS5zZWN0aW9uc1tmb3JtLnNlY3Rpb25zLmxlbmd0aCAtMV0uaGVhZGVyLnJlYWRPbmx5ICYmICFpc0xvYWRpbmdcIlxyXG4gICAgICAgIHNxdWFyZVxyXG4gICAgICAgIGljb25cclxuICAgICAgICBzaXplPVwic21hbGxcIlxyXG4gICAgICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJtZW51XCJcclxuICAgICAgICBjbGFzcz1cImljb24tYnRuLXNoYWRvd1wiPlxyXG4gICAgICAgIDxkcy1pY29uXHJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7J2ZjLXB1cnBsZScgOiAoZmxhZ1ByaW9yaXR5ID09PSAnMCcgfHwgIGZsYWdQcmlvcml0eSA9PT0gbnVsbCksJ2ZjLXllbGxvdycgOiBmbGFnUHJpb3JpdHkgPT09ICcxJywnZmMtZ3JlZW4nIDogZmxhZ1ByaW9yaXR5ID09PSAnMicsJ2ZjLWNvcmFsJyA6IGZsYWdQcmlvcml0eSA9PT0gJzMnfVwiXHJcbiAgICAgICAgICBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmcy0yMCBmcy1tZC0xNyBmYy1wdXJwbGVcIj5cclxuICAgICAgICA8L2RzLWljb24+XHJcbiAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICA8bWF0LW1lbnUgI21lbnU9XCJtYXRNZW51XCIgcGFuZWxDbGFzcz1cImFjdGlvbi1tZW51XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJzZXRGbGFnUHJpb3JpdHkoJzAnKVwiPlxyXG4gICAgICAgICAgPGRzLWljb24gaWNvbj1cImZsYWctb1wiIGNsYXNzPVwiZmMtcHVycGxlIGZzLTIwIGZzLW1kLTE3XCI+PC9kcy1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwic2V0RmxhZ1ByaW9yaXR5KCcxJylcIj5cclxuICAgICAgICAgIDxkcy1pY29uIGljb249XCJmbGFnLW9cIiBjbGFzcz1cImZjLXllbGxvdyBmcy0yMCBmcy1tZC0xN1wiPjwvZHMtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInNldEZsYWdQcmlvcml0eSgnMicpXCI+XHJcbiAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmYy1ncmVlbiBmcy0yMCBmcy1tZC0xN1wiPjwvZHMtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cInNldEZsYWdQcmlvcml0eSgnMycpXCI+XHJcbiAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiZmxhZy1vXCIgY2xhc3M9XCJmYy1jb3JhbCBmcy0yMCBmcy1tZC0xN1wiPjwvZHMtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9tYXQtbWVudT5cclxuXHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGhlYWRlciBjbGFzcz1cInNlcnZpY2UtaGVhZGVyIGJjLXdoaXRlIHAtMyBwLXNtLTQgcHktNCBnYXAtMyB7e3N0YXR1c0NsYXNzKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddKX19XCI+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2VydmljZS1oZWFkZXItaWNvblwiPlxyXG4gICAgICAgIDxpbWdcclxuICAgICAgICAgIGFsdD1cIlwiXHJcbiAgICAgICAgICBzcmM9XCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNekFpSUdobGFXZG9kRDBpTWpraUlIWnBaWGRDYjNnOUlqQWdNQ0F6TUNBeU9TSWdabWxzYkQwaWJtOXVaU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajRLUEhCaGRHZ2daRDBpVFRJMUxqRWdNRWcwTGpsRE1pNHlJREFnTUNBeUxqSWdNQ0EwTGpsV01qZ3VOa2d5TlM0eFF6STNMamdnTWpndU5pQXpNQ0F5Tmk0MElETXdJREl6TGpkV05DNDVRek13SURJdU1pQXlOeTQ0SURBZ01qVXVNU0F3V2sweUlEUXVPVU15SURNdU15QXpMak1nTWlBMExqa2dNa2d5TlM0eFF6STJMamNnTWlBeU9DQXpMak1nTWpnZ05DNDVWakl6TGpkRE1qZ2dNalV1TXlBeU5pNDNJREkyTGpZZ01qVXVNU0F5Tmk0MlNESldOQzQ1V2sweE1TNDFJRFl1TTBNM0xqRWdOaTR6SURNdU5TQTVMamtnTXk0MUlERTBMak5ETXk0MUlERTRMamNnTnk0eElESXlMak1nTVRFdU5TQXlNaTR6UXpFMUxqa2dNakl1TXlBeE9TNDFJREU0TGpjZ01Ua3VOU0F4TkM0elF6RTVMalVnT1M0NUlERTFMamtnTmk0eklERXhMalVnTmk0eldrMHhOUzR4SURFNVF6RTBMakVnTVRrdU9DQXhNaTQ0SURJd0xqSWdNVEV1TlNBeU1DNHlRekV3TGpJZ01qQXVNaUE0TGprZ01Ua3VPQ0EzTGprZ01UbERPQzQzSURFM0xqY2dNVEFnTVRjZ01URXVOU0F4TjBNeE15QXhOeUF4TkM0MElERTNMamdnTVRVdU1TQXhPVnBOTVRNdU1TQXhNeTQwUXpFekxqRWdNVFF1TXlBeE1pNDBJREUxSURFeExqVWdNVFZETVRBdU5pQXhOU0E1TGprZ01UUXVNeUE1TGprZ01UTXVORU01TGprZ01USXVOU0F4TUM0MklERXhMamdnTVRFdU5TQXhNUzQ0UXpFeUxqUWdNVEV1T0NBeE15NHhJREV5TGpVZ01UTXVNU0F4TXk0MFdrMHhOUzR4SURFekxqUkRNVFV1TVNBeE1TNDBJREV6TGpVZ09TNDRJREV4TGpVZ09TNDRRemt1TlNBNUxqZ2dOeTQ1SURFeExqUWdOeTQ1SURFekxqUkROeTQ1SURFMExqSWdPQzR5SURFMUlEZ3VOeUF4TlM0M1F6Y3VPQ0F4Tmk0eElEY3VNU0F4Tmk0NElEWXVOU0F4Tnk0MlF6VXVPQ0F4Tmk0MklEVXVOU0F4TlM0MUlEVXVOU0F4TkM0elF6VXVOU0F4TVNBNExqSWdPQzR6SURFeExqVWdPQzR6UXpFMExqZ2dPQzR6SURFM0xqVWdNVEVnTVRjdU5TQXhOQzR6UXpFM0xqVWdNVFV1TlNBeE55NHlJREUyTGpZZ01UWXVOU0F4Tnk0MlF6RTFMamtnTVRZdU9DQXhOUzR5SURFMkxqSWdNVFF1TXlBeE5TNDNRekUwTGpnZ01UVXVNU0F4TlM0eElERTBMaklnTVRVdU1TQXhNeTQwV2sweU1TQTVMakZETWpFZ09DNDJJREl4TGpRZ09DNHhJREl5SURndU1VZ3lOUzQxUXpJMklEZ3VNU0F5Tmk0MUlEZ3VOU0F5Tmk0MUlEa3VNVU15Tmk0MUlEa3VOaUF5Tmk0eElERXdMakVnTWpVdU5TQXhNQzR4U0RJeVF6SXhMalFnTVRBdU1TQXlNU0E1TGpZZ01qRWdPUzR4V2sweU1TQXhNaTQxUXpJeElERXlJREl4TGpRZ01URXVOU0F5TWlBeE1TNDFTREkxTGpWRE1qWWdNVEV1TlNBeU5pNDFJREV4TGprZ01qWXVOU0F4TWk0MVF6STJMalVnTVRNZ01qWXVNU0F4TXk0MUlESTFMalVnTVRNdU5VZ3lNa015TVM0MElERXpMalVnTWpFZ01UTXVNU0F5TVNBeE1pNDFXazB5TVNBeE5rTXlNU0F4TlM0MUlESXhMalFnTVRVZ01qSWdNVFZJTWpVdU5VTXlOaUF4TlNBeU5pNDFJREUxTGpRZ01qWXVOU0F4TmtNeU5pNDFJREUyTGpVZ01qWXVNU0F4TnlBeU5TNDFJREUzU0RJeVF6SXhMalFnTVRjZ01qRWdNVFl1TmlBeU1TQXhObHBOTWpVdU5TQXlNQzQxU0RJeVF6SXhMalVnTWpBdU5TQXlNU0F5TUM0eElESXhJREU1TGpWRE1qRWdNVGd1T1NBeU1TNDBJREU0TGpVZ01qSWdNVGd1TlVneU5TNDFRekkySURFNExqVWdNall1TlNBeE9DNDVJREkyTGpVZ01Ua3VOVU15Tmk0MUlESXdMakVnTWpZdU1TQXlNQzQxSURJMUxqVWdNakF1TlZvaUlHWnBiR3c5SWlOR1JqTTNOVVVpTHo0S1BDOXpkbWMrQ2c9PVwiLz5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ncm93LTEgZC1mbGV4IGZsZXgtY29sdW1uIGZsZXgtc20tcm93IGFsaWduLWl0ZW1zLXNtLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMVwiPlxyXG4gICAgICAgICAgPGgxIGNsYXNzPVwiZnMtMjAgZnMtbWQtMTYgZnctYm9sZCBmYy1ibGFjayBoZWFkZXItdGl0bGUgbS0wXCI+e3sgZm9ybVRpdGxlIH19XHJcbiAgICAgICAgICAgIEBpZiAoc2VydmljZUZhcS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiaW5mb1wiIGNsYXNzPVwiZnMtMjIgZmMtZGFyay1ncmF5IGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIm9wZW5GYXEoKVwiPlxyXG4gICAgICAgICAgICAgIDwvZHMtaWNvbj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgPC9oMT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItdXNlciBkLWZsZXggYWxpZ24taXRlbXMtc20tY2VudGVyIGdhcC0yIG10LXNtLTFcIj5cclxuICAgICAgICAgICAgQGlmICghaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgICAgPGRzLWF2YXRhclxyXG4gICAgICAgICAgICAgICAgaW1hZ2U9XCJ7e2Zvcm0/LmhlYWRlcj8ucmVxdWVzdGVyUGhvdG99fVwiIHNpemU9XCJ4eC1zbWFsbFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImQtaW5saW5lLWZsZXggY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic2hvd1VzZXJJbmZvKClcIj48L2RzLWF2YXRhcj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZnMtMTIgdGV4dC10cnVuY2F0ZSBkLXNtLWJsb2NrIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNob3dVc2VySW5mbygpXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2xvYWRpbmctYmcgbG9hZGluZy13aWR0aCc6IGlzTG9hZGluZ31cIj57eyBjb3JlU2VydmljZS5nZXRTaG9ydE5hbWUoZm9ybT8uaGVhZGVyPy5yZXF1ZXN0ZXJOYW1lKSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPG1hdC1kaXZpZGVyIGNsYXNzPVwiZGl2aWRlciBjaXJjbGUgbXgtMiBkLW5vbmUgZC1zbS1ibG9ja1wiPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZnMtMTJcIiBbbmdDbGFzc109XCJ7J2xvYWRpbmctYmcgbG9hZGluZy13aWR0aCc6IGlzTG9hZGluZ31cIj57eyBmb3JtPy5oZWFkZXI/LmZvcm1JZCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgQGlmIChjcmVhdGlvbkRhdGUpIHtcclxuICAgICAgICAgICAgICA8bWF0LWRpdmlkZXIgY2xhc3M9XCJkaXZpZGVyIGNpcmNsZSBteC0yIGQtbm9uZSBkLXNtLWJsb2NrXCI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZzLTE0XCIgW25nQ2xhc3NdPVwieydsb2FkaW5nLWJnIGxvYWRpbmctd2lkdGgnOiBpc0xvYWRpbmd9XCI+e3sgY3JlYXRpb25EYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1hY3Rpb25zIGQtZmxleCBmbGV4LXJvdyBmbGV4LXNtLWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBqdXN0aWZ5LWNvbnRlbnQtc20tY2VudGVyIGdhcC0yIG10LTIgbXQtc20tMFwiPlxyXG4gICAgICAgICAgQGlmICghaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgIDxkcy1zdGF0dXNcclxuICAgICAgICAgICAgICBzdGF0dXM9XCJ7e3N0YXR1c0NsYXNzKGZvcm0/LmhlYWRlcj8uc3RhdHVzPy5bJ2tleSddKX19XCIgY2xhc3M9XCJoZWFkZXItc3RhdHVzXCI+e3sgZm9ybT8uaGVhZGVyPy5zdGF0dXM/LlsndmFsdWUnXSB9fVxyXG4gICAgICAgICAgICA8L2RzLXN0YXR1cz5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1lbmQgZ2FwLTJcIj5cclxuICAgICAgICAgICAgJmx0OyEmbmRhc2g7IGZlZWRiYWNrJm5kYXNoOyZndDtcclxuICAgICAgICAgICAgJmx0OyEmbmRhc2g7ICAgICAgICAgICAgKm5nSWY9XCJmb3JtPy5pbmJveEl0ZW0gJiYgKGZvcm0/LmluYm94SXRlbT8uY2FuUmVxdWVzdEZlZWRiYWNrID09PSd0cnVlJ3x8IGZvcm0/LmluYm94SXRlbT8uaGFzRmVlZGJhY2s9PT0ndHJ1ZScpICYmICFpc0xvYWRpbmdcIiZuZGFzaDsmZ3Q7XHJcbiAgICAgICAgICAgICZsdDshJm5kYXNoOyAgPGRzLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgc3F1YXJlIGljb24gc2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cImZlZWRiYWNrKClcIj5cclxuICAgICAgICAgICAgICAgIDxkcy1pY29uXHJcbiAgICAgICAgICAgICAgICAgIGljb249XCJjaGF0LW9cIiBjbGFzcz1cImZzLTIwIGZzLW1kLTE3IGZjLWNvcmFsXCJcclxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydmYy1ncmVlbic6ZmVlZEJhY2tJY29uID09PSAnZmVlZGJhY2tSZXNwb25kZWQnICwgJ2ZjLXJlZCc6IGZlZWRCYWNrSWNvbiA9PT0gJ3Jlc3BvbmRUb0ZlZWRiYWNrJyAsICdmYy15ZWxsb3cnOiBmZWVkQmFja0ljb24gPT09ICd3YWl0aW5nRmVlZGJhY2snfVwiPlxyXG4gICAgICAgICAgICAgICAgPC9kcy1pY29uPlxyXG4gICAgICAgICAgICAgIDwvZHMtYnV0dG9uPiZuZGFzaDsmZ3Q7XHJcbiAgICAgICAgICAgIDxkcy1idXR0b25cclxuICAgICAgICAgICAgICAqbmdJZj1cImZvcm0/LmNvbW1lbnRzRHJvcD8ubGVuZ3RoID4gMCAmJiAhaXNMb2FkaW5nXCIgc3F1YXJlIGljb24gc2l6ZT1cInNtYWxsXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwib25Db21tZW50c0Zvcm1DbGljaygpXCIgY2xhc3M9XCJoYXMtY29tbWVudHNcIj5cclxuICAgICAgICAgICAgICA8ZHMtaWNvbiBpY29uPVwiY2xvY2tcIiBjbGFzcz1cImZjLWNvcmFsIGZzLTIwIGZzLW1kLTE3XCI+PC9kcy1pY29uPlxyXG4gICAgICAgICAgICA8L2RzLWJ1dHRvbj5cclxuICAgICAgICAgICAgQGlmIChzaG93QXBwcm92YWxIaXN0b3J5KSB7XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxkcy1idXR0b25cclxuICAgICAgICAgICAgICAgICAgY29sb3I9XCJ3aGl0ZVwiIHNoYXBlPVwidGV4dFwiIHNxdWFyZSBzaXplPVwic21hbGxcIiBbc2F0UG9wb3ZlckFuY2hvcl09XCJ3b3JrZmxvd1wiXHJcbiAgICAgICAgICAgICAgICAgICN3b3JrZmxvd0FuY2hvcj1cInNhdFBvcG92ZXJBbmNob3JcIiAoY2xpY2spPVwid29ya2Zsb3dBbmNob3IucG9wb3Zlci5vcGVuKClcIj5cclxuICAgICAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cInByZWZpeFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkcy1pY29uIGljb249XCJ3b3JrZmxvd1wiIGNsYXNzPVwiZnMtMjRcIj48L2RzLWljb24+XHJcbiAgICAgICAgICAgICAgICAgIDwvc2xvdD5cclxuICAgICAgICAgICAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPHNhdC1wb3BvdmVyXHJcbiAgICAgICAgICAgICAgICAgICN3b3JrZmxvdyBbYW5jaG9yXT1cIndvcmtmbG93QW5jaG9yXCIgW2hhc0JhY2tkcm9wXT1cInRydWVcIiB2ZXJ0aWNhbEFsaWduPVwiYmVsb3dcIlxyXG4gICAgICAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ249XCJlbmRcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtcG9wb3ZlciBwLTNcIiBzdHlsZT1cIm1pbi13aWR0aDogMzMwcHg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRzLWFwcHJvdmFscyAqbmdJZj1cImFwcHJvdmFsSGlzdG9yeVwiIGNsYXNzPVwicG9wb3Zlci1hcHByb3ZhbHNcIiBhcHByb3ZhbHNEYXRhPVwie3thcHByb3ZhbHN9fVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZHMtYXBwcm92YWxzPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvc2F0LXBvcG92ZXI+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2hlYWRlcj5cclxuICA8L25nLWNvbnRhaW5lcj4tLT5cclxufVxyXG4iXX0=
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { Component, CUSTOM_ELEMENTS_SCHEMA, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, EventEmitter, inject, Input, Output, ViewChild } from '@angular/core';
|
|
2
2
|
import * as constants from '../../../constants';
|
|
3
3
|
import { FormsModule } from '@angular/forms';
|
|
4
4
|
import { NgClass, NgForOf, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
5
5
|
import { MatAccordion } from '@angular/material/expansion';
|
|
6
6
|
import { FormSectionComponent } from '../form-section/form-section.component';
|
|
7
7
|
import { MainRequestDetailsComponent } from '../main-request-details/main-request-details.component';
|
|
8
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "../../../services";
|
|
10
11
|
import * as i2 from "@angular/forms";
|
|
@@ -24,6 +25,7 @@ export class WorkflowSectionComponent {
|
|
|
24
25
|
segmentDynamicLoaderService = null;
|
|
25
26
|
sectionFormComponent = null;
|
|
26
27
|
sectionName = constants.SECTION_ID_REQUEST_DETAILS;
|
|
28
|
+
destroyRef = inject(DestroyRef);
|
|
27
29
|
constructor(i18n, cdRef) {
|
|
28
30
|
this.i18n = i18n;
|
|
29
31
|
this.cdRef = cdRef;
|
|
@@ -40,7 +42,7 @@ export class WorkflowSectionComponent {
|
|
|
40
42
|
}
|
|
41
43
|
ngAfterViewChecked() {
|
|
42
44
|
if (this.formStateObject && this.form && !this.startedListener) {
|
|
43
|
-
this.formStateObject.valueChanges.subscribe(
|
|
45
|
+
this.formStateObject.valueChanges.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(
|
|
44
46
|
/* istanbul ignore next */
|
|
45
47
|
(form) => {
|
|
46
48
|
Object.keys(form).forEach((key) => {
|
|
@@ -159,4 +161,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
159
161
|
}], sectionName: [{
|
|
160
162
|
type: Input
|
|
161
163
|
}] } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvYXBwLWNvbXBvbmVudC1zZWN0aW9ucy93b3JrZmxvdy1zZWN0aW9uL3dvcmtmbG93LXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvd29ya2Zsb3ctc2VjdGlvbi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzSCxPQUFPLEtBQUssU0FBUyxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxXQUFXLEVBQVMsTUFBTSxnQkFBZ0IsQ0FBQztBQUduRCxPQUFPLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sd0RBQXdELENBQUM7Ozs7QUFtQm5HLE1BQU0sT0FBTyx3QkFBd0I7SUFnQjFCO0lBQ0M7SUFoQmEsZUFBZSxDQUFTO0lBQ3JDLGdCQUFnQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBQzFELFFBQVEsQ0FBWTtJQUNwQixVQUFVLENBQVU7SUFDcEIsU0FBUyxDQUFVO0lBQ25CLElBQUksQ0FBTztJQUNYLFlBQVksR0FBRyw0QkFBNEIsQ0FBQztJQUNyRCxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ2Ysa0JBQWtCLENBQU07SUFDakMsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUNkLDJCQUEyQixHQUFHLElBQUksQ0FBQztJQUNuQyxvQkFBb0IsR0FBRyxJQUFJLENBQUM7SUFDNUIsV0FBVyxHQUFHLFNBQVMsQ0FBQywwQkFBMEIsQ0FBQztJQUU1RCxZQUNTLElBQXFCLEVBQ3BCLEtBQXdCO1FBRHpCLFNBQUksR0FBSixJQUFJLENBQWlCO1FBQ3BCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBRXBDOzs7Ozs7Ozs7aUJBU1M7SUFDUCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQy9ELElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLFNBQVM7WUFDekMsMkJBQTJCO1lBQzNCLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ1AsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtvQkFDaEMsSUFDRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO3dCQUN6RCxJQUFJLENBQUMsR0FBRyxDQUFDO3dCQUNULElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTO3dCQUV2QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDOzRCQUN2RCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2hCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUNGLENBQUM7WUFDRixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUM7WUFDeEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDOUIsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFSDsrQkFDMkI7SUFFM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztTQTJCSztJQUVMOzs7U0FHSztJQUVILElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLGFBQWEsSUFBSSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRCxXQUFXLENBQUMsSUFBSTtRQUNkLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDYixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxFQUFFLENBQUM7WUFDWixLQUFLLFVBQVU7Z0JBQ2IsT0FBTyxLQUFLLENBQUM7WUFDZixLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxLQUFLLENBQUM7WUFDZjtnQkFDRSxPQUFPLEVBQUUsQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUM7UUFDbkQsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1lBQUUsT0FBTztRQUNwQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdkIsSUFDRSxJQUFJLEVBQUUsS0FBSyxJQUFJLFNBQVM7Z0JBQ3hCLElBQUksRUFBRSxLQUFLLElBQUksUUFBUTtnQkFDdkIsSUFBSSxFQUFFLEtBQUssSUFBSSxVQUFVO2dCQUN6QixJQUFJLEVBQUUsS0FBSyxJQUFJLFFBQVE7Z0JBQ3ZCLElBQUksRUFBRSxLQUFLLElBQUksUUFBUSxFQUN2QixDQUFDO2dCQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1lBQzdCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBMUhVLHdCQUF3QjsyRkFBeEIsd0JBQXdCLHloQkMzQnJDLDgyQ0EwQkEsNmtDRFRJLFlBQVksK0lBQ1osZ0JBQWdCLG9KQUNoQixJQUFJLDZGQUNKLG9CQUFvQixzTkFDcEIsMkJBQTJCLHlHQUMzQixPQUFPLGtIQUNQLFdBQVc7OzJGQUlGLHdCQUF3QjtrQkFqQnBDLFNBQVM7K0JBQ0Usc0JBQXNCLFdBR3ZCLENBQUMsc0JBQXNCLENBQUMsV0FDeEI7d0JBQ1AsT0FBTzt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsSUFBSTt3QkFDSixvQkFBb0I7d0JBQ3BCLDJCQUEyQjt3QkFDM0IsT0FBTzt3QkFDUCxXQUFXO3FCQUNaLGNBQ1csSUFBSTtvSEFHTyxlQUFlO3NCQUFyQyxTQUFTO3VCQUFDLEdBQUc7Z0JBQ0osZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNFLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFRywyQkFBMkI7c0JBQW5DLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgY29uc3RhbnRzIGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7Rm9ybXNNb2R1bGUsIE5nRm9ybX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge0Zvcm0sIFNlY3Rpb259IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQge0NvcmVJMThuU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQge05nQ2xhc3MsIE5nRm9yT2YsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7TWF0QWNjb3JkaW9ufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9leHBhbnNpb24nO1xyXG5pbXBvcnQge0Zvcm1TZWN0aW9uQ29tcG9uZW50fSBmcm9tICcuLi9mb3JtLXNlY3Rpb24vZm9ybS1zZWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7TWFpblJlcXVlc3REZXRhaWxzQ29tcG9uZW50fSBmcm9tICcuLi9tYWluLXJlcXVlc3QtZGV0YWlscy9tYWluLXJlcXVlc3QtZGV0YWlscy5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtd29ya2Zsb3ctc2VjdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3dvcmtmbG93LXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3dvcmtmbG93LXNlY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTmdDbGFzcyxcclxuICAgIE1hdEFjY29yZGlvbixcclxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXHJcbiAgICBOZ0lmLFxyXG4gICAgRm9ybVNlY3Rpb25Db21wb25lbnQsXHJcbiAgICBNYWluUmVxdWVzdERldGFpbHNDb21wb25lbnQsXHJcbiAgICBOZ0Zvck9mLFxyXG4gICAgRm9ybXNNb2R1bGVcclxuICBdLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIFdvcmtmbG93U2VjdGlvbkNvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZCgnZicpIHB1YmxpYyBmb3JtU3RhdGVPYmplY3Q6IE5nRm9ybTtcclxuICBAT3V0cHV0KCkgc2VjdGlvblN1Ym1pdHRlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgc2VjdGlvbnM6IFNlY3Rpb25bXTtcclxuICBASW5wdXQoKSBpc1JlYWRPbmx5OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGlzTG9hZGluZzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBmb3JtOiBGb3JtO1xyXG4gIEBJbnB1dCgpIGNvbnRlbnRDbGFzcyA9ICdkZWZhdWx0LWJveCBib3gtc2hhZG93IHAtNCc7XHJcbiAgc3RhcnRlZExpc3RlbmVyID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VjdGlvbnNDb250cm9sbGVyOiBhbnk7XHJcbiAgc2hvd0J1dHRvbk1lbnUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZWdtZW50RHluYW1pY0xvYWRlclNlcnZpY2UgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb25Gb3JtQ29tcG9uZW50ID0gbnVsbDtcclxuICBASW5wdXQoKSBzZWN0aW9uTmFtZSA9IGNvbnN0YW50cy5TRUNUSU9OX0lEX1JFUVVFU1RfREVUQUlMUztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgaTE4bjogQ29yZUkxOG5TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgKSB7XHJcbi8qICAgIF9saXN0ZW5lclNlcnZpY2UubGlzdGVuKCkuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0Py5mdW5jdGlvbiA9PSAncmVzZXRGb3JtJykge1xyXG4gICAgICAgIHRoaXMucmVzZXRGb3JtKCk7XHJcbiAgICAgIH0gZWxzZSBpZiAocmVzdWx0Py5mdW5jdGlvbiA9PSAnb25TdWJtaXQnKSB7XHJcbiAgICAgICAgY29uc3Qgc2VjdGlvblNpemUgPSB0aGlzLnNlY3Rpb25zLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgY29uc3Qgc2VjdGlvbiA9IHRoaXMuc2VjdGlvbnNbc2VjdGlvblNpemVdO1xyXG4gICAgICAgIGNvbnN0IGRhdGEgPSByZXN1bHQuZGF0YSA/IHJlc3VsdC5kYXRhIDogc2VjdGlvbjtcclxuICAgICAgICB0aGlzLm9uU3VibWl0KHJlc3VsdD8uYWN0aW9uLCBkYXRhKTtcclxuICAgICAgfVxyXG4gICAgfSk7Ki9cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpIHtcclxuICAgIGlmICh0aGlzLmZvcm1TdGF0ZU9iamVjdCAmJiB0aGlzLmZvcm0gJiYgIXRoaXMuc3RhcnRlZExpc3RlbmVyKSB7XHJcbiAgICAgIHRoaXMuZm9ybVN0YXRlT2JqZWN0LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoXHJcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgICovXHJcbiAgICAgICAgKGZvcm0pID0+IHtcclxuICAgICAgICAgIE9iamVjdC5rZXlzKGZvcm0pLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgdGhpcy5zZWN0aW9uc1t0aGlzLnNlY3Rpb25zLmxlbmd0aCAtIDFdLmJvZHkuZGV0YWlsc1trZXldICE9PVxyXG4gICAgICAgICAgICAgIGZvcm1ba2V5XSAmJlxyXG4gICAgICAgICAgICAgIGZvcm1ba2V5XSAhPT0gdW5kZWZpbmVkXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICB0aGlzLnNlY3Rpb25zW3RoaXMuc2VjdGlvbnMubGVuZ3RoIC0gMV0uYm9keS5kZXRhaWxzW2tleV0gPVxyXG4gICAgICAgICAgICAgICAgZm9ybVtrZXldO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLnNlY3Rpb25zQ29udHJvbGxlciA9IHRoaXMuZm9ybVN0YXRlT2JqZWN0LmNvbnRyb2xzO1xyXG4gICAgICB0aGlzLnN0YXJ0ZWRMaXN0ZW5lciA9IHRydWU7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNoZWNrQnV0dG9ucygpO1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuLyogIGlzU3VibWl0dGluZyA9IHt9O1xyXG4gIGRpc2FibGVCdXR0b25zID0gZmFsc2U7Ki9cclxuXHJcbi8qICBvblN1Ym1pdChhY3Rpb246IGFueSwgc2VjdGlvbjogYW55KSB7XHJcbiAgICBjb25zdCBzZWN0aW9uU2l6ZSA9IHRoaXMuc2VjdGlvbnMubGVuZ3RoIC0gMTtcclxuICAgIGxldCBzZWN0aW9uRGVjaXNpb24gPSB0aGlzLnNlY3Rpb25zW3NlY3Rpb25TaXplXS5ib2R5LmRldGFpbHMuZGVjaXNpb247XHJcbiAgICBpZiAoc2VjdGlvbkRlY2lzaW9uICYmIGFjdGlvbiA9PT0gJ1NVQk1JVCcpIHtcclxuICAgICAgc2VjdGlvbkRlY2lzaW9uID0geyBrZXk6IGFjdGlvbiB9O1xyXG4gICAgfVxyXG4gICAgaWYgKHNlY3Rpb25EZWNpc2lvbiAmJiBhY3Rpb24gIT09ICdTVUJNSVQnKSB7XHJcbiAgICAgIHNlY3Rpb25EZWNpc2lvbiA9IHsga2V5OiBhY3Rpb24gfTtcclxuICAgIH1cclxuICAgIHRoaXMuc2VjdGlvbnNbc2VjdGlvblNpemVdLmJvZHkuZGV0YWlscy5kZWNpc2lvbiA9IHNlY3Rpb25EZWNpc2lvbjtcclxuICAgIHRoaXMucHJvZmlsZVJlcXVlc3RlclNlcnZpY2UuaXNTdWJtaXR0aW5nW2FjdGlvbl0gPSB0cnVlO1xyXG4gICAgdGhpcy5wcm9maWxlUmVxdWVzdGVyU2VydmljZS5kaXNhYmxlQnV0dG9ucyA9IHRydWU7XHJcbiAgICB0aGlzLnN0YXRlTWFjaGluZVNlcnZpY2VcclxuICAgICAgLmRpc3BhdGNoKFxyXG4gICAgICAgIGNvbnN0YW50cy5TVEFURV9NQUNISU5FX0FDVElPTl9TVUJNSVRfRk9STSxcclxuICAgICAgICBzZWN0aW9uLFxyXG4gICAgICAgIGFjdGlvblxyXG4gICAgICApXHJcbiAgICAgIC50aGVuKChmb3JtOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLnByb2ZpbGVSZXF1ZXN0ZXJTZXJ2aWNlLmlzU3VibWl0dGluZ1thY3Rpb25dID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnByb2ZpbGVSZXF1ZXN0ZXJTZXJ2aWNlLmRpc2FibGVCdXR0b25zID0gdHJ1ZTtcclxuICAgICAgICBjb25zdCBvYmogPSB7XHJcbiAgICAgICAgICBmb3JtOiBmb3JtLFxyXG4gICAgICAgICAgYWN0aW9uOiBhY3Rpb25cclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuc2VjdGlvblN1Ym1pdHRlZC5lbWl0KG9iaik7XHJcbiAgICAgIH0pO1xyXG4gIH0qL1xyXG5cclxuLyogIHJlc2V0Rm9ybSgpIHtcclxuICAgIHRoaXMuZm9ybVN0YXRlT2JqZWN0LnJlc2V0KCk7XHJcbiAgICB0aGlzLnJlc2V0UHJvcGFnYXRvci5wcm9wYWdhdGUoKTtcclxuICB9Ki9cclxuXHJcbiAgZ2V0IGlzRXhwYW5kYWJsZUZyb21CYWNrZW5kKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybT8uc2VjdGlvbnM/Lmxlbmd0aCAmJiB0aGlzLmZvcm0uc2VjdGlvbnMuc29tZShzZWN0aW9uID0+ICdleHBhbmRTdGFnZScgaW4gc2VjdGlvbj8uYm9keT8uZGV0YWlscyk7XHJcbiAgfVxyXG5cclxuICBidXR0b25UeXBlcyh0eXBlKSB7XHJcbiAgICBzd2l0Y2ggKHR5cGUpIHtcclxuICAgICAgY2FzZSAnQVBQUk9WRSc6XHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICBjYXNlICdTRU5EQkFDSyc6XHJcbiAgICAgICAgcmV0dXJuICdyZWQnO1xyXG4gICAgICBjYXNlICdSRUpFQ1QnOlxyXG4gICAgICAgIHJldHVybiAncmVkJztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjaGVja0J1dHRvbnMoKSB7XHJcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5mb3JtPy5sb3ZzPy5kZWNpc2lvbj8ub3B0aW9ucztcclxuICAgIGlmICghQXJyYXkuaXNBcnJheShvcHRpb25zKSkgcmV0dXJuO1xyXG4gICAgb3B0aW9ucy5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICBpdGVtPy52YWx1ZSAhPSAnQVBQUk9WRScgJiZcclxuICAgICAgICBpdGVtPy52YWx1ZSAhPSAnUkVKRUNUJyAmJlxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdTRU5EQkFDSycgJiZcclxuICAgICAgICBpdGVtPy52YWx1ZSAhPSAnU1VCTUlUJyAmJlxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdDQU5DRUwnXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuc2hvd0J1dHRvbk1lbnUgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGZvcm0gI2Y9XCJuZ0Zvcm1cIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cclxuICA8ZGl2ICpuZ0lmPVwiZm9ybT8uaGVhZGVyPy5zdGF0dXM/LmtleSAhPT0gJ05FVycgXCIgY2xhc3M9XCJtdC1uM1wiIGlkPVwiYWNjb3JkaW9uXCIgcm9sZT1cInRhYmxpc3RcIlxyXG4gICAgYXJpYS1tdWx0aXNlbGVjdGFibGU9XCJ0cnVlXCI+XHJcbiAgICA8YXBwLW1haW4tcmVxdWVzdC1kZXRhaWxzIFtsb3ZdPVwiZm9ybT8ubG92c1wiIFtmb3JtXT1cImZvcm1cIiBbc2VjdGlvbl09XCJmb3JtPy5zZWN0aW9uc1swXVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFJlcURldFwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9hcHAtbWFpbi1yZXF1ZXN0LWRldGFpbHM+XHJcbiAgICA8aGVhZGVyIGNsYXNzPVwiaGVhZGVyLWxpbmUgZnMtMTIgZnctbWVkaXVtIGZjLWRhcmstZ3JheSBtdC1zbS01IG10LTQgbWItNFwiICpuZ0lmPVwiZm9ybT8uc2VjdGlvbnMubGVuZ3RoID4gMVwiPlxyXG4gICAgICB7e2kxOG4udHJhbnNsYXRlKCdBcHByb3ZhbHMnKX19XHJcbiAgICA8L2hlYWRlcj5cclxuICAgIDxtYXQtYWNjb3JkaW9uIGNsYXNzPVwicHJpbWFyeS1hY2NvcmRpb24gbWFpbi1hcHByb3ZhbFwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIGZvcm0/LnNlY3Rpb25zOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgPGFwcC1mb3JtLXNlY3Rpb24gKm5nSWY9XCJpICE9PSAwXCIgY2xhc3M9XCJhcHAtZm9ybS1zZWN0aW9uXCIgW3NlZ21lbnREeW5hbWljTG9hZGVyU2VydmljZV09XCJzZWdtZW50RHluYW1pY0xvYWRlclNlcnZpY2VcIiBbc2VjdGlvbl09c2VjdGlvbiBbbG92XT1cImZvcm0/LmxvdnNcIlxyXG4gICAgICAgICAgW2lzUmVhZE9ubHldPVwic2VjdGlvbi5oZWFkZXIucmVhZE9ubHlcIiBbZm9ybV09XCJmb3JtXCIgW2NvbnRyb2xsZXJzXT1cInNlY3Rpb25zQ29udHJvbGxlclwiPlxyXG4gICAgICAgIDwvYXBwLWZvcm0tc2VjdGlvbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L21hdC1hY2NvcmRpb24+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxzZWN0aW9uICpuZ0lmPVwiZm9ybT8uaGVhZGVyPy5zdGF0dXM/LmtleSA9PT0gJ05FVycgXCIgY2xhc3M9XCJkZWZhdWx0LWJveCBib3gtc2hhZG93IHAtNFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRSZXFEZXRcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L3NlY3Rpb24+XHJcblxyXG48L2Zvcm0+XHJcblxyXG5cclxuPG5nLXRlbXBsYXRlICNjb250ZW50UmVxRGV0PjxuZy1jb250ZW50PjwvbmctY29udGVudD48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvYXBwLWNvbXBvbmVudC1zZWN0aW9ucy93b3JrZmxvdy1zZWN0aW9uL3dvcmtmbG93LXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvd29ya2Zsb3ctc2VjdGlvbi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLHNCQUFzQixFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9JLE9BQU8sS0FBSyxTQUFTLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFDLFdBQVcsRUFBUyxNQUFNLGdCQUFnQixDQUFDO0FBR25ELE9BQU8sRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQW1CaEUsTUFBTSxPQUFPLHdCQUF3QjtJQWtCMUI7SUFDQztJQWxCYSxlQUFlLENBQVM7SUFDckMsZ0JBQWdCLEdBQXNCLElBQUksWUFBWSxFQUFF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LEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIERlc3Ryb3lSZWYsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHtGb3Jtc01vZHVsZSwgTmdGb3JtfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7Rm9ybSwgU2VjdGlvbn0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7Q29yZUkxOG5TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7TmdDbGFzcywgTmdGb3JPZiwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtNYXRBY2NvcmRpb259IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XHJcbmltcG9ydCB7Rm9ybVNlY3Rpb25Db21wb25lbnR9IGZyb20gJy4uL2Zvcm0tc2VjdGlvbi9mb3JtLXNlY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtNYWluUmVxdWVzdERldGFpbHNDb21wb25lbnR9IGZyb20gJy4uL21haW4tcmVxdWVzdC1kZXRhaWxzL21haW4tcmVxdWVzdC1kZXRhaWxzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXdvcmtmbG93LXNlY3Rpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93b3JrZmxvdy1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBNYXRBY2NvcmRpb24sXHJcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxyXG4gICAgTmdJZixcclxuICAgIEZvcm1TZWN0aW9uQ29tcG9uZW50LFxyXG4gICAgTWFpblJlcXVlc3REZXRhaWxzQ29tcG9uZW50LFxyXG4gICAgTmdGb3JPZixcclxuICAgIEZvcm1zTW9kdWxlXHJcbiAgXSxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXb3JrZmxvd1NlY3Rpb25Db21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ2YnKSBwdWJsaWMgZm9ybVN0YXRlT2JqZWN0OiBOZ0Zvcm07XHJcbiAgQE91dHB1dCgpIHNlY3Rpb25TdWJtaXR0ZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb25zOiBTZWN0aW9uW107XHJcbiAgQElucHV0KCkgaXNSZWFkT25seTogYm9vbGVhbjtcclxuICBASW5wdXQoKSBpc0xvYWRpbmc6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZm9ybTogRm9ybTtcclxuICBASW5wdXQoKSBjb250ZW50Q2xhc3MgPSAnZGVmYXVsdC1ib3ggYm94LXNoYWRvdyBwLTQnO1xyXG4gIHN0YXJ0ZWRMaXN0ZW5lciA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb25zQ29udHJvbGxlcjogYW55O1xyXG4gIHNob3dCdXR0b25NZW51ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VnbWVudER5bmFtaWNMb2FkZXJTZXJ2aWNlID0gbnVsbDtcclxuICBASW5wdXQoKSBzZWN0aW9uRm9ybUNvbXBvbmVudCA9IG51bGw7XHJcbiAgQElucHV0KCkgc2VjdGlvbk5hbWUgPSBjb25zdGFudHMuU0VDVElPTl9JRF9SRVFVRVNUX0RFVEFJTFM7XHJcbiAgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGkxOG46IENvcmVJMThuU2VydmljZSxcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICkge1xyXG4vKiAgICBfbGlzdGVuZXJTZXJ2aWNlLmxpc3RlbigpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdD8uZnVuY3Rpb24gPT0gJ3Jlc2V0Rm9ybScpIHtcclxuICAgICAgICB0aGlzLnJlc2V0Rm9ybSgpO1xyXG4gICAgICB9IGVsc2UgaWYgKHJlc3VsdD8uZnVuY3Rpb24gPT0gJ29uU3VibWl0Jykge1xyXG4gICAgICAgIGNvbnN0IHNlY3Rpb25TaXplID0gdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxO1xyXG4gICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLnNlY3Rpb25zW3NlY3Rpb25TaXplXTtcclxuICAgICAgICBjb25zdCBkYXRhID0gcmVzdWx0LmRhdGEgPyByZXN1bHQuZGF0YSA6IHNlY3Rpb247XHJcbiAgICAgICAgdGhpcy5vblN1Ym1pdChyZXN1bHQ/LmFjdGlvbiwgZGF0YSk7XHJcbiAgICAgIH1cclxuICAgIH0pOyovXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtU3RhdGVPYmplY3QgJiYgdGhpcy5mb3JtICYmICF0aGlzLnN0YXJ0ZWRMaXN0ZW5lcikge1xyXG4gICAgICB0aGlzLmZvcm1TdGF0ZU9iamVjdC52YWx1ZUNoYW5nZXMucGlwZShcclxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxyXG4gICAgICApLnN1YnNjcmliZShcclxuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAgKi9cclxuICAgICAgICAoZm9ybSkgPT4ge1xyXG4gICAgICAgICAgT2JqZWN0LmtleXMoZm9ybSkuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICB0aGlzLnNlY3Rpb25zW3RoaXMuc2VjdGlvbnMubGVuZ3RoIC0gMV0uYm9keS5kZXRhaWxzW2tleV0gIT09XHJcbiAgICAgICAgICAgICAgZm9ybVtrZXldICYmXHJcbiAgICAgICAgICAgICAgZm9ybVtrZXldICE9PSB1bmRlZmluZWRcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgIHRoaXMuc2VjdGlvbnNbdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxXS5ib2R5LmRldGFpbHNba2V5XSA9XHJcbiAgICAgICAgICAgICAgICBmb3JtW2tleV07XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuc2VjdGlvbnNDb250cm9sbGVyID0gdGhpcy5mb3JtU3RhdGVPYmplY3QuY29udHJvbHM7XHJcbiAgICAgIHRoaXMuc3RhcnRlZExpc3RlbmVyID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMuY2hlY2tCdXR0b25zKCk7XHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4vKiAgaXNTdWJtaXR0aW5nID0ge307XHJcbiAgZGlzYWJsZUJ1dHRvbnMgPSBmYWxzZTsqL1xyXG5cclxuLyogIG9uU3VibWl0KGFjdGlvbjogYW55LCBzZWN0aW9uOiBhbnkpIHtcclxuICAgIGNvbnN0IHNlY3Rpb25TaXplID0gdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxO1xyXG4gICAgbGV0IHNlY3Rpb25EZWNpc2lvbiA9IHRoaXMuc2VjdGlvbnNbc2VjdGlvblNpemVdLmJvZHkuZGV0YWlscy5kZWNpc2lvbjtcclxuICAgIGlmIChzZWN0aW9uRGVjaXNpb24gJiYgYWN0aW9uID09PSAnU1VCTUlUJykge1xyXG4gICAgICBzZWN0aW9uRGVjaXNpb24gPSB7IGtleTogYWN0aW9uIH07XHJcbiAgICB9XHJcbiAgICBpZiAoc2VjdGlvbkRlY2lzaW9uICYmIGFjdGlvbiAhPT0gJ1NVQk1JVCcpIHtcclxuICAgICAgc2VjdGlvbkRlY2lzaW9uID0geyBrZXk6IGFjdGlvbiB9O1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZWN0aW9uc1tzZWN0aW9uU2l6ZV0uYm9keS5kZXRhaWxzLmRlY2lzaW9uID0gc2VjdGlvbkRlY2lzaW9uO1xyXG4gICAgdGhpcy5wcm9maWxlUmVxdWVzdGVyU2VydmljZS5pc1N1Ym1pdHRpbmdbYWN0aW9uXSA9IHRydWU7XHJcbiAgICB0aGlzLnByb2ZpbGVSZXF1ZXN0ZXJTZXJ2aWNlLmRpc2FibGVCdXR0b25zID0gdHJ1ZTtcclxuICAgIHRoaXMuc3RhdGVNYWNoaW5lU2VydmljZVxyXG4gICAgICAuZGlzcGF0Y2goXHJcbiAgICAgICAgY29uc3RhbnRzLlNUQVRFX01BQ0hJTkVfQUNUSU9OX1NVQk1JVF9GT1JNLFxyXG4gICAgICAgIHNlY3Rpb24sXHJcbiAgICAgICAgYWN0aW9uXHJcbiAgICAgIClcclxuICAgICAgLnRoZW4oKGZvcm06IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMucHJvZmlsZVJlcXVlc3RlclNlcnZpY2UuaXNTdWJtaXR0aW5nW2FjdGlvbl0gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMucHJvZmlsZVJlcXVlc3RlclNlcnZpY2UuZGlzYWJsZUJ1dHRvbnMgPSB0cnVlO1xyXG4gICAgICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgICAgIGZvcm06IGZvcm0sXHJcbiAgICAgICAgICBhY3Rpb246IGFjdGlvblxyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5zZWN0aW9uU3VibWl0dGVkLmVtaXQob2JqKTtcclxuICAgICAgfSk7XHJcbiAgfSovXHJcblxyXG4vKiAgcmVzZXRGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtU3RhdGVPYmplY3QucmVzZXQoKTtcclxuICAgIHRoaXMucmVzZXRQcm9wYWdhdG9yLnByb3BhZ2F0ZSgpO1xyXG4gIH0qL1xyXG5cclxuICBnZXQgaXNFeHBhbmRhYmxlRnJvbUJhY2tlbmQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtPy5zZWN0aW9ucz8ubGVuZ3RoICYmIHRoaXMuZm9ybS5zZWN0aW9ucy5zb21lKHNlY3Rpb24gPT4gJ2V4cGFuZFN0YWdlJyBpbiBzZWN0aW9uPy5ib2R5Py5kZXRhaWxzKTtcclxuICB9XHJcblxyXG4gIGJ1dHRvblR5cGVzKHR5cGUpIHtcclxuICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICBjYXNlICdBUFBST1ZFJzpcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIGNhc2UgJ1NFTkRCQUNLJzpcclxuICAgICAgICByZXR1cm4gJ3JlZCc7XHJcbiAgICAgIGNhc2UgJ1JFSkVDVCc6XHJcbiAgICAgICAgcmV0dXJuICdyZWQnO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoZWNrQnV0dG9ucygpIHtcclxuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmZvcm0/LmxvdnM/LmRlY2lzaW9uPy5vcHRpb25zO1xyXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KG9wdGlvbnMpKSByZXR1cm47XHJcbiAgICBvcHRpb25zLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdBUFBST1ZFJyAmJlxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdSRUpFQ1QnICYmXHJcbiAgICAgICAgaXRlbT8udmFsdWUgIT0gJ1NFTkRCQUNLJyAmJlxyXG4gICAgICAgIGl0ZW0/LnZhbHVlICE9ICdTVUJNSVQnICYmXHJcbiAgICAgICAgaXRlbT8udmFsdWUgIT0gJ0NBTkNFTCdcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5zaG93QnV0dG9uTWVudSA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSAjZj1cIm5nRm9ybVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiPlxyXG4gIDxkaXYgKm5nSWY9XCJmb3JtPy5oZWFkZXI/LnN0YXR1cz8ua2V5ICE9PSAnTkVXJyBcIiBjbGFzcz1cIm10LW4zXCIgaWQ9XCJhY2NvcmRpb25cIiByb2xlPVwidGFibGlzdFwiXHJcbiAgICBhcmlhLW11bHRpc2VsZWN0YWJsZT1cInRydWVcIj5cclxuICAgIDxhcHAtbWFpbi1yZXF1ZXN0LWRldGFpbHMgW2xvdl09XCJmb3JtPy5sb3ZzXCIgW2Zvcm1dPVwiZm9ybVwiIFtzZWN0aW9uXT1cImZvcm0/LnNlY3Rpb25zWzBdXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50UmVxRGV0XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2FwcC1tYWluLXJlcXVlc3QtZGV0YWlscz5cclxuICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXItbGluZSBmcy0xMiBmdy1tZWRpdW0gZmMtZGFyay1ncmF5IG10LXNtLTUgbXQtNCBtYi00XCIgKm5nSWY9XCJmb3JtPy5zZWN0aW9ucy5sZW5ndGggPiAxXCI+XHJcbiAgICAgIHt7aTE4bi50cmFuc2xhdGUoJ0FwcHJvdmFscycpfX1cclxuICAgIDwvaGVhZGVyPlxyXG4gICAgPG1hdC1hY2NvcmRpb24gY2xhc3M9XCJwcmltYXJ5LWFjY29yZGlvbiBtYWluLWFwcHJvdmFsXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHNlY3Rpb24gb2YgZm9ybT8uc2VjdGlvbnM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICA8YXBwLWZvcm0tc2VjdGlvbiAqbmdJZj1cImkgIT09IDBcIiBjbGFzcz1cImFwcC1mb3JtLXNlY3Rpb25cIiBbc2VnbWVudER5bmFtaWNMb2FkZXJTZXJ2aWNlXT1cInNlZ21lbnREeW5hbWljTG9hZGVyU2VydmljZVwiIFtzZWN0aW9uXT1zZWN0aW9uIFtsb3ZdPVwiZm9ybT8ubG92c1wiXHJcbiAgICAgICAgICBbaXNSZWFkT25seV09XCJzZWN0aW9uLmhlYWRlci5yZWFkT25seVwiIFtmb3JtXT1cImZvcm1cIiBbY29udHJvbGxlcnNdPVwic2VjdGlvbnNDb250cm9sbGVyXCI+XHJcbiAgICAgICAgPC9hcHAtZm9ybS1zZWN0aW9uPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbWF0LWFjY29yZGlvbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPHNlY3Rpb24gKm5nSWY9XCJmb3JtPy5oZWFkZXI/LnN0YXR1cz8ua2V5ID09PSAnTkVXJyBcIiBjbGFzcz1cImRlZmF1bHQtYm94IGJveC1zaGFkb3cgcC00XCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFJlcURldFwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvc2VjdGlvbj5cclxuXHJcbjwvZm9ybT5cclxuXHJcblxyXG48bmctdGVtcGxhdGUgI2NvbnRlbnRSZXFEZXQ+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
package/esm2022/lib/components/shared-components/action-buttons/action-buttons.component.mjs
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { Component, CUSTOM_ELEMENTS_SCHEMA, EventEmitter, Input, NO_ERRORS_SCHEMA, Output } from '@angular/core';
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, EventEmitter, inject, Input, NO_ERRORS_SCHEMA, Output } from '@angular/core';
|
|
2
2
|
import * as constants from "../../../constants";
|
|
3
3
|
import { NgClass, NgForOf, NgIf } from "@angular/common";
|
|
4
4
|
import { InputComponent } from "../form-field";
|
|
5
5
|
import { SubmitDialogComponent } from "../dialogs/submit-dialog/submit-dialog.component";
|
|
6
6
|
import { NoopScrollStrategy } from "@angular/cdk/overlay";
|
|
7
7
|
import { ApprovalsWorkflowComponent } from "../../app-component-sections/approvals-workflow/approvals-workflow.component";
|
|
8
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "../../../services";
|
|
10
11
|
import * as i2 from "@angular/material/dialog";
|
|
@@ -31,6 +32,7 @@ export class ActionButtonsComponent {
|
|
|
31
32
|
'SUBMIT': false
|
|
32
33
|
};
|
|
33
34
|
submittingForm;
|
|
35
|
+
destroyRef = inject(DestroyRef);
|
|
34
36
|
constructor(i18n, actionStateService, coreService, dialog, toasterService, cdRef) {
|
|
35
37
|
this.i18n = i18n;
|
|
36
38
|
this.actionStateService = actionStateService;
|
|
@@ -38,7 +40,7 @@ export class ActionButtonsComponent {
|
|
|
38
40
|
this.dialog = dialog;
|
|
39
41
|
this.toasterService = toasterService;
|
|
40
42
|
this.cdRef = cdRef;
|
|
41
|
-
this.actionStateService.actionStates$.subscribe(states => this.actionStates = states);
|
|
43
|
+
this.actionStateService.actionStates$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(states => this.actionStates = states);
|
|
42
44
|
}
|
|
43
45
|
ngAfterViewInit() {
|
|
44
46
|
this.lovOptions?.forEach((item) => {
|
|
@@ -64,7 +66,7 @@ export class ActionButtonsComponent {
|
|
|
64
66
|
}
|
|
65
67
|
this.isSubmitting[action] = true;
|
|
66
68
|
this.submittingForm = true;
|
|
67
|
-
this.coreService.submitForm(section, action).subscribe((response) => {
|
|
69
|
+
this.coreService.submitForm(section, action).pipe(takeUntilDestroyed(this.destroyRef)).subscribe((response) => {
|
|
68
70
|
if (response) {
|
|
69
71
|
this.isSubmitting[action] = false;
|
|
70
72
|
this.success(response);
|
|
@@ -133,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
133
135
|
}], customCallEmit: [{
|
|
134
136
|
type: Output
|
|
135
137
|
}] } });
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzL2FjdGlvbi1idXR0b25zL2FjdGlvbi1idXR0b25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQtY29tcG9uZW50cy9hY3Rpb24tYnV0dG9ucy9hY3Rpb24tYnV0dG9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1DLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqSixPQUFPLEtBQUssU0FBUyxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHN0MsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDdkYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFJeEQsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sOEVBQThFLENBQUM7Ozs7O0FBZ0J4SCxNQUFNLE9BQU8sc0JBQXNCO0lBaUJkO0lBQ0M7SUFDQTtJQUNEO0lBQ0M7SUFDQTtJQXJCWCxVQUFVLENBQVE7SUFDbEIsT0FBTyxDQUFTO0lBQ2hCLFVBQVUsQ0FBWTtJQUN0QixJQUFJLENBQU87SUFDWCxPQUFPLENBQVU7SUFDakIsUUFBUSxDQUFZO0lBQ3BCLGlCQUFpQixHQUFZLElBQUksQ0FBQztJ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RHJCSSxPQUFPLG9GQUlQLDBCQUEwQjs7MkZBR2pCLHNCQUFzQjtrQkFkbEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FHbEIsSUFBSSxXQUNQLENBQUMsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUMsV0FDMUM7d0JBQ1AsT0FBTzt3QkFDUCxjQUFjO3dCQUNkLElBQUk7d0JBQ0osT0FBTzt3QkFDUCwwQkFBMEI7cUJBQzNCO21PQUdRLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgTk9fRVJST1JTX1NDSEVNQSwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgY29uc3RhbnRzIGZyb20gXCIuLi8uLi8uLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IHtOZ0NsYXNzLCBOZ0Zvck9mLCBOZ0lmfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7SW5wdXRDb21wb25lbnR9IGZyb20gXCIuLi9mb3JtLWZpZWxkXCI7XHJcbmltcG9ydCB7QWN0aW9uU3RhdGVTZXJ2aWNlLCBDb3JlSTE4blNlcnZpY2UsIENvcmVTZXJ2aWNlLCBTaWRlbmF2U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7Rm9ybSwgU2VjdGlvbn0gZnJvbSBcIi4uLy4uLy4uL2ludGVyZmFjZXNcIjtcclxuaW1wb3J0IHtTdWJtaXREaWFsb2dDb21wb25lbnR9IGZyb20gXCIuLi9kaWFsb2dzL3N1Ym1pdC1kaWFsb2cvc3VibWl0LWRpYWxvZy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtOb29wU2Nyb2xsU3RyYXRlZ3l9IGZyb20gXCJAYW5ndWxhci9jZGsvb3ZlcmxheVwiO1xyXG5pbXBvcnQge01hdERpYWxvZ30gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xyXG5pbXBvcnQge0Zvcm1Hcm91cH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7VG9hc3RyU2VydmljZX0gZnJvbSBcIm5neC10b2FzdHJcIjtcclxuaW1wb3J0IHtBcHByb3ZhbHNXb3JrZmxvd0NvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2FwcC1jb21wb25lbnQtc2VjdGlvbnMvYXBwcm92YWxzLXdvcmtmbG93L2FwcHJvdmFscy13b3JrZmxvdy5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWFjdGlvbi1idXR0b25zJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9hY3Rpb24tYnV0dG9ucy5jb21wb25lbnQuc2NzcycsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTk9fRVJST1JTX1NDSEVNQV0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTmdDbGFzcyxcclxuICAgIElucHV0Q29tcG9uZW50LFxyXG4gICAgTmdJZixcclxuICAgIE5nRm9yT2YsXHJcbiAgICBBcHByb3ZhbHNXb3JrZmxvd0NvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGlvbkJ1dHRvbnNDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoKSBsb3ZPcHRpb25zOiBhbnlbXTtcclxuICBASW5wdXQoKSBsb3ZUeXBlOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZmllbGRzRm9ybTogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIGZvcm06IEZvcm07XHJcbiAgQElucHV0KCkgc2VjdGlvbjogU2VjdGlvbjtcclxuICBASW5wdXQoKSBzZWN0aW9uczogU2VjdGlvbltdO1xyXG4gIEBJbnB1dCgpIHNob3dBcHByb3ZhbEN5Y2xlOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjdXN0b21DYWxsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQE91dHB1dCgpIHJlc2V0Rm9ybUVtaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjdXN0b21DYWxsRW1pdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgYWN0aW9uU3RhdGVzOiB7IFthY3Rpb246IHN0cmluZ106IGJvb2xlYW4gfTtcclxuICBpc1N1Ym1pdHRpbmcgPSB7XHJcbiAgICAnU1VCTUlUJzpmYWxzZVxyXG4gIH07XHJcbiAgc3VibWl0dGluZ0Zvcm06IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpMThuOiBDb3JlSTE4blNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBhY3Rpb25TdGF0ZVNlcnZpY2U6IEFjdGlvblN0YXRlU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIGNvcmVTZXJ2aWNlOiBDb3JlU2VydmljZSxcclxuICAgICAgICAgICAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB0b2FzdGVyU2VydmljZTogVG9hc3RyU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gICAgdGhpcy5hY3Rpb25TdGF0ZVNlcnZpY2UuYWN0aW9uU3RhdGVzJC5zdWJzY3JpYmUoc3RhdGVzID0+IHRoaXMuYWN0aW9uU3RhdGVzID0gc3RhdGVzKTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmxvdk9wdGlvbnM/LmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgdGhpcy5pc1N1Ym1pdHRpbmdbaXRlbS52YWx1ZV0gPSBmYWxzZVxyXG4gICAgfSlcclxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcmVzZXRGb3JtKCkge1xyXG4gICAgdGhpcy5yZXNldEZvcm1FbWl0LmVtaXQoKVxyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoYWN0aW9uOiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLmN1c3RvbUNhbGwpIHtcclxuICAgICAgdGhpcy5jdXN0b21DYWxsRW1pdC5lbWl0KGFjdGlvbilcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc3VibWl0Rm9ybShhY3Rpb24sIHRoaXMuc2VjdGlvbilcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN1Ym1pdEZvcm0oYWN0aW9uOiBzdHJpbmcsIHNlY3Rpb246IFNlY3Rpb24pIHtcclxuICAgIGNvbnN0IGxhc3RTZWN0aW9uID0gdGhpcy5zZWN0aW9uc1t0aGlzLnNlY3Rpb25zLmxlbmd0aCAtIDFdO1xyXG5cclxuICAgIGlmIChsYXN0U2VjdGlvbi5ib2R5LmRldGFpbHMuZGVjaXNpb24pIHtcclxuICAgICAgbGFzdFNlY3Rpb24uYm9keS5kZXRhaWxzLmRlY2lzaW9uID0ge2tleTogYWN0aW9ufTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlzU3VibWl0dGluZ1thY3Rpb25dID0gdHJ1ZTtcclxuICAgIHRoaXMuc3VibWl0dGluZ0Zvcm0gPSB0cnVlO1xyXG5cclxuICAgIHRoaXMuY29yZVNlcnZpY2Uuc3VibWl0Rm9ybShzZWN0aW9uLCBhY3Rpb24pLnN1YnNjcmliZShcclxuICAgICAgKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UpIHtcclxuICAgICAgICAgIHRoaXMuaXNTdWJtaXR0aW5nW2FjdGlvbl0gPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuc3VjY2VzcyhyZXNwb25zZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICAoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICBlcnI/LmVycm9yPy5tZXRhPy5tZXNzYWdlcz8uZm9yRWFjaCgobXNnKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnN1Ym1pdHRpbmdGb3JtID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLmlzU3VibWl0dGluZ1thY3Rpb25dID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLmVycm9yKG1zZy5tZXNzYWdlKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHN1Y2Nlc3MocmVzcG9uc2UpIHtcclxuICAgIGNvbnNvbGUubG9nKCdzdWNjZXNzJywgcmVzcG9uc2UpXHJcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKFN1Ym1pdERpYWxvZ0NvbXBvbmVudCwge1xyXG4gICAgICBkYXRhOiByZXNwb25zZSxcclxuICAgICAgcGFuZWxDbGFzczogWydtYWluLXBvcHVwJywgJ2NvbmZpcm0tZGlhbG9nJ10sXHJcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiBuZXcgTm9vcFNjcm9sbFN0cmF0ZWd5KCksXHJcbiAgICB9KTtcclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uU2hhcGUoaXRlbSkge1xyXG4gICAgaWYgKGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNUIHx8IGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfQ0FOQ0VMIHx8IGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfU0VORF9CQUNLKSB7XHJcbiAgICAgIHJldHVybiAnb3V0bGluZSc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJyc7XHJcbiAgfVxyXG5cclxuICBidXR0b25Db2xvcihpdGVtKSB7XHJcbiAgICBpZiAoaXRlbT8udmFsdWUgPT09IGNvbnN0YW50cy5GT1JNX1NUQVRVU19SRUpFQ1QgfHwgaXRlbT8udmFsdWUgPT09IGNvbnN0YW50cy5GT1JNX1NUQVRVU19TRU5EX0JBQ0spIHtcclxuICAgICAgcmV0dXJuICdyZWQnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibXQtNFwiPlxyXG4gIEBpZiAobG92VHlwZSA9PT0gJ2J1dHRvbicpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zXCI+XHJcbiAgICAgIDxkcy1idXR0b24gc2hhcGU9XCJ0ZXh0XCIgY29sb3I9XCJyZWRcIiAoY2xpY2spPVwicmVzZXRGb3JtKClcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImZzLTE2IGZ3LW1lZGl1bVwiPnt7IGkxOG4udHJhbnNsYXRlKCdyZXNldCcpIH19PC9zcGFuPlxyXG4gICAgICA8L2RzLWJ1dHRvbj5cclxuICAgICAgQGlmIChmb3JtPy5zZWN0aW9ucz8ubGVuZ3RoID09IDEgJiYgc2hvd0FwcHJvdmFsQ3ljbGUpIHtcclxuICAgICAgICA8bGliLWFwcHJvdmFscy13b3JrZmxvdyBbc2VjdGlvbl09XCJzZWN0aW9uXCIgW2Zvcm1dPVwiZm9ybVwiPjwvbGliLWFwcHJvdmFscy13b3JrZmxvdz5cclxuICAgICAgfVxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtd3JhcCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ncm93LTEgZmxleC1yb3ctcmV2ZXJzZSBnYXAtM1wiPlxyXG4gICAgICAgIEBmb3IgKGl0ZW0gb2YgbG92T3B0aW9uczsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgICAgICA8ZHMtYnV0dG9uXHJcbiAgICAgICAgICAgIGxvYWRpbmc9XCJ7e2lzU3VibWl0dGluZ1tpdGVtLnZhbHVlXX19XCJcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCc6ICFhY3Rpb25TdGF0ZXNbaXRlbS52YWx1ZV0gfHwgc3VibWl0dGluZ0Zvcm19XCJcclxuICAgICAgICAgICAgc2hhcGU9XCJ7eyBidXR0b25TaGFwZShpdGVtKSB9fVwiXHJcbiAgICAgICAgICAgIGNvbG9yPVwie3sgYnV0dG9uQ29sb3IoaXRlbSkgfX1cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdWJtaXQoaXRlbT8udmFsdWUpXCI+XHJcbiAgICAgICAgICAgIHt7IGl0ZW0/LlsnZGVzY3JpcHRpb24nXSB9fVxyXG4gICAgICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIH0gQGVsc2Uge1xyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTNcIj5cclxuICAgICAgPGRzLWJ1dHRvbiBzaGFwZT1cInRleHRcIiBjb2xvcj1cInJlZFwiIChjbGljayk9XCJyZXNldEZvcm0oKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZnMtMTYgZnctbWVkaXVtXCI+e3sgaTE4bi50cmFuc2xhdGUoJ3Jlc2V0JykgfX08L3NwYW4+XHJcbiAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICBAaWYgKGZvcm0/LnNlY3Rpb25zPy5sZW5ndGggPT0gMSAmJiBzaG93QXBwcm92YWxDeWNsZSkge1xyXG4gICAgICAgIDxsaWItYXBwcm92YWxzLXdvcmtmbG93IFtzZWN0aW9uXT1cInNlY3Rpb25cIiBbZm9ybV09XCJmb3JtXCI+PC9saWItYXBwcm92YWxzLXdvcmtmbG93PlxyXG4gICAgICB9XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC13cmFwIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWdyb3ctMSBmbGV4LXJvdy1yZXZlcnNlIGdhcC0zXCI+XHJcbiAgICAgIDxkcy1idXR0b25cclxuICAgICAgICBbbmdDbGFzc109XCJ7J2Rpc2FibGVkJzogIWFjdGlvblN0YXRlc1snU1VCTUlUJ10gfHwgc3VibWl0dGluZ0Zvcm19XCJcclxuICAgICAgICBsb2FkaW5nPVwie3tpc1N1Ym1pdHRpbmdbJ1NVQk1JVCddfX1cIlxyXG4gICAgICAgIChjbGljayk9XCJvblN1Ym1pdCgnU1VCTUlUJylcIj5cclxuICAgICAgICB7eyBpMThuLnRyYW5zbGF0ZSgnc3VibWl0JykgfX1cclxuICAgICAgPC9kcy1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzL2FjdGlvbi1idXR0b25zL2FjdGlvbi1idXR0b25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JwbS1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9zaGFyZWQtY29tcG9uZW50cy9hY3Rpb24tYnV0dG9ucy9hY3Rpb24tYnV0dG9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1DLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JLLE9BQU8sS0FBSyxTQUFTLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUc3QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUN2RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUl4RCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSw4RUFBOEUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFnQmhFLE1BQU0sT0FBTyxzQkFBc0I7SUFtQmQ7SUFDQztJQUNBO0lBQ0Q7SUFDQztJQUNBO0lBdkJYLFVBQVUsQ0FBUTtJQUNsQixPQUFPLENBQVM7SUFDaEIsVUFBVSxDQUFZO0lBQ3RCLElBQUks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QyxJQUFJO1FBQ2QsSUFBSSxJQUFJLEVBQUUsS0FBSyxLQUFLLFNBQVMsQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLEVBQUUsS0FBSyxLQUFLLFNBQVMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQ3BHLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzt1R0F4R1Usc0JBQXNCOzJGQUF0QixzQkFBc0IsMldDNUJuQyx3MERBeUNBLDBERHBCSSxPQUFPLG9GQUlQLDBCQUEwQjs7MkZBR2pCLHNCQUFzQjtrQkFkbEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FHbEIsSUFBSSxXQUNQLENBQUMsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUMsV0FDMUM7d0JBQ1AsT0FBTzt3QkFDUCxjQUFjO3dCQUNkLElBQUk7d0JBQ0osT0FBTzt3QkFDUCwwQkFBMEI7cUJBQzNCO21PQUdRLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgRGVzdHJveVJlZiwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIElucHV0LCBOT19FUlJPUlNfU0NIRU1BLCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBjb25zdGFudHMgZnJvbSBcIi4uLy4uLy4uL2NvbnN0YW50c1wiO1xyXG5pbXBvcnQge05nQ2xhc3MsIE5nRm9yT2YsIE5nSWZ9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtJbnB1dENvbXBvbmVudH0gZnJvbSBcIi4uL2Zvcm0tZmllbGRcIjtcclxuaW1wb3J0IHtBY3Rpb25TdGF0ZVNlcnZpY2UsIENvcmVJMThuU2VydmljZSwgQ29yZVNlcnZpY2UsIFNpZGVuYXZTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXNcIjtcclxuaW1wb3J0IHtGb3JtLCBTZWN0aW9ufSBmcm9tIFwiLi4vLi4vLi4vaW50ZXJmYWNlc1wiO1xyXG5pbXBvcnQge1N1Ym1pdERpYWxvZ0NvbXBvbmVudH0gZnJvbSBcIi4uL2RpYWxvZ3Mvc3VibWl0LWRpYWxvZy9zdWJtaXQtZGlhbG9nLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge05vb3BTY3JvbGxTdHJhdGVneX0gZnJvbSBcIkBhbmd1bGFyL2Nkay9vdmVybGF5XCI7XHJcbmltcG9ydCB7TWF0RGlhbG9nfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XHJcbmltcG9ydCB7Rm9ybUdyb3VwfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHtUb2FzdHJTZXJ2aWNlfSBmcm9tIFwibmd4LXRvYXN0clwiO1xyXG5pbXBvcnQge0FwcHJvdmFsc1dvcmtmbG93Q29tcG9uZW50fSBmcm9tIFwiLi4vLi4vYXBwLWNvbXBvbmVudC1zZWN0aW9ucy9hcHByb3ZhbHMtd29ya2Zsb3cvYXBwcm92YWxzLXdvcmtmbG93LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1hY3Rpb24tYnV0dG9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1idXR0b25zLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYWN0aW9uLWJ1dHRvbnMuY29tcG9uZW50LnNjc3MnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5PX0VSUk9SU19TQ0hFTUFdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nQ2xhc3MsXHJcbiAgICBJbnB1dENvbXBvbmVudCxcclxuICAgIE5nSWYsXHJcbiAgICBOZ0Zvck9mLFxyXG4gICAgQXBwcm92YWxzV29ya2Zsb3dDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25CdXR0b25zQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KCkgbG92T3B0aW9uczogYW55W107XHJcbiAgQElucHV0KCkgbG92VHlwZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGZpZWxkc0Zvcm06IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBmb3JtOiBGb3JtO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb246IFNlY3Rpb247XHJcbiAgQElucHV0KCkgc2VjdGlvbnM6IFNlY3Rpb25bXTtcclxuICBASW5wdXQoKSBzaG93QXBwcm92YWxDeWNsZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgY3VzdG9tQ2FsbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSByZXNldEZvcm1FbWl0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY3VzdG9tQ2FsbEVtaXQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGFjdGlvblN0YXRlczogeyBbYWN0aW9uOiBzdHJpbmddOiBib29sZWFuIH07XHJcbiAgaXNTdWJtaXR0aW5nID0ge1xyXG4gICAgJ1NVQk1JVCc6ZmFsc2VcclxuICB9O1xyXG4gIHN1Ym1pdHRpbmdGb3JtOiBib29sZWFuO1xyXG4gIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XHJcblxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaTE4bjogQ29yZUkxOG5TZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgYWN0aW9uU3RhdGVTZXJ2aWNlOiBBY3Rpb25TdGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjb3JlU2VydmljZTogQ29yZVNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IFRvYXN0clNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcclxuICApIHtcclxuICAgIHRoaXMuYWN0aW9uU3RhdGVTZXJ2aWNlLmFjdGlvblN0YXRlcyQucGlwZShcclxuICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcclxuICAgICkuc3Vic2NyaWJlKHN0YXRlcyA9PiB0aGlzLmFjdGlvblN0YXRlcyA9IHN0YXRlcyk7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5sb3ZPcHRpb25zPy5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNTdWJtaXR0aW5nW2l0ZW0udmFsdWVdID0gZmFsc2VcclxuICAgIH0pXHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHJlc2V0Rm9ybSgpIHtcclxuICAgIHRoaXMucmVzZXRGb3JtRW1pdC5lbWl0KClcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KGFjdGlvbjogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5jdXN0b21DYWxsKSB7XHJcbiAgICAgIHRoaXMuY3VzdG9tQ2FsbEVtaXQuZW1pdChhY3Rpb24pXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnN1Ym1pdEZvcm0oYWN0aW9uLCB0aGlzLnNlY3Rpb24pXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdWJtaXRGb3JtKGFjdGlvbjogc3RyaW5nLCBzZWN0aW9uOiBTZWN0aW9uKSB7XHJcbiAgICBjb25zdCBsYXN0U2VjdGlvbiA9IHRoaXMuc2VjdGlvbnNbdGhpcy5zZWN0aW9ucy5sZW5ndGggLSAxXTtcclxuXHJcbiAgICBpZiAobGFzdFNlY3Rpb24uYm9keS5kZXRhaWxzLmRlY2lzaW9uKSB7XHJcbiAgICAgIGxhc3RTZWN0aW9uLmJvZHkuZGV0YWlscy5kZWNpc2lvbiA9IHtrZXk6IGFjdGlvbn07XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pc1N1Ym1pdHRpbmdbYWN0aW9uXSA9IHRydWU7XHJcbiAgICB0aGlzLnN1Ym1pdHRpbmdGb3JtID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLmNvcmVTZXJ2aWNlLnN1Ym1pdEZvcm0oc2VjdGlvbiwgYWN0aW9uKS5waXBlKFxyXG4gICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKVxyXG4gICAgKS5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAgICAgICAgICB0aGlzLmlzU3VibWl0dGluZ1thY3Rpb25dID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLnN1Y2Nlc3MocmVzcG9uc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgKGVycjogYW55KSA9PiB7XHJcbiAgICAgICAgZXJyPy5lcnJvcj8ubWV0YT8ubWVzc2FnZXM/LmZvckVhY2goKG1zZykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zdWJtaXR0aW5nRm9ybSA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5pc1N1Ym1pdHRpbmdbYWN0aW9uXSA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5lcnJvcihtc2cubWVzc2FnZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzdWNjZXNzKHJlc3BvbnNlKSB7XHJcbiAgICBjb25zb2xlLmxvZygnc3VjY2VzcycsIHJlc3BvbnNlKVxyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihTdWJtaXREaWFsb2dDb21wb25lbnQsIHtcclxuICAgICAgZGF0YTogcmVzcG9uc2UsXHJcbiAgICAgIHBhbmVsQ2xhc3M6IFsnbWFpbi1wb3B1cCcsICdjb25maXJtLWRpYWxvZyddLFxyXG4gICAgICBzY3JvbGxTdHJhdGVneTogbmV3IE5vb3BTY3JvbGxTdHJhdGVneSgpLFxyXG4gICAgfSk7XHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGJ1dHRvblNoYXBlKGl0ZW0pIHtcclxuICAgIGlmIChpdGVtPy52YWx1ZSA9PT0gY29uc3RhbnRzLkZPUk1fU1RBVFVTX1JFSkVDVCB8fCBpdGVtPy52YWx1ZSA9PT0gY29uc3RhbnRzLkZPUk1fU1RBVFVTX0NBTkNFTCB8fCBpdGVtPy52YWx1ZSA9PT0gY29uc3RhbnRzLkZPUk1fU1RBVFVTX1NFTkRfQkFDSykge1xyXG4gICAgICByZXR1cm4gJ291dGxpbmUnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uQ29sb3IoaXRlbSkge1xyXG4gICAgaWYgKGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfUkVKRUNUIHx8IGl0ZW0/LnZhbHVlID09PSBjb25zdGFudHMuRk9STV9TVEFUVVNfU0VORF9CQUNLKSB7XHJcbiAgICAgIHJldHVybiAncmVkJztcclxuICAgIH1cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm10LTRcIj5cclxuICBAaWYgKGxvdlR5cGUgPT09ICdidXR0b24nKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtM1wiPlxyXG4gICAgICA8ZHMtYnV0dG9uIHNoYXBlPVwidGV4dFwiIGNvbG9yPVwicmVkXCIgKGNsaWNrKT1cInJlc2V0Rm9ybSgpXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0xNiBmdy1tZWRpdW1cIj57eyBpMThuLnRyYW5zbGF0ZSgncmVzZXQnKSB9fTwvc3Bhbj5cclxuICAgICAgPC9kcy1idXR0b24+XHJcbiAgICAgIEBpZiAoZm9ybT8uc2VjdGlvbnM/Lmxlbmd0aCA9PSAxICYmIHNob3dBcHByb3ZhbEN5Y2xlKSB7XHJcbiAgICAgICAgPGxpYi1hcHByb3ZhbHMtd29ya2Zsb3cgW3NlY3Rpb25dPVwic2VjdGlvblwiIFtmb3JtXT1cImZvcm1cIj48L2xpYi1hcHByb3ZhbHMtd29ya2Zsb3c+XHJcbiAgICAgIH1cclxuICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtZ3Jvdy0xIGZsZXgtcm93LXJldmVyc2UgZ2FwLTNcIj5cclxuICAgICAgICBAZm9yIChpdGVtIG9mIGxvdk9wdGlvbnM7IHRyYWNrICRpbmRleCkge1xyXG4gICAgICAgICAgPGRzLWJ1dHRvblxyXG4gICAgICAgICAgICBsb2FkaW5nPVwie3tpc1N1Ym1pdHRpbmdbaXRlbS52YWx1ZV19fVwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZGlzYWJsZWQnOiAhYWN0aW9uU3RhdGVzW2l0ZW0udmFsdWVdIHx8IHN1Ym1pdHRpbmdGb3JtfVwiXHJcbiAgICAgICAgICAgIHNoYXBlPVwie3sgYnV0dG9uU2hhcGUoaXRlbSkgfX1cIlxyXG4gICAgICAgICAgICBjb2xvcj1cInt7IGJ1dHRvbkNvbG9yKGl0ZW0pIH19XCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uU3VibWl0KGl0ZW0/LnZhbHVlKVwiPlxyXG4gICAgICAgICAgICB7eyBpdGVtPy5bJ2Rlc2NyaXB0aW9uJ10gfX1cclxuICAgICAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgICAgIH1cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICB9IEBlbHNlIHtcclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zXCI+XHJcbiAgICAgIDxkcy1idXR0b24gc2hhcGU9XCJ0ZXh0XCIgY29sb3I9XCJyZWRcIiAoY2xpY2spPVwicmVzZXRGb3JtKClcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImZzLTE2IGZ3LW1lZGl1bVwiPnt7IGkxOG4udHJhbnNsYXRlKCdyZXNldCcpIH19PC9zcGFuPlxyXG4gICAgICA8L2RzLWJ1dHRvbj5cclxuICAgICAgQGlmIChmb3JtPy5zZWN0aW9ucz8ubGVuZ3RoID09IDEgJiYgc2hvd0FwcHJvdmFsQ3ljbGUpIHtcclxuICAgICAgICA8bGliLWFwcHJvdmFscy13b3JrZmxvdyBbc2VjdGlvbl09XCJzZWN0aW9uXCIgW2Zvcm1dPVwiZm9ybVwiPjwvbGliLWFwcHJvdmFscy13b3JrZmxvdz5cclxuICAgICAgfVxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtd3JhcCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1ncm93LTEgZmxleC1yb3ctcmV2ZXJzZSBnYXAtM1wiPlxyXG4gICAgICA8ZHMtYnV0dG9uXHJcbiAgICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCc6ICFhY3Rpb25TdGF0ZXNbJ1NVQk1JVCddIHx8IHN1Ym1pdHRpbmdGb3JtfVwiXHJcbiAgICAgICAgbG9hZGluZz1cInt7aXNTdWJtaXR0aW5nWydTVUJNSVQnXX19XCJcclxuICAgICAgICAoY2xpY2spPVwib25TdWJtaXQoJ1NVQk1JVCcpXCI+XHJcbiAgICAgICAge3sgaTE4bi50cmFuc2xhdGUoJ3N1Ym1pdCcpIH19XHJcbiAgICAgIDwvZHMtYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { Component, CUSTOM_ELEMENTS_SCHEMA, forwardRef, Inject, Input, } from '@angular/core';
|
|
1
|
+
import { Component, CUSTOM_ELEMENTS_SCHEMA, DestroyRef, forwardRef, inject, Inject, Input, } from '@angular/core';
|
|
2
2
|
import { TextareaComponent } from '../textarea/textarea.component';
|
|
3
3
|
import { MAT_DIALOG_DATA, MatDialogActions, MatDialogClose, MatDialogContent, MatDialogModule, } from '@angular/material/dialog';
|
|
4
4
|
import { NgIf } from '@angular/common';
|
|
5
5
|
import { ControlValueAccessorDirective } from '../control-value-accessor.directive';
|
|
6
6
|
import { FormControl, NG_VALUE_ACCESSOR, ReactiveFormsModule, Validators, } from '@angular/forms';
|
|
7
7
|
import { DocsUploaderComponent } from '../doc-uploader/docs-uploader.component';
|
|
8
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "../../../../services";
|
|
10
11
|
import * as i2 from "ngx-toastr";
|
|
@@ -21,6 +22,7 @@ export class AttachmentSectionDataComponent extends ControlValueAccessorDirectiv
|
|
|
21
22
|
hasColumnBreak;
|
|
22
23
|
section;
|
|
23
24
|
formGroup;
|
|
25
|
+
destroyRef = inject(DestroyRef);
|
|
24
26
|
constructor(injector, i18n, toasterService, coreService, sanitizer, fb, dialogRef, dialogData) {
|
|
25
27
|
super(injector, i18n, toasterService, coreService, sanitizer, fb);
|
|
26
28
|
this.dialogRef = dialogRef;
|
|
@@ -71,7 +73,7 @@ export class AttachmentSectionDataComponent extends ControlValueAccessorDirectiv
|
|
|
71
73
|
fileContents: this.formGroup.controls['file'].value.fileContents,
|
|
72
74
|
};
|
|
73
75
|
this.uploading = true;
|
|
74
|
-
this.coreService.getAttachments(data).subscribe((Response) => {
|
|
76
|
+
this.coreService.getAttachments(data).pipe(takeUntilDestroyed(this.destroyRef)).subscribe((Response) => {
|
|
75
77
|
this.uploading = false;
|
|
76
78
|
if (Response) {
|
|
77
79
|
const newObj = {
|
|
@@ -121,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
121
123
|
}], section: [{
|
|
122
124
|
type: Input
|
|
123
125
|
}] } });
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWF0dGFjaG1lbnQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMvZm9ybS1maWVsZC9hZGQtYXR0YWNobWVudC1zZWN0aW9uL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzL2Zvcm0tZmllbGQvYWRkLWF0dGFjaG1lbnQtc2VjdGlvbi9hZGQtYXR0YWNobWVudC1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLFVBQVUsRUFDVixNQUFNLEVBRU4sS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFDTCxlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLGNBQWMsRUFDZCxnQkFBZ0IsRUFDaEIsZUFBZSxHQUVoQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUVwRixPQUFPLEVBRUwsV0FBVyxFQUVYLGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsVUFBVSxHQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7QUE2QmhGLE1BQU0sT0FBTyw4QkFFWCxTQUFRLDZCQUFtQztJQWdCbEM7SUFDeUI7SUFoQmxDLFNBQVMsR0FBUSxFQUFFLENBQUM7SUFDcEIsWUFBWSxHQUFRLEVBQUUsQ0FBQztJQUN2QixTQUFTLENBQVU7SUFDbkIsUUFBUSxDQUFVO0lBQ1QsY0FBYyxDQUFVO0lBQ3hCLE9BQU8sQ0FBVTtJQUMxQixTQUFTLENBQVk7SUFFckIsWUFDRSxRQUFrQixFQUNsQixJQUFxQixFQUNyQixjQUE2QixFQUM3QixXQUF3QixFQUN4QixTQUF1QixFQUN2QixFQUFlLEVBQ1IsU0FBNEIsRUFDSCxVQUFlO1FBRS9DLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSDNELGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBQ0gsZUFBVSxHQUFWLFVBQVUsQ0FBSztJQUdqRCxDQUFDO0lBRVEsUUFBUTtRQUNmLG1CQUFtQjtRQUNuQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLGtCQUFrQixFQUFFLENBQUM7WUFDeEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDO1lBQ3BELElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FDbkMsQ0FBQztZQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FDN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQ25ELENBQUM7WUFDRixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQzFDLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUNoRCxDQUFDO1lBQ0YsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7SUFDRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUM3QixJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDaEQsV0FBVyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFBLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbEcsUUFBUSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFBLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDOUYsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUFTLEVBQUUsU0FBaUI7UUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDbkMsQ0FBQztJQUVELHlCQUF5QixDQUFDLElBQVM7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRztZQUNmLFlBQVksRUFBRSxJQUFJLEVBQUUsWUFBWTtZQUNoQyxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVE7WUFDeEIsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRO1lBQ3hCLGVBQWUsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLGVBQWU7WUFDaEQsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxpQkFBaUI7WUFDcEQsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsaUJBQWlCO1NBQ2hELENBQUM7SUFDSixDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sSUFBSSxHQUFHO1lBQ1gsZUFBZSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEtBQUs7WUFDN0QsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSztZQUM1RCxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSztZQUN2RCxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVE7WUFDeEQsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQ3hELFlBQVksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWTtTQUNqRSxDQUFDO1FBQ0YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBYSxFQUFFLEVBQUU7WUFDaEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDYixNQUFNLE1BQU0sR0FBRztvQkFDYixlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSztvQkFDN0QsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSztvQkFDNUQsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUs7b0JBQ3ZELFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUTtvQkFDeEQsWUFBWSxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsWUFBWTtvQkFDOUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRO2lCQUN6RCxDQUFDO2dCQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQy9CLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBN0ZVLDhCQUE4QixvTkFtQi9CLGVBQWU7MkZBbkJkLDhCQUE4QiwySUFSOUI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDhCQUE4QixDQUFDO2dCQUM3RCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsaURDdkRILG9oR0F3REEsdU9EaEJJLGlCQUFpQixzR0FDakIsZ0JBQWdCLHlHQUNoQixxQkFBcUIscW1CQUNyQixnQkFBZ0IsMkhBRWhCLGVBQWUsb1hBQ2YsbUJBQW1COzsyRkFXViw4QkFBOEI7a0JBeEIxQyxTQUFTOytCQUNFLDRCQUE0QixjQUcxQixJQUFJLFdBQ1AsQ0FBQyxzQkFBc0IsQ0FBQyxXQUN4Qjt3QkFDUCxpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixnQkFBZ0I7d0JBQ2hCLElBQUk7d0JBQ0osZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGNBQWM7cUJBQ2YsYUFDVTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzs0QkFDN0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OzBCQXFCRSxNQUFNOzJCQUFDLGVBQWU7eUNBWmhCLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcclxuICBmb3J3YXJkUmVmLFxyXG4gIEluamVjdCxcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuLi90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIE1BVF9ESUFMT0dfREFUQSxcclxuICBNYXREaWFsb2dBY3Rpb25zLFxyXG4gIE1hdERpYWxvZ0Nsb3NlLFxyXG4gIE1hdERpYWxvZ0NvbnRlbnQsXHJcbiAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gIE1hdERpYWxvZ1JlZixcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3JEaXJlY3RpdmUgfSBmcm9tICcuLi9jb250cm9sLXZhbHVlLWFjY2Vzc29yLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtcclxuICBGb3JtQnVpbGRlcixcclxuICBGb3JtQ29udHJvbCxcclxuICBGb3JtR3JvdXAsXHJcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRG9jc1VwbG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vZG9jLXVwbG9hZGVyL2RvY3MtdXBsb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHtDb3JlSTE4blNlcnZpY2UsIENvcmVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2VydmljZXNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWFkZC1hdHRhY2htZW50LXNlY3Rpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtYXR0YWNobWVudC1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hZGQtYXR0YWNobWVudC1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgVGV4dGFyZWFDb21wb25lbnQsXHJcbiAgICBNYXREaWFsb2dDb250ZW50LFxyXG4gICAgRG9jc1VwbG9hZGVyQ29tcG9uZW50LFxyXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcclxuICAgIE5nSWYsXHJcbiAgICBNYXREaWFsb2dNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nQ2xvc2UsXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEF0dGFjaG1lbnRTZWN0aW9uRGF0YUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXR0YWNobWVudFNlY3Rpb25EYXRhQ29tcG9uZW50PFxyXG4gIFR5cGVcclxuPiBleHRlbmRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlPFR5cGU+IHtcclxuICBwb3B1cERhdGE6IGFueSA9IHt9O1xyXG4gIHBvcHVwRGF0YU9yZzogYW55ID0ge307XHJcbiAgdXBsb2FkaW5nOiBib29sZWFuO1xyXG4gIGVkaXRNb2RlOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGhhc0NvbHVtbkJyZWFrOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNlY3Rpb246IFNlY3Rpb247XHJcbiAgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgaTE4bjogQ29yZUkxOG5TZXJ2aWNlLFxyXG4gICAgdG9hc3RlclNlcnZpY2U6IFRvYXN0clNlcnZpY2UsXHJcbiAgICBjb3JlU2VydmljZTogQ29yZVNlcnZpY2UsXHJcbiAgICBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcclxuICAgIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxhbnk+LFxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkaWFsb2dEYXRhOiBhbnlcclxuICApIHtcclxuICAgIHN1cGVyKGluamVjdG9yLCBpMThuLCB0b2FzdGVyU2VydmljZSwgY29yZVNlcnZpY2UsIHNhbml0aXplciwgZmIpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKSB7XHJcbiAgICAvLyBzdXBlci5uZ09uSW5pdCgpXHJcbiAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcclxuICAgIGlmICh0aGlzLmRpYWxvZ0RhdGE/LmF0dGFjaG1lbnRMaXN0RGF0YSkge1xyXG4gICAgICB0aGlzLnBvcHVwRGF0YSA9IHRoaXMuZGlhbG9nRGF0YS5hdHRhY2htZW50TGlzdERhdGE7XHJcbiAgICAgIHRoaXMucG9wdXBEYXRhT3JnID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5wb3B1cERhdGEpO1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZmlsZSddLnNldFZhbHVlKFxyXG4gICAgICAgIHRoaXMuZGlhbG9nRGF0YS5hdHRhY2htZW50TGlzdERhdGFcclxuICAgICAgKTtcclxuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10uc2V0VmFsdWUoXHJcbiAgICAgICAgdGhpcy5kaWFsb2dEYXRhLmF0dGFjaG1lbnRMaXN0RGF0YS5maWxlRGVzY3JpcHRpb25cclxuICAgICAgKTtcclxuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2NvbW1lbnRzJ10uc2V0VmFsdWUoXHJcbiAgICAgICAgdGhpcy5kaWFsb2dEYXRhLmF0dGFjaG1lbnRMaXN0RGF0YS5maWxlQ29tbWVudHNcclxuICAgICAgKTtcclxuICAgICAgdGhpcy5lZGl0TW9kZSA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGNyZWF0ZUZvcm0oKSB7XHJcbiAgICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICBmaWxlOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcbiAgICAgIGRlc2NyaXB0aW9uOiBuZXcgRm9ybUNvbnRyb2wobnVsbCx0aGlzLmRpYWxvZ0RhdGEuZGVzY3JpcHRpb25SZXF1aXJlZCA/IFZhbGlkYXRvcnMucmVxdWlyZWQ6IG51bGwpLFxyXG4gICAgICBjb21tZW50czogbmV3IEZvcm1Db250cm9sKG51bGwsIHRoaXMuZGlhbG9nRGF0YS5jb21tZW50c1JlcXVpcmVkID8gVmFsaWRhdG9ycy5yZXF1aXJlZDogbnVsbCksXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNsb3NlKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5wb3B1cERhdGFPcmcpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlRW1pdFZhbHVlKGRhdGE6IGFueSwgZmllbGROYW1lOiBzdHJpbmcpIHtcclxuICAgIHRoaXMucG9wdXBEYXRhW2ZpZWxkTmFtZV0gPSBkYXRhO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQXR0YWNobWVudEVtaXRWYWx1ZShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMucG9wdXBEYXRhID0ge1xyXG4gICAgICBmaWxlQ29udGVudHM6IGRhdGE/LmZpbGVDb250ZW50cyxcclxuICAgICAgZmlsZU5hbWU6IGRhdGE/LmZpbGVOYW1lLFxyXG4gICAgICBtaW1lVHlwZTogZGF0YT8ubWltZVR5cGUsXHJcbiAgICAgIGZpbGVEZXNjcmlwdGlvbjogdGhpcy5wb3B1cERhdGE/LmZpbGVEZXNjcmlwdGlvbixcclxuICAgICAgYXR0YWNobWVudGNvbW1lbnQ6IHRoaXMucG9wdXBEYXRhPy5hdHRhY2htZW50Y29tbWVudCxcclxuICAgICAgZmlsZUNvbW1lbnRzOiB0aGlzLnBvcHVwRGF0YT8uYXR0YWNobWVudGNvbW1lbnQsXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgYWRkQXR0YWNobWVudHMoKSB7XHJcbiAgICBjb25zdCBkYXRhID0ge1xyXG4gICAgICBmaWxlRGVzY3JpcHRpb246IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydkZXNjcmlwdGlvbiddLnZhbHVlLFxyXG4gICAgICBhdHRhY2htZW50Y29tbWVudDogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2NvbW1lbnRzJ10udmFsdWUsXHJcbiAgICAgIGZpbGVDb21tZW50czogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2NvbW1lbnRzJ10udmFsdWUsXHJcbiAgICAgIGZpbGVOYW1lOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZmlsZSddLnZhbHVlLmZpbGVOYW1lLFxyXG4gICAgICBtaW1lVHlwZTogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2ZpbGUnXS52YWx1ZS5taW1lVHlwZSxcclxuICAgICAgZmlsZUNvbnRlbnRzOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZmlsZSddLnZhbHVlLmZpbGVDb250ZW50cyxcclxuICAgIH07XHJcbiAgICB0aGlzLnVwbG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLmNvcmVTZXJ2aWNlLmdldEF0dGFjaG1lbnRzKGRhdGEpLnN1YnNjcmliZSgoUmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLnVwbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICBpZiAoUmVzcG9uc2UpIHtcclxuICAgICAgICBjb25zdCBuZXdPYmogPSB7XHJcbiAgICAgICAgICBmaWxlRGVzY3JpcHRpb246IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydkZXNjcmlwdGlvbiddLnZhbHVlLFxyXG4gICAgICAgICAgYXR0YWNobWVudGNvbW1lbnQ6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydjb21tZW50cyddLnZhbHVlLFxyXG4gICAgICAgICAgZmlsZUNvbW1lbnRzOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS52YWx1ZSxcclxuICAgICAgICAgIGZpbGVOYW1lOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZmlsZSddLnZhbHVlLmZpbGVOYW1lLFxyXG4gICAgICAgICAgYXR0YWNobWVudElkOiBSZXNwb25zZS5hdHRhY2htZW50LmF0dGFjaG1lbnRJZCxcclxuICAgICAgICAgIG1pbWVUeXBlOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZmlsZSddLnZhbHVlLm1pbWVUeXBlLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UobmV3T2JqKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJwb3B1cC1jb250YWluZXJcIj5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtZW5kXCIgbWF0LWRpYWxvZy10aXRsZT5cclxuICAgIDxoMyBjbGFzcz1cIm1iLTAgZm9udC0xNiBmdy1tZWRpdW1cIj57e2kxOG4udHJhbnNsYXRlKCdhZGRBdHRhY2htZW50cycpfX08L2gzPlxyXG4gICAgPGRzLWJ1dHRvbiAgaWNvbiBtYXREaWFsb2dDbG9zZT5cclxuICAgICAgPGRzLWljb24gaWNvbj1cImNsb3NlXCIgY2xhc3M9XCJmcy0yMCBmYy1ibGFja1wiPjwvZHMtaWNvbj5cclxuICAgIDwvZHMtYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxtYXQtZGlhbG9nLWNvbnRlbnQ+XHJcbiAgICA8ZGl2IGNsYXNzPVwicHgtbWQtNCBtdC0zXCI+XHJcbiAgICAgIDwhLS0gYWRkIFtjYWxsQXBpXT1cInRydWVcIiAgaW5wdXQgbW9iaWxlIGlzc3VlIG5vdCBhYmxlIHRvIGRvd25sb2FkIGl0IGJ5IGJhc2UgNjQgLS0+XHJcbjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XHJcbiAgPGFwcC1maWxlLXVwbG9hZGVyIGNsYXNzPVwic2VjdGlvbi1pdGVtIGZ1bGxcIiBbZmllbGRdPVwicG9wdXBEYXRhXCIgbmFtZT1cImZpbGVcIiBbYXR0YWNobWVudHNdPVwiZGlhbG9nRGF0YT8uYXR0YWNobWVudHNcIlxyXG4gIFtsYWJlbFRleHRSZWFkTW9kZV09XCJpMThuLnRyYW5zbGF0ZSgnQXR0YWNobWVudCcpXCIgW2xhYmVsVGV4dFdyaXRlTW9kZV09XCJpMThuLnRyYW5zbGF0ZSgnQXR0YWNobWVudCcpXCJcclxuICBbaGFzQ29sdW1uQnJlYWtdPVwiZmFsc2VcIiBbbGFiZWxdPVwiaTE4bi50cmFuc2xhdGUoJ0F0dGFjaG1lbnQnKVwiIFtyZXF1aXJlZF09XCJ0cnVlXCIgW211bHRpcGxlXT1cImZhbHNlXCIgW2FsbG93ZWRFeHRlbnNpb25zXT1cImRpYWxvZ0RhdGE/LmRhdGFcIlxyXG4gIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIiBbc2hvd0FjdGlvbnNdPVwiZmFsc2VcIlxyXG4gIGZvcm1Db250cm9sTmFtZT1cImZpbGVcIlxyXG4gID5cclxuPC9hcHAtZmlsZS11cGxvYWRlcj5cclxuXHJcbjxhcHAtdGV4dGFyZWEgY2xhc3M9XCJzZWN0aW9uLWl0ZW0gZC1ibG9jayBtdC00IG1iLTRcIiBbc2VjdGlvbl09XCJzZWN0aW9uXCIgW2ZpZWxkXT1cInBvcHVwRGF0YT8uZmlsZURlc2NyaXB0aW9uXCIgbmFtZT1cImZpbGVEZXNjcmlwdGlvblwiXHJcbiAgW2xhYmVsVGV4dFJlYWRNb2RlXT1cImkxOG4udHJhbnNsYXRlKCdkZXNjcmlwdGlvbicpXCIgW2xhYmVsVGV4dFdyaXRlTW9kZV09XCJpMThuLnRyYW5zbGF0ZSgnZGVzY3JpcHRpb24nKVwiXHJcbiAgW2hhc0NvbHVtbkJyZWFrXT1cImZhbHNlXCIgKGVtaXRlZFZhbHVlKT1cImhhbmRsZUVtaXRWYWx1ZSgkZXZlbnQsJ2ZpbGVEZXNjcmlwdGlvbicpXCJcclxuICBbbGFiZWxdPVwiaTE4bi50cmFuc2xhdGUoJ2Rlc2NyaXB0aW9uJylcIiBbcmVxdWlyZWRdPVwiZGlhbG9nRGF0YT8uaXNSZXF1aXJlZFwiIFttaW5MZW5ndGhdPScxJyBbbWF4TGVuZ3RoXT0nNTAwJ1xyXG4gIFtpc1JlYWRPbmx5XT1cInNlY3Rpb24/LmhlYWRlcj8ucmVhZE9ubHlcIiBbZXJyb3JNZXNzYWdlXT1cImkxOG4udHJhbnNsYXRlKCdsZW5naHRNaW4xTWF4NTAwJylcIlxyXG4gIGZvcm1Db250cm9sTmFtZT1cImRlc2NyaXB0aW9uXCIgPlxyXG4gIFxyXG48L2FwcC10ZXh0YXJlYT5cclxuXHJcbjxhcHAtdGV4dGFyZWEgY2xhc3M9XCJzZWN0aW9uLWl0ZW1cIiBbc2VjdGlvbl09XCJzZWN0aW9uXCIgW2ZpZWxkXT1cInBvcHVwRGF0YT8uYXR0YWNobWVudGNvbW1lbnRcIiBuYW1lPVwiYXR0YWNobWVudGNvbW1lbnRcIlxyXG4gIFtsYWJlbFRleHRSZWFkTW9kZV09XCJpMThuLnRyYW5zbGF0ZSgnY29tbWVudHMnKVwiIFtsYWJlbFRleHRXcml0ZU1vZGVdPVwiaTE4bi50cmFuc2xhdGUoJ2NvbW1lbnRzJylcIlxyXG4gIFtoYXNDb2x1bW5CcmVha109XCJmYWxzZVwiIChlbWl0ZWRWYWx1ZSk9XCJoYW5kbGVFbWl0VmFsdWUoJGV2ZW50LCdhdHRhY2htZW50Y29tbWVudCcpXCIgW2xhYmVsXT1cImkxOG4udHJhbnNsYXRlKCdjb21tZW50cycpXCJcclxuICBbcmVxdWlyZWRdPVwiZmFsc2VcIiBbbWluTGVuZ3RoXT0nMScgW21heExlbmd0aF09JzUwMCcgW2lzUmVhZE9ubHldPVwic2VjdGlvbj8uaGVhZGVyPy5yZWFkT25seVwiXHJcbiAgW2Vycm9yTWVzc2FnZV09XCJpMThuLnRyYW5zbGF0ZSgnbGVuZ2h0TWluMU1heDUwMCcpXCJcclxuICBmb3JtQ29udHJvbE5hbWU9XCJjb21tZW50c1wiPlxyXG48L2FwcC10ZXh0YXJlYT5cclxuPC9mb3JtPlxyXG4gICBcclxuXHJcbiAgICA8L2Rpdj5cclxuICA8L21hdC1kaWFsb2ctY29udGVudD5cclxuICA8bWF0LWRpYWxvZy1hY3Rpb25zIGNsYXNzPVwiZGVmYXVsdC1mb290ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtM1wiPlxyXG4gICAgPGRzLWJ1dHRvbiAgc2hhcGU9XCJvdXRsaW5lXCIgIG1hdERpYWxvZ0Nsb3NlIFtkaXNhYmxlZF09XCIodXBsb2FkaW5nKVwiIGNvbG9yPVwicmVkXCI+e3tpMThuLnRyYW5zbGF0ZSgnY2FuY2VsJyl9fVxyXG4gICAgPC9kcy1idXR0b24+XHJcbiAgICA8ZHMtYnV0dG9uIChjbGljayk9XCJhZGRBdHRhY2htZW50cygpXCIgW2xvYWRpbmddPVwidXBsb2FkaW5nXCJcclxuICAgICAgW2Rpc2FibGVkXT1cIighKGZvcm1Hcm91cD8udmFsdWU/LmZpbGU/LmZpbGVDb250ZW50cyB8fCBmb3JtR3JvdXA/LnZhbHVlPy5maWxlPy5hdHRhY2htZW50SWQgKSB8fCggZGlhbG9nRGF0YT8uaXNSZXF1aXJlZCAmJiAhZm9ybUdyb3VwPy52YWx1ZT8uZGVzY3JpcHRpb24gKXx8IHVwbG9hZGluZyB8fCAhZm9ybUdyb3VwLnZhbGlkKVwiPlxyXG4gICAgICBAaWYoIWVkaXRNb2RlKXtcclxuICAgICAgPHNwYW4+e3tpMThuLnRyYW5zbGF0ZSgnYWRkJyl9fTwvc3Bhbj5cclxuICAgICAgfVxyXG4gICAgICBAaWYoZWRpdE1vZGUpe1xyXG4gICAgICA8c3Bhbj57e2kxOG4udHJhbnNsYXRlKCdlZGl0Jyl9fTwvc3Bhbj5cclxuICAgICAgfVxyXG5cclxuICAgIDwvZHMtYnV0dG9uPlxyXG4gIDwvbWF0LWRpYWxvZy1hY3Rpb25zPlxyXG5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWF0dGFjaG1lbnQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9icG0tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkLWNvbXBvbmVudHMvZm9ybS1maWVsZC9hZGQtYXR0YWNobWVudC1zZWN0aW9uL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnBtLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZC1jb21wb25lbnRzL2Zvcm0tZmllbGQvYWRkLWF0dGFjaG1lbnQtc2VjdGlvbi9hZGQtYXR0YWNobWVudC1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLE1BQU0sRUFFTixLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUNMLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixlQUFlLEdBRWhCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXBGLE9BQU8sRUFFTCxXQUFXLEVBRVgsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUloRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFB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bUI7d0JBQ25CLGNBQWM7cUJBQ2YsYUFDVTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwrQkFBK0IsQ0FBQzs0QkFDN0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OzBCQXVCRSxNQUFNOzJCQUFDLGVBQWU7eUNBZGhCLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcclxuICBEZXN0cm95UmVmLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgaW5qZWN0LFxyXG4gIEluamVjdCxcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuLi90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIE1BVF9ESUFMT0dfREFUQSxcclxuICBNYXREaWFsb2dBY3Rpb25zLFxyXG4gIE1hdERpYWxvZ0Nsb3NlLFxyXG4gIE1hdERpYWxvZ0NvbnRlbnQsXHJcbiAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gIE1hdERpYWxvZ1JlZixcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3JEaXJlY3RpdmUgfSBmcm9tICcuLi9jb250cm9sLXZhbHVlLWFjY2Vzc29yLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHtcclxuICBGb3JtQnVpbGRlcixcclxuICBGb3JtQ29udHJvbCxcclxuICBGb3JtR3JvdXAsXHJcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRG9jc1VwbG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vZG9jLXVwbG9hZGVyL2RvY3MtdXBsb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHtDb3JlSTE4blNlcnZpY2UsIENvcmVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2VydmljZXNcIjtcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtYWRkLWF0dGFjaG1lbnQtc2VjdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2FkZC1hdHRhY2htZW50LXNlY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBUZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXHJcbiAgICBEb2NzVXBsb2FkZXJDb21wb25lbnQsXHJcbiAgICBNYXREaWFsb2dBY3Rpb25zLFxyXG4gICAgTmdJZixcclxuICAgIE1hdERpYWxvZ01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBNYXREaWFsb2dDbG9zZSxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQXR0YWNobWVudFNlY3Rpb25EYXRhQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdHRhY2htZW50U2VjdGlvbkRhdGFDb21wb25lbnQ8XHJcbiAgVHlwZVxyXG4+IGV4dGVuZHMgQ29udHJvbFZhbHVlQWNjZXNzb3JEaXJlY3RpdmU8VHlwZT4ge1xyXG4gIHBvcHVwRGF0YTogYW55ID0ge307XHJcbiAgcG9wdXBEYXRhT3JnOiBhbnkgPSB7fTtcclxuICB1cGxvYWRpbmc6IGJvb2xlYW47XHJcbiAgZWRpdE1vZGU6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaGFzQ29sdW1uQnJlYWs6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgc2VjdGlvbjogU2VjdGlvbjtcclxuICBmb3JtR3JvdXA6IEZvcm1Hcm91cDtcclxuICBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBpMThuOiBDb3JlSTE4blNlcnZpY2UsXHJcbiAgICB0b2FzdGVyU2VydmljZTogVG9hc3RyU2VydmljZSxcclxuICAgIGNvcmVTZXJ2aWNlOiBDb3JlU2VydmljZSxcclxuICAgIHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxyXG4gICAgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRpYWxvZ0RhdGE6IGFueVxyXG4gICkge1xyXG4gICAgc3VwZXIoaW5qZWN0b3IsIGkxOG4sIHRvYXN0ZXJTZXJ2aWNlLCBjb3JlU2VydmljZSwgc2FuaXRpemVyLCBmYik7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpIHtcclxuICAgIC8vIHN1cGVyLm5nT25Jbml0KClcclxuICAgIHRoaXMuY3JlYXRlRm9ybSgpO1xyXG4gICAgaWYgKHRoaXMuZGlhbG9nRGF0YT8uYXR0YWNobWVudExpc3REYXRhKSB7XHJcbiAgICAgIHRoaXMucG9wdXBEYXRhID0gdGhpcy5kaWFsb2dEYXRhLmF0dGFjaG1lbnRMaXN0RGF0YTtcclxuICAgICAgdGhpcy5wb3B1cERhdGFPcmcgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLnBvcHVwRGF0YSk7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10uc2V0VmFsdWUoXHJcbiAgICAgICAgdGhpcy5kaWFsb2dEYXRhLmF0dGFjaG1lbnRMaXN0RGF0YVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZGVzY3JpcHRpb24nXS5zZXRWYWx1ZShcclxuICAgICAgICB0aGlzLmRpYWxvZ0RhdGEuYXR0YWNobWVudExpc3REYXRhLmZpbGVEZXNjcmlwdGlvblxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS5zZXRWYWx1ZShcclxuICAgICAgICB0aGlzLmRpYWxvZ0RhdGEuYXR0YWNobWVudExpc3REYXRhLmZpbGVDb21tZW50c1xyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmVkaXRNb2RlID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgY3JlYXRlRm9ybSgpIHtcclxuICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIGZpbGU6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbChudWxsLHRoaXMuZGlhbG9nRGF0YS5kZXNjcmlwdGlvblJlcXVpcmVkID8gVmFsaWRhdG9ycy5yZXF1aXJlZDogbnVsbCksXHJcbiAgICAgIGNvbW1lbnRzOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgdGhpcy5kaWFsb2dEYXRhLmNvbW1lbnRzUmVxdWlyZWQgPyBWYWxpZGF0b3JzLnJlcXVpcmVkOiBudWxsKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLnBvcHVwRGF0YU9yZyk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFbWl0VmFsdWUoZGF0YTogYW55LCBmaWVsZE5hbWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5wb3B1cERhdGFbZmllbGROYW1lXSA9IGRhdGE7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVBdHRhY2htZW50RW1pdFZhbHVlKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5wb3B1cERhdGEgPSB7XHJcbiAgICAgIGZpbGVDb250ZW50czogZGF0YT8uZmlsZUNvbnRlbnRzLFxyXG4gICAgICBmaWxlTmFtZTogZGF0YT8uZmlsZU5hbWUsXHJcbiAgICAgIG1pbWVUeXBlOiBkYXRhPy5taW1lVHlwZSxcclxuICAgICAgZmlsZURlc2NyaXB0aW9uOiB0aGlzLnBvcHVwRGF0YT8uZmlsZURlc2NyaXB0aW9uLFxyXG4gICAgICBhdHRhY2htZW50Y29tbWVudDogdGhpcy5wb3B1cERhdGE/LmF0dGFjaG1lbnRjb21tZW50LFxyXG4gICAgICBmaWxlQ29tbWVudHM6IHRoaXMucG9wdXBEYXRhPy5hdHRhY2htZW50Y29tbWVudCxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBhZGRBdHRhY2htZW50cygpIHtcclxuICAgIGNvbnN0IGRhdGEgPSB7XHJcbiAgICAgIGZpbGVEZXNjcmlwdGlvbjogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10udmFsdWUsXHJcbiAgICAgIGF0dGFjaG1lbnRjb21tZW50OiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS52YWx1ZSxcclxuICAgICAgZmlsZUNvbW1lbnRzOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snY29tbWVudHMnXS52YWx1ZSxcclxuICAgICAgZmlsZU5hbWU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZU5hbWUsXHJcbiAgICAgIG1pbWVUeXBlOiB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1snZmlsZSddLnZhbHVlLm1pbWVUeXBlLFxyXG4gICAgICBmaWxlQ29udGVudHM6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZUNvbnRlbnRzLFxyXG4gICAgfTtcclxuICAgIHRoaXMudXBsb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuY29yZVNlcnZpY2UuZ2V0QXR0YWNobWVudHMoZGF0YSkucGlwZShcclxuICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcclxuICAgICkuc3Vic2NyaWJlKChSZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMudXBsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIGlmIChSZXNwb25zZSkge1xyXG4gICAgICAgIGNvbnN0IG5ld09iaiA9IHtcclxuICAgICAgICAgIGZpbGVEZXNjcmlwdGlvbjogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10udmFsdWUsXHJcbiAgICAgICAgICBhdHRhY2htZW50Y29tbWVudDogdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ2NvbW1lbnRzJ10udmFsdWUsXHJcbiAgICAgICAgICBmaWxlQ29tbWVudHM6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydjb21tZW50cyddLnZhbHVlLFxyXG4gICAgICAgICAgZmlsZU5hbWU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUuZmlsZU5hbWUsXHJcbiAgICAgICAgICBhdHRhY2htZW50SWQ6IFJlc3BvbnNlLmF0dGFjaG1lbnQuYXR0YWNobWVudElkLFxyXG4gICAgICAgICAgbWltZVR5cGU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzWydmaWxlJ10udmFsdWUubWltZVR5cGUsXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShuZXdPYmopO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInBvcHVwLWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1lbmRcIiBtYXQtZGlhbG9nLXRpdGxlPlxyXG4gICAgPGgzIGNsYXNzPVwibWItMCBmb250LTE2IGZ3LW1lZGl1bVwiPnt7aTE4bi50cmFuc2xhdGUoJ2FkZEF0dGFjaG1lbnRzJyl9fTwvaDM+XHJcbiAgICA8ZHMtYnV0dG9uICBpY29uIG1hdERpYWxvZ0Nsb3NlPlxyXG4gICAgICA8ZHMtaWNvbiBpY29uPVwiY2xvc2VcIiBjbGFzcz1cImZzLTIwIGZjLWJsYWNrXCI+PC9kcy1pY29uPlxyXG4gICAgPC9kcy1idXR0b24+XHJcbiAgPC9kaXY+XHJcbiAgPG1hdC1kaWFsb2ctY29udGVudD5cclxuICAgIDxkaXYgY2xhc3M9XCJweC1tZC00IG10LTNcIj5cclxuICAgICAgPCEtLSBhZGQgW2NhbGxBcGldPVwidHJ1ZVwiICBpbnB1dCBtb2JpbGUgaXNzdWUgbm90IGFibGUgdG8gZG93bmxvYWQgaXQgYnkgYmFzZSA2NCAtLT5cclxuPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cclxuICA8YXBwLWZpbGUtdXBsb2FkZXIgY2xhc3M9XCJzZWN0aW9uLWl0ZW0gZnVsbFwiIFtmaWVsZF09XCJwb3B1cERhdGFcIiBuYW1lPVwiZmlsZVwiIFthdHRhY2htZW50c109XCJkaWFsb2dEYXRhPy5hdHRhY2htZW50c1wiXHJcbiAgW2xhYmVsVGV4dFJlYWRNb2RlXT1cImkxOG4udHJhbnNsYXRlKCdBdHRhY2htZW50JylcIiBbbGFiZWxUZXh0V3JpdGVNb2RlXT1cImkxOG4udHJhbnNsYXRlKCdBdHRhY2htZW50JylcIlxyXG4gIFtoYXNDb2x1bW5CcmVha109XCJmYWxzZVwiIFtsYWJlbF09XCJpMThuLnRyYW5zbGF0ZSgnQXR0YWNobWVudCcpXCIgW3JlcXVpcmVkXT1cInRydWVcIiBbbXVsdGlwbGVdPVwiZmFsc2VcIiBbYWxsb3dlZEV4dGVuc2lvbnNdPVwiZGlhbG9nRGF0YT8uZGF0YVwiXHJcbiAgW2lzUmVhZE9ubHldPVwic2VjdGlvbj8uaGVhZGVyPy5yZWFkT25seVwiIFtzaG93QWN0aW9uc109XCJmYWxzZVwiXHJcbiAgZm9ybUNvbnRyb2xOYW1lPVwiZmlsZVwiXHJcbiAgPlxyXG48L2FwcC1maWxlLXVwbG9hZGVyPlxyXG5cclxuPGFwcC10ZXh0YXJlYSBjbGFzcz1cInNlY3Rpb24taXRlbSBkLWJsb2NrIG10LTQgbWItNFwiIFtzZWN0aW9uXT1cInNlY3Rpb25cIiBbZmllbGRdPVwicG9wdXBEYXRhPy5maWxlRGVzY3JpcHRpb25cIiBuYW1lPVwiZmlsZURlc2NyaXB0aW9uXCJcclxuICBbbGFiZWxUZXh0UmVhZE1vZGVdPVwiaTE4bi50cmFuc2xhdGUoJ2Rlc2NyaXB0aW9uJylcIiBbbGFiZWxUZXh0V3JpdGVNb2RlXT1cImkxOG4udHJhbnNsYXRlKCdkZXNjcmlwdGlvbicpXCJcclxuICBbaGFzQ29sdW1uQnJlYWtdPVwiZmFsc2VcIiAoZW1pdGVkVmFsdWUpPVwiaGFuZGxlRW1pdFZhbHVlKCRldmVudCwnZmlsZURlc2NyaXB0aW9uJylcIlxyXG4gIFtsYWJlbF09XCJpMThuLnRyYW5zbGF0ZSgnZGVzY3JpcHRpb24nKVwiIFtyZXF1aXJlZF09XCJkaWFsb2dEYXRhPy5pc1JlcXVpcmVkXCIgW21pbkxlbmd0aF09JzEnIFttYXhMZW5ndGhdPSc1MDAnXHJcbiAgW2lzUmVhZE9ubHldPVwic2VjdGlvbj8uaGVhZGVyPy5yZWFkT25seVwiIFtlcnJvck1lc3NhZ2VdPVwiaTE4bi50cmFuc2xhdGUoJ2xlbmdodE1pbjFNYXg1MDAnKVwiXHJcbiAgZm9ybUNvbnRyb2xOYW1lPVwiZGVzY3JpcHRpb25cIiA+XHJcbiAgXHJcbjwvYXBwLXRleHRhcmVhPlxyXG5cclxuPGFwcC10ZXh0YXJlYSBjbGFzcz1cInNlY3Rpb24taXRlbVwiIFtzZWN0aW9uXT1cInNlY3Rpb25cIiBbZmllbGRdPVwicG9wdXBEYXRhPy5hdHRhY2htZW50Y29tbWVudFwiIG5hbWU9XCJhdHRhY2htZW50Y29tbWVudFwiXHJcbiAgW2xhYmVsVGV4dFJlYWRNb2RlXT1cImkxOG4udHJhbnNsYXRlKCdjb21tZW50cycpXCIgW2xhYmVsVGV4dFdyaXRlTW9kZV09XCJpMThuLnRyYW5zbGF0ZSgnY29tbWVudHMnKVwiXHJcbiAgW2hhc0NvbHVtbkJyZWFrXT1cImZhbHNlXCIgKGVtaXRlZFZhbHVlKT1cImhhbmRsZUVtaXRWYWx1ZSgkZXZlbnQsJ2F0dGFjaG1lbnRjb21tZW50JylcIiBbbGFiZWxdPVwiaTE4bi50cmFuc2xhdGUoJ2NvbW1lbnRzJylcIlxyXG4gIFtyZXF1aXJlZF09XCJmYWxzZVwiIFttaW5MZW5ndGhdPScxJyBbbWF4TGVuZ3RoXT0nNTAwJyBbaXNSZWFkT25seV09XCJzZWN0aW9uPy5oZWFkZXI/LnJlYWRPbmx5XCJcclxuICBbZXJyb3JNZXNzYWdlXT1cImkxOG4udHJhbnNsYXRlKCdsZW5naHRNaW4xTWF4NTAwJylcIlxyXG4gIGZvcm1Db250cm9sTmFtZT1cImNvbW1lbnRzXCI+XHJcbjwvYXBwLXRleHRhcmVhPlxyXG48L2Zvcm0+XHJcbiAgIFxyXG5cclxuICAgIDwvZGl2PlxyXG4gIDwvbWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxtYXQtZGlhbG9nLWFjdGlvbnMgY2xhc3M9XCJkZWZhdWx0LWZvb3RlciBqdXN0aWZ5LWNvbnRlbnQtZW5kIGdhcC0zXCI+XHJcbiAgICA8ZHMtYnV0dG9uICBzaGFwZT1cIm91dGxpbmVcIiAgbWF0RGlhbG9nQ2xvc2UgW2Rpc2FibGVkXT1cIih1cGxvYWRpbmcpXCIgY29sb3I9XCJyZWRcIj57e2kxOG4udHJhbnNsYXRlKCdjYW5jZWwnKX19XHJcbiAgICA8L2RzLWJ1dHRvbj5cclxuICAgIDxkcy1idXR0b24gKGNsaWNrKT1cImFkZEF0dGFjaG1lbnRzKClcIiBbbG9hZGluZ109XCJ1cGxvYWRpbmdcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiKCEoZm9ybUdyb3VwPy52YWx1ZT8uZmlsZT8uZmlsZUNvbnRlbnRzIHx8IGZvcm1Hcm91cD8udmFsdWU/LmZpbGU/LmF0dGFjaG1lbnRJZCApIHx8KCBkaWFsb2dEYXRhPy5pc1JlcXVpcmVkICYmICFmb3JtR3JvdXA/LnZhbHVlPy5kZXNjcmlwdGlvbiApfHwgdXBsb2FkaW5nIHx8ICFmb3JtR3JvdXAudmFsaWQpXCI+XHJcbiAgICAgIEBpZighZWRpdE1vZGUpe1xyXG4gICAgICA8c3Bhbj57e2kxOG4udHJhbnNsYXRlKCdhZGQnKX19PC9zcGFuPlxyXG4gICAgICB9XHJcbiAgICAgIEBpZihlZGl0TW9kZSl7XHJcbiAgICAgIDxzcGFuPnt7aTE4bi50cmFuc2xhdGUoJ2VkaXQnKX19PC9zcGFuPlxyXG4gICAgICB9XHJcblxyXG4gICAgPC9kcy1idXR0b24+XHJcbiAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XHJcblxyXG48L2Rpdj5cclxuIl19
|